@citron-systems/citron-ui 1.17.0 → 1.22.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.
package/dist/index.js CHANGED
@@ -1,4 +1,4 @@
1
- "use strict";var Ko=Object.defineProperty;var Js=Object.getOwnPropertyDescriptor;var tl=Object.getOwnPropertyNames;var el=Object.prototype.hasOwnProperty;var rl=(t,e)=>{for(var r in e)Ko(t,r,{get:e[r],enumerable:!0})},ol=(t,e,r,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of tl(e))!el.call(t,n)&&n!==r&&Ko(t,n,{get:()=>e[n],enumerable:!(a=Js(e,n))||a.enumerable});return t};var al=t=>ol(Ko({},"__esModule",{value:!0}),t);var Wc={};rl(Wc,{AIComposeInput:()=>sr,AIEmailGenerator:()=>Zl,Accordion:()=>di,ActionButtons:()=>ro,ActivityStream:()=>Or,AdvancedDropdown:()=>mi,Alert:()=>pi,AlertDialog:()=>ui,AppLayout:()=>oc,AppNavigationRail:()=>ea,AppSidebar:()=>ma,AspectRatio:()=>ki,AssistantPanel:()=>fn,Avatar:()=>mo,Badge:()=>yi,Breadcrumb:()=>Ni,Button:()=>lr,CITRON_THEME_STORAGE_KEY:()=>_r,Calendar:()=>Ci,CampaignTable:()=>wr,CanvasProvider:()=>No,Card:()=>Ti,CardContent:()=>Ei,CardDescription:()=>Mi,CardFooter:()=>Ii,CardHeader:()=>Pi,CardTitle:()=>Si,Carousel:()=>Ai,CenteredAssistantChat:()=>gn,Chart:()=>Di,Checkbox:()=>Bi,CircularScore:()=>ua,Collapsible:()=>Fi,Command:()=>Gi,CommandBar:()=>ra,CommandCanvas:()=>mc,ContextMenu:()=>Ki,Dialog:()=>$i,DialogClose:()=>Po,DialogContent:()=>ka,DialogDescription:()=>Yi,DialogFooter:()=>Xi,DialogHeader:()=>ji,DialogTitle:()=>qi,DialogTrigger:()=>ga,Drawer:()=>ts,DrawerClose:()=>Na,DrawerContent:()=>ha,DrawerDescription:()=>os,DrawerFooter:()=>as,DrawerHeader:()=>es,DrawerTitle:()=>rs,DrawerTrigger:()=>xa,DropdownMenu:()=>ss,DropdownMenuContent:()=>Ta,DropdownMenuItem:()=>Pa,DropdownMenuSeparator:()=>ls,DropdownMenuTrigger:()=>Ca,EmailBlockEditor:()=>bc,EmailCampaignsView:()=>sa,EmailComposeActionButtons:()=>hr,EmailTemplatesSection:()=>Tr,EntityCard:()=>Wo,EntityCommandCard:()=>_o,ErrorBoundary:()=>Pr,EventFeed:()=>pa,EventRow:()=>$o,EventStreamFeed:()=>jo,EventStreamSidebar:()=>oa,Form:()=>Sa,FormActions:()=>ps,FormField:()=>ms,GlobalAssistantChat:()=>We,GraphView:()=>gc,GuidedTour:()=>yc,HoverCard:()=>vs,HoverCardContent:()=>Ia,HoverCardTrigger:()=>Ea,Input:()=>he,InputOtp:()=>Aa,IntegrationPlaceholder:()=>Xs,IntelligenceCard:()=>hc,IntelligenceLab:()=>aa,IntelligenceScoreCard:()=>Mr,InvoiceEditorPage:()=>li,InvoiceForm:()=>ko,InvoicePreview:()=>yo,Label:()=>Da,MainShell:()=>na,Menubar:()=>Ha,MenubarCloseZone:()=>Fa,MenubarContent:()=>Oa,MenubarItem:()=>za,MenubarMenu:()=>hs,MenubarSeparator:()=>Ns,MenubarTrigger:()=>Ba,MetricComparisonList:()=>Xo,ModuleContainer:()=>Ir,ModuleErrorBoundary:()=>G,ModuleSkeleton:()=>Er,NavLink:()=>ho,NavLinkRouter:()=>uo,NavigationMenu:()=>ws,OSNavigationRail:()=>Jo,OnboardingWizard:()=>Cc,PageErrorFallback:()=>Lr,PageHeader:()=>Ue,PageHeaderActionButton:()=>$e,Pagination:()=>Cs,Popover:()=>Ps,PopoverClose:()=>_a,PopoverContent:()=>Wa,PopoverTrigger:()=>Ka,Progress:()=>Ua,RadioGroup:()=>$a,RadioGroupItem:()=>Io,Resizable:()=>Ms,RouteWithErrorBoundary:()=>Zo,ScrollArea:()=>ja,SearchBar:()=>me,Select:()=>qa,Separator:()=>Ya,Sheet:()=>Os,Sidebar:()=>zs,Skeleton:()=>de,Slider:()=>Xa,Sonner:()=>Vs,StatCardGrid:()=>Qo,StatCards:()=>Ar,StatCardsWithChart:()=>ta,StatusBadge:()=>Sr,Switch:()=>Ja,TabSystem:()=>Rr,Table:()=>tn,TableBody:()=>rn,TableCaption:()=>sn,TableCell:()=>nn,TableEmptyState:()=>ln,TableHead:()=>an,TableHeader:()=>en,TableRow:()=>on,Tabs:()=>Ks,TaskCreateForm:()=>zr,TaskDetailsPanel:()=>Ys,TaskItem:()=>Hr,TaskKanban:()=>Ye,TaskKanbanBoard:()=>Ye,TaskKanbanCard:()=>Gr,TaskKanbanColumn:()=>Kr,TaskList:()=>Br,TasksView:()=>ia,TemplateCard:()=>Cr,TemplateMasonryGrid:()=>qs,Textarea:()=>cn,ThemeProvider:()=>la,ThemeSwitcherButton:()=>$r,Toast:()=>Ho,Toaster:()=>Bo,Toggle:()=>so,ToggleGroup:()=>co,Tooltip:()=>$s,semanticBackgroundPrimary:()=>Hc,semanticBackgroundSecondary:()=>Bc,semanticBorderDefault:()=>Oc,semanticInteractivePrimary:()=>Vc,semanticInteractiveSecondary:()=>Gc,semanticInteractiveSecondaryHover:()=>Kc,semanticTextPrimary:()=>zc,semanticTextSecondary:()=>Fc,useCanvas:()=>fi,useTheme:()=>Ur});module.exports=al(Wc);var gt=require("react"),wt=require("lucide-react");var bn=require("clsx"),un=require("tailwind-merge");function o(...t){return(0,un.twMerge)((0,bn.clsx)(t))}var A=require("react/jsx-runtime");function nl({attachments:t,onRemove:e}){return t.length===0?null:(0,A.jsx)("div",{className:"flex flex-wrap gap-[var(--inkblot-spacing-2)] px-[var(--inkblot-spacing-2)] pb-[var(--inkblot-spacing-2)]",children:t.map((r,a)=>(0,A.jsxs)("div",{className:"group relative flex items-center gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-tertiary)] px-[var(--inkblot-spacing-2)] py-[var(--inkblot-spacing-1)]",children:[r.kind==="image"&&r.previewUrl?(0,A.jsx)("img",{src:r.previewUrl,alt:r.file.name,className:"h-8 w-8 rounded-[var(--inkblot-radius-sm)] object-cover"}):(0,A.jsx)(wt.FileText,{size:16,className:"shrink-0 text-[var(--inkblot-semantic-color-text-tertiary)]","aria-hidden":!0}),(0,A.jsx)("span",{className:"max-w-[8rem] truncate text-xs text-[var(--inkblot-semantic-color-text-secondary)]",children:r.file.name}),(0,A.jsx)("button",{type:"button",onClick:()=>e(a),className:"flex h-4 w-4 items-center justify-center rounded-[var(--inkblot-radius-full)] text-[var(--inkblot-semantic-color-text-tertiary)] transition-colors duration-[var(--inkblot-duration-fast)] hover:bg-[var(--inkblot-semantic-color-background-secondary)] hover:text-[var(--inkblot-semantic-color-text-primary)]","aria-label":`Remove ${r.file.name}`,children:(0,A.jsx)(wt.X,{size:10})})]},`${r.file.name}-${a}`))})}function We({messages:t=[],onSend:e,isProcessing:r=!1,placeholder:a="Ask Citron Intelligence...",emptyStateMessage:n="Ask anything \u2014 deals, contacts, forecasts...",className:i}){let[s,l]=(0,gt.useState)(""),[c,d]=(0,gt.useState)([]),m=(0,gt.useRef)(null),p=(0,gt.useRef)(null),b=(0,gt.useRef)(null);(0,gt.useEffect)(()=>{m.current&&(m.current.scrollTop=m.current.scrollHeight)},[t]),(0,gt.useEffect)(()=>()=>{c.forEach(g=>{g.previewUrl&&URL.revokeObjectURL(g.previewUrl)})},[]);let u=(0,gt.useCallback)(()=>{let g=s.trim();if(!(!g&&c.length===0)&&!r){try{e?.({text:g,files:c.map(S=>S.file)})}catch{}l(""),d(S=>(S.forEach(N=>{N.previewUrl&&URL.revokeObjectURL(N.previewUrl)}),[])),requestAnimationFrame(()=>{b.current?.focus()})}},[s,c,r,e]),f=(0,gt.useCallback)(g=>{g.key==="Enter"&&!g.shiftKey&&(g.preventDefault(),u())},[u]),w=(0,gt.useCallback)(g=>{let S=g.target.files;if(!S||S.length===0)return;let N=Array.from(S).map(y=>{let k=y.type.startsWith("image/");return{file:y,kind:k?"image":"file",previewUrl:k?URL.createObjectURL(y):void 0}});d(y=>[...y,...N]),g.target.value=""},[]),h=(0,gt.useCallback)(g=>{d(S=>{let N=S[g];return N?.previewUrl&&URL.revokeObjectURL(N.previewUrl),S.filter((y,k)=>k!==g)})},[]);return(0,A.jsxs)("div",{className:o("flex h-full flex-col bg-[var(--inkblot-semantic-color-background-primary)]",i),children:[t.length===0?(0,A.jsx)("div",{className:"flex flex-1 items-center justify-center",children:(0,A.jsxs)("div",{className:"text-center",children:[(0,A.jsx)(wt.Sparkles,{className:"mx-auto mb-[var(--inkblot-spacing-2)] h-5 w-5 text-[var(--inkblot-semantic-color-text-tertiary)]","aria-hidden":!0}),(0,A.jsx)("p",{className:"[font:var(--inkblot-semantic-typography-body-default)] text-[var(--inkblot-semantic-color-text-tertiary)]",children:n})]})}):(0,A.jsx)("div",{ref:m,className:"flex-1 overflow-y-auto",children:(0,A.jsxs)("div",{className:"mx-auto flex max-w-4xl flex-col gap-[var(--inkblot-spacing-4)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-6)]",children:[t.map(g=>g.role==="user"?(0,A.jsx)("div",{className:"flex justify-end",children:(0,A.jsx)("div",{className:"max-w-[80%] rounded-[var(--inkblot-radius-xl)] bg-[var(--inkblot-semantic-color-interactive-primary)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)] [font:var(--inkblot-semantic-typography-body-default)] text-[var(--inkblot-semantic-color-text-inverse)]",children:g.renderedContent??g.content})},g.id):(0,A.jsxs)("div",{className:"flex items-start gap-[var(--inkblot-spacing-2)]",children:[(0,A.jsx)(wt.Sparkles,{size:16,strokeWidth:1.7,className:"mt-[var(--inkblot-spacing-1)] shrink-0 text-[var(--inkblot-semantic-color-text-tertiary)]","aria-hidden":!0}),(0,A.jsx)("div",{className:"max-w-[90%] [font:var(--inkblot-semantic-typography-body-default)] text-[var(--inkblot-semantic-color-text-primary)]",children:g.renderedContent??g.content})]},g.id)),r&&(0,A.jsxs)("div",{className:"flex items-start gap-[var(--inkblot-spacing-2)]",children:[(0,A.jsx)(wt.Loader2,{size:16,strokeWidth:1.7,className:"mt-[var(--inkblot-spacing-1)] shrink-0 animate-spin text-[var(--inkblot-semantic-color-text-tertiary)]","aria-hidden":!0}),(0,A.jsx)("p",{className:"[font:var(--inkblot-semantic-typography-body-default)] text-[var(--inkblot-semantic-color-text-tertiary)]",children:"Thinking..."})]})]})}),(0,A.jsx)("div",{className:"shrink-0 border-t border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)]",children:(0,A.jsx)("div",{className:"mx-auto max-w-4xl",children:(0,A.jsxs)("div",{className:o("overflow-hidden rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] shadow-[var(--inkblot-shadow-sm)]"),children:[(0,A.jsxs)("div",{className:"flex items-end gap-[var(--inkblot-spacing-2)] p-[var(--inkblot-spacing-2)]",children:[(0,A.jsx)("input",{ref:p,type:"file",multiple:!0,onChange:w,className:"sr-only","aria-hidden":!0}),(0,A.jsx)("button",{type:"button",onClick:()=>p.current?.click(),disabled:r,className:o("flex h-9 w-9 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-full)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] text-[var(--inkblot-semantic-color-text-tertiary)] transition-[background,border-color,color] duration-[var(--inkblot-duration-fast)]","hover:bg-[var(--inkblot-semantic-color-background-tertiary)] hover:text-[var(--inkblot-semantic-color-text-secondary)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-primary)]","disabled:pointer-events-none disabled:opacity-[var(--inkblot-opacity-disabled)]"),"aria-label":"Attach files",children:(0,A.jsx)(wt.Paperclip,{size:18,strokeWidth:1.7,"aria-hidden":!0})}),(0,A.jsx)("textarea",{ref:b,value:s,onChange:g=>l(g.target.value),onKeyDown:f,placeholder:a,rows:1,className:o("min-h-[2.25rem] min-w-0 flex-1 resize-none border-0 bg-transparent py-[var(--inkblot-spacing-1)] [font:var(--inkblot-semantic-typography-body-default)] text-[var(--inkblot-semantic-color-text-primary)] placeholder:text-[var(--inkblot-semantic-color-text-tertiary)]","focus:outline-none focus:ring-0")}),(0,A.jsx)("div",{className:"flex h-8 w-8 shrink-0 items-center justify-center",children:r?(0,A.jsx)("div",{className:"flex h-full w-full items-center justify-center rounded-[var(--inkblot-radius-full)] bg-[var(--inkblot-semantic-color-interactive-primary)]",children:(0,A.jsx)(wt.Loader2,{size:16,strokeWidth:2,className:"animate-spin text-[var(--inkblot-semantic-color-text-inverse)]","aria-hidden":!0})}):(0,A.jsx)("button",{type:"button",onClick:u,className:o("flex h-full w-full items-center justify-center rounded-[var(--inkblot-radius-full)] bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)] transition-[background,box-shadow] duration-[var(--inkblot-duration-fast)]","hover:bg-[var(--inkblot-semantic-color-interactive-primary-hover)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-primary)]"),"aria-label":"Send",children:(0,A.jsx)(wt.Send,{size:16,strokeWidth:2,"aria-hidden":!0})})})]}),(0,A.jsx)(nl,{attachments:c,onRemove:h})]})})})]})}var to=require("react"),vn=require("lucide-react");var rt=require("react/jsx-runtime");function fn({open:t,onOpenChange:e,title:r="Assistant",subtitle:a,className:n,...i}){let s=(0,to.useCallback)(()=>e?.(!1),[e]);(0,to.useEffect)(()=>{if(!t)return;let c=d=>{d.key==="Escape"&&s()};return document.addEventListener("keydown",c),()=>document.removeEventListener("keydown",c)},[t,s]);let l=(0,rt.jsxs)("div",{className:"flex items-center justify-between border-b border-[var(--inkblot-semantic-color-border-default)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)]",children:[(0,rt.jsxs)("div",{className:"min-w-0",children:[(0,rt.jsx)("p",{className:"truncate text-sm font-medium text-[var(--inkblot-semantic-color-text-primary)]",children:r}),a&&(0,rt.jsx)("p",{className:"truncate text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:a})]}),(0,rt.jsx)("button",{type:"button",onClick:s,className:"ml-[var(--inkblot-spacing-2)] flex h-7 w-7 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] text-[var(--inkblot-semantic-color-text-secondary)] transition-colors duration-[var(--inkblot-duration-fast)] hover:bg-[var(--inkblot-semantic-color-background-secondary)] hover:text-[var(--inkblot-semantic-color-text-primary)]","aria-label":"Close",children:(0,rt.jsx)(vn.X,{className:"h-4 w-4"})})]});return(0,rt.jsxs)(rt.Fragment,{children:[(0,rt.jsx)("aside",{role:"complementary","aria-label":r,className:o("hidden md:flex","shrink-0 flex-col overflow-hidden border-l border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)]","transition-[width] duration-300 ease-[var(--inkblot-easing-default)]",t?"w-96":"w-0 border-l-0",n),children:t&&(0,rt.jsxs)(rt.Fragment,{children:[l,(0,rt.jsx)(We,{...i,className:"min-h-0 flex-1"})]})}),(0,rt.jsxs)("div",{className:o("fixed inset-0 z-50 md:hidden",t?"pointer-events-auto":"pointer-events-none"),children:[(0,rt.jsx)("button",{type:"button","aria-label":"Close panel",onClick:s,className:o("absolute inset-0 bg-[var(--inkblot-semantic-color-background-primary)]/70 transition-opacity duration-300",t?"opacity-100":"opacity-0")}),(0,rt.jsxs)("div",{role:"dialog","aria-modal":"true","aria-label":r,className:o("absolute inset-y-0 right-0 flex w-full max-w-sm flex-col border-l border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] shadow-[var(--inkblot-shadow-lg)] transition-transform duration-300 ease-[var(--inkblot-easing-default)]",t?"translate-x-0":"translate-x-full"),children:[l,(0,rt.jsx)(We,{...i,className:"min-h-0 flex-1"})]})]})]})}var kn=require("react/jsx-runtime");function gn({className:t,...e}){return(0,kn.jsx)(We,{...e,className:o("mx-auto w-full max-w-5xl",t)})}var eo=require("lucide-react");var _e=require("react/jsx-runtime"),il={primary:["bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]","hover:bg-[var(--inkblot-semantic-color-interactive-primary-hover)] active:bg-[var(--inkblot-semantic-color-interactive-primary-active)]"],secondary:["bg-[var(--inkblot-semantic-color-interactive-secondary)] text-[var(--inkblot-semantic-color-text-primary)]","border border-[var(--inkblot-semantic-color-border-default)]","hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] hover:border-[var(--inkblot-semantic-color-border-strong)]","active:bg-[var(--inkblot-semantic-color-background-tertiary)]"]};function ro({buttons:t,className:e}){return(0,_e.jsx)("div",{className:o("flex flex-wrap items-center gap-[var(--inkblot-spacing-3)]",e),children:t.map(r=>(0,_e.jsxs)("button",{type:"button",onClick:()=>{r.onClick?.()},disabled:r.disabled,className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center gap-2 rounded-[var(--inkblot-radius-lg)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","[font:var(--inkblot-semantic-typography-body-medium)] font-medium","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-primary)]","transition-colors duration-[var(--inkblot-duration-fast)]","disabled:opacity-[var(--inkblot-opacity-disabled)] disabled:pointer-events-none disabled:cursor-not-allowed",il[r.variant]),children:[r.icon??null,r.label]},r.id))})}function hr({onSendNow:t,onSchedule:e,onSaveDraft:r,className:a}){return(0,_e.jsx)(ro,{buttons:[{id:"send",label:"Send Now",variant:"primary",icon:(0,_e.jsx)(eo.Send,{className:"h-4 w-4"}),onClick:t},{id:"schedule",label:"Schedule",variant:"secondary",icon:(0,_e.jsx)(eo.Calendar,{className:"h-4 w-4"}),onClick:e},{id:"draft",label:"Save Draft",variant:"secondary",onClick:r}],className:a})}var yn=require("react"),oo=require("lucide-react");var jt=require("react/jsx-runtime"),sr=(0,yn.forwardRef)(({label:t,loading:e=!1,onWriteWithAI:r,disabled:a,className:n,...i},s)=>{let l=a||e;return(0,jt.jsxs)("div",{className:o("flex flex-col gap-[var(--inkblot-spacing-2)]",n),children:[(0,jt.jsxs)("div",{className:"flex items-center justify-between",children:[t?(0,jt.jsx)("label",{htmlFor:i.id,className:o("uppercase tracking-wider","[font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-primary)]"),children:t}):(0,jt.jsx)("span",{}),r?(0,jt.jsxs)("button",{type:"button",onClick:r,disabled:e,className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center gap-2 rounded-[var(--inkblot-radius-lg)]","border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-interactive-secondary)]","px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","[font:var(--inkblot-semantic-typography-body-medium)] font-medium","text-[var(--inkblot-semantic-color-text-primary)]","hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] hover:border-[var(--inkblot-semantic-color-border-strong)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-primary)]","transition-colors duration-[var(--inkblot-duration-fast)]","disabled:opacity-[var(--inkblot-opacity-disabled)] disabled:cursor-not-allowed disabled:pointer-events-none"),children:[e?(0,jt.jsx)(oo.Loader2,{className:"h-4 w-4 shrink-0 animate-spin"}):(0,jt.jsx)(oo.Sparkles,{className:"h-4 w-4 shrink-0",style:{color:"var(--inkblot-semantic-color-status-warning)"}}),e?"Generating...":"Write with AI"]}):null]}),(0,jt.jsx)("div",{className:"relative",children:(0,jt.jsx)("textarea",{ref:s,disabled:l,className:o("min-h-[12rem] w-full rounded-[var(--inkblot-radius-lg)]","border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-secondary)]","px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)]","[font:var(--inkblot-semantic-typography-body-medium)]","text-[var(--inkblot-semantic-color-text-primary)] placeholder:text-[var(--inkblot-semantic-color-text-tertiary)]","transition-colors duration-[var(--inkblot-duration-fast)]","hover:border-[var(--inkblot-semantic-color-border-strong)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-primary)]","disabled:opacity-[var(--inkblot-opacity-disabled)] disabled:cursor-not-allowed disabled:pointer-events-none"),...i})})]})});sr.displayName="AIComposeInput";var xn=require("react");var hn=require("react/jsx-runtime"),sl={primary:"border border-transparent bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)] shadow-[var(--inkblot-shadow-sm)] hover:bg-[var(--inkblot-semantic-color-interactive-primary-hover)] active:bg-[var(--inkblot-semantic-color-interactive-primary-active)]",secondary:"border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] text-[var(--inkblot-semantic-color-text-primary)] hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] hover:border-[var(--inkblot-semantic-color-border-strong)] active:bg-[var(--inkblot-semantic-color-background-tertiary)]"},lr=(0,xn.forwardRef)(({className:t,variant:e="primary",disabled:r,...a},n)=>(0,hn.jsx)("button",{ref:n,disabled:r,className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center rounded-[var(--inkblot-radius-lg)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)] [font:var(--inkblot-semantic-typography-body-medium)] font-semibold transition-[background,border-color,box-shadow,color] duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--inkblot-semantic-color-border-focus)] focus-visible:ring-offset-2 focus-visible:ring-offset-[var(--inkblot-semantic-color-background-primary)] disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-[var(--inkblot-opacity-disabled)]",sl[e],t),...a}));lr.displayName="Button";var Nr=require("react"),Ct=require("lucide-react");var V=require("react/jsx-runtime"),ll={sent:{icon:Ct.CheckCircle,label:"Sent",colorClass:"text-[var(--inkblot-semantic-color-status-success)]"},active:{icon:Ct.Zap,label:"Active",colorClass:"text-[var(--inkblot-semantic-color-status-warning)]"},draft:{icon:Ct.FileText,label:"Draft",colorClass:"text-[var(--inkblot-semantic-color-text-secondary)]"},scheduled:{icon:Ct.Clock,label:"Scheduled",colorClass:"text-[var(--inkblot-semantic-color-status-info)]"}};function wr({columns:t,rows:e,sortKey:r,sortDirection:a,defaultSortKey:n,defaultSortDirection:i="asc",onSortChange:s,sortableColumns:l,emptyTitle:c="No campaigns found",emptyDescription:d="Create a campaign or adjust filters to see results.",className:m}){let[p,b]=(0,Nr.useState)(n),[u,f]=(0,Nr.useState)(i),w=r!==void 0&&a!==void 0,h=w?r:p,g=w?a:u,S=v=>!l||l.length===0?!0:l.includes(v),N=(v,x)=>{if(x==="campaign")return v.campaignName.toLowerCase();if(x==="status")return v.status;if(x==="opens")return Number.parseFloat(v.opens.replace("%","").trim())||0;if(x==="clicks")return Number.parseFloat(v.clicks.replace("%","").trim())||0;if(x==="date")return new Date(v.date).getTime()||0;let C=v[x];return typeof C=="number"?C:String(C??"").toLowerCase()},y=(0,Nr.useMemo)(()=>h?[...e].sort((x,C)=>{let M=N(x,h),F=N(C,h);return M<F?g==="asc"?-1:1:M>F?g==="asc"?1:-1:0}):e,[g,h,e]),k=v=>{let x=h===v&&g==="asc"?"desc":"asc";w||(b(v),f(x)),s?.(v,x)};return(0,V.jsx)("div",{className:o("overflow-x-auto rounded-[var(--inkblot-radius-lg)]","border border-[var(--inkblot-semantic-color-border-subtle)]","bg-[var(--inkblot-semantic-color-background-primary)]",m),children:(0,V.jsxs)("table",{className:"w-full min-w-[600px] border-collapse",children:[(0,V.jsx)("thead",{children:(0,V.jsx)("tr",{className:"bg-[var(--inkblot-semantic-color-background-secondary)]",children:t.map(v=>(0,V.jsx)("th",{className:o("px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)] text-left","uppercase tracking-wider","[font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-secondary)]","border-b border-[var(--inkblot-semantic-color-border-subtle)]"),children:S(v.key)?(0,V.jsxs)("button",{type:"button",onClick:()=>k(v.key),className:"inline-flex items-center gap-[var(--inkblot-spacing-1)] rounded-[var(--inkblot-radius-sm)] transition-colors duration-[var(--inkblot-duration-fast)] hover:text-[var(--inkblot-semantic-color-text-primary)]",children:[v.label,h!==v.key?(0,V.jsx)(Ct.ArrowUpDown,{className:"h-3.5 w-3.5","aria-hidden":!0}):g==="asc"?(0,V.jsx)(Ct.ArrowUp,{className:"h-3.5 w-3.5","aria-hidden":!0}):(0,V.jsx)(Ct.ArrowDown,{className:"h-3.5 w-3.5","aria-hidden":!0})]}):v.label},v.key))})}),(0,V.jsx)("tbody",{children:y.length===0?(0,V.jsx)("tr",{children:(0,V.jsx)("td",{colSpan:t.length,className:"px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-10)] text-center",children:(0,V.jsxs)("div",{className:"mx-auto flex max-w-[420px] flex-col gap-[var(--inkblot-spacing-1)]",children:[(0,V.jsx)("span",{className:"[font:var(--inkblot-semantic-typography-body-large-bold)] text-[var(--inkblot-semantic-color-text-primary)]",children:c}),(0,V.jsx)("span",{className:"[font:var(--inkblot-semantic-typography-body-small)] text-[var(--inkblot-semantic-color-text-secondary)]",children:d})]})})}):y.map(v=>(0,V.jsxs)("tr",{className:o("border-b border-[var(--inkblot-semantic-color-border-subtle)] last:border-b-0","transition-colors duration-[var(--inkblot-duration-fast)]","hover:bg-[var(--inkblot-semantic-color-background-secondary)]/50"),children:[(0,V.jsx)("td",{className:o("px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)]","border-b border-[var(--inkblot-semantic-color-border-subtle)]"),children:(0,V.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,V.jsx)("span",{className:o("[font:var(--inkblot-semantic-typography-body-large-bold)]","text-[var(--inkblot-semantic-color-text-primary)]"),children:v.campaignName}),(0,V.jsx)("span",{className:o("[font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-secondary)]"),children:v.recipients})]})}),(0,V.jsx)("td",{className:o("px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)]","border-b border-[var(--inkblot-semantic-color-border-subtle)]"),children:(0,V.jsx)(cl,{status:v.status,subtext:v.statusSubtext})}),(0,V.jsx)("td",{className:o("px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)]","[font:var(--inkblot-semantic-typography-body-medium)]","text-[var(--inkblot-semantic-color-text-primary)]","border-b border-[var(--inkblot-semantic-color-border-subtle)]"),children:v.opens}),(0,V.jsx)("td",{className:o("px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)]","[font:var(--inkblot-semantic-typography-body-medium)]","text-[var(--inkblot-semantic-color-text-primary)]","border-b border-[var(--inkblot-semantic-color-border-subtle)]"),children:v.clicks}),(0,V.jsx)("td",{className:o("px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)]","[font:var(--inkblot-semantic-typography-body-medium)]","text-[var(--inkblot-semantic-color-text-primary)]","border-b border-[var(--inkblot-semantic-color-border-subtle)]"),children:v.date})]},v.id))})]})})}function cl({status:t,subtext:e}){let r=ll[t],a=r.icon;return(0,V.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,V.jsxs)("div",{className:o("inline-flex items-center gap-1.5","[font:var(--inkblot-semantic-typography-body-small)] font-medium",r.colorClass),children:[(0,V.jsx)(a,{className:"h-4 w-4 shrink-0"}),r.label]}),e?(0,V.jsx)("span",{className:o("[font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-secondary)]"),children:e}):null]})}var wn=require("lucide-react");var Nn=require("lucide-react");var se=require("react/jsx-runtime");function Cr({category:t,title:e,uses:r,onClick:a,className:n}){return(0,se.jsxs)("button",{type:"button",onClick:a,className:o("flex flex-col gap-[var(--inkblot-spacing-4)] rounded-[var(--inkblot-radius-lg)]","bg-[var(--inkblot-semantic-color-background-secondary)]","border border-[var(--inkblot-semantic-color-border-subtle)]","px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-5)]","text-left transition-colors duration-[var(--inkblot-duration-fast)]","hover:border-[var(--inkblot-semantic-color-border-default)] hover:bg-[var(--inkblot-semantic-color-background-tertiary)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-primary)]",n),children:[(0,se.jsxs)("div",{className:"flex items-start justify-between gap-2",children:[(0,se.jsx)("span",{className:o("rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-2)] py-[var(--inkblot-spacing-1)]","bg-[var(--inkblot-semantic-color-background-tertiary)]","[font:var(--inkblot-semantic-typography-body-small)] font-medium","text-[var(--inkblot-semantic-color-text-primary)]"),children:t}),(0,se.jsx)("span",{className:o("[font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-secondary)]"),children:r})]}),(0,se.jsx)("h3",{className:o("[font:var(--inkblot-semantic-typography-body-large-bold)]","text-[var(--inkblot-semantic-color-text-primary)]"),children:e}),(0,se.jsx)("div",{className:"flex flex-1 items-end justify-center pt-[var(--inkblot-spacing-4)]",children:(0,se.jsx)(Nn.File,{className:o("h-10 w-10","text-[var(--inkblot-semantic-color-text-tertiary)]")})})]})}var le=require("react/jsx-runtime");function Tr({title:t="EMAIL TEMPLATES",onGenerateWithAI:e,templates:r,onTemplateClick:a,className:n}){return(0,le.jsxs)("section",{className:o("flex flex-col gap-[var(--inkblot-spacing-6)] rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-5)] shadow-[var(--inkblot-shadow-sm)]",n),children:[(0,le.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-4)] sm:flex-row sm:items-center sm:justify-between",children:[(0,le.jsx)("h2",{className:o("uppercase tracking-wider","[font:var(--inkblot-semantic-typography-body-medium)]","text-[var(--inkblot-semantic-color-text-secondary)]"),children:t}),e?(0,le.jsxs)("button",{type:"button",onClick:e,className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] w-fit items-center justify-center gap-2 rounded-[var(--inkblot-radius-lg)]","border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-primary)]","px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","[font:var(--inkblot-semantic-typography-body-medium)] font-medium","text-[var(--inkblot-semantic-color-text-primary)]","hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] hover:border-[var(--inkblot-semantic-color-border-strong)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-primary)]","transition-colors duration-[var(--inkblot-duration-fast)]"),children:[(0,le.jsx)(wn.Sparkles,{className:"h-4 w-4 shrink-0",style:{color:"var(--inkblot-semantic-color-status-warning)"}}),"Generate with AI"]}):null]}),(0,le.jsx)("div",{className:"grid grid-cols-1 gap-[var(--inkblot-spacing-6)] sm:grid-cols-2",children:r.map(i=>(0,le.jsx)(Cr,{category:i.category,title:i.title,uses:i.uses,onClick:()=>a?.(i)},i.id))})]})}var Gt=require("lucide-react"),E=require("react/jsx-runtime"),dl={Person:"border-l-[var(--inkblot-semantic-color-status-info)]",Organization:"border-l-[var(--inkblot-semantic-color-status-warning)]",Deal:"border-l-[var(--inkblot-semantic-color-status-success)]"},ml={Person:Gt.UserRound,Organization:Gt.Building2,Deal:Gt.BadgeCheck},pl={Person:"bg-[var(--inkblot-semantic-color-status-info)]/15 text-[var(--inkblot-semantic-color-status-info)]",Organization:"bg-[var(--inkblot-semantic-color-status-warning)]/15 text-[var(--inkblot-semantic-color-status-warning)]",Deal:"bg-[var(--inkblot-semantic-color-status-success)]/15 text-[var(--inkblot-semantic-color-status-success)]"},bl=[{label:"Contacts",value:"12",icon:Gt.Users},{label:"Open Deals",value:"3",icon:Gt.TrendingUp},{label:"Touchpoints",value:"47",icon:Gt.ArrowUpRight}];function Wo({name:t,entityType:e,subtitle:r,statusLabel:a,metadata:n,edges:i=[],stats:s,connections:l,className:c}){let d=ml[e];if(s!==void 0||l!==void 0){let p=s??bl;return(0,E.jsxs)("article",{className:o("glass flex flex-col gap-[var(--inkblot-spacing-4)] rounded-[var(--inkblot-radius-xl)] p-[var(--inkblot-spacing-5)]",c),children:[(0,E.jsxs)("div",{className:"flex items-start justify-between",children:[(0,E.jsxs)("div",{className:"flex items-center gap-[var(--inkblot-spacing-3)]",children:[(0,E.jsx)("div",{className:"flex h-10 w-10 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-lg)] bg-[var(--inkblot-semantic-color-interactive-primary)]/10",children:(0,E.jsx)(d,{className:"h-5 w-5 text-[var(--inkblot-semantic-color-interactive-primary)]","aria-hidden":!0})}),(0,E.jsxs)("div",{children:[(0,E.jsx)("h3",{className:"text-sm font-semibold text-[var(--inkblot-semantic-color-text-primary)]",children:t}),r?(0,E.jsx)("p",{className:"text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:r}):null]})]}),a?(0,E.jsx)("span",{className:"rounded-[var(--inkblot-radius-sm)] bg-[var(--inkblot-semantic-color-interactive-primary)]/10 px-2 py-0.5 font-mono text-xs text-[var(--inkblot-semantic-color-interactive-primary)]",children:a}):null]}),(0,E.jsx)("div",{className:"grid grid-cols-3 gap-[var(--inkblot-spacing-3)]",children:p.map(b=>{let u=b.icon;return(0,E.jsxs)("div",{className:"rounded-[var(--inkblot-radius-md)] bg-[var(--inkblot-semantic-color-background-tertiary)] p-[var(--inkblot-spacing-3)]",children:[(0,E.jsxs)("div",{className:"mb-1 flex items-center gap-1.5",children:[u?(0,E.jsx)(u,{className:"h-3 w-3 text-[var(--inkblot-semantic-color-text-tertiary)]","aria-hidden":!0}):null,(0,E.jsx)("span",{className:"text-[10px] uppercase tracking-wider text-[var(--inkblot-semantic-color-text-tertiary)]",children:b.label})]}),(0,E.jsx)("span",{className:"text-lg font-semibold text-[var(--inkblot-semantic-color-text-primary)]",children:b.value})]},b.label)})}),l?(0,E.jsxs)("div",{className:"flex items-center gap-2 text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:[(0,E.jsx)("span",{className:"h-1.5 w-1.5 rounded-full bg-[var(--inkblot-semantic-color-interactive-primary)]"}),l]}):null]})}return(0,E.jsxs)("article",{className:o("flex flex-col gap-[var(--inkblot-spacing-4)] rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)] border-l-4 bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-4)] shadow-[var(--inkblot-shadow-sm)]",dl[e],c),children:[(0,E.jsxs)("div",{className:"flex items-start justify-between gap-[var(--inkblot-spacing-3)]",children:[(0,E.jsxs)("div",{className:"flex items-center gap-[var(--inkblot-spacing-3)]",children:[(0,E.jsx)("div",{className:"flex h-10 w-10 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] text-[var(--inkblot-semantic-color-text-secondary)]",children:(0,E.jsx)(d,{className:"h-5 w-5","aria-hidden":!0})}),(0,E.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-1)]",children:[(0,E.jsx)("h3",{className:"[font:var(--inkblot-semantic-typography-body-medium)] font-semibold text-[var(--inkblot-semantic-color-text-primary)]",children:t}),r?(0,E.jsx)("p",{className:"text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:r}):(0,E.jsx)("span",{className:o("inline-flex w-fit items-center rounded-[var(--inkblot-radius-full)] px-[var(--inkblot-spacing-2)] py-[var(--inkblot-spacing-1)] [font:var(--inkblot-semantic-typography-body-small)] font-medium uppercase tracking-wide",pl[e]),children:e})]})]}),a?(0,E.jsx)("span",{className:"rounded-[var(--inkblot-radius-sm)] bg-[var(--inkblot-semantic-color-interactive-primary)]/10 px-2 py-0.5 font-mono text-xs text-[var(--inkblot-semantic-color-interactive-primary)]",children:a}):null]}),n&&Object.keys(n).length>0?(0,E.jsx)("dl",{className:"grid grid-cols-1 gap-[var(--inkblot-spacing-2)] sm:grid-cols-2",children:Object.entries(n).map(([p,b])=>(0,E.jsxs)("div",{className:"rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-2)]",children:[(0,E.jsx)("dt",{className:"[font:var(--inkblot-semantic-typography-body-small)] uppercase tracking-wide text-[var(--inkblot-semantic-color-text-tertiary)]",children:p}),(0,E.jsx)("dd",{className:"[font:var(--inkblot-semantic-typography-body-medium)] text-[var(--inkblot-semantic-color-text-secondary)]",children:b})]},p))}):null,i.length>0?(0,E.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-2)]",children:[(0,E.jsx)("h4",{className:"[font:var(--inkblot-semantic-typography-body-small)] font-medium uppercase tracking-wide text-[var(--inkblot-semantic-color-text-secondary)]",children:"Edges"}),(0,E.jsx)("ul",{className:"flex flex-wrap gap-[var(--inkblot-spacing-2)]",children:i.map((p,b)=>(0,E.jsxs)("li",{className:"rounded-[var(--inkblot-radius-full)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-1)] [font:var(--inkblot-semantic-typography-body-small)] text-[var(--inkblot-semantic-color-text-secondary)]",children:[p.type,p.target?` \u2192 ${p.target}`:""]},b))})]}):null,l?(0,E.jsxs)("div",{className:"flex items-center gap-2 text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:[(0,E.jsx)("span",{className:"h-1.5 w-1.5 rounded-full bg-[var(--inkblot-semantic-color-interactive-primary)]"}),l]}):null]})}var Cn=require("react");var Tn=require("react/jsx-runtime"),he=(0,Cn.forwardRef)(({className:t,error:e,disabled:r,...a},n)=>(0,Tn.jsx)("input",{ref:n,disabled:r,"aria-invalid":e,"aria-disabled":r,className:o("min-h-[var(--inkblot-size-touch-target-min)] w-full rounded-[var(--inkblot-radius-lg)] border bg-[var(--inkblot-semantic-color-background-secondary)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)] [font:var(--inkblot-semantic-typography-body-medium)] text-[var(--inkblot-semantic-color-text-primary)] shadow-[var(--inkblot-shadow-xs)] placeholder:text-[var(--inkblot-semantic-color-text-tertiary)] transition-[background,border-color,box-shadow] duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--inkblot-semantic-color-border-focus)] focus-visible:ring-offset-2 focus-visible:ring-offset-[var(--inkblot-semantic-color-background-primary)] disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-[var(--inkblot-opacity-disabled)]",e?"border-[var(--inkblot-semantic-color-status-error)] focus-visible:ring-[var(--inkblot-semantic-color-status-error)]":"border-[var(--inkblot-semantic-color-border-default)] hover:border-[var(--inkblot-semantic-color-border-strong)] hover:bg-[var(--inkblot-semantic-color-background-primary)]",t),...a}));he.displayName="Input";var Pn=require("react");var cr=require("react/jsx-runtime"),G=class extends Pn.Component{constructor(e){super(e),this.state={hasError:!1,error:null}}static getDerivedStateFromError(e){return{hasError:!0,error:e}}render(){return this.state.hasError&&this.state.error?(0,cr.jsxs)("div",{role:"alert",className:o("flex flex-col gap-4 rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-4",this.props.className),children:[(0,cr.jsx)("p",{className:"text-base font-semibold text-[var(--inkblot-semantic-color-text-primary)]",children:"This module failed to load"}),(0,cr.jsx)("p",{className:"text-sm text-[var(--inkblot-semantic-color-text-tertiary)]",children:this.state.error.message}),(0,cr.jsx)(lr,{variant:"secondary",onClick:this.props.onRetry,className:"w-fit border-[var(--inkblot-semantic-color-status-error)]",children:"Retry"})]}):this.props.children}};var Tt=require("react/jsx-runtime");function _o({title:t,insights:e,stats:r=[],commandValue:a="",onCommandChange:n,onCommandSubmit:i,className:s}){let l=c=>{c.key==="Enter"&&(c.preventDefault(),i?.())};return(0,Tt.jsx)(G,{className:s,children:(0,Tt.jsxs)("div",{className:"flex flex-col gap-4 rounded-[var(--inkblot-radius-xl)] bg-[var(--inkblot-semantic-color-background-secondary)] p-4",children:[(0,Tt.jsx)("h2",{className:"text-xl font-semibold text-[var(--inkblot-semantic-color-text-primary)]",children:t}),e?(0,Tt.jsx)("div",{className:"rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-interactive-primary)] p-4",style:{boxShadow:"0 0 12px var(--inkblot-semantic-color-interactive-primary)"},children:e}):null,r.length>0?(0,Tt.jsxs)("div",{children:[(0,Tt.jsx)("h3",{className:"mb-2 text-sm font-medium text-[var(--inkblot-semantic-color-text-secondary)]",children:"Connected To"}),(0,Tt.jsx)("div",{className:"grid grid-cols-2 gap-2 sm:grid-cols-3",children:r.map((c,d)=>(0,Tt.jsxs)("div",{className:"rounded-[var(--inkblot-radius-md)] bg-[var(--inkblot-semantic-color-background-tertiary)] px-3 py-2",children:[(0,Tt.jsx)("span",{className:"text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:c.label}),(0,Tt.jsx)("p",{className:"text-sm font-medium text-[var(--inkblot-semantic-color-text-primary)]",children:c.value})]},d))})]}):null,(0,Tt.jsx)("div",{className:"mt-2",children:(0,Tt.jsx)(he,{type:"text",value:a,onChange:c=>n?.(c.target.value),onKeyDown:l,placeholder:"Ask about this entity...",className:"rounded-[var(--inkblot-radius-md)]"})})]})})}var Sn=require("react");var Uo=require("react/jsx-runtime"),Pr=class extends Sn.Component{constructor(e){super(e),this.state={hasError:!1,error:null}}static getDerivedStateFromError(e){return{hasError:!0,error:e}}render(){return this.state.hasError&&this.state.error?this.props.fallback?this.props.fallback:(0,Uo.jsx)("div",{className:o("inline-flex items-center gap-3 rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-tertiary)] px-4 py-3 text-[var(--inkblot-semantic-color-text-secondary)]",this.props.className),role:"alert",children:(0,Uo.jsx)("span",{className:"text-sm font-medium",children:"Something went wrong"})}):this.props.children}};var Mn=require("react/jsx-runtime"),ul={success:"border-[var(--inkblot-semantic-color-status-success)] bg-[var(--inkblot-semantic-color-status-success)]/10 text-[var(--inkblot-semantic-color-status-success)]",warning:"border-[var(--inkblot-semantic-color-status-warning)] bg-[var(--inkblot-semantic-color-status-warning)]/10 text-[var(--inkblot-semantic-color-status-warning)]",error:"border-[var(--inkblot-semantic-color-status-error)] bg-[var(--inkblot-semantic-color-status-error)]/10 text-[var(--inkblot-semantic-color-status-error)]",info:"border-[var(--inkblot-semantic-color-status-info)] bg-[var(--inkblot-semantic-color-status-info)]/10 text-[var(--inkblot-semantic-color-status-info)]"};function Sr({label:t,variant:e="info",className:r}){return(0,Mn.jsx)("span",{className:o("inline-flex items-center rounded-[var(--inkblot-radius-md)] border px-2 py-0.5 text-xs font-medium",ul[e],r),children:t})}var ce=require("react/jsx-runtime");function vl(t){return t>=.8?"success":t>=.5?"info":t>=.2?"warning":"error"}function $o({event:t,className:e}){let r=vl(t.confidence_score),a=`${Math.round(t.confidence_score*100)}%`;return(0,ce.jsxs)("div",{className:o("flex flex-wrap items-center gap-2 rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-4",e),children:[(0,ce.jsx)("span",{className:"text-sm font-medium text-[var(--inkblot-semantic-color-text-primary)]",children:t.actor}),(0,ce.jsx)("span",{className:"text-sm text-[var(--inkblot-semantic-color-text-tertiary)]",children:"\u2192"}),(0,ce.jsx)("span",{className:"text-sm text-[var(--inkblot-semantic-color-text-secondary)]",children:t.subject}),(0,ce.jsx)("span",{className:"rounded-[var(--inkblot-radius-md)] bg-[var(--inkblot-semantic-color-background-tertiary)] px-2 py-0.5 text-xs text-[var(--inkblot-semantic-color-text-secondary)]",children:t.event_type}),(0,ce.jsx)("span",{className:"text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:t.timestamp}),(0,ce.jsx)(Sr,{label:a,variant:r})]})}var En=require("lucide-react");var Kt=require("react/jsx-runtime"),fl={success:"bg-[var(--inkblot-semantic-color-status-success)]",warning:"bg-[var(--inkblot-semantic-color-status-warning)]",error:"bg-[var(--inkblot-semantic-color-status-error)]",info:"bg-[var(--inkblot-semantic-color-status-info)]"};function gl(){return(0,Kt.jsx)(En.Clock3,{className:"h-4 w-4 text-[var(--inkblot-semantic-color-text-tertiary)]","aria-hidden":!0})}function jo({events:t,className:e}){return(0,Kt.jsx)(G,{className:e,children:(0,Kt.jsx)("div",{className:o("flex flex-col gap-[var(--inkblot-spacing-3)] rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-4)] shadow-[var(--inkblot-shadow-sm)]"),children:t.map(r=>(0,Kt.jsxs)("div",{className:"flex items-start gap-[var(--inkblot-spacing-3)] rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)]/60 bg-[var(--inkblot-semantic-color-background-primary)] px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-2)]",children:[(0,Kt.jsx)("div",{className:"mt-[var(--inkblot-spacing-1)] flex h-7 w-7 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)]",children:r.icon??(0,Kt.jsx)(gl,{})}),(0,Kt.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,Kt.jsx)("p",{className:"[font:var(--inkblot-semantic-typography-body-medium)] font-medium text-[var(--inkblot-semantic-color-text-primary)]",children:r.title}),(0,Kt.jsx)("p",{className:"[font:var(--inkblot-semantic-typography-body-small)] text-[var(--inkblot-semantic-color-text-tertiary)]",children:r.timestamp})]}),r.status?(0,Kt.jsx)("div",{className:o("mt-[var(--inkblot-spacing-2)] h-2 w-2 shrink-0 rounded-[var(--inkblot-radius-full)]",fl[r.status]),"aria-hidden":!0}):null]},r.id))})})}var ao=require("lucide-react"),kt=require("react/jsx-runtime"),Yo=36,qo=2*Math.PI*Yo;function Mr({label:t,value:e,subtext:r,trend:a,className:n}){let i=Math.min(100,Math.max(0,e)),s=qo-i/100*qo;return(0,kt.jsx)(G,{className:n,children:(0,kt.jsxs)("div",{className:"flex flex-col items-center gap-[var(--inkblot-spacing-4)] rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-4)] shadow-[var(--inkblot-shadow-sm)]",children:[(0,kt.jsxs)("div",{className:"relative",children:[(0,kt.jsxs)("svg",{width:"96",height:"96",viewBox:"0 0 96 96",className:"-rotate-90",children:[(0,kt.jsx)("circle",{cx:"48",cy:"48",r:Yo,fill:"none",stroke:"var(--inkblot-semantic-color-background-tertiary)",strokeWidth:"4"}),(0,kt.jsx)("circle",{cx:"48",cy:"48",r:Yo,fill:"none",stroke:"var(--inkblot-semantic-color-interactive-primary)",strokeWidth:"4",strokeDasharray:qo,strokeDashoffset:s,strokeLinecap:"round",className:"transition-[stroke-dashoffset] duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)]"})]}),(0,kt.jsx)("div",{className:"absolute inset-0 flex flex-col items-center justify-center",children:(0,kt.jsxs)("span",{className:"flex items-center gap-[var(--inkblot-spacing-1)] [font:var(--inkblot-semantic-typography-heading-small)] font-semibold text-[var(--inkblot-semantic-color-text-primary)]",children:[i,"%",a==="up"?(0,kt.jsx)(ao.TrendingUp,{className:"h-4 w-4 text-[var(--inkblot-semantic-color-status-success)]","aria-hidden":!0}):a==="down"?(0,kt.jsx)(ao.TrendingDown,{className:"h-4 w-4 text-[var(--inkblot-semantic-color-status-error)]","aria-hidden":!0}):null]})})]}),(0,kt.jsxs)("div",{className:"text-center",children:[(0,kt.jsx)("p",{className:"[font:var(--inkblot-semantic-typography-body-medium)] font-semibold text-[var(--inkblot-semantic-color-text-primary)]",children:t}),r?(0,kt.jsx)("p",{className:"[font:var(--inkblot-semantic-typography-body-small)] text-[var(--inkblot-semantic-color-text-tertiary)]",children:r}):null]})]})})}var Qt=require("react/jsx-runtime"),kl={default:"text-[var(--inkblot-semantic-color-text-primary)]",success:"text-[var(--inkblot-semantic-color-status-success)]",warning:"text-[var(--inkblot-semantic-color-status-warning)]",error:"text-[var(--inkblot-semantic-color-status-error)]"};function yl({className:t}){return(0,Qt.jsx)("svg",{viewBox:"0 0 16 16",className:o("h-4 w-4",t),"aria-hidden":!0,children:(0,Qt.jsx)("path",{fill:"currentColor",d:"M6 4l4 4-4 4V4z"})})}function Xo({items:t,className:e}){return(0,Qt.jsx)(G,{className:e,children:(0,Qt.jsx)("ul",{className:o("flex flex-col gap-4 py-2"),children:t.map((r,a)=>(0,Qt.jsxs)("li",{className:"flex items-center justify-between gap-4",children:[(0,Qt.jsx)("span",{className:"text-sm text-[var(--inkblot-semantic-color-text-secondary)]",children:r.label}),(0,Qt.jsx)("span",{className:o("flex items-center gap-1 text-sm font-medium",kl[r.variant??"default"]),children:r.value!=null?r.value:(0,Qt.jsx)(yl,{})})]},a))})})}var In=require("react/jsx-runtime");function de({className:t,...e}){return(0,In.jsx)("div",{className:o("animate-shimmer rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)]/40 bg-[length:200%_100%] bg-[linear-gradient(90deg,var(--inkblot-semantic-color-background-secondary)_0%,var(--inkblot-semantic-color-background-tertiary)_50%,var(--inkblot-semantic-color-background-secondary)_100%)]",t),...e})}var Ne=require("react/jsx-runtime");function Er({className:t,...e}){return(0,Ne.jsxs)("div",{className:o("flex flex-col gap-[var(--inkblot-spacing-3)] rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-4)] shadow-[var(--inkblot-shadow-sm)]",t),...e,children:[(0,Ne.jsx)(de,{className:"h-8 w-3/5"}),(0,Ne.jsx)(de,{className:"h-4 w-full"}),(0,Ne.jsx)(de,{className:"h-4 w-11/12"}),(0,Ne.jsx)(de,{className:"h-4 w-4/5"}),(0,Ne.jsx)(de,{className:"h-4 w-2/3"})]})}var we=require("react/jsx-runtime");function Ir({children:t,loading:e=!1,title:r,className:a,onRetry:n}){return(0,we.jsx)(G,{className:a,onRetry:n,children:e?(0,we.jsxs)("div",{className:o("flex flex-col gap-4",a),children:[r?(0,we.jsx)("h2",{className:"text-lg font-semibold text-[var(--inkblot-semantic-color-text-primary)]",children:r}):null,(0,we.jsx)(Er,{})]}):(0,we.jsxs)("div",{className:o("flex flex-col gap-4",a),children:[r?(0,we.jsx)("h2",{className:"text-lg font-semibold text-[var(--inkblot-semantic-color-text-primary)]",children:r}):null,t]})})}var Ln=require("lucide-react");var qt=require("react/jsx-runtime");function Ue({title:t,subtitle:e,icon:r,action:a,className:n}){return(0,qt.jsxs)("header",{className:o("flex flex-col gap-2 sm:flex-row sm:items-start sm:justify-between","pb-[var(--inkblot-spacing-2)]",n),children:[(0,qt.jsxs)("div",{className:"flex items-start gap-[var(--inkblot-spacing-3)]",children:[r?(0,qt.jsx)("div",{className:o("flex h-10 w-10 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-lg)]","bg-[var(--inkblot-semantic-color-background-secondary)]","[color:var(--inkblot-semantic-color-status-warning)]"),children:r}):null,(0,qt.jsxs)("div",{className:"min-w-0",children:[(0,qt.jsx)("h1",{className:o("text-[var(--inkblot-semantic-color-text-primary)]","[font:var(--inkblot-semantic-typography-heading-medium)]"),children:t}),e?(0,qt.jsx)("p",{className:o("mt-0.5 text-[var(--inkblot-semantic-color-text-secondary)]","[font:var(--inkblot-semantic-typography-body-small)]"),children:e}):null]})]}),a?(0,qt.jsx)("div",{className:"mt-[var(--inkblot-spacing-4)] shrink-0 sm:mt-0",children:a}):null]})}function $e({label:t,onClick:e,icon:r,className:a}){return(0,qt.jsxs)("button",{type:"button",onClick:e,className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center gap-2 rounded-[var(--inkblot-radius-lg)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]","[font:var(--inkblot-semantic-typography-body-medium)] font-semibold","hover:bg-[var(--inkblot-semantic-color-interactive-primary-hover)] active:bg-[var(--inkblot-semantic-color-interactive-primary-active)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-primary)]","transition-colors duration-[var(--inkblot-duration-fast)]",a),children:[r??(0,qt.jsx)(Ln.Plus,{className:"h-4 w-4"}),t]})}var An=require("react-router-dom");var je=require("react/jsx-runtime");function Lr({resetErrorBoundary:t}){return(0,je.jsxs)("div",{role:"alert",className:o("flex min-h-[50vh] flex-col items-center justify-center gap-[var(--inkblot-spacing-6)] px-[var(--inkblot-spacing-6)] py-[var(--inkblot-spacing-8)]","bg-[var(--inkblot-semantic-color-background-primary)]","[font:var(--inkblot-semantic-typography-body-small)]"),children:[(0,je.jsx)("p",{className:"text-center text-[var(--inkblot-semantic-color-text-primary)] [font:var(--inkblot-semantic-typography-heading-medium)]",children:"This page is unavailable"}),(0,je.jsxs)("div",{className:"flex flex-col items-center gap-[var(--inkblot-spacing-4)] sm:flex-row",children:[(0,je.jsx)("button",{type:"button",onClick:t,className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center rounded-[var(--inkblot-radius-lg)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]","hover:bg-[var(--inkblot-semantic-color-interactive-primary-hover)] active:bg-[var(--inkblot-semantic-color-interactive-primary-active)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-primary)]","transition-colors duration-[var(--inkblot-duration-fast)]"),children:"Retry"}),(0,je.jsx)(An.Link,{to:"/",className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center rounded-[var(--inkblot-radius-lg)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","text-[var(--inkblot-semantic-color-interactive-primary)] underline-offset-4 hover:underline","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-primary)]","transition-colors duration-[var(--inkblot-duration-fast)]"),children:"Go to home"})]})]})}var Dn=require("react-error-boundary"),Rn=require("react-router-dom");var Hn=require("react/jsx-runtime");function Zo({children:t,fallback:e}){let r=(0,Rn.useNavigate)();return(0,Hn.jsx)(Dn.ErrorBoundary,{FallbackComponent:e??Lr,onReset:()=>{r("/")},children:t})}var Bn=require("react"),On=require("lucide-react");var qe=require("react/jsx-runtime"),me=(0,Bn.forwardRef)(({className:t,label:e,error:r,disabled:a,...n},i)=>(0,qe.jsxs)("div",{className:"flex flex-col gap-1",children:[e?(0,qe.jsx)("label",{htmlFor:n.id,className:o("uppercase tracking-wider","[font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-primary)]"),children:e}):null,(0,qe.jsxs)("div",{className:o("flex items-center gap-2 rounded-[var(--inkblot-radius-full)]","bg-[var(--inkblot-semantic-color-background-secondary)]","border transition-colors duration-[var(--inkblot-duration-fast)]","focus-within:ring-2 focus-within:ring-[var(--inkblot-semantic-color-border-focus)] focus-within:ring-offset-2 focus-within:ring-offset-[var(--inkblot-semantic-color-background-primary)]",r?"border-[var(--inkblot-semantic-color-status-error)]":"border-[var(--inkblot-semantic-color-border-default)] hover:border-[var(--inkblot-semantic-color-border-strong)]",a&&"opacity-[var(--inkblot-opacity-disabled)] pointer-events-none cursor-not-allowed"),children:[(0,qe.jsx)(On.Search,{className:o("ml-[var(--inkblot-spacing-4)] h-4 w-4 shrink-0","text-[var(--inkblot-semantic-color-text-tertiary)]")}),(0,qe.jsx)("input",{ref:i,type:"search",disabled:a,"aria-invalid":r,"aria-label":e??"Search",className:o("min-h-[var(--inkblot-size-touch-target-min)] w-full flex-1 bg-transparent px-2 py-[var(--inkblot-spacing-2)] pr-[var(--inkblot-spacing-4)]","[font:var(--inkblot-semantic-typography-body-medium)]","text-[var(--inkblot-semantic-color-text-primary)] placeholder:text-[var(--inkblot-semantic-color-text-tertiary)]","focus:outline-none","disabled:cursor-not-allowed",t),...n})]})]}));me.displayName="SearchBar";var zn=require("react/jsx-runtime");function Qo({children:t,columns:e=4,className:r}){return(0,zn.jsx)("div",{className:o("grid gap-[var(--inkblot-spacing-4)]",{1:"grid-cols-1",2:"grid-cols-1 sm:grid-cols-2",3:"grid-cols-1 sm:grid-cols-2 lg:grid-cols-3",4:"grid-cols-1 sm:grid-cols-2 lg:grid-cols-4"}[e],r),children:t})}var dr=require("react");var Ce=require("react/jsx-runtime");function Jo({items:t,activeItemId:e,defaultActiveItemId:r,onActiveItemChange:a,onItemClick:n,className:i}){let s=(0,dr.useMemo)(()=>r!==void 0?r:t.find(b=>b.active)?.id,[r,t]),[l,c]=(0,dr.useState)(s),d=e!==void 0,m=d?e:l,p=(0,dr.useCallback)((b,u)=>{if(u.disabled){b.preventDefault();return}d||c(u.id),n?.(u.id,u),u.onClick?.(u.id),a?.(u.id,u)},[d,a,n]);return(0,Ce.jsx)(G,{className:i,children:(0,Ce.jsx)("nav",{className:o("flex w-16 flex-col items-center gap-[var(--inkblot-spacing-2)] border-r border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] px-[var(--inkblot-spacing-2)] py-[var(--inkblot-spacing-4)]"),"aria-label":"Navigation",children:t.map(b=>{let u=m?b.id===m:!!b.active;return(0,Ce.jsxs)("button",{type:"button",disabled:b.disabled,onClick:f=>p(f,b),"aria-current":u?"page":void 0,className:o("relative flex w-full flex-col items-center gap-[var(--inkblot-spacing-1)] rounded-[var(--inkblot-radius-lg)] border border-transparent px-[var(--inkblot-spacing-2)] py-[var(--inkblot-spacing-2)] transition-[background,border-color,color] duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)]",u?"border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] text-[var(--inkblot-semantic-color-interactive-primary)]":"text-[var(--inkblot-semantic-color-text-tertiary)] hover:bg-[var(--inkblot-semantic-color-background-primary)] hover:text-[var(--inkblot-semantic-color-text-secondary)]","disabled:pointer-events-none disabled:opacity-[var(--inkblot-opacity-disabled)]"),children:[u?(0,Ce.jsx)("span",{className:"absolute left-[-0.5rem] top-1/2 h-6 w-1 -translate-y-1/2 rounded-r-[var(--inkblot-radius-full)] bg-[var(--inkblot-semantic-color-interactive-primary)]","aria-hidden":!0}):null,(0,Ce.jsx)("div",{className:"flex h-8 w-8 items-center justify-center [&>svg]:h-5 [&>svg]:w-5",children:b.icon}),b.label?(0,Ce.jsx)("span",{className:"[font:var(--inkblot-semantic-typography-body-small)] font-medium",children:b.label}):null]},b.id)})})})}var dt=require("react/jsx-runtime"),Fn={success:"text-[var(--inkblot-semantic-color-status-success)]",error:"text-[var(--inkblot-semantic-color-status-error)]",neutral:"text-[var(--inkblot-semantic-color-text-secondary)]"};function Ar({items:t,className:e}){return(0,dt.jsx)("div",{className:o("grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-4",e),children:t.map(r=>(0,dt.jsx)(xl,{item:r},r.label))})}function xl({item:t}){let e=t.changeVariant??"neutral",r=Fn[e];return(0,dt.jsxs)("div",{className:o("flex flex-col gap-1 rounded-[var(--inkblot-radius-lg)]","bg-[var(--inkblot-semantic-color-background-secondary)]","px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-4)]","border border-[var(--inkblot-semantic-color-border-subtle)]"),children:[(0,dt.jsx)("span",{className:o("uppercase tracking-wider","[font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-secondary)]"),children:t.label}),(0,dt.jsx)("span",{className:o("[font:var(--inkblot-semantic-typography-heading-medium)]","text-[var(--inkblot-semantic-color-text-primary)]"),children:t.value}),t.change?(0,dt.jsx)("span",{className:o("[font:var(--inkblot-semantic-typography-body-small)]",r),children:t.change}):null]})}function ta({items:t,className:e}){return(0,dt.jsx)("div",{className:o("grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-4",e),children:t.map(r=>(0,dt.jsx)(hl,{item:r},r.label))})}function hl({item:t}){let e=t.changeVariant??"neutral",r=Fn[e],a=t.chartData??[],n=Math.max(...a,1);return(0,dt.jsxs)("div",{className:o("flex flex-col gap-2 rounded-[var(--inkblot-radius-lg)]","bg-[var(--inkblot-semantic-color-background-secondary)]","px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-4)]","border border-[var(--inkblot-semantic-color-border-subtle)]"),children:[(0,dt.jsx)("span",{className:o("uppercase tracking-wider","[font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-secondary)]"),children:t.label}),(0,dt.jsxs)("div",{className:"flex items-end justify-between gap-2",children:[(0,dt.jsx)("span",{className:o("[font:var(--inkblot-semantic-typography-heading-medium)]","text-[var(--inkblot-semantic-color-text-primary)]"),children:t.value}),a.length>0?(0,dt.jsx)("div",{className:"flex h-8 items-end gap-0.5",children:a.map((i,s)=>(0,dt.jsx)("div",{className:"w-1 min-w-[2px] rounded-sm bg-[var(--inkblot-semantic-color-interactive-primary)] opacity-80",style:{height:`${i/n*100}%`,minHeight:4}},s))}):null]}),t.change?(0,dt.jsx)("span",{className:o("[font:var(--inkblot-semantic-typography-body-small)]",r),children:t.change}):null]})}var Dr=require("react/jsx-runtime");function Rr({tabs:t,activeTabId:e,onTabChange:r,className:a}){return(0,Dr.jsx)("nav",{role:"tablist","aria-label":"Tabs",className:o("flex gap-0 pt-[var(--inkblot-spacing-2)]",a),children:t.map(n=>{let i=n.id===e;return(0,Dr.jsxs)("button",{role:"tab","aria-selected":i,"aria-controls":`panel-${n.id}`,id:`tab-${n.id}`,type:"button",onClick:()=>r(n.id),className:o("relative px-[var(--inkblot-spacing-5)] py-[var(--inkblot-spacing-4)]","[font:var(--inkblot-semantic-typography-body-medium)]","transition-colors duration-[var(--inkblot-duration-fast)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-primary)]",i?["font-semibold text-[var(--inkblot-semantic-color-text-primary)]","bg-[var(--inkblot-semantic-color-background-secondary)]","rounded-t-[var(--inkblot-radius-lg)]"]:["text-[var(--inkblot-semantic-color-text-secondary)]","hover:text-[var(--inkblot-semantic-color-text-primary)]","hover:bg-[var(--inkblot-semantic-color-background-secondary)]/50"]),children:[n.label,i?(0,Dr.jsx)("span",{className:"absolute bottom-0 left-0 right-0 h-0.5 rounded-full bg-[var(--inkblot-semantic-color-interactive-primary)]","aria-hidden":!0}):null]},n.id)})})}var mr=require("lucide-react");var Pt=require("react/jsx-runtime"),Nl={urgent:"bg-[var(--inkblot-semantic-color-status-error)]/20 text-[var(--inkblot-semantic-color-status-error)] border-[var(--inkblot-semantic-color-status-error)]/30",high:"bg-[var(--inkblot-semantic-color-status-warning)]/20 text-[var(--inkblot-semantic-color-status-warning)] border-[var(--inkblot-semantic-color-status-warning)]/30",medium:"bg-[var(--inkblot-semantic-color-status-success)]/10 text-[var(--inkblot-semantic-color-status-success)] border-[var(--inkblot-semantic-color-status-success)]/30",low:"bg-[var(--inkblot-semantic-color-background-tertiary)] text-[var(--inkblot-semantic-color-text-secondary)] border-[var(--inkblot-semantic-color-border-subtle)]"};function Hr({id:t,title:e,company:r,priority:a,date:n,assignee:i,completed:s=!1,onToggle:l,onClick:c,className:d}){let m=Nl[a];return(0,Pt.jsxs)("div",{role:"button",tabIndex:0,onClick:()=>c?.(t),onKeyDown:p=>{(p.key==="Enter"||p.key===" ")&&(p.preventDefault(),c?.(t))},className:o("flex items-center gap-[var(--inkblot-spacing-4)] rounded-[var(--inkblot-radius-lg)]","border border-[var(--inkblot-semantic-color-border-subtle)]","bg-[var(--inkblot-semantic-color-background-secondary)]","px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)]","transition-colors duration-[var(--inkblot-duration-fast)]","hover:border-[var(--inkblot-semantic-color-border-default)] hover:bg-[var(--inkblot-semantic-color-background-tertiary)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-primary)]","cursor-pointer",d),children:[(0,Pt.jsx)("button",{type:"button",onClick:p=>{p.stopPropagation(),l?.(t)},"aria-label":s?"Mark as incomplete":"Mark as complete","aria-pressed":s,className:o("flex h-5 w-5 shrink-0 items-center justify-center rounded-full","transition-colors duration-[var(--inkblot-duration-fast)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-primary)]",s?"bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]":"border-2 border-[var(--inkblot-semantic-color-border-default)] bg-transparent"),children:s?(0,Pt.jsx)(mr.Check,{className:"h-3 w-3",strokeWidth:3}):null}),(0,Pt.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,Pt.jsx)("p",{className:o("[font:var(--inkblot-semantic-typography-body-large-bold)]","text-[var(--inkblot-semantic-color-text-primary)]",s&&"line-through text-[var(--inkblot-semantic-color-text-secondary)]"),children:e}),(0,Pt.jsx)("p",{className:o("mt-0.5 [font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-secondary)]",s&&"line-through"),children:r})]}),(0,Pt.jsxs)("div",{className:"flex shrink-0 flex-wrap items-center justify-end gap-[var(--inkblot-spacing-3)]",children:[(0,Pt.jsx)("span",{className:o("rounded-[var(--inkblot-radius-md)] border px-[var(--inkblot-spacing-2)] py-[var(--inkblot-spacing-1)]","[font:var(--inkblot-semantic-typography-body-small)] font-medium",m),children:a.charAt(0).toUpperCase()+a.slice(1)}),(0,Pt.jsxs)("span",{className:o("flex items-center gap-1","[font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-primary)]"),children:[(0,Pt.jsx)(mr.Calendar,{className:"h-4 w-4 shrink-0 text-[var(--inkblot-semantic-color-text-tertiary)]"}),n]}),(0,Pt.jsxs)("span",{className:o("flex items-center gap-1","[font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-primary)]"),children:[(0,Pt.jsx)(mr.User,{className:"h-4 w-4 shrink-0 text-[var(--inkblot-semantic-color-text-tertiary)]"}),i]})]})]})}var pr=require("lucide-react");var Jt=require("react/jsx-runtime"),wl={todo:pr.CircleDot,in_progress:pr.Clock,done:pr.CheckCircle};function Br({sections:t,onTaskToggle:e,onTaskClick:r,className:a}){return(0,Jt.jsx)("div",{className:o("flex flex-col gap-[var(--inkblot-spacing-8)]",a),children:t.map(n=>{let i=wl[n.id],s=n.id==="done";return(0,Jt.jsxs)("section",{className:"flex flex-col gap-[var(--inkblot-spacing-4)]",children:[(0,Jt.jsxs)("div",{className:"flex items-center gap-[var(--inkblot-spacing-3)]",children:[(0,Jt.jsx)(i,{className:o("h-5 w-5 shrink-0",s?"text-[var(--inkblot-semantic-color-interactive-primary)]":"text-[var(--inkblot-semantic-color-text-secondary)]")}),(0,Jt.jsx)("h2",{className:o("[font:var(--inkblot-semantic-typography-body-large-bold)]","text-[var(--inkblot-semantic-color-text-primary)]"),children:n.label}),(0,Jt.jsx)("span",{className:o("rounded-[var(--inkblot-radius-full)] px-[var(--inkblot-spacing-2)] py-[var(--inkblot-spacing-1)]","bg-[var(--inkblot-semantic-color-background-secondary)]","[font:var(--inkblot-semantic-typography-body-small)] font-medium","text-[var(--inkblot-semantic-color-text-primary)]"),children:n.count})]}),(0,Jt.jsx)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-3)]",children:n.tasks.map(l=>(0,Jt.jsx)(Hr,{...l,completed:s,onToggle:e,onClick:r},l.id))})]},n.id)})})}var xt=require("lucide-react");var yt=require("react/jsx-runtime");function Cl(t){return t>=.8?"bg-[var(--inkblot-semantic-color-status-success)]":t>=.5?"bg-[var(--inkblot-semantic-color-status-info)]":t>=.2?"bg-[var(--inkblot-semantic-color-status-warning)]":"bg-[var(--inkblot-semantic-color-status-error)]"}var Tl={EMAIL_OPENED:xt.Mail,EMAIL_SENT:xt.Mail,INVOICE_PAID:xt.FileText,INVOICE_OVERDUE:xt.FileText,CONTRACT_SIGNED:xt.FileText,STAGE_CHANGED:xt.Zap,CALL_COMPLETED:xt.Phone,PHONE_CALL:xt.Phone,RELATIONSHIP_DETECTED:xt.Link2};function Pl(t){return Tl[t]??xt.FileText}function Sl(t){return t.metadata?.description??t.event_type.replace(/_/g," ").toLowerCase()}function Ml(t){return t.metadata?.details??`${t.actor} - ${t.subject}`}function Or({events:t,onEntitySelect:e,findEntity:r,emptyMessage:a="No recent activity",className:n}){let i=e?s=>{let l=r?.(s.subject)??r?.(s.actor);l&&e(l)}:void 0;return(0,yt.jsx)(G,{children:(0,yt.jsx)("div",{className:o("space-y-2",n),children:t.length===0?(0,yt.jsx)("p",{className:"py-6 text-center text-sm text-[var(--inkblot-semantic-color-text-tertiary)]",children:a}):t.map(s=>{let c=!!(r?.(s.subject)??r?.(s.actor))&&!!i,d=Pl(s.event_type),m=(0,yt.jsxs)("div",{className:"flex flex-1 items-center gap-3",children:[(0,yt.jsx)(d,{className:"h-4 w-4 shrink-0 text-[var(--inkblot-semantic-color-text-secondary)]","aria-hidden":!0}),(0,yt.jsx)("div",{className:`h-2 w-2 shrink-0 rounded-full ${Cl(s.confidence_score)}`,"aria-hidden":!0}),(0,yt.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,yt.jsx)("p",{className:"text-sm font-medium text-[var(--inkblot-semantic-color-text-primary)]",children:Sl(s)}),(0,yt.jsx)("p",{className:"text-xs text-[var(--inkblot-semantic-color-text-secondary)]",children:Ml(s)})]}),(0,yt.jsx)("span",{className:"shrink-0 text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:s.timestamp})]}),p=s.id??`${s.actor}-${s.subject}-${s.timestamp}`;return(0,yt.jsx)("div",{children:c?(0,yt.jsx)("button",{type:"button",onClick:()=>i(s),className:"flex w-full items-center gap-3 rounded-[var(--inkblot-radius-md)] bg-[var(--inkblot-semantic-color-background-secondary)] p-3 text-left transition-colors duration-[var(--inkblot-duration-fast)] hover:bg-[var(--inkblot-semantic-color-background-tertiary)] focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-primary)]",children:m}):(0,yt.jsx)("div",{className:"flex w-full items-center gap-3 rounded-[var(--inkblot-radius-md)] bg-[var(--inkblot-semantic-color-background-secondary)] p-3",children:m})},p)})})})}var Vn=require("react-router-dom"),St=require("lucide-react");var te=require("react/jsx-runtime"),El=[{id:"home",path:"/",icon:St.ClipboardList,label:"Home"},{id:"intelligence",path:"/intelligence",icon:St.Brain,label:"Intelligence"},{id:"pipeline",path:"/pipeline",icon:St.BarChart3,label:"Pipeline"},{id:"graph",path:"/graph",icon:St.Network,label:"Graph"},{id:"events",path:"/events",icon:St.Activity,label:"Events"},{id:"settings",path:"/settings",icon:St.Settings,label:"Settings"}];function ea({items:t=El,brandLogo:e,brandTitle:r="Command Canvas \u2014 AI-native Interface",className:a}){return(0,te.jsx)(G,{children:(0,te.jsxs)("nav",{className:o("flex h-full flex-col gap-[var(--inkblot-spacing-4)] border-r border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-3)]",a),children:[(0,te.jsx)("div",{className:"flex flex-col items-center gap-2",children:(0,te.jsx)("div",{className:"flex h-11 w-11 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] shadow-[var(--inkblot-shadow-sm)]",title:r,children:e??(0,te.jsx)(St.Sparkles,{className:"h-5 w-5 text-[var(--inkblot-semantic-color-interactive-primary)]","aria-hidden":!0})})}),(0,te.jsx)("div",{className:"flex flex-1 flex-col gap-[var(--inkblot-spacing-2)]",children:t.map(n=>{let i=n.icon;return(0,te.jsx)(Vn.NavLink,{to:n.path,end:n.path==="/","aria-label":n.label,className:({isActive:s})=>`flex items-center justify-center gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-lg)] border border-transparent px-[var(--inkblot-spacing-2)] py-[var(--inkblot-spacing-2)] transition-[background,border-color,color] duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)] ${s?"border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] text-[var(--inkblot-semantic-color-interactive-primary)]":"text-[var(--inkblot-semantic-color-text-secondary)] hover:border-[var(--inkblot-semantic-color-border-default)]/60 hover:bg-[var(--inkblot-semantic-color-background-primary)]"}`,children:(0,te.jsx)(i,{size:20,"aria-hidden":!0})},n.id)})})]})})}var Gn=require("react"),Te=require("lucide-react");var nt=require("react/jsx-runtime");function ra({prompt:t,onPromptChange:e,onSubmit:r,onFilesAttach:a,isProcessing:n,placeholder:i="Ask anything \u2014 deals, contacts, forecasts...",subtitle:s="Citron OS v1.0 \u2014 AI-native Revenue & Operations Platform",className:l}){let c=(0,Gn.useRef)(null),d=p=>{p.key==="Enter"&&!p.shiftKey&&(p.preventDefault(),r())},m=p=>{let b=p.target.files;b&&b.length>0&&a&&a(Array.from(b)),p.target.value=""};return(0,nt.jsxs)("div",{className:o("border-t border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] px-[var(--inkblot-spacing-6)] py-[var(--inkblot-spacing-4)]",l),children:[(0,nt.jsxs)("div",{className:"flex items-start gap-[var(--inkblot-spacing-3)]",children:[(0,nt.jsx)("div",{className:"mt-[var(--inkblot-spacing-1)] flex h-10 w-10 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)]",children:(0,nt.jsx)(Te.Sparkles,{className:"h-5 w-5 text-[var(--inkblot-semantic-color-interactive-primary)]","aria-hidden":!0})}),(0,nt.jsx)("div",{className:"flex-1",children:(0,nt.jsxs)("div",{className:o("flex items-end gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-2)] shadow-[var(--inkblot-shadow-sm)]",n&&"pointer-events-none"),"aria-busy":n,children:[(0,nt.jsx)("input",{ref:c,type:"file",multiple:!0,onChange:m,className:"sr-only","aria-hidden":!0}),(0,nt.jsx)("button",{type:"button",onClick:()=>c.current?.click(),disabled:n,className:o("flex h-9 w-9 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-full)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] text-[var(--inkblot-semantic-color-text-tertiary)] transition-[background,border-color,color] duration-[var(--inkblot-duration-fast)]","hover:border-[var(--inkblot-semantic-color-border-strong)] hover:bg-[var(--inkblot-semantic-color-background-tertiary)] hover:text-[var(--inkblot-semantic-color-text-secondary)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-secondary)]","disabled:pointer-events-none disabled:opacity-[var(--inkblot-opacity-disabled)]"),"aria-label":"Attach files",children:(0,nt.jsx)(Te.Paperclip,{size:18,strokeWidth:1.7,"aria-hidden":!0})}),(0,nt.jsx)("textarea",{value:t,onChange:p=>e(p.target.value),onKeyDown:d,placeholder:i,rows:1,disabled:n,className:o("min-h-[2.25rem] min-w-0 flex-1 resize-none bg-transparent py-[var(--inkblot-spacing-2)] [font:var(--inkblot-semantic-typography-body-default)] text-[var(--inkblot-semantic-color-text-primary)] placeholder:text-[var(--inkblot-semantic-color-text-tertiary)]","focus:outline-none","disabled:cursor-not-allowed disabled:opacity-[var(--inkblot-opacity-disabled)]")}),(0,nt.jsx)("div",{className:"flex h-9 w-9 shrink-0 items-center justify-center",children:n?(0,nt.jsx)("div",{className:"flex h-8 w-8 items-center justify-center rounded-[var(--inkblot-radius-full)] bg-[var(--inkblot-semantic-color-interactive-primary)]",children:(0,nt.jsx)(Te.Loader2,{size:16,strokeWidth:2,className:"animate-spin text-[var(--inkblot-semantic-color-text-inverse)]","aria-hidden":!0})}):(0,nt.jsx)("button",{type:"button",onClick:r,className:o("flex h-8 w-8 items-center justify-center rounded-[var(--inkblot-radius-full)] bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)] transition-[background,box-shadow] duration-[var(--inkblot-duration-fast)]","hover:bg-[var(--inkblot-semantic-color-interactive-primary-hover)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-secondary)]"),"aria-label":"Send",children:(0,nt.jsx)(Te.Send,{size:16,strokeWidth:2,"aria-hidden":!0})})})]})})]}),s&&(0,nt.jsx)("p",{className:"mt-[var(--inkblot-spacing-2)] [font:var(--inkblot-semantic-typography-body-small)] text-[var(--inkblot-semantic-color-text-tertiary)]",children:s})]})}var Yt=require("react/jsx-runtime");function oa({events:t,title:e="Event Stream",showLive:r=!0,className:a}){return(0,Yt.jsx)(G,{children:(0,Yt.jsxs)("div",{className:o("flex h-full flex-col bg-[var(--inkblot-semantic-color-background-secondary)]",a),children:[(0,Yt.jsxs)("div",{className:"flex shrink-0 items-center justify-between border-b border-[var(--inkblot-semantic-color-border-default)] px-4 py-3",children:[(0,Yt.jsx)("span",{className:"text-xs font-medium uppercase tracking-wider text-[var(--inkblot-semantic-color-text-secondary)]",children:e}),r&&(0,Yt.jsxs)("div",{className:"flex items-center gap-2",children:[(0,Yt.jsx)("div",{className:"h-2 w-2 rounded-full bg-[var(--inkblot-semantic-color-status-success)]"}),(0,Yt.jsx)("span",{className:"text-xs text-[var(--inkblot-semantic-color-status-success)]",children:"Live"})]})]}),(0,Yt.jsx)("div",{className:"flex-1 overflow-auto p-4",children:(0,Yt.jsx)(Or,{events:t})})]})})}var X=require("react/jsx-runtime"),Il=[{label:"Pipeline Health",value:76},{label:"Churn Risk",value:28},{label:"Expansion Signal",value:64},{label:"Team Velocity",value:83}],Ll=[{title:"Acme Corp likely to close within 14 days",description:"Based on email sentiment, meeting cadence, and champion engagement patterns.",confidence:89},{title:"Churn risk detected: GlobalTech Inc",description:"Declining touchpoints and support ticket volume suggest potential churn.",confidence:74},{title:"Expansion opportunity: TechVentures",description:"Usage patterns and NPS scores indicate readiness for upsell conversation.",confidence:81}];function aa({loading:t,kpiCards:e=Il,aiInsights:r=Ll,title:a="Intelligence Lab",subtitle:n="AI-generated insights - Updated 3 min ago",className:i}){return(0,X.jsxs)("div",{className:o("flex h-full flex-col gap-4 overflow-y-auto p-4",i),children:[(0,X.jsxs)("div",{children:[(0,X.jsx)("h1",{className:"text-2xl font-semibold text-[var(--inkblot-semantic-color-text-primary)]",children:a}),(0,X.jsx)("p",{className:"text-sm text-[var(--inkblot-semantic-color-text-tertiary)]",children:n})]}),(0,X.jsx)(Ir,{loading:t,title:"",children:(0,X.jsx)(G,{children:(0,X.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,X.jsx)("div",{className:"grid grid-cols-2 gap-4 lg:grid-cols-4",children:e.map(s=>(0,X.jsx)(Mr,{label:s.label,value:s.value,subtext:s.subtext,trend:s.trend},s.label))}),(0,X.jsxs)("div",{children:[(0,X.jsx)("h2",{className:"mb-4 border-b border-[var(--inkblot-semantic-color-border-default)] pb-2 text-sm font-bold uppercase tracking-wider text-[var(--inkblot-semantic-color-text-primary)]",children:"AI Insights"}),(0,X.jsx)("div",{className:"flex flex-col gap-4",children:r.map(s=>(0,X.jsx)(G,{children:(0,X.jsxs)("div",{className:"flex items-start justify-between gap-4 rounded-[var(--inkblot-radius-lg)] bg-[var(--inkblot-semantic-color-background-secondary)] p-4",children:[(0,X.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,X.jsx)("h3",{className:"font-semibold text-[var(--inkblot-semantic-color-text-primary)]",children:s.title}),(0,X.jsx)("p",{className:"mt-1 text-sm text-[var(--inkblot-semantic-color-text-tertiary)]",children:s.description})]}),(0,X.jsxs)("div",{className:"flex shrink-0 flex-col items-center",children:[(0,X.jsx)("span",{className:"text-lg font-bold text-[var(--inkblot-semantic-color-text-primary)]",children:s.confidence}),(0,X.jsx)("span",{className:"text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:"Conf."})]})]})},s.title))})]})]})})})]})}var ee=require("react/jsx-runtime");function na({navigation:t,eventStream:e,commandBar:r,children:a,className:n,eventStreamWidth:i="w-80"}){return(0,ee.jsxs)("div",{className:o("flex h-screen w-screen overflow-hidden bg-[var(--inkblot-semantic-color-background-primary)]",n),children:[(0,ee.jsx)("aside",{className:"flex h-full w-16 shrink-0 flex-col border-r border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)]",children:t}),(0,ee.jsx)("main",{className:"flex flex-1 flex-col overflow-hidden",children:(0,ee.jsxs)("div",{className:"flex min-h-0 flex-1",children:[(0,ee.jsxs)("div",{className:"flex min-h-0 flex-1 flex-col overflow-hidden bg-[var(--inkblot-semantic-color-background-primary)]",children:[(0,ee.jsx)("div",{className:"flex-1 overflow-auto px-[var(--inkblot-spacing-6)] py-[var(--inkblot-spacing-6)]",children:a}),(0,ee.jsx)("div",{className:"shrink-0 border-t border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)]",children:r})]}),e&&(0,ee.jsx)("aside",{className:o("flex h-full shrink-0 flex-col border-l border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-4)]",i),children:e})]})})]})}var no=require("react"),io=require("lucide-react");var Wt=require("react/jsx-runtime"),Al=["urgent","high","medium","low"];function zr({onConfirm:t,onCancel:e,className:r}){let[a,n]=(0,no.useState)(""),[i,s]=(0,no.useState)(""),[l,c]=(0,no.useState)("medium");return(0,Wt.jsxs)("form",{onSubmit:m=>{m.preventDefault();let p=a.trim();p&&(t({title:p,company:i.trim()||void 0,priority:l}),n(""),s(""),c("medium"))},className:o("flex flex-col gap-[var(--inkblot-spacing-4)] rounded-[var(--inkblot-radius-lg)]","border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-secondary)]","p-[var(--inkblot-spacing-4)]",r),children:[(0,Wt.jsx)("input",{type:"text",value:a,onChange:m=>n(m.target.value),placeholder:"Task title...",autoFocus:!0,required:!0,className:o("min-h-[var(--inkblot-size-touch-target-min)] w-full rounded-[var(--inkblot-radius-md)]","border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-primary)]","px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","[font:var(--inkblot-semantic-typography-body-medium)]","text-[var(--inkblot-semantic-color-text-primary)] placeholder:text-[var(--inkblot-semantic-color-text-tertiary)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)]")}),(0,Wt.jsx)("input",{type:"text",value:i,onChange:m=>s(m.target.value),placeholder:"Company (optional)",className:o("min-h-[var(--inkblot-size-touch-target-min)] w-full rounded-[var(--inkblot-radius-md)]","border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-primary)]","px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","[font:var(--inkblot-semantic-typography-body-medium)]","text-[var(--inkblot-semantic-color-text-primary)] placeholder:text-[var(--inkblot-semantic-color-text-tertiary)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)]")}),(0,Wt.jsx)("div",{className:"flex flex-wrap gap-[var(--inkblot-spacing-2)]",children:Al.map(m=>(0,Wt.jsx)("button",{type:"button",onClick:()=>c(m),className:o("rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-2)] py-[var(--inkblot-spacing-1)]","[font:var(--inkblot-semantic-typography-body-small)] font-medium","transition-colors duration-[var(--inkblot-duration-fast)]",l===m?"bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]":"bg-[var(--inkblot-semantic-color-background-tertiary)] text-[var(--inkblot-semantic-color-text-secondary)] hover:bg-[var(--inkblot-semantic-color-background-tertiary)]/80"),children:m.charAt(0).toUpperCase()+m.slice(1)},m))}),(0,Wt.jsxs)("div",{className:"flex justify-end gap-[var(--inkblot-spacing-2)]",children:[(0,Wt.jsxs)("button",{type:"button",onClick:e,className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center gap-2 rounded-[var(--inkblot-radius-lg)]","border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-interactive-secondary)]","px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","[font:var(--inkblot-semantic-typography-body-medium)] font-medium","text-[var(--inkblot-semantic-color-text-primary)]","hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)]"),children:[(0,Wt.jsx)(io.X,{className:"h-4 w-4"}),"Cancel"]}),(0,Wt.jsxs)("button",{type:"submit",disabled:!a.trim(),className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center gap-2 rounded-[var(--inkblot-radius-lg)]","bg-[var(--inkblot-semantic-color-interactive-primary)]","px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","[font:var(--inkblot-semantic-typography-body-medium)] font-medium","text-[var(--inkblot-semantic-color-text-inverse)]","hover:bg-[var(--inkblot-semantic-color-interactive-primary-hover)] active:bg-[var(--inkblot-semantic-color-interactive-primary-active)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)]","disabled:opacity-[var(--inkblot-opacity-disabled)] disabled:cursor-not-allowed"),children:[(0,Wt.jsx)(io.Check,{className:"h-4 w-4"}),"Add Task"]})]})]})}var Me=require("react"),br=require("lucide-react");var lo=require("react");var Kn=require("react");var Wn=require("react/jsx-runtime"),Dl={sm:"h-8 px-3 text-xs",md:"h-10 px-4 text-sm",lg:"h-11 px-5 text-sm"};function so({pressed:t,defaultPressed:e=!1,onPressedChange:r,size:a="md",variant:n="default",disabled:i,className:s,children:l,...c}){let[d,m]=(0,Kn.useState)(e),p=t??d;return(0,Wn.jsx)("button",{type:"button","aria-pressed":p,disabled:i,onClick:()=>{if(i)return;let u=!p;t===void 0&&m(u),r?.(u)},className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center rounded-[var(--inkblot-radius-md)] border font-medium transition-colors duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--inkblot-semantic-color-border-focus)] focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-[var(--inkblot-opacity-disabled)]",Dl[a],n==="default"?p?"border-[var(--inkblot-semantic-color-interactive-primary)] bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]":"border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] text-[var(--inkblot-semantic-color-text-primary)] hover:bg-[var(--inkblot-semantic-color-background-tertiary)]":p?"border-[var(--inkblot-semantic-color-text-primary)] bg-[var(--inkblot-semantic-color-background-tertiary)] text-[var(--inkblot-semantic-color-text-primary)]":"border-[var(--inkblot-semantic-color-border-default)] bg-transparent text-[var(--inkblot-semantic-color-text-secondary)] hover:text-[var(--inkblot-semantic-color-text-primary)]",s),...c,children:l})}var Fr=require("react/jsx-runtime");function co({type:t="single",items:e,value:r,defaultValue:a,onValueChange:n,className:i,...s}){let l=a??(t==="single"?"":[]),[c,d]=(0,lo.useState)(l),m=r??c,p=(0,lo.useMemo)(()=>{if(t==="single"){let f=typeof m=="string"?m:"";return new Set(f?[f]:[])}let u=Array.isArray(m)?m:[];return new Set(u)},[m,t]),b=u=>{if(t==="single"){let h=p.has(u)?"":u;r===void 0&&d(h),n?.(h);return}let f=Array.isArray(m)?m:[],w=f.includes(u)?f.filter(h=>h!==u):[...f,u];r===void 0&&d(w),n?.(w)};return(0,Fr.jsx)("div",{className:o("inline-flex items-center gap-2 rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-tertiary)] p-1",i),...s,children:e.map(u=>{let f=u.icon;return(0,Fr.jsxs)(so,{pressed:p.has(u.id),onPressedChange:()=>b(u.id),disabled:u.disabled,size:"sm",children:[f?(0,Fr.jsx)(f,{className:"mr-2 size-4"}):null,u.label]},u.id)})})}var qn=require("@hello-pangea/dnd"),po=require("react");var $n=require("@hello-pangea/dnd");var _n=require("react"),Un=require("lucide-react");var Vr=require("react/jsx-runtime"),Rl={sm:"h-8 w-8 text-xs",md:"h-10 w-10 text-sm",lg:"h-14 w-14 text-base"};function mo({src:t,alt:e="Avatar",fallback:r,size:a="md",disabled:n=!1,className:i}){let[s,l]=(0,_n.useState)(!1),c=!!(t&&!s);return(0,Vr.jsx)("span",{"aria-disabled":n,className:o("inline-flex shrink-0 items-center justify-center overflow-hidden rounded-[var(--inkblot-radius-full)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-tertiary)] text-[var(--inkblot-semantic-color-text-secondary)]",n&&"opacity-[var(--inkblot-opacity-disabled)]",Rl[a],i),children:c?(0,Vr.jsx)("img",{src:t,alt:e,onError:()=>l(!0),className:"h-full w-full object-cover"}):r?(0,Vr.jsx)("span",{className:"font-medium uppercase",children:r.slice(0,2)}):(0,Vr.jsx)(Un.User,{className:"h-4 w-4"})})}var At=require("react/jsx-runtime"),Hl={low:"bg-[var(--inkblot-semantic-color-status-info)]",medium:"bg-[var(--inkblot-semantic-color-status-success)]",high:"bg-[var(--inkblot-semantic-color-status-warning)]",urgent:"bg-[var(--inkblot-semantic-color-status-error)]"};function Gr({task:t,index:e,className:r}){let a=t.jiraKey??`TASK-${t.id}`;return(0,At.jsx)($n.Draggable,{draggableId:t.id,index:e,children:(n,i)=>(0,At.jsxs)("div",{ref:n.innerRef,...n.draggableProps,...n.dragHandleProps,className:o("relative flex cursor-grab flex-col gap-[var(--inkblot-spacing-3)] rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-4)] shadow-[var(--inkblot-shadow-sm)]","active:cursor-grabbing",i.isDragging&&"shadow-[var(--inkblot-shadow-lg)] ring-2 ring-[var(--inkblot-semantic-color-border-focus)]",r),children:[(0,At.jsx)("div",{className:"absolute right-[var(--inkblot-spacing-3)] top-[var(--inkblot-spacing-3)] h-8 w-1 rounded-[var(--inkblot-radius-sm)]",children:(0,At.jsx)("span",{className:o("block h-full w-full rounded-[var(--inkblot-radius-sm)]",Hl[t.priority])})}),(0,At.jsx)("p",{className:o("pr-[var(--inkblot-spacing-4)] text-[var(--inkblot-semantic-color-text-primary)]","[font:var(--inkblot-semantic-typography-body-medium)] font-semibold"),children:t.title}),(0,At.jsx)("p",{className:"text-[var(--inkblot-semantic-color-text-tertiary)] [font:var(--inkblot-semantic-typography-body-small)]",children:t.company}),(0,At.jsxs)("div",{className:"flex items-end justify-between gap-[var(--inkblot-spacing-2)]",children:[(0,At.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,At.jsx)("span",{className:"text-[var(--inkblot-semantic-color-text-tertiary)] [font:var(--inkblot-semantic-typography-body-small)]",children:a}),t.date?(0,At.jsx)("span",{className:"text-[var(--inkblot-semantic-color-text-secondary)] [font:var(--inkblot-semantic-typography-body-small)]",children:t.date}):null]}),(0,At.jsx)(mo,{size:"sm",fallback:t.assignee.replace(/\s/g,"").slice(0,2).toUpperCase(),alt:t.assignee})]})]})})}var jn=require("@hello-pangea/dnd");var Pe=require("react/jsx-runtime");function Kr({columnId:t,title:e,count:r,children:a,className:n}){return(0,Pe.jsxs)("div",{className:o("flex min-w-[min(100%,280px)] flex-1 flex-col rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-tertiary)]",n),children:[(0,Pe.jsxs)("header",{className:o("flex items-center justify-between gap-[var(--inkblot-spacing-3)] border-b border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-secondary)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)]"),children:[(0,Pe.jsx)("h2",{className:o("text-[var(--inkblot-semantic-color-text-secondary)] [font:var(--inkblot-semantic-typography-body-small)]","font-semibold uppercase tracking-wide"),children:e}),(0,Pe.jsx)("span",{className:o("min-w-[var(--inkblot-size-touch-target-min)] rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-2)] py-0.5 text-center","bg-[var(--inkblot-semantic-color-background-tertiary)] text-[var(--inkblot-semantic-color-text-primary)]","[font:var(--inkblot-semantic-typography-body-small)] font-medium"),children:r})]}),(0,Pe.jsx)(jn.Droppable,{droppableId:t,children:(i,s)=>(0,Pe.jsxs)("div",{ref:i.innerRef,...i.droppableProps,className:o("flex min-h-[200px] flex-1 flex-col gap-[var(--inkblot-spacing-3)] p-[var(--inkblot-spacing-3)]",s.isDraggingOver&&"bg-[var(--inkblot-semantic-color-interactive-secondary)]/30"),children:[a,i.placeholder]})})]})}var Wr=require("react/jsx-runtime"),Bl=[{id:"todo",title:"TO DO"},{id:"in_progress",title:"IN PROGRESS"},{id:"done",title:"DONE"}];function Ol(t,e){let{destination:r,source:a,draggableId:n}=e;if(!r||a.droppableId===r.droppableId&&a.index===r.index)return t;let i=r.droppableId,s=t.find(b=>b.id===n);if(!s)return t;let l=t.filter(b=>b.id!==n),c={...s,status:i},m=[...l.filter(b=>b.status===i)];return m.splice(r.index,0,c),["todo","in_progress","done"].flatMap(b=>b===i?m:l.filter(u=>u.status===b))}function Ye({tasks:t,onTasksChange:e,className:r}){let a=(0,po.useCallback)(i=>{e(Ol(t,i))},[t,e]),n=(0,po.useMemo)(()=>{let i={todo:[],in_progress:[],done:[]};for(let s of t)i[s.status].push(s);return i},[t]);return(0,Wr.jsx)(qn.DragDropContext,{onDragEnd:a,children:(0,Wr.jsx)("div",{className:o("flex w-full flex-col gap-[var(--inkblot-spacing-4)] lg:flex-row lg:items-start lg:overflow-x-auto",r),children:Bl.map(i=>{let s=n[i.id];return(0,Wr.jsx)(Kr,{columnId:i.id,title:i.title,count:s.length,children:s.map((l,c)=>(0,Wr.jsx)(Gr,{task:l,index:c},l.id))},i.id)})})})}var Mt=require("react/jsx-runtime");function Se(t,e,r="You",a){let i=new Date().toLocaleDateString("en-US",{month:"short",day:"numeric"})||"Today";return{id:e,title:t.title,company:t.company??"Unassigned",priority:t.priority??"medium",date:i,assignee:r,status:"todo",jiraKey:a}}function zl(t){let e={todo:t.filter(r=>r.status==="todo"),in_progress:t.filter(r=>r.status==="in_progress"),done:t.filter(r=>r.status==="done")};return[{id:"todo",label:"TO DO",count:e.todo.length,tasks:e.todo},{id:"in_progress",label:"IN PROGRESS",count:e.in_progress.length,tasks:e.in_progress},{id:"done",label:"DONE",count:e.done.length,tasks:e.done}]}var Ee=[Se({title:"Follow up with Sarah Chen on proposal",company:"Acme Corp",priority:"high"},"1","You","CRM-104"),Se({title:"Schedule demo with engineering team",company:"TechStart Inc",priority:"medium"},"2","Alex M.","CRM-112"),Se({title:"Prepare quarterly report slides",company:"GlobalTech",priority:"low"},"3","Sam R.","CRM-98"),Se({title:"Review Q1 marketing budget",company:"TechStart Inc",priority:"medium"},"4","Jamie L.","CRM-120"),Se({title:"Draft partnership agreement",company:"Enterprise Co",priority:"urgent"},"5","You","CRM-88"),Se({title:"Send contract to legal team",company:"GlobalTech",priority:"low"},"6","Lisa K."),Se({title:"Update CRM with new contacts",company:"Acme Corp",priority:"low"},"7","Morgan P.","CRM-130")];Ee[0].status="todo";Ee[1].status="todo";Ee[2].status="todo";Ee[3].status="in_progress";Ee[4].status="in_progress";Ee[5].status="done";Ee[6].status="done";function ia({initialTasks:t=Ee,onTaskCreate:e,onTaskToggle:r,onTaskClick:a,onTasksReorder:n,className:i}){let[s,l]=(0,Me.useState)(t),[c,d]=(0,Me.useState)(!1),[m,p]=(0,Me.useState)(""),[b,u]=(0,Me.useState)("list"),f=(0,Me.useMemo)(()=>{if(!m.trim())return s;let v=m.toLowerCase();return s.filter(x=>x.title.toLowerCase().includes(v)||x.company.toLowerCase().includes(v)||(x.jiraKey?.toLowerCase().includes(v)??!1))},[s,m]),w=(0,Me.useMemo)(()=>zl(f),[f]),h=s.filter(v=>v.status!=="done").length,g=s.filter(v=>v.priority==="urgent"&&v.status!=="done").length,S=`${h} pending${g>0?` \xB7 ${g} urgent`:""}`,N=v=>{let x=`task-${Date.now()}`,C=Se(v,x);l(M=>[C,...M]),d(!1),e?.(v)},y=v=>{l(x=>x.map(C=>{if(C.id!==v)return C;let M=C.status==="done"?"todo":"done";return{...C,status:M}})),r?.(v)},k=v=>{l(v),n?.(v)};return(0,Mt.jsx)("div",{className:o("flex min-h-screen flex-col bg-[var(--inkblot-semantic-color-background-primary)]",i),children:(0,Mt.jsxs)("div",{className:"flex flex-1 flex-col gap-8 px-8 py-8",children:[(0,Mt.jsx)(Ue,{title:"Tasks",subtitle:S,icon:(0,Mt.jsx)(br.ClipboardList,{className:"h-5 w-5"}),action:(0,Mt.jsx)($e,{label:"New Task",onClick:()=>d(v=>!v)})}),(0,Mt.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-4)] xl:flex-row xl:items-center xl:gap-[var(--inkblot-spacing-4)]",children:[(0,Mt.jsx)(co,{type:"single",value:b,onValueChange:v=>{(v==="list"||v==="kanban")&&u(v)},items:[{id:"list",label:"List View",icon:br.List},{id:"kanban",label:"Kanban Board View",icon:br.LayoutGrid}]}),(0,Mt.jsx)("div",{className:"min-w-0 flex-1",children:(0,Mt.jsx)(me,{placeholder:b==="list"?"Search tasks (title, company, Jira key)...":"Switch to list view to search and filter tasks",value:m,onChange:v=>p(v.target.value),disabled:b==="kanban"})})]}),c?(0,Mt.jsx)(zr,{onConfirm:N,onCancel:()=>d(!1)}):null,b==="list"?(0,Mt.jsx)(Br,{sections:w,onTaskToggle:y,onTaskClick:a}):(0,Mt.jsx)(Ye,{tasks:s,onTasksChange:k})]})})}var Xt=require("react"),Qn=require("lucide-react");var K=require("react/jsx-runtime"),Fl=`Hi [Name],
1
+ "use strict";var qo=Object.defineProperty;var il=Object.getOwnPropertyDescriptor;var sl=Object.getOwnPropertyNames;var ll=Object.prototype.hasOwnProperty;var cl=(t,e)=>{for(var r in e)qo(t,r,{get:e[r],enumerable:!0})},dl=(t,e,r,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of sl(e))!ll.call(t,i)&&i!==r&&qo(t,i,{get:()=>e[i],enumerable:!(a=il(e,i))||a.enumerable});return t};var ml=t=>dl(qo({},"__esModule",{value:!0}),t);var Yc={};cl(Yc,{AIComposeInput:()=>pr,AIEmailGenerator:()=>oc,Accordion:()=>gi,ActionButtons:()=>co,ActivityStream:()=>Wr,AdvancedDropdown:()=>ki,Alert:()=>yi,AlertDialog:()=>hi,AppLayout:()=>cc,AppNavigationRail:()=>sa,AppSidebar:()=>ga,AspectRatio:()=>Ti,AssistantPanel:()=>Nn,Avatar:()=>ko,Badge:()=>Pi,Breadcrumb:()=>Ei,Button:()=>br,CITRON_THEME_STORAGE_KEY:()=>Yr,Calendar:()=>Li,CampaignTable:()=>Mr,CanvasProvider:()=>Eo,Card:()=>Ai,CardContent:()=>Bi,CardDescription:()=>Hi,CardFooter:()=>zi,CardHeader:()=>Di,CardTitle:()=>Ri,Carousel:()=>Fi,CenteredAIChat:()=>Tn,CenteredAssistantChat:()=>wn,Chart:()=>Vi,Checkbox:()=>Ki,CircularScore:()=>xa,Collapsible:()=>ji,Command:()=>qi,CommandBar:()=>la,CommandCanvas:()=>gc,ContextMenu:()=>Yi,Dialog:()=>Ji,DialogClose:()=>Do,DialogContent:()=>Ca,DialogDescription:()=>rs,DialogFooter:()=>os,DialogHeader:()=>ts,DialogTitle:()=>es,DialogTrigger:()=>wa,Drawer:()=>ss,DrawerClose:()=>Ma,DrawerContent:()=>Sa,DrawerDescription:()=>ds,DrawerFooter:()=>ms,DrawerHeader:()=>ls,DrawerTitle:()=>cs,DrawerTrigger:()=>Pa,DropdownMenu:()=>us,DropdownMenuContent:()=>La,DropdownMenuItem:()=>Aa,DropdownMenuSeparator:()=>vs,DropdownMenuTrigger:()=>Ia,EmailBlockEditor:()=>yc,EmailCampaignsView:()=>ba,EmailComposeActionButtons:()=>Pr,EmailTemplatesSection:()=>Ir,EntityCard:()=>Yo,EntityCommandCard:()=>Xo,ErrorBoundary:()=>Lr,EventFeed:()=>ka,EventRow:()=>Qo,EventStreamFeed:()=>Jo,EventStreamSidebar:()=>ca,Form:()=>Da,FormActions:()=>ys,FormField:()=>ks,GlobalAssistantChat:()=>Xe,GraphView:()=>wc,GuidedTour:()=>Tc,HoverCard:()=>Ns,HoverCardContent:()=>Ba,HoverCardTrigger:()=>Ha,Input:()=>Me,InputOtp:()=>Oa,IntegrationPlaceholder:()=>ol,IntelligenceCard:()=>Sc,IntelligenceLab:()=>da,IntelligenceScoreCard:()=>Dr,InvoiceEditorPage:()=>vi,InvoiceForm:()=>To,InvoicePreview:()=>Po,Label:()=>Fa,MainShell:()=>ma,Menubar:()=>Ga,MenubarCloseZone:()=>_a,MenubarContent:()=>Ka,MenubarItem:()=>Ua,MenubarMenu:()=>Ms,MenubarSeparator:()=>Es,MenubarTrigger:()=>Wa,MetricComparisonList:()=>ra,ModuleContainer:()=>Hr,ModuleErrorBoundary:()=>U,ModuleSkeleton:()=>Rr,NavLink:()=>Mo,NavLinkRouter:()=>ho,NavigationMenu:()=>Is,OSNavigationRail:()=>na,OnboardingWizard:()=>Ic,PageErrorFallback:()=>Br,PageHeader:()=>Qe,PageHeaderActionButton:()=>Je,Pagination:()=>Ls,Popover:()=>Ds,PopoverClose:()=>Xa,PopoverContent:()=>Ya,PopoverTrigger:()=>qa,Progress:()=>Za,RadioGroup:()=>Qa,RadioGroupItem:()=>zo,Resizable:()=>Hs,RouteWithErrorBoundary:()=>oa,ScrollArea:()=>Ja,SearchBar:()=>ke,Select:()=>tn,Separator:()=>en,Sheet:()=>Us,Sidebar:()=>_s,Skeleton:()=>ge,Slider:()=>rn,Sonner:()=>$s,StatCardGrid:()=>aa,StatCards:()=>zr,StatCardsWithChart:()=>ia,StatusBadge:()=>Ar,Switch:()=>nn,TabSystem:()=>Fr,Table:()=>sn,TableBody:()=>cn,TableCaption:()=>bn,TableCell:()=>pn,TableEmptyState:()=>un,TableHead:()=>mn,TableHeader:()=>ln,TableRow:()=>dn,Tabs:()=>Ys,TaskCreateForm:()=>Kr,TaskDetailsPanel:()=>rl,TaskItem:()=>Vr,TaskKanban:()=>rr,TaskKanbanBoard:()=>rr,TaskKanbanCard:()=>jr,TaskKanbanColumn:()=>$r,TaskList:()=>Gr,TasksView:()=>pa,TemplateCard:()=>Er,TemplateMasonryGrid:()=>el,Textarea:()=>vn,ThemeProvider:()=>ua,ThemeSwitcherButton:()=>Zr,Toast:()=>Wo,Toaster:()=>Ko,Toggle:()=>vo,ToggleGroup:()=>go,Tooltip:()=>Js,semanticBackgroundPrimary:()=>Gc,semanticBackgroundSecondary:()=>Wc,semanticBorderDefault:()=>Kc,semanticInteractivePrimary:()=>jc,semanticInteractiveSecondary:()=>$c,semanticInteractiveSecondaryHover:()=>qc,semanticTextPrimary:()=>Uc,semanticTextSecondary:()=>_c,useCanvas:()=>wi,useTheme:()=>Xr});module.exports=ml(Yc);var yt=require("react"),oe=require("lucide-react");var yn=require("clsx"),xn=require("tailwind-merge");function o(...t){return(0,xn.twMerge)((0,yn.clsx)(t))}var no=require("lucide-react"),be=require("react/jsx-runtime");function io({attachments:t,onRemove:e}){return t.length===0?null:(0,be.jsx)("div",{className:"flex flex-wrap gap-[var(--inkblot-spacing-2)] px-[var(--inkblot-spacing-2)] pb-[var(--inkblot-spacing-2)]",children:t.map((r,a)=>(0,be.jsxs)("div",{className:"group relative flex items-center gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-tertiary)] px-[var(--inkblot-spacing-2)] py-[var(--inkblot-spacing-1)]",children:[r.kind==="image"&&r.previewUrl?(0,be.jsx)("img",{src:r.previewUrl,alt:r.file.name,className:"h-8 w-8 rounded-[var(--inkblot-radius-sm)] object-cover"}):(0,be.jsx)(no.FileText,{size:16,className:"shrink-0 text-[var(--inkblot-semantic-color-text-tertiary)]","aria-hidden":!0}),(0,be.jsx)("span",{className:"max-w-[8rem] truncate text-xs text-[var(--inkblot-semantic-color-text-secondary)]",children:r.file.name}),(0,be.jsx)("button",{type:"button",onClick:()=>e(a),className:"flex h-4 w-4 items-center justify-center rounded-[var(--inkblot-radius-full)] text-[var(--inkblot-semantic-color-text-tertiary)] transition-colors duration-[var(--inkblot-duration-fast)] hover:bg-[var(--inkblot-semantic-color-background-secondary)] hover:text-[var(--inkblot-semantic-color-text-primary)]","aria-label":`Remove ${r.file.name}`,children:(0,be.jsx)(no.X,{size:10})})]},`${r.file.name}-${a}-${r.file.size}`))})}var G=require("react/jsx-runtime");function Xe({messages:t=[],onSend:e,isProcessing:r=!1,placeholder:a="Ask Citron Intelligence...",emptyStateMessage:i="Ask anything \u2014 deals, contacts, forecasts...",className:n}){let[s,l]=(0,yt.useState)(""),[c,d]=(0,yt.useState)([]),m=(0,yt.useRef)(null),p=(0,yt.useRef)(null),b=(0,yt.useRef)(null);(0,yt.useEffect)(()=>{m.current&&(m.current.scrollTop=m.current.scrollHeight)},[t]),(0,yt.useEffect)(()=>()=>{c.forEach(g=>{g.previewUrl&&URL.revokeObjectURL(g.previewUrl)})},[]);let u=(0,yt.useCallback)(()=>{let g=s.trim();if(!(!g&&c.length===0)&&!r){try{e?.({text:g,files:c.map(S=>S.file)})}catch{}l(""),d(S=>(S.forEach(N=>{N.previewUrl&&URL.revokeObjectURL(N.previewUrl)}),[])),requestAnimationFrame(()=>{b.current?.focus()})}},[s,c,r,e]),f=(0,yt.useCallback)(g=>{g.key==="Enter"&&!g.shiftKey&&(g.preventDefault(),u())},[u]),C=(0,yt.useCallback)(g=>{let S=g.target.files;if(!S||S.length===0)return;let N=Array.from(S).map(y=>{let k=y.type.startsWith("image/");return{file:y,kind:k?"image":"file",previewUrl:k?URL.createObjectURL(y):void 0}});d(y=>[...y,...N]),g.target.value=""},[]),x=(0,yt.useCallback)(g=>{d(S=>{let N=S[g];return N?.previewUrl&&URL.revokeObjectURL(N.previewUrl),S.filter((y,k)=>k!==g)})},[]);return(0,G.jsxs)("div",{className:o("flex h-full flex-col bg-[var(--inkblot-semantic-color-background-primary)]",n),children:[t.length===0?(0,G.jsx)("div",{className:"flex flex-1 items-center justify-center",children:(0,G.jsxs)("div",{className:"text-center",children:[(0,G.jsx)(oe.Sparkles,{className:"mx-auto mb-[var(--inkblot-spacing-2)] h-5 w-5 text-[var(--inkblot-semantic-color-text-tertiary)]","aria-hidden":!0}),(0,G.jsx)("p",{className:"[font:var(--inkblot-semantic-typography-body-default)] text-[var(--inkblot-semantic-color-text-tertiary)]",children:i})]})}):(0,G.jsx)("div",{ref:m,className:"flex-1 overflow-y-auto",children:(0,G.jsxs)("div",{className:"mx-auto flex max-w-4xl flex-col gap-[var(--inkblot-spacing-4)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-6)]",children:[t.map(g=>g.role==="user"?(0,G.jsx)("div",{className:"flex justify-end",children:(0,G.jsx)("div",{className:"max-w-[80%] rounded-[var(--inkblot-radius-xl)] bg-[var(--inkblot-semantic-color-interactive-primary)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)] [font:var(--inkblot-semantic-typography-body-default)] text-[var(--inkblot-semantic-color-text-inverse)]",children:g.renderedContent??g.content})},g.id):(0,G.jsxs)("div",{className:"flex items-start gap-[var(--inkblot-spacing-2)]",children:[(0,G.jsx)(oe.Sparkles,{size:16,strokeWidth:1.7,className:"mt-[var(--inkblot-spacing-1)] shrink-0 text-[var(--inkblot-semantic-color-text-tertiary)]","aria-hidden":!0}),(0,G.jsx)("div",{className:"max-w-[90%] [font:var(--inkblot-semantic-typography-body-default)] text-[var(--inkblot-semantic-color-text-primary)]",children:g.renderedContent??g.content})]},g.id)),r&&(0,G.jsxs)("div",{className:"flex items-start gap-[var(--inkblot-spacing-2)]",children:[(0,G.jsx)(oe.Loader2,{size:16,strokeWidth:1.7,className:"mt-[var(--inkblot-spacing-1)] shrink-0 animate-spin text-[var(--inkblot-semantic-color-text-tertiary)]","aria-hidden":!0}),(0,G.jsx)("p",{className:"[font:var(--inkblot-semantic-typography-body-default)] text-[var(--inkblot-semantic-color-text-tertiary)]",children:"Thinking..."})]})]})}),(0,G.jsx)("div",{className:"shrink-0 border-t border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)]",children:(0,G.jsx)("div",{className:"mx-auto max-w-4xl",children:(0,G.jsxs)("div",{className:o("overflow-hidden rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] shadow-[var(--inkblot-shadow-sm)]"),children:[(0,G.jsxs)("div",{className:"flex items-end gap-[var(--inkblot-spacing-2)] p-[var(--inkblot-spacing-2)]",children:[(0,G.jsx)("input",{ref:p,type:"file",multiple:!0,onChange:C,className:"sr-only","aria-hidden":!0}),(0,G.jsx)("button",{type:"button",onClick:()=>p.current?.click(),disabled:r,className:o("flex h-9 w-9 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-full)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] text-[var(--inkblot-semantic-color-text-tertiary)] transition-[background,border-color,color] duration-[var(--inkblot-duration-fast)]","hover:bg-[var(--inkblot-semantic-color-background-tertiary)] hover:text-[var(--inkblot-semantic-color-text-secondary)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-primary)]","disabled:pointer-events-none disabled:opacity-[var(--inkblot-opacity-disabled)]"),"aria-label":"Attach files",children:(0,G.jsx)(oe.Paperclip,{size:18,strokeWidth:1.7,"aria-hidden":!0})}),(0,G.jsx)("textarea",{ref:b,value:s,onChange:g=>l(g.target.value),onKeyDown:f,placeholder:a,rows:1,className:o("min-h-[2.25rem] min-w-0 flex-1 resize-none border-0 bg-transparent py-[var(--inkblot-spacing-1)] [font:var(--inkblot-semantic-typography-body-default)] text-[var(--inkblot-semantic-color-text-primary)] placeholder:text-[var(--inkblot-semantic-color-text-tertiary)]","focus:outline-none focus:ring-0")}),(0,G.jsx)("div",{className:"flex h-8 w-8 shrink-0 items-center justify-center",children:r?(0,G.jsx)("div",{className:"flex h-full w-full items-center justify-center rounded-[var(--inkblot-radius-full)] bg-[var(--inkblot-semantic-color-interactive-primary)]",children:(0,G.jsx)(oe.Loader2,{size:16,strokeWidth:2,className:"animate-spin text-[var(--inkblot-semantic-color-text-inverse)]","aria-hidden":!0})}):(0,G.jsx)("button",{type:"button",onClick:u,className:o("flex h-full w-full items-center justify-center rounded-[var(--inkblot-radius-full)] bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)] transition-[background,box-shadow] duration-[var(--inkblot-duration-fast)]","hover:bg-[var(--inkblot-semantic-color-interactive-primary-hover)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-primary)]"),"aria-label":"Send",children:(0,G.jsx)(oe.Send,{size:16,strokeWidth:2,"aria-hidden":!0})})})]}),(0,G.jsx)(io,{attachments:c,onRemove:x})]})})})]})}var so=require("react"),hn=require("lucide-react");var nt=require("react/jsx-runtime");function Nn({open:t,onOpenChange:e,title:r="Assistant",subtitle:a,className:i,...n}){let s=(0,so.useCallback)(()=>e?.(!1),[e]);(0,so.useEffect)(()=>{if(!t)return;let c=d=>{d.key==="Escape"&&s()};return document.addEventListener("keydown",c),()=>document.removeEventListener("keydown",c)},[t,s]);let l=(0,nt.jsxs)("div",{className:"flex items-center justify-between border-b border-[var(--inkblot-semantic-color-border-default)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)]",children:[(0,nt.jsxs)("div",{className:"min-w-0",children:[(0,nt.jsx)("p",{className:"truncate text-sm font-medium text-[var(--inkblot-semantic-color-text-primary)]",children:r}),a&&(0,nt.jsx)("p",{className:"truncate text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:a})]}),(0,nt.jsx)("button",{type:"button",onClick:s,className:"ml-[var(--inkblot-spacing-2)] flex h-7 w-7 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] text-[var(--inkblot-semantic-color-text-secondary)] transition-colors duration-[var(--inkblot-duration-fast)] hover:bg-[var(--inkblot-semantic-color-background-secondary)] hover:text-[var(--inkblot-semantic-color-text-primary)]","aria-label":"Close",children:(0,nt.jsx)(hn.X,{className:"h-4 w-4"})})]});return(0,nt.jsxs)(nt.Fragment,{children:[(0,nt.jsx)("aside",{role:"complementary","aria-label":r,className:o("hidden md:flex","shrink-0 flex-col overflow-hidden border-l border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)]","transition-[width] duration-300 ease-[var(--inkblot-easing-default)]",t?"w-96":"w-0 border-l-0",i),children:t&&(0,nt.jsxs)(nt.Fragment,{children:[l,(0,nt.jsx)(Xe,{...n,className:"min-h-0 flex-1"})]})}),(0,nt.jsxs)("div",{className:o("fixed inset-0 z-50 md:hidden",t?"pointer-events-auto":"pointer-events-none"),children:[(0,nt.jsx)("button",{type:"button","aria-label":"Close panel",onClick:s,className:o("absolute inset-0 bg-[var(--inkblot-semantic-color-background-primary)]/70 transition-opacity duration-300",t?"opacity-100":"opacity-0")}),(0,nt.jsxs)("div",{role:"dialog","aria-modal":"true","aria-label":r,className:o("absolute inset-y-0 right-0 flex w-full max-w-sm flex-col border-l border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] shadow-[var(--inkblot-shadow-lg)] transition-transform duration-300 ease-[var(--inkblot-easing-default)]",t?"translate-x-0":"translate-x-full"),children:[l,(0,nt.jsx)(Xe,{...n,className:"min-h-0 flex-1"})]})]})]})}var Cn=require("react/jsx-runtime");function wn({className:t,...e}){return(0,Cn.jsx)(Xe,{...e,className:o("mx-auto w-full max-w-5xl",t)})}var Rt=require("react"),Ht=require("lucide-react");var D=require("react/jsx-runtime");function Tn({messages:t=[],onSend:e,onComposeSubmit:r,isProcessing:a=!1,placeholder:i="Ask Citron Intelligence...",agents:n,activeAgent:s,onAgentChange:l,onFilesAttach:c,onVoiceClick:d,emptyStateMessage:m="Ask anything \u2014 deals, contacts, forecasts...",className:p}){let[b,u]=(0,Rt.useState)(""),[f,C]=(0,Rt.useState)(!1),[x,g]=(0,Rt.useState)([]),S=(0,Rt.useRef)(null),N=(0,Rt.useRef)(null),y=(0,Rt.useRef)(null),k=!!(r??c);(0,Rt.useEffect)(()=>{S.current&&(S.current.scrollTop=S.current.scrollHeight)},[t]),(0,Rt.useEffect)(()=>{if(!f)return;let w=Y=>{y.current&&!y.current.contains(Y.target)&&C(!1)};return document.addEventListener("mousedown",w),()=>document.removeEventListener("mousedown",w)},[f]);let v=(0,Rt.useRef)(x);v.current=x,(0,Rt.useEffect)(()=>()=>{v.current.forEach(w=>{w.previewUrl&&URL.revokeObjectURL(w.previewUrl)})},[]);let h=()=>{g(w=>(w.forEach(Y=>{Y.previewUrl&&URL.revokeObjectURL(Y.previewUrl)}),[]))},P=w=>{g(Y=>{let Dt=Y[w];return Dt?.previewUrl&&URL.revokeObjectURL(Dt.previewUrl),Y.filter((re,T)=>T!==w)})},E=(w,Y)=>{r?r({text:w,files:Y}):(w&&e?.(w),Y.length>0&&c?.(Y)),h(),u("")},O=()=>{if(a)return;let w=b.trim(),Y=x.map(Dt=>Dt.file);!w&&Y.length===0||E(w,Y)},R=w=>{w.key==="Enter"&&!w.shiftKey&&(w.preventDefault(),O())},q=w=>{let Y=w.target.files;if(!Y?.length||!k){w.target.value="";return}let Dt=Array.from(Y).map(re=>{let T=re.type.startsWith("image/");return{file:re,kind:T?"image":"file",previewUrl:T?URL.createObjectURL(re):void 0}});g(re=>[...re,...Dt]),w.target.value=""},B=n?.find(w=>w.id===s),K=b.trim(),F=x.length>0,J=!a&&(!!K||F);return(0,D.jsxs)("div",{className:o("flex h-full flex-col bg-[var(--inkblot-semantic-color-background-primary)]",p),children:[t.length===0?(0,D.jsx)("div",{className:"flex flex-1 items-center justify-center",children:(0,D.jsx)("p",{className:"[font:var(--inkblot-semantic-typography-body-default)] text-[var(--inkblot-semantic-color-text-tertiary)]",children:m})}):(0,D.jsx)("div",{ref:S,className:"flex-1 overflow-y-auto",children:(0,D.jsx)("div",{className:"mx-auto flex max-w-3xl flex-col gap-[var(--inkblot-spacing-4)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-6)]",children:t.map(w=>w.role==="user"?(0,D.jsx)("div",{className:"flex justify-end",children:(0,D.jsx)("div",{className:"max-w-[80%] rounded-[var(--inkblot-radius-xl)] bg-[var(--inkblot-semantic-color-interactive-primary)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)] [font:var(--inkblot-semantic-typography-body-default)] text-[var(--inkblot-semantic-color-text-inverse)]",children:w.renderedContent??w.content})},w.id):(0,D.jsxs)("div",{className:"flex items-start gap-[var(--inkblot-spacing-2)]",children:[(0,D.jsx)(Ht.Sparkles,{size:16,strokeWidth:1.7,className:"mt-[var(--inkblot-spacing-1)] shrink-0 text-[var(--inkblot-semantic-color-text-tertiary)]","aria-hidden":!0}),(0,D.jsx)("div",{className:"max-w-[90%] [font:var(--inkblot-semantic-typography-body-default)] text-[var(--inkblot-semantic-color-text-primary)]",children:w.renderedContent??w.content})]},w.id))})}),(0,D.jsx)("div",{className:"shrink-0 bg-[var(--inkblot-semantic-color-background-primary)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)]",children:(0,D.jsx)("div",{className:"mx-auto flex w-full max-w-3xl flex-col gap-[var(--inkblot-spacing-2)]",children:(0,D.jsxs)("div",{className:o("flex flex-col overflow-hidden rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] shadow-[var(--inkblot-shadow-sm)]",a&&"pointer-events-none"),"aria-busy":a,children:[(0,D.jsx)("input",{ref:N,type:"file",multiple:!0,onChange:q,className:"sr-only","aria-hidden":!0}),(0,D.jsx)("textarea",{value:b,onChange:w=>u(w.target.value),onKeyDown:R,placeholder:i,rows:3,disabled:a,className:o("min-h-[4.5rem] w-full resize-y border-0 bg-transparent px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-2)] [font:var(--inkblot-semantic-typography-body-default)] text-[var(--inkblot-semantic-color-text-primary)] placeholder:text-[var(--inkblot-semantic-color-text-tertiary)]","focus:outline-none focus:ring-0","disabled:cursor-not-allowed disabled:opacity-50")}),(0,D.jsxs)("div",{className:o("flex items-center gap-[var(--inkblot-spacing-2)] px-[var(--inkblot-spacing-2)] pb-[var(--inkblot-spacing-2)] pt-[var(--inkblot-spacing-1)]",n&&n.length>0?"justify-between":"justify-end"),children:[n&&n.length>0&&(0,D.jsxs)("div",{ref:y,className:"relative min-w-0",children:[(0,D.jsxs)("button",{type:"button",onClick:()=>C(w=>!w),className:o("flex max-w-full items-center gap-[var(--inkblot-spacing-1)] rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-2)] py-[var(--inkblot-spacing-1)] [font:var(--inkblot-semantic-typography-body-small)] text-[var(--inkblot-semantic-color-text-secondary)] transition-colors duration-[var(--inkblot-duration-fast)]","hover:bg-[var(--inkblot-semantic-color-background-tertiary)] hover:text-[var(--inkblot-semantic-color-text-primary)]"),children:[(0,D.jsx)(Ht.Sparkles,{size:14,strokeWidth:1.7,"aria-hidden":!0}),(0,D.jsx)("span",{className:"truncate",children:B?.label??"Select agent"}),(0,D.jsx)(Ht.ChevronDown,{size:14,strokeWidth:1.7,className:o("shrink-0 transition-transform duration-[var(--inkblot-duration-fast)]",f&&"rotate-180"),"aria-hidden":!0})]}),f&&(0,D.jsx)("div",{className:"absolute bottom-full left-0 z-10 mb-[var(--inkblot-spacing-1)] min-w-[12rem] rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] p-[var(--inkblot-spacing-1)] shadow-[var(--inkblot-shadow-sm)]",children:n.map(w=>(0,D.jsxs)("button",{type:"button",onClick:()=>{l?.(w.id),C(!1)},className:o("flex w-full flex-col gap-0.5 rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-2)] text-left transition-colors duration-[var(--inkblot-duration-fast)]",w.id===s?"bg-[var(--inkblot-semantic-color-background-tertiary)] text-[var(--inkblot-semantic-color-text-primary)]":"text-[var(--inkblot-semantic-color-text-secondary)] hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)]"),children:[(0,D.jsx)("span",{className:"[font:var(--inkblot-semantic-typography-body-small)]",children:w.label}),w.description&&(0,D.jsx)("span",{className:"[font:var(--inkblot-semantic-typography-body-small)] text-[var(--inkblot-semantic-color-text-tertiary)]",children:w.description})]},w.id))})]}),(0,D.jsxs)("div",{className:"flex shrink-0 items-center gap-[var(--inkblot-spacing-2)]",children:[(0,D.jsx)("button",{type:"button",onClick:()=>N.current?.click(),disabled:a||!k,className:o("flex h-9 w-9 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-full)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] text-[var(--inkblot-semantic-color-text-tertiary)] transition-[background,border-color,color] duration-[var(--inkblot-duration-fast)]","hover:bg-[var(--inkblot-semantic-color-background-tertiary)] hover:text-[var(--inkblot-semantic-color-text-secondary)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-secondary)]","disabled:pointer-events-none disabled:opacity-50"),"aria-label":"Attach files",children:(0,D.jsx)(Ht.Paperclip,{size:18,strokeWidth:1.7,"aria-hidden":!0})}),(0,D.jsx)("button",{type:"button",onClick:()=>d?.(),disabled:a,className:o("flex h-9 w-9 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-full)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] text-[var(--inkblot-semantic-color-text-tertiary)] transition-[background,border-color,color] duration-[var(--inkblot-duration-fast)]","hover:bg-[var(--inkblot-semantic-color-background-tertiary)] hover:text-[var(--inkblot-semantic-color-text-secondary)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-secondary)]","disabled:pointer-events-none disabled:opacity-50"),"aria-label":"Voice input",children:(0,D.jsx)(Ht.Mic,{size:18,strokeWidth:1.7,"aria-hidden":!0})}),(0,D.jsx)("div",{className:"flex h-8 w-8 shrink-0 items-center justify-center",children:a?(0,D.jsx)("div",{className:"flex h-full w-full items-center justify-center rounded-[var(--inkblot-radius-full)] bg-[var(--inkblot-semantic-color-interactive-primary)]",children:(0,D.jsx)(Ht.Loader2,{size:16,strokeWidth:2,className:"animate-spin text-[var(--inkblot-semantic-color-text-inverse)]","aria-hidden":!0})}):(0,D.jsx)("button",{type:"button",onClick:O,disabled:!J,className:o("flex h-full w-full items-center justify-center rounded-[var(--inkblot-radius-full)] bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)] transition-[background,box-shadow] duration-[var(--inkblot-duration-fast)]","hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-secondary)]","disabled:pointer-events-none disabled:opacity-40"),"aria-label":"Send",children:(0,D.jsx)(Ht.Send,{size:16,strokeWidth:2,"aria-hidden":!0})})})]})]}),(0,D.jsx)(io,{attachments:x,onRemove:P})]})})})]})}var lo=require("lucide-react");var Ze=require("react/jsx-runtime"),pl={primary:["bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]","hover:bg-[var(--inkblot-semantic-color-interactive-primary-hover)] active:bg-[var(--inkblot-semantic-color-interactive-primary-active)]"],secondary:["bg-[var(--inkblot-semantic-color-interactive-secondary)] text-[var(--inkblot-semantic-color-text-primary)]","border border-[var(--inkblot-semantic-color-border-default)]","hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] hover:border-[var(--inkblot-semantic-color-border-strong)]","active:bg-[var(--inkblot-semantic-color-background-tertiary)]"]};function co({buttons:t,className:e}){return(0,Ze.jsx)("div",{className:o("flex flex-wrap items-center gap-[var(--inkblot-spacing-3)]",e),children:t.map(r=>(0,Ze.jsxs)("button",{type:"button",onClick:()=>{r.onClick?.()},disabled:r.disabled,className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center gap-2 rounded-[var(--inkblot-radius-lg)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","[font:var(--inkblot-semantic-typography-body-medium)] font-medium","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-primary)]","transition-colors duration-[var(--inkblot-duration-fast)]","disabled:opacity-[var(--inkblot-opacity-disabled)] disabled:pointer-events-none disabled:cursor-not-allowed",pl[r.variant]),children:[r.icon??null,r.label]},r.id))})}function Pr({onSendNow:t,onSchedule:e,onSaveDraft:r,className:a}){return(0,Ze.jsx)(co,{buttons:[{id:"send",label:"Send Now",variant:"primary",icon:(0,Ze.jsx)(lo.Send,{className:"h-4 w-4"}),onClick:t},{id:"schedule",label:"Schedule",variant:"secondary",icon:(0,Ze.jsx)(lo.Calendar,{className:"h-4 w-4"}),onClick:e},{id:"draft",label:"Save Draft",variant:"secondary",onClick:r}],className:a})}var Pn=require("react"),mo=require("lucide-react");var Zt=require("react/jsx-runtime"),pr=(0,Pn.forwardRef)(({label:t,loading:e=!1,onWriteWithAI:r,disabled:a,className:i,...n},s)=>{let l=a||e;return(0,Zt.jsxs)("div",{className:o("flex flex-col gap-[var(--inkblot-spacing-2)]",i),children:[(0,Zt.jsxs)("div",{className:"flex items-center justify-between",children:[t?(0,Zt.jsx)("label",{htmlFor:n.id,className:o("uppercase tracking-wider","[font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-primary)]"),children:t}):(0,Zt.jsx)("span",{}),r?(0,Zt.jsxs)("button",{type:"button",onClick:r,disabled:e,className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center gap-2 rounded-[var(--inkblot-radius-lg)]","border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-interactive-secondary)]","px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","[font:var(--inkblot-semantic-typography-body-medium)] font-medium","text-[var(--inkblot-semantic-color-text-primary)]","hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] hover:border-[var(--inkblot-semantic-color-border-strong)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-primary)]","transition-colors duration-[var(--inkblot-duration-fast)]","disabled:opacity-[var(--inkblot-opacity-disabled)] disabled:cursor-not-allowed disabled:pointer-events-none"),children:[e?(0,Zt.jsx)(mo.Loader2,{className:"h-4 w-4 shrink-0 animate-spin"}):(0,Zt.jsx)(mo.Sparkles,{className:"h-4 w-4 shrink-0",style:{color:"var(--inkblot-semantic-color-status-warning)"}}),e?"Generating...":"Write with AI"]}):null]}),(0,Zt.jsx)("div",{className:"relative",children:(0,Zt.jsx)("textarea",{ref:s,disabled:l,className:o("min-h-[12rem] w-full rounded-[var(--inkblot-radius-lg)]","border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-secondary)]","px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)]","[font:var(--inkblot-semantic-typography-body-medium)]","text-[var(--inkblot-semantic-color-text-primary)] placeholder:text-[var(--inkblot-semantic-color-text-tertiary)]","transition-colors duration-[var(--inkblot-duration-fast)]","hover:border-[var(--inkblot-semantic-color-border-strong)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-primary)]","disabled:opacity-[var(--inkblot-opacity-disabled)] disabled:cursor-not-allowed disabled:pointer-events-none"),...n})})]})});pr.displayName="AIComposeInput";var Sn=require("react");var Mn=require("react/jsx-runtime"),bl={primary:"border border-transparent bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)] shadow-[var(--inkblot-shadow-sm)] hover:bg-[var(--inkblot-semantic-color-interactive-primary-hover)] active:bg-[var(--inkblot-semantic-color-interactive-primary-active)]",secondary:"border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] text-[var(--inkblot-semantic-color-text-primary)] hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] hover:border-[var(--inkblot-semantic-color-border-strong)] active:bg-[var(--inkblot-semantic-color-background-tertiary)]"},br=(0,Sn.forwardRef)(({className:t,variant:e="primary",disabled:r,...a},i)=>(0,Mn.jsx)("button",{ref:i,disabled:r,className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center rounded-[var(--inkblot-radius-lg)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)] [font:var(--inkblot-semantic-typography-body-medium)] font-semibold transition-[background,border-color,box-shadow,color] duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--inkblot-semantic-color-border-focus)] focus-visible:ring-offset-2 focus-visible:ring-offset-[var(--inkblot-semantic-color-background-primary)] disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-[var(--inkblot-opacity-disabled)]",bl[e],t),...a}));br.displayName="Button";var Sr=require("react"),Tt=require("lucide-react");var W=require("react/jsx-runtime"),ul={sent:{icon:Tt.CheckCircle,label:"Sent",colorClass:"text-[var(--inkblot-semantic-color-status-success)]"},active:{icon:Tt.Zap,label:"Active",colorClass:"text-[var(--inkblot-semantic-color-status-warning)]"},draft:{icon:Tt.FileText,label:"Draft",colorClass:"text-[var(--inkblot-semantic-color-text-secondary)]"},scheduled:{icon:Tt.Clock,label:"Scheduled",colorClass:"text-[var(--inkblot-semantic-color-status-info)]"}};function Mr({columns:t,rows:e,sortKey:r,sortDirection:a,defaultSortKey:i,defaultSortDirection:n="asc",onSortChange:s,sortableColumns:l,emptyTitle:c="No campaigns found",emptyDescription:d="Create a campaign or adjust filters to see results.",className:m}){let[p,b]=(0,Sr.useState)(i),[u,f]=(0,Sr.useState)(n),C=r!==void 0&&a!==void 0,x=C?r:p,g=C?a:u,S=v=>!l||l.length===0?!0:l.includes(v),N=(v,h)=>{if(h==="campaign")return v.campaignName.toLowerCase();if(h==="status")return v.status;if(h==="opens")return Number.parseFloat(v.opens.replace("%","").trim())||0;if(h==="clicks")return Number.parseFloat(v.clicks.replace("%","").trim())||0;if(h==="date")return new Date(v.date).getTime()||0;let P=v[h];return typeof P=="number"?P:String(P??"").toLowerCase()},y=(0,Sr.useMemo)(()=>x?[...e].sort((h,P)=>{let E=N(h,x),O=N(P,x);return E<O?g==="asc"?-1:1:E>O?g==="asc"?1:-1:0}):e,[g,x,e]),k=v=>{let h=x===v&&g==="asc"?"desc":"asc";C||(b(v),f(h)),s?.(v,h)};return(0,W.jsx)("div",{className:o("overflow-x-auto rounded-[var(--inkblot-radius-lg)]","border border-[var(--inkblot-semantic-color-border-subtle)]","bg-[var(--inkblot-semantic-color-background-primary)]",m),children:(0,W.jsxs)("table",{className:"w-full min-w-[600px] border-collapse",children:[(0,W.jsx)("thead",{children:(0,W.jsx)("tr",{className:"bg-[var(--inkblot-semantic-color-background-secondary)]",children:t.map(v=>(0,W.jsx)("th",{className:o("px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)] text-left","uppercase tracking-wider","[font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-secondary)]","border-b border-[var(--inkblot-semantic-color-border-subtle)]"),children:S(v.key)?(0,W.jsxs)("button",{type:"button",onClick:()=>k(v.key),className:"inline-flex items-center gap-[var(--inkblot-spacing-1)] rounded-[var(--inkblot-radius-sm)] transition-colors duration-[var(--inkblot-duration-fast)] hover:text-[var(--inkblot-semantic-color-text-primary)]",children:[v.label,x!==v.key?(0,W.jsx)(Tt.ArrowUpDown,{className:"h-3.5 w-3.5","aria-hidden":!0}):g==="asc"?(0,W.jsx)(Tt.ArrowUp,{className:"h-3.5 w-3.5","aria-hidden":!0}):(0,W.jsx)(Tt.ArrowDown,{className:"h-3.5 w-3.5","aria-hidden":!0})]}):v.label},v.key))})}),(0,W.jsx)("tbody",{children:y.length===0?(0,W.jsx)("tr",{children:(0,W.jsx)("td",{colSpan:t.length,className:"px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-10)] text-center",children:(0,W.jsxs)("div",{className:"mx-auto flex max-w-[420px] flex-col gap-[var(--inkblot-spacing-1)]",children:[(0,W.jsx)("span",{className:"[font:var(--inkblot-semantic-typography-body-large-bold)] text-[var(--inkblot-semantic-color-text-primary)]",children:c}),(0,W.jsx)("span",{className:"[font:var(--inkblot-semantic-typography-body-small)] text-[var(--inkblot-semantic-color-text-secondary)]",children:d})]})})}):y.map(v=>(0,W.jsxs)("tr",{className:o("border-b border-[var(--inkblot-semantic-color-border-subtle)] last:border-b-0","transition-colors duration-[var(--inkblot-duration-fast)]","hover:bg-[var(--inkblot-semantic-color-background-secondary)]/50"),children:[(0,W.jsx)("td",{className:o("px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)]","border-b border-[var(--inkblot-semantic-color-border-subtle)]"),children:(0,W.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,W.jsx)("span",{className:o("[font:var(--inkblot-semantic-typography-body-large-bold)]","text-[var(--inkblot-semantic-color-text-primary)]"),children:v.campaignName}),(0,W.jsx)("span",{className:o("[font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-secondary)]"),children:v.recipients})]})}),(0,W.jsx)("td",{className:o("px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)]","border-b border-[var(--inkblot-semantic-color-border-subtle)]"),children:(0,W.jsx)(vl,{status:v.status,subtext:v.statusSubtext})}),(0,W.jsx)("td",{className:o("px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)]","[font:var(--inkblot-semantic-typography-body-medium)]","text-[var(--inkblot-semantic-color-text-primary)]","border-b border-[var(--inkblot-semantic-color-border-subtle)]"),children:v.opens}),(0,W.jsx)("td",{className:o("px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)]","[font:var(--inkblot-semantic-typography-body-medium)]","text-[var(--inkblot-semantic-color-text-primary)]","border-b border-[var(--inkblot-semantic-color-border-subtle)]"),children:v.clicks}),(0,W.jsx)("td",{className:o("px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)]","[font:var(--inkblot-semantic-typography-body-medium)]","text-[var(--inkblot-semantic-color-text-primary)]","border-b border-[var(--inkblot-semantic-color-border-subtle)]"),children:v.date})]},v.id))})]})})}function vl({status:t,subtext:e}){let r=ul[t],a=r.icon;return(0,W.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,W.jsxs)("div",{className:o("inline-flex items-center gap-1.5","[font:var(--inkblot-semantic-typography-body-small)] font-medium",r.colorClass),children:[(0,W.jsx)(a,{className:"h-4 w-4 shrink-0"}),r.label]}),e?(0,W.jsx)("span",{className:o("[font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-secondary)]"),children:e}):null]})}var In=require("lucide-react");var En=require("lucide-react");var ue=require("react/jsx-runtime");function Er({category:t,title:e,uses:r,onClick:a,className:i}){return(0,ue.jsxs)("button",{type:"button",onClick:a,className:o("flex flex-col gap-[var(--inkblot-spacing-4)] rounded-[var(--inkblot-radius-lg)]","bg-[var(--inkblot-semantic-color-background-secondary)]","border border-[var(--inkblot-semantic-color-border-subtle)]","px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-5)]","text-left transition-colors duration-[var(--inkblot-duration-fast)]","hover:border-[var(--inkblot-semantic-color-border-default)] hover:bg-[var(--inkblot-semantic-color-background-tertiary)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-primary)]",i),children:[(0,ue.jsxs)("div",{className:"flex items-start justify-between gap-2",children:[(0,ue.jsx)("span",{className:o("rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-2)] py-[var(--inkblot-spacing-1)]","bg-[var(--inkblot-semantic-color-background-tertiary)]","[font:var(--inkblot-semantic-typography-body-small)] font-medium","text-[var(--inkblot-semantic-color-text-primary)]"),children:t}),(0,ue.jsx)("span",{className:o("[font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-secondary)]"),children:r})]}),(0,ue.jsx)("h3",{className:o("[font:var(--inkblot-semantic-typography-body-large-bold)]","text-[var(--inkblot-semantic-color-text-primary)]"),children:e}),(0,ue.jsx)("div",{className:"flex flex-1 items-end justify-center pt-[var(--inkblot-spacing-4)]",children:(0,ue.jsx)(En.File,{className:o("h-10 w-10","text-[var(--inkblot-semantic-color-text-tertiary)]")})})]})}var ve=require("react/jsx-runtime");function Ir({title:t="EMAIL TEMPLATES",onGenerateWithAI:e,templates:r,onTemplateClick:a,className:i}){return(0,ve.jsxs)("section",{className:o("flex flex-col gap-[var(--inkblot-spacing-6)] rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-5)] shadow-[var(--inkblot-shadow-sm)]",i),children:[(0,ve.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-4)] sm:flex-row sm:items-center sm:justify-between",children:[(0,ve.jsx)("h2",{className:o("uppercase tracking-wider","[font:var(--inkblot-semantic-typography-body-medium)]","text-[var(--inkblot-semantic-color-text-secondary)]"),children:t}),e?(0,ve.jsxs)("button",{type:"button",onClick:e,className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] w-fit items-center justify-center gap-2 rounded-[var(--inkblot-radius-lg)]","border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-primary)]","px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","[font:var(--inkblot-semantic-typography-body-medium)] font-medium","text-[var(--inkblot-semantic-color-text-primary)]","hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] hover:border-[var(--inkblot-semantic-color-border-strong)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-primary)]","transition-colors duration-[var(--inkblot-duration-fast)]"),children:[(0,ve.jsx)(In.Sparkles,{className:"h-4 w-4 shrink-0",style:{color:"var(--inkblot-semantic-color-status-warning)"}}),"Generate with AI"]}):null]}),(0,ve.jsx)("div",{className:"grid grid-cols-1 gap-[var(--inkblot-spacing-6)] sm:grid-cols-2",children:r.map(n=>(0,ve.jsx)(Er,{category:n.category,title:n.title,uses:n.uses,onClick:()=>a?.(n)},n.id))})]})}var _t=require("lucide-react"),I=require("react/jsx-runtime"),fl={Person:"border-l-[var(--inkblot-semantic-color-status-info)]",Organization:"border-l-[var(--inkblot-semantic-color-status-warning)]",Deal:"border-l-[var(--inkblot-semantic-color-status-success)]"},gl={Person:_t.UserRound,Organization:_t.Building2,Deal:_t.BadgeCheck},kl={Person:"bg-[var(--inkblot-semantic-color-status-info)]/15 text-[var(--inkblot-semantic-color-status-info)]",Organization:"bg-[var(--inkblot-semantic-color-status-warning)]/15 text-[var(--inkblot-semantic-color-status-warning)]",Deal:"bg-[var(--inkblot-semantic-color-status-success)]/15 text-[var(--inkblot-semantic-color-status-success)]"},yl=[{label:"Contacts",value:"12",icon:_t.Users},{label:"Open Deals",value:"3",icon:_t.TrendingUp},{label:"Touchpoints",value:"47",icon:_t.ArrowUpRight}];function Yo({name:t,entityType:e,subtitle:r,statusLabel:a,metadata:i,edges:n=[],stats:s,connections:l,className:c}){let d=gl[e];if(s!==void 0||l!==void 0){let p=s??yl;return(0,I.jsxs)("article",{className:o("glass flex flex-col gap-[var(--inkblot-spacing-4)] rounded-[var(--inkblot-radius-xl)] p-[var(--inkblot-spacing-5)]",c),children:[(0,I.jsxs)("div",{className:"flex items-start justify-between",children:[(0,I.jsxs)("div",{className:"flex items-center gap-[var(--inkblot-spacing-3)]",children:[(0,I.jsx)("div",{className:"flex h-10 w-10 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-lg)] bg-[var(--inkblot-semantic-color-interactive-primary)]/10",children:(0,I.jsx)(d,{className:"h-5 w-5 text-[var(--inkblot-semantic-color-interactive-primary)]","aria-hidden":!0})}),(0,I.jsxs)("div",{children:[(0,I.jsx)("h3",{className:"text-sm font-semibold text-[var(--inkblot-semantic-color-text-primary)]",children:t}),r?(0,I.jsx)("p",{className:"text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:r}):null]})]}),a?(0,I.jsx)("span",{className:"rounded-[var(--inkblot-radius-sm)] bg-[var(--inkblot-semantic-color-interactive-primary)]/10 px-2 py-0.5 font-mono text-xs text-[var(--inkblot-semantic-color-interactive-primary)]",children:a}):null]}),(0,I.jsx)("div",{className:"grid grid-cols-3 gap-[var(--inkblot-spacing-3)]",children:p.map(b=>{let u=b.icon;return(0,I.jsxs)("div",{className:"rounded-[var(--inkblot-radius-md)] bg-[var(--inkblot-semantic-color-background-tertiary)] p-[var(--inkblot-spacing-3)]",children:[(0,I.jsxs)("div",{className:"mb-1 flex items-center gap-1.5",children:[u?(0,I.jsx)(u,{className:"h-3 w-3 text-[var(--inkblot-semantic-color-text-tertiary)]","aria-hidden":!0}):null,(0,I.jsx)("span",{className:"text-[10px] uppercase tracking-wider text-[var(--inkblot-semantic-color-text-tertiary)]",children:b.label})]}),(0,I.jsx)("span",{className:"text-lg font-semibold text-[var(--inkblot-semantic-color-text-primary)]",children:b.value})]},b.label)})}),l?(0,I.jsxs)("div",{className:"flex items-center gap-2 text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:[(0,I.jsx)("span",{className:"h-1.5 w-1.5 rounded-full bg-[var(--inkblot-semantic-color-interactive-primary)]"}),l]}):null]})}return(0,I.jsxs)("article",{className:o("flex flex-col gap-[var(--inkblot-spacing-4)] rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)] border-l-4 bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-4)] shadow-[var(--inkblot-shadow-sm)]",fl[e],c),children:[(0,I.jsxs)("div",{className:"flex items-start justify-between gap-[var(--inkblot-spacing-3)]",children:[(0,I.jsxs)("div",{className:"flex items-center gap-[var(--inkblot-spacing-3)]",children:[(0,I.jsx)("div",{className:"flex h-10 w-10 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] text-[var(--inkblot-semantic-color-text-secondary)]",children:(0,I.jsx)(d,{className:"h-5 w-5","aria-hidden":!0})}),(0,I.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-1)]",children:[(0,I.jsx)("h3",{className:"[font:var(--inkblot-semantic-typography-body-medium)] font-semibold text-[var(--inkblot-semantic-color-text-primary)]",children:t}),r?(0,I.jsx)("p",{className:"text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:r}):(0,I.jsx)("span",{className:o("inline-flex w-fit items-center rounded-[var(--inkblot-radius-full)] px-[var(--inkblot-spacing-2)] py-[var(--inkblot-spacing-1)] [font:var(--inkblot-semantic-typography-body-small)] font-medium uppercase tracking-wide",kl[e]),children:e})]})]}),a?(0,I.jsx)("span",{className:"rounded-[var(--inkblot-radius-sm)] bg-[var(--inkblot-semantic-color-interactive-primary)]/10 px-2 py-0.5 font-mono text-xs text-[var(--inkblot-semantic-color-interactive-primary)]",children:a}):null]}),i&&Object.keys(i).length>0?(0,I.jsx)("dl",{className:"grid grid-cols-1 gap-[var(--inkblot-spacing-2)] sm:grid-cols-2",children:Object.entries(i).map(([p,b])=>(0,I.jsxs)("div",{className:"rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-2)]",children:[(0,I.jsx)("dt",{className:"[font:var(--inkblot-semantic-typography-body-small)] uppercase tracking-wide text-[var(--inkblot-semantic-color-text-tertiary)]",children:p}),(0,I.jsx)("dd",{className:"[font:var(--inkblot-semantic-typography-body-medium)] text-[var(--inkblot-semantic-color-text-secondary)]",children:b})]},p))}):null,n.length>0?(0,I.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-2)]",children:[(0,I.jsx)("h4",{className:"[font:var(--inkblot-semantic-typography-body-small)] font-medium uppercase tracking-wide text-[var(--inkblot-semantic-color-text-secondary)]",children:"Edges"}),(0,I.jsx)("ul",{className:"flex flex-wrap gap-[var(--inkblot-spacing-2)]",children:n.map((p,b)=>(0,I.jsxs)("li",{className:"rounded-[var(--inkblot-radius-full)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-1)] [font:var(--inkblot-semantic-typography-body-small)] text-[var(--inkblot-semantic-color-text-secondary)]",children:[p.type,p.target?` \u2192 ${p.target}`:""]},b))})]}):null,l?(0,I.jsxs)("div",{className:"flex items-center gap-2 text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:[(0,I.jsx)("span",{className:"h-1.5 w-1.5 rounded-full bg-[var(--inkblot-semantic-color-interactive-primary)]"}),l]}):null]})}var Ln=require("react");var An=require("react/jsx-runtime"),Me=(0,Ln.forwardRef)(({className:t,error:e,disabled:r,...a},i)=>(0,An.jsx)("input",{ref:i,disabled:r,"aria-invalid":e,"aria-disabled":r,className:o("min-h-[var(--inkblot-size-touch-target-min)] w-full rounded-[var(--inkblot-radius-lg)] border bg-[var(--inkblot-semantic-color-background-secondary)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)] [font:var(--inkblot-semantic-typography-body-medium)] text-[var(--inkblot-semantic-color-text-primary)] shadow-[var(--inkblot-shadow-xs)] placeholder:text-[var(--inkblot-semantic-color-text-tertiary)] transition-[background,border-color,box-shadow] duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--inkblot-semantic-color-border-focus)] focus-visible:ring-offset-2 focus-visible:ring-offset-[var(--inkblot-semantic-color-background-primary)] disabled:pointer-events-none disabled:cursor-not-allowed disabled:opacity-[var(--inkblot-opacity-disabled)]",e?"border-[var(--inkblot-semantic-color-status-error)] focus-visible:ring-[var(--inkblot-semantic-color-status-error)]":"border-[var(--inkblot-semantic-color-border-default)] hover:border-[var(--inkblot-semantic-color-border-strong)] hover:bg-[var(--inkblot-semantic-color-background-primary)]",t),...a}));Me.displayName="Input";var Dn=require("react");var ur=require("react/jsx-runtime"),U=class extends Dn.Component{constructor(e){super(e),this.state={hasError:!1,error:null}}static getDerivedStateFromError(e){return{hasError:!0,error:e}}render(){return this.state.hasError&&this.state.error?(0,ur.jsxs)("div",{role:"alert",className:o("flex flex-col gap-4 rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-4",this.props.className),children:[(0,ur.jsx)("p",{className:"text-base font-semibold text-[var(--inkblot-semantic-color-text-primary)]",children:"This module failed to load"}),(0,ur.jsx)("p",{className:"text-sm text-[var(--inkblot-semantic-color-text-tertiary)]",children:this.state.error.message}),(0,ur.jsx)(br,{variant:"secondary",onClick:this.props.onRetry,className:"w-fit border-[var(--inkblot-semantic-color-status-error)]",children:"Retry"})]}):this.props.children}};var Pt=require("react/jsx-runtime");function Xo({title:t,insights:e,stats:r=[],commandValue:a="",onCommandChange:i,onCommandSubmit:n,className:s}){let l=c=>{c.key==="Enter"&&(c.preventDefault(),n?.())};return(0,Pt.jsx)(U,{className:s,children:(0,Pt.jsxs)("div",{className:"flex flex-col gap-4 rounded-[var(--inkblot-radius-xl)] bg-[var(--inkblot-semantic-color-background-secondary)] p-4",children:[(0,Pt.jsx)("h2",{className:"text-xl font-semibold text-[var(--inkblot-semantic-color-text-primary)]",children:t}),e?(0,Pt.jsx)("div",{className:"rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-interactive-primary)] p-4",style:{boxShadow:"0 0 12px var(--inkblot-semantic-color-interactive-primary)"},children:e}):null,r.length>0?(0,Pt.jsxs)("div",{children:[(0,Pt.jsx)("h3",{className:"mb-2 text-sm font-medium text-[var(--inkblot-semantic-color-text-secondary)]",children:"Connected To"}),(0,Pt.jsx)("div",{className:"grid grid-cols-2 gap-2 sm:grid-cols-3",children:r.map((c,d)=>(0,Pt.jsxs)("div",{className:"rounded-[var(--inkblot-radius-md)] bg-[var(--inkblot-semantic-color-background-tertiary)] px-3 py-2",children:[(0,Pt.jsx)("span",{className:"text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:c.label}),(0,Pt.jsx)("p",{className:"text-sm font-medium text-[var(--inkblot-semantic-color-text-primary)]",children:c.value})]},d))})]}):null,(0,Pt.jsx)("div",{className:"mt-2",children:(0,Pt.jsx)(Me,{type:"text",value:a,onChange:c=>i?.(c.target.value),onKeyDown:l,placeholder:"Ask about this entity...",className:"rounded-[var(--inkblot-radius-md)]"})})]})})}var Rn=require("react");var Zo=require("react/jsx-runtime"),Lr=class extends Rn.Component{constructor(e){super(e),this.state={hasError:!1,error:null}}static getDerivedStateFromError(e){return{hasError:!0,error:e}}render(){return this.state.hasError&&this.state.error?this.props.fallback?this.props.fallback:(0,Zo.jsx)("div",{className:o("inline-flex items-center gap-3 rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-tertiary)] px-4 py-3 text-[var(--inkblot-semantic-color-text-secondary)]",this.props.className),role:"alert",children:(0,Zo.jsx)("span",{className:"text-sm font-medium",children:"Something went wrong"})}):this.props.children}};var Hn=require("react/jsx-runtime"),xl={success:"border-[var(--inkblot-semantic-color-status-success)] bg-[var(--inkblot-semantic-color-status-success)]/10 text-[var(--inkblot-semantic-color-status-success)]",warning:"border-[var(--inkblot-semantic-color-status-warning)] bg-[var(--inkblot-semantic-color-status-warning)]/10 text-[var(--inkblot-semantic-color-status-warning)]",error:"border-[var(--inkblot-semantic-color-status-error)] bg-[var(--inkblot-semantic-color-status-error)]/10 text-[var(--inkblot-semantic-color-status-error)]",info:"border-[var(--inkblot-semantic-color-status-info)] bg-[var(--inkblot-semantic-color-status-info)]/10 text-[var(--inkblot-semantic-color-status-info)]"};function Ar({label:t,variant:e="info",className:r}){return(0,Hn.jsx)("span",{className:o("inline-flex items-center rounded-[var(--inkblot-radius-md)] border px-2 py-0.5 text-xs font-medium",xl[e],r),children:t})}var fe=require("react/jsx-runtime");function hl(t){return t>=.8?"success":t>=.5?"info":t>=.2?"warning":"error"}function Qo({event:t,className:e}){let r=hl(t.confidence_score),a=`${Math.round(t.confidence_score*100)}%`;return(0,fe.jsxs)("div",{className:o("flex flex-wrap items-center gap-2 rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-4",e),children:[(0,fe.jsx)("span",{className:"text-sm font-medium text-[var(--inkblot-semantic-color-text-primary)]",children:t.actor}),(0,fe.jsx)("span",{className:"text-sm text-[var(--inkblot-semantic-color-text-tertiary)]",children:"\u2192"}),(0,fe.jsx)("span",{className:"text-sm text-[var(--inkblot-semantic-color-text-secondary)]",children:t.subject}),(0,fe.jsx)("span",{className:"rounded-[var(--inkblot-radius-md)] bg-[var(--inkblot-semantic-color-background-tertiary)] px-2 py-0.5 text-xs text-[var(--inkblot-semantic-color-text-secondary)]",children:t.event_type}),(0,fe.jsx)("span",{className:"text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:t.timestamp}),(0,fe.jsx)(Ar,{label:a,variant:r})]})}var Bn=require("lucide-react");var jt=require("react/jsx-runtime"),Nl={success:"bg-[var(--inkblot-semantic-color-status-success)]",warning:"bg-[var(--inkblot-semantic-color-status-warning)]",error:"bg-[var(--inkblot-semantic-color-status-error)]",info:"bg-[var(--inkblot-semantic-color-status-info)]"};function wl(){return(0,jt.jsx)(Bn.Clock3,{className:"h-4 w-4 text-[var(--inkblot-semantic-color-text-tertiary)]","aria-hidden":!0})}function Jo({events:t,className:e}){return(0,jt.jsx)(U,{className:e,children:(0,jt.jsx)("div",{className:o("flex flex-col gap-[var(--inkblot-spacing-3)] rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-4)] shadow-[var(--inkblot-shadow-sm)]"),children:t.map(r=>(0,jt.jsxs)("div",{className:"flex items-start gap-[var(--inkblot-spacing-3)] rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)]/60 bg-[var(--inkblot-semantic-color-background-primary)] px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-2)]",children:[(0,jt.jsx)("div",{className:"mt-[var(--inkblot-spacing-1)] flex h-7 w-7 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)]",children:r.icon??(0,jt.jsx)(wl,{})}),(0,jt.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,jt.jsx)("p",{className:"[font:var(--inkblot-semantic-typography-body-medium)] font-medium text-[var(--inkblot-semantic-color-text-primary)]",children:r.title}),(0,jt.jsx)("p",{className:"[font:var(--inkblot-semantic-typography-body-small)] text-[var(--inkblot-semantic-color-text-tertiary)]",children:r.timestamp})]}),r.status?(0,jt.jsx)("div",{className:o("mt-[var(--inkblot-spacing-2)] h-2 w-2 shrink-0 rounded-[var(--inkblot-radius-full)]",Nl[r.status]),"aria-hidden":!0}):null]},r.id))})})}var po=require("lucide-react"),xt=require("react/jsx-runtime"),ea=36,ta=2*Math.PI*ea;function Dr({label:t,value:e,subtext:r,trend:a,className:i}){let n=Math.min(100,Math.max(0,e)),s=ta-n/100*ta;return(0,xt.jsx)(U,{className:i,children:(0,xt.jsxs)("div",{className:"flex flex-col items-center gap-[var(--inkblot-spacing-4)] rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-4)] shadow-[var(--inkblot-shadow-sm)]",children:[(0,xt.jsxs)("div",{className:"relative",children:[(0,xt.jsxs)("svg",{width:"96",height:"96",viewBox:"0 0 96 96",className:"-rotate-90",children:[(0,xt.jsx)("circle",{cx:"48",cy:"48",r:ea,fill:"none",stroke:"var(--inkblot-semantic-color-background-tertiary)",strokeWidth:"4"}),(0,xt.jsx)("circle",{cx:"48",cy:"48",r:ea,fill:"none",stroke:"var(--inkblot-semantic-color-interactive-primary)",strokeWidth:"4",strokeDasharray:ta,strokeDashoffset:s,strokeLinecap:"round",className:"transition-[stroke-dashoffset] duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)]"})]}),(0,xt.jsx)("div",{className:"absolute inset-0 flex flex-col items-center justify-center",children:(0,xt.jsxs)("span",{className:"flex items-center gap-[var(--inkblot-spacing-1)] [font:var(--inkblot-semantic-typography-heading-small)] font-semibold text-[var(--inkblot-semantic-color-text-primary)]",children:[n,"%",a==="up"?(0,xt.jsx)(po.TrendingUp,{className:"h-4 w-4 text-[var(--inkblot-semantic-color-status-success)]","aria-hidden":!0}):a==="down"?(0,xt.jsx)(po.TrendingDown,{className:"h-4 w-4 text-[var(--inkblot-semantic-color-status-error)]","aria-hidden":!0}):null]})})]}),(0,xt.jsxs)("div",{className:"text-center",children:[(0,xt.jsx)("p",{className:"[font:var(--inkblot-semantic-typography-body-medium)] font-semibold text-[var(--inkblot-semantic-color-text-primary)]",children:t}),r?(0,xt.jsx)("p",{className:"[font:var(--inkblot-semantic-typography-body-small)] text-[var(--inkblot-semantic-color-text-tertiary)]",children:r}):null]})]})})}var ae=require("react/jsx-runtime"),Cl={default:"text-[var(--inkblot-semantic-color-text-primary)]",success:"text-[var(--inkblot-semantic-color-status-success)]",warning:"text-[var(--inkblot-semantic-color-status-warning)]",error:"text-[var(--inkblot-semantic-color-status-error)]"};function Tl({className:t}){return(0,ae.jsx)("svg",{viewBox:"0 0 16 16",className:o("h-4 w-4",t),"aria-hidden":!0,children:(0,ae.jsx)("path",{fill:"currentColor",d:"M6 4l4 4-4 4V4z"})})}function ra({items:t,className:e}){return(0,ae.jsx)(U,{className:e,children:(0,ae.jsx)("ul",{className:o("flex flex-col gap-4 py-2"),children:t.map((r,a)=>(0,ae.jsxs)("li",{className:"flex items-center justify-between gap-4",children:[(0,ae.jsx)("span",{className:"text-sm text-[var(--inkblot-semantic-color-text-secondary)]",children:r.label}),(0,ae.jsx)("span",{className:o("flex items-center gap-1 text-sm font-medium",Cl[r.variant??"default"]),children:r.value!=null?r.value:(0,ae.jsx)(Tl,{})})]},a))})})}var zn=require("react/jsx-runtime");function ge({className:t,...e}){return(0,zn.jsx)("div",{className:o("animate-shimmer rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)]/40 bg-[length:200%_100%] bg-[linear-gradient(90deg,var(--inkblot-semantic-color-background-secondary)_0%,var(--inkblot-semantic-color-background-tertiary)_50%,var(--inkblot-semantic-color-background-secondary)_100%)]",t),...e})}var Ee=require("react/jsx-runtime");function Rr({className:t,...e}){return(0,Ee.jsxs)("div",{className:o("flex flex-col gap-[var(--inkblot-spacing-3)] rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-4)] shadow-[var(--inkblot-shadow-sm)]",t),...e,children:[(0,Ee.jsx)(ge,{className:"h-8 w-3/5"}),(0,Ee.jsx)(ge,{className:"h-4 w-full"}),(0,Ee.jsx)(ge,{className:"h-4 w-11/12"}),(0,Ee.jsx)(ge,{className:"h-4 w-4/5"}),(0,Ee.jsx)(ge,{className:"h-4 w-2/3"})]})}var Ie=require("react/jsx-runtime");function Hr({children:t,loading:e=!1,title:r,className:a,onRetry:i}){return(0,Ie.jsx)(U,{className:a,onRetry:i,children:e?(0,Ie.jsxs)("div",{className:o("flex flex-col gap-4",a),children:[r?(0,Ie.jsx)("h2",{className:"text-lg font-semibold text-[var(--inkblot-semantic-color-text-primary)]",children:r}):null,(0,Ie.jsx)(Rr,{})]}):(0,Ie.jsxs)("div",{className:o("flex flex-col gap-4",a),children:[r?(0,Ie.jsx)("h2",{className:"text-lg font-semibold text-[var(--inkblot-semantic-color-text-primary)]",children:r}):null,t]})})}var On=require("lucide-react");var Qt=require("react/jsx-runtime");function Qe({title:t,subtitle:e,icon:r,action:a,className:i}){return(0,Qt.jsxs)("header",{className:o("flex flex-col gap-2 sm:flex-row sm:items-start sm:justify-between","pb-[var(--inkblot-spacing-2)]",i),children:[(0,Qt.jsxs)("div",{className:"flex items-start gap-[var(--inkblot-spacing-3)]",children:[r?(0,Qt.jsx)("div",{className:o("flex h-10 w-10 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-lg)]","bg-[var(--inkblot-semantic-color-background-secondary)]","[color:var(--inkblot-semantic-color-status-warning)]"),children:r}):null,(0,Qt.jsxs)("div",{className:"min-w-0",children:[(0,Qt.jsx)("h1",{className:o("text-[var(--inkblot-semantic-color-text-primary)]","[font:var(--inkblot-semantic-typography-heading-medium)]"),children:t}),e?(0,Qt.jsx)("p",{className:o("mt-0.5 text-[var(--inkblot-semantic-color-text-secondary)]","[font:var(--inkblot-semantic-typography-body-small)]"),children:e}):null]})]}),a?(0,Qt.jsx)("div",{className:"mt-[var(--inkblot-spacing-4)] shrink-0 sm:mt-0",children:a}):null]})}function Je({label:t,onClick:e,icon:r,className:a}){return(0,Qt.jsxs)("button",{type:"button",onClick:e,className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center gap-2 rounded-[var(--inkblot-radius-lg)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]","[font:var(--inkblot-semantic-typography-body-medium)] font-semibold","hover:bg-[var(--inkblot-semantic-color-interactive-primary-hover)] active:bg-[var(--inkblot-semantic-color-interactive-primary-active)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-primary)]","transition-colors duration-[var(--inkblot-duration-fast)]",a),children:[r??(0,Qt.jsx)(On.Plus,{className:"h-4 w-4"}),t]})}var Fn=require("react-router-dom");var tr=require("react/jsx-runtime");function Br({resetErrorBoundary:t}){return(0,tr.jsxs)("div",{role:"alert",className:o("flex min-h-[50vh] flex-col items-center justify-center gap-[var(--inkblot-spacing-6)] px-[var(--inkblot-spacing-6)] py-[var(--inkblot-spacing-8)]","bg-[var(--inkblot-semantic-color-background-primary)]","[font:var(--inkblot-semantic-typography-body-small)]"),children:[(0,tr.jsx)("p",{className:"text-center text-[var(--inkblot-semantic-color-text-primary)] [font:var(--inkblot-semantic-typography-heading-medium)]",children:"This page is unavailable"}),(0,tr.jsxs)("div",{className:"flex flex-col items-center gap-[var(--inkblot-spacing-4)] sm:flex-row",children:[(0,tr.jsx)("button",{type:"button",onClick:t,className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center rounded-[var(--inkblot-radius-lg)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]","hover:bg-[var(--inkblot-semantic-color-interactive-primary-hover)] active:bg-[var(--inkblot-semantic-color-interactive-primary-active)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-primary)]","transition-colors duration-[var(--inkblot-duration-fast)]"),children:"Retry"}),(0,tr.jsx)(Fn.Link,{to:"/",className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center rounded-[var(--inkblot-radius-lg)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","text-[var(--inkblot-semantic-color-interactive-primary)] underline-offset-4 hover:underline","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-primary)]","transition-colors duration-[var(--inkblot-duration-fast)]"),children:"Go to home"})]})]})}var Vn=require("react-error-boundary"),Gn=require("react-router-dom");var Wn=require("react/jsx-runtime");function oa({children:t,fallback:e}){let r=(0,Gn.useNavigate)();return(0,Wn.jsx)(Vn.ErrorBoundary,{FallbackComponent:e??Br,onReset:()=>{r("/")},children:t})}var Kn=require("react"),Un=require("lucide-react");var er=require("react/jsx-runtime"),ke=(0,Kn.forwardRef)(({className:t,label:e,error:r,disabled:a,...i},n)=>(0,er.jsxs)("div",{className:"flex flex-col gap-1",children:[e?(0,er.jsx)("label",{htmlFor:i.id,className:o("uppercase tracking-wider","[font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-primary)]"),children:e}):null,(0,er.jsxs)("div",{className:o("flex items-center gap-2 rounded-[var(--inkblot-radius-full)]","bg-[var(--inkblot-semantic-color-background-secondary)]","border transition-colors duration-[var(--inkblot-duration-fast)]","focus-within:ring-2 focus-within:ring-[var(--inkblot-semantic-color-border-focus)] focus-within:ring-offset-2 focus-within:ring-offset-[var(--inkblot-semantic-color-background-primary)]",r?"border-[var(--inkblot-semantic-color-status-error)]":"border-[var(--inkblot-semantic-color-border-default)] hover:border-[var(--inkblot-semantic-color-border-strong)]",a&&"opacity-[var(--inkblot-opacity-disabled)] pointer-events-none cursor-not-allowed"),children:[(0,er.jsx)(Un.Search,{className:o("ml-[var(--inkblot-spacing-4)] h-4 w-4 shrink-0","text-[var(--inkblot-semantic-color-text-tertiary)]")}),(0,er.jsx)("input",{ref:n,type:"search",disabled:a,"aria-invalid":r,"aria-label":e??"Search",className:o("min-h-[var(--inkblot-size-touch-target-min)] w-full flex-1 bg-transparent px-2 py-[var(--inkblot-spacing-2)] pr-[var(--inkblot-spacing-4)]","[font:var(--inkblot-semantic-typography-body-medium)]","text-[var(--inkblot-semantic-color-text-primary)] placeholder:text-[var(--inkblot-semantic-color-text-tertiary)]","focus:outline-none","disabled:cursor-not-allowed",t),...i})]})]}));ke.displayName="SearchBar";var _n=require("react/jsx-runtime");function aa({children:t,columns:e=4,className:r}){return(0,_n.jsx)("div",{className:o("grid gap-[var(--inkblot-spacing-4)]",{1:"grid-cols-1",2:"grid-cols-1 sm:grid-cols-2",3:"grid-cols-1 sm:grid-cols-2 lg:grid-cols-3",4:"grid-cols-1 sm:grid-cols-2 lg:grid-cols-4"}[e],r),children:t})}var vr=require("react");var Le=require("react/jsx-runtime");function na({items:t,activeItemId:e,defaultActiveItemId:r,onActiveItemChange:a,onItemClick:i,className:n}){let s=(0,vr.useMemo)(()=>r!==void 0?r:t.find(b=>b.active)?.id,[r,t]),[l,c]=(0,vr.useState)(s),d=e!==void 0,m=d?e:l,p=(0,vr.useCallback)((b,u)=>{if(u.disabled){b.preventDefault();return}d||c(u.id),i?.(u.id,u),u.onClick?.(u.id),a?.(u.id,u)},[d,a,i]);return(0,Le.jsx)(U,{className:n,children:(0,Le.jsx)("nav",{className:o("flex w-16 flex-col items-center gap-[var(--inkblot-spacing-2)] border-r border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] px-[var(--inkblot-spacing-2)] py-[var(--inkblot-spacing-4)]"),"aria-label":"Navigation",children:t.map(b=>{let u=m?b.id===m:!!b.active;return(0,Le.jsxs)("button",{type:"button",disabled:b.disabled,onClick:f=>p(f,b),"aria-current":u?"page":void 0,className:o("relative flex w-full flex-col items-center gap-[var(--inkblot-spacing-1)] rounded-[var(--inkblot-radius-lg)] border border-transparent px-[var(--inkblot-spacing-2)] py-[var(--inkblot-spacing-2)] transition-[background,border-color,color] duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)]",u?"border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] text-[var(--inkblot-semantic-color-interactive-primary)]":"text-[var(--inkblot-semantic-color-text-tertiary)] hover:bg-[var(--inkblot-semantic-color-background-primary)] hover:text-[var(--inkblot-semantic-color-text-secondary)]","disabled:pointer-events-none disabled:opacity-[var(--inkblot-opacity-disabled)]"),children:[u?(0,Le.jsx)("span",{className:"absolute left-[-0.5rem] top-1/2 h-6 w-1 -translate-y-1/2 rounded-r-[var(--inkblot-radius-full)] bg-[var(--inkblot-semantic-color-interactive-primary)]","aria-hidden":!0}):null,(0,Le.jsx)("div",{className:"flex h-8 w-8 items-center justify-center [&>svg]:h-5 [&>svg]:w-5",children:b.icon}),b.label?(0,Le.jsx)("span",{className:"[font:var(--inkblot-semantic-typography-body-small)] font-medium",children:b.label}):null]},b.id)})})})}var bt=require("react/jsx-runtime"),jn={success:"text-[var(--inkblot-semantic-color-status-success)]",error:"text-[var(--inkblot-semantic-color-status-error)]",neutral:"text-[var(--inkblot-semantic-color-text-secondary)]"};function zr({items:t,className:e}){return(0,bt.jsx)("div",{className:o("grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-4",e),children:t.map(r=>(0,bt.jsx)(Pl,{item:r},r.label))})}function Pl({item:t}){let e=t.changeVariant??"neutral",r=jn[e];return(0,bt.jsxs)("div",{className:o("flex flex-col gap-1 rounded-[var(--inkblot-radius-lg)]","bg-[var(--inkblot-semantic-color-background-secondary)]","px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-4)]","border border-[var(--inkblot-semantic-color-border-subtle)]"),children:[(0,bt.jsx)("span",{className:o("uppercase tracking-wider","[font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-secondary)]"),children:t.label}),(0,bt.jsx)("span",{className:o("[font:var(--inkblot-semantic-typography-heading-medium)]","text-[var(--inkblot-semantic-color-text-primary)]"),children:t.value}),t.change?(0,bt.jsx)("span",{className:o("[font:var(--inkblot-semantic-typography-body-small)]",r),children:t.change}):null]})}function ia({items:t,className:e}){return(0,bt.jsx)("div",{className:o("grid grid-cols-1 gap-4 sm:grid-cols-2 lg:grid-cols-4",e),children:t.map(r=>(0,bt.jsx)(Sl,{item:r},r.label))})}function Sl({item:t}){let e=t.changeVariant??"neutral",r=jn[e],a=t.chartData??[],i=Math.max(...a,1);return(0,bt.jsxs)("div",{className:o("flex flex-col gap-2 rounded-[var(--inkblot-radius-lg)]","bg-[var(--inkblot-semantic-color-background-secondary)]","px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-4)]","border border-[var(--inkblot-semantic-color-border-subtle)]"),children:[(0,bt.jsx)("span",{className:o("uppercase tracking-wider","[font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-secondary)]"),children:t.label}),(0,bt.jsxs)("div",{className:"flex items-end justify-between gap-2",children:[(0,bt.jsx)("span",{className:o("[font:var(--inkblot-semantic-typography-heading-medium)]","text-[var(--inkblot-semantic-color-text-primary)]"),children:t.value}),a.length>0?(0,bt.jsx)("div",{className:"flex h-8 items-end gap-0.5",children:a.map((n,s)=>(0,bt.jsx)("div",{className:"w-1 min-w-[2px] rounded-sm bg-[var(--inkblot-semantic-color-interactive-primary)] opacity-80",style:{height:`${n/i*100}%`,minHeight:4}},s))}):null]}),t.change?(0,bt.jsx)("span",{className:o("[font:var(--inkblot-semantic-typography-body-small)]",r),children:t.change}):null]})}var Or=require("react/jsx-runtime");function Fr({tabs:t,activeTabId:e,onTabChange:r,className:a}){return(0,Or.jsx)("nav",{role:"tablist","aria-label":"Tabs",className:o("flex gap-0 pt-[var(--inkblot-spacing-2)]",a),children:t.map(i=>{let n=i.id===e;return(0,Or.jsxs)("button",{role:"tab","aria-selected":n,"aria-controls":`panel-${i.id}`,id:`tab-${i.id}`,type:"button",onClick:()=>r(i.id),className:o("relative px-[var(--inkblot-spacing-5)] py-[var(--inkblot-spacing-4)]","[font:var(--inkblot-semantic-typography-body-medium)]","transition-colors duration-[var(--inkblot-duration-fast)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-primary)]",n?["font-semibold text-[var(--inkblot-semantic-color-text-primary)]","bg-[var(--inkblot-semantic-color-background-secondary)]","rounded-t-[var(--inkblot-radius-lg)]"]:["text-[var(--inkblot-semantic-color-text-secondary)]","hover:text-[var(--inkblot-semantic-color-text-primary)]","hover:bg-[var(--inkblot-semantic-color-background-secondary)]/50"]),children:[i.label,n?(0,Or.jsx)("span",{className:"absolute bottom-0 left-0 right-0 h-0.5 rounded-full bg-[var(--inkblot-semantic-color-interactive-primary)]","aria-hidden":!0}):null]},i.id)})})}var fr=require("lucide-react");var St=require("react/jsx-runtime"),Ml={urgent:"bg-[var(--inkblot-semantic-color-status-error)]/20 text-[var(--inkblot-semantic-color-status-error)] border-[var(--inkblot-semantic-color-status-error)]/30",high:"bg-[var(--inkblot-semantic-color-status-warning)]/20 text-[var(--inkblot-semantic-color-status-warning)] border-[var(--inkblot-semantic-color-status-warning)]/30",medium:"bg-[var(--inkblot-semantic-color-status-success)]/10 text-[var(--inkblot-semantic-color-status-success)] border-[var(--inkblot-semantic-color-status-success)]/30",low:"bg-[var(--inkblot-semantic-color-background-tertiary)] text-[var(--inkblot-semantic-color-text-secondary)] border-[var(--inkblot-semantic-color-border-subtle)]"};function Vr({id:t,title:e,company:r,priority:a,date:i,assignee:n,completed:s=!1,onToggle:l,onClick:c,className:d}){let m=Ml[a];return(0,St.jsxs)("div",{role:"button",tabIndex:0,onClick:()=>c?.(t),onKeyDown:p=>{(p.key==="Enter"||p.key===" ")&&(p.preventDefault(),c?.(t))},className:o("flex items-center gap-[var(--inkblot-spacing-4)] rounded-[var(--inkblot-radius-lg)]","border border-[var(--inkblot-semantic-color-border-subtle)]","bg-[var(--inkblot-semantic-color-background-secondary)]","px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)]","transition-colors duration-[var(--inkblot-duration-fast)]","hover:border-[var(--inkblot-semantic-color-border-default)] hover:bg-[var(--inkblot-semantic-color-background-tertiary)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-primary)]","cursor-pointer",d),children:[(0,St.jsx)("button",{type:"button",onClick:p=>{p.stopPropagation(),l?.(t)},"aria-label":s?"Mark as incomplete":"Mark as complete","aria-pressed":s,className:o("flex h-5 w-5 shrink-0 items-center justify-center rounded-full","transition-colors duration-[var(--inkblot-duration-fast)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-primary)]",s?"bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]":"border-2 border-[var(--inkblot-semantic-color-border-default)] bg-transparent"),children:s?(0,St.jsx)(fr.Check,{className:"h-3 w-3",strokeWidth:3}):null}),(0,St.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,St.jsx)("p",{className:o("[font:var(--inkblot-semantic-typography-body-large-bold)]","text-[var(--inkblot-semantic-color-text-primary)]",s&&"line-through text-[var(--inkblot-semantic-color-text-secondary)]"),children:e}),(0,St.jsx)("p",{className:o("mt-0.5 [font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-secondary)]",s&&"line-through"),children:r})]}),(0,St.jsxs)("div",{className:"flex shrink-0 flex-wrap items-center justify-end gap-[var(--inkblot-spacing-3)]",children:[(0,St.jsx)("span",{className:o("rounded-[var(--inkblot-radius-md)] border px-[var(--inkblot-spacing-2)] py-[var(--inkblot-spacing-1)]","[font:var(--inkblot-semantic-typography-body-small)] font-medium",m),children:a.charAt(0).toUpperCase()+a.slice(1)}),(0,St.jsxs)("span",{className:o("flex items-center gap-1","[font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-primary)]"),children:[(0,St.jsx)(fr.Calendar,{className:"h-4 w-4 shrink-0 text-[var(--inkblot-semantic-color-text-tertiary)]"}),i]}),(0,St.jsxs)("span",{className:o("flex items-center gap-1","[font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-primary)]"),children:[(0,St.jsx)(fr.User,{className:"h-4 w-4 shrink-0 text-[var(--inkblot-semantic-color-text-tertiary)]"}),n]})]})]})}var gr=require("lucide-react");var ne=require("react/jsx-runtime"),El={todo:gr.CircleDot,in_progress:gr.Clock,done:gr.CheckCircle};function Gr({sections:t,onTaskToggle:e,onTaskClick:r,className:a}){return(0,ne.jsx)("div",{className:o("flex flex-col gap-[var(--inkblot-spacing-8)]",a),children:t.map(i=>{let n=El[i.id],s=i.id==="done";return(0,ne.jsxs)("section",{className:"flex flex-col gap-[var(--inkblot-spacing-4)]",children:[(0,ne.jsxs)("div",{className:"flex items-center gap-[var(--inkblot-spacing-3)]",children:[(0,ne.jsx)(n,{className:o("h-5 w-5 shrink-0",s?"text-[var(--inkblot-semantic-color-interactive-primary)]":"text-[var(--inkblot-semantic-color-text-secondary)]")}),(0,ne.jsx)("h2",{className:o("[font:var(--inkblot-semantic-typography-body-large-bold)]","text-[var(--inkblot-semantic-color-text-primary)]"),children:i.label}),(0,ne.jsx)("span",{className:o("rounded-[var(--inkblot-radius-full)] px-[var(--inkblot-spacing-2)] py-[var(--inkblot-spacing-1)]","bg-[var(--inkblot-semantic-color-background-secondary)]","[font:var(--inkblot-semantic-typography-body-small)] font-medium","text-[var(--inkblot-semantic-color-text-primary)]"),children:i.count})]}),(0,ne.jsx)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-3)]",children:i.tasks.map(l=>(0,ne.jsx)(Vr,{...l,completed:s,onToggle:e,onClick:r},l.id))})]},i.id)})})}var Nt=require("lucide-react");var ht=require("react/jsx-runtime");function Il(t){return t>=.8?"bg-[var(--inkblot-semantic-color-status-success)]":t>=.5?"bg-[var(--inkblot-semantic-color-status-info)]":t>=.2?"bg-[var(--inkblot-semantic-color-status-warning)]":"bg-[var(--inkblot-semantic-color-status-error)]"}var Ll={EMAIL_OPENED:Nt.Mail,EMAIL_SENT:Nt.Mail,INVOICE_PAID:Nt.FileText,INVOICE_OVERDUE:Nt.FileText,CONTRACT_SIGNED:Nt.FileText,STAGE_CHANGED:Nt.Zap,CALL_COMPLETED:Nt.Phone,PHONE_CALL:Nt.Phone,RELATIONSHIP_DETECTED:Nt.Link2};function Al(t){return Ll[t]??Nt.FileText}function Dl(t){return t.metadata?.description??t.event_type.replace(/_/g," ").toLowerCase()}function Rl(t){return t.metadata?.details??`${t.actor} - ${t.subject}`}function Wr({events:t,onEntitySelect:e,findEntity:r,emptyMessage:a="No recent activity",className:i}){let n=e?s=>{let l=r?.(s.subject)??r?.(s.actor);l&&e(l)}:void 0;return(0,ht.jsx)(U,{children:(0,ht.jsx)("div",{className:o("space-y-2",i),children:t.length===0?(0,ht.jsx)("p",{className:"py-6 text-center text-sm text-[var(--inkblot-semantic-color-text-tertiary)]",children:a}):t.map(s=>{let c=!!(r?.(s.subject)??r?.(s.actor))&&!!n,d=Al(s.event_type),m=(0,ht.jsxs)("div",{className:"flex flex-1 items-center gap-3",children:[(0,ht.jsx)(d,{className:"h-4 w-4 shrink-0 text-[var(--inkblot-semantic-color-text-secondary)]","aria-hidden":!0}),(0,ht.jsx)("div",{className:`h-2 w-2 shrink-0 rounded-full ${Il(s.confidence_score)}`,"aria-hidden":!0}),(0,ht.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,ht.jsx)("p",{className:"text-sm font-medium text-[var(--inkblot-semantic-color-text-primary)]",children:Dl(s)}),(0,ht.jsx)("p",{className:"text-xs text-[var(--inkblot-semantic-color-text-secondary)]",children:Rl(s)})]}),(0,ht.jsx)("span",{className:"shrink-0 text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:s.timestamp})]}),p=s.id??`${s.actor}-${s.subject}-${s.timestamp}`;return(0,ht.jsx)("div",{children:c?(0,ht.jsx)("button",{type:"button",onClick:()=>n(s),className:"flex w-full items-center gap-3 rounded-[var(--inkblot-radius-md)] bg-[var(--inkblot-semantic-color-background-secondary)] p-3 text-left transition-colors duration-[var(--inkblot-duration-fast)] hover:bg-[var(--inkblot-semantic-color-background-tertiary)] focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-primary)]",children:m}):(0,ht.jsx)("div",{className:"flex w-full items-center gap-3 rounded-[var(--inkblot-radius-md)] bg-[var(--inkblot-semantic-color-background-secondary)] p-3",children:m})},p)})})})}var $n=require("react-router-dom"),Mt=require("lucide-react");var ie=require("react/jsx-runtime"),Hl=[{id:"home",path:"/",icon:Mt.ClipboardList,label:"Home"},{id:"intelligence",path:"/intelligence",icon:Mt.Brain,label:"Intelligence"},{id:"pipeline",path:"/pipeline",icon:Mt.BarChart3,label:"Pipeline"},{id:"graph",path:"/graph",icon:Mt.Network,label:"Graph"},{id:"events",path:"/events",icon:Mt.Activity,label:"Events"},{id:"settings",path:"/settings",icon:Mt.Settings,label:"Settings"}];function sa({items:t=Hl,brandLogo:e,brandTitle:r="Command Canvas \u2014 AI-native Interface",className:a}){return(0,ie.jsx)(U,{children:(0,ie.jsxs)("nav",{className:o("flex h-full flex-col gap-[var(--inkblot-spacing-4)] border-r border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-3)]",a),children:[(0,ie.jsx)("div",{className:"flex flex-col items-center gap-2",children:(0,ie.jsx)("div",{className:"flex h-11 w-11 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] shadow-[var(--inkblot-shadow-sm)]",title:r,children:e??(0,ie.jsx)(Mt.Sparkles,{className:"h-5 w-5 text-[var(--inkblot-semantic-color-interactive-primary)]","aria-hidden":!0})})}),(0,ie.jsx)("div",{className:"flex flex-1 flex-col gap-[var(--inkblot-spacing-2)]",children:t.map(i=>{let n=i.icon;return(0,ie.jsx)($n.NavLink,{to:i.path,end:i.path==="/","aria-label":i.label,className:({isActive:s})=>`flex items-center justify-center gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-lg)] border border-transparent px-[var(--inkblot-spacing-2)] py-[var(--inkblot-spacing-2)] transition-[background,border-color,color] duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)] ${s?"border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] text-[var(--inkblot-semantic-color-interactive-primary)]":"text-[var(--inkblot-semantic-color-text-secondary)] hover:border-[var(--inkblot-semantic-color-border-default)]/60 hover:bg-[var(--inkblot-semantic-color-background-primary)]"}`,children:(0,ie.jsx)(n,{size:20,"aria-hidden":!0})},i.id)})})]})})}var qn=require("react"),Ae=require("lucide-react");var lt=require("react/jsx-runtime");function la({prompt:t,onPromptChange:e,onSubmit:r,onFilesAttach:a,isProcessing:i,placeholder:n="Ask anything \u2014 deals, contacts, forecasts...",subtitle:s="Citron OS v1.0 \u2014 AI-native Revenue & Operations Platform",className:l}){let c=(0,qn.useRef)(null),d=p=>{p.key==="Enter"&&!p.shiftKey&&(p.preventDefault(),r())},m=p=>{let b=p.target.files;b&&b.length>0&&a&&a(Array.from(b)),p.target.value=""};return(0,lt.jsxs)("div",{className:o("border-t border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] px-[var(--inkblot-spacing-6)] py-[var(--inkblot-spacing-4)]",l),children:[(0,lt.jsxs)("div",{className:"flex items-start gap-[var(--inkblot-spacing-3)]",children:[(0,lt.jsx)("div",{className:"mt-[var(--inkblot-spacing-1)] flex h-10 w-10 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)]",children:(0,lt.jsx)(Ae.Sparkles,{className:"h-5 w-5 text-[var(--inkblot-semantic-color-interactive-primary)]","aria-hidden":!0})}),(0,lt.jsx)("div",{className:"flex-1",children:(0,lt.jsxs)("div",{className:o("flex items-end gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-2)] shadow-[var(--inkblot-shadow-sm)]",i&&"pointer-events-none"),"aria-busy":i,children:[(0,lt.jsx)("input",{ref:c,type:"file",multiple:!0,onChange:m,className:"sr-only","aria-hidden":!0}),(0,lt.jsx)("button",{type:"button",onClick:()=>c.current?.click(),disabled:i,className:o("flex h-9 w-9 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-full)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] text-[var(--inkblot-semantic-color-text-tertiary)] transition-[background,border-color,color] duration-[var(--inkblot-duration-fast)]","hover:border-[var(--inkblot-semantic-color-border-strong)] hover:bg-[var(--inkblot-semantic-color-background-tertiary)] hover:text-[var(--inkblot-semantic-color-text-secondary)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-secondary)]","disabled:pointer-events-none disabled:opacity-[var(--inkblot-opacity-disabled)]"),"aria-label":"Attach files",children:(0,lt.jsx)(Ae.Paperclip,{size:18,strokeWidth:1.7,"aria-hidden":!0})}),(0,lt.jsx)("textarea",{value:t,onChange:p=>e(p.target.value),onKeyDown:d,placeholder:n,rows:1,disabled:i,className:o("min-h-[2.25rem] min-w-0 flex-1 resize-none bg-transparent py-[var(--inkblot-spacing-2)] [font:var(--inkblot-semantic-typography-body-default)] text-[var(--inkblot-semantic-color-text-primary)] placeholder:text-[var(--inkblot-semantic-color-text-tertiary)]","focus:outline-none","disabled:cursor-not-allowed disabled:opacity-[var(--inkblot-opacity-disabled)]")}),(0,lt.jsx)("div",{className:"flex h-9 w-9 shrink-0 items-center justify-center",children:i?(0,lt.jsx)("div",{className:"flex h-8 w-8 items-center justify-center rounded-[var(--inkblot-radius-full)] bg-[var(--inkblot-semantic-color-interactive-primary)]",children:(0,lt.jsx)(Ae.Loader2,{size:16,strokeWidth:2,className:"animate-spin text-[var(--inkblot-semantic-color-text-inverse)]","aria-hidden":!0})}):(0,lt.jsx)("button",{type:"button",onClick:r,className:o("flex h-8 w-8 items-center justify-center rounded-[var(--inkblot-radius-full)] bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)] transition-[background,box-shadow] duration-[var(--inkblot-duration-fast)]","hover:bg-[var(--inkblot-semantic-color-interactive-primary-hover)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)] focus:ring-offset-2 focus:ring-offset-[var(--inkblot-semantic-color-background-secondary)]"),"aria-label":"Send",children:(0,lt.jsx)(Ae.Send,{size:16,strokeWidth:2,"aria-hidden":!0})})})]})})]}),s&&(0,lt.jsx)("p",{className:"mt-[var(--inkblot-spacing-2)] [font:var(--inkblot-semantic-typography-body-small)] text-[var(--inkblot-semantic-color-text-tertiary)]",children:s})]})}var Jt=require("react/jsx-runtime");function ca({events:t,title:e="Event Stream",showLive:r=!0,className:a}){return(0,Jt.jsx)(U,{children:(0,Jt.jsxs)("div",{className:o("flex h-full flex-col bg-[var(--inkblot-semantic-color-background-secondary)]",a),children:[(0,Jt.jsxs)("div",{className:"flex shrink-0 items-center justify-between border-b border-[var(--inkblot-semantic-color-border-default)] px-4 py-3",children:[(0,Jt.jsx)("span",{className:"text-xs font-medium uppercase tracking-wider text-[var(--inkblot-semantic-color-text-secondary)]",children:e}),r&&(0,Jt.jsxs)("div",{className:"flex items-center gap-2",children:[(0,Jt.jsx)("div",{className:"h-2 w-2 rounded-full bg-[var(--inkblot-semantic-color-status-success)]"}),(0,Jt.jsx)("span",{className:"text-xs text-[var(--inkblot-semantic-color-status-success)]",children:"Live"})]})]}),(0,Jt.jsx)("div",{className:"flex-1 overflow-auto p-4",children:(0,Jt.jsx)(Wr,{events:t})})]})})}var tt=require("react/jsx-runtime"),Bl=[{label:"Pipeline Health",value:76},{label:"Churn Risk",value:28},{label:"Expansion Signal",value:64},{label:"Team Velocity",value:83}],zl=[{title:"Acme Corp likely to close within 14 days",description:"Based on email sentiment, meeting cadence, and champion engagement patterns.",confidence:89},{title:"Churn risk detected: GlobalTech Inc",description:"Declining touchpoints and support ticket volume suggest potential churn.",confidence:74},{title:"Expansion opportunity: TechVentures",description:"Usage patterns and NPS scores indicate readiness for upsell conversation.",confidence:81}];function da({loading:t,kpiCards:e=Bl,aiInsights:r=zl,title:a="Intelligence Lab",subtitle:i="AI-generated insights - Updated 3 min ago",className:n}){return(0,tt.jsxs)("div",{className:o("flex h-full flex-col gap-4 overflow-y-auto p-4",n),children:[(0,tt.jsxs)("div",{children:[(0,tt.jsx)("h1",{className:"text-2xl font-semibold text-[var(--inkblot-semantic-color-text-primary)]",children:a}),(0,tt.jsx)("p",{className:"text-sm text-[var(--inkblot-semantic-color-text-tertiary)]",children:i})]}),(0,tt.jsx)(Hr,{loading:t,title:"",children:(0,tt.jsx)(U,{children:(0,tt.jsxs)("div",{className:"flex flex-col gap-4",children:[(0,tt.jsx)("div",{className:"grid grid-cols-2 gap-4 lg:grid-cols-4",children:e.map(s=>(0,tt.jsx)(Dr,{label:s.label,value:s.value,subtext:s.subtext,trend:s.trend},s.label))}),(0,tt.jsxs)("div",{children:[(0,tt.jsx)("h2",{className:"mb-4 border-b border-[var(--inkblot-semantic-color-border-default)] pb-2 text-sm font-bold uppercase tracking-wider text-[var(--inkblot-semantic-color-text-primary)]",children:"AI Insights"}),(0,tt.jsx)("div",{className:"flex flex-col gap-4",children:r.map(s=>(0,tt.jsx)(U,{children:(0,tt.jsxs)("div",{className:"flex items-start justify-between gap-4 rounded-[var(--inkblot-radius-lg)] bg-[var(--inkblot-semantic-color-background-secondary)] p-4",children:[(0,tt.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,tt.jsx)("h3",{className:"font-semibold text-[var(--inkblot-semantic-color-text-primary)]",children:s.title}),(0,tt.jsx)("p",{className:"mt-1 text-sm text-[var(--inkblot-semantic-color-text-tertiary)]",children:s.description})]}),(0,tt.jsxs)("div",{className:"flex shrink-0 flex-col items-center",children:[(0,tt.jsx)("span",{className:"text-lg font-bold text-[var(--inkblot-semantic-color-text-primary)]",children:s.confidence}),(0,tt.jsx)("span",{className:"text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:"Conf."})]})]})},s.title))})]})]})})})]})}var se=require("react/jsx-runtime");function ma({navigation:t,eventStream:e,commandBar:r,children:a,className:i,eventStreamWidth:n="w-80"}){return(0,se.jsxs)("div",{className:o("flex h-screen w-screen overflow-hidden bg-[var(--inkblot-semantic-color-background-primary)]",i),children:[(0,se.jsx)("aside",{className:"flex h-full w-16 shrink-0 flex-col border-r border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)]",children:t}),(0,se.jsx)("main",{className:"flex flex-1 flex-col overflow-hidden",children:(0,se.jsxs)("div",{className:"flex min-h-0 flex-1",children:[(0,se.jsxs)("div",{className:"flex min-h-0 flex-1 flex-col overflow-hidden bg-[var(--inkblot-semantic-color-background-primary)]",children:[(0,se.jsx)("div",{className:"flex-1 overflow-auto px-[var(--inkblot-spacing-6)] py-[var(--inkblot-spacing-6)]",children:a}),(0,se.jsx)("div",{className:"shrink-0 border-t border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)]",children:r})]}),e&&(0,se.jsx)("aside",{className:o("flex h-full shrink-0 flex-col border-l border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-4)]",n),children:e})]})})]})}var bo=require("react"),uo=require("lucide-react");var $t=require("react/jsx-runtime"),Ol=["urgent","high","medium","low"];function Kr({onConfirm:t,onCancel:e,className:r}){let[a,i]=(0,bo.useState)(""),[n,s]=(0,bo.useState)(""),[l,c]=(0,bo.useState)("medium");return(0,$t.jsxs)("form",{onSubmit:m=>{m.preventDefault();let p=a.trim();p&&(t({title:p,company:n.trim()||void 0,priority:l}),i(""),s(""),c("medium"))},className:o("flex flex-col gap-[var(--inkblot-spacing-4)] rounded-[var(--inkblot-radius-lg)]","border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-secondary)]","p-[var(--inkblot-spacing-4)]",r),children:[(0,$t.jsx)("input",{type:"text",value:a,onChange:m=>i(m.target.value),placeholder:"Task title...",autoFocus:!0,required:!0,className:o("min-h-[var(--inkblot-size-touch-target-min)] w-full rounded-[var(--inkblot-radius-md)]","border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-primary)]","px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","[font:var(--inkblot-semantic-typography-body-medium)]","text-[var(--inkblot-semantic-color-text-primary)] placeholder:text-[var(--inkblot-semantic-color-text-tertiary)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)]")}),(0,$t.jsx)("input",{type:"text",value:n,onChange:m=>s(m.target.value),placeholder:"Company (optional)",className:o("min-h-[var(--inkblot-size-touch-target-min)] w-full rounded-[var(--inkblot-radius-md)]","border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-primary)]","px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","[font:var(--inkblot-semantic-typography-body-medium)]","text-[var(--inkblot-semantic-color-text-primary)] placeholder:text-[var(--inkblot-semantic-color-text-tertiary)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)]")}),(0,$t.jsx)("div",{className:"flex flex-wrap gap-[var(--inkblot-spacing-2)]",children:Ol.map(m=>(0,$t.jsx)("button",{type:"button",onClick:()=>c(m),className:o("rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-2)] py-[var(--inkblot-spacing-1)]","[font:var(--inkblot-semantic-typography-body-small)] font-medium","transition-colors duration-[var(--inkblot-duration-fast)]",l===m?"bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]":"bg-[var(--inkblot-semantic-color-background-tertiary)] text-[var(--inkblot-semantic-color-text-secondary)] hover:bg-[var(--inkblot-semantic-color-background-tertiary)]/80"),children:m.charAt(0).toUpperCase()+m.slice(1)},m))}),(0,$t.jsxs)("div",{className:"flex justify-end gap-[var(--inkblot-spacing-2)]",children:[(0,$t.jsxs)("button",{type:"button",onClick:e,className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center gap-2 rounded-[var(--inkblot-radius-lg)]","border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-interactive-secondary)]","px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","[font:var(--inkblot-semantic-typography-body-medium)] font-medium","text-[var(--inkblot-semantic-color-text-primary)]","hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)]"),children:[(0,$t.jsx)(uo.X,{className:"h-4 w-4"}),"Cancel"]}),(0,$t.jsxs)("button",{type:"submit",disabled:!a.trim(),className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center gap-2 rounded-[var(--inkblot-radius-lg)]","bg-[var(--inkblot-semantic-color-interactive-primary)]","px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","[font:var(--inkblot-semantic-typography-body-medium)] font-medium","text-[var(--inkblot-semantic-color-text-inverse)]","hover:bg-[var(--inkblot-semantic-color-interactive-primary-hover)] active:bg-[var(--inkblot-semantic-color-interactive-primary-active)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)]","disabled:opacity-[var(--inkblot-opacity-disabled)] disabled:cursor-not-allowed"),children:[(0,$t.jsx)(uo.Check,{className:"h-4 w-4"}),"Add Task"]})]})]})}var He=require("react"),kr=require("lucide-react");var fo=require("react");var Yn=require("react");var Xn=require("react/jsx-runtime"),Fl={sm:"h-8 px-3 text-xs",md:"h-10 px-4 text-sm",lg:"h-11 px-5 text-sm"};function vo({pressed:t,defaultPressed:e=!1,onPressedChange:r,size:a="md",variant:i="default",disabled:n,className:s,children:l,...c}){let[d,m]=(0,Yn.useState)(e),p=t??d;return(0,Xn.jsx)("button",{type:"button","aria-pressed":p,disabled:n,onClick:()=>{if(n)return;let u=!p;t===void 0&&m(u),r?.(u)},className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center rounded-[var(--inkblot-radius-md)] border font-medium transition-colors duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--inkblot-semantic-color-border-focus)] focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-[var(--inkblot-opacity-disabled)]",Fl[a],i==="default"?p?"border-[var(--inkblot-semantic-color-interactive-primary)] bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]":"border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] text-[var(--inkblot-semantic-color-text-primary)] hover:bg-[var(--inkblot-semantic-color-background-tertiary)]":p?"border-[var(--inkblot-semantic-color-text-primary)] bg-[var(--inkblot-semantic-color-background-tertiary)] text-[var(--inkblot-semantic-color-text-primary)]":"border-[var(--inkblot-semantic-color-border-default)] bg-transparent text-[var(--inkblot-semantic-color-text-secondary)] hover:text-[var(--inkblot-semantic-color-text-primary)]",s),...c,children:l})}var Ur=require("react/jsx-runtime");function go({type:t="single",items:e,value:r,defaultValue:a,onValueChange:i,className:n,...s}){let l=a??(t==="single"?"":[]),[c,d]=(0,fo.useState)(l),m=r??c,p=(0,fo.useMemo)(()=>{if(t==="single"){let f=typeof m=="string"?m:"";return new Set(f?[f]:[])}let u=Array.isArray(m)?m:[];return new Set(u)},[m,t]),b=u=>{if(t==="single"){let x=p.has(u)?"":u;r===void 0&&d(x),i?.(x);return}let f=Array.isArray(m)?m:[],C=f.includes(u)?f.filter(x=>x!==u):[...f,u];r===void 0&&d(C),i?.(C)};return(0,Ur.jsx)("div",{className:o("inline-flex items-center gap-2 rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-tertiary)] p-1",n),...s,children:e.map(u=>{let f=u.icon;return(0,Ur.jsxs)(vo,{pressed:p.has(u.id),onPressedChange:()=>b(u.id),disabled:u.disabled,size:"sm",children:[f?(0,Ur.jsx)(f,{className:"mr-2 size-4"}):null,u.label]},u.id)})})}var ei=require("@hello-pangea/dnd"),yo=require("react");var Jn=require("@hello-pangea/dnd");var Zn=require("react"),Qn=require("lucide-react");var _r=require("react/jsx-runtime"),Vl={sm:"h-8 w-8 text-xs",md:"h-10 w-10 text-sm",lg:"h-14 w-14 text-base"};function ko({src:t,alt:e="Avatar",fallback:r,size:a="md",disabled:i=!1,className:n}){let[s,l]=(0,Zn.useState)(!1),c=!!(t&&!s);return(0,_r.jsx)("span",{"aria-disabled":i,className:o("inline-flex shrink-0 items-center justify-center overflow-hidden rounded-[var(--inkblot-radius-full)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-tertiary)] text-[var(--inkblot-semantic-color-text-secondary)]",i&&"opacity-[var(--inkblot-opacity-disabled)]",Vl[a],n),children:c?(0,_r.jsx)("img",{src:t,alt:e,onError:()=>l(!0),className:"h-full w-full object-cover"}):r?(0,_r.jsx)("span",{className:"font-medium uppercase",children:r.slice(0,2)}):(0,_r.jsx)(Qn.User,{className:"h-4 w-4"})})}var Bt=require("react/jsx-runtime"),Gl={low:"bg-[var(--inkblot-semantic-color-status-info)]",medium:"bg-[var(--inkblot-semantic-color-status-success)]",high:"bg-[var(--inkblot-semantic-color-status-warning)]",urgent:"bg-[var(--inkblot-semantic-color-status-error)]"};function jr({task:t,index:e,className:r}){let a=t.jiraKey??`TASK-${t.id}`;return(0,Bt.jsx)(Jn.Draggable,{draggableId:t.id,index:e,children:(i,n)=>(0,Bt.jsxs)("div",{ref:i.innerRef,...i.draggableProps,...i.dragHandleProps,className:o("relative flex cursor-grab flex-col gap-[var(--inkblot-spacing-3)] rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-4)] shadow-[var(--inkblot-shadow-sm)]","active:cursor-grabbing",n.isDragging&&"shadow-[var(--inkblot-shadow-lg)] ring-2 ring-[var(--inkblot-semantic-color-border-focus)]",r),children:[(0,Bt.jsx)("div",{className:"absolute right-[var(--inkblot-spacing-3)] top-[var(--inkblot-spacing-3)] h-8 w-1 rounded-[var(--inkblot-radius-sm)]",children:(0,Bt.jsx)("span",{className:o("block h-full w-full rounded-[var(--inkblot-radius-sm)]",Gl[t.priority])})}),(0,Bt.jsx)("p",{className:o("pr-[var(--inkblot-spacing-4)] text-[var(--inkblot-semantic-color-text-primary)]","[font:var(--inkblot-semantic-typography-body-medium)] font-semibold"),children:t.title}),(0,Bt.jsx)("p",{className:"text-[var(--inkblot-semantic-color-text-tertiary)] [font:var(--inkblot-semantic-typography-body-small)]",children:t.company}),(0,Bt.jsxs)("div",{className:"flex items-end justify-between gap-[var(--inkblot-spacing-2)]",children:[(0,Bt.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,Bt.jsx)("span",{className:"text-[var(--inkblot-semantic-color-text-tertiary)] [font:var(--inkblot-semantic-typography-body-small)]",children:a}),t.date?(0,Bt.jsx)("span",{className:"text-[var(--inkblot-semantic-color-text-secondary)] [font:var(--inkblot-semantic-typography-body-small)]",children:t.date}):null]}),(0,Bt.jsx)(ko,{size:"sm",fallback:t.assignee.replace(/\s/g,"").slice(0,2).toUpperCase(),alt:t.assignee})]})]})})}var ti=require("@hello-pangea/dnd");var De=require("react/jsx-runtime");function $r({columnId:t,title:e,count:r,children:a,className:i}){return(0,De.jsxs)("div",{className:o("flex min-w-[min(100%,280px)] flex-1 flex-col rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-tertiary)]",i),children:[(0,De.jsxs)("header",{className:o("flex items-center justify-between gap-[var(--inkblot-spacing-3)] border-b border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-secondary)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)]"),children:[(0,De.jsx)("h2",{className:o("text-[var(--inkblot-semantic-color-text-secondary)] [font:var(--inkblot-semantic-typography-body-small)]","font-semibold uppercase tracking-wide"),children:e}),(0,De.jsx)("span",{className:o("min-w-[var(--inkblot-size-touch-target-min)] rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-2)] py-0.5 text-center","bg-[var(--inkblot-semantic-color-background-tertiary)] text-[var(--inkblot-semantic-color-text-primary)]","[font:var(--inkblot-semantic-typography-body-small)] font-medium"),children:r})]}),(0,De.jsx)(ti.Droppable,{droppableId:t,children:(n,s)=>(0,De.jsxs)("div",{ref:n.innerRef,...n.droppableProps,className:o("flex min-h-[200px] flex-1 flex-col gap-[var(--inkblot-spacing-3)] p-[var(--inkblot-spacing-3)]",s.isDraggingOver&&"bg-[var(--inkblot-semantic-color-interactive-secondary)]/30"),children:[a,n.placeholder]})})]})}var qr=require("react/jsx-runtime"),Wl=[{id:"todo",title:"TO DO"},{id:"in_progress",title:"IN PROGRESS"},{id:"done",title:"DONE"}];function Kl(t,e){let{destination:r,source:a,draggableId:i}=e;if(!r||a.droppableId===r.droppableId&&a.index===r.index)return t;let n=r.droppableId,s=t.find(b=>b.id===i);if(!s)return t;let l=t.filter(b=>b.id!==i),c={...s,status:n},m=[...l.filter(b=>b.status===n)];return m.splice(r.index,0,c),["todo","in_progress","done"].flatMap(b=>b===n?m:l.filter(u=>u.status===b))}function rr({tasks:t,onTasksChange:e,className:r}){let a=(0,yo.useCallback)(n=>{e(Kl(t,n))},[t,e]),i=(0,yo.useMemo)(()=>{let n={todo:[],in_progress:[],done:[]};for(let s of t)n[s.status].push(s);return n},[t]);return(0,qr.jsx)(ei.DragDropContext,{onDragEnd:a,children:(0,qr.jsx)("div",{className:o("flex w-full flex-col gap-[var(--inkblot-spacing-4)] lg:flex-row lg:items-start lg:overflow-x-auto",r),children:Wl.map(n=>{let s=i[n.id];return(0,qr.jsx)($r,{columnId:n.id,title:n.title,count:s.length,children:s.map((l,c)=>(0,qr.jsx)(jr,{task:l,index:c},l.id))},n.id)})})})}var Et=require("react/jsx-runtime");function Re(t,e,r="You",a){let n=new Date().toLocaleDateString("en-US",{month:"short",day:"numeric"})||"Today";return{id:e,title:t.title,company:t.company??"Unassigned",priority:t.priority??"medium",date:n,assignee:r,status:"todo",jiraKey:a}}function Ul(t){let e={todo:t.filter(r=>r.status==="todo"),in_progress:t.filter(r=>r.status==="in_progress"),done:t.filter(r=>r.status==="done")};return[{id:"todo",label:"TO DO",count:e.todo.length,tasks:e.todo},{id:"in_progress",label:"IN PROGRESS",count:e.in_progress.length,tasks:e.in_progress},{id:"done",label:"DONE",count:e.done.length,tasks:e.done}]}var Be=[Re({title:"Follow up with Sarah Chen on proposal",company:"Acme Corp",priority:"high"},"1","You","CRM-104"),Re({title:"Schedule demo with engineering team",company:"TechStart Inc",priority:"medium"},"2","Alex M.","CRM-112"),Re({title:"Prepare quarterly report slides",company:"GlobalTech",priority:"low"},"3","Sam R.","CRM-98"),Re({title:"Review Q1 marketing budget",company:"TechStart Inc",priority:"medium"},"4","Jamie L.","CRM-120"),Re({title:"Draft partnership agreement",company:"Enterprise Co",priority:"urgent"},"5","You","CRM-88"),Re({title:"Send contract to legal team",company:"GlobalTech",priority:"low"},"6","Lisa K."),Re({title:"Update CRM with new contacts",company:"Acme Corp",priority:"low"},"7","Morgan P.","CRM-130")];Be[0].status="todo";Be[1].status="todo";Be[2].status="todo";Be[3].status="in_progress";Be[4].status="in_progress";Be[5].status="done";Be[6].status="done";function pa({initialTasks:t=Be,onTaskCreate:e,onTaskToggle:r,onTaskClick:a,onTasksReorder:i,className:n}){let[s,l]=(0,He.useState)(t),[c,d]=(0,He.useState)(!1),[m,p]=(0,He.useState)(""),[b,u]=(0,He.useState)("list"),f=(0,He.useMemo)(()=>{if(!m.trim())return s;let v=m.toLowerCase();return s.filter(h=>h.title.toLowerCase().includes(v)||h.company.toLowerCase().includes(v)||(h.jiraKey?.toLowerCase().includes(v)??!1))},[s,m]),C=(0,He.useMemo)(()=>Ul(f),[f]),x=s.filter(v=>v.status!=="done").length,g=s.filter(v=>v.priority==="urgent"&&v.status!=="done").length,S=`${x} pending${g>0?` \xB7 ${g} urgent`:""}`,N=v=>{let h=`task-${Date.now()}`,P=Re(v,h);l(E=>[P,...E]),d(!1),e?.(v)},y=v=>{l(h=>h.map(P=>{if(P.id!==v)return P;let E=P.status==="done"?"todo":"done";return{...P,status:E}})),r?.(v)},k=v=>{l(v),i?.(v)};return(0,Et.jsx)("div",{className:o("flex min-h-screen flex-col bg-[var(--inkblot-semantic-color-background-primary)]",n),children:(0,Et.jsxs)("div",{className:"flex flex-1 flex-col gap-8 px-8 py-8",children:[(0,Et.jsx)(Qe,{title:"Tasks",subtitle:S,icon:(0,Et.jsx)(kr.ClipboardList,{className:"h-5 w-5"}),action:(0,Et.jsx)(Je,{label:"New Task",onClick:()=>d(v=>!v)})}),(0,Et.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-4)] xl:flex-row xl:items-center xl:gap-[var(--inkblot-spacing-4)]",children:[(0,Et.jsx)(go,{type:"single",value:b,onValueChange:v=>{(v==="list"||v==="kanban")&&u(v)},items:[{id:"list",label:"List View",icon:kr.List},{id:"kanban",label:"Kanban Board View",icon:kr.LayoutGrid}]}),(0,Et.jsx)("div",{className:"min-w-0 flex-1",children:(0,Et.jsx)(ke,{placeholder:b==="list"?"Search tasks (title, company, Jira key)...":"Switch to list view to search and filter tasks",value:m,onChange:v=>p(v.target.value),disabled:b==="kanban"})})]}),c?(0,Et.jsx)(Kr,{onConfirm:N,onCancel:()=>d(!1)}):null,b==="list"?(0,Et.jsx)(Gr,{sections:C,onTaskToggle:y,onTaskClick:a}):(0,Et.jsx)(rr,{tasks:s,onTasksChange:k})]})})}var te=require("react"),ni=require("lucide-react");var _=require("react/jsx-runtime"),_l=`Hi [Name],
2
2
 
3
3
  I hope this email finds you well. I wanted to reach out regarding our recent conversation about [Topic].
4
4
 
@@ -17,5 +17,5 @@ I'd love to schedule a quick call this week to walk you through these in more de
17
17
  Looking forward to hearing from you.
18
18
 
19
19
  Best regards,
20
- [Your name]`,Yn=[{id:"1",campaignName:"Q1 Product Launch",recipients:"2840 recipients",status:"sent",opens:"68%",clicks:"24%",date:"Feb 12, 2026"},{id:"2",campaignName:"Welcome Series",recipients:"1200 recipients",status:"active",statusSubtext:"Running",opens:"-",clicks:"-",date:"Feb 28, 2026"},{id:"3",campaignName:"Re-engagement Campaign",recipients:"890 recipients",status:"draft",opens:"-",clicks:"-",date:"Feb 5, 2026"},{id:"4",campaignName:"Holiday Promo",recipients:"4500 recipients",status:"scheduled",opens:"-",clicks:"-",date:"Mar 1, 2026"}],Xn=[{id:"1",category:"Onboarding",title:"Welcome Series",uses:"34 uses"},{id:"2",category:"Marketing",title:"Product Announcement",uses:"12 uses"},{id:"3",category:"Retention",title:"Renewal Reminder",uses:"28 uses"},{id:"4",category:"Sales",title:"Meeting Follow-up",uses:"56 uses"}],Zn=["Acme Corp - Sarah Chen","TechStart Inc - Mike Rodriguez","GlobalTech - Lisa Kim","Enterprise Co - John Smith","StartupXYZ - Emma Wilson"],Vl=[{key:"campaign",label:"Campaign"},{key:"status",label:"Status"},{key:"opens",label:"Opens"},{key:"clicks",label:"Clicks"},{key:"date",label:"Date"}],Gl=[{label:"Total Sent",value:"12.4K",change:"This month",changeVariant:"success"},{label:"Avg. Open Rate",value:"64%",change:"+8% vs prior",changeVariant:"success"},{label:"Avg. Click Rate",value:"22%",change:"+3% vs prior",changeVariant:"success"},{label:"Active Automations",value:"7",change:"3 paused",changeVariant:"error"}];function sa({onSendNow:t,onSchedule:e,onSaveDraft:r,onNewCampaign:a,onGenerateWithAI:n,onTemplateClick:i,className:s}){let[l,c]=(0,Xt.useState)("campaigns"),[d,m]=(0,Xt.useState)(""),[p,b]=(0,Xt.useState)(""),[u,f]=(0,Xt.useState)(""),[w,h]=(0,Xt.useState)(!1),[g,S]=(0,Xt.useState)(""),N=(0,Xt.useMemo)(()=>{if(!d.trim())return Yn;let H=d.toLowerCase();return Yn.filter(Y=>Y.campaignName.toLowerCase().includes(H)||Y.recipients.toLowerCase().includes(H))},[d]),y=(0,Xt.useMemo)(()=>{if(!d.trim())return Xn;let H=d.toLowerCase();return Xn.filter(Y=>Y.title.toLowerCase().includes(H)||Y.category.toLowerCase().includes(H))},[d]),k=(0,Xt.useMemo)(()=>{if(!g.trim())return Zn;let H=g.toLowerCase();return Zn.filter(Y=>Y.toLowerCase().includes(H))},[g]),v=async()=>{h(!0),await new Promise(H=>setTimeout(H,1500)),f(Fl),h(!1)},x=()=>{t?.()},C=()=>{e?.()},M=()=>{r?.()},F=l==="campaigns"||l==="templates";return(0,K.jsx)("div",{className:o("flex min-h-screen flex-col bg-[var(--inkblot-semantic-color-background-primary)]",s),children:(0,K.jsxs)("div",{className:"flex flex-1 flex-col gap-[var(--inkblot-spacing-8)] px-[var(--inkblot-spacing-8)] py-[var(--inkblot-spacing-8)]",children:[(0,K.jsx)(Ue,{title:"Email Campaigns",subtitle:"Automate outreach \xB7 AI-powered templates",icon:(0,K.jsx)(Qn.Mail,{className:"h-5 w-5"}),action:(0,K.jsx)($e,{label:"New Campaign",onClick:()=>a?.()})}),(0,K.jsx)(Rr,{tabs:[{id:"campaigns",label:"Campaigns"},{id:"templates",label:"Templates"},{id:"compose",label:"Compose"}],activeTabId:l,onTabChange:c}),F?(0,K.jsx)(me,{placeholder:l==="campaigns"?"Search campaigns...":"Search templates...",value:d,onChange:H=>m(H.target.value)}):null,l==="campaigns"?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(Ar,{items:Gl}),(0,K.jsx)(wr,{columns:Vl,rows:N})]}):l==="templates"?(0,K.jsx)(Tr,{templates:y,onGenerateWithAI:n,onTemplateClick:i}):(0,K.jsxs)("div",{className:"flex max-w-2xl flex-col gap-[var(--inkblot-spacing-6)] rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-6)] shadow-[var(--inkblot-shadow-sm)]",children:[(0,K.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-6)]",children:[(0,K.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-2)]",children:[(0,K.jsx)("label",{className:"uppercase tracking-wider text-[var(--inkblot-semantic-color-text-primary)] [font:var(--inkblot-semantic-typography-body-small)]",children:"Subject"}),(0,K.jsx)(he,{type:"text",value:p,onChange:H=>b(H.target.value),placeholder:"Enter subject line..."})]}),(0,K.jsx)(sr,{label:"Body",value:u,onChange:H=>f(H.target.value),placeholder:"Compose your email or let AI generate content...",loading:w,onWriteWithAI:v}),(0,K.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-2)]",children:[(0,K.jsx)(me,{label:"Recipients",placeholder:"Search contacts, segments, or tags...",value:g,onChange:H=>S(H.target.value)}),k.length>0?(0,K.jsx)("ul",{className:"flex flex-wrap gap-[var(--inkblot-spacing-2)]",children:k.slice(0,5).map(H=>(0,K.jsx)("li",{className:o("rounded-[var(--inkblot-radius-md)]","bg-[var(--inkblot-semantic-color-background-secondary)]","px-[var(--inkblot-spacing-2)] py-[var(--inkblot-spacing-1)]","[font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-secondary)]"),children:H},H))}):null]})]}),(0,K.jsx)(hr,{onSendNow:x,onSchedule:C,onSaveDraft:M})]})]})})}var ut=require("react"),ei=require("react/jsx-runtime"),_r="citron-ui-theme",ti=(0,ut.createContext)(null);function Kl(){if(typeof window>"u")return null;try{let t=window.localStorage.getItem(_r);if(t==="light"||t==="dark")return t}catch{}return null}function Wl(){return typeof window>"u"?"light":window.matchMedia?.("(prefers-color-scheme: dark)").matches?"dark":"light"}function Jn(t){typeof document>"u"||document.documentElement.setAttribute("data-theme",t)}function la({children:t}){let[e,r]=(0,ut.useState)("light"),[a,n]=(0,ut.useState)(!1);(0,ut.useLayoutEffect)(()=>{if(typeof window>"u")return;let d=Kl()??Wl();r(d),Jn(d),n(!0)},[]),(0,ut.useEffect)(()=>{if(a&&(Jn(e),!(typeof window>"u")))try{window.localStorage.setItem(_r,e)}catch{}},[e,a]);let i=(0,ut.useCallback)(c=>{r(c)},[]),s=(0,ut.useCallback)(()=>{r(c=>c==="light"?"dark":"light")},[]),l=(0,ut.useMemo)(()=>({theme:e,setTheme:i,toggleTheme:s}),[e,i,s]);return(0,ei.jsx)(ti.Provider,{value:l,children:t})}function Ur(){let t=(0,ut.useContext)(ti);if(!t)throw new Error("useTheme must be used within a ThemeProvider");return t}var bo=require("lucide-react");var ca=require("react/jsx-runtime");function $r({className:t,type:e="button",...r}){let{theme:a,toggleTheme:n}=Ur(),i=a==="dark",s=i?bo.Sun:bo.Moon;return(0,ca.jsx)("button",{type:e,onClick:n,"aria-label":i?"Switch to light mode":"Switch to dark mode","aria-pressed":i,className:o("group relative inline-flex h-10 w-10 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-md)] border border-transparent","text-[var(--inkblot-semantic-color-text-tertiary)] transition-colors duration-[var(--inkblot-duration-fast)]","hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] hover:text-[var(--inkblot-semantic-color-text-primary)]","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--inkblot-semantic-color-border-focus)] focus-visible:ring-offset-2 focus-visible:ring-offset-[var(--inkblot-semantic-color-background-primary)]",t),...r,children:(0,ca.jsx)(s,{className:"h-[18px] w-[18px] shrink-0",strokeWidth:2,"aria-hidden":!0})})}var ri=require("react"),oi=require("react-router-dom");var ai=require("react/jsx-runtime"),uo=(0,ri.forwardRef)(({className:t,activeClassName:e,pendingClassName:r,...a},n)=>(0,ai.jsx)(oi.NavLink,{ref:n,className:({isActive:i,isPending:s})=>o(t,i&&e,s&&r),...a}));uo.displayName="NavLinkRouter";var Xe=require("react"),go=require("lucide-react");var I=require("react/jsx-runtime"),fo=o("min-h-[var(--inkblot-size-touch-target-min)] w-full rounded-[var(--inkblot-radius-md)]","border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-primary)]","px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","[font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-primary)] placeholder:text-[var(--inkblot-semantic-color-text-tertiary)]","transition-colors duration-[var(--inkblot-duration-fast)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)]"),Ie=o("[font:var(--inkblot-semantic-typography-body-small)] font-medium","text-[var(--inkblot-semantic-color-text-secondary)]"),ii="border-[var(--inkblot-semantic-color-status-error)]";function ni({items:t,value:e,onChange:r,placeholder:a,hasError:n,onCreateNew:i,createNewLabel:s}){let[l,c]=(0,Xe.useState)(""),[d,m]=(0,Xe.useState)(!1),p=(0,Xe.useRef)(null);(0,Xe.useEffect)(()=>{let f=w=>{p.current&&!p.current.contains(w.target)&&m(!1)};return document.addEventListener("mousedown",f),()=>document.removeEventListener("mousedown",f)},[]);let b=t.find(f=>f.id===e),u=t.filter(f=>f.name.toLowerCase().includes(l.toLowerCase()));return(0,I.jsxs)("div",{ref:p,className:"relative",children:[(0,I.jsx)("input",{type:"text",value:d?l:b?.name??"",onChange:f=>{c(f.target.value),d||m(!0)},onFocus:()=>{m(!0),c("")},placeholder:a,className:o(fo,n&&!e&&ii)}),d&&(0,I.jsxs)("div",{className:o("absolute z-50 mt-[var(--inkblot-spacing-1)] max-h-48 w-full overflow-auto","rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-primary)] shadow-[var(--inkblot-shadow-sm)]"),children:[u.map(f=>(0,I.jsx)("button",{type:"button",onClick:()=>{r(f.id),m(!1),c("")},className:o("w-full px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)] text-left","[font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-primary)]","transition-colors duration-[var(--inkblot-duration-fast)]","hover:bg-[var(--inkblot-semantic-color-background-tertiary)]",f.id===e&&"bg-[var(--inkblot-semantic-color-background-tertiary)]"),children:f.name},f.id)),u.length===0&&!i&&(0,I.jsx)("div",{className:o("px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)]","[font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-tertiary)]"),children:"No results"}),i&&u.length===0&&(0,I.jsxs)("button",{type:"button",onClick:()=>{i(),m(!1)},className:o("flex w-full items-center gap-[var(--inkblot-spacing-2)]","px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","[font:var(--inkblot-semantic-typography-body-small)] font-medium","text-[var(--inkblot-semantic-color-interactive-primary)]","transition-colors duration-[var(--inkblot-duration-fast)]","hover:bg-[var(--inkblot-semantic-color-background-tertiary)]"),children:[(0,I.jsx)(go.Plus,{className:"h-4 w-4"}),s??"Create new"]})]})]})}function vo({options:t,value:e,onChange:r,placeholder:a}){return(0,I.jsxs)("div",{className:"relative",children:[(0,I.jsxs)("select",{value:e,onChange:n=>r(n.target.value),className:o(fo,"appearance-none pr-[var(--inkblot-spacing-8)]"),children:[(0,I.jsx)("option",{value:"",children:a}),t.map(n=>(0,I.jsx)("option",{value:n,children:n},n))]}),(0,I.jsx)(go.ChevronDown,{className:o("pointer-events-none absolute right-[var(--inkblot-spacing-3)] top-1/2 h-4 w-4 -translate-y-1/2","text-[var(--inkblot-semantic-color-text-tertiary)]")})]})}var _l=["Bank Transfer","Credit Card","Cash","Check"],Ul=["VAT 21%","VAT 10%","VAT 0%","Exempt"],$l=["Standard","Proforma","Credit Note","Debit Note"],jl=["Main Account","Secondary Account"];function ko({clients:t,products:e,paymentMethods:r=_l,taxTypes:a=Ul,invoiceTypes:n=$l,bankAccounts:i=jl,value:s={},onChange:l,onCreateClient:c,attempted:d=!1,className:m}){let p=b=>l?.({...s,...b});return(0,I.jsxs)("div",{className:o("grid grid-cols-1 gap-[var(--inkblot-spacing-4)] md:grid-cols-2",m),children:[(0,I.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-2)]",children:[(0,I.jsx)("label",{className:Ie,children:"Client"}),(0,I.jsx)(ni,{items:t,value:s.clientId??"",onChange:b=>p({clientId:b}),placeholder:"Search client...",hasError:d,onCreateNew:c,createNewLabel:"+ Create new client"})]}),(0,I.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-2)]",children:[(0,I.jsx)("label",{className:Ie,children:"Product / Service"}),(0,I.jsx)(ni,{items:e,value:s.productId??"",onChange:b=>p({productId:b}),placeholder:"Search product...",hasError:d})]}),(0,I.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-2)]",children:[(0,I.jsx)("label",{className:Ie,children:"Quantity"}),(0,I.jsx)("input",{type:"number",min:1,value:s.quantity??"",onChange:b=>p({quantity:b.target.value===""?0:Number(b.target.value)}),placeholder:"1",className:o(fo,d&&!s.quantity&&ii)})]}),(0,I.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-2)]",children:[(0,I.jsx)("label",{className:Ie,children:"Payment Method"}),(0,I.jsx)(vo,{options:r,value:s.paymentMethod??"",onChange:b=>p({paymentMethod:b}),placeholder:"Select..."})]}),(0,I.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-2)]",children:[(0,I.jsx)("label",{className:Ie,children:"Tax Type"}),(0,I.jsx)(vo,{options:a,value:s.taxType??"",onChange:b=>p({taxType:b}),placeholder:"Select..."})]}),(0,I.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-2)]",children:[(0,I.jsx)("label",{className:Ie,children:"Invoice Type"}),(0,I.jsx)(vo,{options:n,value:s.invoiceType??"",onChange:b=>p({invoiceType:b}),placeholder:"Select..."})]}),(0,I.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-2)]",children:[(0,I.jsx)("label",{className:Ie,children:"Bank Account"}),(0,I.jsx)(vo,{options:i,value:s.bankAccount??"",onChange:b=>p({bankAccount:b}),placeholder:"Select..."})]}),(0,I.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-2)] md:col-span-2",children:[(0,I.jsx)("label",{className:Ie,children:"Notes"}),(0,I.jsx)("textarea",{value:s.notes??"",onChange:b=>p({notes:b.target.value}),rows:3,placeholder:"Additional notes...",className:o(fo,"resize-y")})]})]})}var it=require("react/jsx-runtime");function pe({label:t,value:e}){return(0,it.jsxs)("div",{className:"flex items-baseline justify-between border-b border-[var(--inkblot-semantic-color-border-default)] py-[var(--inkblot-spacing-2)]",children:[(0,it.jsx)("span",{className:"[font:var(--inkblot-semantic-typography-body-small)] text-[var(--inkblot-semantic-color-text-tertiary)]",children:t}),(0,it.jsx)("span",{className:"[font:var(--inkblot-semantic-typography-body-small)] text-[var(--inkblot-semantic-color-text-primary)]",children:e||"\u2014"})]})}function yo({data:t,clients:e,products:r,className:a}){let n=e.find(d=>d.id===t.clientId),i=r.find(d=>d.id===t.productId),s=t.quantity??0,l=i?.unitPrice??0,c=s*l;return(0,it.jsxs)("div",{className:o("rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] p-[var(--inkblot-spacing-6)]",a),children:[(0,it.jsx)("h3",{className:"mb-[var(--inkblot-spacing-4)] [font:var(--inkblot-semantic-typography-heading-4)] text-[var(--inkblot-semantic-color-text-primary)]",children:"Preview"}),(0,it.jsxs)("div",{className:"space-y-0",children:[(0,it.jsx)(pe,{label:"Client",value:n?.name??""}),(0,it.jsx)(pe,{label:"Product",value:i?.name??""}),(0,it.jsx)(pe,{label:"Quantity",value:s?String(s):""}),l>0&&(0,it.jsx)(pe,{label:"Unit price",value:`$${l.toFixed(2)}`}),c>0&&(0,it.jsx)(pe,{label:"Subtotal",value:`$${c.toFixed(2)}`}),(0,it.jsx)(pe,{label:"Payment",value:t.paymentMethod??""}),(0,it.jsx)(pe,{label:"Tax",value:t.taxType??""}),(0,it.jsx)(pe,{label:"Type",value:t.invoiceType??""}),(0,it.jsx)(pe,{label:"Bank",value:t.bankAccount??""})]}),t.notes&&(0,it.jsx)("p",{className:"mt-[var(--inkblot-spacing-4)] [font:var(--inkblot-semantic-typography-body-small)] text-[var(--inkblot-semantic-color-text-secondary)]",children:t.notes})]})}var da=require("react"),si=require("lucide-react");var re=require("react/jsx-runtime");function li({clients:t,products:e,onSubmit:r,onCreateClient:a,isSubmitting:n=!1,className:i,...s}){let[l,c]=(0,da.useState)({}),[d,m]=(0,da.useState)(!1);return(0,re.jsxs)("form",{onSubmit:b=>{b.preventDefault(),m(!0),!(!l.clientId||!l.productId||!l.quantity)&&r?.({clientId:l.clientId,productId:l.productId,quantity:l.quantity,paymentMethod:l.paymentMethod??"",taxType:l.taxType??"",invoiceType:l.invoiceType??"",bankAccount:l.bankAccount??"",notes:l.notes??""})},className:o("rounded-[var(--inkblot-radius-xl)] bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-6)]",i),children:[(0,re.jsx)("h2",{className:"mb-[var(--inkblot-spacing-6)] [font:var(--inkblot-semantic-typography-heading-4)] text-[var(--inkblot-semantic-color-text-primary)]",children:"New Invoice"}),(0,re.jsxs)("div",{className:"grid grid-cols-1 gap-[var(--inkblot-spacing-6)] lg:grid-cols-[1fr_20rem]",children:[(0,re.jsx)(ko,{clients:t,products:e,value:l,onChange:c,onCreateClient:a,attempted:d,...s}),(0,re.jsx)(yo,{data:l,clients:t,products:e})]}),(0,re.jsx)("div",{className:"mt-[var(--inkblot-spacing-6)] flex justify-end",children:(0,re.jsxs)("button",{type:"submit",disabled:n,className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center gap-[var(--inkblot-spacing-2)]","rounded-[var(--inkblot-radius-lg)]","bg-[var(--inkblot-semantic-color-interactive-primary)]","px-[var(--inkblot-spacing-6)] py-[var(--inkblot-spacing-2)]","[font:var(--inkblot-semantic-typography-body-small)] font-medium","text-[var(--inkblot-semantic-color-text-inverse)]","transition-colors duration-[var(--inkblot-duration-fast)]","hover:bg-[var(--inkblot-semantic-color-interactive-primary-hover)]","active:bg-[var(--inkblot-semantic-color-interactive-primary-active)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)]","disabled:opacity-[var(--inkblot-opacity-disabled)] disabled:cursor-not-allowed"),children:[n&&(0,re.jsx)(si.Loader2,{className:"h-4 w-4 animate-spin"}),"Create Invoice"]})})]})}var xo=require("react"),ci=require("lucide-react");var Le=require("react/jsx-runtime");function di({items:t,defaultValue:e,allowMultiple:r=!1,className:a}){let n=(0,xo.useMemo)(()=>new Set(e??[]),[e]),[i,s]=(0,xo.useState)(n),l=c=>{s(d=>{let m=new Set(d);return m.has(c)?(m.delete(c),m):r?(m.add(c),m):new Set([c])})};return(0,Le.jsx)("div",{className:o("w-full overflow-hidden rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)]",a),children:t.map((c,d)=>{let m=i.has(c.id);return(0,Le.jsxs)("div",{className:o(d!==0&&"border-t border-[var(--inkblot-semantic-color-border-default)]"),children:[(0,Le.jsxs)("button",{type:"button",disabled:c.disabled,"aria-expanded":m,onClick:()=>l(c.id),className:o("flex min-h-[var(--inkblot-size-touch-target-min)] w-full items-center justify-between gap-[var(--inkblot-spacing-3)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)] text-left text-[var(--inkblot-semantic-color-text-primary)] transition-colors duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)]",c.disabled?"cursor-not-allowed opacity-[var(--inkblot-opacity-disabled)]":"hover:bg-[var(--inkblot-semantic-color-background-tertiary)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--inkblot-semantic-color-border-focus)] focus-visible:outline-offset-[-2px]"),children:[(0,Le.jsx)("span",{className:"font-medium",children:c.title}),(0,Le.jsx)(ci.ChevronDown,{className:o("h-4 w-4 shrink-0 text-[var(--inkblot-semantic-color-text-tertiary)] transition-transform duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)]",m&&"rotate-180")})]}),m&&(0,Le.jsx)("div",{className:"px-[var(--inkblot-spacing-4)] pb-[var(--inkblot-spacing-4)] text-sm text-[var(--inkblot-semantic-color-text-secondary)]",children:c.content})]},c.id)})})}var et=require("react"),Ae=require("lucide-react");var $=require("react/jsx-runtime");function mi({options:t=[],loadOptions:e,value:r,defaultValue:a,onChange:n,placeholder:i="Select an option",searchPlaceholder:s="Search...",emptyMessage:l="No results found",loadingMessage:c="Loading...",clearable:d=!1,disabled:m=!1,className:p}){let b=r!==void 0,[u,f]=(0,et.useState)(a??null),w=b?r:u,[h,g]=(0,et.useState)(!1),[S,N]=(0,et.useState)(""),[y,k]=(0,et.useState)(-1),[v,x]=(0,et.useState)([]),[C,M]=(0,et.useState)(!1),F=(0,et.useRef)(null),H=(0,et.useRef)(0),Y=e!==void 0,B=Y?v:t,U=(0,et.useRef)(null),z=(0,et.useRef)(null),tt=(0,et.useRef)(null);(0,et.useEffect)(()=>{if(!(!Y||!h))return F.current&&clearTimeout(F.current),F.current=setTimeout(()=>{let T=++H.current;M(!0),e(S).then(ft=>{T===H.current&&(x(ft),M(!1),k(-1))}).catch(()=>{T===H.current&&(x([]),M(!1))})},250),()=>{F.current&&clearTimeout(F.current)}},[S,h,Y,e]);let bt=Y?B:B.filter(T=>T.label.toLowerCase().includes(S.toLowerCase())),ar=B.find(T=>T.value===w)??(Y?t.find(T=>T.value===w):void 0),nr=(0,et.useCallback)(T=>{b||f(T),n?.(T),g(!1),N(""),k(-1)},[b,n]);(0,et.useEffect)(()=>{if(!h)return;let T=ft=>{U.current&&!U.current.contains(ft.target)&&(g(!1),N(""),k(-1))};return document.addEventListener("mousedown",T),()=>document.removeEventListener("mousedown",T)},[h]),(0,et.useEffect)(()=>{h&&tt.current?.focus()},[h]),(0,et.useEffect)(()=>{if(y<0||!z.current)return;z.current.querySelectorAll("[data-option]")[y]?.scrollIntoView({block:"nearest"})},[y]);let Go=T=>{if(!h){(T.key==="Enter"||T.key===" "||T.key==="ArrowDown")&&(T.preventDefault(),g(!0));return}switch(T.key){case"ArrowDown":{T.preventDefault(),k(ft=>{let ct=ft+1;for(;ct<bt.length&&bt[ct].disabled;)ct++;return ct<bt.length?ct:ft});break}case"ArrowUp":{T.preventDefault(),k(ft=>{let ct=ft-1;for(;ct>=0&&bt[ct].disabled;)ct--;return ct>=0?ct:ft});break}case"Enter":{T.preventDefault(),y>=0&&y<bt.length&&!bt[y].disabled&&nr(bt[y].value);break}case"Escape":{T.preventDefault(),g(!1),N(""),k(-1);break}}};return(0,$.jsxs)("div",{ref:U,className:o("relative w-full",p),onKeyDown:Go,children:[(0,$.jsxs)("button",{type:"button",disabled:m,"aria-expanded":h,"aria-haspopup":"listbox",onClick:()=>{m||g(T=>!T)},className:o("flex min-h-[var(--inkblot-size-touch-target-min)] w-full items-center justify-between gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-md)] border px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","bg-[var(--inkblot-semantic-color-background-secondary)] text-[var(--inkblot-semantic-color-text-primary)]","transition-[border-color,box-shadow] duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)]","border-[var(--inkblot-semantic-color-border-default)] hover:border-[var(--inkblot-semantic-color-border-strong)]","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--inkblot-semantic-color-border-focus)] focus-visible:ring-offset-2 focus-visible:ring-offset-[var(--inkblot-semantic-color-background-primary)]",m&&"pointer-events-none cursor-not-allowed opacity-[var(--inkblot-opacity-disabled)]"),children:[(0,$.jsx)("span",{className:o("truncate text-left",!ar&&"text-[var(--inkblot-semantic-color-text-tertiary)]"),children:ar?ar.label:i}),(0,$.jsxs)("span",{className:"flex shrink-0 items-center gap-[var(--inkblot-spacing-1)]",children:[d&&ar&&(0,$.jsx)("span",{role:"button",tabIndex:0,"aria-label":"Clear selection",onClick:T=>{T.stopPropagation(),nr(null)},onKeyDown:T=>{T.key==="Enter"&&(T.stopPropagation(),nr(null))},className:o("flex items-center justify-center rounded-[var(--inkblot-radius-sm)] p-[var(--inkblot-spacing-1)]","text-[var(--inkblot-semantic-color-text-tertiary)] hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] hover:text-[var(--inkblot-semantic-color-text-primary)]","transition-colors duration-[var(--inkblot-duration-fast)]"),children:(0,$.jsx)(Ae.X,{className:"size-3.5"})}),(0,$.jsx)(Ae.ChevronDown,{"aria-hidden":!0,className:o("size-4 text-[var(--inkblot-semantic-color-text-tertiary)] transition-transform duration-[var(--inkblot-duration-fast)]",h&&"rotate-180")})]})]}),(0,$.jsxs)("div",{className:o("absolute left-0 top-full z-50 mt-[var(--inkblot-spacing-1)] w-full overflow-hidden rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] shadow-[var(--inkblot-shadow-md)]","transition-[opacity,transform] duration-[var(--inkblot-duration-normal)] ease-[var(--inkblot-easing-default)]","origin-top",h?"pointer-events-auto scale-y-100 opacity-100":"pointer-events-none scale-y-95 opacity-0"),children:[(0,$.jsx)("div",{className:"border-b border-[var(--inkblot-semantic-color-border-default)] p-[var(--inkblot-spacing-2)]",children:(0,$.jsxs)("div",{className:"flex items-center gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-sm)] bg-[var(--inkblot-semantic-color-background-tertiary)] px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-1)]",children:[(0,$.jsx)(Ae.Search,{className:"size-3.5 shrink-0 text-[var(--inkblot-semantic-color-text-tertiary)]"}),(0,$.jsx)("input",{ref:tt,type:"text",value:S,onChange:T=>{N(T.target.value),k(-1)},placeholder:s,className:"w-full bg-transparent py-[var(--inkblot-spacing-1)] text-sm text-[var(--inkblot-semantic-color-text-primary)] placeholder:text-[var(--inkblot-semantic-color-text-tertiary)] focus:outline-none"})]})}),(0,$.jsx)("ul",{ref:z,role:"listbox",className:"max-h-60 overflow-y-auto p-[var(--inkblot-spacing-1)]",children:C?(0,$.jsxs)("li",{className:"flex items-center justify-center gap-[var(--inkblot-spacing-2)] px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-4)] text-sm text-[var(--inkblot-semantic-color-text-tertiary)]",children:[(0,$.jsx)(Ae.Loader2,{className:"size-4 animate-spin","aria-hidden":!0}),c]}):bt.length===0?(0,$.jsx)("li",{className:"px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-4)] text-center text-sm text-[var(--inkblot-semantic-color-text-tertiary)]",children:l}):bt.map((T,ft)=>{let ct=T.value===w,Jr=ft===y;return(0,$.jsxs)("li",{role:"option","data-option":!0,"aria-selected":ct,"aria-disabled":T.disabled,onClick:()=>{T.disabled||nr(T.value)},onMouseEnter:()=>{T.disabled||k(ft)},className:o("flex cursor-pointer items-center gap-[var(--inkblot-spacing-3)] rounded-[var(--inkblot-radius-sm)] px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-2)]","transition-colors duration-[var(--inkblot-duration-fast)]",Jr&&!T.disabled&&"bg-[var(--inkblot-semantic-color-interactive-secondary-hover)]",ct&&"bg-[var(--inkblot-semantic-color-interactive-secondary)]",T.disabled&&"pointer-events-none cursor-not-allowed opacity-[var(--inkblot-opacity-disabled)]"),children:[T.icon&&(0,$.jsx)("span",{className:"flex size-5 shrink-0 items-center justify-center text-[var(--inkblot-semantic-color-text-secondary)]",children:T.icon}),(0,$.jsxs)("span",{className:"flex min-w-0 flex-1 flex-col",children:[(0,$.jsx)("span",{className:"truncate text-sm text-[var(--inkblot-semantic-color-text-primary)]",children:T.label}),T.description&&(0,$.jsx)("span",{className:"truncate text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:T.description})]})]},T.value)})})]})]})}var De=require("lucide-react");var Ze=require("react/jsx-runtime"),ql={info:"border-[var(--inkblot-semantic-color-status-info)] bg-[var(--inkblot-semantic-color-status-info)]/10 text-[var(--inkblot-semantic-color-text-primary)]",success:"border-[var(--inkblot-semantic-color-status-success)] bg-[var(--inkblot-semantic-color-status-success)]/10 text-[var(--inkblot-semantic-color-text-primary)]",warning:"border-[var(--inkblot-semantic-color-status-warning)] bg-[var(--inkblot-semantic-color-status-warning)]/10 text-[var(--inkblot-semantic-color-text-primary)]",error:"border-[var(--inkblot-semantic-color-status-error)] bg-[var(--inkblot-semantic-color-status-error)]/10 text-[var(--inkblot-semantic-color-text-primary)]"},Yl={info:De.Info,success:De.CheckCircle2,warning:De.AlertTriangle,error:De.AlertCircle};function pi({title:t,description:e,variant:r="info",className:a}){let n=Yl[r];return(0,Ze.jsxs)("div",{role:"alert",className:o("flex w-full items-start gap-[var(--inkblot-spacing-3)] rounded-[var(--inkblot-radius-lg)] border px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)]",ql[r],a),children:[(0,Ze.jsx)(n,{className:"mt-0.5 h-4 w-4 shrink-0"}),(0,Ze.jsxs)("div",{className:"flex min-w-0 flex-col gap-[var(--inkblot-spacing-1)]",children:[(0,Ze.jsx)("div",{className:"font-semibold",children:t}),e&&(0,Ze.jsx)("div",{className:"text-sm text-[var(--inkblot-semantic-color-text-secondary)]",children:e})]})]})}var _t=require("react"),bi=require("lucide-react");var Dt=require("react/jsx-runtime");function ui({open:t,title:e,description:r,confirmLabel:a="Confirm",cancelLabel:n="Cancel",destructive:i=!1,confirmDisabled:s=!1,closeOnConfirm:l=!0,initialFocusRef:c,onOpenChange:d,onConfirm:m,onCancel:p,className:b}){let u=(0,_t.useRef)(null),f=(0,_t.useRef)(null),w=(0,_t.useRef)(null),h=(0,_t.useId)(),g=(0,_t.useId)(),S=(0,_t.useCallback)(()=>{p?.(),d?.(!1)},[p,d]),N=(0,_t.useCallback)(()=>{m?.(),l&&d?.(!1)},[l,m,d]);return(0,_t.useEffect)(()=>{if(!t)return;w.current=document.activeElement instanceof HTMLElement?document.activeElement:null,(c?.current??f.current??u.current)?.focus();let k=v=>{v.key==="Escape"&&S()};return window.addEventListener("keydown",k),()=>{window.removeEventListener("keydown",k),w.current?.focus()}},[S,c,t]),t?(0,Dt.jsx)("div",{className:"fixed inset-0 z-50 grid place-items-center bg-[var(--inkblot-semantic-color-background-primary)]/70 px-[var(--inkblot-spacing-4)]",onClick:S,children:(0,Dt.jsxs)("div",{role:"alertdialog","aria-modal":"true","aria-labelledby":h,"aria-describedby":r?g:void 0,tabIndex:-1,ref:u,onClick:y=>y.stopPropagation(),className:o("w-full max-w-[520px] rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-6)] text-[var(--inkblot-semantic-color-text-primary)] shadow-lg",b),children:[(0,Dt.jsxs)("div",{className:"mb-[var(--inkblot-spacing-4)] flex items-start gap-[var(--inkblot-spacing-3)]",children:[(0,Dt.jsx)("div",{className:o("mt-0.5 rounded-[var(--inkblot-radius-full)] p-[var(--inkblot-spacing-2)]",i?"bg-[var(--inkblot-semantic-color-status-error)]/15 text-[var(--inkblot-semantic-color-status-error)]":"bg-[var(--inkblot-semantic-color-status-warning)]/15 text-[var(--inkblot-semantic-color-status-warning)]"),children:(0,Dt.jsx)(bi.AlertTriangle,{className:"h-5 w-5"})}),(0,Dt.jsxs)("div",{className:"flex-1",children:[(0,Dt.jsx)("h2",{id:h,className:"text-lg font-semibold",children:e}),r&&(0,Dt.jsx)("p",{id:g,className:"mt-[var(--inkblot-spacing-2)] text-sm text-[var(--inkblot-semantic-color-text-secondary)]",children:r})]})]}),(0,Dt.jsxs)("div",{className:"flex flex-wrap justify-end gap-[var(--inkblot-spacing-2)]",children:[(0,Dt.jsx)("button",{type:"button",ref:f,onClick:S,className:"inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-interactive-secondary)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)] font-medium text-[var(--inkblot-semantic-color-text-primary)] transition-colors duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)] hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] active:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)]",children:n}),(0,Dt.jsx)("button",{type:"button",disabled:s,onClick:N,className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)] font-medium text-[var(--inkblot-semantic-color-text-inverse)] transition-colors duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)] disabled:cursor-not-allowed disabled:opacity-[var(--inkblot-opacity-disabled)]",i?"bg-[var(--inkblot-semantic-color-status-error)] hover:bg-[var(--inkblot-semantic-color-status-error)]/85 active:bg-[var(--inkblot-semantic-color-status-error)]/80":"bg-[var(--inkblot-semantic-color-interactive-primary)] hover:bg-[var(--inkblot-semantic-color-interactive-primary-hover)] active:bg-[var(--inkblot-semantic-color-interactive-primary-active)]"),children:a})]})]})}):null}var Re=require("react"),Qe=require("lucide-react");var J=require("react/jsx-runtime"),Xl=["Write a product launch announcement for a SaaS tool","Create a re-engagement email for churned users","Draft a welcome email for new customers","Write a quarterly business review summary","Create a seasonal promotion email with urgency"];function Zl({value:t,defaultValue:e="",onValueChange:r,isGenerating:a,onGeneratingChange:n,generated:i,onGeneratedChange:s,generationDelayMs:l=1500,onSubmitPrompt:c,generateBlocks:d,onGenerate:m,suggestions:p=Xl,className:b}){let[u,f]=(0,Re.useState)(e),[w,h]=(0,Re.useState)(!1),[g,S]=(0,Re.useState)(!1),N=(0,Re.useRef)(null),y=t!==void 0,k=y?t:u,v=a!==void 0,x=v?a:w,C=i!==void 0,M=C?i:g,F=z=>{y||f(z),r?.(z)},H=z=>{v||h(z),n?.(z)},Y=z=>{C||S(z),s?.(z)};(0,Re.useEffect)(()=>()=>{N.current!==null&&window.clearTimeout(N.current)},[]);let B=z=>{let tt=Date.now();return[{id:`ai-${tt}-1`,type:"heading",content:"Exciting News from Our Team"},{id:`ai-${tt}-2`,type:"text",content:`Generated from prompt: ${z}`},{id:`ai-${tt}-3`,type:"image",content:""},{id:`ai-${tt}-4`,type:"text",content:"Our latest updates are designed to help you achieve more with less effort. We've built these improvements with your feedback in mind."},{id:`ai-${tt}-5`,type:"button",content:"Learn More"},{id:`ai-${tt}-6`,type:"divider",content:""},{id:`ai-${tt}-7`,type:"text",content:`Best regards,
21
- The Team`}]},U=async()=>{let z=k.trim();if(!z||x)return;c?.(z),H(!0);let tt;d?tt=await Promise.resolve(d(z)):(await new Promise(bt=>{window.setTimeout(()=>bt(),l)}),tt=B(z)),m?.(tt),H(!1),Y(!0),N.current=window.setTimeout(()=>Y(!1),1800)};return(0,J.jsxs)("section",{className:o(b),children:[(0,J.jsxs)("div",{className:"mb-2 flex items-center gap-2",children:[(0,J.jsx)(Qe.Sparkles,{className:"h-4 w-4 text-[var(--inkblot-semantic-color-status-warning)]"}),(0,J.jsx)("span",{className:"text-xs font-medium text-[var(--inkblot-semantic-color-text-primary)]",children:"AI Email Generator"})]}),(0,J.jsxs)("div",{className:"space-y-3",children:[(0,J.jsx)("textarea",{value:k,onChange:z=>F(z.target.value),rows:3,placeholder:"Describe the email you want to create...",className:"w-full resize-none rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] px-4 py-3 text-sm text-[var(--inkblot-semantic-color-text-primary)] placeholder:text-[var(--inkblot-semantic-color-text-tertiary)] outline-none"}),(0,J.jsx)("div",{className:"flex flex-wrap gap-1.5",children:p.map(z=>(0,J.jsx)("button",{type:"button",onClick:()=>F(z),className:"rounded-[var(--inkblot-radius-sm)] bg-[var(--inkblot-semantic-color-interactive-secondary)] px-2.5 py-1 text-[10px] text-[var(--inkblot-semantic-color-text-primary)] transition-opacity duration-[var(--inkblot-duration-fast)] hover:opacity-85",children:z},z))}),(0,J.jsx)("button",{type:"button",onClick:U,disabled:!k.trim()||x,className:"flex items-center gap-2 rounded-[var(--inkblot-radius-md)] bg-[var(--inkblot-semantic-color-status-warning)]/10 px-4 py-2 text-xs font-medium text-[var(--inkblot-semantic-color-status-warning)] transition-opacity duration-[var(--inkblot-duration-fast)] disabled:opacity-40",children:x?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(Qe.Loader2,{className:"h-3 w-3 animate-spin"}),"Generating..."]}):M?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(Qe.Check,{className:"h-3 w-3"}),"Applied to editor"]}):(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(Qe.Sparkles,{className:"h-3 w-3"}),"Generate Email"]})})]})]})}var Et=require("lucide-react");var ur=require("react/jsx-runtime");function ho({label:t,icon:e,active:r=!1,onClick:a,title:n,dataTour:i,className:s}){return(0,ur.jsxs)("button",{type:"button",onClick:a,"data-tour":i,className:o("group relative flex h-10 w-10 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-md)] border border-transparent transition-colors duration-[var(--inkblot-duration-fast)]",r?"bg-[var(--inkblot-semantic-color-interactive-secondary)] text-[var(--inkblot-semantic-color-text-primary)]":"text-[var(--inkblot-semantic-color-text-tertiary)] hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] hover:text-[var(--inkblot-semantic-color-text-primary)]",s),title:n??t,"aria-current":r?"page":void 0,"aria-label":t,children:[(0,ur.jsx)(e,{className:"h-[18px] w-[18px]","aria-hidden":!0}),r?(0,ur.jsx)("span",{className:"absolute left-0 top-1/2 h-4 w-[2px] -translate-y-1/2 rounded-r bg-[var(--inkblot-semantic-color-interactive-primary)]"}):null,(0,ur.jsx)("span",{className:"pointer-events-none absolute left-full z-50 ml-3 whitespace-nowrap rounded-[var(--inkblot-radius-sm)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] px-2 py-1 text-xs font-medium text-[var(--inkblot-semantic-color-text-primary)] opacity-0 transition-opacity duration-[var(--inkblot-duration-fast)] group-hover:opacity-100",children:t})]})}var Rt=require("react/jsx-runtime"),Ql=[{id:"canvas",icon:Et.MessageSquare,label:"Canvas",path:"/",dataTour:"nav-canvas"},{id:"invoices",icon:Et.FileText,label:"Invoices & Deals",path:"/invoices",dataTour:"nav-invoices"},{id:"contacts",icon:Et.Users,label:"Contacts",path:"/contacts",dataTour:"nav-contacts"},{id:"campaigns",icon:Et.Mail,label:"Campaigns",path:"/campaigns",dataTour:"nav-campaigns"},{id:"tasks",icon:Et.CheckSquare,label:"Tasks",path:"/tasks",dataTour:"nav-tasks"}],Jl=[{id:"settings",icon:Et.Settings,label:"Settings",path:"/settings",dataTour:"nav-settings"}];function ma({items:t=Ql,bottomItems:e=Jl,activePath:r="/",onNavigate:a,logo:n,showStatusDot:i=!0,showThemeToggle:s=!0,className:l}){return(0,Rt.jsxs)("aside",{"data-tour":"sidebar",className:o("flex h-full w-16 flex-col items-center gap-1 border-r border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] py-4",l),children:[(0,Rt.jsx)("div",{className:"mb-6 flex h-9 w-9 items-center justify-center rounded-[var(--inkblot-radius-md)] bg-[var(--inkblot-semantic-color-interactive-primary)]",children:n??(0,Rt.jsx)(Et.Command,{className:"h-4 w-4 text-[var(--inkblot-semantic-color-text-inverse)]","aria-hidden":!0})}),(0,Rt.jsx)("nav",{className:"hide-scrollbar flex flex-1 flex-col gap-1 overflow-y-auto",children:t.map(c=>(0,Rt.jsx)(ho,{label:c.label,icon:c.icon,active:c.path===r,onClick:()=>a?.(c.path),dataTour:c.dataTour},c.id))}),(0,Rt.jsxs)("div",{className:"flex flex-col gap-1",children:[e.map(c=>(0,Rt.jsx)(ho,{label:c.label,icon:c.icon,active:c.path===r,onClick:()=>a?.(c.path),dataTour:c.dataTour},c.id)),s?(0,Rt.jsxs)("div",{className:"group relative flex justify-center",children:[(0,Rt.jsx)($r,{}),(0,Rt.jsx)("span",{className:"pointer-events-none absolute left-full z-50 ml-3 whitespace-nowrap rounded-[var(--inkblot-radius-sm)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] px-2 py-1 text-xs font-medium text-[var(--inkblot-semantic-color-text-primary)] opacity-0 transition-opacity duration-[var(--inkblot-duration-fast)] group-hover:opacity-100",children:"Theme"})]}):null,i?(0,Rt.jsx)("span",{"data-tour":"system-status",className:"mx-auto mt-2 h-2 w-2 animate-pulse rounded-full bg-[var(--inkblot-semantic-color-status-success)]",title:"System Online"}):null]})]})}var Ht=require("lucide-react");var mt=require("react/jsx-runtime"),tc=[{id:1,icon:Ht.Mail,title:"Email opened",meta:"Jane Smith \xB7 Acme Corp",time:"2m ago",status:"info"},{id:2,icon:Ht.CreditCard,title:"Invoice #1042 paid",meta:"$24,500 \xB7 TechVentures",time:"8m ago",status:"success"},{id:3,icon:Ht.Zap,title:"Pipeline stage changed",meta:"Negotiation \u2192 Closing",time:"14m ago",status:"warning"},{id:4,icon:Ht.Phone,title:"Call completed",meta:"12 min \xB7 Mark Johnson",time:"23m ago",status:"info"},{id:5,icon:Ht.FileText,title:"Contract signed",meta:"NDA \xB7 GlobalTech Inc",time:"1h ago",status:"success"},{id:6,icon:Ht.GitBranch,title:"New relationship detected",meta:"Acme \u2194 DataFlow Labs",time:"2h ago",status:"info"},{id:7,icon:Ht.CreditCard,title:"Invoice overdue",meta:"$8,200 \xB7 StartupXYZ",time:"3h ago",status:"danger"}],ec={success:"bg-[var(--inkblot-semantic-color-status-success)]",warning:"bg-[var(--inkblot-semantic-color-status-warning)]",error:"bg-[var(--inkblot-semantic-color-status-error)]",danger:"bg-[var(--inkblot-semantic-color-status-error)]",info:"bg-[var(--inkblot-semantic-color-status-info)]"};function pa({title:t="Event Stream",liveLabel:e="Live",events:r=tc,onItemClick:a,className:n}){return(0,mt.jsxs)("section",{className:o("p-4",n),children:[(0,mt.jsxs)("header",{className:"mb-4 flex items-center justify-between",children:[(0,mt.jsx)("h3",{className:"text-xs font-medium uppercase tracking-wide text-[var(--inkblot-semantic-color-text-tertiary)]",children:t}),(0,mt.jsx)("span",{className:"text-[10px] font-medium text-[var(--inkblot-semantic-color-text-tertiary)]",children:e})]}),(0,mt.jsx)("ul",{className:"space-y-1",children:r.map(i=>{let s=i.icon;return(0,mt.jsx)("li",{children:(0,mt.jsxs)("button",{type:"button",onClick:()=>a?.(i),className:"group flex w-full items-start gap-3 rounded-[var(--inkblot-radius-md)] px-2.5 py-2.5 text-left transition-colors duration-[var(--inkblot-duration-fast)] hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)]",children:[(0,mt.jsx)("span",{className:"mt-0.5 flex h-7 w-7 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-sm)] bg-[var(--inkblot-semantic-color-background-tertiary)]",children:(0,mt.jsx)(s,{className:"h-3.5 w-3.5 text-[var(--inkblot-semantic-color-text-tertiary)] group-hover:text-[var(--inkblot-semantic-color-text-secondary)]","aria-hidden":!0})}),(0,mt.jsxs)("span",{className:"min-w-0 flex-1",children:[(0,mt.jsxs)("span",{className:"flex items-center gap-2",children:[(0,mt.jsx)("span",{className:o("h-1.5 w-1.5 shrink-0 rounded-full",ec[i.status])}),(0,mt.jsx)("span",{className:"truncate text-xs font-medium text-[var(--inkblot-semantic-color-text-primary)]",children:i.title})]}),(0,mt.jsx)("span",{className:"mt-0.5 block truncate text-[10px] text-[var(--inkblot-semantic-color-text-tertiary)]",children:i.meta})]}),(0,mt.jsx)("span",{className:"mt-0.5 shrink-0 text-[10px] text-[var(--inkblot-semantic-color-text-tertiary)]",children:i.time})]})},i.id)})})]})}var be=require("react"),gi=require("react/jsx-runtime"),vi=(0,be.createContext)(null);function fi(){let t=(0,be.useContext)(vi);if(!t)throw new Error("useCanvas must be used within a CanvasProvider");return t}var rc=[{id:"welcome-1",type:"text",content:"Welcome to Citron OS. Use the AI chat on the right to interact with your revenue engine."},{id:"welcome-2",type:"entity"},{id:"welcome-3",type:"intelligence"}];function No({children:t,initialBlocks:e=rc}){let[r,a]=(0,be.useState)(e),n=(0,be.useCallback)(s=>{a(l=>[...l,...s])},[]),i=(0,be.useCallback)(()=>{a([])},[]);return(0,gi.jsx)(vi.Provider,{value:{blocks:r,addBlocks:n,clearBlocks:i},children:t})}var ue=require("react/jsx-runtime");function oc({children:t,showEventFeed:e=!1,sidebarProps:r,eventFeedProps:a,canvasProviderProps:n,className:i}){let s=(0,ue.jsxs)("div",{className:o("flex h-screen w-full overflow-hidden bg-[var(--inkblot-semantic-color-background-primary)]",i),children:[(0,ue.jsx)(ma,{...r}),(0,ue.jsxs)("main",{className:"flex flex-1 overflow-hidden",children:[(0,ue.jsx)("section",{"data-tour":"canvas",className:"hide-scrollbar flex-1 overflow-y-auto",children:t}),e&&(0,ue.jsx)("aside",{"data-tour":"event-feed",className:"flex w-80 flex-col overflow-hidden border-l border-[var(--inkblot-semantic-color-border-default)]",children:(0,ue.jsx)(pa,{...a})})]})]});return n?(0,ue.jsx)(No,{...n,children:s}):s}var jr=require("react/jsx-runtime");function ki({ratio:t=16/9,children:e,className:r}){let a=Number.isFinite(t)&&t>0?t:1.7777777777777777;return(0,jr.jsxs)("div",{className:o("relative w-full overflow-hidden",r),children:[(0,jr.jsx)("div",{style:{paddingTop:`${1/a*100}%`}}),(0,jr.jsx)("div",{className:"absolute inset-0",children:e})]})}var xi=require("react/jsx-runtime"),ac={default:"bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]",secondary:"bg-[var(--inkblot-semantic-color-background-tertiary)] text-[var(--inkblot-semantic-color-text-primary)]",success:"bg-[var(--inkblot-semantic-color-status-success)]/15 text-[var(--inkblot-semantic-color-status-success)]",warning:"bg-[var(--inkblot-semantic-color-status-warning)]/15 text-[var(--inkblot-semantic-color-status-warning)]",error:"bg-[var(--inkblot-semantic-color-status-error)]/15 text-[var(--inkblot-semantic-color-status-error)]",outline:"border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] text-[var(--inkblot-semantic-color-text-primary)]"};function yi({children:t,variant:e="default",disabled:r=!1,className:a}){return(0,xi.jsx)("span",{"aria-disabled":r,className:o("inline-flex min-h-[calc(var(--inkblot-size-touch-target-min)-1rem)] items-center justify-center rounded-[var(--inkblot-radius-full)] px-[var(--inkblot-spacing-2)] py-[var(--inkblot-spacing-1)] text-xs font-semibold transition-colors duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)]",ac[e],r&&"opacity-[var(--inkblot-opacity-disabled)]",a),children:t})}var hi=require("lucide-react");var He=require("react/jsx-runtime");function Ni({items:t,className:e}){return(0,He.jsx)("nav",{"aria-label":"Breadcrumb",className:o("w-full",e),children:(0,He.jsx)("ol",{className:"flex flex-wrap items-center gap-[var(--inkblot-spacing-2)]",children:t.map((r,a)=>{let n=r.href&&!r.disabled&&!r.current?(0,He.jsx)("a",{href:r.href,onClick:r.onClick,className:"rounded-[var(--inkblot-radius-sm)] text-sm text-[var(--inkblot-semantic-color-text-secondary)] transition-colors duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)] hover:text-[var(--inkblot-semantic-color-text-primary)]",children:r.label}):(0,He.jsx)("span",{"aria-current":r.current?"page":void 0,className:o("text-sm",r.current?"font-semibold text-[var(--inkblot-semantic-color-text-primary)]":"text-[var(--inkblot-semantic-color-text-tertiary)]",r.disabled&&"opacity-[var(--inkblot-opacity-disabled)]"),children:r.label});return(0,He.jsxs)("li",{className:"flex items-center gap-[var(--inkblot-spacing-2)]",children:[n,a<t.length-1&&(0,He.jsx)(hi.ChevronRight,{className:"h-4 w-4 text-[var(--inkblot-semantic-color-text-tertiary)]"})]},r.id)})})})}var qr=require("react"),wo=require("lucide-react");var Bt=require("react/jsx-runtime"),nc=["L","M","X","J","V","S","D"];function wi(t){return new Date(t.getFullYear(),t.getMonth(),1)}function ic(t){return new Date(t.getFullYear(),t.getMonth()+1,0)}function sc(t,e){return t.getFullYear()===e.getFullYear()&&t.getMonth()===e.getMonth()&&t.getDate()===e.getDate()}function ba(t){return`${t.getFullYear()}-${t.getMonth()}-${t.getDate()}`}function lc(t){let e=wi(t),r=ic(t),a=(e.getDay()+6)%7,n=r.getDate(),i=[];for(let s=0;s<a;s+=1)i.push(null);for(let s=1;s<=n;s+=1)i.push(new Date(t.getFullYear(),t.getMonth(),s));for(;i.length%7!==0;)i.push(null);return i}function Ci({value:t,onChange:e,disabledDates:r,className:a}){let n=t??new Date,[i,s]=(0,qr.useState)(wi(n)),l=(0,qr.useMemo)(()=>lc(i),[i]),c=(0,qr.useMemo)(()=>new Set((r??[]).map(ba)),[r]);return(0,Bt.jsxs)("div",{className:o("w-[320px] rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-4)] text-[var(--inkblot-semantic-color-text-primary)]",a),children:[(0,Bt.jsxs)("div",{className:"mb-[var(--inkblot-spacing-3)] flex items-center justify-between",children:[(0,Bt.jsx)("button",{type:"button",onClick:()=>s(new Date(i.getFullYear(),i.getMonth()-1,1)),className:"inline-flex h-8 w-8 items-center justify-center rounded-[var(--inkblot-radius-md)] text-[var(--inkblot-semantic-color-text-secondary)] hover:bg-[var(--inkblot-semantic-color-background-tertiary)]",children:(0,Bt.jsx)(wo.ChevronLeft,{className:"h-4 w-4"})}),(0,Bt.jsx)("div",{className:"font-semibold",children:i.toLocaleDateString("es-ES",{month:"long",year:"numeric"})}),(0,Bt.jsx)("button",{type:"button",onClick:()=>s(new Date(i.getFullYear(),i.getMonth()+1,1)),className:"inline-flex h-8 w-8 items-center justify-center rounded-[var(--inkblot-radius-md)] text-[var(--inkblot-semantic-color-text-secondary)] hover:bg-[var(--inkblot-semantic-color-background-tertiary)]",children:(0,Bt.jsx)(wo.ChevronRight,{className:"h-4 w-4"})})]}),(0,Bt.jsxs)("div",{className:"grid grid-cols-7 gap-[var(--inkblot-spacing-1)]",children:[nc.map(d=>(0,Bt.jsx)("div",{className:"pb-[var(--inkblot-spacing-1)] text-center text-xs font-medium text-[var(--inkblot-semantic-color-text-tertiary)]",children:d},d)),l.map((d,m)=>{if(!d)return(0,Bt.jsx)("div",{className:"h-9"},`empty-${m}`);let p=c.has(ba(d)),b=t?sc(d,t):!1;return(0,Bt.jsx)("button",{type:"button",disabled:p,onClick:()=>e?.(d),className:o("h-9 rounded-[var(--inkblot-radius-md)] text-sm transition-colors duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)]",b?"bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]":"text-[var(--inkblot-semantic-color-text-primary)] hover:bg-[var(--inkblot-semantic-color-background-tertiary)]",p&&"cursor-not-allowed opacity-[var(--inkblot-opacity-disabled)]"),children:d.getDate()},ba(d))})]})]})}var Je=require("react/jsx-runtime");function Ti({className:t,interactive:e=!1,disabled:r=!1,...a}){return(0,Je.jsx)("div",{"aria-disabled":r,className:o("w-full rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] text-[var(--inkblot-semantic-color-text-primary)]",e&&"transition-[border-color,transform,background] duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)] hover:border-[var(--inkblot-semantic-color-border-strong)] hover:bg-[var(--inkblot-semantic-color-background-tertiary)] active:translate-y-px",r&&"pointer-events-none opacity-[var(--inkblot-opacity-disabled)]",t),...a})}function Pi({className:t,...e}){return(0,Je.jsx)("div",{className:o("flex flex-col gap-[var(--inkblot-spacing-1)] p-[var(--inkblot-spacing-5)]",t),...e})}function Si({className:t,...e}){return(0,Je.jsx)("h3",{className:o("text-base font-semibold text-[var(--inkblot-semantic-color-text-primary)]",t),...e})}function Mi({className:t,...e}){return(0,Je.jsx)("p",{className:o("text-sm text-[var(--inkblot-semantic-color-text-secondary)]",t),...e})}function Ei({className:t,...e}){return(0,Je.jsx)("div",{className:o("px-[var(--inkblot-spacing-5)] pb-[var(--inkblot-spacing-5)]",t),...e})}function Ii({className:t,...e}){return(0,Je.jsx)("div",{className:o("flex items-center justify-end gap-[var(--inkblot-spacing-2)] border-t border-[var(--inkblot-semantic-color-border-default)] px-[var(--inkblot-spacing-5)] py-[var(--inkblot-spacing-4)]",t),...e})}var Li=require("react"),Co=require("lucide-react");var Ot=require("react/jsx-runtime");function Ai({items:t,initialIndex:e=0,loop:r=!1,className:a}){let[n,i]=(0,Li.useState)(Math.min(Math.max(e,0),Math.max(t.length-1,0))),s=r||n>0,l=r||n<t.length-1,c=()=>{if(t.length!==0){if(r){i(m=>(m-1+t.length)%t.length);return}i(m=>Math.max(m-1,0))}},d=()=>{if(t.length!==0){if(r){i(m=>(m+1)%t.length);return}i(m=>Math.min(m+1,t.length-1))}};return(0,Ot.jsxs)("div",{className:o("w-full rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-4)]",a),children:[(0,Ot.jsx)("div",{className:"relative overflow-hidden rounded-[var(--inkblot-radius-lg)]",children:(0,Ot.jsx)("div",{className:"flex transition-transform duration-[var(--inkblot-duration-normal)] ease-[var(--inkblot-easing-default)]",style:{transform:`translateX(-${n*100}%)`},children:t.map((m,p)=>(0,Ot.jsx)("div",{className:"w-full shrink-0",children:m},p))})}),(0,Ot.jsxs)("div",{className:"mt-[var(--inkblot-spacing-3)] flex items-center justify-between",children:[(0,Ot.jsx)("div",{className:"text-sm text-[var(--inkblot-semantic-color-text-secondary)]",children:t.length>0?`${n+1} de ${t.length}`:"Sin elementos"}),(0,Ot.jsxs)("div",{className:"flex gap-[var(--inkblot-spacing-2)]",children:[(0,Ot.jsx)("button",{type:"button",onClick:c,disabled:!s||t.length===0,className:"inline-flex h-9 w-9 items-center justify-center rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-interactive-secondary)] text-[var(--inkblot-semantic-color-text-primary)] hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] disabled:cursor-not-allowed disabled:opacity-[var(--inkblot-opacity-disabled)]",children:(0,Ot.jsx)(Co.ChevronLeft,{className:"h-4 w-4"})}),(0,Ot.jsx)("button",{type:"button",onClick:d,disabled:!l||t.length===0,className:"inline-flex h-9 w-9 items-center justify-center rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-interactive-secondary)] text-[var(--inkblot-semantic-color-text-primary)] hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] disabled:cursor-not-allowed disabled:opacity-[var(--inkblot-opacity-disabled)]",children:(0,Ot.jsx)(Co.ChevronRight,{className:"h-4 w-4"})})]})]})]})}var Zt=require("react/jsx-runtime");function Di({data:t,title:e="Rendimiento",emptyMessage:r="No data to display.",className:a}){let n=Math.max(...t.map(i=>i.value),0);return(0,Zt.jsxs)("div",{className:o("w-full rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-5)]",a),children:[(0,Zt.jsx)("h3",{className:"mb-[var(--inkblot-spacing-4)] text-sm font-semibold text-[var(--inkblot-semantic-color-text-primary)]",children:e}),t.length===0?(0,Zt.jsx)("div",{className:"rounded-[var(--inkblot-radius-md)] bg-[var(--inkblot-semantic-color-background-tertiary)] px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-4)] text-sm text-[var(--inkblot-semantic-color-text-secondary)]",children:r}):(0,Zt.jsx)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-3)]",children:t.map(i=>{let s=n>0?i.value/n*100:0;return(0,Zt.jsxs)("div",{className:"grid grid-cols-[120px_1fr_48px] items-center gap-[var(--inkblot-spacing-3)]",children:[(0,Zt.jsx)("span",{className:"truncate text-sm text-[var(--inkblot-semantic-color-text-secondary)]",children:i.label}),(0,Zt.jsx)("div",{className:"h-3 overflow-hidden rounded-[var(--inkblot-radius-full)] bg-[var(--inkblot-semantic-color-background-tertiary)]",children:(0,Zt.jsx)("div",{className:"h-full rounded-[var(--inkblot-radius-full)] bg-[var(--inkblot-semantic-color-interactive-primary)]",style:{width:`${s}%`,backgroundColor:i.color??"var(--inkblot-semantic-color-interactive-primary)"}})}),(0,Zt.jsx)("span",{className:"text-right text-sm font-medium text-[var(--inkblot-semantic-color-text-primary)]",children:i.value})]},i.id)})})]})}var Ri=require("react"),Hi=require("lucide-react");var Be=require("react/jsx-runtime");function Bi({checked:t,defaultChecked:e=!1,onCheckedChange:r,label:a,description:n,disabled:i=!1,error:s=!1,className:l}){let[c,d]=(0,Ri.useState)(e),m=t!==void 0,p=m?t:c,b=u=>{m||d(u),r?.(u)};return(0,Be.jsxs)("label",{className:o("inline-flex items-start gap-[var(--inkblot-spacing-3)] text-[var(--inkblot-semantic-color-text-primary)]",i&&"cursor-not-allowed opacity-[var(--inkblot-opacity-disabled)]",l),children:[(0,Be.jsx)("button",{type:"button",role:"checkbox","aria-checked":p,disabled:i,onClick:()=>b(!p),className:o("mt-0.5 inline-flex h-5 w-5 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-sm)] border transition-colors duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--inkblot-semantic-color-border-focus)] focus-visible:outline-offset-2",p?"border-[var(--inkblot-semantic-color-interactive-primary)] bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]":"border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] hover:border-[var(--inkblot-semantic-color-border-strong)]",s&&!p&&"border-[var(--inkblot-semantic-color-status-error)]"),children:p&&(0,Be.jsx)(Hi.Check,{className:"h-4 w-4"})}),(a||n)&&(0,Be.jsxs)("span",{className:"flex flex-col gap-[var(--inkblot-spacing-1)]",children:[a&&(0,Be.jsx)("span",{className:"text-sm font-medium",children:a}),n&&(0,Be.jsx)("span",{className:o("text-xs text-[var(--inkblot-semantic-color-text-secondary)]",s&&!p&&"text-[var(--inkblot-semantic-color-status-error)]"),children:n})]})]})}var oe=require("react/jsx-runtime"),cc={success:"var(--inkblot-semantic-color-status-success)",warning:"var(--inkblot-semantic-color-status-warning)",error:"var(--inkblot-semantic-color-status-error)",info:"var(--inkblot-semantic-color-status-info)",primary:"var(--inkblot-semantic-color-interactive-primary)"};function ua({label:t,value:e,tone:r="primary",color:a,inverted:n=!1,size:i=72,className:s}){let l=Math.max(0,Math.min(100,e)),c=n?100-l:l,d=5,m=(i-d)/2,p=2*Math.PI*m,b=p-c/100*p,u=a??cc[r];return(0,oe.jsx)("div",{className:s,children:(0,oe.jsxs)("div",{className:"flex flex-col items-center gap-2",children:[(0,oe.jsxs)("div",{className:"relative",style:{width:i,height:i},children:[(0,oe.jsxs)("svg",{width:i,height:i,className:"-rotate-90",children:[(0,oe.jsx)("circle",{cx:i/2,cy:i/2,r:m,fill:"none",stroke:"var(--inkblot-semantic-color-background-tertiary)",strokeWidth:d}),(0,oe.jsx)("circle",{cx:i/2,cy:i/2,r:m,fill:"none",stroke:u,strokeWidth:d,strokeDasharray:p,strokeDashoffset:b,strokeLinecap:"round",className:"transition-[stroke-dashoffset] duration-[var(--inkblot-duration-fast)]"})]}),(0,oe.jsx)("span",{className:"absolute inset-0 flex items-center justify-center text-sm font-semibold text-[var(--inkblot-semantic-color-text-primary)]",children:l})]}),(0,oe.jsx)("span",{className:"text-center text-[10px] leading-tight text-[var(--inkblot-semantic-color-text-tertiary)]",children:t})]})})}var Oi=require("react"),zi=require("lucide-react");var tr=require("react/jsx-runtime");function Fi({title:t,children:e,defaultOpen:r=!1,disabled:a=!1,className:n}){let[i,s]=(0,Oi.useState)(r);return(0,tr.jsxs)("div",{className:o("w-full rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)]",a&&"opacity-[var(--inkblot-opacity-disabled)]",n),children:[(0,tr.jsxs)("button",{type:"button",disabled:a,"aria-expanded":i,onClick:()=>s(l=>!l),className:o("flex min-h-[var(--inkblot-size-touch-target-min)] w-full items-center justify-between gap-[var(--inkblot-spacing-3)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)] text-left text-[var(--inkblot-semantic-color-text-primary)]",!a&&"hover:bg-[var(--inkblot-semantic-color-background-tertiary)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--inkblot-semantic-color-border-focus)] focus-visible:outline-offset-[-2px]"),children:[(0,tr.jsx)("span",{className:"font-medium",children:t}),(0,tr.jsx)(zi.ChevronDown,{className:o("h-4 w-4 text-[var(--inkblot-semantic-color-text-tertiary)] transition-transform duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)]",i&&"rotate-180")})]}),i&&(0,tr.jsx)("div",{className:"border-t border-[var(--inkblot-semantic-color-border-default)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-4)] text-sm text-[var(--inkblot-semantic-color-text-secondary)]",children:e})]})}var To=require("react"),Vi=require("lucide-react");var zt=require("react/jsx-runtime");function Gi({items:t,placeholder:e="Search commands...",onSelect:r,className:a}){let[n,i]=(0,To.useState)(""),s=(0,To.useMemo)(()=>{let l=n.trim().toLowerCase();return l?t.filter(c=>{let d=c.label.toLowerCase().includes(l),m=(c.keywords??[]).some(p=>p.toLowerCase().includes(l));return d||m}):t},[t,n]);return(0,zt.jsxs)("div",{className:o("w-full rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)]",a),children:[(0,zt.jsxs)("div",{className:"flex items-center gap-[var(--inkblot-spacing-2)] border-b border-[var(--inkblot-semantic-color-border-default)] px-[var(--inkblot-spacing-3)]",children:[(0,zt.jsx)(Vi.Search,{className:"h-4 w-4 text-[var(--inkblot-semantic-color-text-tertiary)]"}),(0,zt.jsx)("input",{value:n,onChange:l=>i(l.target.value),placeholder:e,className:"h-11 w-full bg-transparent text-sm text-[var(--inkblot-semantic-color-text-primary)] outline-none placeholder:text-[var(--inkblot-semantic-color-text-tertiary)]"})]}),(0,zt.jsx)("div",{className:"max-h-[280px] overflow-y-auto p-[var(--inkblot-spacing-2)]",children:s.length>0?(0,zt.jsx)("ul",{className:"flex flex-col gap-[var(--inkblot-spacing-1)]",children:s.map(l=>(0,zt.jsx)("li",{children:(0,zt.jsxs)("button",{type:"button",disabled:l.disabled,onClick:()=>r?.(l),className:o("flex min-h-[var(--inkblot-size-touch-target-min)] w-full items-center gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-3)] text-left text-sm text-[var(--inkblot-semantic-color-text-primary)] transition-colors duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)]",l.disabled?"cursor-not-allowed opacity-[var(--inkblot-opacity-disabled)]":"hover:bg-[var(--inkblot-semantic-color-background-tertiary)] active:bg-[var(--inkblot-semantic-color-background-tertiary)]"),children:[l.icon&&(0,zt.jsx)("span",{className:"text-[var(--inkblot-semantic-color-text-tertiary)]",children:l.icon}),(0,zt.jsx)("span",{children:l.label})]})},l.id))}):(0,zt.jsx)("div",{className:"px-[var(--inkblot-spacing-2)] py-[var(--inkblot-spacing-3)] text-sm text-[var(--inkblot-semantic-color-text-secondary)]",children:"No results found."})})]})}var ae=require("react"),er=require("lucide-react");var P=require("react/jsx-runtime"),dc=[{id:"1",role:"user",content:"Show me Acme Corp's profile and deal health."},{id:"2",role:"assistant",content:"Here's the entity profile and current intelligence insights for Acme Corp.",cards:["entity","intelligence"]}],va="rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-3 text-xs text-[var(--inkblot-semantic-color-text-tertiary)]";function mc({title:t="Command Canvas",subtitle:e="AI-native interface \u2014 results appear here",readyLabel:r="System ready",placeholder:a="Ask anything \u2014 deals, contacts, forecasts...",footerText:n="Citron OS v1.0 \xB7 AI-native Revenue & Operations Platform",blocks:i,renderBlock:s,messages:l,initialMessages:c=dc,onMessagesChange:d,inputValue:m,defaultInputValue:p="",onInputValueChange:b,autoAssistantResponse:u=!0,assistantResponseDelayMs:f=700,isResponding:w,onRespondingChange:h,onSend:g,generateAssistantMessage:S,renderCard:N,hideInput:y=!1,className:k}){let[v,x]=(0,ae.useState)(c),[C,M]=(0,ae.useState)(p),[F,H]=(0,ae.useState)(!1),Y=(0,ae.useRef)(null),B=l!==void 0,U=B?l:v,z=m!==void 0,tt=z?m:C,bt=w!==void 0,ar=bt?w:F,nr=tt.trim().length>0&&!ar,Go=(0,ae.useMemo)(()=>D=>({content:`Analyzing "${D}". Here are the latest insights.`,cards:["entity","intelligence"]}),[]),T=D=>{B||x(D),d?.(D)},ft=D=>{z||M(D),b?.(D)},ct=D=>{bt||H(D),h?.(D)};(0,ae.useEffect)(()=>()=>{Y.current!==null&&window.clearTimeout(Y.current)},[]);let Jr=()=>{let D=tt.trim();if(!D)return;let ir={id:`${Date.now()}-user`,role:"user",content:D},mn=[...U,ir];T(mn),ft(""),g?.(D),u&&(ct(!0),Y.current=window.setTimeout(()=>{let pn=(S??Go)(D),Qs=[...mn,{id:`${Date.now()}-assistant`,role:"assistant",content:pn.content,cards:pn.cards}];T(Qs),ct(!1)},f))},dn=i!==void 0,Zs=D=>D.type==="text"?(0,P.jsxs)("div",{className:"flex items-start gap-3",children:[(0,P.jsx)("div",{className:"mt-0.5 flex h-6 w-6 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-sm)] bg-[var(--inkblot-semantic-color-interactive-primary)]/15",children:(0,P.jsx)(er.Sparkles,{className:"h-3.5 w-3.5 text-[var(--inkblot-semantic-color-interactive-primary)]","aria-hidden":!0})}),(0,P.jsx)("p",{className:"pt-0.5 text-sm leading-relaxed text-[var(--inkblot-semantic-color-text-secondary)]",children:D.content})]}):D.type==="entity"?N?N("entity"):(0,P.jsx)("div",{className:va,children:"Entity card preview"}):D.type==="intelligence"?N?N("intelligence"):(0,P.jsx)("div",{className:va,children:"Intelligence card preview"}):D.type==="loading"?(0,P.jsxs)("div",{className:"flex items-center gap-3",children:[(0,P.jsx)("div",{className:"flex h-6 w-6 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-sm)] bg-[var(--inkblot-semantic-color-interactive-primary)]/15",children:(0,P.jsx)(er.Sparkles,{className:"h-3.5 w-3.5 animate-pulse text-[var(--inkblot-semantic-color-interactive-primary)]","aria-hidden":!0})}),(0,P.jsxs)("div",{className:"flex gap-1",children:[(0,P.jsx)("span",{className:"h-1.5 w-1.5 animate-bounce rounded-full bg-[var(--inkblot-semantic-color-text-tertiary)]",style:{animationDelay:"0ms"}}),(0,P.jsx)("span",{className:"h-1.5 w-1.5 animate-bounce rounded-full bg-[var(--inkblot-semantic-color-text-tertiary)]",style:{animationDelay:"150ms"}}),(0,P.jsx)("span",{className:"h-1.5 w-1.5 animate-bounce rounded-full bg-[var(--inkblot-semantic-color-text-tertiary)]",style:{animationDelay:"300ms"}})]})]}):null;return(0,P.jsxs)("section",{className:o("flex h-full flex-col",k),children:[(0,P.jsxs)("header",{className:"flex items-center justify-between border-b border-[var(--inkblot-semantic-color-border-default)] px-8 py-5",children:[(0,P.jsxs)("div",{children:[(0,P.jsx)("h2",{className:"text-lg font-semibold tracking-tight text-[var(--inkblot-semantic-color-text-primary)]",children:t}),(0,P.jsx)("p",{className:"mt-0.5 text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:e})]}),(0,P.jsxs)("div",{className:"flex items-center gap-2 text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:[(0,P.jsx)("span",{className:"h-1.5 w-1.5 rounded-full bg-[var(--inkblot-semantic-color-status-success)]"}),r]})]}),(0,P.jsx)("div",{className:"hide-scrollbar flex-1 overflow-y-auto px-8 py-6",children:(0,P.jsx)("div",{className:"mx-auto max-w-3xl space-y-6",children:dn?i.map(D=>(0,P.jsx)("div",{children:s?s(D):Zs(D)},D.id)):U.map(D=>D.role==="user"?(0,P.jsx)("div",{className:"flex justify-end",children:(0,P.jsx)("div",{className:"max-w-md rounded-2xl rounded-br-sm bg-[var(--inkblot-semantic-color-interactive-secondary)] px-4 py-2.5 text-sm leading-relaxed text-[var(--inkblot-semantic-color-text-primary)]",children:D.content})},D.id):(0,P.jsxs)("div",{className:"space-y-4",children:[(0,P.jsxs)("div",{className:"flex items-start gap-3",children:[(0,P.jsx)("div",{className:"mt-0.5 flex h-6 w-6 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-sm)] bg-[var(--inkblot-semantic-color-interactive-primary)]/15",children:(0,P.jsx)(er.Sparkles,{className:"h-3.5 w-3.5 text-[var(--inkblot-semantic-color-interactive-primary)]","aria-hidden":!0})}),(0,P.jsx)("p",{className:"pt-0.5 text-sm leading-relaxed text-[var(--inkblot-semantic-color-text-secondary)]",children:D.content})]}),D.cards?.length?(0,P.jsx)("div",{className:"ml-9 grid gap-4",children:D.cards.map(ir=>N?(0,P.jsx)("div",{children:N(ir)},ir):(0,P.jsx)("div",{className:va,children:ir==="entity"?"Entity card preview":"Intelligence card preview"},ir))}):null]},D.id))})}),!y&&!dn?(0,P.jsx)("footer",{className:"border-t border-[var(--inkblot-semantic-color-border-default)] px-8 py-4",children:(0,P.jsxs)("div",{className:"mx-auto max-w-3xl",children:[(0,P.jsxs)("div",{className:"flex items-center gap-3 rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] px-4 py-3",children:[(0,P.jsx)(er.Sparkles,{className:"h-4 w-4 shrink-0 text-[var(--inkblot-semantic-color-text-tertiary)]"}),(0,P.jsx)("input",{type:"text",value:tt,onChange:D=>ft(D.target.value),onKeyDown:D=>{D.key==="Enter"&&Jr()},placeholder:a,className:"flex-1 bg-transparent text-sm text-[var(--inkblot-semantic-color-text-primary)] placeholder:text-[var(--inkblot-semantic-color-text-tertiary)] outline-none"}),(0,P.jsx)("button",{type:"button",onClick:Jr,disabled:!nr,className:"flex h-8 w-8 items-center justify-center rounded-[var(--inkblot-radius-sm)] bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)] transition-opacity duration-[var(--inkblot-duration-fast)] disabled:opacity-35","aria-label":"Send",children:(0,P.jsx)(er.Send,{className:"h-3.5 w-3.5"})})]}),(0,P.jsx)("p",{className:"mt-2 text-center text-[10px] text-[var(--inkblot-semantic-color-text-tertiary)]",children:n})]})}):(0,P.jsx)("footer",{className:"border-t border-[var(--inkblot-semantic-color-border-default)] px-8 py-3",children:(0,P.jsx)("p",{className:"text-center text-[10px] text-[var(--inkblot-semantic-color-text-tertiary)]",children:n})})]})}var rr=require("react");var ve=require("react/jsx-runtime");function Ki({trigger:t,items:e,className:r}){let[a,n]=(0,rr.useState)(!1),[i,s]=(0,rr.useState)({x:0,y:0}),l=(0,rr.useRef)(null);(0,rr.useEffect)(()=>{if(!a)return;let d=()=>n(!1);return document.addEventListener("click",d),document.addEventListener("contextmenu",d),()=>{document.removeEventListener("click",d),document.removeEventListener("contextmenu",d)}},[a]);let c=d=>{d.preventDefault();let m=l.current?.getBoundingClientRect(),p=m?.left??0,b=m?.top??0;s({x:d.clientX-p,y:d.clientY-b}),n(!0)};return(0,ve.jsxs)("div",{ref:l,className:o("relative w-full",r),onContextMenu:c,children:[t,a&&(0,ve.jsx)("div",{role:"menu",className:"absolute z-40 min-w-[220px] rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-1)] shadow-lg",style:{left:i.x,top:i.y},children:e.map(d=>(0,ve.jsxs)("button",{type:"button",role:"menuitem",disabled:d.disabled,onClick:()=>{d.onSelect?.(),n(!1)},className:o("flex min-h-[var(--inkblot-size-touch-target-min)] w-full items-center justify-between gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-3)] text-sm transition-colors duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)]",d.disabled?"cursor-not-allowed opacity-[var(--inkblot-opacity-disabled)]":"hover:bg-[var(--inkblot-semantic-color-background-tertiary)]",d.danger?"text-[var(--inkblot-semantic-color-status-error)]":"text-[var(--inkblot-semantic-color-text-primary)]"),children:[(0,ve.jsxs)("span",{className:"flex items-center gap-[var(--inkblot-spacing-2)]",children:[d.icon&&(0,ve.jsx)("span",{className:"text-[var(--inkblot-semantic-color-text-tertiary)]",children:d.icon}),(0,ve.jsx)("span",{children:d.label})]}),d.shortcut&&(0,ve.jsx)("span",{className:"text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:d.shortcut})]},d.id))})]})}var W=require("react"),Wi=require("react-dom"),_i=require("lucide-react");var vt=require("react/jsx-runtime"),Ui=(0,W.createContext)(null);function fa(){let t=(0,W.useContext)(Ui);if(!t)throw new Error("Dialog components must be used within Dialog");return t}function $i({open:t,defaultOpen:e=!1,onOpenChange:r,children:a}){let[n,i]=(0,W.useState)(e),s=t!==void 0,l=s?t:n,c=(0,W.useCallback)(m=>{s||i(m),r?.(m)},[s,r]),d=(0,W.useMemo)(()=>({open:l,setOpen:c}),[l,c]);return(0,vt.jsx)(Ui.Provider,{value:d,children:a})}var ga=(0,W.forwardRef)(({className:t,type:e="button",onClick:r,...a},n)=>{let{setOpen:i}=fa();return(0,vt.jsx)("button",{ref:n,type:e,onClick:s=>{r?.(s),s.defaultPrevented||i(!0)},className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center rounded-[var(--inkblot-radius-lg)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]","hover:bg-[var(--inkblot-semantic-color-interactive-primary-hover)] active:bg-[var(--inkblot-semantic-color-interactive-primary-active)]","focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--inkblot-semantic-color-border-focus)] focus-visible:outline-offset-2","disabled:opacity-[var(--inkblot-opacity-disabled)] disabled:pointer-events-none disabled:cursor-not-allowed","[font:var(--inkblot-semantic-typography-body-medium)]",t),...a})});ga.displayName="DialogTrigger";var ka=(0,W.forwardRef)(({className:t,children:e,showCloseButton:r=!0,initialFocusRef:a,...n},i)=>{let{open:s,setOpen:l}=fa(),c=(0,W.useId)(),d=(0,W.useId)(),m=(0,W.useRef)(null),p=(0,W.useRef)(null),b=(0,W.useCallback)(f=>{if(m.current=f,typeof i=="function"){i(f);return}i&&(i.current=f)},[i]),u=(0,W.useCallback)(()=>{l(!1)},[l]);return(0,W.useEffect)(()=>{if(!s)return;let f=w=>{w.key==="Escape"&&u()};return window.addEventListener("keydown",f),()=>{window.removeEventListener("keydown",f)}},[u,s]),(0,W.useEffect)(()=>{if(!s)return;p.current=document.activeElement instanceof HTMLElement?document.activeElement:null;let f=a?.current,w=m.current?.querySelector('button:not([disabled]), [href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])');return(f??w??m.current)?.focus(),()=>{p.current?.focus()}},[a,s]),!s||typeof document>"u"?null:(0,Wi.createPortal)((0,vt.jsxs)("div",{className:o("fixed inset-0 z-50 flex items-center justify-center p-[var(--inkblot-spacing-6)]"),children:[(0,vt.jsx)("button",{type:"button","aria-label":"Close dialog",className:o("absolute inset-0 bg-[var(--inkblot-semantic-color-background-primary)]/70"),onClick:u}),(0,vt.jsxs)("div",{ref:b,role:"dialog","aria-modal":"true","aria-labelledby":c,"aria-describedby":d,tabIndex:-1,className:o("relative z-10 w-full max-w-[calc(var(--inkblot-size-touch-target-min)*10)] rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-primary)] p-[var(--inkblot-spacing-6)]","shadow-[var(--inkblot-shadow-lg)]",t),...n,children:[r?(0,vt.jsx)(Po,{"aria-label":"Close dialog",className:o("absolute right-[var(--inkblot-spacing-4)] top-[var(--inkblot-spacing-4)] rounded-[var(--inkblot-radius-md)] p-[var(--inkblot-spacing-2)]"),children:(0,vt.jsx)(_i.X,{style:{width:"var(--inkblot-spacing-4)",height:"var(--inkblot-spacing-4)"}})}):null,(0,vt.jsx)("div",{id:c,className:"sr-only"}),(0,vt.jsx)("div",{id:d,className:"sr-only"}),e]})]}),document.body)});ka.displayName="DialogContent";function ji({className:t,...e}){return(0,vt.jsx)("div",{className:o("mb-[var(--inkblot-spacing-4)] grid gap-[var(--inkblot-spacing-2)]",t),...e})}function qi({className:t,...e}){return(0,vt.jsx)("h2",{className:o("text-[var(--inkblot-semantic-color-text-primary)] [font:var(--inkblot-semantic-typography-heading-small)]",t),...e})}function Yi({className:t,...e}){return(0,vt.jsx)("p",{className:o("text-[var(--inkblot-semantic-color-text-secondary)] [font:var(--inkblot-semantic-typography-body-medium)]",t),...e})}function Xi({className:t,...e}){return(0,vt.jsx)("div",{className:o("mt-[var(--inkblot-spacing-6)] flex flex-wrap justify-end gap-[var(--inkblot-spacing-3)]",t),...e})}var Po=(0,W.forwardRef)(({className:t,type:e="button",onClick:r,...a},n)=>{let{setOpen:i}=fa();return(0,vt.jsx)("button",{ref:n,type:e,onClick:s=>{r?.(s),s.defaultPrevented||i(!1)},className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center rounded-[var(--inkblot-radius-lg)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","bg-[var(--inkblot-semantic-color-interactive-secondary)] text-[var(--inkblot-semantic-color-text-primary)]","border border-[var(--inkblot-semantic-color-border-default)]","hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] hover:border-[var(--inkblot-semantic-color-border-strong)]","focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--inkblot-semantic-color-border-focus)] focus-visible:outline-offset-2","[font:var(--inkblot-semantic-typography-body-medium)]",t),...a})});Po.displayName="DialogClose";var Z=require("react"),Zi=require("react-dom"),Qi=require("lucide-react");var Ft=require("react/jsx-runtime"),Ji=(0,Z.createContext)(null);function ya(){let t=(0,Z.useContext)(Ji);if(!t)throw new Error("Drawer components must be used within Drawer");return t}function ts({children:t,open:e,defaultOpen:r=!1,onOpenChange:a,side:n="right"}){let[i,s]=(0,Z.useState)(r),l=e!==void 0,c=l?e:i,d=(0,Z.useCallback)(p=>{l||s(p),a?.(p)},[l,a]),m=(0,Z.useMemo)(()=>({open:c,setOpen:d,side:n}),[c,d,n]);return(0,Ft.jsx)(Ji.Provider,{value:m,children:t})}var xa=(0,Z.forwardRef)(({className:t,type:e="button",onClick:r,...a},n)=>{let{setOpen:i}=ya();return(0,Ft.jsx)("button",{ref:n,type:e,onClick:s=>{r?.(s),s.defaultPrevented||i(!0)},className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center rounded-[var(--inkblot-radius-lg)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]","hover:bg-[var(--inkblot-semantic-color-interactive-primary-hover)] active:bg-[var(--inkblot-semantic-color-interactive-primary-active)]","focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--inkblot-semantic-color-border-focus)] focus-visible:outline-offset-2",t),...a})});xa.displayName="DrawerTrigger";var ha=(0,Z.forwardRef)(({className:t,children:e,initialFocusRef:r,...a},n)=>{let{open:i,setOpen:s,side:l}=ya(),c=(0,Z.useRef)(null),d=(0,Z.useRef)(null),m=(0,Z.useCallback)(b=>{if(c.current=b,typeof n=="function"){n(b);return}n&&(n.current=b)},[n]),p=(0,Z.useCallback)(()=>{s(!1)},[s]);return(0,Z.useEffect)(()=>{if(!i)return;let b=u=>{u.key==="Escape"&&p()};return window.addEventListener("keydown",b),()=>{window.removeEventListener("keydown",b)}},[p,i]),(0,Z.useEffect)(()=>{if(!i)return;d.current=document.activeElement instanceof HTMLElement?document.activeElement:null;let b=r?.current,u=c.current?.querySelector('button:not([disabled]), [href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])');return(b??u??c.current)?.focus(),()=>{d.current?.focus()}},[r,i]),!i||typeof document>"u"?null:(0,Zi.createPortal)((0,Ft.jsxs)("div",{className:"fixed inset-0 z-50",children:[(0,Ft.jsx)("button",{type:"button","aria-label":"Close drawer",className:"absolute inset-0 bg-[var(--inkblot-semantic-color-background-primary)]/70",onClick:p}),(0,Ft.jsx)("div",{ref:m,role:"dialog","aria-modal":"true",tabIndex:-1,className:o("absolute top-0 h-full w-full max-w-[calc(var(--inkblot-size-touch-target-min)*7)] border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] p-[var(--inkblot-spacing-6)] shadow-[var(--inkblot-shadow-lg)]",l==="right"?"right-0 border-l":"left-0 border-r",t),...a,children:e})]}),document.body)});ha.displayName="DrawerContent";function es({className:t,...e}){return(0,Ft.jsx)("div",{className:o("mb-[var(--inkblot-spacing-4)] grid gap-[var(--inkblot-spacing-2)]",t),...e})}function rs({className:t,...e}){return(0,Ft.jsx)("h2",{className:o("text-[var(--inkblot-semantic-color-text-primary)] [font:var(--inkblot-semantic-typography-heading-small)]",t),...e})}function os({className:t,...e}){return(0,Ft.jsx)("p",{className:o("text-[var(--inkblot-semantic-color-text-secondary)] [font:var(--inkblot-semantic-typography-body-medium)]",t),...e})}function as({className:t,...e}){return(0,Ft.jsx)("div",{className:o("mt-[var(--inkblot-spacing-6)] flex flex-wrap justify-end gap-[var(--inkblot-spacing-3)]",t),...e})}var Na=(0,Z.forwardRef)(({className:t,type:e="button",onClick:r,children:a,...n},i)=>{let{setOpen:s}=ya();return(0,Ft.jsx)("button",{ref:i,type:e,onClick:l=>{r?.(l),l.defaultPrevented||s(!1)},className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-lg)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","bg-[var(--inkblot-semantic-color-interactive-secondary)] text-[var(--inkblot-semantic-color-text-primary)]","border border-[var(--inkblot-semantic-color-border-default)] hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)]",t),...n,children:a??(0,Ft.jsx)(Qi.X,{style:{width:"var(--inkblot-spacing-4)",height:"var(--inkblot-spacing-4)"}})})});Na.displayName="DrawerClose";var st=require("react"),ns=require("lucide-react");var fe=require("react/jsx-runtime"),is=(0,st.createContext)(null);function wa(){let t=(0,st.useContext)(is);if(!t)throw new Error("DropdownMenu components must be used within DropdownMenu");return t}function ss({children:t,open:e,defaultOpen:r=!1,onOpenChange:a}){let[n,i]=(0,st.useState)(r),s=(0,st.useRef)(null),l=e!==void 0,c=l?e:n,d=(0,st.useCallback)(p=>{l||i(p),a?.(p)},[l,a]);(0,st.useEffect)(()=>{if(!c)return;let p=u=>{let f=u.target;f&&s.current&&!s.current.contains(f)&&d(!1)},b=u=>{u.key==="Escape"&&d(!1)};return window.addEventListener("pointerdown",p),window.addEventListener("keydown",b),()=>{window.removeEventListener("pointerdown",p),window.removeEventListener("keydown",b)}},[c,d]);let m=(0,st.useMemo)(()=>({open:c,setOpen:d,containerRef:s}),[c,d]);return(0,fe.jsx)(is.Provider,{value:m,children:(0,fe.jsx)("div",{ref:s,className:"relative inline-flex",children:t})})}var Ca=(0,st.forwardRef)(({className:t,type:e="button",showChevron:r=!0,onClick:a,children:n,...i},s)=>{let{open:l,setOpen:c}=wa();return(0,fe.jsxs)("button",{ref:s,type:e,"aria-haspopup":"menu","aria-expanded":l,onClick:d=>{a?.(d),d.defaultPrevented||c(!l)},className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-interactive-secondary)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","text-[var(--inkblot-semantic-color-text-primary)] hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)]","focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--inkblot-semantic-color-border-focus)] focus-visible:outline-offset-2","[font:var(--inkblot-semantic-typography-body-medium)]",t),...i,children:[n,r?(0,fe.jsx)(ns.ChevronDown,{style:{width:"var(--inkblot-spacing-4)",height:"var(--inkblot-spacing-4)"}}):null]})});Ca.displayName="DropdownMenuTrigger";var Ta=(0,st.forwardRef)(({className:t,...e},r)=>{let{open:a}=wa();return a?(0,fe.jsx)("div",{ref:r,role:"menu",className:o("absolute right-0 top-[calc(100%+var(--inkblot-spacing-2))] z-40 min-w-[calc(var(--inkblot-size-touch-target-min)*4)] rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-primary)] p-[var(--inkblot-spacing-2)] shadow-[var(--inkblot-shadow-md)]",t),...e}):null});Ta.displayName="DropdownMenuContent";var Pa=(0,st.forwardRef)(({className:t,type:e="button",icon:r,onClick:a,children:n,...i},s)=>{let{setOpen:l}=wa();return(0,fe.jsxs)("button",{ref:s,type:e,role:"menuitem",onClick:c=>{a?.(c),c.defaultPrevented||l(!1)},className:o("flex min-h-[var(--inkblot-size-touch-target-min)] w-full items-center gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-2)]","text-left text-[var(--inkblot-semantic-color-text-primary)] hover:bg-[var(--inkblot-semantic-color-background-secondary)]","focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--inkblot-semantic-color-border-focus)] focus-visible:outline-offset-0","[font:var(--inkblot-semantic-typography-body-medium)]",t),...i,children:[r,n]})});Pa.displayName="DropdownMenuItem";function ls({className:t,...e}){return(0,fe.jsx)("div",{className:o("my-[var(--inkblot-spacing-2)] border-b border-[var(--inkblot-semantic-color-border-default)]",t),...e})}var Yr=require("react"),Q=require("lucide-react");var R=require("react/jsx-runtime"),cs=[{type:"heading",label:"Heading",icon:Q.Type},{type:"text",label:"Text",icon:Q.Type},{type:"image",label:"Image",icon:Q.Image},{type:"button",label:"Button",icon:Q.Square},{type:"divider",label:"Divider",icon:Q.Minus},{type:"columns",label:"2 Columns",icon:Q.Columns}],pc={heading:"Your Heading Here",text:"Write your content here. Click to edit this text block.",image:"https://placehold.co/600x200",button:"Click Me",divider:"",columns:"Column 1 | Column 2"};function bc({blocks:t,onBlocksChange:e,availableBlockTypes:r,editingId:a,onEditingIdChange:n,onAddBlock:i,onDeleteBlock:s,onMoveBlock:l,onBlockContentChange:c,readOnly:d=!1,className:m}){let[p,b]=(0,Yr.useState)(null),u=a!==void 0,f=u?a:p,w=v=>{u||b(v),n?.(v)},h=(0,Yr.useMemo)(()=>!r||r.length===0?cs:cs.filter(v=>r.includes(v.type)),[r]),g=(0,Yr.useMemo)(()=>t.reduce((v,x,C)=>(v[x.id]=C,v),{}),[t]),S=v=>{if(d)return;let x={id:`block-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,type:v,content:pc[v]};e([...t,x]),i?.(v,x)},N=(v,x)=>{d||(e(t.map(C=>C.id===v?{...C,content:x}:C)),c?.(v,x))},y=v=>{d||(e(t.filter(x=>x.id!==v)),s?.(v))},k=(v,x)=>{if(d)return;let C=g[v],M=C+x;if(M<0||M>=t.length)return;let F=[...t],[H]=F.splice(C,1);F.splice(M,0,H),e(F),l?.(v,x)};return(0,R.jsxs)("section",{className:o("flex gap-4",m),children:[(0,R.jsxs)("aside",{className:"w-44 shrink-0",children:[(0,R.jsx)("span",{className:"text-[10px] uppercase tracking-wide text-[var(--inkblot-semantic-color-text-tertiary)]",children:"Blocks"}),(0,R.jsx)("div",{className:"mt-2 space-y-1",children:h.map(v=>(0,R.jsxs)("button",{type:"button",onClick:()=>S(v.type),disabled:d,className:"flex w-full items-center gap-2 rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] px-3 py-2 text-xs text-[var(--inkblot-semantic-color-text-primary)] transition-colors duration-[var(--inkblot-duration-fast)] hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)]",children:[(0,R.jsx)(v.icon,{className:"h-3.5 w-3.5 text-[var(--inkblot-semantic-color-text-tertiary)]"}),v.label]},v.type))})]}),(0,R.jsx)("div",{className:"glass min-h-[400px] flex-1 rounded-[var(--inkblot-radius-lg)] p-6",children:t.length===0?(0,R.jsxs)("div",{className:"flex h-full flex-col items-center justify-center gap-3 text-center",children:[(0,R.jsx)(Q.MousePointerClick,{className:"h-8 w-8 text-[var(--inkblot-semantic-color-text-tertiary)]/40"}),(0,R.jsxs)("div",{children:[(0,R.jsx)("p",{className:"text-sm text-[var(--inkblot-semantic-color-text-tertiary)]",children:"Drop blocks here to build your email"}),(0,R.jsx)("p",{className:"mt-1 text-[10px] text-[var(--inkblot-semantic-color-text-tertiary)]/60",children:"or use AI to generate a full layout"})]})]}):(0,R.jsx)("div",{className:"space-y-2",children:t.map((v,x)=>(0,R.jsxs)("article",{className:"group flex items-start gap-2",children:[(0,R.jsx)("div",{className:"pt-1 text-[var(--inkblot-semantic-color-text-tertiary)]",children:(0,R.jsx)(Q.GripVertical,{className:"h-3.5 w-3.5"})}),(0,R.jsxs)("div",{className:"flex-1 rounded-[var(--inkblot-radius-md)] border border-transparent p-3 transition-colors duration-[var(--inkblot-duration-fast)] group-hover:border-[var(--inkblot-semantic-color-border-default)]",children:[v.type==="heading"?(0,R.jsx)("h2",{contentEditable:!d&&f===v.id,suppressContentEditableWarning:!0,onClick:()=>{d||w(v.id)},onBlur:C=>{N(v.id,C.currentTarget.textContent??""),w(null)},className:"cursor-text text-xl font-bold text-[var(--inkblot-semantic-color-text-primary)] outline-none",children:v.content}):null,v.type==="text"?(0,R.jsx)("p",{contentEditable:!d&&f===v.id,suppressContentEditableWarning:!0,onClick:()=>{d||w(v.id)},onBlur:C=>{N(v.id,C.currentTarget.textContent??""),w(null)},className:"cursor-text text-sm leading-relaxed text-[var(--inkblot-semantic-color-text-secondary)] outline-none",children:v.content}):null,v.type==="image"?(0,R.jsx)("div",{className:"flex h-32 items-center justify-center overflow-hidden rounded-[var(--inkblot-radius-md)] bg-[var(--inkblot-semantic-color-background-tertiary)]",children:(0,R.jsx)(Q.Image,{className:"h-8 w-8 text-[var(--inkblot-semantic-color-text-tertiary)]/50"})}):null,v.type==="button"?(0,R.jsx)("div",{className:"flex justify-center",children:(0,R.jsx)("span",{contentEditable:!d&&f===v.id,suppressContentEditableWarning:!0,onClick:()=>{d||w(v.id)},onBlur:C=>{N(v.id,C.currentTarget.textContent??""),w(null)},className:"cursor-text rounded-[var(--inkblot-radius-md)] bg-[var(--inkblot-semantic-color-interactive-primary)] px-6 py-2.5 text-sm font-medium text-[var(--inkblot-semantic-color-text-inverse)] outline-none",children:v.content})}):null,v.type==="divider"?(0,R.jsx)("hr",{className:"my-2 border-[var(--inkblot-semantic-color-border-default)]"}):null,v.type==="columns"?(0,R.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,R.jsx)("div",{className:"rounded-[var(--inkblot-radius-md)] bg-[var(--inkblot-semantic-color-background-tertiary)] p-4 text-center text-sm text-[var(--inkblot-semantic-color-text-tertiary)]",children:"Column 1"}),(0,R.jsx)("div",{className:"rounded-[var(--inkblot-radius-md)] bg-[var(--inkblot-semantic-color-background-tertiary)] p-4 text-center text-sm text-[var(--inkblot-semantic-color-text-tertiary)]",children:"Column 2"})]}):null]}),(0,R.jsxs)("div",{className:"flex flex-col gap-1 opacity-0 transition-opacity duration-[var(--inkblot-duration-fast)] group-hover:opacity-100",children:[(0,R.jsx)("button",{type:"button",onClick:()=>k(v.id,-1),disabled:d||x===0,className:"rounded-[var(--inkblot-radius-sm)] p-1 text-[var(--inkblot-semantic-color-text-tertiary)] transition-colors duration-[var(--inkblot-duration-fast)] hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] disabled:opacity-30","aria-label":"Move up",children:(0,R.jsx)(Q.ChevronUp,{className:"h-3 w-3"})}),(0,R.jsx)("button",{type:"button",onClick:()=>k(v.id,1),disabled:d||x===t.length-1,className:"rounded-[var(--inkblot-radius-sm)] p-1 text-[var(--inkblot-semantic-color-text-tertiary)] transition-colors duration-[var(--inkblot-duration-fast)] hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] disabled:opacity-30","aria-label":"Move down",children:(0,R.jsx)(Q.ChevronDown,{className:"h-3 w-3"})}),(0,R.jsx)("button",{type:"button",onClick:()=>y(v.id),disabled:d,className:"rounded-[var(--inkblot-radius-sm)] p-1 text-[var(--inkblot-semantic-color-status-error)] transition-colors duration-[var(--inkblot-duration-fast)] hover:bg-[var(--inkblot-semantic-color-status-error)]/10","aria-label":"Delete block",children:(0,R.jsx)(Q.Trash2,{className:"h-3 w-3"})})]})]},v.id))})})]})}var ds=require("react");var ge=require("react/jsx-runtime"),Sa=(0,ds.forwardRef)(({className:t,...e},r)=>(0,ge.jsx)("form",{ref:r,className:o("grid gap-[var(--inkblot-spacing-4)] rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] p-[var(--inkblot-spacing-5)]",t),...e}));Sa.displayName="Form";function ms({className:t,label:e,hint:r,error:a,children:n,requiredIndicator:i,...s}){return(0,ge.jsxs)("div",{className:o("grid gap-[var(--inkblot-spacing-2)]",t),...s,children:[e?(0,ge.jsxs)("p",{className:"text-[var(--inkblot-semantic-color-text-primary)] [font:var(--inkblot-semantic-typography-body-medium)]",children:[e,i?(0,ge.jsx)("span",{className:"ml-[var(--inkblot-spacing-1)] text-[var(--inkblot-semantic-color-status-error)]",children:"*"}):null]}):null,n,a?(0,ge.jsx)("p",{className:"text-[var(--inkblot-semantic-color-status-error)] [font:var(--inkblot-semantic-typography-body-small)]",children:a}):r?(0,ge.jsx)("p",{className:"text-[var(--inkblot-semantic-color-text-secondary)] [font:var(--inkblot-semantic-typography-body-small)]",children:r}):null]})}function ps({className:t,...e}){return(0,ge.jsx)("div",{className:o("mt-[var(--inkblot-spacing-2)] flex flex-wrap justify-end gap-[var(--inkblot-spacing-3)]",t),...e})}var So=require("react");var It=require("react/jsx-runtime"),uc=[{id:"1",label:"Acme Corp",kind:"org",x:400,y:250,score:82},{id:"2",label:"TechVentures",kind:"org",x:220,y:140,score:65},{id:"3",label:"DataFlow Labs",kind:"org",x:600,y:160,score:45},{id:"4",label:"Jane Smith",kind:"person",x:300,y:380,score:90},{id:"5",label:"Mark Johnson",kind:"person",x:520,y:370,score:72},{id:"6",label:"GlobalTech",kind:"org",x:160,y:300,score:38},{id:"7",label:"Sarah Lee",kind:"person",x:650,y:310,score:55}],vc=[{from:"1",to:"2",strength:.8},{from:"1",to:"3",strength:.5},{from:"1",to:"4",strength:.9},{from:"1",to:"5",strength:.7},{from:"2",to:"6",strength:.4},{from:"3",to:"7",strength:.6},{from:"4",to:"5",strength:.3},{from:"6",to:"4",strength:.5}];function fc(t,e,r,a){return t>=70?e:t>=50?r:a}function Oe(t,e){for(let r of e){let a=t.getPropertyValue(r).trim();if(a)return a}return""}function Ma(t,e,r){if(e){t.font=e;return}t.font=r}function gc({title:t="Entity Graph",subtitle:e,nodes:r=uc,edges:a=vc,className:n}){let i=(0,So.useRef)(null);(0,So.useEffect)(()=>{let l=i.current;if(!l)return;let c=l.getContext("2d");if(!c)return;let d=()=>{let m=l.getBoundingClientRect(),p=window.devicePixelRatio||1;l.width=m.width*p,l.height=m.height*p,c.setTransform(p,0,0,p,0,0),c.clearRect(0,0,m.width,m.height);let b=getComputedStyle(document.documentElement),u=Oe(b,["--inkblot-semantic-color-border-default","--inkblot-semantic-color-border-strong"]),f=Oe(b,["--inkblot-semantic-color-text-tertiary","--inkblot-semantic-color-text-secondary"]),w=Oe(b,["--inkblot-semantic-color-background-secondary","--inkblot-semantic-color-background-primary"]),h=Oe(b,["--inkblot-semantic-color-status-success","--inkblot-semantic-color-interactive-primary"]),g=Oe(b,["--inkblot-semantic-color-status-warning","--inkblot-semantic-color-status-info"]),S=Oe(b,["--inkblot-semantic-color-status-error","--inkblot-semantic-color-status-warning"]),N=Oe(b,["--inkblot-semantic-typography-body-small","--inkblot-semantic-typography-body-medium"]),y=Oe(b,["--inkblot-semantic-typography-body-medium","--inkblot-semantic-typography-body-small"]),k=c.font;a.forEach(v=>{let x=r.find(M=>M.id===v.from),C=r.find(M=>M.id===v.to);!x||!C||(c.beginPath(),c.moveTo(x.x,x.y),c.lineTo(C.x,C.y),c.strokeStyle=u,c.globalAlpha=Math.min(1,Math.max(0,v.strength*.45)),c.lineWidth=Math.max(1,v.strength*2),c.stroke(),c.globalAlpha=1)}),r.forEach(v=>{let x=fc(v.score,h,g,S),C=v.kind==="org"?28:22;c.beginPath(),c.arc(v.x,v.y,C+8,0,Math.PI*2),c.fillStyle=x,c.globalAlpha=.08,c.fill(),c.globalAlpha=1,c.beginPath(),c.arc(v.x,v.y,C,0,Math.PI*2),c.fillStyle=w,c.strokeStyle=x,c.globalAlpha=.7,c.lineWidth=1.5,c.fill(),c.stroke(),c.globalAlpha=1,c.fillStyle=x,Ma(c,N,k),c.textAlign="center",c.textBaseline="middle",c.fillText(v.kind==="org"?"\u2B21":"\u25CF",v.x,v.y),c.fillStyle=f,Ma(c,y,k),c.fillText(v.label,v.x,v.y+C+16),c.fillStyle=x,c.globalAlpha=.8,Ma(c,N,k),c.fillText(String(v.score),v.x,v.y+C+28),c.globalAlpha=1})};return d(),window.addEventListener("resize",d),()=>window.removeEventListener("resize",d)},[a,r]);let s=e??`Relationship intelligence \xB7 ${r.length} nodes \xB7 ${a.length} edges`;return(0,It.jsxs)("section",{className:o("flex h-full flex-col",n),children:[(0,It.jsxs)("header",{className:"flex items-center justify-between border-b border-[var(--inkblot-semantic-color-border-default)] px-8 py-5",children:[(0,It.jsxs)("div",{children:[(0,It.jsx)("h2",{className:"text-lg font-semibold tracking-tight text-[var(--inkblot-semantic-color-text-primary)]",children:t}),(0,It.jsx)("p",{className:"mt-0.5 text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:s})]}),(0,It.jsxs)("div",{className:"flex items-center gap-4 text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:[(0,It.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,It.jsx)("span",{className:"h-2 w-2 rounded-full bg-[var(--inkblot-semantic-color-status-success)]"}),"Orgs"]}),(0,It.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,It.jsx)("span",{className:"h-2 w-2 rounded-full bg-[var(--inkblot-semantic-color-status-warning)]"}),"People"]})]})]}),(0,It.jsx)("div",{className:"relative flex-1",children:(0,It.jsx)("canvas",{ref:i,className:"h-full w-full"})})]})}var ne=require("react"),ze=require("lucide-react");var _=require("react/jsx-runtime"),kc=[{target:"[data-tour='sidebar']",title:"Navigation Sidebar",description:"Access all CRM modules from this sidebar. Each icon represents a different module.",position:"right"},{target:"[data-tour='canvas']",title:"AI Command Canvas",description:"This is your AI-powered command center where you can orchestrate tasks and workflows.",position:"bottom"},{target:"[data-tour='event-feed']",title:"Real-Time Event Feed",description:"Follow live system activity like stage updates, invoices, and communication events.",position:"left"},{target:"[data-tour='system-status']",title:"System Status",description:"This indicator confirms platform health and connectivity.",position:"right"}];function yc({steps:t=kc,open:e,defaultOpen:r=!0,onOpenChange:a,stepIndex:n,defaultStepIndex:i=0,onStepIndexChange:s,onComplete:l,className:c}){let[d,m]=(0,ne.useState)(r),[p,b]=(0,ne.useState)(i),[u,f]=(0,ne.useState)(null),w=e??d,h=n??p,g=t[h],S=h===t.length-1,N=M=>{e===void 0&&m(M),a?.(M)},y=M=>{let F=Math.min(Math.max(M,0),Math.max(t.length-1,0));n===void 0&&b(F),s?.(F)},k=(0,ne.useCallback)(()=>{let M=document.querySelector(g.target);if(!M){f(null);return}f(M.getBoundingClientRect())},[g.target]);(0,ne.useEffect)(()=>(k(),window.addEventListener("resize",k),window.addEventListener("scroll",k,!0),()=>{window.removeEventListener("resize",k),window.removeEventListener("scroll",k,!0)}),[k]);let v=()=>{if(S){N(!1),l();return}y(h+1)},x=()=>{y(h-1)},C=(0,ne.useMemo)(()=>{if(!u)return{top:"50%",left:"50%",transform:"translate(-50%, -50%)"};let M=16,F=320;return g.position==="right"?{top:u.top+u.height/2,left:u.right+M,transform:"translateY(-50%)"}:g.position==="left"?{top:u.top+u.height/2,left:u.left-F-M,transform:"translateY(-50%)"}:g.position==="top"?{top:u.top-M,left:u.left+u.width/2,transform:"translate(-50%, -100%)"}:{top:u.bottom+M,left:u.left+u.width/2,transform:"translateX(-50%)"}},[g.position,u]);return w?(0,_.jsxs)("div",{className:o("fixed inset-0 z-[200]",c),children:[u?(0,_.jsx)("div",{className:"pointer-events-none absolute rounded-[var(--inkblot-radius-lg)] border-2 border-[var(--inkblot-semantic-color-interactive-primary)]/50",style:{top:u.top-6,left:u.left-6,width:u.width+12,height:u.height+12,boxShadow:"0 0 0 9999px var(--inkblot-semantic-color-background-inverse), var(--inkblot-shadow-lg)"}}):(0,_.jsx)("div",{className:"absolute inset-0 bg-[var(--inkblot-semantic-color-background-inverse)]/70"}),(0,_.jsxs)("div",{style:{...C,position:"absolute",width:320,zIndex:210},className:"rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-5 shadow-[var(--inkblot-shadow-lg)]",children:[(0,_.jsxs)("div",{className:"mb-3 flex items-center justify-between",children:[(0,_.jsxs)("span",{className:"text-[10px] uppercase tracking-wide text-[var(--inkblot-semantic-color-text-tertiary)]",children:["Step ",h+1," of ",t.length]}),(0,_.jsx)("button",{type:"button",onClick:()=>{N(!1),l()},className:"rounded-[var(--inkblot-radius-sm)] p-1 text-[var(--inkblot-semantic-color-text-tertiary)] transition-colors duration-[var(--inkblot-duration-fast)] hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)]","aria-label":"Close tour",children:(0,_.jsx)(ze.X,{className:"h-3 w-3"})})]}),(0,_.jsx)("h3",{className:"mb-1.5 text-sm font-semibold text-[var(--inkblot-semantic-color-text-primary)]",children:g.title}),(0,_.jsx)("p",{className:"text-xs leading-relaxed text-[var(--inkblot-semantic-color-text-tertiary)]",children:g.description}),(0,_.jsx)("div",{className:"mb-3 mt-4 flex gap-1",children:t.map((M,F)=>(0,_.jsx)("span",{className:o("h-1 flex-1 rounded-full",F<=h?"bg-[var(--inkblot-semantic-color-interactive-primary)]":"bg-[var(--inkblot-semantic-color-background-tertiary)]")},`${F}-progress`))}),(0,_.jsxs)("div",{className:"flex items-center justify-between",children:[(0,_.jsxs)("button",{type:"button",onClick:x,disabled:h===0,className:"flex items-center gap-1 text-xs text-[var(--inkblot-semantic-color-text-tertiary)] transition-opacity duration-[var(--inkblot-duration-fast)] disabled:opacity-0",children:[(0,_.jsx)(ze.ArrowLeft,{className:"h-3 w-3"}),"Back"]}),(0,_.jsx)("button",{type:"button",onClick:v,className:"flex items-center gap-1.5 rounded-[var(--inkblot-radius-md)] bg-[var(--inkblot-semantic-color-interactive-primary)] px-4 py-2 text-xs font-medium text-[var(--inkblot-semantic-color-text-inverse)]",children:S?(0,_.jsxs)(_.Fragment,{children:[(0,_.jsx)(ze.Check,{className:"h-3 w-3"}),"Get Started"]}):(0,_.jsxs)(_.Fragment,{children:["Next",(0,_.jsx)(ze.ArrowRight,{className:"h-3 w-3"})]})})]})]})]}):null}var Vt=require("react");var Xr=require("react/jsx-runtime"),bs=(0,Vt.createContext)(null);function us(){let t=(0,Vt.useContext)(bs);if(!t)throw new Error("HoverCard components must be used within HoverCard");return t}function vs({children:t,openDelay:e=120,closeDelay:r=120}){let[a,n]=(0,Vt.useState)(!1),i=(0,Vt.useRef)(null),s=(0,Vt.useMemo)(()=>({open:a,setOpen:n,openDelay:e,closeDelay:r,timeoutRef:i}),[a,e,r]);return(0,Xr.jsx)(bs.Provider,{value:s,children:(0,Xr.jsx)("div",{className:"relative inline-flex",children:t})})}var Ea=(0,Vt.forwardRef)(({className:t,onMouseEnter:e,onMouseLeave:r,onFocus:a,onBlur:n,...i},s)=>{let{setOpen:l,openDelay:c,closeDelay:d,timeoutRef:m}=us();return(0,Xr.jsx)("div",{ref:s,tabIndex:0,onMouseEnter:p=>{e?.(p),m.current&&window.clearTimeout(m.current),m.current=window.setTimeout(()=>l(!0),c)},onMouseLeave:p=>{r?.(p),m.current&&window.clearTimeout(m.current),m.current=window.setTimeout(()=>l(!1),d)},onFocus:p=>{a?.(p),l(!0)},onBlur:p=>{n?.(p),l(!1)},className:o(t),...i})});Ea.displayName="HoverCardTrigger";var Ia=(0,Vt.forwardRef)(({className:t,onMouseEnter:e,onMouseLeave:r,...a},n)=>{let{open:i,setOpen:s,closeDelay:l,timeoutRef:c}=us();return i?(0,Xr.jsx)("div",{ref:n,role:"dialog",onMouseEnter:d=>{e?.(d),c.current&&window.clearTimeout(c.current),s(!0)},onMouseLeave:d=>{r?.(d),c.current&&window.clearTimeout(c.current),c.current=window.setTimeout(()=>s(!1),l)},className:o("absolute left-0 top-[calc(100%+var(--inkblot-spacing-2))] z-40 min-w-[calc(var(--inkblot-size-touch-target-min)*4)] rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-primary)] p-[var(--inkblot-spacing-4)] shadow-[var(--inkblot-shadow-md)]",t),...a}):null});Ia.displayName="HoverCardContent";var Fe=require("react");var La=require("react/jsx-runtime"),Aa=(0,Fe.forwardRef)(({className:t,disabled:e,length:r=6,value:a,defaultValue:n="",onValueChange:i,containerProps:s,...l},c)=>{let[d,m]=(0,Fe.useState)(n.slice(0,r)),p=(0,Fe.useRef)([]),b=a!==void 0,u=b?a.slice(0,r):d,f=(0,Fe.useMemo)(()=>Array.from({length:r},(y,k)=>u[k]??""),[u,r]),w=y=>{let k=y.slice(0,r);b||m(k),i?.(k)},h=y=>{let k=p.current[y];k?.focus(),k?.select()},g=(y,k)=>{let v=k.replace(/[^0-9A-Za-z]/g,"").slice(0,1),x=f.map((C,M)=>M===y?v:C);w(x.join("")),v&&y<r-1&&h(y+1)},S=(y,k)=>{if(k.key==="Backspace"&&!f[y]&&y>0){let v=f.map((x,C)=>C===y-1?"":x);w(v.join("")),h(y-1)}k.key==="ArrowLeft"&&y>0&&(k.preventDefault(),h(y-1)),k.key==="ArrowRight"&&y<r-1&&(k.preventDefault(),h(y+1))};return(0,La.jsx)("div",{ref:c,onPaste:y=>{y.preventDefault();let k=y.clipboardData.getData("text").replace(/[^0-9A-Za-z]/g,"").slice(0,r);k&&(w(k),h(Math.min(k.length,r-1)))},className:o("flex items-center gap-[var(--inkblot-spacing-2)]",t,s?.className),...s,children:f.map((y,k)=>(0,La.jsx)("input",{ref:v=>{p.current[k]=v},type:"text",inputMode:"numeric",maxLength:1,value:y,disabled:e,onChange:v=>g(k,v.target.value),onKeyDown:v=>S(k,v),className:o("min-h-[var(--inkblot-size-touch-target-min)] w-full rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-secondary)] px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-2)]","text-center text-[var(--inkblot-semantic-color-text-primary)] [font:var(--inkblot-semantic-typography-heading-small)]","focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--inkblot-semantic-color-border-focus)] focus-visible:outline-offset-2","disabled:opacity-[var(--inkblot-opacity-disabled)] disabled:pointer-events-none"),...l},`otp-slot-${k}`))})});Aa.displayName="InputOtp";var vr=require("react/jsx-runtime"),xc=[{label:"Revenue Confidence",value:82,tone:"success"},{label:"Churn Risk",value:23,tone:"warning",inverted:!0},{label:"Momentum",value:67,tone:"primary"}];function hc({title:t="Intelligence Scores",items:e=xc,className:r}){return(0,vr.jsxs)("article",{className:o("glass rounded-[var(--inkblot-radius-lg)] p-5",r),children:[(0,vr.jsx)("h3",{className:"mb-4 text-xs font-medium uppercase tracking-wide text-[var(--inkblot-semantic-color-text-tertiary)]",children:t}),(0,vr.jsx)("div",{className:"grid grid-cols-3 gap-6",children:e.map(a=>(0,vr.jsx)(ua,{label:a.label,value:a.value,tone:a.tone,color:a.color,inverted:a.inverted},a.label))})]})}var fs=require("react");var Mo=require("react/jsx-runtime"),Da=(0,fs.forwardRef)(({className:t,children:e,requiredIndicator:r,...a},n)=>(0,Mo.jsxs)("label",{ref:n,className:o("inline-flex items-center gap-[var(--inkblot-spacing-1)] text-[var(--inkblot-semantic-color-text-primary)] [font:var(--inkblot-semantic-typography-body-medium)]",t),...a,children:[e,r?(0,Mo.jsx)("span",{className:"text-[var(--inkblot-semantic-color-status-error)]",children:"*"}):null]}));Da.displayName="Label";var ot=require("react"),gs=require("lucide-react");var Ut=require("react/jsx-runtime"),ks=(0,ot.createContext)(null);function Ra(){let t=(0,ot.useContext)(ks);if(!t)throw new Error("Menubar components must be used within Menubar");return t}var ys=(0,ot.createContext)(null);function xs(){let t=(0,ot.useContext)(ys);if(!t)throw new Error("Menubar menu components must be used within MenubarMenu");return t}var Ha=(0,ot.forwardRef)(({className:t,...e},r)=>{let[a,n]=(0,ot.useState)(null),i=(0,ot.useMemo)(()=>({openMenuId:a,setOpenMenuId:n}),[a]);return(0,Ut.jsx)(ks.Provider,{value:i,children:(0,Ut.jsx)("div",{ref:r,className:o("flex items-center gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] p-[var(--inkblot-spacing-2)]",t),...e})})});Ha.displayName="Menubar";function hs({id:t,className:e,...r}){let a=(0,ot.useMemo)(()=>({menuId:t}),[t]);return(0,Ut.jsx)(ys.Provider,{value:a,children:(0,Ut.jsx)("div",{className:o("relative inline-flex",e),...r})})}var Ba=(0,ot.forwardRef)(({className:t,type:e="button",showChevron:r=!0,onClick:a,children:n,...i},s)=>{let{openMenuId:l,setOpenMenuId:c}=Ra(),{menuId:d}=xs(),m=l===d;return(0,Ut.jsxs)("button",{ref:s,type:e,"aria-haspopup":"menu","aria-expanded":m,onClick:p=>{a?.(p),p.defaultPrevented||c(m?null:d)},className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-2)]","[font:var(--inkblot-semantic-typography-body-medium)]",m?"bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]":"text-[var(--inkblot-semantic-color-text-primary)] hover:bg-[var(--inkblot-semantic-color-background-secondary)]",t),...i,children:[n,r?(0,Ut.jsx)(gs.ChevronDown,{style:{width:"var(--inkblot-spacing-4)",height:"var(--inkblot-spacing-4)"}}):null]})});Ba.displayName="MenubarTrigger";var Oa=(0,ot.forwardRef)(({className:t,...e},r)=>{let{openMenuId:a}=Ra(),{menuId:n}=xs();return a!==n?null:(0,Ut.jsx)("div",{ref:r,role:"menu",className:o("absolute left-0 top-[calc(100%+var(--inkblot-spacing-2))] z-40 min-w-[calc(var(--inkblot-size-touch-target-min)*4)] rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-primary)] p-[var(--inkblot-spacing-2)] shadow-[var(--inkblot-shadow-md)]",t),...e})});Oa.displayName="MenubarContent";var za=(0,ot.forwardRef)(({className:t,type:e="button",icon:r,...a},n)=>(0,Ut.jsxs)("button",{ref:n,type:e,role:"menuitem",className:o("flex min-h-[var(--inkblot-size-touch-target-min)] w-full items-center gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-2)]","text-left text-[var(--inkblot-semantic-color-text-primary)] hover:bg-[var(--inkblot-semantic-color-background-secondary)]","[font:var(--inkblot-semantic-typography-body-medium)]",t),...a,children:[r,a.children]}));za.displayName="MenubarItem";function Ns({className:t,...e}){return(0,Ut.jsx)("div",{className:o("my-[var(--inkblot-spacing-2)] border-b border-[var(--inkblot-semantic-color-border-default)]",t),...e})}var Fa=(0,ot.forwardRef)(({className:t,...e},r)=>{let{setOpenMenuId:a}=Ra(),n=(0,ot.useRef)(null);return(0,Ut.jsx)("div",{ref:i=>{n.current=i,typeof r=="function"?r(i):r&&(r.current=i)},onPointerDown:i=>{n.current?.contains(i.target)&&a(null)},className:o(t),...e})});Fa.displayName="MenubarCloseZone";var Va=require("lucide-react");var Ve=require("react/jsx-runtime");function ws({items:t,className:e,onItemSelect:r}){return(0,Ve.jsx)("nav",{"aria-label":"Navigation menu",className:o("flex flex-wrap items-center gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] p-[var(--inkblot-spacing-2)]",e),children:t.map(a=>(0,Ve.jsx)(Nc,{item:a,onSelect:()=>r?.(a)},a.id))})}function Nc({item:t,onSelect:e,className:r,...a}){let n=o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-2)]","[font:var(--inkblot-semantic-typography-body-medium)]",t.active?"bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]":"text-[var(--inkblot-semantic-color-text-primary)] hover:bg-[var(--inkblot-semantic-color-background-secondary)]",t.disabled&&"pointer-events-none opacity-[var(--inkblot-opacity-disabled)]",r);return t.href?(0,Ve.jsxs)("a",{href:t.href,"aria-current":t.active?"page":void 0,className:n,onClick:()=>e?.(),...a,children:[t.icon,t.label,t.active?null:(0,Ve.jsx)(Va.ChevronRight,{style:{width:"var(--inkblot-spacing-4)",height:"var(--inkblot-spacing-4)"}})]}):(0,Ve.jsxs)("button",{type:"button","aria-current":t.active?"page":void 0,disabled:t.disabled,className:n,onClick:()=>e?.(),children:[t.icon,t.label,t.active?null:(0,Ve.jsx)(Va.ChevronRight,{style:{width:"var(--inkblot-spacing-4)",height:"var(--inkblot-spacing-4)"}})]})}var Zr=require("react"),j=require("lucide-react");var L=require("react/jsx-runtime"),wc=[{id:"company",question:"What's your company name?",subtitle:"We'll personalize your workspace around your brand.",icon:j.Building2,type:"input",field:"companyName",placeholder:"e.g. Acme Corporation"},{id:"size",question:"How many employees does your company have?",subtitle:"This helps us tailor the right features for your team size.",icon:j.Users,type:"select",field:"companySize",options:[{value:"1-10",label:"1-10"},{value:"11-50",label:"11-50"},{value:"51-200",label:"51-200"},{value:"201-1000",label:"201-1,000"},{value:"1000+",label:"1,000+"}]},{id:"industry",question:"What industry are you in?",subtitle:"We'll pre-configure pipelines and templates for your sector.",icon:j.Briefcase,type:"select",field:"industry",options:[{value:"saas",label:"SaaS / Software"},{value:"agency",label:"Agency / Consulting"},{value:"ecommerce",label:"E-Commerce"},{value:"fintech",label:"Fintech"},{value:"healthcare",label:"Healthcare"},{value:"other",label:"Other"}]},{id:"role",question:"What's your role?",subtitle:"So we can surface the most relevant modules first.",icon:j.Target,type:"select",field:"role",options:[{value:"founder",label:"Founder / CEO"},{value:"sales",label:"Sales Leader"},{value:"marketing",label:"Marketing"},{value:"ops",label:"Operations"},{value:"other",label:"Other"}]},{id:"goals",question:"What do you want to achieve?",subtitle:"Select all that apply. We'll prioritize these in your dashboard.",icon:j.Target,type:"multi-select",field:"goals",options:[{value:"pipeline",label:"Manage Sales Pipeline"},{value:"contacts",label:"Organize Contacts"},{value:"email",label:"Email Campaigns"},{value:"invoicing",label:"Invoicing"},{value:"reporting",label:"Analytics & Reporting"},{value:"automation",label:"Workflow Automation"}]},{id:"source",question:"How did you hear about us?",subtitle:"Helps us improve our outreach.",icon:j.Megaphone,type:"select",field:"source",options:[{value:"google",label:"Google Search"},{value:"social",label:"Social Media"},{value:"referral",label:"Friend / Colleague"},{value:"event",label:"Conference / Event"},{value:"other",label:"Other"}]},{id:"website",question:"What's your company website?",subtitle:"Optional, we'll try to auto-import your branding.",icon:j.Globe,type:"input",field:"website",placeholder:"e.g. https://acme.com"}];function Cc({onComplete:t,steps:e=wc,value:r,defaultValue:a,onValueChange:n,stepIndex:i,defaultStepIndex:s=0,onStepIndexChange:l,onCancel:c,showSkip:d=!0,className:m}){let[p,b]=(0,Zr.useState)(s),[u,f]=(0,Zr.useState)(a??{}),w=i!==void 0,h=r!==void 0,g=w?i:p,S=h?r:u,N=e[g],y=S[N.field]??(N.type==="multi-select"?[]:""),k=g===e.length-1,v=(0,Zr.useMemo)(()=>N.type==="multi-select"?y.length>0:N.id==="website"?!0:typeof y=="string"&&y.trim().length>0,[y,N.id,N.type]),x=B=>{let U=Math.min(Math.max(B,0),Math.max(e.length-1,0));w||b(U),l?.(U)},C=B=>{h||f(B),n?.(B)},M=()=>x(g-1),F=()=>{if(k){t(S);return}x(g+1)},H=(B,U)=>{C({...S,[B]:U})},Y=(B,U)=>{let z=S[B]??[],tt=z.includes(U)?z.filter(bt=>bt!==U):[...z,U];H(B,tt)};return(0,L.jsxs)("section",{className:o("fixed inset-0 z-[100] flex items-center justify-center bg-[var(--inkblot-semantic-color-background-primary)]",m),children:[(0,L.jsxs)("div",{className:"absolute inset-0 overflow-hidden",children:[(0,L.jsx)("div",{className:"absolute left-1/4 top-1/4 h-96 w-96 rounded-full bg-[var(--inkblot-semantic-color-interactive-primary)]/5 blur-[120px]"}),(0,L.jsx)("div",{className:"absolute bottom-1/4 right-1/4 h-96 w-96 rounded-full bg-[var(--inkblot-semantic-color-status-warning)]/5 blur-[120px]"})]}),(0,L.jsxs)("div",{className:"relative w-full max-w-lg px-6",children:[(0,L.jsxs)("header",{className:"mb-12 flex items-center justify-center gap-2",children:[(0,L.jsx)("span",{className:"flex h-10 w-10 items-center justify-center rounded-[var(--inkblot-radius-lg)] bg-[var(--inkblot-semantic-color-interactive-primary)]",children:(0,L.jsx)(j.Command,{className:"h-5 w-5 text-[var(--inkblot-semantic-color-text-inverse)]"})}),(0,L.jsx)("span",{className:"text-lg font-semibold tracking-tight text-[var(--inkblot-semantic-color-text-primary)]",children:"Citron OS"})]}),(0,L.jsx)("div",{className:"mb-10 flex gap-1",children:e.map((B,U)=>(0,L.jsx)("span",{className:o("h-0.5 flex-1 rounded-full",U<g?"bg-[var(--inkblot-semantic-color-interactive-primary)]":U===g?"bg-[var(--inkblot-semantic-color-interactive-primary)]/60":"bg-[var(--inkblot-semantic-color-background-tertiary)]")},B.id))}),(0,L.jsxs)("div",{className:"space-y-6",children:[(0,L.jsxs)("div",{children:[(0,L.jsx)("div",{className:"mb-4 flex h-10 w-10 items-center justify-center rounded-[var(--inkblot-radius-lg)] bg-[var(--inkblot-semantic-color-interactive-secondary)]",children:(0,L.jsx)(N.icon,{className:"h-5 w-5 text-[var(--inkblot-semantic-color-text-primary)]"})}),(0,L.jsx)("h2",{className:"text-xl font-semibold tracking-tight text-[var(--inkblot-semantic-color-text-primary)]",children:N.question}),(0,L.jsx)("p",{className:"mt-1 text-sm text-[var(--inkblot-semantic-color-text-tertiary)]",children:N.subtitle})]}),N.type==="input"?(0,L.jsx)("input",{autoFocus:!0,value:y||"",onChange:B=>H(N.field,B.target.value),placeholder:N.placeholder,onKeyDown:B=>{B.key==="Enter"&&v&&F()},className:"w-full rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] px-5 py-3.5 text-sm text-[var(--inkblot-semantic-color-text-primary)] placeholder:text-[var(--inkblot-semantic-color-text-tertiary)] outline-none"}):null,N.type==="select"?(0,L.jsx)("div",{className:"grid grid-cols-2 gap-2",children:N.options?.map(B=>(0,L.jsx)("button",{type:"button",onClick:()=>H(N.field,B.value),className:o("rounded-[var(--inkblot-radius-lg)] border px-4 py-3 text-left text-sm transition-colors duration-[var(--inkblot-duration-fast)]",y===B.value?"border-[var(--inkblot-semantic-color-interactive-primary)] bg-[var(--inkblot-semantic-color-interactive-primary)]/10 text-[var(--inkblot-semantic-color-text-primary)]":"border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] text-[var(--inkblot-semantic-color-text-tertiary)] hover:bg-[var(--inkblot-semantic-color-background-tertiary)]"),children:B.label},B.value))}):null,N.type==="multi-select"?(0,L.jsx)("div",{className:"grid grid-cols-2 gap-2",children:N.options?.map(B=>{let U=y.includes(B.value);return(0,L.jsxs)("button",{type:"button",onClick:()=>Y(N.field,B.value),className:o("flex items-center gap-2 rounded-[var(--inkblot-radius-lg)] border px-4 py-3 text-left text-sm transition-colors duration-[var(--inkblot-duration-fast)]",U?"border-[var(--inkblot-semantic-color-interactive-primary)] bg-[var(--inkblot-semantic-color-interactive-primary)]/10 text-[var(--inkblot-semantic-color-text-primary)]":"border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] text-[var(--inkblot-semantic-color-text-tertiary)] hover:bg-[var(--inkblot-semantic-color-background-tertiary)]"),children:[(0,L.jsx)("span",{className:o("flex h-4 w-4 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-sm)] border",U?"border-[var(--inkblot-semantic-color-interactive-primary)] bg-[var(--inkblot-semantic-color-interactive-primary)]":"border-[var(--inkblot-semantic-color-border-default)]"),children:U?(0,L.jsx)(j.Check,{className:"h-2.5 w-2.5 text-[var(--inkblot-semantic-color-text-inverse)]"}):null}),B.label]},B.value)})}):null]}),(0,L.jsxs)("footer",{className:"mt-10 flex items-center justify-between",children:[(0,L.jsxs)("button",{type:"button",onClick:M,disabled:g===0,className:"flex items-center gap-1.5 rounded-[var(--inkblot-radius-md)] px-4 py-2 text-xs text-[var(--inkblot-semantic-color-text-tertiary)] transition-opacity duration-[var(--inkblot-duration-fast)] disabled:opacity-0",children:[(0,L.jsx)(j.ArrowLeft,{className:"h-3 w-3"}),"Back"]}),(0,L.jsxs)("div",{className:"flex items-center gap-3",children:[!k&&d?(0,L.jsx)("button",{type:"button",onClick:c??F,className:"text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:"Skip"}):null,(0,L.jsx)("button",{type:"button",onClick:F,disabled:!v,className:"flex items-center gap-2 rounded-[var(--inkblot-radius-lg)] bg-[var(--inkblot-semantic-color-interactive-primary)] px-5 py-2.5 text-xs font-medium text-[var(--inkblot-semantic-color-text-inverse)] transition-opacity duration-[var(--inkblot-duration-fast)] disabled:opacity-40",children:k?(0,L.jsxs)(L.Fragment,{children:[(0,L.jsx)(j.Sparkles,{className:"h-3 w-3"}),"Launch Citron OS"]}):(0,L.jsxs)(L.Fragment,{children:["Continue",(0,L.jsx)(j.ArrowRight,{className:"h-3 w-3"})]})})]})]})]})]})}var Eo=require("lucide-react");var Ge=require("react/jsx-runtime");function Cs({page:t,totalPages:e,onPageChange:r,className:a}){let n=Array.from({length:e},(i,s)=>s+1);return(0,Ge.jsxs)("nav",{"aria-label":"Pagination",className:o("flex items-center gap-[var(--inkblot-spacing-2)]",a),children:[(0,Ge.jsx)("button",{type:"button","aria-label":"Previous page",disabled:t<=1,onClick:()=>r(Math.max(t-1,1)),className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] px-[var(--inkblot-spacing-3)]","bg-[var(--inkblot-semantic-color-interactive-secondary)] text-[var(--inkblot-semantic-color-text-primary)]","hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] disabled:opacity-[var(--inkblot-opacity-disabled)] disabled:pointer-events-none"),children:(0,Ge.jsx)(Eo.ChevronLeft,{style:{width:"var(--inkblot-spacing-4)",height:"var(--inkblot-spacing-4)"}})}),n.map(i=>{let s=i===t;return(0,Ge.jsx)("button",{type:"button",onClick:()=>r(i),"aria-current":s?"page":void 0,className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] min-w-[var(--inkblot-size-touch-target-min)] items-center justify-center rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-3)]","[font:var(--inkblot-semantic-typography-body-medium)]",s?"bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]":"bg-[var(--inkblot-semantic-color-interactive-secondary)] text-[var(--inkblot-semantic-color-text-primary)] hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)]"),children:i},`page-${i}`)}),(0,Ge.jsx)("button",{type:"button","aria-label":"Next page",disabled:t>=e,onClick:()=>r(Math.min(t+1,e)),className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] px-[var(--inkblot-spacing-3)]","bg-[var(--inkblot-semantic-color-interactive-secondary)] text-[var(--inkblot-semantic-color-text-primary)]","hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] disabled:opacity-[var(--inkblot-opacity-disabled)] disabled:pointer-events-none"),children:(0,Ge.jsx)(Eo.ChevronRight,{style:{width:"var(--inkblot-spacing-4)",height:"var(--inkblot-spacing-4)"}})})]})}var lt=require("react");var fr=require("react/jsx-runtime"),Ts=(0,lt.createContext)(null);function Ga(){let t=(0,lt.useContext)(Ts);if(!t)throw new Error("Popover components must be used within Popover");return t}function Ps({children:t,open:e,defaultOpen:r=!1,onOpenChange:a}){let[n,i]=(0,lt.useState)(r),s=(0,lt.useRef)(null),l=e!==void 0,c=l?e:n,d=(0,lt.useCallback)(p=>{l||i(p),a?.(p)},[l,a]);(0,lt.useEffect)(()=>{if(!c)return;let p=u=>{let f=u.target;f&&s.current&&!s.current.contains(f)&&d(!1)},b=u=>{u.key==="Escape"&&d(!1)};return window.addEventListener("pointerdown",p),window.addEventListener("keydown",b),()=>{window.removeEventListener("pointerdown",p),window.removeEventListener("keydown",b)}},[c,d]);let m=(0,lt.useMemo)(()=>({open:c,setOpen:d,containerRef:s}),[c,d]);return(0,fr.jsx)(Ts.Provider,{value:m,children:(0,fr.jsx)("div",{ref:s,className:"relative inline-flex",children:t})})}var Ka=(0,lt.forwardRef)(({className:t,type:e="button",onClick:r,...a},n)=>{let{open:i,setOpen:s}=Ga();return(0,fr.jsx)("button",{ref:n,type:e,"aria-haspopup":"dialog","aria-expanded":i,onClick:l=>{r?.(l),l.defaultPrevented||s(!i)},className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-interactive-secondary)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)] text-[var(--inkblot-semantic-color-text-primary)]","hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)]","[font:var(--inkblot-semantic-typography-body-medium)]",t),...a})});Ka.displayName="PopoverTrigger";var Wa=(0,lt.forwardRef)(({className:t,...e},r)=>{let{open:a}=Ga();return a?(0,fr.jsx)("div",{ref:r,role:"dialog",className:o("absolute left-0 top-[calc(100%+var(--inkblot-spacing-2))] z-40 min-w-[calc(var(--inkblot-size-touch-target-min)*4)] rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-primary)] p-[var(--inkblot-spacing-4)] shadow-[var(--inkblot-shadow-md)]",t),...e}):null});Wa.displayName="PopoverContent";var _a=(0,lt.forwardRef)(({className:t,type:e="button",onClick:r,...a},n)=>{let{setOpen:i}=Ga();return(0,fr.jsx)("button",{ref:n,type:e,onClick:s=>{r?.(s),s.defaultPrevented||i(!1)},className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-2)]","bg-[var(--inkblot-semantic-color-interactive-secondary)] text-[var(--inkblot-semantic-color-text-primary)]",t),...a})});_a.displayName="PopoverClose";var Ss=require("react");var gr=require("react/jsx-runtime"),Ua=(0,Ss.forwardRef)(({className:t,value:e,max:r=100,showValueLabel:a=!1,...n},i)=>{let s=Math.max(0,Math.min(e/r,1)),l=`${Math.round(s*100)}%`;return(0,gr.jsxs)("div",{ref:i,className:o("grid gap-[var(--inkblot-spacing-2)]",t),...n,children:[(0,gr.jsx)("div",{className:"h-[var(--inkblot-spacing-2)] overflow-hidden rounded-[var(--inkblot-radius-full)] bg-[var(--inkblot-semantic-color-background-secondary)]",children:(0,gr.jsx)("div",{className:"h-full rounded-[var(--inkblot-radius-full)] bg-[var(--inkblot-semantic-color-interactive-primary)] transition-[width] duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)]",style:{width:l}})}),a?(0,gr.jsx)("p",{className:"text-[var(--inkblot-semantic-color-text-secondary)] [font:var(--inkblot-semantic-typography-body-small)]",children:l}):null]})});Ua.displayName="Progress";var Qr=require("react");var ke=require("react/jsx-runtime"),$a=(0,Qr.forwardRef)(({className:t,options:e,value:r,defaultValue:a,onValueChange:n,name:i="radio-group",...s},l)=>{let[c,d]=(0,Qr.useState)(a??""),m=r!==void 0,p=m?r:c,b=u=>{m||d(u),n?.(u)};return(0,ke.jsx)("div",{ref:l,role:"radiogroup",className:o("grid gap-[var(--inkblot-spacing-2)]",t),...s,children:e.map(u=>(0,ke.jsxs)("label",{className:o("flex cursor-pointer items-start gap-[var(--inkblot-spacing-3)] rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] p-[var(--inkblot-spacing-3)]","bg-[var(--inkblot-semantic-color-background-primary)] hover:bg-[var(--inkblot-semantic-color-background-secondary)]",u.disabled&&"pointer-events-none opacity-[var(--inkblot-opacity-disabled)]"),children:[(0,ke.jsx)(Io,{type:"radio",name:i,value:u.value,checked:p===u.value,disabled:u.disabled,onChange:()=>b(u.value)}),(0,ke.jsxs)("span",{className:"grid gap-[var(--inkblot-spacing-1)]",children:[(0,ke.jsx)("span",{className:"text-[var(--inkblot-semantic-color-text-primary)] [font:var(--inkblot-semantic-typography-body-medium)]",children:u.label}),u.description?(0,ke.jsx)("span",{className:"text-[var(--inkblot-semantic-color-text-secondary)] [font:var(--inkblot-semantic-typography-body-small)]",children:u.description}):null]})]},u.value))})});$a.displayName="RadioGroup";var Io=(0,Qr.forwardRef)(({className:t,...e},r)=>(0,ke.jsx)("input",{ref:r,className:o("mt-[var(--inkblot-spacing-1)] h-[var(--inkblot-spacing-4)] w-[var(--inkblot-spacing-4)] border-[var(--inkblot-semantic-color-border-default)] text-[var(--inkblot-semantic-color-interactive-primary)]",t),...e}));Io.displayName="RadioGroupItem";var Lo=require("react"),Ao=require("lucide-react");var ye=require("react/jsx-runtime");function Ms({primary:t,secondary:e,direction:r="horizontal",defaultPrimarySize:a=50,minPrimarySize:n=20,minSecondarySize:i=20,className:s}){let[l,c]=(0,Lo.useState)(a),d=r==="horizontal",m=(0,Lo.useMemo)(()=>d?{gridTemplateColumns:`${l}fr auto ${100-l}fr`}:{gridTemplateRows:`${l}fr auto ${100-l}fr`},[d,l]),p=(b,u)=>{let f=u.getBoundingClientRect(),w=d?(b.x-f.left)/f.width*100:(b.y-f.top)/f.height*100,h=100-i,g=Math.min(h,Math.max(n,w));c(g)};return(0,ye.jsxs)("div",{className:o("grid h-full w-full overflow-hidden rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)]",s),style:m,children:[(0,ye.jsx)("div",{className:"min-h-0 min-w-0 overflow-auto p-[var(--inkblot-spacing-3)]",children:t}),(0,ye.jsx)("div",{className:o(d?"w-[var(--inkblot-spacing-2)]":"h-[var(--inkblot-spacing-2)]","bg-[var(--inkblot-semantic-color-border-default)]"),children:(0,ye.jsx)("button",{type:"button","aria-label":"Resize panels",className:o("flex h-full w-full items-center justify-center bg-[var(--inkblot-semantic-color-background-secondary)] text-[var(--inkblot-semantic-color-text-secondary)]","hover:bg-[var(--inkblot-semantic-color-background-tertiary)] active:bg-[var(--inkblot-semantic-color-background-secondary)]"),onPointerDown:b=>{let u=b.currentTarget.closest("div")?.parentElement;if(!u)return;p({x:b.clientX,y:b.clientY},u);let f=h=>{p({x:h.clientX,y:h.clientY},u)},w=()=>{window.removeEventListener("pointermove",f),window.removeEventListener("pointerup",w)};window.addEventListener("pointermove",f),window.addEventListener("pointerup",w)},children:d?(0,ye.jsx)(Ao.GripVertical,{style:{width:"var(--inkblot-spacing-4)",height:"var(--inkblot-spacing-4)"}}):(0,ye.jsx)(Ao.GripHorizontal,{style:{width:"var(--inkblot-spacing-4)",height:"var(--inkblot-spacing-4)"}})})}),(0,ye.jsx)("div",{className:"min-h-0 min-w-0 overflow-auto p-[var(--inkblot-spacing-3)]",children:e})]})}var Es=require("react");var Is=require("react/jsx-runtime"),ja=(0,Es.forwardRef)(({className:t,maxHeight:e="var(--inkblot-size-touch-target-min)",...r},a)=>(0,Is.jsx)("div",{ref:a,className:o("overflow-auto rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] p-[var(--inkblot-spacing-3)]",t),style:{maxHeight:e,...r.style},...r}));ja.displayName="ScrollArea";var Ls=require("lucide-react"),As=require("react");var or=require("react/jsx-runtime"),qa=(0,As.forwardRef)(({className:t,options:e,placeholder:r,error:a,disabled:n,...i},s)=>(0,or.jsxs)("div",{className:"relative w-full",children:[(0,or.jsxs)("select",{ref:s,disabled:n,"aria-invalid":a,className:o("min-h-[var(--inkblot-size-touch-target-min)] w-full appearance-none rounded-[var(--inkblot-radius-md)] border bg-[var(--inkblot-semantic-color-background-secondary)] px-4 py-2 pr-10 text-[var(--inkblot-semantic-color-text-primary)] transition-[border-color,box-shadow] duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--inkblot-semantic-color-border-focus)] focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-[var(--inkblot-opacity-disabled)]",a?"border-[var(--inkblot-semantic-color-status-error)] focus-visible:ring-[var(--inkblot-semantic-color-status-error)]":"border-[var(--inkblot-semantic-color-border-default)] hover:border-[var(--inkblot-semantic-color-border-strong)]",t),...i,children:[r?(0,or.jsx)("option",{value:"",disabled:!0,children:r}):null,e.map(l=>(0,or.jsx)("option",{value:l.value,disabled:l.disabled,children:l.label},l.value))]}),(0,or.jsx)(Ls.ChevronDown,{"aria-hidden":!0,className:"pointer-events-none absolute right-3 top-1/2 size-4 -translate-y-1/2 text-[var(--inkblot-semantic-color-text-tertiary)]"})]}));qa.displayName="Select";var Ds=require("react");var Rs=require("react/jsx-runtime"),Ya=(0,Ds.forwardRef)(({className:t,orientation:e="horizontal",decorative:r=!0,...a},n)=>(0,Rs.jsx)("div",{ref:n,role:r?"none":"separator","aria-orientation":e,className:o("shrink-0 bg-[var(--inkblot-semantic-color-border-default)]",e==="horizontal"?"h-px w-full":"h-full w-px",t),...a}));Ya.displayName="Separator";var Hs=require("lucide-react"),Bs=require("react");var $t=require("react/jsx-runtime"),Tc={top:"inset-x-0 top-0 border-b rounded-b-[var(--inkblot-radius-lg)]",right:"inset-y-0 right-0 h-full w-full max-w-[420px] border-l",bottom:"inset-x-0 bottom-0 border-t rounded-t-[var(--inkblot-radius-lg)]",left:"inset-y-0 left-0 h-full w-full max-w-[420px] border-r"};function Os({open:t,onOpenChange:e,side:r="right",title:a,description:n,showCloseButton:i=!0,className:s,overlayClassName:l,children:c,...d}){return(0,Bs.useEffect)(()=>{if(!t)return;let m=p=>{p.key==="Escape"&&e?.(!1)};return window.addEventListener("keydown",m),()=>window.removeEventListener("keydown",m)},[t,e]),t?(0,$t.jsxs)("div",{className:"fixed inset-0 z-50",children:[(0,$t.jsx)("button",{type:"button","aria-label":"Close panel",onClick:()=>e?.(!1),className:o("absolute inset-0 bg-[var(--inkblot-semantic-color-background-primary)]/70",l)}),(0,$t.jsxs)("section",{role:"dialog","aria-modal":"true",className:o("absolute bg-[var(--inkblot-semantic-color-background-secondary)] p-5 text-[var(--inkblot-semantic-color-text-primary)] shadow-lg border-[var(--inkblot-semantic-color-border-default)]",Tc[r],s),...d,children:[(a||n||i)&&(0,$t.jsxs)("header",{className:"mb-4 flex items-start justify-between gap-4",children:[(0,$t.jsxs)("div",{children:[a?(0,$t.jsx)("h3",{className:"text-base font-semibold",children:a}):null,n?(0,$t.jsx)("p",{className:"mt-1 text-sm text-[var(--inkblot-semantic-color-text-secondary)]",children:n}):null]}),i?(0,$t.jsx)("button",{type:"button","aria-label":"Close",onClick:()=>e?.(!1),className:"inline-flex size-9 items-center justify-center rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] text-[var(--inkblot-semantic-color-text-secondary)] transition-colors hover:text-[var(--inkblot-semantic-color-text-primary)]",children:(0,$t.jsx)(Hs.X,{className:"size-4"})}):null]}),(0,$t.jsx)("div",{children:c})]})]}):null}var Do=require("lucide-react");var pt=require("react/jsx-runtime");function zs({items:t,collapsed:e=!1,onCollapsedChange:r,header:a,footer:n,className:i,...s}){return(0,pt.jsxs)("aside",{className:o("flex h-full flex-col border-r border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-3 transition-[width] duration-[var(--inkblot-duration-fast)]",e?"w-[76px]":"w-[260px]",i),...s,children:[(0,pt.jsxs)("div",{className:"mb-3 flex items-center justify-between gap-2",children:[(0,pt.jsx)("div",{className:o("truncate text-sm font-semibold",e&&"sr-only"),children:a}),(0,pt.jsx)("button",{type:"button","aria-label":e?"Expandir sidebar":"Colapsar sidebar",onClick:()=>r?.(!e),className:"inline-flex size-9 items-center justify-center rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] text-[var(--inkblot-semantic-color-text-secondary)] hover:text-[var(--inkblot-semantic-color-text-primary)]",children:e?(0,pt.jsx)(Do.PanelLeftOpen,{className:"size-4"}):(0,pt.jsx)(Do.PanelLeftClose,{className:"size-4"})})]}),(0,pt.jsx)("nav",{className:"flex flex-1 flex-col gap-1",children:t.map(l=>{let c=l.icon;return(0,pt.jsxs)("button",{type:"button",disabled:l.disabled,onClick:l.onClick,className:o("flex min-h-[var(--inkblot-size-touch-target-min)] items-center gap-3 rounded-[var(--inkblot-radius-md)] px-3 py-2 text-sm transition-colors",l.active?"bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]":"text-[var(--inkblot-semantic-color-text-secondary)] hover:bg-[var(--inkblot-semantic-color-background-tertiary)] hover:text-[var(--inkblot-semantic-color-text-primary)]",l.disabled&&"cursor-not-allowed opacity-[var(--inkblot-opacity-disabled)]"),children:[c?(0,pt.jsx)(c,{className:"size-4 shrink-0"}):null,e?null:(0,pt.jsxs)(pt.Fragment,{children:[(0,pt.jsx)("span",{className:"truncate",children:l.label}),l.badge?(0,pt.jsx)("span",{className:"ml-auto",children:l.badge}):null]})]},l.id)})}),n?(0,pt.jsx)("div",{className:o("mt-3 border-t border-[var(--inkblot-semantic-color-border-default)] pt-3",e&&"sr-only"),children:n}):null]})}var Ro=require("react");var Ke=require("react/jsx-runtime"),Xa=(0,Ro.forwardRef)(({className:t,value:e,defaultValue:r,min:a=0,max:n=100,step:i=1,disabled:s,showValue:l=!0,onValueChange:c,...d},m)=>{let p=e??r??a,b=(0,Ro.useMemo)(()=>n<=a?0:(p-a)/(n-a)*100,[p,a,n]);return(0,Ke.jsxs)("div",{className:o("w-full",t),children:[(0,Ke.jsxs)("div",{className:"mb-2 flex items-center justify-between text-sm",children:[(0,Ke.jsx)("span",{className:"text-[var(--inkblot-semantic-color-text-secondary)]",children:a}),l?(0,Ke.jsx)("span",{className:"font-medium text-[var(--inkblot-semantic-color-text-primary)]",children:p}):null,(0,Ke.jsx)("span",{className:"text-[var(--inkblot-semantic-color-text-secondary)]",children:n})]}),(0,Ke.jsx)("input",{ref:m,type:"range",value:e,defaultValue:r,min:a,max:n,step:i,disabled:s,onChange:u=>c?.(Number(u.target.value)),className:"h-2 w-full cursor-pointer appearance-none rounded-full bg-[var(--inkblot-semantic-color-background-tertiary)] disabled:cursor-not-allowed disabled:opacity-[var(--inkblot-opacity-disabled)] [&::-webkit-slider-runnable-track]:h-2 [&::-webkit-slider-runnable-track]:rounded-full [&::-webkit-slider-runnable-track]:bg-transparent [&::-webkit-slider-thumb]:mt-[-4px] [&::-webkit-slider-thumb]:size-4 [&::-webkit-slider-thumb]:appearance-none [&::-webkit-slider-thumb]:rounded-full [&::-webkit-slider-thumb]:border [&::-webkit-slider-thumb]:border-[var(--inkblot-semantic-color-border-default)] [&::-webkit-slider-thumb]:bg-[var(--inkblot-semantic-color-background-secondary)] [&::-webkit-slider-thumb]:shadow-sm [&::-moz-range-track]:h-2 [&::-moz-range-track]:rounded-full [&::-moz-range-track]:bg-transparent [&::-moz-range-thumb]:size-4 [&::-moz-range-thumb]:rounded-full [&::-moz-range-thumb]:border [&::-moz-range-thumb]:border-[var(--inkblot-semantic-color-border-default)] [&::-moz-range-thumb]:bg-[var(--inkblot-semantic-color-background-secondary)]",style:{background:`linear-gradient(to right, var(--inkblot-semantic-color-interactive-primary) 0%, var(--inkblot-semantic-color-interactive-primary) ${b}%, var(--inkblot-semantic-color-background-tertiary) ${b}%, var(--inkblot-semantic-color-background-tertiary) 100%)`},...d})]})});Xa.displayName="Slider";var Fs=require("react");var ie=require("lucide-react");var ht=require("react/jsx-runtime"),Pc={info:"border-[var(--inkblot-semantic-color-status-info)]",success:"border-[var(--inkblot-semantic-color-status-success)]",warning:"border-[var(--inkblot-semantic-color-status-warning)]",error:"border-[var(--inkblot-semantic-color-status-error)]"},Sc={info:(0,ht.jsx)(ie.Info,{className:"size-4"}),success:(0,ht.jsx)(ie.CheckCircle2,{className:"size-4"}),warning:(0,ht.jsx)(ie.AlertTriangle,{className:"size-4"}),error:(0,ht.jsx)(ie.CircleX,{className:"size-4"})};function Ho({title:t,description:e,variant:r="info",action:a,onClose:n,className:i,...s}){return(0,ht.jsx)("div",{role:"status",className:o("w-full rounded-[var(--inkblot-radius-lg)] border-l-4 border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-3 text-[var(--inkblot-semantic-color-text-primary)] shadow-sm",Pc[r],i),...s,children:(0,ht.jsxs)("div",{className:"flex items-start gap-3",children:[(0,ht.jsx)("span",{className:"mt-0.5 text-[var(--inkblot-semantic-color-text-secondary)]",children:Sc[r]}),(0,ht.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,ht.jsx)("p",{className:"text-sm font-semibold",children:t}),e?(0,ht.jsx)("p",{className:"mt-1 text-sm text-[var(--inkblot-semantic-color-text-secondary)]",children:e}):null,a?(0,ht.jsx)("button",{type:"button",...a,className:o("mt-2 rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] px-2 py-1 text-xs font-medium text-[var(--inkblot-semantic-color-text-primary)] hover:bg-[var(--inkblot-semantic-color-background-tertiary)]",a.className),children:a.label}):null]}),n?(0,ht.jsx)("button",{type:"button","aria-label":"Close notification",onClick:n,className:"inline-flex size-8 items-center justify-center rounded-[var(--inkblot-radius-md)] text-[var(--inkblot-semantic-color-text-tertiary)] hover:text-[var(--inkblot-semantic-color-text-primary)]",children:(0,ht.jsx)(ie.X,{className:"size-4"})}):null]})})}var Za=require("react/jsx-runtime"),Mc={"top-left":"top-4 left-4","top-right":"top-4 right-4","bottom-left":"bottom-4 left-4","bottom-right":"bottom-4 right-4"};function Bo({toasts:t,position:e="bottom-right",onDismiss:r,className:a,...n}){return(0,Za.jsx)("div",{className:o("fixed z-50 flex w-full max-w-[360px] flex-col gap-2",Mc[e],a),...n,children:t.map(i=>(0,Za.jsx)(Ho,{...i,onClose:()=>r?.(i.id)},i.id))})}var Gs=require("react/jsx-runtime");function Vs({toasts:t,maxVisible:e=3,position:r="bottom-right",onDismiss:a,...n}){let i=(0,Fs.useMemo)(()=>t.slice(0,e),[t,e]);return(0,Gs.jsx)(Bo,{toasts:i,position:r,onDismiss:a,...n})}var Oo=require("react");var Qa=require("react/jsx-runtime"),Ja=(0,Oo.forwardRef)(({checked:t,defaultChecked:e=!1,onCheckedChange:r,disabled:a,className:n,...i},s)=>{let[l,c]=(0,Oo.useState)(e),d=t??l;return(0,Qa.jsx)("button",{ref:s,type:"button",role:"switch","aria-checked":d,disabled:a,onClick:()=>{if(a)return;let p=!d;t===void 0&&c(p),r?.(p)},className:o("relative inline-flex h-7 w-12 items-center rounded-full border transition-colors duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--inkblot-semantic-color-border-focus)] focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-[var(--inkblot-opacity-disabled)]",d?"border-[var(--inkblot-semantic-color-interactive-primary)] bg-[var(--inkblot-semantic-color-interactive-primary)]":"border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-tertiary)]",n),...i,children:(0,Qa.jsx)("span",{className:o("inline-block size-5 rounded-full bg-[var(--inkblot-semantic-color-background-secondary)] transition-transform duration-[var(--inkblot-duration-fast)]",d?"translate-x-6":"translate-x-1")})})});Ja.displayName="Switch";var xe=require("react"),kr=require("lucide-react");var at=require("react/jsx-runtime"),tn=(0,xe.forwardRef)(({className:t,...e},r)=>(0,at.jsx)("div",{className:"w-full overflow-x-auto rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)]",children:(0,at.jsx)("table",{ref:r,className:o("w-full border-collapse bg-[var(--inkblot-semantic-color-background-secondary)]",t),...e})})),en=(0,xe.forwardRef)(({className:t,...e},r)=>(0,at.jsx)("thead",{ref:r,className:o("bg-[var(--inkblot-semantic-color-background-tertiary)]",t),...e})),rn=(0,xe.forwardRef)(({className:t,...e},r)=>(0,at.jsx)("tbody",{ref:r,className:o(t),...e})),on=(0,xe.forwardRef)(({className:t,...e},r)=>(0,at.jsx)("tr",{ref:r,className:o("border-b border-[var(--inkblot-semantic-color-border-default)] text-[var(--inkblot-semantic-color-text-primary)] transition-colors hover:bg-[var(--inkblot-semantic-color-background-tertiary)]",t),...e})),an=(0,xe.forwardRef)(({className:t,children:e,sortable:r=!1,sortDirection:a,onSort:n,sortButtonProps:i,...s},l)=>(0,at.jsx)("th",{ref:l,className:o("px-4 py-3 text-left text-sm font-semibold text-[var(--inkblot-semantic-color-text-secondary)]",t),...s,children:r?(0,at.jsxs)("button",{type:"button",onClick:n,className:"inline-flex items-center gap-[var(--inkblot-spacing-1)] rounded-[var(--inkblot-radius-sm)] text-inherit transition-colors duration-[var(--inkblot-duration-fast)] hover:text-[var(--inkblot-semantic-color-text-primary)]",...i,children:[e,a==="asc"?(0,at.jsx)(kr.ArrowUp,{className:"h-3.5 w-3.5","aria-hidden":!0}):a==="desc"?(0,at.jsx)(kr.ArrowDown,{className:"h-3.5 w-3.5","aria-hidden":!0}):(0,at.jsx)(kr.ArrowUpDown,{className:"h-3.5 w-3.5","aria-hidden":!0})]}):e})),nn=(0,xe.forwardRef)(({className:t,...e},r)=>(0,at.jsx)("td",{ref:r,className:o("px-4 py-3 text-sm",t),...e})),sn=(0,xe.forwardRef)(({className:t,...e},r)=>(0,at.jsx)("caption",{ref:r,className:o("p-3 text-left text-sm text-[var(--inkblot-semantic-color-text-tertiary)]",t),...e})),ln=(0,xe.forwardRef)(({className:t,colSpan:e,title:r="No data available",description:a="Adjust filters or add records to populate this table.",...n},i)=>(0,at.jsx)("tr",{children:(0,at.jsx)("td",{ref:i,colSpan:e,className:o("px-4 py-10 text-center align-middle","text-[var(--inkblot-semantic-color-text-secondary)]",t),...n,children:(0,at.jsxs)("div",{className:"mx-auto flex max-w-[420px] flex-col gap-[var(--inkblot-spacing-1)]",children:[(0,at.jsx)("span",{className:"[font:var(--inkblot-semantic-typography-body-large-bold)] text-[var(--inkblot-semantic-color-text-primary)]",children:r}),(0,at.jsx)("span",{className:"[font:var(--inkblot-semantic-typography-body-small)]",children:a})]})})}));tn.displayName="Table";en.displayName="TableHeader";rn.displayName="TableBody";on.displayName="TableRow";an.displayName="TableHead";nn.displayName="TableCell";sn.displayName="TableCaption";ln.displayName="TableEmptyState";var zo=require("react");var yr=require("react/jsx-runtime");function Ks({items:t,value:e,defaultValue:r,onValueChange:a,fullWidth:n=!1,className:i,...s}){let l=r??t.find(u=>!u.disabled)?.id??"",[c,d]=(0,zo.useState)(l),m=e??c,p=(0,zo.useMemo)(()=>t.find(u=>u.id===m)??t.find(u=>!u.disabled),[m,t]),b=u=>{e===void 0&&d(u),a?.(u)};return(0,yr.jsxs)("div",{className:o("w-full",i),...s,children:[(0,yr.jsx)("div",{role:"tablist",className:"inline-flex rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-tertiary)] p-1",children:t.map(u=>{let f=u.id===p?.id;return(0,yr.jsx)("button",{type:"button",role:"tab","aria-selected":f,disabled:u.disabled,onClick:()=>b(u.id),className:o("min-h-[var(--inkblot-size-touch-target-min)] rounded-[var(--inkblot-radius-md)] px-4 py-2 text-sm font-medium transition-colors disabled:cursor-not-allowed disabled:opacity-[var(--inkblot-opacity-disabled)]",n&&"flex-1",f?"bg-[var(--inkblot-semantic-color-background-secondary)] text-[var(--inkblot-semantic-color-text-primary)]":"text-[var(--inkblot-semantic-color-text-secondary)] hover:text-[var(--inkblot-semantic-color-text-primary)]"),children:u.label},u.id)})}),(0,yr.jsx)("div",{className:"mt-3 rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-4 text-[var(--inkblot-semantic-color-text-primary)]",children:p?.content})]})}var Ws=require("react");var _s=require("react/jsx-runtime"),Ec={none:"resize-none",vertical:"resize-y",horizontal:"resize-x",both:"resize"},cn=(0,Ws.forwardRef)(({className:t,error:e,disabled:r,resize:a="vertical",...n},i)=>(0,_s.jsx)("textarea",{ref:i,disabled:r,"aria-invalid":e,className:o("min-h-[120px] w-full rounded-[var(--inkblot-radius-md)] border bg-[var(--inkblot-semantic-color-background-secondary)] px-4 py-3 text-[var(--inkblot-semantic-color-text-primary)] placeholder:text-[var(--inkblot-semantic-color-text-tertiary)] transition-[border-color,box-shadow] duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--inkblot-semantic-color-border-focus)] focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-[var(--inkblot-opacity-disabled)]",Ec[a],e?"border-[var(--inkblot-semantic-color-status-error)] focus-visible:ring-[var(--inkblot-semantic-color-status-error)]":"border-[var(--inkblot-semantic-color-border-default)] hover:border-[var(--inkblot-semantic-color-border-strong)]",t),...n}));cn.displayName="Textarea";var Us=require("react");var Fo=require("react/jsx-runtime"),Ic={top:"bottom-full left-1/2 mb-2 -translate-x-1/2",right:"left-full top-1/2 ml-2 -translate-y-1/2",bottom:"left-1/2 top-full mt-2 -translate-x-1/2",left:"right-full top-1/2 mr-2 -translate-y-1/2"};function $s({content:t,side:e="top",open:r,defaultOpen:a=!1,onOpenChange:n,disabled:i=!1,className:s,children:l,...c}){let[d,m]=(0,Us.useState)(a),p=r??d,b=u=>{r===void 0&&m(u),n?.(u)};return(0,Fo.jsxs)("span",{className:o("relative inline-flex",s),onMouseEnter:()=>!i&&b(!0),onMouseLeave:()=>b(!1),onFocus:()=>!i&&b(!0),onBlur:()=>b(!1),...c,children:[l,p&&!i?(0,Fo.jsx)("span",{role:"tooltip",className:o("pointer-events-none absolute z-50 rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] px-3 py-2 text-xs text-[var(--inkblot-semantic-color-text-primary)] shadow-sm",Ic[e]),children:t}):null]})}var js=require("lucide-react");var Lt=require("react/jsx-runtime");function Lc({item:t,onSelect:e,onGenerateWithAI:r}){return(0,Lt.jsxs)("div",{role:"button",tabIndex:0,onClick:()=>e?.(t),onKeyDown:a=>{(a.key==="Enter"||a.key===" ")&&(a.preventDefault(),e?.(t))},className:o("group mb-[var(--inkblot-spacing-4)] break-inside-avoid rounded-[var(--inkblot-radius-lg)]","bg-[var(--inkblot-semantic-color-background-secondary)] shadow-[var(--inkblot-shadow-sm)]","cursor-pointer transition-shadow duration-[var(--inkblot-duration-fast)]","hover:shadow-[var(--inkblot-shadow-md)]","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--inkblot-semantic-color-border-focus)]"),children:[t.thumbnail?(0,Lt.jsx)("img",{src:t.thumbnail,alt:t.title,className:"w-full rounded-t-[var(--inkblot-radius-lg)] object-cover"}):(0,Lt.jsx)("div",{className:"flex h-32 items-center justify-center rounded-t-[var(--inkblot-radius-lg)] bg-[var(--inkblot-semantic-color-background-tertiary)]",children:(0,Lt.jsx)("span",{className:"text-[var(--inkblot-semantic-color-text-tertiary)] [font:var(--inkblot-semantic-typography-body-small)]",children:"No preview"})}),(0,Lt.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-2)] p-[var(--inkblot-spacing-4)]",children:[t.category&&(0,Lt.jsx)("span",{className:o("inline-flex w-fit items-center rounded-[var(--inkblot-radius-sm)] px-[var(--inkblot-spacing-2)] py-[var(--inkblot-spacing-1)]","bg-[var(--inkblot-semantic-color-interactive-secondary)] text-[var(--inkblot-semantic-color-text-secondary)]","[font:var(--inkblot-semantic-typography-body-small)]"),children:t.category}),(0,Lt.jsx)("h3",{className:"text-[var(--inkblot-semantic-color-text-primary)] [font:var(--inkblot-semantic-typography-heading-4)]",children:t.title}),t.description&&(0,Lt.jsx)("p",{className:"line-clamp-2 text-[var(--inkblot-semantic-color-text-secondary)] [font:var(--inkblot-semantic-typography-body-small)]",children:t.description}),r&&(0,Lt.jsxs)("button",{type:"button",onClick:a=>{a.stopPropagation(),r(t)},className:o("mt-[var(--inkblot-spacing-1)] inline-flex w-full items-center justify-center gap-[var(--inkblot-spacing-2)]","rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-2)]","bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]","[font:var(--inkblot-semantic-typography-body-small)]","opacity-0 transition-opacity duration-[var(--inkblot-duration-fast)] group-hover:opacity-100","hover:bg-[var(--inkblot-semantic-color-interactive-primary-hover)]","active:bg-[var(--inkblot-semantic-color-interactive-primary-active)]","focus-visible:opacity-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--inkblot-semantic-color-border-focus)]"),children:[(0,Lt.jsx)(js.Sparkles,{className:"h-4 w-4","aria-hidden":!0}),"Generate with AI"]})]})]})}function qs({items:t,columns:e=3,onSelect:r,onGenerateWithAI:a,className:n}){return(0,Lt.jsx)("div",{className:o("gap-[var(--inkblot-spacing-4)]",n),style:{columns:e,columnGap:"var(--inkblot-spacing-4)"},children:t.map(i=>(0,Lt.jsx)(Lc,{item:i,onSelect:r,onGenerateWithAI:a},i.id))})}var Vo=require("react"),Nt=require("lucide-react");var O=require("react/jsx-runtime"),Ac={todo:{label:"To Do",color:"bg-[var(--inkblot-semantic-color-text-tertiary)]"},in_progress:{label:"In Progress",color:"bg-[var(--inkblot-semantic-color-status-info)]"},done:{label:"Done",color:"bg-[var(--inkblot-semantic-color-status-success)]"}},Dc={urgent:{label:"Urgent",icon:Nt.AlertTriangle,color:"text-[var(--inkblot-semantic-color-status-warning)]"},high:{label:"High",icon:Nt.ArrowUp,color:"text-[var(--inkblot-semantic-color-status-warning)]"},medium:{label:"Medium",icon:Nt.Minus,color:"text-[var(--inkblot-semantic-color-status-info)]"},low:{label:"Low",icon:Nt.ArrowDown,color:"text-[var(--inkblot-semantic-color-text-tertiary)]"}};function Rc(t){return t.completed?"done":"todo"}function xr({label:t,children:e}){return(0,O.jsxs)("div",{className:"flex items-start gap-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)] border-b border-[var(--inkblot-semantic-color-border-default)]",children:[(0,O.jsx)("span",{className:"w-28 shrink-0 text-[var(--inkblot-semantic-color-text-tertiary)] [font:var(--inkblot-semantic-typography-body-small)]",children:t}),(0,O.jsx)("div",{className:"min-w-0 flex-1 text-[var(--inkblot-semantic-color-text-primary)] [font:var(--inkblot-semantic-typography-body-small)]",children:e})]})}function Ys({task:t,open:e,onOpenChange:r,extraFields:a,onStatusChange:n,onAssigneeChange:i,className:s}){let l=(0,Vo.useCallback)(()=>r?.(!1),[r]);if((0,Vo.useEffect)(()=>{if(!e)return;let b=u=>{u.key==="Escape"&&l()};return document.addEventListener("keydown",b),()=>document.removeEventListener("keydown",b)},[e,l]),!e)return null;let c=t?Rc(t):null,d=c?Ac[c]:null,m=t?Dc[t.priority]:null,p=m?.icon??Nt.Minus;return(0,O.jsxs)("div",{className:"fixed inset-0 z-50 flex justify-end",children:[(0,O.jsx)("div",{className:"absolute inset-0 bg-black/40 transition-opacity duration-[var(--inkblot-duration-fast)]",onClick:l,"aria-hidden":!0}),(0,O.jsx)("div",{role:"dialog","aria-modal":"true","aria-label":t?.title??"Task details",className:o("relative z-10 flex h-full w-[480px] flex-col","bg-[var(--inkblot-semantic-color-background-primary)] shadow-[var(--inkblot-shadow-md)]",s),children:t?(0,O.jsxs)(O.Fragment,{children:[(0,O.jsxs)("div",{className:"flex items-start gap-[var(--inkblot-spacing-3)] border-b border-[var(--inkblot-semantic-color-border-default)] p-[var(--inkblot-spacing-6)]",children:[(0,O.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,O.jsx)("h2",{className:"text-[var(--inkblot-semantic-color-text-primary)] [font:var(--inkblot-semantic-typography-heading-4)]",children:t.title}),t.jiraKey&&(0,O.jsx)("span",{className:"mt-[var(--inkblot-spacing-1)] inline-block text-[var(--inkblot-semantic-color-text-tertiary)] [font:var(--inkblot-semantic-typography-body-small)]",children:t.jiraKey})]}),(0,O.jsx)("button",{type:"button",onClick:l,"aria-label":"Close",className:o("inline-flex h-8 w-8 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-md)]","text-[var(--inkblot-semantic-color-text-tertiary)] transition-colors duration-[var(--inkblot-duration-fast)]","hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] hover:text-[var(--inkblot-semantic-color-text-primary)]","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--inkblot-semantic-color-border-focus)]"),children:(0,O.jsx)(Nt.X,{className:"h-4 w-4","aria-hidden":!0})})]}),(0,O.jsxs)("div",{className:"flex-1 overflow-y-auto p-[var(--inkblot-spacing-6)]",children:[(0,O.jsx)(xr,{label:"Status",children:(0,O.jsxs)("button",{type:"button",onClick:()=>{if(!n||!c)return;let b=["todo","in_progress","done"],u=b[(b.indexOf(c)+1)%b.length];n(u)},className:o("inline-flex items-center gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-sm)] px-[var(--inkblot-spacing-2)] py-[var(--inkblot-spacing-1)]","transition-colors duration-[var(--inkblot-duration-fast)]",n&&"cursor-pointer hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)]"),disabled:!n,children:[(0,O.jsx)("span",{className:o("h-2 w-2 shrink-0 rounded-full",d?.color)}),d?.label]})}),(0,O.jsx)(xr,{label:"Priority",children:(0,O.jsxs)("span",{className:o("inline-flex items-center gap-[var(--inkblot-spacing-2)]",m?.color),children:[(0,O.jsx)(p,{className:"h-4 w-4","aria-hidden":!0}),m?.label]})}),(0,O.jsx)(xr,{label:"Assignee",children:(0,O.jsxs)("span",{className:"inline-flex items-center gap-[var(--inkblot-spacing-2)]",children:[(0,O.jsx)(Nt.User,{className:"h-4 w-4 text-[var(--inkblot-semantic-color-text-tertiary)]","aria-hidden":!0}),t.assignee]})}),(0,O.jsx)(xr,{label:"Due date",children:(0,O.jsxs)("span",{className:"inline-flex items-center gap-[var(--inkblot-spacing-2)]",children:[(0,O.jsx)(Nt.Calendar,{className:"h-4 w-4 text-[var(--inkblot-semantic-color-text-tertiary)]","aria-hidden":!0}),t.date]})}),(0,O.jsx)(xr,{label:"Company",children:t.company}),a?.map(b=>(0,O.jsx)(xr,{label:b.label,children:b.value},b.label))]})]}):(0,O.jsx)("div",{className:"flex flex-1 items-center justify-center p-[var(--inkblot-spacing-6)]",children:(0,O.jsx)("p",{className:"text-[var(--inkblot-semantic-color-text-tertiary)] [font:var(--inkblot-semantic-typography-body-small)]",children:"No task selected"})})})]})}var q=require("react/jsx-runtime");function Xs({name:t,description:e,icon:r,connected:a=!1,onConnect:n,onDisconnect:i,className:s}){return(0,q.jsxs)("div",{className:o("flex flex-col gap-[var(--inkblot-spacing-4)] rounded-[var(--inkblot-radius-lg)]","bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-5)] shadow-[var(--inkblot-shadow-sm)]",s),children:[(0,q.jsxs)("div",{className:"flex items-start gap-[var(--inkblot-spacing-4)]",children:[(0,q.jsx)("div",{className:o("flex h-10 w-10 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-md)]","bg-[var(--inkblot-semantic-color-background-tertiary)] text-[var(--inkblot-semantic-color-text-secondary)]"),children:r??(0,q.jsx)("span",{className:"h-5 w-5 rounded-full bg-[var(--inkblot-semantic-color-border-default)]"})}),(0,q.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,q.jsx)("h3",{className:"text-[var(--inkblot-semantic-color-text-primary)] [font:var(--inkblot-semantic-typography-heading-4)]",children:t}),(0,q.jsx)("p",{className:"mt-[var(--inkblot-spacing-1)] text-[var(--inkblot-semantic-color-text-secondary)] [font:var(--inkblot-semantic-typography-body-small)]",children:e})]})]}),(0,q.jsx)("div",{className:"flex items-center justify-between",children:a?(0,q.jsxs)(q.Fragment,{children:[(0,q.jsxs)("span",{className:"inline-flex items-center gap-[var(--inkblot-spacing-2)] [font:var(--inkblot-semantic-typography-body-small)]",children:[(0,q.jsx)("span",{className:"h-2 w-2 shrink-0 rounded-full bg-[var(--inkblot-semantic-color-status-success)]"}),(0,q.jsx)("span",{className:"text-[var(--inkblot-semantic-color-status-success)]",children:"Connected"})]}),i&&(0,q.jsx)("button",{type:"button",onClick:i,className:o("rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","bg-[var(--inkblot-semantic-color-interactive-secondary)] text-[var(--inkblot-semantic-color-text-primary)]","[font:var(--inkblot-semantic-typography-body-small)]","transition-colors duration-[var(--inkblot-duration-fast)]","hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)]","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--inkblot-semantic-color-border-focus)]"),children:"Disconnect"})]}):(0,q.jsxs)(q.Fragment,{children:[(0,q.jsxs)("span",{className:"inline-flex items-center gap-[var(--inkblot-spacing-2)] [font:var(--inkblot-semantic-typography-body-small)]",children:[(0,q.jsx)("span",{className:"h-2 w-2 shrink-0 rounded-full bg-[var(--inkblot-semantic-color-text-tertiary)]"}),(0,q.jsx)("span",{className:"text-[var(--inkblot-semantic-color-text-tertiary)]",children:"Not connected"})]}),n&&(0,q.jsx)("button",{type:"button",onClick:n,className:o("rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]","[font:var(--inkblot-semantic-typography-body-small)]","transition-colors duration-[var(--inkblot-duration-fast)]","hover:bg-[var(--inkblot-semantic-color-interactive-primary-hover)]","active:bg-[var(--inkblot-semantic-color-interactive-primary-active)]","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--inkblot-semantic-color-border-focus)]"),children:"Connect"})]})})]})}var Hc="var(--inkblot-semantic-color-background-primary)",Bc="var(--inkblot-semantic-color-background-secondary)",Oc="var(--inkblot-semantic-color-border-default)",zc="var(--inkblot-semantic-color-text-primary)",Fc="var(--inkblot-semantic-color-text-secondary)",Vc="var(--inkblot-semantic-color-interactive-primary)",Gc="var(--inkblot-semantic-color-interactive-secondary)",Kc="var(--inkblot-semantic-color-interactive-secondary-hover)";0&&(module.exports={AIComposeInput,AIEmailGenerator,Accordion,ActionButtons,ActivityStream,AdvancedDropdown,Alert,AlertDialog,AppLayout,AppNavigationRail,AppSidebar,AspectRatio,AssistantPanel,Avatar,Badge,Breadcrumb,Button,CITRON_THEME_STORAGE_KEY,Calendar,CampaignTable,CanvasProvider,Card,CardContent,CardDescription,CardFooter,CardHeader,CardTitle,Carousel,CenteredAssistantChat,Chart,Checkbox,CircularScore,Collapsible,Command,CommandBar,CommandCanvas,ContextMenu,Dialog,DialogClose,DialogContent,DialogDescription,DialogFooter,DialogHeader,DialogTitle,DialogTrigger,Drawer,DrawerClose,DrawerContent,DrawerDescription,DrawerFooter,DrawerHeader,DrawerTitle,DrawerTrigger,DropdownMenu,DropdownMenuContent,DropdownMenuItem,DropdownMenuSeparator,DropdownMenuTrigger,EmailBlockEditor,EmailCampaignsView,EmailComposeActionButtons,EmailTemplatesSection,EntityCard,EntityCommandCard,ErrorBoundary,EventFeed,EventRow,EventStreamFeed,EventStreamSidebar,Form,FormActions,FormField,GlobalAssistantChat,GraphView,GuidedTour,HoverCard,HoverCardContent,HoverCardTrigger,Input,InputOtp,IntegrationPlaceholder,IntelligenceCard,IntelligenceLab,IntelligenceScoreCard,InvoiceEditorPage,InvoiceForm,InvoicePreview,Label,MainShell,Menubar,MenubarCloseZone,MenubarContent,MenubarItem,MenubarMenu,MenubarSeparator,MenubarTrigger,MetricComparisonList,ModuleContainer,ModuleErrorBoundary,ModuleSkeleton,NavLink,NavLinkRouter,NavigationMenu,OSNavigationRail,OnboardingWizard,PageErrorFallback,PageHeader,PageHeaderActionButton,Pagination,Popover,PopoverClose,PopoverContent,PopoverTrigger,Progress,RadioGroup,RadioGroupItem,Resizable,RouteWithErrorBoundary,ScrollArea,SearchBar,Select,Separator,Sheet,Sidebar,Skeleton,Slider,Sonner,StatCardGrid,StatCards,StatCardsWithChart,StatusBadge,Switch,TabSystem,Table,TableBody,TableCaption,TableCell,TableEmptyState,TableHead,TableHeader,TableRow,Tabs,TaskCreateForm,TaskDetailsPanel,TaskItem,TaskKanban,TaskKanbanBoard,TaskKanbanCard,TaskKanbanColumn,TaskList,TasksView,TemplateCard,TemplateMasonryGrid,Textarea,ThemeProvider,ThemeSwitcherButton,Toast,Toaster,Toggle,ToggleGroup,Tooltip,semanticBackgroundPrimary,semanticBackgroundSecondary,semanticBorderDefault,semanticInteractivePrimary,semanticInteractiveSecondary,semanticInteractiveSecondaryHover,semanticTextPrimary,semanticTextSecondary,useCanvas,useTheme});
20
+ [Your name]`,ri=[{id:"1",campaignName:"Q1 Product Launch",recipients:"2840 recipients",status:"sent",opens:"68%",clicks:"24%",date:"Feb 12, 2026"},{id:"2",campaignName:"Welcome Series",recipients:"1200 recipients",status:"active",statusSubtext:"Running",opens:"-",clicks:"-",date:"Feb 28, 2026"},{id:"3",campaignName:"Re-engagement Campaign",recipients:"890 recipients",status:"draft",opens:"-",clicks:"-",date:"Feb 5, 2026"},{id:"4",campaignName:"Holiday Promo",recipients:"4500 recipients",status:"scheduled",opens:"-",clicks:"-",date:"Mar 1, 2026"}],oi=[{id:"1",category:"Onboarding",title:"Welcome Series",uses:"34 uses"},{id:"2",category:"Marketing",title:"Product Announcement",uses:"12 uses"},{id:"3",category:"Retention",title:"Renewal Reminder",uses:"28 uses"},{id:"4",category:"Sales",title:"Meeting Follow-up",uses:"56 uses"}],ai=["Acme Corp - Sarah Chen","TechStart Inc - Mike Rodriguez","GlobalTech - Lisa Kim","Enterprise Co - John Smith","StartupXYZ - Emma Wilson"],jl=[{key:"campaign",label:"Campaign"},{key:"status",label:"Status"},{key:"opens",label:"Opens"},{key:"clicks",label:"Clicks"},{key:"date",label:"Date"}],$l=[{label:"Total Sent",value:"12.4K",change:"This month",changeVariant:"success"},{label:"Avg. Open Rate",value:"64%",change:"+8% vs prior",changeVariant:"success"},{label:"Avg. Click Rate",value:"22%",change:"+3% vs prior",changeVariant:"success"},{label:"Active Automations",value:"7",change:"3 paused",changeVariant:"error"}];function ba({onSendNow:t,onSchedule:e,onSaveDraft:r,onNewCampaign:a,onGenerateWithAI:i,onTemplateClick:n,className:s}){let[l,c]=(0,te.useState)("campaigns"),[d,m]=(0,te.useState)(""),[p,b]=(0,te.useState)(""),[u,f]=(0,te.useState)(""),[C,x]=(0,te.useState)(!1),[g,S]=(0,te.useState)(""),N=(0,te.useMemo)(()=>{if(!d.trim())return ri;let R=d.toLowerCase();return ri.filter(q=>q.campaignName.toLowerCase().includes(R)||q.recipients.toLowerCase().includes(R))},[d]),y=(0,te.useMemo)(()=>{if(!d.trim())return oi;let R=d.toLowerCase();return oi.filter(q=>q.title.toLowerCase().includes(R)||q.category.toLowerCase().includes(R))},[d]),k=(0,te.useMemo)(()=>{if(!g.trim())return ai;let R=g.toLowerCase();return ai.filter(q=>q.toLowerCase().includes(R))},[g]),v=async()=>{x(!0),await new Promise(R=>setTimeout(R,1500)),f(_l),x(!1)},h=()=>{t?.()},P=()=>{e?.()},E=()=>{r?.()},O=l==="campaigns"||l==="templates";return(0,_.jsx)("div",{className:o("flex min-h-screen flex-col bg-[var(--inkblot-semantic-color-background-primary)]",s),children:(0,_.jsxs)("div",{className:"flex flex-1 flex-col gap-[var(--inkblot-spacing-8)] px-[var(--inkblot-spacing-8)] py-[var(--inkblot-spacing-8)]",children:[(0,_.jsx)(Qe,{title:"Email Campaigns",subtitle:"Automate outreach \xB7 AI-powered templates",icon:(0,_.jsx)(ni.Mail,{className:"h-5 w-5"}),action:(0,_.jsx)(Je,{label:"New Campaign",onClick:()=>a?.()})}),(0,_.jsx)(Fr,{tabs:[{id:"campaigns",label:"Campaigns"},{id:"templates",label:"Templates"},{id:"compose",label:"Compose"}],activeTabId:l,onTabChange:c}),O?(0,_.jsx)(ke,{placeholder:l==="campaigns"?"Search campaigns...":"Search templates...",value:d,onChange:R=>m(R.target.value)}):null,l==="campaigns"?(0,_.jsxs)(_.Fragment,{children:[(0,_.jsx)(zr,{items:$l}),(0,_.jsx)(Mr,{columns:jl,rows:N})]}):l==="templates"?(0,_.jsx)(Ir,{templates:y,onGenerateWithAI:i,onTemplateClick:n}):(0,_.jsxs)("div",{className:"flex max-w-2xl flex-col gap-[var(--inkblot-spacing-6)] rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-6)] shadow-[var(--inkblot-shadow-sm)]",children:[(0,_.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-6)]",children:[(0,_.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-2)]",children:[(0,_.jsx)("label",{className:"uppercase tracking-wider text-[var(--inkblot-semantic-color-text-primary)] [font:var(--inkblot-semantic-typography-body-small)]",children:"Subject"}),(0,_.jsx)(Me,{type:"text",value:p,onChange:R=>b(R.target.value),placeholder:"Enter subject line..."})]}),(0,_.jsx)(pr,{label:"Body",value:u,onChange:R=>f(R.target.value),placeholder:"Compose your email or let AI generate content...",loading:C,onWriteWithAI:v}),(0,_.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-2)]",children:[(0,_.jsx)(ke,{label:"Recipients",placeholder:"Search contacts, segments, or tags...",value:g,onChange:R=>S(R.target.value)}),k.length>0?(0,_.jsx)("ul",{className:"flex flex-wrap gap-[var(--inkblot-spacing-2)]",children:k.slice(0,5).map(R=>(0,_.jsx)("li",{className:o("rounded-[var(--inkblot-radius-md)]","bg-[var(--inkblot-semantic-color-background-secondary)]","px-[var(--inkblot-spacing-2)] py-[var(--inkblot-spacing-1)]","[font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-secondary)]"),children:R},R))}):null]})]}),(0,_.jsx)(Pr,{onSendNow:h,onSchedule:P,onSaveDraft:E})]})]})})}var ft=require("react"),li=require("react/jsx-runtime"),Yr="citron-ui-theme",si=(0,ft.createContext)(null);function ql(){if(typeof window>"u")return null;try{let t=window.localStorage.getItem(Yr);if(t==="light"||t==="dark")return t}catch{}return null}function Yl(){return typeof window>"u"?"light":window.matchMedia?.("(prefers-color-scheme: dark)").matches?"dark":"light"}function ii(t){typeof document>"u"||document.documentElement.setAttribute("data-theme",t)}function ua({children:t}){let[e,r]=(0,ft.useState)("light"),[a,i]=(0,ft.useState)(!1);(0,ft.useLayoutEffect)(()=>{if(typeof window>"u")return;let d=ql()??Yl();r(d),ii(d),i(!0)},[]),(0,ft.useEffect)(()=>{if(a&&(ii(e),!(typeof window>"u")))try{window.localStorage.setItem(Yr,e)}catch{}},[e,a]);let n=(0,ft.useCallback)(c=>{r(c)},[]),s=(0,ft.useCallback)(()=>{r(c=>c==="light"?"dark":"light")},[]),l=(0,ft.useMemo)(()=>({theme:e,setTheme:n,toggleTheme:s}),[e,n,s]);return(0,li.jsx)(si.Provider,{value:l,children:t})}function Xr(){let t=(0,ft.useContext)(si);if(!t)throw new Error("useTheme must be used within a ThemeProvider");return t}var xo=require("lucide-react");var va=require("react/jsx-runtime");function Zr({className:t,type:e="button",...r}){let{theme:a,toggleTheme:i}=Xr(),n=a==="dark",s=n?xo.Sun:xo.Moon;return(0,va.jsx)("button",{type:e,onClick:i,"aria-label":n?"Switch to light mode":"Switch to dark mode","aria-pressed":n,className:o("group relative inline-flex h-10 w-10 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-md)] border border-transparent","text-[var(--inkblot-semantic-color-text-tertiary)] transition-colors duration-[var(--inkblot-duration-fast)]","hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] hover:text-[var(--inkblot-semantic-color-text-primary)]","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--inkblot-semantic-color-border-focus)] focus-visible:ring-offset-2 focus-visible:ring-offset-[var(--inkblot-semantic-color-background-primary)]",t),...r,children:(0,va.jsx)(s,{className:"h-[18px] w-[18px] shrink-0",strokeWidth:2,"aria-hidden":!0})})}var ci=require("react"),di=require("react-router-dom");var mi=require("react/jsx-runtime"),ho=(0,ci.forwardRef)(({className:t,activeClassName:e,pendingClassName:r,...a},i)=>(0,mi.jsx)(di.NavLink,{ref:i,className:({isActive:n,isPending:s})=>o(t,n&&e,s&&r),...a}));ho.displayName="NavLinkRouter";var or=require("react"),Co=require("lucide-react");var L=require("react/jsx-runtime"),wo=o("min-h-[var(--inkblot-size-touch-target-min)] w-full rounded-[var(--inkblot-radius-md)]","border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-primary)]","px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","[font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-primary)] placeholder:text-[var(--inkblot-semantic-color-text-tertiary)]","transition-colors duration-[var(--inkblot-duration-fast)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)]"),ze=o("[font:var(--inkblot-semantic-typography-body-small)] font-medium","text-[var(--inkblot-semantic-color-text-secondary)]"),bi="border-[var(--inkblot-semantic-color-status-error)]";function pi({items:t,value:e,onChange:r,placeholder:a,hasError:i,onCreateNew:n,createNewLabel:s}){let[l,c]=(0,or.useState)(""),[d,m]=(0,or.useState)(!1),p=(0,or.useRef)(null);(0,or.useEffect)(()=>{let f=C=>{p.current&&!p.current.contains(C.target)&&m(!1)};return document.addEventListener("mousedown",f),()=>document.removeEventListener("mousedown",f)},[]);let b=t.find(f=>f.id===e),u=t.filter(f=>f.name.toLowerCase().includes(l.toLowerCase()));return(0,L.jsxs)("div",{ref:p,className:"relative",children:[(0,L.jsx)("input",{type:"text",value:d?l:b?.name??"",onChange:f=>{c(f.target.value),d||m(!0)},onFocus:()=>{m(!0),c("")},placeholder:a,className:o(wo,i&&!e&&bi)}),d&&(0,L.jsxs)("div",{className:o("absolute z-50 mt-[var(--inkblot-spacing-1)] max-h-48 w-full overflow-auto","rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-primary)] shadow-[var(--inkblot-shadow-sm)]"),children:[u.map(f=>(0,L.jsx)("button",{type:"button",onClick:()=>{r(f.id),m(!1),c("")},className:o("w-full px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)] text-left","[font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-primary)]","transition-colors duration-[var(--inkblot-duration-fast)]","hover:bg-[var(--inkblot-semantic-color-background-tertiary)]",f.id===e&&"bg-[var(--inkblot-semantic-color-background-tertiary)]"),children:f.name},f.id)),u.length===0&&!n&&(0,L.jsx)("div",{className:o("px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)]","[font:var(--inkblot-semantic-typography-body-small)]","text-[var(--inkblot-semantic-color-text-tertiary)]"),children:"No results"}),n&&u.length===0&&(0,L.jsxs)("button",{type:"button",onClick:()=>{n(),m(!1)},className:o("flex w-full items-center gap-[var(--inkblot-spacing-2)]","px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","[font:var(--inkblot-semantic-typography-body-small)] font-medium","text-[var(--inkblot-semantic-color-interactive-primary)]","transition-colors duration-[var(--inkblot-duration-fast)]","hover:bg-[var(--inkblot-semantic-color-background-tertiary)]"),children:[(0,L.jsx)(Co.Plus,{className:"h-4 w-4"}),s??"Create new"]})]})]})}function No({options:t,value:e,onChange:r,placeholder:a}){return(0,L.jsxs)("div",{className:"relative",children:[(0,L.jsxs)("select",{value:e,onChange:i=>r(i.target.value),className:o(wo,"appearance-none pr-[var(--inkblot-spacing-8)]"),children:[(0,L.jsx)("option",{value:"",children:a}),t.map(i=>(0,L.jsx)("option",{value:i,children:i},i))]}),(0,L.jsx)(Co.ChevronDown,{className:o("pointer-events-none absolute right-[var(--inkblot-spacing-3)] top-1/2 h-4 w-4 -translate-y-1/2","text-[var(--inkblot-semantic-color-text-tertiary)]")})]})}var Xl=["Bank Transfer","Credit Card","Cash","Check"],Zl=["VAT 21%","VAT 10%","VAT 0%","Exempt"],Ql=["Standard","Proforma","Credit Note","Debit Note"],Jl=["Main Account","Secondary Account"];function To({clients:t,products:e,paymentMethods:r=Xl,taxTypes:a=Zl,invoiceTypes:i=Ql,bankAccounts:n=Jl,value:s={},onChange:l,onCreateClient:c,attempted:d=!1,className:m}){let p=b=>l?.({...s,...b});return(0,L.jsxs)("div",{className:o("grid grid-cols-1 gap-[var(--inkblot-spacing-4)] md:grid-cols-2",m),children:[(0,L.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-2)]",children:[(0,L.jsx)("label",{className:ze,children:"Client"}),(0,L.jsx)(pi,{items:t,value:s.clientId??"",onChange:b=>p({clientId:b}),placeholder:"Search client...",hasError:d,onCreateNew:c,createNewLabel:"+ Create new client"})]}),(0,L.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-2)]",children:[(0,L.jsx)("label",{className:ze,children:"Product / Service"}),(0,L.jsx)(pi,{items:e,value:s.productId??"",onChange:b=>p({productId:b}),placeholder:"Search product...",hasError:d})]}),(0,L.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-2)]",children:[(0,L.jsx)("label",{className:ze,children:"Quantity"}),(0,L.jsx)("input",{type:"number",min:1,value:s.quantity??"",onChange:b=>p({quantity:b.target.value===""?0:Number(b.target.value)}),placeholder:"1",className:o(wo,d&&!s.quantity&&bi)})]}),(0,L.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-2)]",children:[(0,L.jsx)("label",{className:ze,children:"Payment Method"}),(0,L.jsx)(No,{options:r,value:s.paymentMethod??"",onChange:b=>p({paymentMethod:b}),placeholder:"Select..."})]}),(0,L.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-2)]",children:[(0,L.jsx)("label",{className:ze,children:"Tax Type"}),(0,L.jsx)(No,{options:a,value:s.taxType??"",onChange:b=>p({taxType:b}),placeholder:"Select..."})]}),(0,L.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-2)]",children:[(0,L.jsx)("label",{className:ze,children:"Invoice Type"}),(0,L.jsx)(No,{options:i,value:s.invoiceType??"",onChange:b=>p({invoiceType:b}),placeholder:"Select..."})]}),(0,L.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-2)]",children:[(0,L.jsx)("label",{className:ze,children:"Bank Account"}),(0,L.jsx)(No,{options:n,value:s.bankAccount??"",onChange:b=>p({bankAccount:b}),placeholder:"Select..."})]}),(0,L.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-2)] md:col-span-2",children:[(0,L.jsx)("label",{className:ze,children:"Notes"}),(0,L.jsx)("textarea",{value:s.notes??"",onChange:b=>p({notes:b.target.value}),rows:3,placeholder:"Additional notes...",className:o(wo,"resize-y")})]})]})}var ct=require("react/jsx-runtime");function ye({label:t,value:e}){return(0,ct.jsxs)("div",{className:"flex items-baseline justify-between border-b border-[var(--inkblot-semantic-color-border-default)] py-[var(--inkblot-spacing-2)]",children:[(0,ct.jsx)("span",{className:"[font:var(--inkblot-semantic-typography-body-small)] text-[var(--inkblot-semantic-color-text-tertiary)]",children:t}),(0,ct.jsx)("span",{className:"[font:var(--inkblot-semantic-typography-body-small)] text-[var(--inkblot-semantic-color-text-primary)]",children:e||"\u2014"})]})}function Po({data:t,clients:e,products:r,className:a}){let i=e.find(d=>d.id===t.clientId),n=r.find(d=>d.id===t.productId),s=t.quantity??0,l=n?.unitPrice??0,c=s*l;return(0,ct.jsxs)("div",{className:o("rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] p-[var(--inkblot-spacing-6)]",a),children:[(0,ct.jsx)("h3",{className:"mb-[var(--inkblot-spacing-4)] [font:var(--inkblot-semantic-typography-heading-4)] text-[var(--inkblot-semantic-color-text-primary)]",children:"Preview"}),(0,ct.jsxs)("div",{className:"space-y-0",children:[(0,ct.jsx)(ye,{label:"Client",value:i?.name??""}),(0,ct.jsx)(ye,{label:"Product",value:n?.name??""}),(0,ct.jsx)(ye,{label:"Quantity",value:s?String(s):""}),l>0&&(0,ct.jsx)(ye,{label:"Unit price",value:`$${l.toFixed(2)}`}),c>0&&(0,ct.jsx)(ye,{label:"Subtotal",value:`$${c.toFixed(2)}`}),(0,ct.jsx)(ye,{label:"Payment",value:t.paymentMethod??""}),(0,ct.jsx)(ye,{label:"Tax",value:t.taxType??""}),(0,ct.jsx)(ye,{label:"Type",value:t.invoiceType??""}),(0,ct.jsx)(ye,{label:"Bank",value:t.bankAccount??""})]}),t.notes&&(0,ct.jsx)("p",{className:"mt-[var(--inkblot-spacing-4)] [font:var(--inkblot-semantic-typography-body-small)] text-[var(--inkblot-semantic-color-text-secondary)]",children:t.notes})]})}var fa=require("react"),ui=require("lucide-react");var le=require("react/jsx-runtime");function vi({clients:t,products:e,onSubmit:r,onCreateClient:a,isSubmitting:i=!1,className:n,...s}){let[l,c]=(0,fa.useState)({}),[d,m]=(0,fa.useState)(!1);return(0,le.jsxs)("form",{onSubmit:b=>{b.preventDefault(),m(!0),!(!l.clientId||!l.productId||!l.quantity)&&r?.({clientId:l.clientId,productId:l.productId,quantity:l.quantity,paymentMethod:l.paymentMethod??"",taxType:l.taxType??"",invoiceType:l.invoiceType??"",bankAccount:l.bankAccount??"",notes:l.notes??""})},className:o("rounded-[var(--inkblot-radius-xl)] bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-6)]",n),children:[(0,le.jsx)("h2",{className:"mb-[var(--inkblot-spacing-6)] [font:var(--inkblot-semantic-typography-heading-4)] text-[var(--inkblot-semantic-color-text-primary)]",children:"New Invoice"}),(0,le.jsxs)("div",{className:"grid grid-cols-1 gap-[var(--inkblot-spacing-6)] lg:grid-cols-[1fr_20rem]",children:[(0,le.jsx)(To,{clients:t,products:e,value:l,onChange:c,onCreateClient:a,attempted:d,...s}),(0,le.jsx)(Po,{data:l,clients:t,products:e})]}),(0,le.jsx)("div",{className:"mt-[var(--inkblot-spacing-6)] flex justify-end",children:(0,le.jsxs)("button",{type:"submit",disabled:i,className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center gap-[var(--inkblot-spacing-2)]","rounded-[var(--inkblot-radius-lg)]","bg-[var(--inkblot-semantic-color-interactive-primary)]","px-[var(--inkblot-spacing-6)] py-[var(--inkblot-spacing-2)]","[font:var(--inkblot-semantic-typography-body-small)] font-medium","text-[var(--inkblot-semantic-color-text-inverse)]","transition-colors duration-[var(--inkblot-duration-fast)]","hover:bg-[var(--inkblot-semantic-color-interactive-primary-hover)]","active:bg-[var(--inkblot-semantic-color-interactive-primary-active)]","focus:outline-none focus:ring-2 focus:ring-[var(--inkblot-semantic-color-border-focus)]","disabled:opacity-[var(--inkblot-opacity-disabled)] disabled:cursor-not-allowed"),children:[i&&(0,le.jsx)(ui.Loader2,{className:"h-4 w-4 animate-spin"}),"Create Invoice"]})})]})}var So=require("react"),fi=require("lucide-react");var Oe=require("react/jsx-runtime");function gi({items:t,defaultValue:e,allowMultiple:r=!1,className:a}){let i=(0,So.useMemo)(()=>new Set(e??[]),[e]),[n,s]=(0,So.useState)(i),l=c=>{s(d=>{let m=new Set(d);return m.has(c)?(m.delete(c),m):r?(m.add(c),m):new Set([c])})};return(0,Oe.jsx)("div",{className:o("w-full overflow-hidden rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)]",a),children:t.map((c,d)=>{let m=n.has(c.id);return(0,Oe.jsxs)("div",{className:o(d!==0&&"border-t border-[var(--inkblot-semantic-color-border-default)]"),children:[(0,Oe.jsxs)("button",{type:"button",disabled:c.disabled,"aria-expanded":m,onClick:()=>l(c.id),className:o("flex min-h-[var(--inkblot-size-touch-target-min)] w-full items-center justify-between gap-[var(--inkblot-spacing-3)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)] text-left text-[var(--inkblot-semantic-color-text-primary)] transition-colors duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)]",c.disabled?"cursor-not-allowed opacity-[var(--inkblot-opacity-disabled)]":"hover:bg-[var(--inkblot-semantic-color-background-tertiary)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--inkblot-semantic-color-border-focus)] focus-visible:outline-offset-[-2px]"),children:[(0,Oe.jsx)("span",{className:"font-medium",children:c.title}),(0,Oe.jsx)(fi.ChevronDown,{className:o("h-4 w-4 shrink-0 text-[var(--inkblot-semantic-color-text-tertiary)] transition-transform duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)]",m&&"rotate-180")})]}),m&&(0,Oe.jsx)("div",{className:"px-[var(--inkblot-spacing-4)] pb-[var(--inkblot-spacing-4)] text-sm text-[var(--inkblot-semantic-color-text-secondary)]",children:c.content})]},c.id)})})}var at=require("react"),Fe=require("lucide-react");var X=require("react/jsx-runtime");function ki({options:t=[],loadOptions:e,value:r,defaultValue:a,onChange:i,placeholder:n="Select an option",searchPlaceholder:s="Search...",emptyMessage:l="No results found",loadingMessage:c="Loading...",clearable:d=!1,disabled:m=!1,className:p}){let b=r!==void 0,[u,f]=(0,at.useState)(a??null),C=b?r:u,[x,g]=(0,at.useState)(!1),[S,N]=(0,at.useState)(""),[y,k]=(0,at.useState)(-1),[v,h]=(0,at.useState)([]),[P,E]=(0,at.useState)(!1),O=(0,at.useRef)(null),R=(0,at.useRef)(0),q=e!==void 0,B=q?v:t,K=(0,at.useRef)(null),F=(0,at.useRef)(null),J=(0,at.useRef)(null);(0,at.useEffect)(()=>{if(!(!q||!x))return O.current&&clearTimeout(O.current),O.current=setTimeout(()=>{let T=++R.current;E(!0),e(S).then(kt=>{T===R.current&&(h(kt),E(!1),k(-1))}).catch(()=>{T===R.current&&(h([]),E(!1))})},250),()=>{O.current&&clearTimeout(O.current)}},[S,x,q,e]);let w=q?B:B.filter(T=>T.label.toLowerCase().includes(S.toLowerCase())),Y=B.find(T=>T.value===C)??(q?t.find(T=>T.value===C):void 0),Dt=(0,at.useCallback)(T=>{b||f(T),i?.(T),g(!1),N(""),k(-1)},[b,i]);(0,at.useEffect)(()=>{if(!x)return;let T=kt=>{K.current&&!K.current.contains(kt.target)&&(g(!1),N(""),k(-1))};return document.addEventListener("mousedown",T),()=>document.removeEventListener("mousedown",T)},[x]),(0,at.useEffect)(()=>{x&&J.current?.focus()},[x]),(0,at.useEffect)(()=>{if(y<0||!F.current)return;F.current.querySelectorAll("[data-option]")[y]?.scrollIntoView({block:"nearest"})},[y]);let re=T=>{if(!x){(T.key==="Enter"||T.key===" "||T.key==="ArrowDown")&&(T.preventDefault(),g(!0));return}switch(T.key){case"ArrowDown":{T.preventDefault(),k(kt=>{let pt=kt+1;for(;pt<w.length&&w[pt].disabled;)pt++;return pt<w.length?pt:kt});break}case"ArrowUp":{T.preventDefault(),k(kt=>{let pt=kt-1;for(;pt>=0&&w[pt].disabled;)pt--;return pt>=0?pt:kt});break}case"Enter":{T.preventDefault(),y>=0&&y<w.length&&!w[y].disabled&&Dt(w[y].value);break}case"Escape":{T.preventDefault(),g(!1),N(""),k(-1);break}}};return(0,X.jsxs)("div",{ref:K,className:o("relative w-full",p),onKeyDown:re,children:[(0,X.jsxs)("button",{type:"button",disabled:m,"aria-expanded":x,"aria-haspopup":"listbox",onClick:()=>{m||g(T=>!T)},className:o("flex min-h-[var(--inkblot-size-touch-target-min)] w-full items-center justify-between gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-md)] border px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","bg-[var(--inkblot-semantic-color-background-secondary)] text-[var(--inkblot-semantic-color-text-primary)]","transition-[border-color,box-shadow] duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)]","border-[var(--inkblot-semantic-color-border-default)] hover:border-[var(--inkblot-semantic-color-border-strong)]","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--inkblot-semantic-color-border-focus)] focus-visible:ring-offset-2 focus-visible:ring-offset-[var(--inkblot-semantic-color-background-primary)]",m&&"pointer-events-none cursor-not-allowed opacity-[var(--inkblot-opacity-disabled)]"),children:[(0,X.jsx)("span",{className:o("truncate text-left",!Y&&"text-[var(--inkblot-semantic-color-text-tertiary)]"),children:Y?Y.label:n}),(0,X.jsxs)("span",{className:"flex shrink-0 items-center gap-[var(--inkblot-spacing-1)]",children:[d&&Y&&(0,X.jsx)("span",{role:"button",tabIndex:0,"aria-label":"Clear selection",onClick:T=>{T.stopPropagation(),Dt(null)},onKeyDown:T=>{T.key==="Enter"&&(T.stopPropagation(),Dt(null))},className:o("flex items-center justify-center rounded-[var(--inkblot-radius-sm)] p-[var(--inkblot-spacing-1)]","text-[var(--inkblot-semantic-color-text-tertiary)] hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] hover:text-[var(--inkblot-semantic-color-text-primary)]","transition-colors duration-[var(--inkblot-duration-fast)]"),children:(0,X.jsx)(Fe.X,{className:"size-3.5"})}),(0,X.jsx)(Fe.ChevronDown,{"aria-hidden":!0,className:o("size-4 text-[var(--inkblot-semantic-color-text-tertiary)] transition-transform duration-[var(--inkblot-duration-fast)]",x&&"rotate-180")})]})]}),(0,X.jsxs)("div",{className:o("absolute left-0 top-full z-50 mt-[var(--inkblot-spacing-1)] w-full overflow-hidden rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] shadow-[var(--inkblot-shadow-md)]","transition-[opacity,transform] duration-[var(--inkblot-duration-normal)] ease-[var(--inkblot-easing-default)]","origin-top",x?"pointer-events-auto scale-y-100 opacity-100":"pointer-events-none scale-y-95 opacity-0"),children:[(0,X.jsx)("div",{className:"border-b border-[var(--inkblot-semantic-color-border-default)] p-[var(--inkblot-spacing-2)]",children:(0,X.jsxs)("div",{className:"flex items-center gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-sm)] bg-[var(--inkblot-semantic-color-background-tertiary)] px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-1)]",children:[(0,X.jsx)(Fe.Search,{className:"size-3.5 shrink-0 text-[var(--inkblot-semantic-color-text-tertiary)]"}),(0,X.jsx)("input",{ref:J,type:"text",value:S,onChange:T=>{N(T.target.value),k(-1)},placeholder:s,className:"w-full bg-transparent py-[var(--inkblot-spacing-1)] text-sm text-[var(--inkblot-semantic-color-text-primary)] placeholder:text-[var(--inkblot-semantic-color-text-tertiary)] focus:outline-none"})]})}),(0,X.jsx)("ul",{ref:F,role:"listbox",className:"max-h-60 overflow-y-auto p-[var(--inkblot-spacing-1)]",children:P?(0,X.jsxs)("li",{className:"flex items-center justify-center gap-[var(--inkblot-spacing-2)] px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-4)] text-sm text-[var(--inkblot-semantic-color-text-tertiary)]",children:[(0,X.jsx)(Fe.Loader2,{className:"size-4 animate-spin","aria-hidden":!0}),c]}):w.length===0?(0,X.jsx)("li",{className:"px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-4)] text-center text-sm text-[var(--inkblot-semantic-color-text-tertiary)]",children:l}):w.map((T,kt)=>{let pt=T.value===C,ao=kt===y;return(0,X.jsxs)("li",{role:"option","data-option":!0,"aria-selected":pt,"aria-disabled":T.disabled,onClick:()=>{T.disabled||Dt(T.value)},onMouseEnter:()=>{T.disabled||k(kt)},className:o("flex cursor-pointer items-center gap-[var(--inkblot-spacing-3)] rounded-[var(--inkblot-radius-sm)] px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-2)]","transition-colors duration-[var(--inkblot-duration-fast)]",ao&&!T.disabled&&"bg-[var(--inkblot-semantic-color-interactive-secondary-hover)]",pt&&"bg-[var(--inkblot-semantic-color-interactive-secondary)]",T.disabled&&"pointer-events-none cursor-not-allowed opacity-[var(--inkblot-opacity-disabled)]"),children:[T.icon&&(0,X.jsx)("span",{className:"flex size-5 shrink-0 items-center justify-center text-[var(--inkblot-semantic-color-text-secondary)]",children:T.icon}),(0,X.jsxs)("span",{className:"flex min-w-0 flex-1 flex-col",children:[(0,X.jsx)("span",{className:"truncate text-sm text-[var(--inkblot-semantic-color-text-primary)]",children:T.label}),T.description&&(0,X.jsx)("span",{className:"truncate text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:T.description})]})]},T.value)})})]})]})}var Ve=require("lucide-react");var ar=require("react/jsx-runtime"),tc={info:"border-[var(--inkblot-semantic-color-status-info)] bg-[var(--inkblot-semantic-color-status-info)]/10 text-[var(--inkblot-semantic-color-text-primary)]",success:"border-[var(--inkblot-semantic-color-status-success)] bg-[var(--inkblot-semantic-color-status-success)]/10 text-[var(--inkblot-semantic-color-text-primary)]",warning:"border-[var(--inkblot-semantic-color-status-warning)] bg-[var(--inkblot-semantic-color-status-warning)]/10 text-[var(--inkblot-semantic-color-text-primary)]",error:"border-[var(--inkblot-semantic-color-status-error)] bg-[var(--inkblot-semantic-color-status-error)]/10 text-[var(--inkblot-semantic-color-text-primary)]"},ec={info:Ve.Info,success:Ve.CheckCircle2,warning:Ve.AlertTriangle,error:Ve.AlertCircle};function yi({title:t,description:e,variant:r="info",className:a}){let i=ec[r];return(0,ar.jsxs)("div",{role:"alert",className:o("flex w-full items-start gap-[var(--inkblot-spacing-3)] rounded-[var(--inkblot-radius-lg)] border px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)]",tc[r],a),children:[(0,ar.jsx)(i,{className:"mt-0.5 h-4 w-4 shrink-0"}),(0,ar.jsxs)("div",{className:"flex min-w-0 flex-col gap-[var(--inkblot-spacing-1)]",children:[(0,ar.jsx)("div",{className:"font-semibold",children:t}),e&&(0,ar.jsx)("div",{className:"text-sm text-[var(--inkblot-semantic-color-text-secondary)]",children:e})]})]})}var qt=require("react"),xi=require("lucide-react");var zt=require("react/jsx-runtime");function hi({open:t,title:e,description:r,confirmLabel:a="Confirm",cancelLabel:i="Cancel",destructive:n=!1,confirmDisabled:s=!1,closeOnConfirm:l=!0,initialFocusRef:c,onOpenChange:d,onConfirm:m,onCancel:p,className:b}){let u=(0,qt.useRef)(null),f=(0,qt.useRef)(null),C=(0,qt.useRef)(null),x=(0,qt.useId)(),g=(0,qt.useId)(),S=(0,qt.useCallback)(()=>{p?.(),d?.(!1)},[p,d]),N=(0,qt.useCallback)(()=>{m?.(),l&&d?.(!1)},[l,m,d]);return(0,qt.useEffect)(()=>{if(!t)return;C.current=document.activeElement instanceof HTMLElement?document.activeElement:null,(c?.current??f.current??u.current)?.focus();let k=v=>{v.key==="Escape"&&S()};return window.addEventListener("keydown",k),()=>{window.removeEventListener("keydown",k),C.current?.focus()}},[S,c,t]),t?(0,zt.jsx)("div",{className:"fixed inset-0 z-50 grid place-items-center bg-[var(--inkblot-semantic-color-background-primary)]/70 px-[var(--inkblot-spacing-4)]",onClick:S,children:(0,zt.jsxs)("div",{role:"alertdialog","aria-modal":"true","aria-labelledby":x,"aria-describedby":r?g:void 0,tabIndex:-1,ref:u,onClick:y=>y.stopPropagation(),className:o("w-full max-w-[520px] rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-6)] text-[var(--inkblot-semantic-color-text-primary)] shadow-lg",b),children:[(0,zt.jsxs)("div",{className:"mb-[var(--inkblot-spacing-4)] flex items-start gap-[var(--inkblot-spacing-3)]",children:[(0,zt.jsx)("div",{className:o("mt-0.5 rounded-[var(--inkblot-radius-full)] p-[var(--inkblot-spacing-2)]",n?"bg-[var(--inkblot-semantic-color-status-error)]/15 text-[var(--inkblot-semantic-color-status-error)]":"bg-[var(--inkblot-semantic-color-status-warning)]/15 text-[var(--inkblot-semantic-color-status-warning)]"),children:(0,zt.jsx)(xi.AlertTriangle,{className:"h-5 w-5"})}),(0,zt.jsxs)("div",{className:"flex-1",children:[(0,zt.jsx)("h2",{id:x,className:"text-lg font-semibold",children:e}),r&&(0,zt.jsx)("p",{id:g,className:"mt-[var(--inkblot-spacing-2)] text-sm text-[var(--inkblot-semantic-color-text-secondary)]",children:r})]})]}),(0,zt.jsxs)("div",{className:"flex flex-wrap justify-end gap-[var(--inkblot-spacing-2)]",children:[(0,zt.jsx)("button",{type:"button",ref:f,onClick:S,className:"inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-interactive-secondary)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)] font-medium text-[var(--inkblot-semantic-color-text-primary)] transition-colors duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)] hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] active:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)]",children:i}),(0,zt.jsx)("button",{type:"button",disabled:s,onClick:N,className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)] font-medium text-[var(--inkblot-semantic-color-text-inverse)] transition-colors duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)] disabled:cursor-not-allowed disabled:opacity-[var(--inkblot-opacity-disabled)]",n?"bg-[var(--inkblot-semantic-color-status-error)] hover:bg-[var(--inkblot-semantic-color-status-error)]/85 active:bg-[var(--inkblot-semantic-color-status-error)]/80":"bg-[var(--inkblot-semantic-color-interactive-primary)] hover:bg-[var(--inkblot-semantic-color-interactive-primary-hover)] active:bg-[var(--inkblot-semantic-color-interactive-primary-active)]"),children:a})]})]})}):null}var Ge=require("react"),nr=require("lucide-react");var ot=require("react/jsx-runtime"),rc=["Write a product launch announcement for a SaaS tool","Create a re-engagement email for churned users","Draft a welcome email for new customers","Write a quarterly business review summary","Create a seasonal promotion email with urgency"];function oc({value:t,defaultValue:e="",onValueChange:r,isGenerating:a,onGeneratingChange:i,generated:n,onGeneratedChange:s,generationDelayMs:l=1500,onSubmitPrompt:c,generateBlocks:d,onGenerate:m,suggestions:p=rc,className:b}){let[u,f]=(0,Ge.useState)(e),[C,x]=(0,Ge.useState)(!1),[g,S]=(0,Ge.useState)(!1),N=(0,Ge.useRef)(null),y=t!==void 0,k=y?t:u,v=a!==void 0,h=v?a:C,P=n!==void 0,E=P?n:g,O=F=>{y||f(F),r?.(F)},R=F=>{v||x(F),i?.(F)},q=F=>{P||S(F),s?.(F)};(0,Ge.useEffect)(()=>()=>{N.current!==null&&window.clearTimeout(N.current)},[]);let B=F=>{let J=Date.now();return[{id:`ai-${J}-1`,type:"heading",content:"Exciting News from Our Team"},{id:`ai-${J}-2`,type:"text",content:`Generated from prompt: ${F}`},{id:`ai-${J}-3`,type:"image",content:""},{id:`ai-${J}-4`,type:"text",content:"Our latest updates are designed to help you achieve more with less effort. We've built these improvements with your feedback in mind."},{id:`ai-${J}-5`,type:"button",content:"Learn More"},{id:`ai-${J}-6`,type:"divider",content:""},{id:`ai-${J}-7`,type:"text",content:`Best regards,
21
+ The Team`}]},K=async()=>{let F=k.trim();if(!F||h)return;c?.(F),R(!0);let J;d?J=await Promise.resolve(d(F)):(await new Promise(w=>{window.setTimeout(()=>w(),l)}),J=B(F)),m?.(J),R(!1),q(!0),N.current=window.setTimeout(()=>q(!1),1800)};return(0,ot.jsxs)("section",{className:o(b),children:[(0,ot.jsxs)("div",{className:"mb-2 flex items-center gap-2",children:[(0,ot.jsx)(nr.Sparkles,{className:"h-4 w-4 text-[var(--inkblot-semantic-color-status-warning)]"}),(0,ot.jsx)("span",{className:"text-xs font-medium text-[var(--inkblot-semantic-color-text-primary)]",children:"AI Email Generator"})]}),(0,ot.jsxs)("div",{className:"space-y-3",children:[(0,ot.jsx)("textarea",{value:k,onChange:F=>O(F.target.value),rows:3,placeholder:"Describe the email you want to create...",className:"w-full resize-none rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] px-4 py-3 text-sm text-[var(--inkblot-semantic-color-text-primary)] placeholder:text-[var(--inkblot-semantic-color-text-tertiary)] outline-none"}),(0,ot.jsx)("div",{className:"flex flex-wrap gap-1.5",children:p.map(F=>(0,ot.jsx)("button",{type:"button",onClick:()=>O(F),className:"rounded-[var(--inkblot-radius-sm)] bg-[var(--inkblot-semantic-color-interactive-secondary)] px-2.5 py-1 text-[10px] text-[var(--inkblot-semantic-color-text-primary)] transition-opacity duration-[var(--inkblot-duration-fast)] hover:opacity-85",children:F},F))}),(0,ot.jsx)("button",{type:"button",onClick:K,disabled:!k.trim()||h,className:"flex items-center gap-2 rounded-[var(--inkblot-radius-md)] bg-[var(--inkblot-semantic-color-status-warning)]/10 px-4 py-2 text-xs font-medium text-[var(--inkblot-semantic-color-status-warning)] transition-opacity duration-[var(--inkblot-duration-fast)] disabled:opacity-40",children:h?(0,ot.jsxs)(ot.Fragment,{children:[(0,ot.jsx)(nr.Loader2,{className:"h-3 w-3 animate-spin"}),"Generating..."]}):E?(0,ot.jsxs)(ot.Fragment,{children:[(0,ot.jsx)(nr.Check,{className:"h-3 w-3"}),"Applied to editor"]}):(0,ot.jsxs)(ot.Fragment,{children:[(0,ot.jsx)(nr.Sparkles,{className:"h-3 w-3"}),"Generate Email"]})})]})]})}var It=require("lucide-react");var yr=require("react/jsx-runtime");function Mo({label:t,icon:e,active:r=!1,onClick:a,title:i,dataTour:n,className:s}){return(0,yr.jsxs)("button",{type:"button",onClick:a,"data-tour":n,className:o("group relative flex h-10 w-10 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-md)] border border-transparent transition-colors duration-[var(--inkblot-duration-fast)]",r?"bg-[var(--inkblot-semantic-color-interactive-secondary)] text-[var(--inkblot-semantic-color-text-primary)]":"text-[var(--inkblot-semantic-color-text-tertiary)] hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] hover:text-[var(--inkblot-semantic-color-text-primary)]",s),title:i??t,"aria-current":r?"page":void 0,"aria-label":t,children:[(0,yr.jsx)(e,{className:"h-[18px] w-[18px]","aria-hidden":!0}),r?(0,yr.jsx)("span",{className:"absolute left-0 top-1/2 h-4 w-[2px] -translate-y-1/2 rounded-r bg-[var(--inkblot-semantic-color-interactive-primary)]"}):null,(0,yr.jsx)("span",{className:"pointer-events-none absolute left-full z-50 ml-3 whitespace-nowrap rounded-[var(--inkblot-radius-sm)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] px-2 py-1 text-xs font-medium text-[var(--inkblot-semantic-color-text-primary)] opacity-0 transition-opacity duration-[var(--inkblot-duration-fast)] group-hover:opacity-100",children:t})]})}var Ot=require("react/jsx-runtime"),ac=[{id:"canvas",icon:It.MessageSquare,label:"Canvas",path:"/",dataTour:"nav-canvas"},{id:"invoices",icon:It.FileText,label:"Invoices & Deals",path:"/invoices",dataTour:"nav-invoices"},{id:"contacts",icon:It.Users,label:"Contacts",path:"/contacts",dataTour:"nav-contacts"},{id:"campaigns",icon:It.Mail,label:"Campaigns",path:"/campaigns",dataTour:"nav-campaigns"},{id:"tasks",icon:It.CheckSquare,label:"Tasks",path:"/tasks",dataTour:"nav-tasks"}],nc=[{id:"settings",icon:It.Settings,label:"Settings",path:"/settings",dataTour:"nav-settings"}];function ga({items:t=ac,bottomItems:e=nc,activePath:r="/",onNavigate:a,logo:i,showStatusDot:n=!0,showThemeToggle:s=!0,className:l}){return(0,Ot.jsxs)("aside",{"data-tour":"sidebar",className:o("flex h-full w-16 flex-col items-center gap-1 border-r border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] py-4",l),children:[(0,Ot.jsx)("div",{className:"mb-6 flex h-9 w-9 items-center justify-center rounded-[var(--inkblot-radius-md)] bg-[var(--inkblot-semantic-color-interactive-primary)]",children:i??(0,Ot.jsx)(It.Command,{className:"h-4 w-4 text-[var(--inkblot-semantic-color-text-inverse)]","aria-hidden":!0})}),(0,Ot.jsx)("nav",{className:"hide-scrollbar flex flex-1 flex-col gap-1 overflow-y-auto",children:t.map(c=>(0,Ot.jsx)(Mo,{label:c.label,icon:c.icon,active:c.path===r,onClick:()=>a?.(c.path),dataTour:c.dataTour},c.id))}),(0,Ot.jsxs)("div",{className:"flex flex-col gap-1",children:[e.map(c=>(0,Ot.jsx)(Mo,{label:c.label,icon:c.icon,active:c.path===r,onClick:()=>a?.(c.path),dataTour:c.dataTour},c.id)),s?(0,Ot.jsxs)("div",{className:"group relative flex justify-center",children:[(0,Ot.jsx)(Zr,{}),(0,Ot.jsx)("span",{className:"pointer-events-none absolute left-full z-50 ml-3 whitespace-nowrap rounded-[var(--inkblot-radius-sm)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] px-2 py-1 text-xs font-medium text-[var(--inkblot-semantic-color-text-primary)] opacity-0 transition-opacity duration-[var(--inkblot-duration-fast)] group-hover:opacity-100",children:"Theme"})]}):null,n?(0,Ot.jsx)("span",{"data-tour":"system-status",className:"mx-auto mt-2 h-2 w-2 animate-pulse rounded-full bg-[var(--inkblot-semantic-color-status-success)]",title:"System Online"}):null]})]})}var Ft=require("lucide-react");var ut=require("react/jsx-runtime"),ic=[{id:1,icon:Ft.Mail,title:"Email opened",meta:"Jane Smith \xB7 Acme Corp",time:"2m ago",status:"info"},{id:2,icon:Ft.CreditCard,title:"Invoice #1042 paid",meta:"$24,500 \xB7 TechVentures",time:"8m ago",status:"success"},{id:3,icon:Ft.Zap,title:"Pipeline stage changed",meta:"Negotiation \u2192 Closing",time:"14m ago",status:"warning"},{id:4,icon:Ft.Phone,title:"Call completed",meta:"12 min \xB7 Mark Johnson",time:"23m ago",status:"info"},{id:5,icon:Ft.FileText,title:"Contract signed",meta:"NDA \xB7 GlobalTech Inc",time:"1h ago",status:"success"},{id:6,icon:Ft.GitBranch,title:"New relationship detected",meta:"Acme \u2194 DataFlow Labs",time:"2h ago",status:"info"},{id:7,icon:Ft.CreditCard,title:"Invoice overdue",meta:"$8,200 \xB7 StartupXYZ",time:"3h ago",status:"danger"}],sc={success:"bg-[var(--inkblot-semantic-color-status-success)]",warning:"bg-[var(--inkblot-semantic-color-status-warning)]",error:"bg-[var(--inkblot-semantic-color-status-error)]",danger:"bg-[var(--inkblot-semantic-color-status-error)]",info:"bg-[var(--inkblot-semantic-color-status-info)]"};function ka({title:t="Event Stream",liveLabel:e="Live",events:r=ic,onItemClick:a,className:i}){return(0,ut.jsxs)("section",{className:o("p-4",i),children:[(0,ut.jsxs)("header",{className:"mb-4 flex items-center justify-between",children:[(0,ut.jsx)("h3",{className:"text-xs font-medium uppercase tracking-wide text-[var(--inkblot-semantic-color-text-tertiary)]",children:t}),(0,ut.jsx)("span",{className:"text-[10px] font-medium text-[var(--inkblot-semantic-color-text-tertiary)]",children:e})]}),(0,ut.jsx)("ul",{className:"space-y-1",children:r.map(n=>{let s=n.icon;return(0,ut.jsx)("li",{children:(0,ut.jsxs)("button",{type:"button",onClick:()=>a?.(n),className:"group flex w-full items-start gap-3 rounded-[var(--inkblot-radius-md)] px-2.5 py-2.5 text-left transition-colors duration-[var(--inkblot-duration-fast)] hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)]",children:[(0,ut.jsx)("span",{className:"mt-0.5 flex h-7 w-7 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-sm)] bg-[var(--inkblot-semantic-color-background-tertiary)]",children:(0,ut.jsx)(s,{className:"h-3.5 w-3.5 text-[var(--inkblot-semantic-color-text-tertiary)] group-hover:text-[var(--inkblot-semantic-color-text-secondary)]","aria-hidden":!0})}),(0,ut.jsxs)("span",{className:"min-w-0 flex-1",children:[(0,ut.jsxs)("span",{className:"flex items-center gap-2",children:[(0,ut.jsx)("span",{className:o("h-1.5 w-1.5 shrink-0 rounded-full",sc[n.status])}),(0,ut.jsx)("span",{className:"truncate text-xs font-medium text-[var(--inkblot-semantic-color-text-primary)]",children:n.title})]}),(0,ut.jsx)("span",{className:"mt-0.5 block truncate text-[10px] text-[var(--inkblot-semantic-color-text-tertiary)]",children:n.meta})]}),(0,ut.jsx)("span",{className:"mt-0.5 shrink-0 text-[10px] text-[var(--inkblot-semantic-color-text-tertiary)]",children:n.time})]})},n.id)})})]})}var xe=require("react"),Ci=require("react/jsx-runtime"),Ni=(0,xe.createContext)(null);function wi(){let t=(0,xe.useContext)(Ni);if(!t)throw new Error("useCanvas must be used within a CanvasProvider");return t}var lc=[{id:"welcome-1",type:"text",content:"Welcome to Citron OS. Use the AI chat on the right to interact with your revenue engine."},{id:"welcome-2",type:"entity"},{id:"welcome-3",type:"intelligence"}];function Eo({children:t,initialBlocks:e=lc}){let[r,a]=(0,xe.useState)(e),i=(0,xe.useCallback)(s=>{a(l=>[...l,...s])},[]),n=(0,xe.useCallback)(()=>{a([])},[]);return(0,Ci.jsx)(Ni.Provider,{value:{blocks:r,addBlocks:i,clearBlocks:n},children:t})}var he=require("react/jsx-runtime");function cc({children:t,showEventFeed:e=!1,sidebarProps:r,eventFeedProps:a,canvasProviderProps:i,className:n}){let s=(0,he.jsxs)("div",{className:o("flex h-screen w-full overflow-hidden bg-[var(--inkblot-semantic-color-background-primary)]",n),children:[(0,he.jsx)(ga,{...r}),(0,he.jsxs)("main",{className:"flex flex-1 overflow-hidden",children:[(0,he.jsx)("section",{"data-tour":"canvas",className:"hide-scrollbar flex-1 overflow-y-auto",children:t}),e&&(0,he.jsx)("aside",{"data-tour":"event-feed",className:"flex w-80 flex-col overflow-hidden border-l border-[var(--inkblot-semantic-color-border-default)]",children:(0,he.jsx)(ka,{...a})})]})]});return i?(0,he.jsx)(Eo,{...i,children:s}):s}var Qr=require("react/jsx-runtime");function Ti({ratio:t=16/9,children:e,className:r}){let a=Number.isFinite(t)&&t>0?t:1.7777777777777777;return(0,Qr.jsxs)("div",{className:o("relative w-full overflow-hidden",r),children:[(0,Qr.jsx)("div",{style:{paddingTop:`${1/a*100}%`}}),(0,Qr.jsx)("div",{className:"absolute inset-0",children:e})]})}var Si=require("react/jsx-runtime"),dc={default:"bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]",secondary:"bg-[var(--inkblot-semantic-color-background-tertiary)] text-[var(--inkblot-semantic-color-text-primary)]",success:"bg-[var(--inkblot-semantic-color-status-success)]/15 text-[var(--inkblot-semantic-color-status-success)]",warning:"bg-[var(--inkblot-semantic-color-status-warning)]/15 text-[var(--inkblot-semantic-color-status-warning)]",error:"bg-[var(--inkblot-semantic-color-status-error)]/15 text-[var(--inkblot-semantic-color-status-error)]",outline:"border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] text-[var(--inkblot-semantic-color-text-primary)]"};function Pi({children:t,variant:e="default",disabled:r=!1,className:a}){return(0,Si.jsx)("span",{"aria-disabled":r,className:o("inline-flex min-h-[calc(var(--inkblot-size-touch-target-min)-1rem)] items-center justify-center rounded-[var(--inkblot-radius-full)] px-[var(--inkblot-spacing-2)] py-[var(--inkblot-spacing-1)] text-xs font-semibold transition-colors duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)]",dc[e],r&&"opacity-[var(--inkblot-opacity-disabled)]",a),children:t})}var Mi=require("lucide-react");var We=require("react/jsx-runtime");function Ei({items:t,className:e}){return(0,We.jsx)("nav",{"aria-label":"Breadcrumb",className:o("w-full",e),children:(0,We.jsx)("ol",{className:"flex flex-wrap items-center gap-[var(--inkblot-spacing-2)]",children:t.map((r,a)=>{let i=r.href&&!r.disabled&&!r.current?(0,We.jsx)("a",{href:r.href,onClick:r.onClick,className:"rounded-[var(--inkblot-radius-sm)] text-sm text-[var(--inkblot-semantic-color-text-secondary)] transition-colors duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)] hover:text-[var(--inkblot-semantic-color-text-primary)]",children:r.label}):(0,We.jsx)("span",{"aria-current":r.current?"page":void 0,className:o("text-sm",r.current?"font-semibold text-[var(--inkblot-semantic-color-text-primary)]":"text-[var(--inkblot-semantic-color-text-tertiary)]",r.disabled&&"opacity-[var(--inkblot-opacity-disabled)]"),children:r.label});return(0,We.jsxs)("li",{className:"flex items-center gap-[var(--inkblot-spacing-2)]",children:[i,a<t.length-1&&(0,We.jsx)(Mi.ChevronRight,{className:"h-4 w-4 text-[var(--inkblot-semantic-color-text-tertiary)]"})]},r.id)})})})}var Jr=require("react"),Io=require("lucide-react");var Vt=require("react/jsx-runtime"),mc=["L","M","X","J","V","S","D"];function Ii(t){return new Date(t.getFullYear(),t.getMonth(),1)}function pc(t){return new Date(t.getFullYear(),t.getMonth()+1,0)}function bc(t,e){return t.getFullYear()===e.getFullYear()&&t.getMonth()===e.getMonth()&&t.getDate()===e.getDate()}function ya(t){return`${t.getFullYear()}-${t.getMonth()}-${t.getDate()}`}function uc(t){let e=Ii(t),r=pc(t),a=(e.getDay()+6)%7,i=r.getDate(),n=[];for(let s=0;s<a;s+=1)n.push(null);for(let s=1;s<=i;s+=1)n.push(new Date(t.getFullYear(),t.getMonth(),s));for(;n.length%7!==0;)n.push(null);return n}function Li({value:t,onChange:e,disabledDates:r,className:a}){let i=t??new Date,[n,s]=(0,Jr.useState)(Ii(i)),l=(0,Jr.useMemo)(()=>uc(n),[n]),c=(0,Jr.useMemo)(()=>new Set((r??[]).map(ya)),[r]);return(0,Vt.jsxs)("div",{className:o("w-[320px] rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-4)] text-[var(--inkblot-semantic-color-text-primary)]",a),children:[(0,Vt.jsxs)("div",{className:"mb-[var(--inkblot-spacing-3)] flex items-center justify-between",children:[(0,Vt.jsx)("button",{type:"button",onClick:()=>s(new Date(n.getFullYear(),n.getMonth()-1,1)),className:"inline-flex h-8 w-8 items-center justify-center rounded-[var(--inkblot-radius-md)] text-[var(--inkblot-semantic-color-text-secondary)] hover:bg-[var(--inkblot-semantic-color-background-tertiary)]",children:(0,Vt.jsx)(Io.ChevronLeft,{className:"h-4 w-4"})}),(0,Vt.jsx)("div",{className:"font-semibold",children:n.toLocaleDateString("es-ES",{month:"long",year:"numeric"})}),(0,Vt.jsx)("button",{type:"button",onClick:()=>s(new Date(n.getFullYear(),n.getMonth()+1,1)),className:"inline-flex h-8 w-8 items-center justify-center rounded-[var(--inkblot-radius-md)] text-[var(--inkblot-semantic-color-text-secondary)] hover:bg-[var(--inkblot-semantic-color-background-tertiary)]",children:(0,Vt.jsx)(Io.ChevronRight,{className:"h-4 w-4"})})]}),(0,Vt.jsxs)("div",{className:"grid grid-cols-7 gap-[var(--inkblot-spacing-1)]",children:[mc.map(d=>(0,Vt.jsx)("div",{className:"pb-[var(--inkblot-spacing-1)] text-center text-xs font-medium text-[var(--inkblot-semantic-color-text-tertiary)]",children:d},d)),l.map((d,m)=>{if(!d)return(0,Vt.jsx)("div",{className:"h-9"},`empty-${m}`);let p=c.has(ya(d)),b=t?bc(d,t):!1;return(0,Vt.jsx)("button",{type:"button",disabled:p,onClick:()=>e?.(d),className:o("h-9 rounded-[var(--inkblot-radius-md)] text-sm transition-colors duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)]",b?"bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]":"text-[var(--inkblot-semantic-color-text-primary)] hover:bg-[var(--inkblot-semantic-color-background-tertiary)]",p&&"cursor-not-allowed opacity-[var(--inkblot-opacity-disabled)]"),children:d.getDate()},ya(d))})]})]})}var ir=require("react/jsx-runtime");function Ai({className:t,interactive:e=!1,disabled:r=!1,...a}){return(0,ir.jsx)("div",{"aria-disabled":r,className:o("w-full rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] text-[var(--inkblot-semantic-color-text-primary)]",e&&"transition-[border-color,transform,background] duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)] hover:border-[var(--inkblot-semantic-color-border-strong)] hover:bg-[var(--inkblot-semantic-color-background-tertiary)] active:translate-y-px",r&&"pointer-events-none opacity-[var(--inkblot-opacity-disabled)]",t),...a})}function Di({className:t,...e}){return(0,ir.jsx)("div",{className:o("flex flex-col gap-[var(--inkblot-spacing-1)] p-[var(--inkblot-spacing-5)]",t),...e})}function Ri({className:t,...e}){return(0,ir.jsx)("h3",{className:o("text-base font-semibold text-[var(--inkblot-semantic-color-text-primary)]",t),...e})}function Hi({className:t,...e}){return(0,ir.jsx)("p",{className:o("text-sm text-[var(--inkblot-semantic-color-text-secondary)]",t),...e})}function Bi({className:t,...e}){return(0,ir.jsx)("div",{className:o("px-[var(--inkblot-spacing-5)] pb-[var(--inkblot-spacing-5)]",t),...e})}function zi({className:t,...e}){return(0,ir.jsx)("div",{className:o("flex items-center justify-end gap-[var(--inkblot-spacing-2)] border-t border-[var(--inkblot-semantic-color-border-default)] px-[var(--inkblot-spacing-5)] py-[var(--inkblot-spacing-4)]",t),...e})}var Oi=require("react"),Lo=require("lucide-react");var Gt=require("react/jsx-runtime");function Fi({items:t,initialIndex:e=0,loop:r=!1,className:a}){let[i,n]=(0,Oi.useState)(Math.min(Math.max(e,0),Math.max(t.length-1,0))),s=r||i>0,l=r||i<t.length-1,c=()=>{if(t.length!==0){if(r){n(m=>(m-1+t.length)%t.length);return}n(m=>Math.max(m-1,0))}},d=()=>{if(t.length!==0){if(r){n(m=>(m+1)%t.length);return}n(m=>Math.min(m+1,t.length-1))}};return(0,Gt.jsxs)("div",{className:o("w-full rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-4)]",a),children:[(0,Gt.jsx)("div",{className:"relative overflow-hidden rounded-[var(--inkblot-radius-lg)]",children:(0,Gt.jsx)("div",{className:"flex transition-transform duration-[var(--inkblot-duration-normal)] ease-[var(--inkblot-easing-default)]",style:{transform:`translateX(-${i*100}%)`},children:t.map((m,p)=>(0,Gt.jsx)("div",{className:"w-full shrink-0",children:m},p))})}),(0,Gt.jsxs)("div",{className:"mt-[var(--inkblot-spacing-3)] flex items-center justify-between",children:[(0,Gt.jsx)("div",{className:"text-sm text-[var(--inkblot-semantic-color-text-secondary)]",children:t.length>0?`${i+1} de ${t.length}`:"Sin elementos"}),(0,Gt.jsxs)("div",{className:"flex gap-[var(--inkblot-spacing-2)]",children:[(0,Gt.jsx)("button",{type:"button",onClick:c,disabled:!s||t.length===0,className:"inline-flex h-9 w-9 items-center justify-center rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-interactive-secondary)] text-[var(--inkblot-semantic-color-text-primary)] hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] disabled:cursor-not-allowed disabled:opacity-[var(--inkblot-opacity-disabled)]",children:(0,Gt.jsx)(Lo.ChevronLeft,{className:"h-4 w-4"})}),(0,Gt.jsx)("button",{type:"button",onClick:d,disabled:!l||t.length===0,className:"inline-flex h-9 w-9 items-center justify-center rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-interactive-secondary)] text-[var(--inkblot-semantic-color-text-primary)] hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] disabled:cursor-not-allowed disabled:opacity-[var(--inkblot-opacity-disabled)]",children:(0,Gt.jsx)(Lo.ChevronRight,{className:"h-4 w-4"})})]})]})]})}var ee=require("react/jsx-runtime");function Vi({data:t,title:e="Rendimiento",emptyMessage:r="No data to display.",className:a}){let i=Math.max(...t.map(n=>n.value),0);return(0,ee.jsxs)("div",{className:o("w-full rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-5)]",a),children:[(0,ee.jsx)("h3",{className:"mb-[var(--inkblot-spacing-4)] text-sm font-semibold text-[var(--inkblot-semantic-color-text-primary)]",children:e}),t.length===0?(0,ee.jsx)("div",{className:"rounded-[var(--inkblot-radius-md)] bg-[var(--inkblot-semantic-color-background-tertiary)] px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-4)] text-sm text-[var(--inkblot-semantic-color-text-secondary)]",children:r}):(0,ee.jsx)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-3)]",children:t.map(n=>{let s=i>0?n.value/i*100:0;return(0,ee.jsxs)("div",{className:"grid grid-cols-[120px_1fr_48px] items-center gap-[var(--inkblot-spacing-3)]",children:[(0,ee.jsx)("span",{className:"truncate text-sm text-[var(--inkblot-semantic-color-text-secondary)]",children:n.label}),(0,ee.jsx)("div",{className:"h-3 overflow-hidden rounded-[var(--inkblot-radius-full)] bg-[var(--inkblot-semantic-color-background-tertiary)]",children:(0,ee.jsx)("div",{className:"h-full rounded-[var(--inkblot-radius-full)] bg-[var(--inkblot-semantic-color-interactive-primary)]",style:{width:`${s}%`,backgroundColor:n.color??"var(--inkblot-semantic-color-interactive-primary)"}})}),(0,ee.jsx)("span",{className:"text-right text-sm font-medium text-[var(--inkblot-semantic-color-text-primary)]",children:n.value})]},n.id)})})]})}var Gi=require("react"),Wi=require("lucide-react");var Ke=require("react/jsx-runtime");function Ki({checked:t,defaultChecked:e=!1,onCheckedChange:r,label:a,description:i,disabled:n=!1,error:s=!1,className:l}){let[c,d]=(0,Gi.useState)(e),m=t!==void 0,p=m?t:c,b=u=>{m||d(u),r?.(u)};return(0,Ke.jsxs)("label",{className:o("inline-flex items-start gap-[var(--inkblot-spacing-3)] text-[var(--inkblot-semantic-color-text-primary)]",n&&"cursor-not-allowed opacity-[var(--inkblot-opacity-disabled)]",l),children:[(0,Ke.jsx)("button",{type:"button",role:"checkbox","aria-checked":p,disabled:n,onClick:()=>b(!p),className:o("mt-0.5 inline-flex h-5 w-5 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-sm)] border transition-colors duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--inkblot-semantic-color-border-focus)] focus-visible:outline-offset-2",p?"border-[var(--inkblot-semantic-color-interactive-primary)] bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]":"border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] hover:border-[var(--inkblot-semantic-color-border-strong)]",s&&!p&&"border-[var(--inkblot-semantic-color-status-error)]"),children:p&&(0,Ke.jsx)(Wi.Check,{className:"h-4 w-4"})}),(a||i)&&(0,Ke.jsxs)("span",{className:"flex flex-col gap-[var(--inkblot-spacing-1)]",children:[a&&(0,Ke.jsx)("span",{className:"text-sm font-medium",children:a}),i&&(0,Ke.jsx)("span",{className:o("text-xs text-[var(--inkblot-semantic-color-text-secondary)]",s&&!p&&"text-[var(--inkblot-semantic-color-status-error)]"),children:i})]})]})}var ce=require("react/jsx-runtime"),vc={success:"var(--inkblot-semantic-color-status-success)",warning:"var(--inkblot-semantic-color-status-warning)",error:"var(--inkblot-semantic-color-status-error)",info:"var(--inkblot-semantic-color-status-info)",primary:"var(--inkblot-semantic-color-interactive-primary)"};function xa({label:t,value:e,tone:r="primary",color:a,inverted:i=!1,size:n=72,className:s}){let l=Math.max(0,Math.min(100,e)),c=i?100-l:l,d=5,m=(n-d)/2,p=2*Math.PI*m,b=p-c/100*p,u=a??vc[r];return(0,ce.jsx)("div",{className:s,children:(0,ce.jsxs)("div",{className:"flex flex-col items-center gap-2",children:[(0,ce.jsxs)("div",{className:"relative",style:{width:n,height:n},children:[(0,ce.jsxs)("svg",{width:n,height:n,className:"-rotate-90",children:[(0,ce.jsx)("circle",{cx:n/2,cy:n/2,r:m,fill:"none",stroke:"var(--inkblot-semantic-color-background-tertiary)",strokeWidth:d}),(0,ce.jsx)("circle",{cx:n/2,cy:n/2,r:m,fill:"none",stroke:u,strokeWidth:d,strokeDasharray:p,strokeDashoffset:b,strokeLinecap:"round",className:"transition-[stroke-dashoffset] duration-[var(--inkblot-duration-fast)]"})]}),(0,ce.jsx)("span",{className:"absolute inset-0 flex items-center justify-center text-sm font-semibold text-[var(--inkblot-semantic-color-text-primary)]",children:l})]}),(0,ce.jsx)("span",{className:"text-center text-[10px] leading-tight text-[var(--inkblot-semantic-color-text-tertiary)]",children:t})]})})}var Ui=require("react"),_i=require("lucide-react");var sr=require("react/jsx-runtime");function ji({title:t,children:e,defaultOpen:r=!1,disabled:a=!1,className:i}){let[n,s]=(0,Ui.useState)(r);return(0,sr.jsxs)("div",{className:o("w-full rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)]",a&&"opacity-[var(--inkblot-opacity-disabled)]",i),children:[(0,sr.jsxs)("button",{type:"button",disabled:a,"aria-expanded":n,onClick:()=>s(l=>!l),className:o("flex min-h-[var(--inkblot-size-touch-target-min)] w-full items-center justify-between gap-[var(--inkblot-spacing-3)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)] text-left text-[var(--inkblot-semantic-color-text-primary)]",!a&&"hover:bg-[var(--inkblot-semantic-color-background-tertiary)] focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--inkblot-semantic-color-border-focus)] focus-visible:outline-offset-[-2px]"),children:[(0,sr.jsx)("span",{className:"font-medium",children:t}),(0,sr.jsx)(_i.ChevronDown,{className:o("h-4 w-4 text-[var(--inkblot-semantic-color-text-tertiary)] transition-transform duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)]",n&&"rotate-180")})]}),n&&(0,sr.jsx)("div",{className:"border-t border-[var(--inkblot-semantic-color-border-default)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-4)] text-sm text-[var(--inkblot-semantic-color-text-secondary)]",children:e})]})}var Ao=require("react"),$i=require("lucide-react");var Wt=require("react/jsx-runtime");function qi({items:t,placeholder:e="Search commands...",onSelect:r,className:a}){let[i,n]=(0,Ao.useState)(""),s=(0,Ao.useMemo)(()=>{let l=i.trim().toLowerCase();return l?t.filter(c=>{let d=c.label.toLowerCase().includes(l),m=(c.keywords??[]).some(p=>p.toLowerCase().includes(l));return d||m}):t},[t,i]);return(0,Wt.jsxs)("div",{className:o("w-full rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)]",a),children:[(0,Wt.jsxs)("div",{className:"flex items-center gap-[var(--inkblot-spacing-2)] border-b border-[var(--inkblot-semantic-color-border-default)] px-[var(--inkblot-spacing-3)]",children:[(0,Wt.jsx)($i.Search,{className:"h-4 w-4 text-[var(--inkblot-semantic-color-text-tertiary)]"}),(0,Wt.jsx)("input",{value:i,onChange:l=>n(l.target.value),placeholder:e,className:"h-11 w-full bg-transparent text-sm text-[var(--inkblot-semantic-color-text-primary)] outline-none placeholder:text-[var(--inkblot-semantic-color-text-tertiary)]"})]}),(0,Wt.jsx)("div",{className:"max-h-[280px] overflow-y-auto p-[var(--inkblot-spacing-2)]",children:s.length>0?(0,Wt.jsx)("ul",{className:"flex flex-col gap-[var(--inkblot-spacing-1)]",children:s.map(l=>(0,Wt.jsx)("li",{children:(0,Wt.jsxs)("button",{type:"button",disabled:l.disabled,onClick:()=>r?.(l),className:o("flex min-h-[var(--inkblot-size-touch-target-min)] w-full items-center gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-3)] text-left text-sm text-[var(--inkblot-semantic-color-text-primary)] transition-colors duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)]",l.disabled?"cursor-not-allowed opacity-[var(--inkblot-opacity-disabled)]":"hover:bg-[var(--inkblot-semantic-color-background-tertiary)] active:bg-[var(--inkblot-semantic-color-background-tertiary)]"),children:[l.icon&&(0,Wt.jsx)("span",{className:"text-[var(--inkblot-semantic-color-text-tertiary)]",children:l.icon}),(0,Wt.jsx)("span",{children:l.label})]})},l.id))}):(0,Wt.jsx)("div",{className:"px-[var(--inkblot-spacing-2)] py-[var(--inkblot-spacing-3)] text-sm text-[var(--inkblot-semantic-color-text-secondary)]",children:"No results found."})})]})}var de=require("react"),lr=require("lucide-react");var M=require("react/jsx-runtime"),fc=[{id:"1",role:"user",content:"Show me Acme Corp's profile and deal health."},{id:"2",role:"assistant",content:"Here's the entity profile and current intelligence insights for Acme Corp.",cards:["entity","intelligence"]}],ha="rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-3 text-xs text-[var(--inkblot-semantic-color-text-tertiary)]";function gc({title:t="Command Canvas",subtitle:e="AI-native interface \u2014 results appear here",readyLabel:r="System ready",placeholder:a="Ask anything \u2014 deals, contacts, forecasts...",footerText:i="Citron OS v1.0 \xB7 AI-native Revenue & Operations Platform",blocks:n,renderBlock:s,messages:l,initialMessages:c=fc,onMessagesChange:d,inputValue:m,defaultInputValue:p="",onInputValueChange:b,autoAssistantResponse:u=!0,assistantResponseDelayMs:f=700,isResponding:C,onRespondingChange:x,onSend:g,generateAssistantMessage:S,renderCard:N,hideInput:y=!1,className:k}){let[v,h]=(0,de.useState)(c),[P,E]=(0,de.useState)(p),[O,R]=(0,de.useState)(!1),q=(0,de.useRef)(null),B=l!==void 0,K=B?l:v,F=m!==void 0,J=F?m:P,w=C!==void 0,Y=w?C:O,Dt=J.trim().length>0&&!Y,re=(0,de.useMemo)(()=>H=>({content:`Analyzing "${H}". Here are the latest insights.`,cards:["entity","intelligence"]}),[]),T=H=>{B||h(H),d?.(H)},kt=H=>{F||E(H),b?.(H)},pt=H=>{w||R(H),x?.(H)};(0,de.useEffect)(()=>()=>{q.current!==null&&window.clearTimeout(q.current)},[]);let ao=()=>{let H=J.trim();if(!H)return;let mr={id:`${Date.now()}-user`,role:"user",content:H},gn=[...K,mr];T(gn),kt(""),g?.(H),u&&(pt(!0),q.current=window.setTimeout(()=>{let kn=(S??re)(H),nl=[...gn,{id:`${Date.now()}-assistant`,role:"assistant",content:kn.content,cards:kn.cards}];T(nl),pt(!1)},f))},fn=n!==void 0,al=H=>H.type==="text"?(0,M.jsxs)("div",{className:"flex items-start gap-3",children:[(0,M.jsx)("div",{className:"mt-0.5 flex h-6 w-6 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-sm)] bg-[var(--inkblot-semantic-color-interactive-primary)]/15",children:(0,M.jsx)(lr.Sparkles,{className:"h-3.5 w-3.5 text-[var(--inkblot-semantic-color-interactive-primary)]","aria-hidden":!0})}),(0,M.jsx)("p",{className:"pt-0.5 text-sm leading-relaxed text-[var(--inkblot-semantic-color-text-secondary)]",children:H.content})]}):H.type==="entity"?N?N("entity"):(0,M.jsx)("div",{className:ha,children:"Entity card preview"}):H.type==="intelligence"?N?N("intelligence"):(0,M.jsx)("div",{className:ha,children:"Intelligence card preview"}):H.type==="loading"?(0,M.jsxs)("div",{className:"flex items-center gap-3",children:[(0,M.jsx)("div",{className:"flex h-6 w-6 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-sm)] bg-[var(--inkblot-semantic-color-interactive-primary)]/15",children:(0,M.jsx)(lr.Sparkles,{className:"h-3.5 w-3.5 animate-pulse text-[var(--inkblot-semantic-color-interactive-primary)]","aria-hidden":!0})}),(0,M.jsxs)("div",{className:"flex gap-1",children:[(0,M.jsx)("span",{className:"h-1.5 w-1.5 animate-bounce rounded-full bg-[var(--inkblot-semantic-color-text-tertiary)]",style:{animationDelay:"0ms"}}),(0,M.jsx)("span",{className:"h-1.5 w-1.5 animate-bounce rounded-full bg-[var(--inkblot-semantic-color-text-tertiary)]",style:{animationDelay:"150ms"}}),(0,M.jsx)("span",{className:"h-1.5 w-1.5 animate-bounce rounded-full bg-[var(--inkblot-semantic-color-text-tertiary)]",style:{animationDelay:"300ms"}})]})]}):null;return(0,M.jsxs)("section",{className:o("flex h-full flex-col",k),children:[(0,M.jsxs)("header",{className:"flex items-center justify-between border-b border-[var(--inkblot-semantic-color-border-default)] px-8 py-5",children:[(0,M.jsxs)("div",{children:[(0,M.jsx)("h2",{className:"text-lg font-semibold tracking-tight text-[var(--inkblot-semantic-color-text-primary)]",children:t}),(0,M.jsx)("p",{className:"mt-0.5 text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:e})]}),(0,M.jsxs)("div",{className:"flex items-center gap-2 text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:[(0,M.jsx)("span",{className:"h-1.5 w-1.5 rounded-full bg-[var(--inkblot-semantic-color-status-success)]"}),r]})]}),(0,M.jsx)("div",{className:"hide-scrollbar flex-1 overflow-y-auto px-8 py-6",children:(0,M.jsx)("div",{className:"mx-auto max-w-3xl space-y-6",children:fn?n.map(H=>(0,M.jsx)("div",{children:s?s(H):al(H)},H.id)):K.map(H=>H.role==="user"?(0,M.jsx)("div",{className:"flex justify-end",children:(0,M.jsx)("div",{className:"max-w-md rounded-2xl rounded-br-sm bg-[var(--inkblot-semantic-color-interactive-secondary)] px-4 py-2.5 text-sm leading-relaxed text-[var(--inkblot-semantic-color-text-primary)]",children:H.content})},H.id):(0,M.jsxs)("div",{className:"space-y-4",children:[(0,M.jsxs)("div",{className:"flex items-start gap-3",children:[(0,M.jsx)("div",{className:"mt-0.5 flex h-6 w-6 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-sm)] bg-[var(--inkblot-semantic-color-interactive-primary)]/15",children:(0,M.jsx)(lr.Sparkles,{className:"h-3.5 w-3.5 text-[var(--inkblot-semantic-color-interactive-primary)]","aria-hidden":!0})}),(0,M.jsx)("p",{className:"pt-0.5 text-sm leading-relaxed text-[var(--inkblot-semantic-color-text-secondary)]",children:H.content})]}),H.cards?.length?(0,M.jsx)("div",{className:"ml-9 grid gap-4",children:H.cards.map(mr=>N?(0,M.jsx)("div",{children:N(mr)},mr):(0,M.jsx)("div",{className:ha,children:mr==="entity"?"Entity card preview":"Intelligence card preview"},mr))}):null]},H.id))})}),!y&&!fn?(0,M.jsx)("footer",{className:"border-t border-[var(--inkblot-semantic-color-border-default)] px-8 py-4",children:(0,M.jsxs)("div",{className:"mx-auto max-w-3xl",children:[(0,M.jsxs)("div",{className:"flex items-center gap-3 rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] px-4 py-3",children:[(0,M.jsx)(lr.Sparkles,{className:"h-4 w-4 shrink-0 text-[var(--inkblot-semantic-color-text-tertiary)]"}),(0,M.jsx)("input",{type:"text",value:J,onChange:H=>kt(H.target.value),onKeyDown:H=>{H.key==="Enter"&&ao()},placeholder:a,className:"flex-1 bg-transparent text-sm text-[var(--inkblot-semantic-color-text-primary)] placeholder:text-[var(--inkblot-semantic-color-text-tertiary)] outline-none"}),(0,M.jsx)("button",{type:"button",onClick:ao,disabled:!Dt,className:"flex h-8 w-8 items-center justify-center rounded-[var(--inkblot-radius-sm)] bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)] transition-opacity duration-[var(--inkblot-duration-fast)] disabled:opacity-35","aria-label":"Send",children:(0,M.jsx)(lr.Send,{className:"h-3.5 w-3.5"})})]}),(0,M.jsx)("p",{className:"mt-2 text-center text-[10px] text-[var(--inkblot-semantic-color-text-tertiary)]",children:i})]})}):(0,M.jsx)("footer",{className:"border-t border-[var(--inkblot-semantic-color-border-default)] px-8 py-3",children:(0,M.jsx)("p",{className:"text-center text-[10px] text-[var(--inkblot-semantic-color-text-tertiary)]",children:i})})]})}var cr=require("react");var Ne=require("react/jsx-runtime");function Yi({trigger:t,items:e,className:r}){let[a,i]=(0,cr.useState)(!1),[n,s]=(0,cr.useState)({x:0,y:0}),l=(0,cr.useRef)(null);(0,cr.useEffect)(()=>{if(!a)return;let d=()=>i(!1);return document.addEventListener("click",d),document.addEventListener("contextmenu",d),()=>{document.removeEventListener("click",d),document.removeEventListener("contextmenu",d)}},[a]);let c=d=>{d.preventDefault();let m=l.current?.getBoundingClientRect(),p=m?.left??0,b=m?.top??0;s({x:d.clientX-p,y:d.clientY-b}),i(!0)};return(0,Ne.jsxs)("div",{ref:l,className:o("relative w-full",r),onContextMenu:c,children:[t,a&&(0,Ne.jsx)("div",{role:"menu",className:"absolute z-40 min-w-[220px] rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-1)] shadow-lg",style:{left:n.x,top:n.y},children:e.map(d=>(0,Ne.jsxs)("button",{type:"button",role:"menuitem",disabled:d.disabled,onClick:()=>{d.onSelect?.(),i(!1)},className:o("flex min-h-[var(--inkblot-size-touch-target-min)] w-full items-center justify-between gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-3)] text-sm transition-colors duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)]",d.disabled?"cursor-not-allowed opacity-[var(--inkblot-opacity-disabled)]":"hover:bg-[var(--inkblot-semantic-color-background-tertiary)]",d.danger?"text-[var(--inkblot-semantic-color-status-error)]":"text-[var(--inkblot-semantic-color-text-primary)]"),children:[(0,Ne.jsxs)("span",{className:"flex items-center gap-[var(--inkblot-spacing-2)]",children:[d.icon&&(0,Ne.jsx)("span",{className:"text-[var(--inkblot-semantic-color-text-tertiary)]",children:d.icon}),(0,Ne.jsx)("span",{children:d.label})]}),d.shortcut&&(0,Ne.jsx)("span",{className:"text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:d.shortcut})]},d.id))})]})}var j=require("react"),Xi=require("react-dom"),Zi=require("lucide-react");var gt=require("react/jsx-runtime"),Qi=(0,j.createContext)(null);function Na(){let t=(0,j.useContext)(Qi);if(!t)throw new Error("Dialog components must be used within Dialog");return t}function Ji({open:t,defaultOpen:e=!1,onOpenChange:r,children:a}){let[i,n]=(0,j.useState)(e),s=t!==void 0,l=s?t:i,c=(0,j.useCallback)(m=>{s||n(m),r?.(m)},[s,r]),d=(0,j.useMemo)(()=>({open:l,setOpen:c}),[l,c]);return(0,gt.jsx)(Qi.Provider,{value:d,children:a})}var wa=(0,j.forwardRef)(({className:t,type:e="button",onClick:r,...a},i)=>{let{setOpen:n}=Na();return(0,gt.jsx)("button",{ref:i,type:e,onClick:s=>{r?.(s),s.defaultPrevented||n(!0)},className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center rounded-[var(--inkblot-radius-lg)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]","hover:bg-[var(--inkblot-semantic-color-interactive-primary-hover)] active:bg-[var(--inkblot-semantic-color-interactive-primary-active)]","focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--inkblot-semantic-color-border-focus)] focus-visible:outline-offset-2","disabled:opacity-[var(--inkblot-opacity-disabled)] disabled:pointer-events-none disabled:cursor-not-allowed","[font:var(--inkblot-semantic-typography-body-medium)]",t),...a})});wa.displayName="DialogTrigger";var Ca=(0,j.forwardRef)(({className:t,children:e,showCloseButton:r=!0,initialFocusRef:a,...i},n)=>{let{open:s,setOpen:l}=Na(),c=(0,j.useId)(),d=(0,j.useId)(),m=(0,j.useRef)(null),p=(0,j.useRef)(null),b=(0,j.useCallback)(f=>{if(m.current=f,typeof n=="function"){n(f);return}n&&(n.current=f)},[n]),u=(0,j.useCallback)(()=>{l(!1)},[l]);return(0,j.useEffect)(()=>{if(!s)return;let f=C=>{C.key==="Escape"&&u()};return window.addEventListener("keydown",f),()=>{window.removeEventListener("keydown",f)}},[u,s]),(0,j.useEffect)(()=>{if(!s)return;p.current=document.activeElement instanceof HTMLElement?document.activeElement:null;let f=a?.current,C=m.current?.querySelector('button:not([disabled]), [href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])');return(f??C??m.current)?.focus(),()=>{p.current?.focus()}},[a,s]),!s||typeof document>"u"?null:(0,Xi.createPortal)((0,gt.jsxs)("div",{className:o("fixed inset-0 z-50 flex items-center justify-center p-[var(--inkblot-spacing-6)]"),children:[(0,gt.jsx)("button",{type:"button","aria-label":"Close dialog",className:o("absolute inset-0 bg-[var(--inkblot-semantic-color-background-primary)]/70"),onClick:u}),(0,gt.jsxs)("div",{ref:b,role:"dialog","aria-modal":"true","aria-labelledby":c,"aria-describedby":d,tabIndex:-1,className:o("relative z-10 w-full max-w-[calc(var(--inkblot-size-touch-target-min)*10)] rounded-[var(--inkblot-radius-xl)] border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-primary)] p-[var(--inkblot-spacing-6)]","shadow-[var(--inkblot-shadow-lg)]",t),...i,children:[r?(0,gt.jsx)(Do,{"aria-label":"Close dialog",className:o("absolute right-[var(--inkblot-spacing-4)] top-[var(--inkblot-spacing-4)] rounded-[var(--inkblot-radius-md)] p-[var(--inkblot-spacing-2)]"),children:(0,gt.jsx)(Zi.X,{style:{width:"var(--inkblot-spacing-4)",height:"var(--inkblot-spacing-4)"}})}):null,(0,gt.jsx)("div",{id:c,className:"sr-only"}),(0,gt.jsx)("div",{id:d,className:"sr-only"}),e]})]}),document.body)});Ca.displayName="DialogContent";function ts({className:t,...e}){return(0,gt.jsx)("div",{className:o("mb-[var(--inkblot-spacing-4)] grid gap-[var(--inkblot-spacing-2)]",t),...e})}function es({className:t,...e}){return(0,gt.jsx)("h2",{className:o("text-[var(--inkblot-semantic-color-text-primary)] [font:var(--inkblot-semantic-typography-heading-small)]",t),...e})}function rs({className:t,...e}){return(0,gt.jsx)("p",{className:o("text-[var(--inkblot-semantic-color-text-secondary)] [font:var(--inkblot-semantic-typography-body-medium)]",t),...e})}function os({className:t,...e}){return(0,gt.jsx)("div",{className:o("mt-[var(--inkblot-spacing-6)] flex flex-wrap justify-end gap-[var(--inkblot-spacing-3)]",t),...e})}var Do=(0,j.forwardRef)(({className:t,type:e="button",onClick:r,...a},i)=>{let{setOpen:n}=Na();return(0,gt.jsx)("button",{ref:i,type:e,onClick:s=>{r?.(s),s.defaultPrevented||n(!1)},className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center rounded-[var(--inkblot-radius-lg)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","bg-[var(--inkblot-semantic-color-interactive-secondary)] text-[var(--inkblot-semantic-color-text-primary)]","border border-[var(--inkblot-semantic-color-border-default)]","hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] hover:border-[var(--inkblot-semantic-color-border-strong)]","focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--inkblot-semantic-color-border-focus)] focus-visible:outline-offset-2","[font:var(--inkblot-semantic-typography-body-medium)]",t),...a})});Do.displayName="DialogClose";var et=require("react"),as=require("react-dom"),ns=require("lucide-react");var Kt=require("react/jsx-runtime"),is=(0,et.createContext)(null);function Ta(){let t=(0,et.useContext)(is);if(!t)throw new Error("Drawer components must be used within Drawer");return t}function ss({children:t,open:e,defaultOpen:r=!1,onOpenChange:a,side:i="right"}){let[n,s]=(0,et.useState)(r),l=e!==void 0,c=l?e:n,d=(0,et.useCallback)(p=>{l||s(p),a?.(p)},[l,a]),m=(0,et.useMemo)(()=>({open:c,setOpen:d,side:i}),[c,d,i]);return(0,Kt.jsx)(is.Provider,{value:m,children:t})}var Pa=(0,et.forwardRef)(({className:t,type:e="button",onClick:r,...a},i)=>{let{setOpen:n}=Ta();return(0,Kt.jsx)("button",{ref:i,type:e,onClick:s=>{r?.(s),s.defaultPrevented||n(!0)},className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center rounded-[var(--inkblot-radius-lg)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]","hover:bg-[var(--inkblot-semantic-color-interactive-primary-hover)] active:bg-[var(--inkblot-semantic-color-interactive-primary-active)]","focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--inkblot-semantic-color-border-focus)] focus-visible:outline-offset-2",t),...a})});Pa.displayName="DrawerTrigger";var Sa=(0,et.forwardRef)(({className:t,children:e,initialFocusRef:r,...a},i)=>{let{open:n,setOpen:s,side:l}=Ta(),c=(0,et.useRef)(null),d=(0,et.useRef)(null),m=(0,et.useCallback)(b=>{if(c.current=b,typeof i=="function"){i(b);return}i&&(i.current=b)},[i]),p=(0,et.useCallback)(()=>{s(!1)},[s]);return(0,et.useEffect)(()=>{if(!n)return;let b=u=>{u.key==="Escape"&&p()};return window.addEventListener("keydown",b),()=>{window.removeEventListener("keydown",b)}},[p,n]),(0,et.useEffect)(()=>{if(!n)return;d.current=document.activeElement instanceof HTMLElement?document.activeElement:null;let b=r?.current,u=c.current?.querySelector('button:not([disabled]), [href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])');return(b??u??c.current)?.focus(),()=>{d.current?.focus()}},[r,n]),!n||typeof document>"u"?null:(0,as.createPortal)((0,Kt.jsxs)("div",{className:"fixed inset-0 z-50",children:[(0,Kt.jsx)("button",{type:"button","aria-label":"Close drawer",className:"absolute inset-0 bg-[var(--inkblot-semantic-color-background-primary)]/70",onClick:p}),(0,Kt.jsx)("div",{ref:m,role:"dialog","aria-modal":"true",tabIndex:-1,className:o("absolute top-0 h-full w-full max-w-[calc(var(--inkblot-size-touch-target-min)*7)] border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] p-[var(--inkblot-spacing-6)] shadow-[var(--inkblot-shadow-lg)]",l==="right"?"right-0 border-l":"left-0 border-r",t),...a,children:e})]}),document.body)});Sa.displayName="DrawerContent";function ls({className:t,...e}){return(0,Kt.jsx)("div",{className:o("mb-[var(--inkblot-spacing-4)] grid gap-[var(--inkblot-spacing-2)]",t),...e})}function cs({className:t,...e}){return(0,Kt.jsx)("h2",{className:o("text-[var(--inkblot-semantic-color-text-primary)] [font:var(--inkblot-semantic-typography-heading-small)]",t),...e})}function ds({className:t,...e}){return(0,Kt.jsx)("p",{className:o("text-[var(--inkblot-semantic-color-text-secondary)] [font:var(--inkblot-semantic-typography-body-medium)]",t),...e})}function ms({className:t,...e}){return(0,Kt.jsx)("div",{className:o("mt-[var(--inkblot-spacing-6)] flex flex-wrap justify-end gap-[var(--inkblot-spacing-3)]",t),...e})}var Ma=(0,et.forwardRef)(({className:t,type:e="button",onClick:r,children:a,...i},n)=>{let{setOpen:s}=Ta();return(0,Kt.jsx)("button",{ref:n,type:e,onClick:l=>{r?.(l),l.defaultPrevented||s(!1)},className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-lg)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","bg-[var(--inkblot-semantic-color-interactive-secondary)] text-[var(--inkblot-semantic-color-text-primary)]","border border-[var(--inkblot-semantic-color-border-default)] hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)]",t),...i,children:a??(0,Kt.jsx)(ns.X,{style:{width:"var(--inkblot-spacing-4)",height:"var(--inkblot-spacing-4)"}})})});Ma.displayName="DrawerClose";var dt=require("react"),ps=require("lucide-react");var we=require("react/jsx-runtime"),bs=(0,dt.createContext)(null);function Ea(){let t=(0,dt.useContext)(bs);if(!t)throw new Error("DropdownMenu components must be used within DropdownMenu");return t}function us({children:t,open:e,defaultOpen:r=!1,onOpenChange:a}){let[i,n]=(0,dt.useState)(r),s=(0,dt.useRef)(null),l=e!==void 0,c=l?e:i,d=(0,dt.useCallback)(p=>{l||n(p),a?.(p)},[l,a]);(0,dt.useEffect)(()=>{if(!c)return;let p=u=>{let f=u.target;f&&s.current&&!s.current.contains(f)&&d(!1)},b=u=>{u.key==="Escape"&&d(!1)};return window.addEventListener("pointerdown",p),window.addEventListener("keydown",b),()=>{window.removeEventListener("pointerdown",p),window.removeEventListener("keydown",b)}},[c,d]);let m=(0,dt.useMemo)(()=>({open:c,setOpen:d,containerRef:s}),[c,d]);return(0,we.jsx)(bs.Provider,{value:m,children:(0,we.jsx)("div",{ref:s,className:"relative inline-flex",children:t})})}var Ia=(0,dt.forwardRef)(({className:t,type:e="button",showChevron:r=!0,onClick:a,children:i,...n},s)=>{let{open:l,setOpen:c}=Ea();return(0,we.jsxs)("button",{ref:s,type:e,"aria-haspopup":"menu","aria-expanded":l,onClick:d=>{a?.(d),d.defaultPrevented||c(!l)},className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-interactive-secondary)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","text-[var(--inkblot-semantic-color-text-primary)] hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)]","focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--inkblot-semantic-color-border-focus)] focus-visible:outline-offset-2","[font:var(--inkblot-semantic-typography-body-medium)]",t),...n,children:[i,r?(0,we.jsx)(ps.ChevronDown,{style:{width:"var(--inkblot-spacing-4)",height:"var(--inkblot-spacing-4)"}}):null]})});Ia.displayName="DropdownMenuTrigger";var La=(0,dt.forwardRef)(({className:t,...e},r)=>{let{open:a}=Ea();return a?(0,we.jsx)("div",{ref:r,role:"menu",className:o("absolute right-0 top-[calc(100%+var(--inkblot-spacing-2))] z-40 min-w-[calc(var(--inkblot-size-touch-target-min)*4)] rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-primary)] p-[var(--inkblot-spacing-2)] shadow-[var(--inkblot-shadow-md)]",t),...e}):null});La.displayName="DropdownMenuContent";var Aa=(0,dt.forwardRef)(({className:t,type:e="button",icon:r,onClick:a,children:i,...n},s)=>{let{setOpen:l}=Ea();return(0,we.jsxs)("button",{ref:s,type:e,role:"menuitem",onClick:c=>{a?.(c),c.defaultPrevented||l(!1)},className:o("flex min-h-[var(--inkblot-size-touch-target-min)] w-full items-center gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-2)]","text-left text-[var(--inkblot-semantic-color-text-primary)] hover:bg-[var(--inkblot-semantic-color-background-secondary)]","focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--inkblot-semantic-color-border-focus)] focus-visible:outline-offset-0","[font:var(--inkblot-semantic-typography-body-medium)]",t),...n,children:[r,i]})});Aa.displayName="DropdownMenuItem";function vs({className:t,...e}){return(0,we.jsx)("div",{className:o("my-[var(--inkblot-spacing-2)] border-b border-[var(--inkblot-semantic-color-border-default)]",t),...e})}var to=require("react"),rt=require("lucide-react");var z=require("react/jsx-runtime"),fs=[{type:"heading",label:"Heading",icon:rt.Type},{type:"text",label:"Text",icon:rt.Type},{type:"image",label:"Image",icon:rt.Image},{type:"button",label:"Button",icon:rt.Square},{type:"divider",label:"Divider",icon:rt.Minus},{type:"columns",label:"2 Columns",icon:rt.Columns}],kc={heading:"Your Heading Here",text:"Write your content here. Click to edit this text block.",image:"https://placehold.co/600x200",button:"Click Me",divider:"",columns:"Column 1 | Column 2"};function yc({blocks:t,onBlocksChange:e,availableBlockTypes:r,editingId:a,onEditingIdChange:i,onAddBlock:n,onDeleteBlock:s,onMoveBlock:l,onBlockContentChange:c,readOnly:d=!1,className:m}){let[p,b]=(0,to.useState)(null),u=a!==void 0,f=u?a:p,C=v=>{u||b(v),i?.(v)},x=(0,to.useMemo)(()=>!r||r.length===0?fs:fs.filter(v=>r.includes(v.type)),[r]),g=(0,to.useMemo)(()=>t.reduce((v,h,P)=>(v[h.id]=P,v),{}),[t]),S=v=>{if(d)return;let h={id:`block-${Date.now()}-${Math.random().toString(36).slice(2,8)}`,type:v,content:kc[v]};e([...t,h]),n?.(v,h)},N=(v,h)=>{d||(e(t.map(P=>P.id===v?{...P,content:h}:P)),c?.(v,h))},y=v=>{d||(e(t.filter(h=>h.id!==v)),s?.(v))},k=(v,h)=>{if(d)return;let P=g[v],E=P+h;if(E<0||E>=t.length)return;let O=[...t],[R]=O.splice(P,1);O.splice(E,0,R),e(O),l?.(v,h)};return(0,z.jsxs)("section",{className:o("flex gap-4",m),children:[(0,z.jsxs)("aside",{className:"w-44 shrink-0",children:[(0,z.jsx)("span",{className:"text-[10px] uppercase tracking-wide text-[var(--inkblot-semantic-color-text-tertiary)]",children:"Blocks"}),(0,z.jsx)("div",{className:"mt-2 space-y-1",children:x.map(v=>(0,z.jsxs)("button",{type:"button",onClick:()=>S(v.type),disabled:d,className:"flex w-full items-center gap-2 rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] px-3 py-2 text-xs text-[var(--inkblot-semantic-color-text-primary)] transition-colors duration-[var(--inkblot-duration-fast)] hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)]",children:[(0,z.jsx)(v.icon,{className:"h-3.5 w-3.5 text-[var(--inkblot-semantic-color-text-tertiary)]"}),v.label]},v.type))})]}),(0,z.jsx)("div",{className:"glass min-h-[400px] flex-1 rounded-[var(--inkblot-radius-lg)] p-6",children:t.length===0?(0,z.jsxs)("div",{className:"flex h-full flex-col items-center justify-center gap-3 text-center",children:[(0,z.jsx)(rt.MousePointerClick,{className:"h-8 w-8 text-[var(--inkblot-semantic-color-text-tertiary)]/40"}),(0,z.jsxs)("div",{children:[(0,z.jsx)("p",{className:"text-sm text-[var(--inkblot-semantic-color-text-tertiary)]",children:"Drop blocks here to build your email"}),(0,z.jsx)("p",{className:"mt-1 text-[10px] text-[var(--inkblot-semantic-color-text-tertiary)]/60",children:"or use AI to generate a full layout"})]})]}):(0,z.jsx)("div",{className:"space-y-2",children:t.map((v,h)=>(0,z.jsxs)("article",{className:"group flex items-start gap-2",children:[(0,z.jsx)("div",{className:"pt-1 text-[var(--inkblot-semantic-color-text-tertiary)]",children:(0,z.jsx)(rt.GripVertical,{className:"h-3.5 w-3.5"})}),(0,z.jsxs)("div",{className:"flex-1 rounded-[var(--inkblot-radius-md)] border border-transparent p-3 transition-colors duration-[var(--inkblot-duration-fast)] group-hover:border-[var(--inkblot-semantic-color-border-default)]",children:[v.type==="heading"?(0,z.jsx)("h2",{contentEditable:!d&&f===v.id,suppressContentEditableWarning:!0,onClick:()=>{d||C(v.id)},onBlur:P=>{N(v.id,P.currentTarget.textContent??""),C(null)},className:"cursor-text text-xl font-bold text-[var(--inkblot-semantic-color-text-primary)] outline-none",children:v.content}):null,v.type==="text"?(0,z.jsx)("p",{contentEditable:!d&&f===v.id,suppressContentEditableWarning:!0,onClick:()=>{d||C(v.id)},onBlur:P=>{N(v.id,P.currentTarget.textContent??""),C(null)},className:"cursor-text text-sm leading-relaxed text-[var(--inkblot-semantic-color-text-secondary)] outline-none",children:v.content}):null,v.type==="image"?(0,z.jsx)("div",{className:"flex h-32 items-center justify-center overflow-hidden rounded-[var(--inkblot-radius-md)] bg-[var(--inkblot-semantic-color-background-tertiary)]",children:(0,z.jsx)(rt.Image,{className:"h-8 w-8 text-[var(--inkblot-semantic-color-text-tertiary)]/50"})}):null,v.type==="button"?(0,z.jsx)("div",{className:"flex justify-center",children:(0,z.jsx)("span",{contentEditable:!d&&f===v.id,suppressContentEditableWarning:!0,onClick:()=>{d||C(v.id)},onBlur:P=>{N(v.id,P.currentTarget.textContent??""),C(null)},className:"cursor-text rounded-[var(--inkblot-radius-md)] bg-[var(--inkblot-semantic-color-interactive-primary)] px-6 py-2.5 text-sm font-medium text-[var(--inkblot-semantic-color-text-inverse)] outline-none",children:v.content})}):null,v.type==="divider"?(0,z.jsx)("hr",{className:"my-2 border-[var(--inkblot-semantic-color-border-default)]"}):null,v.type==="columns"?(0,z.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,z.jsx)("div",{className:"rounded-[var(--inkblot-radius-md)] bg-[var(--inkblot-semantic-color-background-tertiary)] p-4 text-center text-sm text-[var(--inkblot-semantic-color-text-tertiary)]",children:"Column 1"}),(0,z.jsx)("div",{className:"rounded-[var(--inkblot-radius-md)] bg-[var(--inkblot-semantic-color-background-tertiary)] p-4 text-center text-sm text-[var(--inkblot-semantic-color-text-tertiary)]",children:"Column 2"})]}):null]}),(0,z.jsxs)("div",{className:"flex flex-col gap-1 opacity-0 transition-opacity duration-[var(--inkblot-duration-fast)] group-hover:opacity-100",children:[(0,z.jsx)("button",{type:"button",onClick:()=>k(v.id,-1),disabled:d||h===0,className:"rounded-[var(--inkblot-radius-sm)] p-1 text-[var(--inkblot-semantic-color-text-tertiary)] transition-colors duration-[var(--inkblot-duration-fast)] hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] disabled:opacity-30","aria-label":"Move up",children:(0,z.jsx)(rt.ChevronUp,{className:"h-3 w-3"})}),(0,z.jsx)("button",{type:"button",onClick:()=>k(v.id,1),disabled:d||h===t.length-1,className:"rounded-[var(--inkblot-radius-sm)] p-1 text-[var(--inkblot-semantic-color-text-tertiary)] transition-colors duration-[var(--inkblot-duration-fast)] hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] disabled:opacity-30","aria-label":"Move down",children:(0,z.jsx)(rt.ChevronDown,{className:"h-3 w-3"})}),(0,z.jsx)("button",{type:"button",onClick:()=>y(v.id),disabled:d,className:"rounded-[var(--inkblot-radius-sm)] p-1 text-[var(--inkblot-semantic-color-status-error)] transition-colors duration-[var(--inkblot-duration-fast)] hover:bg-[var(--inkblot-semantic-color-status-error)]/10","aria-label":"Delete block",children:(0,z.jsx)(rt.Trash2,{className:"h-3 w-3"})})]})]},v.id))})})]})}var gs=require("react");var Ce=require("react/jsx-runtime"),Da=(0,gs.forwardRef)(({className:t,...e},r)=>(0,Ce.jsx)("form",{ref:r,className:o("grid gap-[var(--inkblot-spacing-4)] rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] p-[var(--inkblot-spacing-5)]",t),...e}));Da.displayName="Form";function ks({className:t,label:e,hint:r,error:a,children:i,requiredIndicator:n,...s}){return(0,Ce.jsxs)("div",{className:o("grid gap-[var(--inkblot-spacing-2)]",t),...s,children:[e?(0,Ce.jsxs)("p",{className:"text-[var(--inkblot-semantic-color-text-primary)] [font:var(--inkblot-semantic-typography-body-medium)]",children:[e,n?(0,Ce.jsx)("span",{className:"ml-[var(--inkblot-spacing-1)] text-[var(--inkblot-semantic-color-status-error)]",children:"*"}):null]}):null,i,a?(0,Ce.jsx)("p",{className:"text-[var(--inkblot-semantic-color-status-error)] [font:var(--inkblot-semantic-typography-body-small)]",children:a}):r?(0,Ce.jsx)("p",{className:"text-[var(--inkblot-semantic-color-text-secondary)] [font:var(--inkblot-semantic-typography-body-small)]",children:r}):null]})}function ys({className:t,...e}){return(0,Ce.jsx)("div",{className:o("mt-[var(--inkblot-spacing-2)] flex flex-wrap justify-end gap-[var(--inkblot-spacing-3)]",t),...e})}var Ro=require("react");var Lt=require("react/jsx-runtime"),xc=[{id:"1",label:"Acme Corp",kind:"org",x:400,y:250,score:82},{id:"2",label:"TechVentures",kind:"org",x:220,y:140,score:65},{id:"3",label:"DataFlow Labs",kind:"org",x:600,y:160,score:45},{id:"4",label:"Jane Smith",kind:"person",x:300,y:380,score:90},{id:"5",label:"Mark Johnson",kind:"person",x:520,y:370,score:72},{id:"6",label:"GlobalTech",kind:"org",x:160,y:300,score:38},{id:"7",label:"Sarah Lee",kind:"person",x:650,y:310,score:55}],hc=[{from:"1",to:"2",strength:.8},{from:"1",to:"3",strength:.5},{from:"1",to:"4",strength:.9},{from:"1",to:"5",strength:.7},{from:"2",to:"6",strength:.4},{from:"3",to:"7",strength:.6},{from:"4",to:"5",strength:.3},{from:"6",to:"4",strength:.5}];function Nc(t,e,r,a){return t>=70?e:t>=50?r:a}function Ue(t,e){for(let r of e){let a=t.getPropertyValue(r).trim();if(a)return a}return""}function Ra(t,e,r){if(e){t.font=e;return}t.font=r}function wc({title:t="Entity Graph",subtitle:e,nodes:r=xc,edges:a=hc,className:i}){let n=(0,Ro.useRef)(null);(0,Ro.useEffect)(()=>{let l=n.current;if(!l)return;let c=l.getContext("2d");if(!c)return;let d=()=>{let m=l.getBoundingClientRect(),p=window.devicePixelRatio||1;l.width=m.width*p,l.height=m.height*p,c.setTransform(p,0,0,p,0,0),c.clearRect(0,0,m.width,m.height);let b=getComputedStyle(document.documentElement),u=Ue(b,["--inkblot-semantic-color-border-default","--inkblot-semantic-color-border-strong"]),f=Ue(b,["--inkblot-semantic-color-text-tertiary","--inkblot-semantic-color-text-secondary"]),C=Ue(b,["--inkblot-semantic-color-background-secondary","--inkblot-semantic-color-background-primary"]),x=Ue(b,["--inkblot-semantic-color-status-success","--inkblot-semantic-color-interactive-primary"]),g=Ue(b,["--inkblot-semantic-color-status-warning","--inkblot-semantic-color-status-info"]),S=Ue(b,["--inkblot-semantic-color-status-error","--inkblot-semantic-color-status-warning"]),N=Ue(b,["--inkblot-semantic-typography-body-small","--inkblot-semantic-typography-body-medium"]),y=Ue(b,["--inkblot-semantic-typography-body-medium","--inkblot-semantic-typography-body-small"]),k=c.font;a.forEach(v=>{let h=r.find(E=>E.id===v.from),P=r.find(E=>E.id===v.to);!h||!P||(c.beginPath(),c.moveTo(h.x,h.y),c.lineTo(P.x,P.y),c.strokeStyle=u,c.globalAlpha=Math.min(1,Math.max(0,v.strength*.45)),c.lineWidth=Math.max(1,v.strength*2),c.stroke(),c.globalAlpha=1)}),r.forEach(v=>{let h=Nc(v.score,x,g,S),P=v.kind==="org"?28:22;c.beginPath(),c.arc(v.x,v.y,P+8,0,Math.PI*2),c.fillStyle=h,c.globalAlpha=.08,c.fill(),c.globalAlpha=1,c.beginPath(),c.arc(v.x,v.y,P,0,Math.PI*2),c.fillStyle=C,c.strokeStyle=h,c.globalAlpha=.7,c.lineWidth=1.5,c.fill(),c.stroke(),c.globalAlpha=1,c.fillStyle=h,Ra(c,N,k),c.textAlign="center",c.textBaseline="middle",c.fillText(v.kind==="org"?"\u2B21":"\u25CF",v.x,v.y),c.fillStyle=f,Ra(c,y,k),c.fillText(v.label,v.x,v.y+P+16),c.fillStyle=h,c.globalAlpha=.8,Ra(c,N,k),c.fillText(String(v.score),v.x,v.y+P+28),c.globalAlpha=1})};return d(),window.addEventListener("resize",d),()=>window.removeEventListener("resize",d)},[a,r]);let s=e??`Relationship intelligence \xB7 ${r.length} nodes \xB7 ${a.length} edges`;return(0,Lt.jsxs)("section",{className:o("flex h-full flex-col",i),children:[(0,Lt.jsxs)("header",{className:"flex items-center justify-between border-b border-[var(--inkblot-semantic-color-border-default)] px-8 py-5",children:[(0,Lt.jsxs)("div",{children:[(0,Lt.jsx)("h2",{className:"text-lg font-semibold tracking-tight text-[var(--inkblot-semantic-color-text-primary)]",children:t}),(0,Lt.jsx)("p",{className:"mt-0.5 text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:s})]}),(0,Lt.jsxs)("div",{className:"flex items-center gap-4 text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:[(0,Lt.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,Lt.jsx)("span",{className:"h-2 w-2 rounded-full bg-[var(--inkblot-semantic-color-status-success)]"}),"Orgs"]}),(0,Lt.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,Lt.jsx)("span",{className:"h-2 w-2 rounded-full bg-[var(--inkblot-semantic-color-status-warning)]"}),"People"]})]})]}),(0,Lt.jsx)("div",{className:"relative flex-1",children:(0,Lt.jsx)("canvas",{ref:n,className:"h-full w-full"})})]})}var me=require("react"),_e=require("lucide-react");var $=require("react/jsx-runtime"),Cc=[{target:"[data-tour='sidebar']",title:"Navigation Sidebar",description:"Access all CRM modules from this sidebar. Each icon represents a different module.",position:"right"},{target:"[data-tour='canvas']",title:"AI Command Canvas",description:"This is your AI-powered command center where you can orchestrate tasks and workflows.",position:"bottom"},{target:"[data-tour='event-feed']",title:"Real-Time Event Feed",description:"Follow live system activity like stage updates, invoices, and communication events.",position:"left"},{target:"[data-tour='system-status']",title:"System Status",description:"This indicator confirms platform health and connectivity.",position:"right"}];function Tc({steps:t=Cc,open:e,defaultOpen:r=!0,onOpenChange:a,stepIndex:i,defaultStepIndex:n=0,onStepIndexChange:s,onComplete:l,className:c}){let[d,m]=(0,me.useState)(r),[p,b]=(0,me.useState)(n),[u,f]=(0,me.useState)(null),C=e??d,x=i??p,g=t[x],S=x===t.length-1,N=E=>{e===void 0&&m(E),a?.(E)},y=E=>{let O=Math.min(Math.max(E,0),Math.max(t.length-1,0));i===void 0&&b(O),s?.(O)},k=(0,me.useCallback)(()=>{let E=document.querySelector(g.target);if(!E){f(null);return}f(E.getBoundingClientRect())},[g.target]);(0,me.useEffect)(()=>(k(),window.addEventListener("resize",k),window.addEventListener("scroll",k,!0),()=>{window.removeEventListener("resize",k),window.removeEventListener("scroll",k,!0)}),[k]);let v=()=>{if(S){N(!1),l();return}y(x+1)},h=()=>{y(x-1)},P=(0,me.useMemo)(()=>{if(!u)return{top:"50%",left:"50%",transform:"translate(-50%, -50%)"};let E=16,O=320;return g.position==="right"?{top:u.top+u.height/2,left:u.right+E,transform:"translateY(-50%)"}:g.position==="left"?{top:u.top+u.height/2,left:u.left-O-E,transform:"translateY(-50%)"}:g.position==="top"?{top:u.top-E,left:u.left+u.width/2,transform:"translate(-50%, -100%)"}:{top:u.bottom+E,left:u.left+u.width/2,transform:"translateX(-50%)"}},[g.position,u]);return C?(0,$.jsxs)("div",{className:o("fixed inset-0 z-[200]",c),children:[u?(0,$.jsx)("div",{className:"pointer-events-none absolute rounded-[var(--inkblot-radius-lg)] border-2 border-[var(--inkblot-semantic-color-interactive-primary)]/50",style:{top:u.top-6,left:u.left-6,width:u.width+12,height:u.height+12,boxShadow:"0 0 0 9999px var(--inkblot-semantic-color-background-inverse), var(--inkblot-shadow-lg)"}}):(0,$.jsx)("div",{className:"absolute inset-0 bg-[var(--inkblot-semantic-color-background-inverse)]/70"}),(0,$.jsxs)("div",{style:{...P,position:"absolute",width:320,zIndex:210},className:"rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-5 shadow-[var(--inkblot-shadow-lg)]",children:[(0,$.jsxs)("div",{className:"mb-3 flex items-center justify-between",children:[(0,$.jsxs)("span",{className:"text-[10px] uppercase tracking-wide text-[var(--inkblot-semantic-color-text-tertiary)]",children:["Step ",x+1," of ",t.length]}),(0,$.jsx)("button",{type:"button",onClick:()=>{N(!1),l()},className:"rounded-[var(--inkblot-radius-sm)] p-1 text-[var(--inkblot-semantic-color-text-tertiary)] transition-colors duration-[var(--inkblot-duration-fast)] hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)]","aria-label":"Close tour",children:(0,$.jsx)(_e.X,{className:"h-3 w-3"})})]}),(0,$.jsx)("h3",{className:"mb-1.5 text-sm font-semibold text-[var(--inkblot-semantic-color-text-primary)]",children:g.title}),(0,$.jsx)("p",{className:"text-xs leading-relaxed text-[var(--inkblot-semantic-color-text-tertiary)]",children:g.description}),(0,$.jsx)("div",{className:"mb-3 mt-4 flex gap-1",children:t.map((E,O)=>(0,$.jsx)("span",{className:o("h-1 flex-1 rounded-full",O<=x?"bg-[var(--inkblot-semantic-color-interactive-primary)]":"bg-[var(--inkblot-semantic-color-background-tertiary)]")},`${O}-progress`))}),(0,$.jsxs)("div",{className:"flex items-center justify-between",children:[(0,$.jsxs)("button",{type:"button",onClick:h,disabled:x===0,className:"flex items-center gap-1 text-xs text-[var(--inkblot-semantic-color-text-tertiary)] transition-opacity duration-[var(--inkblot-duration-fast)] disabled:opacity-0",children:[(0,$.jsx)(_e.ArrowLeft,{className:"h-3 w-3"}),"Back"]}),(0,$.jsx)("button",{type:"button",onClick:v,className:"flex items-center gap-1.5 rounded-[var(--inkblot-radius-md)] bg-[var(--inkblot-semantic-color-interactive-primary)] px-4 py-2 text-xs font-medium text-[var(--inkblot-semantic-color-text-inverse)]",children:S?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(_e.Check,{className:"h-3 w-3"}),"Get Started"]}):(0,$.jsxs)($.Fragment,{children:["Next",(0,$.jsx)(_e.ArrowRight,{className:"h-3 w-3"})]})})]})]})]}):null}var Ut=require("react");var eo=require("react/jsx-runtime"),xs=(0,Ut.createContext)(null);function hs(){let t=(0,Ut.useContext)(xs);if(!t)throw new Error("HoverCard components must be used within HoverCard");return t}function Ns({children:t,openDelay:e=120,closeDelay:r=120}){let[a,i]=(0,Ut.useState)(!1),n=(0,Ut.useRef)(null),s=(0,Ut.useMemo)(()=>({open:a,setOpen:i,openDelay:e,closeDelay:r,timeoutRef:n}),[a,e,r]);return(0,eo.jsx)(xs.Provider,{value:s,children:(0,eo.jsx)("div",{className:"relative inline-flex",children:t})})}var Ha=(0,Ut.forwardRef)(({className:t,onMouseEnter:e,onMouseLeave:r,onFocus:a,onBlur:i,...n},s)=>{let{setOpen:l,openDelay:c,closeDelay:d,timeoutRef:m}=hs();return(0,eo.jsx)("div",{ref:s,tabIndex:0,onMouseEnter:p=>{e?.(p),m.current&&window.clearTimeout(m.current),m.current=window.setTimeout(()=>l(!0),c)},onMouseLeave:p=>{r?.(p),m.current&&window.clearTimeout(m.current),m.current=window.setTimeout(()=>l(!1),d)},onFocus:p=>{a?.(p),l(!0)},onBlur:p=>{i?.(p),l(!1)},className:o(t),...n})});Ha.displayName="HoverCardTrigger";var Ba=(0,Ut.forwardRef)(({className:t,onMouseEnter:e,onMouseLeave:r,...a},i)=>{let{open:n,setOpen:s,closeDelay:l,timeoutRef:c}=hs();return n?(0,eo.jsx)("div",{ref:i,role:"dialog",onMouseEnter:d=>{e?.(d),c.current&&window.clearTimeout(c.current),s(!0)},onMouseLeave:d=>{r?.(d),c.current&&window.clearTimeout(c.current),c.current=window.setTimeout(()=>s(!1),l)},className:o("absolute left-0 top-[calc(100%+var(--inkblot-spacing-2))] z-40 min-w-[calc(var(--inkblot-size-touch-target-min)*4)] rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-primary)] p-[var(--inkblot-spacing-4)] shadow-[var(--inkblot-shadow-md)]",t),...a}):null});Ba.displayName="HoverCardContent";var je=require("react");var za=require("react/jsx-runtime"),Oa=(0,je.forwardRef)(({className:t,disabled:e,length:r=6,value:a,defaultValue:i="",onValueChange:n,containerProps:s,...l},c)=>{let[d,m]=(0,je.useState)(i.slice(0,r)),p=(0,je.useRef)([]),b=a!==void 0,u=b?a.slice(0,r):d,f=(0,je.useMemo)(()=>Array.from({length:r},(y,k)=>u[k]??""),[u,r]),C=y=>{let k=y.slice(0,r);b||m(k),n?.(k)},x=y=>{let k=p.current[y];k?.focus(),k?.select()},g=(y,k)=>{let v=k.replace(/[^0-9A-Za-z]/g,"").slice(0,1),h=f.map((P,E)=>E===y?v:P);C(h.join("")),v&&y<r-1&&x(y+1)},S=(y,k)=>{if(k.key==="Backspace"&&!f[y]&&y>0){let v=f.map((h,P)=>P===y-1?"":h);C(v.join("")),x(y-1)}k.key==="ArrowLeft"&&y>0&&(k.preventDefault(),x(y-1)),k.key==="ArrowRight"&&y<r-1&&(k.preventDefault(),x(y+1))};return(0,za.jsx)("div",{ref:c,onPaste:y=>{y.preventDefault();let k=y.clipboardData.getData("text").replace(/[^0-9A-Za-z]/g,"").slice(0,r);k&&(C(k),x(Math.min(k.length,r-1)))},className:o("flex items-center gap-[var(--inkblot-spacing-2)]",t,s?.className),...s,children:f.map((y,k)=>(0,za.jsx)("input",{ref:v=>{p.current[k]=v},type:"text",inputMode:"numeric",maxLength:1,value:y,disabled:e,onChange:v=>g(k,v.target.value),onKeyDown:v=>S(k,v),className:o("min-h-[var(--inkblot-size-touch-target-min)] w-full rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-secondary)] px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-2)]","text-center text-[var(--inkblot-semantic-color-text-primary)] [font:var(--inkblot-semantic-typography-heading-small)]","focus-visible:outline focus-visible:outline-2 focus-visible:outline-[var(--inkblot-semantic-color-border-focus)] focus-visible:outline-offset-2","disabled:opacity-[var(--inkblot-opacity-disabled)] disabled:pointer-events-none"),...l},`otp-slot-${k}`))})});Oa.displayName="InputOtp";var xr=require("react/jsx-runtime"),Pc=[{label:"Revenue Confidence",value:82,tone:"success"},{label:"Churn Risk",value:23,tone:"warning",inverted:!0},{label:"Momentum",value:67,tone:"primary"}];function Sc({title:t="Intelligence Scores",items:e=Pc,className:r}){return(0,xr.jsxs)("article",{className:o("glass rounded-[var(--inkblot-radius-lg)] p-5",r),children:[(0,xr.jsx)("h3",{className:"mb-4 text-xs font-medium uppercase tracking-wide text-[var(--inkblot-semantic-color-text-tertiary)]",children:t}),(0,xr.jsx)("div",{className:"grid grid-cols-3 gap-6",children:e.map(a=>(0,xr.jsx)(xa,{label:a.label,value:a.value,tone:a.tone,color:a.color,inverted:a.inverted},a.label))})]})}var ws=require("react");var Ho=require("react/jsx-runtime"),Fa=(0,ws.forwardRef)(({className:t,children:e,requiredIndicator:r,...a},i)=>(0,Ho.jsxs)("label",{ref:i,className:o("inline-flex items-center gap-[var(--inkblot-spacing-1)] text-[var(--inkblot-semantic-color-text-primary)] [font:var(--inkblot-semantic-typography-body-medium)]",t),...a,children:[e,r?(0,Ho.jsx)("span",{className:"text-[var(--inkblot-semantic-color-status-error)]",children:"*"}):null]}));Fa.displayName="Label";var it=require("react"),Cs=require("lucide-react");var Yt=require("react/jsx-runtime"),Ts=(0,it.createContext)(null);function Va(){let t=(0,it.useContext)(Ts);if(!t)throw new Error("Menubar components must be used within Menubar");return t}var Ps=(0,it.createContext)(null);function Ss(){let t=(0,it.useContext)(Ps);if(!t)throw new Error("Menubar menu components must be used within MenubarMenu");return t}var Ga=(0,it.forwardRef)(({className:t,...e},r)=>{let[a,i]=(0,it.useState)(null),n=(0,it.useMemo)(()=>({openMenuId:a,setOpenMenuId:i}),[a]);return(0,Yt.jsx)(Ts.Provider,{value:n,children:(0,Yt.jsx)("div",{ref:r,className:o("flex items-center gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] p-[var(--inkblot-spacing-2)]",t),...e})})});Ga.displayName="Menubar";function Ms({id:t,className:e,...r}){let a=(0,it.useMemo)(()=>({menuId:t}),[t]);return(0,Yt.jsx)(Ps.Provider,{value:a,children:(0,Yt.jsx)("div",{className:o("relative inline-flex",e),...r})})}var Wa=(0,it.forwardRef)(({className:t,type:e="button",showChevron:r=!0,onClick:a,children:i,...n},s)=>{let{openMenuId:l,setOpenMenuId:c}=Va(),{menuId:d}=Ss(),m=l===d;return(0,Yt.jsxs)("button",{ref:s,type:e,"aria-haspopup":"menu","aria-expanded":m,onClick:p=>{a?.(p),p.defaultPrevented||c(m?null:d)},className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-2)]","[font:var(--inkblot-semantic-typography-body-medium)]",m?"bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]":"text-[var(--inkblot-semantic-color-text-primary)] hover:bg-[var(--inkblot-semantic-color-background-secondary)]",t),...n,children:[i,r?(0,Yt.jsx)(Cs.ChevronDown,{style:{width:"var(--inkblot-spacing-4)",height:"var(--inkblot-spacing-4)"}}):null]})});Wa.displayName="MenubarTrigger";var Ka=(0,it.forwardRef)(({className:t,...e},r)=>{let{openMenuId:a}=Va(),{menuId:i}=Ss();return a!==i?null:(0,Yt.jsx)("div",{ref:r,role:"menu",className:o("absolute left-0 top-[calc(100%+var(--inkblot-spacing-2))] z-40 min-w-[calc(var(--inkblot-size-touch-target-min)*4)] rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-primary)] p-[var(--inkblot-spacing-2)] shadow-[var(--inkblot-shadow-md)]",t),...e})});Ka.displayName="MenubarContent";var Ua=(0,it.forwardRef)(({className:t,type:e="button",icon:r,...a},i)=>(0,Yt.jsxs)("button",{ref:i,type:e,role:"menuitem",className:o("flex min-h-[var(--inkblot-size-touch-target-min)] w-full items-center gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-2)]","text-left text-[var(--inkblot-semantic-color-text-primary)] hover:bg-[var(--inkblot-semantic-color-background-secondary)]","[font:var(--inkblot-semantic-typography-body-medium)]",t),...a,children:[r,a.children]}));Ua.displayName="MenubarItem";function Es({className:t,...e}){return(0,Yt.jsx)("div",{className:o("my-[var(--inkblot-spacing-2)] border-b border-[var(--inkblot-semantic-color-border-default)]",t),...e})}var _a=(0,it.forwardRef)(({className:t,...e},r)=>{let{setOpenMenuId:a}=Va(),i=(0,it.useRef)(null);return(0,Yt.jsx)("div",{ref:n=>{i.current=n,typeof r=="function"?r(n):r&&(r.current=n)},onPointerDown:n=>{i.current?.contains(n.target)&&a(null)},className:o(t),...e})});_a.displayName="MenubarCloseZone";var ja=require("lucide-react");var $e=require("react/jsx-runtime");function Is({items:t,className:e,onItemSelect:r}){return(0,$e.jsx)("nav",{"aria-label":"Navigation menu",className:o("flex flex-wrap items-center gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] p-[var(--inkblot-spacing-2)]",e),children:t.map(a=>(0,$e.jsx)(Mc,{item:a,onSelect:()=>r?.(a)},a.id))})}function Mc({item:t,onSelect:e,className:r,...a}){let i=o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-2)]","[font:var(--inkblot-semantic-typography-body-medium)]",t.active?"bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]":"text-[var(--inkblot-semantic-color-text-primary)] hover:bg-[var(--inkblot-semantic-color-background-secondary)]",t.disabled&&"pointer-events-none opacity-[var(--inkblot-opacity-disabled)]",r);return t.href?(0,$e.jsxs)("a",{href:t.href,"aria-current":t.active?"page":void 0,className:i,onClick:()=>e?.(),...a,children:[t.icon,t.label,t.active?null:(0,$e.jsx)(ja.ChevronRight,{style:{width:"var(--inkblot-spacing-4)",height:"var(--inkblot-spacing-4)"}})]}):(0,$e.jsxs)("button",{type:"button","aria-current":t.active?"page":void 0,disabled:t.disabled,className:i,onClick:()=>e?.(),children:[t.icon,t.label,t.active?null:(0,$e.jsx)(ja.ChevronRight,{style:{width:"var(--inkblot-spacing-4)",height:"var(--inkblot-spacing-4)"}})]})}var ro=require("react"),Z=require("lucide-react");var A=require("react/jsx-runtime"),Ec=[{id:"company",question:"What's your company name?",subtitle:"We'll personalize your workspace around your brand.",icon:Z.Building2,type:"input",field:"companyName",placeholder:"e.g. Acme Corporation"},{id:"size",question:"How many employees does your company have?",subtitle:"This helps us tailor the right features for your team size.",icon:Z.Users,type:"select",field:"companySize",options:[{value:"1-10",label:"1-10"},{value:"11-50",label:"11-50"},{value:"51-200",label:"51-200"},{value:"201-1000",label:"201-1,000"},{value:"1000+",label:"1,000+"}]},{id:"industry",question:"What industry are you in?",subtitle:"We'll pre-configure pipelines and templates for your sector.",icon:Z.Briefcase,type:"select",field:"industry",options:[{value:"saas",label:"SaaS / Software"},{value:"agency",label:"Agency / Consulting"},{value:"ecommerce",label:"E-Commerce"},{value:"fintech",label:"Fintech"},{value:"healthcare",label:"Healthcare"},{value:"other",label:"Other"}]},{id:"role",question:"What's your role?",subtitle:"So we can surface the most relevant modules first.",icon:Z.Target,type:"select",field:"role",options:[{value:"founder",label:"Founder / CEO"},{value:"sales",label:"Sales Leader"},{value:"marketing",label:"Marketing"},{value:"ops",label:"Operations"},{value:"other",label:"Other"}]},{id:"goals",question:"What do you want to achieve?",subtitle:"Select all that apply. We'll prioritize these in your dashboard.",icon:Z.Target,type:"multi-select",field:"goals",options:[{value:"pipeline",label:"Manage Sales Pipeline"},{value:"contacts",label:"Organize Contacts"},{value:"email",label:"Email Campaigns"},{value:"invoicing",label:"Invoicing"},{value:"reporting",label:"Analytics & Reporting"},{value:"automation",label:"Workflow Automation"}]},{id:"source",question:"How did you hear about us?",subtitle:"Helps us improve our outreach.",icon:Z.Megaphone,type:"select",field:"source",options:[{value:"google",label:"Google Search"},{value:"social",label:"Social Media"},{value:"referral",label:"Friend / Colleague"},{value:"event",label:"Conference / Event"},{value:"other",label:"Other"}]},{id:"website",question:"What's your company website?",subtitle:"Optional, we'll try to auto-import your branding.",icon:Z.Globe,type:"input",field:"website",placeholder:"e.g. https://acme.com"}];function Ic({onComplete:t,steps:e=Ec,value:r,defaultValue:a,onValueChange:i,stepIndex:n,defaultStepIndex:s=0,onStepIndexChange:l,onCancel:c,showSkip:d=!0,className:m}){let[p,b]=(0,ro.useState)(s),[u,f]=(0,ro.useState)(a??{}),C=n!==void 0,x=r!==void 0,g=C?n:p,S=x?r:u,N=e[g],y=S[N.field]??(N.type==="multi-select"?[]:""),k=g===e.length-1,v=(0,ro.useMemo)(()=>N.type==="multi-select"?y.length>0:N.id==="website"?!0:typeof y=="string"&&y.trim().length>0,[y,N.id,N.type]),h=B=>{let K=Math.min(Math.max(B,0),Math.max(e.length-1,0));C||b(K),l?.(K)},P=B=>{x||f(B),i?.(B)},E=()=>h(g-1),O=()=>{if(k){t(S);return}h(g+1)},R=(B,K)=>{P({...S,[B]:K})},q=(B,K)=>{let F=S[B]??[],J=F.includes(K)?F.filter(w=>w!==K):[...F,K];R(B,J)};return(0,A.jsxs)("section",{className:o("fixed inset-0 z-[100] flex items-center justify-center bg-[var(--inkblot-semantic-color-background-primary)]",m),children:[(0,A.jsxs)("div",{className:"absolute inset-0 overflow-hidden",children:[(0,A.jsx)("div",{className:"absolute left-1/4 top-1/4 h-96 w-96 rounded-full bg-[var(--inkblot-semantic-color-interactive-primary)]/5 blur-[120px]"}),(0,A.jsx)("div",{className:"absolute bottom-1/4 right-1/4 h-96 w-96 rounded-full bg-[var(--inkblot-semantic-color-status-warning)]/5 blur-[120px]"})]}),(0,A.jsxs)("div",{className:"relative w-full max-w-lg px-6",children:[(0,A.jsxs)("header",{className:"mb-12 flex items-center justify-center gap-2",children:[(0,A.jsx)("span",{className:"flex h-10 w-10 items-center justify-center rounded-[var(--inkblot-radius-lg)] bg-[var(--inkblot-semantic-color-interactive-primary)]",children:(0,A.jsx)(Z.Command,{className:"h-5 w-5 text-[var(--inkblot-semantic-color-text-inverse)]"})}),(0,A.jsx)("span",{className:"text-lg font-semibold tracking-tight text-[var(--inkblot-semantic-color-text-primary)]",children:"Citron OS"})]}),(0,A.jsx)("div",{className:"mb-10 flex gap-1",children:e.map((B,K)=>(0,A.jsx)("span",{className:o("h-0.5 flex-1 rounded-full",K<g?"bg-[var(--inkblot-semantic-color-interactive-primary)]":K===g?"bg-[var(--inkblot-semantic-color-interactive-primary)]/60":"bg-[var(--inkblot-semantic-color-background-tertiary)]")},B.id))}),(0,A.jsxs)("div",{className:"space-y-6",children:[(0,A.jsxs)("div",{children:[(0,A.jsx)("div",{className:"mb-4 flex h-10 w-10 items-center justify-center rounded-[var(--inkblot-radius-lg)] bg-[var(--inkblot-semantic-color-interactive-secondary)]",children:(0,A.jsx)(N.icon,{className:"h-5 w-5 text-[var(--inkblot-semantic-color-text-primary)]"})}),(0,A.jsx)("h2",{className:"text-xl font-semibold tracking-tight text-[var(--inkblot-semantic-color-text-primary)]",children:N.question}),(0,A.jsx)("p",{className:"mt-1 text-sm text-[var(--inkblot-semantic-color-text-tertiary)]",children:N.subtitle})]}),N.type==="input"?(0,A.jsx)("input",{autoFocus:!0,value:y||"",onChange:B=>R(N.field,B.target.value),placeholder:N.placeholder,onKeyDown:B=>{B.key==="Enter"&&v&&O()},className:"w-full rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] px-5 py-3.5 text-sm text-[var(--inkblot-semantic-color-text-primary)] placeholder:text-[var(--inkblot-semantic-color-text-tertiary)] outline-none"}):null,N.type==="select"?(0,A.jsx)("div",{className:"grid grid-cols-2 gap-2",children:N.options?.map(B=>(0,A.jsx)("button",{type:"button",onClick:()=>R(N.field,B.value),className:o("rounded-[var(--inkblot-radius-lg)] border px-4 py-3 text-left text-sm transition-colors duration-[var(--inkblot-duration-fast)]",y===B.value?"border-[var(--inkblot-semantic-color-interactive-primary)] bg-[var(--inkblot-semantic-color-interactive-primary)]/10 text-[var(--inkblot-semantic-color-text-primary)]":"border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] text-[var(--inkblot-semantic-color-text-tertiary)] hover:bg-[var(--inkblot-semantic-color-background-tertiary)]"),children:B.label},B.value))}):null,N.type==="multi-select"?(0,A.jsx)("div",{className:"grid grid-cols-2 gap-2",children:N.options?.map(B=>{let K=y.includes(B.value);return(0,A.jsxs)("button",{type:"button",onClick:()=>q(N.field,B.value),className:o("flex items-center gap-2 rounded-[var(--inkblot-radius-lg)] border px-4 py-3 text-left text-sm transition-colors duration-[var(--inkblot-duration-fast)]",K?"border-[var(--inkblot-semantic-color-interactive-primary)] bg-[var(--inkblot-semantic-color-interactive-primary)]/10 text-[var(--inkblot-semantic-color-text-primary)]":"border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] text-[var(--inkblot-semantic-color-text-tertiary)] hover:bg-[var(--inkblot-semantic-color-background-tertiary)]"),children:[(0,A.jsx)("span",{className:o("flex h-4 w-4 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-sm)] border",K?"border-[var(--inkblot-semantic-color-interactive-primary)] bg-[var(--inkblot-semantic-color-interactive-primary)]":"border-[var(--inkblot-semantic-color-border-default)]"),children:K?(0,A.jsx)(Z.Check,{className:"h-2.5 w-2.5 text-[var(--inkblot-semantic-color-text-inverse)]"}):null}),B.label]},B.value)})}):null]}),(0,A.jsxs)("footer",{className:"mt-10 flex items-center justify-between",children:[(0,A.jsxs)("button",{type:"button",onClick:E,disabled:g===0,className:"flex items-center gap-1.5 rounded-[var(--inkblot-radius-md)] px-4 py-2 text-xs text-[var(--inkblot-semantic-color-text-tertiary)] transition-opacity duration-[var(--inkblot-duration-fast)] disabled:opacity-0",children:[(0,A.jsx)(Z.ArrowLeft,{className:"h-3 w-3"}),"Back"]}),(0,A.jsxs)("div",{className:"flex items-center gap-3",children:[!k&&d?(0,A.jsx)("button",{type:"button",onClick:c??O,className:"text-xs text-[var(--inkblot-semantic-color-text-tertiary)]",children:"Skip"}):null,(0,A.jsx)("button",{type:"button",onClick:O,disabled:!v,className:"flex items-center gap-2 rounded-[var(--inkblot-radius-lg)] bg-[var(--inkblot-semantic-color-interactive-primary)] px-5 py-2.5 text-xs font-medium text-[var(--inkblot-semantic-color-text-inverse)] transition-opacity duration-[var(--inkblot-duration-fast)] disabled:opacity-40",children:k?(0,A.jsxs)(A.Fragment,{children:[(0,A.jsx)(Z.Sparkles,{className:"h-3 w-3"}),"Launch Citron OS"]}):(0,A.jsxs)(A.Fragment,{children:["Continue",(0,A.jsx)(Z.ArrowRight,{className:"h-3 w-3"})]})})]})]})]})]})}var Bo=require("lucide-react");var qe=require("react/jsx-runtime");function Ls({page:t,totalPages:e,onPageChange:r,className:a}){let i=Array.from({length:e},(n,s)=>s+1);return(0,qe.jsxs)("nav",{"aria-label":"Pagination",className:o("flex items-center gap-[var(--inkblot-spacing-2)]",a),children:[(0,qe.jsx)("button",{type:"button","aria-label":"Previous page",disabled:t<=1,onClick:()=>r(Math.max(t-1,1)),className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] px-[var(--inkblot-spacing-3)]","bg-[var(--inkblot-semantic-color-interactive-secondary)] text-[var(--inkblot-semantic-color-text-primary)]","hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] disabled:opacity-[var(--inkblot-opacity-disabled)] disabled:pointer-events-none"),children:(0,qe.jsx)(Bo.ChevronLeft,{style:{width:"var(--inkblot-spacing-4)",height:"var(--inkblot-spacing-4)"}})}),i.map(n=>{let s=n===t;return(0,qe.jsx)("button",{type:"button",onClick:()=>r(n),"aria-current":s?"page":void 0,className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] min-w-[var(--inkblot-size-touch-target-min)] items-center justify-center rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-3)]","[font:var(--inkblot-semantic-typography-body-medium)]",s?"bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]":"bg-[var(--inkblot-semantic-color-interactive-secondary)] text-[var(--inkblot-semantic-color-text-primary)] hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)]"),children:n},`page-${n}`)}),(0,qe.jsx)("button",{type:"button","aria-label":"Next page",disabled:t>=e,onClick:()=>r(Math.min(t+1,e)),className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] px-[var(--inkblot-spacing-3)]","bg-[var(--inkblot-semantic-color-interactive-secondary)] text-[var(--inkblot-semantic-color-text-primary)]","hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] disabled:opacity-[var(--inkblot-opacity-disabled)] disabled:pointer-events-none"),children:(0,qe.jsx)(Bo.ChevronRight,{style:{width:"var(--inkblot-spacing-4)",height:"var(--inkblot-spacing-4)"}})})]})}var mt=require("react");var hr=require("react/jsx-runtime"),As=(0,mt.createContext)(null);function $a(){let t=(0,mt.useContext)(As);if(!t)throw new Error("Popover components must be used within Popover");return t}function Ds({children:t,open:e,defaultOpen:r=!1,onOpenChange:a}){let[i,n]=(0,mt.useState)(r),s=(0,mt.useRef)(null),l=e!==void 0,c=l?e:i,d=(0,mt.useCallback)(p=>{l||n(p),a?.(p)},[l,a]);(0,mt.useEffect)(()=>{if(!c)return;let p=u=>{let f=u.target;f&&s.current&&!s.current.contains(f)&&d(!1)},b=u=>{u.key==="Escape"&&d(!1)};return window.addEventListener("pointerdown",p),window.addEventListener("keydown",b),()=>{window.removeEventListener("pointerdown",p),window.removeEventListener("keydown",b)}},[c,d]);let m=(0,mt.useMemo)(()=>({open:c,setOpen:d,containerRef:s}),[c,d]);return(0,hr.jsx)(As.Provider,{value:m,children:(0,hr.jsx)("div",{ref:s,className:"relative inline-flex",children:t})})}var qa=(0,mt.forwardRef)(({className:t,type:e="button",onClick:r,...a},i)=>{let{open:n,setOpen:s}=$a();return(0,hr.jsx)("button",{ref:i,type:e,"aria-haspopup":"dialog","aria-expanded":n,onClick:l=>{r?.(l),l.defaultPrevented||s(!n)},className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-interactive-secondary)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)] text-[var(--inkblot-semantic-color-text-primary)]","hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)]","[font:var(--inkblot-semantic-typography-body-medium)]",t),...a})});qa.displayName="PopoverTrigger";var Ya=(0,mt.forwardRef)(({className:t,...e},r)=>{let{open:a}=$a();return a?(0,hr.jsx)("div",{ref:r,role:"dialog",className:o("absolute left-0 top-[calc(100%+var(--inkblot-spacing-2))] z-40 min-w-[calc(var(--inkblot-size-touch-target-min)*4)] rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)]","bg-[var(--inkblot-semantic-color-background-primary)] p-[var(--inkblot-spacing-4)] shadow-[var(--inkblot-shadow-md)]",t),...e}):null});Ya.displayName="PopoverContent";var Xa=(0,mt.forwardRef)(({className:t,type:e="button",onClick:r,...a},i)=>{let{setOpen:n}=$a();return(0,hr.jsx)("button",{ref:i,type:e,onClick:s=>{r?.(s),s.defaultPrevented||n(!1)},className:o("inline-flex min-h-[var(--inkblot-size-touch-target-min)] items-center justify-center rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-2)]","bg-[var(--inkblot-semantic-color-interactive-secondary)] text-[var(--inkblot-semantic-color-text-primary)]",t),...a})});Xa.displayName="PopoverClose";var Rs=require("react");var Nr=require("react/jsx-runtime"),Za=(0,Rs.forwardRef)(({className:t,value:e,max:r=100,showValueLabel:a=!1,...i},n)=>{let s=Math.max(0,Math.min(e/r,1)),l=`${Math.round(s*100)}%`;return(0,Nr.jsxs)("div",{ref:n,className:o("grid gap-[var(--inkblot-spacing-2)]",t),...i,children:[(0,Nr.jsx)("div",{className:"h-[var(--inkblot-spacing-2)] overflow-hidden rounded-[var(--inkblot-radius-full)] bg-[var(--inkblot-semantic-color-background-secondary)]",children:(0,Nr.jsx)("div",{className:"h-full rounded-[var(--inkblot-radius-full)] bg-[var(--inkblot-semantic-color-interactive-primary)] transition-[width] duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)]",style:{width:l}})}),a?(0,Nr.jsx)("p",{className:"text-[var(--inkblot-semantic-color-text-secondary)] [font:var(--inkblot-semantic-typography-body-small)]",children:l}):null]})});Za.displayName="Progress";var oo=require("react");var Te=require("react/jsx-runtime"),Qa=(0,oo.forwardRef)(({className:t,options:e,value:r,defaultValue:a,onValueChange:i,name:n="radio-group",...s},l)=>{let[c,d]=(0,oo.useState)(a??""),m=r!==void 0,p=m?r:c,b=u=>{m||d(u),i?.(u)};return(0,Te.jsx)("div",{ref:l,role:"radiogroup",className:o("grid gap-[var(--inkblot-spacing-2)]",t),...s,children:e.map(u=>(0,Te.jsxs)("label",{className:o("flex cursor-pointer items-start gap-[var(--inkblot-spacing-3)] rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] p-[var(--inkblot-spacing-3)]","bg-[var(--inkblot-semantic-color-background-primary)] hover:bg-[var(--inkblot-semantic-color-background-secondary)]",u.disabled&&"pointer-events-none opacity-[var(--inkblot-opacity-disabled)]"),children:[(0,Te.jsx)(zo,{type:"radio",name:n,value:u.value,checked:p===u.value,disabled:u.disabled,onChange:()=>b(u.value)}),(0,Te.jsxs)("span",{className:"grid gap-[var(--inkblot-spacing-1)]",children:[(0,Te.jsx)("span",{className:"text-[var(--inkblot-semantic-color-text-primary)] [font:var(--inkblot-semantic-typography-body-medium)]",children:u.label}),u.description?(0,Te.jsx)("span",{className:"text-[var(--inkblot-semantic-color-text-secondary)] [font:var(--inkblot-semantic-typography-body-small)]",children:u.description}):null]})]},u.value))})});Qa.displayName="RadioGroup";var zo=(0,oo.forwardRef)(({className:t,...e},r)=>(0,Te.jsx)("input",{ref:r,className:o("mt-[var(--inkblot-spacing-1)] h-[var(--inkblot-spacing-4)] w-[var(--inkblot-spacing-4)] border-[var(--inkblot-semantic-color-border-default)] text-[var(--inkblot-semantic-color-interactive-primary)]",t),...e}));zo.displayName="RadioGroupItem";var Oo=require("react"),Fo=require("lucide-react");var Pe=require("react/jsx-runtime");function Hs({primary:t,secondary:e,direction:r="horizontal",defaultPrimarySize:a=50,minPrimarySize:i=20,minSecondarySize:n=20,className:s}){let[l,c]=(0,Oo.useState)(a),d=r==="horizontal",m=(0,Oo.useMemo)(()=>d?{gridTemplateColumns:`${l}fr auto ${100-l}fr`}:{gridTemplateRows:`${l}fr auto ${100-l}fr`},[d,l]),p=(b,u)=>{let f=u.getBoundingClientRect(),C=d?(b.x-f.left)/f.width*100:(b.y-f.top)/f.height*100,x=100-n,g=Math.min(x,Math.max(i,C));c(g)};return(0,Pe.jsxs)("div",{className:o("grid h-full w-full overflow-hidden rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)]",s),style:m,children:[(0,Pe.jsx)("div",{className:"min-h-0 min-w-0 overflow-auto p-[var(--inkblot-spacing-3)]",children:t}),(0,Pe.jsx)("div",{className:o(d?"w-[var(--inkblot-spacing-2)]":"h-[var(--inkblot-spacing-2)]","bg-[var(--inkblot-semantic-color-border-default)]"),children:(0,Pe.jsx)("button",{type:"button","aria-label":"Resize panels",className:o("flex h-full w-full items-center justify-center bg-[var(--inkblot-semantic-color-background-secondary)] text-[var(--inkblot-semantic-color-text-secondary)]","hover:bg-[var(--inkblot-semantic-color-background-tertiary)] active:bg-[var(--inkblot-semantic-color-background-secondary)]"),onPointerDown:b=>{let u=b.currentTarget.closest("div")?.parentElement;if(!u)return;p({x:b.clientX,y:b.clientY},u);let f=x=>{p({x:x.clientX,y:x.clientY},u)},C=()=>{window.removeEventListener("pointermove",f),window.removeEventListener("pointerup",C)};window.addEventListener("pointermove",f),window.addEventListener("pointerup",C)},children:d?(0,Pe.jsx)(Fo.GripVertical,{style:{width:"var(--inkblot-spacing-4)",height:"var(--inkblot-spacing-4)"}}):(0,Pe.jsx)(Fo.GripHorizontal,{style:{width:"var(--inkblot-spacing-4)",height:"var(--inkblot-spacing-4)"}})})}),(0,Pe.jsx)("div",{className:"min-h-0 min-w-0 overflow-auto p-[var(--inkblot-spacing-3)]",children:e})]})}var Bs=require("react");var zs=require("react/jsx-runtime"),Ja=(0,Bs.forwardRef)(({className:t,maxHeight:e="var(--inkblot-size-touch-target-min)",...r},a)=>(0,zs.jsx)("div",{ref:a,className:o("overflow-auto rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-primary)] p-[var(--inkblot-spacing-3)]",t),style:{maxHeight:e,...r.style},...r}));Ja.displayName="ScrollArea";var Os=require("lucide-react"),Fs=require("react");var dr=require("react/jsx-runtime"),tn=(0,Fs.forwardRef)(({className:t,options:e,placeholder:r,error:a,disabled:i,...n},s)=>(0,dr.jsxs)("div",{className:"relative w-full",children:[(0,dr.jsxs)("select",{ref:s,disabled:i,"aria-invalid":a,className:o("min-h-[var(--inkblot-size-touch-target-min)] w-full appearance-none rounded-[var(--inkblot-radius-md)] border bg-[var(--inkblot-semantic-color-background-secondary)] px-4 py-2 pr-10 text-[var(--inkblot-semantic-color-text-primary)] transition-[border-color,box-shadow] duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--inkblot-semantic-color-border-focus)] focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-[var(--inkblot-opacity-disabled)]",a?"border-[var(--inkblot-semantic-color-status-error)] focus-visible:ring-[var(--inkblot-semantic-color-status-error)]":"border-[var(--inkblot-semantic-color-border-default)] hover:border-[var(--inkblot-semantic-color-border-strong)]",t),...n,children:[r?(0,dr.jsx)("option",{value:"",disabled:!0,children:r}):null,e.map(l=>(0,dr.jsx)("option",{value:l.value,disabled:l.disabled,children:l.label},l.value))]}),(0,dr.jsx)(Os.ChevronDown,{"aria-hidden":!0,className:"pointer-events-none absolute right-3 top-1/2 size-4 -translate-y-1/2 text-[var(--inkblot-semantic-color-text-tertiary)]"})]}));tn.displayName="Select";var Vs=require("react");var Gs=require("react/jsx-runtime"),en=(0,Vs.forwardRef)(({className:t,orientation:e="horizontal",decorative:r=!0,...a},i)=>(0,Gs.jsx)("div",{ref:i,role:r?"none":"separator","aria-orientation":e,className:o("shrink-0 bg-[var(--inkblot-semantic-color-border-default)]",e==="horizontal"?"h-px w-full":"h-full w-px",t),...a}));en.displayName="Separator";var Ws=require("lucide-react"),Ks=require("react");var Xt=require("react/jsx-runtime"),Lc={top:"inset-x-0 top-0 border-b rounded-b-[var(--inkblot-radius-lg)]",right:"inset-y-0 right-0 h-full w-full max-w-[420px] border-l",bottom:"inset-x-0 bottom-0 border-t rounded-t-[var(--inkblot-radius-lg)]",left:"inset-y-0 left-0 h-full w-full max-w-[420px] border-r"};function Us({open:t,onOpenChange:e,side:r="right",title:a,description:i,showCloseButton:n=!0,className:s,overlayClassName:l,children:c,...d}){return(0,Ks.useEffect)(()=>{if(!t)return;let m=p=>{p.key==="Escape"&&e?.(!1)};return window.addEventListener("keydown",m),()=>window.removeEventListener("keydown",m)},[t,e]),t?(0,Xt.jsxs)("div",{className:"fixed inset-0 z-50",children:[(0,Xt.jsx)("button",{type:"button","aria-label":"Close panel",onClick:()=>e?.(!1),className:o("absolute inset-0 bg-[var(--inkblot-semantic-color-background-primary)]/70",l)}),(0,Xt.jsxs)("section",{role:"dialog","aria-modal":"true",className:o("absolute bg-[var(--inkblot-semantic-color-background-secondary)] p-5 text-[var(--inkblot-semantic-color-text-primary)] shadow-lg border-[var(--inkblot-semantic-color-border-default)]",Lc[r],s),...d,children:[(a||i||n)&&(0,Xt.jsxs)("header",{className:"mb-4 flex items-start justify-between gap-4",children:[(0,Xt.jsxs)("div",{children:[a?(0,Xt.jsx)("h3",{className:"text-base font-semibold",children:a}):null,i?(0,Xt.jsx)("p",{className:"mt-1 text-sm text-[var(--inkblot-semantic-color-text-secondary)]",children:i}):null]}),n?(0,Xt.jsx)("button",{type:"button","aria-label":"Close",onClick:()=>e?.(!1),className:"inline-flex size-9 items-center justify-center rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] text-[var(--inkblot-semantic-color-text-secondary)] transition-colors hover:text-[var(--inkblot-semantic-color-text-primary)]",children:(0,Xt.jsx)(Ws.X,{className:"size-4"})}):null]}),(0,Xt.jsx)("div",{children:c})]})]}):null}var Vo=require("lucide-react");var vt=require("react/jsx-runtime");function _s({items:t,collapsed:e=!1,onCollapsedChange:r,header:a,footer:i,className:n,...s}){return(0,vt.jsxs)("aside",{className:o("flex h-full flex-col border-r border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-3 transition-[width] duration-[var(--inkblot-duration-fast)]",e?"w-[76px]":"w-[260px]",n),...s,children:[(0,vt.jsxs)("div",{className:"mb-3 flex items-center justify-between gap-2",children:[(0,vt.jsx)("div",{className:o("truncate text-sm font-semibold",e&&"sr-only"),children:a}),(0,vt.jsx)("button",{type:"button","aria-label":e?"Expandir sidebar":"Colapsar sidebar",onClick:()=>r?.(!e),className:"inline-flex size-9 items-center justify-center rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] text-[var(--inkblot-semantic-color-text-secondary)] hover:text-[var(--inkblot-semantic-color-text-primary)]",children:e?(0,vt.jsx)(Vo.PanelLeftOpen,{className:"size-4"}):(0,vt.jsx)(Vo.PanelLeftClose,{className:"size-4"})})]}),(0,vt.jsx)("nav",{className:"flex flex-1 flex-col gap-1",children:t.map(l=>{let c=l.icon;return(0,vt.jsxs)("button",{type:"button",disabled:l.disabled,onClick:l.onClick,className:o("flex min-h-[var(--inkblot-size-touch-target-min)] items-center gap-3 rounded-[var(--inkblot-radius-md)] px-3 py-2 text-sm transition-colors",l.active?"bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]":"text-[var(--inkblot-semantic-color-text-secondary)] hover:bg-[var(--inkblot-semantic-color-background-tertiary)] hover:text-[var(--inkblot-semantic-color-text-primary)]",l.disabled&&"cursor-not-allowed opacity-[var(--inkblot-opacity-disabled)]"),children:[c?(0,vt.jsx)(c,{className:"size-4 shrink-0"}):null,e?null:(0,vt.jsxs)(vt.Fragment,{children:[(0,vt.jsx)("span",{className:"truncate",children:l.label}),l.badge?(0,vt.jsx)("span",{className:"ml-auto",children:l.badge}):null]})]},l.id)})}),i?(0,vt.jsx)("div",{className:o("mt-3 border-t border-[var(--inkblot-semantic-color-border-default)] pt-3",e&&"sr-only"),children:i}):null]})}var Go=require("react");var Ye=require("react/jsx-runtime"),rn=(0,Go.forwardRef)(({className:t,value:e,defaultValue:r,min:a=0,max:i=100,step:n=1,disabled:s,showValue:l=!0,onValueChange:c,...d},m)=>{let p=e??r??a,b=(0,Go.useMemo)(()=>i<=a?0:(p-a)/(i-a)*100,[p,a,i]);return(0,Ye.jsxs)("div",{className:o("w-full",t),children:[(0,Ye.jsxs)("div",{className:"mb-2 flex items-center justify-between text-sm",children:[(0,Ye.jsx)("span",{className:"text-[var(--inkblot-semantic-color-text-secondary)]",children:a}),l?(0,Ye.jsx)("span",{className:"font-medium text-[var(--inkblot-semantic-color-text-primary)]",children:p}):null,(0,Ye.jsx)("span",{className:"text-[var(--inkblot-semantic-color-text-secondary)]",children:i})]}),(0,Ye.jsx)("input",{ref:m,type:"range",value:e,defaultValue:r,min:a,max:i,step:n,disabled:s,onChange:u=>c?.(Number(u.target.value)),className:"h-2 w-full cursor-pointer appearance-none rounded-full bg-[var(--inkblot-semantic-color-background-tertiary)] disabled:cursor-not-allowed disabled:opacity-[var(--inkblot-opacity-disabled)] [&::-webkit-slider-runnable-track]:h-2 [&::-webkit-slider-runnable-track]:rounded-full [&::-webkit-slider-runnable-track]:bg-transparent [&::-webkit-slider-thumb]:mt-[-4px] [&::-webkit-slider-thumb]:size-4 [&::-webkit-slider-thumb]:appearance-none [&::-webkit-slider-thumb]:rounded-full [&::-webkit-slider-thumb]:border [&::-webkit-slider-thumb]:border-[var(--inkblot-semantic-color-border-default)] [&::-webkit-slider-thumb]:bg-[var(--inkblot-semantic-color-background-secondary)] [&::-webkit-slider-thumb]:shadow-sm [&::-moz-range-track]:h-2 [&::-moz-range-track]:rounded-full [&::-moz-range-track]:bg-transparent [&::-moz-range-thumb]:size-4 [&::-moz-range-thumb]:rounded-full [&::-moz-range-thumb]:border [&::-moz-range-thumb]:border-[var(--inkblot-semantic-color-border-default)] [&::-moz-range-thumb]:bg-[var(--inkblot-semantic-color-background-secondary)]",style:{background:`linear-gradient(to right, var(--inkblot-semantic-color-interactive-primary) 0%, var(--inkblot-semantic-color-interactive-primary) ${b}%, var(--inkblot-semantic-color-background-tertiary) ${b}%, var(--inkblot-semantic-color-background-tertiary) 100%)`},...d})]})});rn.displayName="Slider";var js=require("react");var pe=require("lucide-react");var wt=require("react/jsx-runtime"),Ac={info:"border-[var(--inkblot-semantic-color-status-info)]",success:"border-[var(--inkblot-semantic-color-status-success)]",warning:"border-[var(--inkblot-semantic-color-status-warning)]",error:"border-[var(--inkblot-semantic-color-status-error)]"},Dc={info:(0,wt.jsx)(pe.Info,{className:"size-4"}),success:(0,wt.jsx)(pe.CheckCircle2,{className:"size-4"}),warning:(0,wt.jsx)(pe.AlertTriangle,{className:"size-4"}),error:(0,wt.jsx)(pe.CircleX,{className:"size-4"})};function Wo({title:t,description:e,variant:r="info",action:a,onClose:i,className:n,...s}){return(0,wt.jsx)("div",{role:"status",className:o("w-full rounded-[var(--inkblot-radius-lg)] border-l-4 border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-3 text-[var(--inkblot-semantic-color-text-primary)] shadow-sm",Ac[r],n),...s,children:(0,wt.jsxs)("div",{className:"flex items-start gap-3",children:[(0,wt.jsx)("span",{className:"mt-0.5 text-[var(--inkblot-semantic-color-text-secondary)]",children:Dc[r]}),(0,wt.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,wt.jsx)("p",{className:"text-sm font-semibold",children:t}),e?(0,wt.jsx)("p",{className:"mt-1 text-sm text-[var(--inkblot-semantic-color-text-secondary)]",children:e}):null,a?(0,wt.jsx)("button",{type:"button",...a,className:o("mt-2 rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] px-2 py-1 text-xs font-medium text-[var(--inkblot-semantic-color-text-primary)] hover:bg-[var(--inkblot-semantic-color-background-tertiary)]",a.className),children:a.label}):null]}),i?(0,wt.jsx)("button",{type:"button","aria-label":"Close notification",onClick:i,className:"inline-flex size-8 items-center justify-center rounded-[var(--inkblot-radius-md)] text-[var(--inkblot-semantic-color-text-tertiary)] hover:text-[var(--inkblot-semantic-color-text-primary)]",children:(0,wt.jsx)(pe.X,{className:"size-4"})}):null]})})}var on=require("react/jsx-runtime"),Rc={"top-left":"top-4 left-4","top-right":"top-4 right-4","bottom-left":"bottom-4 left-4","bottom-right":"bottom-4 right-4"};function Ko({toasts:t,position:e="bottom-right",onDismiss:r,className:a,...i}){return(0,on.jsx)("div",{className:o("fixed z-50 flex w-full max-w-[360px] flex-col gap-2",Rc[e],a),...i,children:t.map(n=>(0,on.jsx)(Wo,{...n,onClose:()=>r?.(n.id)},n.id))})}var qs=require("react/jsx-runtime");function $s({toasts:t,maxVisible:e=3,position:r="bottom-right",onDismiss:a,...i}){let n=(0,js.useMemo)(()=>t.slice(0,e),[t,e]);return(0,qs.jsx)(Ko,{toasts:n,position:r,onDismiss:a,...i})}var Uo=require("react");var an=require("react/jsx-runtime"),nn=(0,Uo.forwardRef)(({checked:t,defaultChecked:e=!1,onCheckedChange:r,disabled:a,className:i,...n},s)=>{let[l,c]=(0,Uo.useState)(e),d=t??l;return(0,an.jsx)("button",{ref:s,type:"button",role:"switch","aria-checked":d,disabled:a,onClick:()=>{if(a)return;let p=!d;t===void 0&&c(p),r?.(p)},className:o("relative inline-flex h-7 w-12 items-center rounded-full border transition-colors duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--inkblot-semantic-color-border-focus)] focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-[var(--inkblot-opacity-disabled)]",d?"border-[var(--inkblot-semantic-color-interactive-primary)] bg-[var(--inkblot-semantic-color-interactive-primary)]":"border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-tertiary)]",i),...n,children:(0,an.jsx)("span",{className:o("inline-block size-5 rounded-full bg-[var(--inkblot-semantic-color-background-secondary)] transition-transform duration-[var(--inkblot-duration-fast)]",d?"translate-x-6":"translate-x-1")})})});nn.displayName="Switch";var Se=require("react"),wr=require("lucide-react");var st=require("react/jsx-runtime"),sn=(0,Se.forwardRef)(({className:t,...e},r)=>(0,st.jsx)("div",{className:"w-full overflow-x-auto rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)]",children:(0,st.jsx)("table",{ref:r,className:o("w-full border-collapse bg-[var(--inkblot-semantic-color-background-secondary)]",t),...e})})),ln=(0,Se.forwardRef)(({className:t,...e},r)=>(0,st.jsx)("thead",{ref:r,className:o("bg-[var(--inkblot-semantic-color-background-tertiary)]",t),...e})),cn=(0,Se.forwardRef)(({className:t,...e},r)=>(0,st.jsx)("tbody",{ref:r,className:o(t),...e})),dn=(0,Se.forwardRef)(({className:t,...e},r)=>(0,st.jsx)("tr",{ref:r,className:o("border-b border-[var(--inkblot-semantic-color-border-default)] text-[var(--inkblot-semantic-color-text-primary)] transition-colors hover:bg-[var(--inkblot-semantic-color-background-tertiary)]",t),...e})),mn=(0,Se.forwardRef)(({className:t,children:e,sortable:r=!1,sortDirection:a,onSort:i,sortButtonProps:n,...s},l)=>(0,st.jsx)("th",{ref:l,className:o("px-4 py-3 text-left text-sm font-semibold text-[var(--inkblot-semantic-color-text-secondary)]",t),...s,children:r?(0,st.jsxs)("button",{type:"button",onClick:i,className:"inline-flex items-center gap-[var(--inkblot-spacing-1)] rounded-[var(--inkblot-radius-sm)] text-inherit transition-colors duration-[var(--inkblot-duration-fast)] hover:text-[var(--inkblot-semantic-color-text-primary)]",...n,children:[e,a==="asc"?(0,st.jsx)(wr.ArrowUp,{className:"h-3.5 w-3.5","aria-hidden":!0}):a==="desc"?(0,st.jsx)(wr.ArrowDown,{className:"h-3.5 w-3.5","aria-hidden":!0}):(0,st.jsx)(wr.ArrowUpDown,{className:"h-3.5 w-3.5","aria-hidden":!0})]}):e})),pn=(0,Se.forwardRef)(({className:t,...e},r)=>(0,st.jsx)("td",{ref:r,className:o("px-4 py-3 text-sm",t),...e})),bn=(0,Se.forwardRef)(({className:t,...e},r)=>(0,st.jsx)("caption",{ref:r,className:o("p-3 text-left text-sm text-[var(--inkblot-semantic-color-text-tertiary)]",t),...e})),un=(0,Se.forwardRef)(({className:t,colSpan:e,title:r="No data available",description:a="Adjust filters or add records to populate this table.",...i},n)=>(0,st.jsx)("tr",{children:(0,st.jsx)("td",{ref:n,colSpan:e,className:o("px-4 py-10 text-center align-middle","text-[var(--inkblot-semantic-color-text-secondary)]",t),...i,children:(0,st.jsxs)("div",{className:"mx-auto flex max-w-[420px] flex-col gap-[var(--inkblot-spacing-1)]",children:[(0,st.jsx)("span",{className:"[font:var(--inkblot-semantic-typography-body-large-bold)] text-[var(--inkblot-semantic-color-text-primary)]",children:r}),(0,st.jsx)("span",{className:"[font:var(--inkblot-semantic-typography-body-small)]",children:a})]})})}));sn.displayName="Table";ln.displayName="TableHeader";cn.displayName="TableBody";dn.displayName="TableRow";mn.displayName="TableHead";pn.displayName="TableCell";bn.displayName="TableCaption";un.displayName="TableEmptyState";var _o=require("react");var Cr=require("react/jsx-runtime");function Ys({items:t,value:e,defaultValue:r,onValueChange:a,fullWidth:i=!1,className:n,...s}){let l=r??t.find(u=>!u.disabled)?.id??"",[c,d]=(0,_o.useState)(l),m=e??c,p=(0,_o.useMemo)(()=>t.find(u=>u.id===m)??t.find(u=>!u.disabled),[m,t]),b=u=>{e===void 0&&d(u),a?.(u)};return(0,Cr.jsxs)("div",{className:o("w-full",n),...s,children:[(0,Cr.jsx)("div",{role:"tablist",className:"inline-flex rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-tertiary)] p-1",children:t.map(u=>{let f=u.id===p?.id;return(0,Cr.jsx)("button",{type:"button",role:"tab","aria-selected":f,disabled:u.disabled,onClick:()=>b(u.id),className:o("min-h-[var(--inkblot-size-touch-target-min)] rounded-[var(--inkblot-radius-md)] px-4 py-2 text-sm font-medium transition-colors disabled:cursor-not-allowed disabled:opacity-[var(--inkblot-opacity-disabled)]",i&&"flex-1",f?"bg-[var(--inkblot-semantic-color-background-secondary)] text-[var(--inkblot-semantic-color-text-primary)]":"text-[var(--inkblot-semantic-color-text-secondary)] hover:text-[var(--inkblot-semantic-color-text-primary)]"),children:u.label},u.id)})}),(0,Cr.jsx)("div",{className:"mt-3 rounded-[var(--inkblot-radius-lg)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] p-4 text-[var(--inkblot-semantic-color-text-primary)]",children:p?.content})]})}var Xs=require("react");var Zs=require("react/jsx-runtime"),Hc={none:"resize-none",vertical:"resize-y",horizontal:"resize-x",both:"resize"},vn=(0,Xs.forwardRef)(({className:t,error:e,disabled:r,resize:a="vertical",...i},n)=>(0,Zs.jsx)("textarea",{ref:n,disabled:r,"aria-invalid":e,className:o("min-h-[120px] w-full rounded-[var(--inkblot-radius-md)] border bg-[var(--inkblot-semantic-color-background-secondary)] px-4 py-3 text-[var(--inkblot-semantic-color-text-primary)] placeholder:text-[var(--inkblot-semantic-color-text-tertiary)] transition-[border-color,box-shadow] duration-[var(--inkblot-duration-fast)] ease-[var(--inkblot-easing-default)] focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--inkblot-semantic-color-border-focus)] focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-[var(--inkblot-opacity-disabled)]",Hc[a],e?"border-[var(--inkblot-semantic-color-status-error)] focus-visible:ring-[var(--inkblot-semantic-color-status-error)]":"border-[var(--inkblot-semantic-color-border-default)] hover:border-[var(--inkblot-semantic-color-border-strong)]",t),...i}));vn.displayName="Textarea";var Qs=require("react");var jo=require("react/jsx-runtime"),Bc={top:"bottom-full left-1/2 mb-2 -translate-x-1/2",right:"left-full top-1/2 ml-2 -translate-y-1/2",bottom:"left-1/2 top-full mt-2 -translate-x-1/2",left:"right-full top-1/2 mr-2 -translate-y-1/2"};function Js({content:t,side:e="top",open:r,defaultOpen:a=!1,onOpenChange:i,disabled:n=!1,className:s,children:l,...c}){let[d,m]=(0,Qs.useState)(a),p=r??d,b=u=>{r===void 0&&m(u),i?.(u)};return(0,jo.jsxs)("span",{className:o("relative inline-flex",s),onMouseEnter:()=>!n&&b(!0),onMouseLeave:()=>b(!1),onFocus:()=>!n&&b(!0),onBlur:()=>b(!1),...c,children:[l,p&&!n?(0,jo.jsx)("span",{role:"tooltip",className:o("pointer-events-none absolute z-50 rounded-[var(--inkblot-radius-md)] border border-[var(--inkblot-semantic-color-border-default)] bg-[var(--inkblot-semantic-color-background-secondary)] px-3 py-2 text-xs text-[var(--inkblot-semantic-color-text-primary)] shadow-sm",Bc[e]),children:t}):null]})}var tl=require("lucide-react");var At=require("react/jsx-runtime");function zc({item:t,onSelect:e,onGenerateWithAI:r}){return(0,At.jsxs)("div",{role:"button",tabIndex:0,onClick:()=>e?.(t),onKeyDown:a=>{(a.key==="Enter"||a.key===" ")&&(a.preventDefault(),e?.(t))},className:o("group mb-[var(--inkblot-spacing-4)] break-inside-avoid rounded-[var(--inkblot-radius-lg)]","bg-[var(--inkblot-semantic-color-background-secondary)] shadow-[var(--inkblot-shadow-sm)]","cursor-pointer transition-shadow duration-[var(--inkblot-duration-fast)]","hover:shadow-[var(--inkblot-shadow-md)]","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--inkblot-semantic-color-border-focus)]"),children:[t.thumbnail?(0,At.jsx)("img",{src:t.thumbnail,alt:t.title,className:"w-full rounded-t-[var(--inkblot-radius-lg)] object-cover"}):(0,At.jsx)("div",{className:"flex h-32 items-center justify-center rounded-t-[var(--inkblot-radius-lg)] bg-[var(--inkblot-semantic-color-background-tertiary)]",children:(0,At.jsx)("span",{className:"text-[var(--inkblot-semantic-color-text-tertiary)] [font:var(--inkblot-semantic-typography-body-small)]",children:"No preview"})}),(0,At.jsxs)("div",{className:"flex flex-col gap-[var(--inkblot-spacing-2)] p-[var(--inkblot-spacing-4)]",children:[t.category&&(0,At.jsx)("span",{className:o("inline-flex w-fit items-center rounded-[var(--inkblot-radius-sm)] px-[var(--inkblot-spacing-2)] py-[var(--inkblot-spacing-1)]","bg-[var(--inkblot-semantic-color-interactive-secondary)] text-[var(--inkblot-semantic-color-text-secondary)]","[font:var(--inkblot-semantic-typography-body-small)]"),children:t.category}),(0,At.jsx)("h3",{className:"text-[var(--inkblot-semantic-color-text-primary)] [font:var(--inkblot-semantic-typography-heading-4)]",children:t.title}),t.description&&(0,At.jsx)("p",{className:"line-clamp-2 text-[var(--inkblot-semantic-color-text-secondary)] [font:var(--inkblot-semantic-typography-body-small)]",children:t.description}),r&&(0,At.jsxs)("button",{type:"button",onClick:a=>{a.stopPropagation(),r(t)},className:o("mt-[var(--inkblot-spacing-1)] inline-flex w-full items-center justify-center gap-[var(--inkblot-spacing-2)]","rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-3)] py-[var(--inkblot-spacing-2)]","bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]","[font:var(--inkblot-semantic-typography-body-small)]","opacity-0 transition-opacity duration-[var(--inkblot-duration-fast)] group-hover:opacity-100","hover:bg-[var(--inkblot-semantic-color-interactive-primary-hover)]","active:bg-[var(--inkblot-semantic-color-interactive-primary-active)]","focus-visible:opacity-100 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--inkblot-semantic-color-border-focus)]"),children:[(0,At.jsx)(tl.Sparkles,{className:"h-4 w-4","aria-hidden":!0}),"Generate with AI"]})]})]})}function el({items:t,columns:e=3,onSelect:r,onGenerateWithAI:a,className:i}){return(0,At.jsx)("div",{className:o("gap-[var(--inkblot-spacing-4)]",i),style:{columns:e,columnGap:"var(--inkblot-spacing-4)"},children:t.map(n=>(0,At.jsx)(zc,{item:n,onSelect:r,onGenerateWithAI:a},n.id))})}var $o=require("react"),Ct=require("lucide-react");var V=require("react/jsx-runtime"),Oc={todo:{label:"To Do",color:"bg-[var(--inkblot-semantic-color-text-tertiary)]"},in_progress:{label:"In Progress",color:"bg-[var(--inkblot-semantic-color-status-info)]"},done:{label:"Done",color:"bg-[var(--inkblot-semantic-color-status-success)]"}},Fc={urgent:{label:"Urgent",icon:Ct.AlertTriangle,color:"text-[var(--inkblot-semantic-color-status-warning)]"},high:{label:"High",icon:Ct.ArrowUp,color:"text-[var(--inkblot-semantic-color-status-warning)]"},medium:{label:"Medium",icon:Ct.Minus,color:"text-[var(--inkblot-semantic-color-status-info)]"},low:{label:"Low",icon:Ct.ArrowDown,color:"text-[var(--inkblot-semantic-color-text-tertiary)]"}};function Vc(t){return t.completed?"done":"todo"}function Tr({label:t,children:e}){return(0,V.jsxs)("div",{className:"flex items-start gap-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-3)] border-b border-[var(--inkblot-semantic-color-border-default)]",children:[(0,V.jsx)("span",{className:"w-28 shrink-0 text-[var(--inkblot-semantic-color-text-tertiary)] [font:var(--inkblot-semantic-typography-body-small)]",children:t}),(0,V.jsx)("div",{className:"min-w-0 flex-1 text-[var(--inkblot-semantic-color-text-primary)] [font:var(--inkblot-semantic-typography-body-small)]",children:e})]})}function rl({task:t,open:e,onOpenChange:r,extraFields:a,onStatusChange:i,onAssigneeChange:n,className:s}){let l=(0,$o.useCallback)(()=>r?.(!1),[r]);if((0,$o.useEffect)(()=>{if(!e)return;let b=u=>{u.key==="Escape"&&l()};return document.addEventListener("keydown",b),()=>document.removeEventListener("keydown",b)},[e,l]),!e)return null;let c=t?Vc(t):null,d=c?Oc[c]:null,m=t?Fc[t.priority]:null,p=m?.icon??Ct.Minus;return(0,V.jsxs)("div",{className:"fixed inset-0 z-50 flex justify-end",children:[(0,V.jsx)("div",{className:"absolute inset-0 bg-black/40 transition-opacity duration-[var(--inkblot-duration-fast)]",onClick:l,"aria-hidden":!0}),(0,V.jsx)("div",{role:"dialog","aria-modal":"true","aria-label":t?.title??"Task details",className:o("relative z-10 flex h-full w-[480px] flex-col","bg-[var(--inkblot-semantic-color-background-primary)] shadow-[var(--inkblot-shadow-md)]",s),children:t?(0,V.jsxs)(V.Fragment,{children:[(0,V.jsxs)("div",{className:"flex items-start gap-[var(--inkblot-spacing-3)] border-b border-[var(--inkblot-semantic-color-border-default)] p-[var(--inkblot-spacing-6)]",children:[(0,V.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,V.jsx)("h2",{className:"text-[var(--inkblot-semantic-color-text-primary)] [font:var(--inkblot-semantic-typography-heading-4)]",children:t.title}),t.jiraKey&&(0,V.jsx)("span",{className:"mt-[var(--inkblot-spacing-1)] inline-block text-[var(--inkblot-semantic-color-text-tertiary)] [font:var(--inkblot-semantic-typography-body-small)]",children:t.jiraKey})]}),(0,V.jsx)("button",{type:"button",onClick:l,"aria-label":"Close",className:o("inline-flex h-8 w-8 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-md)]","text-[var(--inkblot-semantic-color-text-tertiary)] transition-colors duration-[var(--inkblot-duration-fast)]","hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)] hover:text-[var(--inkblot-semantic-color-text-primary)]","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--inkblot-semantic-color-border-focus)]"),children:(0,V.jsx)(Ct.X,{className:"h-4 w-4","aria-hidden":!0})})]}),(0,V.jsxs)("div",{className:"flex-1 overflow-y-auto p-[var(--inkblot-spacing-6)]",children:[(0,V.jsx)(Tr,{label:"Status",children:(0,V.jsxs)("button",{type:"button",onClick:()=>{if(!i||!c)return;let b=["todo","in_progress","done"],u=b[(b.indexOf(c)+1)%b.length];i(u)},className:o("inline-flex items-center gap-[var(--inkblot-spacing-2)] rounded-[var(--inkblot-radius-sm)] px-[var(--inkblot-spacing-2)] py-[var(--inkblot-spacing-1)]","transition-colors duration-[var(--inkblot-duration-fast)]",i&&"cursor-pointer hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)]"),disabled:!i,children:[(0,V.jsx)("span",{className:o("h-2 w-2 shrink-0 rounded-full",d?.color)}),d?.label]})}),(0,V.jsx)(Tr,{label:"Priority",children:(0,V.jsxs)("span",{className:o("inline-flex items-center gap-[var(--inkblot-spacing-2)]",m?.color),children:[(0,V.jsx)(p,{className:"h-4 w-4","aria-hidden":!0}),m?.label]})}),(0,V.jsx)(Tr,{label:"Assignee",children:(0,V.jsxs)("span",{className:"inline-flex items-center gap-[var(--inkblot-spacing-2)]",children:[(0,V.jsx)(Ct.User,{className:"h-4 w-4 text-[var(--inkblot-semantic-color-text-tertiary)]","aria-hidden":!0}),t.assignee]})}),(0,V.jsx)(Tr,{label:"Due date",children:(0,V.jsxs)("span",{className:"inline-flex items-center gap-[var(--inkblot-spacing-2)]",children:[(0,V.jsx)(Ct.Calendar,{className:"h-4 w-4 text-[var(--inkblot-semantic-color-text-tertiary)]","aria-hidden":!0}),t.date]})}),(0,V.jsx)(Tr,{label:"Company",children:t.company}),a?.map(b=>(0,V.jsx)(Tr,{label:b.label,children:b.value},b.label))]})]}):(0,V.jsx)("div",{className:"flex flex-1 items-center justify-center p-[var(--inkblot-spacing-6)]",children:(0,V.jsx)("p",{className:"text-[var(--inkblot-semantic-color-text-tertiary)] [font:var(--inkblot-semantic-typography-body-small)]",children:"No task selected"})})})]})}var Q=require("react/jsx-runtime");function ol({name:t,description:e,icon:r,connected:a=!1,onConnect:i,onDisconnect:n,className:s}){return(0,Q.jsxs)("div",{className:o("flex flex-col gap-[var(--inkblot-spacing-4)] rounded-[var(--inkblot-radius-lg)]","bg-[var(--inkblot-semantic-color-background-secondary)] p-[var(--inkblot-spacing-5)] shadow-[var(--inkblot-shadow-sm)]",s),children:[(0,Q.jsxs)("div",{className:"flex items-start gap-[var(--inkblot-spacing-4)]",children:[(0,Q.jsx)("div",{className:o("flex h-10 w-10 shrink-0 items-center justify-center rounded-[var(--inkblot-radius-md)]","bg-[var(--inkblot-semantic-color-background-tertiary)] text-[var(--inkblot-semantic-color-text-secondary)]"),children:r??(0,Q.jsx)("span",{className:"h-5 w-5 rounded-full bg-[var(--inkblot-semantic-color-border-default)]"})}),(0,Q.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,Q.jsx)("h3",{className:"text-[var(--inkblot-semantic-color-text-primary)] [font:var(--inkblot-semantic-typography-heading-4)]",children:t}),(0,Q.jsx)("p",{className:"mt-[var(--inkblot-spacing-1)] text-[var(--inkblot-semantic-color-text-secondary)] [font:var(--inkblot-semantic-typography-body-small)]",children:e})]})]}),(0,Q.jsx)("div",{className:"flex items-center justify-between",children:a?(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)("span",{className:"inline-flex items-center gap-[var(--inkblot-spacing-2)] [font:var(--inkblot-semantic-typography-body-small)]",children:[(0,Q.jsx)("span",{className:"h-2 w-2 shrink-0 rounded-full bg-[var(--inkblot-semantic-color-status-success)]"}),(0,Q.jsx)("span",{className:"text-[var(--inkblot-semantic-color-status-success)]",children:"Connected"})]}),n&&(0,Q.jsx)("button",{type:"button",onClick:n,className:o("rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","bg-[var(--inkblot-semantic-color-interactive-secondary)] text-[var(--inkblot-semantic-color-text-primary)]","[font:var(--inkblot-semantic-typography-body-small)]","transition-colors duration-[var(--inkblot-duration-fast)]","hover:bg-[var(--inkblot-semantic-color-interactive-secondary-hover)]","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--inkblot-semantic-color-border-focus)]"),children:"Disconnect"})]}):(0,Q.jsxs)(Q.Fragment,{children:[(0,Q.jsxs)("span",{className:"inline-flex items-center gap-[var(--inkblot-spacing-2)] [font:var(--inkblot-semantic-typography-body-small)]",children:[(0,Q.jsx)("span",{className:"h-2 w-2 shrink-0 rounded-full bg-[var(--inkblot-semantic-color-text-tertiary)]"}),(0,Q.jsx)("span",{className:"text-[var(--inkblot-semantic-color-text-tertiary)]",children:"Not connected"})]}),i&&(0,Q.jsx)("button",{type:"button",onClick:i,className:o("rounded-[var(--inkblot-radius-md)] px-[var(--inkblot-spacing-4)] py-[var(--inkblot-spacing-2)]","bg-[var(--inkblot-semantic-color-interactive-primary)] text-[var(--inkblot-semantic-color-text-inverse)]","[font:var(--inkblot-semantic-typography-body-small)]","transition-colors duration-[var(--inkblot-duration-fast)]","hover:bg-[var(--inkblot-semantic-color-interactive-primary-hover)]","active:bg-[var(--inkblot-semantic-color-interactive-primary-active)]","focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-[var(--inkblot-semantic-color-border-focus)]"),children:"Connect"})]})})]})}var Gc="var(--inkblot-semantic-color-background-primary)",Wc="var(--inkblot-semantic-color-background-secondary)",Kc="var(--inkblot-semantic-color-border-default)",Uc="var(--inkblot-semantic-color-text-primary)",_c="var(--inkblot-semantic-color-text-secondary)",jc="var(--inkblot-semantic-color-interactive-primary)",$c="var(--inkblot-semantic-color-interactive-secondary)",qc="var(--inkblot-semantic-color-interactive-secondary-hover)";0&&(module.exports={AIComposeInput,AIEmailGenerator,Accordion,ActionButtons,ActivityStream,AdvancedDropdown,Alert,AlertDialog,AppLayout,AppNavigationRail,AppSidebar,AspectRatio,AssistantPanel,Avatar,Badge,Breadcrumb,Button,CITRON_THEME_STORAGE_KEY,Calendar,CampaignTable,CanvasProvider,Card,CardContent,CardDescription,CardFooter,CardHeader,CardTitle,Carousel,CenteredAIChat,CenteredAssistantChat,Chart,Checkbox,CircularScore,Collapsible,Command,CommandBar,CommandCanvas,ContextMenu,Dialog,DialogClose,DialogContent,DialogDescription,DialogFooter,DialogHeader,DialogTitle,DialogTrigger,Drawer,DrawerClose,DrawerContent,DrawerDescription,DrawerFooter,DrawerHeader,DrawerTitle,DrawerTrigger,DropdownMenu,DropdownMenuContent,DropdownMenuItem,DropdownMenuSeparator,DropdownMenuTrigger,EmailBlockEditor,EmailCampaignsView,EmailComposeActionButtons,EmailTemplatesSection,EntityCard,EntityCommandCard,ErrorBoundary,EventFeed,EventRow,EventStreamFeed,EventStreamSidebar,Form,FormActions,FormField,GlobalAssistantChat,GraphView,GuidedTour,HoverCard,HoverCardContent,HoverCardTrigger,Input,InputOtp,IntegrationPlaceholder,IntelligenceCard,IntelligenceLab,IntelligenceScoreCard,InvoiceEditorPage,InvoiceForm,InvoicePreview,Label,MainShell,Menubar,MenubarCloseZone,MenubarContent,MenubarItem,MenubarMenu,MenubarSeparator,MenubarTrigger,MetricComparisonList,ModuleContainer,ModuleErrorBoundary,ModuleSkeleton,NavLink,NavLinkRouter,NavigationMenu,OSNavigationRail,OnboardingWizard,PageErrorFallback,PageHeader,PageHeaderActionButton,Pagination,Popover,PopoverClose,PopoverContent,PopoverTrigger,Progress,RadioGroup,RadioGroupItem,Resizable,RouteWithErrorBoundary,ScrollArea,SearchBar,Select,Separator,Sheet,Sidebar,Skeleton,Slider,Sonner,StatCardGrid,StatCards,StatCardsWithChart,StatusBadge,Switch,TabSystem,Table,TableBody,TableCaption,TableCell,TableEmptyState,TableHead,TableHeader,TableRow,Tabs,TaskCreateForm,TaskDetailsPanel,TaskItem,TaskKanban,TaskKanbanBoard,TaskKanbanCard,TaskKanbanColumn,TaskList,TasksView,TemplateCard,TemplateMasonryGrid,Textarea,ThemeProvider,ThemeSwitcherButton,Toast,Toaster,Toggle,ToggleGroup,Tooltip,semanticBackgroundPrimary,semanticBackgroundSecondary,semanticBorderDefault,semanticInteractivePrimary,semanticInteractiveSecondary,semanticInteractiveSecondaryHover,semanticTextPrimary,semanticTextSecondary,useCanvas,useTheme});