@arbor-education/agent-view-frontend 0.4.9 → 0.4.10

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.cjs CHANGED
@@ -1,4 +1,4 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),o=require("react"),J=require("classnames"),d=require("@arbor-education/design-system.components"),me=require("@arbor-education/ask-arbor-chat-panel"),A={"generating-a-response":"generating-a-response",hitl:"hitl",complete:"complete",failed:"failed"},B={"generating-a-response":"generating-a-response",hitl:"hitl",complete:"complete",failed:"failed"},H={briefing:"briefing",running:"running",stopped:"stopped",complete:"complete"},Z={agent:"agent",user:"user",system:"system"},re={document_html:"document_html",mis_record:"mis_record",workflow:"workflow",file:"file",link:"link"},gt={cancelled:"cancelled",archived:"archived"},Xe={in_progress:"in_progress",requires_attention:"requires_attention",available:"available"},V={[B.complete]:{label:"Complete",icon:"circle-check",color:"var(--color-semantic-success-600)"},[B.failed]:{label:"Failed",icon:"circle-x",color:"var(--color-semantic-destructive-600)"},[B.hitl]:{label:"Requires attention",icon:"triangle-alert",color:"var(--color-semantic-warning-600)"},[B["generating-a-response"]]:{label:"Generating a response",icon:"sparkles",color:"var(--color-brand-600)"}},He={[A["generating-a-response"]]:{status:A["generating-a-response"],title:"Active",dotColour:"green",statusIcon:{name:V["generating-a-response"].icon,color:V["generating-a-response"].color}},[A.hitl]:{status:A.hitl,title:"Requires attention",dotColour:"orange",statusIcon:{name:V.hitl.icon,color:V.hitl.color}},[A.complete]:{status:A.complete,title:"Complete",dotColour:"green",dotModifier:"grey-dark",statusIcon:{name:V.complete.icon,color:V.complete.color}},[A.failed]:{status:A.failed,title:"Failed",dotColour:"salmon",statusIcon:{name:V.failed.icon,color:V.failed.color}}},Zt=[A["generating-a-response"],A.hitl],es=[A.complete,A.failed],ts="m4",ss="1",yt="msg-opening",$e="Unable to load agent tasks. Please try again.",ns="Unable to load the resources for this agent",as="Unable to load this document. Please try again.",St="Unable to load the timeline for this agent",rs="Something went wrong. Please try again.",Nt="Unable to load agents. Please try again.",he="Loading tasks…",ht="Loading agents…",os="Task",is={[H.briefing]:"Briefing",[H.running]:"Working",[H.stopped]:"Stopped",[H.complete]:"Complete"},ls=[A["generating-a-response"],A.hitl,A.complete,A.failed],cs={[A["generating-a-response"]]:"Agents currently working on tasks for you.",[A.hitl]:"Agents that need your input before they can continue.",[A.complete]:"Agents that have finished their work.",[A.failed]:"Agents that failed or were stopped."},ds=()=>s.jsxs("svg",{className:"agent-view__empty-illustration",viewBox:"0 0 360 240",xmlns:"http://www.w3.org/2000/svg",role:"img","aria-label":"Preview of the agents board layout",children:[s.jsx("rect",{x:"0",y:"0",width:"360",height:"240",rx:"12",fill:"var(--color-grey-100)"}),s.jsx("rect",{x:"16",y:"16",width:"100",height:"208",rx:"8",fill:"var(--card-default-color-background)",stroke:"var(--card-default-color-border)"}),s.jsx("rect",{x:"130",y:"16",width:"100",height:"208",rx:"8",fill:"var(--card-default-color-background)",stroke:"var(--card-default-color-border)"}),s.jsx("rect",{x:"244",y:"16",width:"100",height:"100",rx:"8",fill:"var(--card-default-color-background)",stroke:"var(--card-default-color-border)"}),s.jsx("rect",{x:"244",y:"124",width:"100",height:"100",rx:"8",fill:"var(--card-default-color-background)",stroke:"var(--card-default-color-border)"}),s.jsx("rect",{x:"28",y:"52",width:"76",height:"36",rx:"6",fill:"var(--color-grey-050)"}),s.jsx("rect",{x:"28",y:"96",width:"76",height:"36",rx:"6",fill:"var(--color-grey-050)"}),s.jsx("rect",{x:"142",y:"52",width:"76",height:"36",rx:"6",fill:"var(--color-semantic-warning-050)"}),s.jsx("circle",{cx:"40",cy:"70",r:"4",fill:"var(--color-brand-600)"}),s.jsx("circle",{cx:"40",cy:"114",r:"4",fill:"var(--color-brand-600)"}),s.jsx("circle",{cx:"154",cy:"70",r:"4",fill:"var(--color-semantic-warning-600)"}),s.jsx("circle",{cx:"256",cy:"52",r:"4",fill:"var(--color-grey-400)"}),s.jsx("circle",{cx:"256",cy:"160",r:"4",fill:"var(--color-semantic-destructive-500)"})]}),us=({status:t})=>{const e=He[t];return e.statusIcon?s.jsx(d.Icon,{name:e.statusIcon.name,size:16,color:e.statusIcon.color,screenReaderText:e.title}):s.jsx(d.Dot,{colour:e.dotColour,label:e.title})},gs=()=>s.jsxs("section",{className:"agent-view__empty","aria-label":"About the agents board",children:[s.jsxs("div",{className:"agent-view__empty-content",children:[s.jsx(d.Heading,{level:4,children:"Your agents board"}),s.jsx("p",{className:"agent-view__empty-lead",children:"When you start an agent, it appears here so you can track progress at a glance. Agents move between columns as their status changes."}),s.jsx("ul",{className:"agent-view__empty-columns",children:ls.map(t=>{const e=He[t];return s.jsxs("li",{className:"agent-view__empty-column",children:[s.jsx("span",{className:"agent-view__empty-column-indicator",children:s.jsx(us,{status:t})}),s.jsxs("span",{className:"agent-view__empty-column-text",children:[s.jsx("span",{className:"agent-view__empty-column-title",children:e.title}),s.jsx("span",{className:"agent-view__empty-column-description",children:cs[t]})]})]},t)})}),s.jsxs("p",{className:"agent-view__empty-hint",children:["Use ",s.jsx("strong",{children:"Start an agent"})," above to begin."]})]}),s.jsx("div",{className:"agent-view__empty-visual",children:s.jsx(ds,{})})]}),hs=(t,e)=>({...t,...e.length>0?{children:e}:{}}),jt=t=>{const e=[],n=[];for(const a of t){const r=a.children?jt(a.children):{needsInput:[],tasks:[]};if(e.push(...r.needsInput),a.status===B.hitl){e.push({...a,children:void 0});continue}n.push(hs(a,r.tasks))}return{needsInput:e,tasks:n}},ps=t=>t.map((e,n)=>({item:e,index:n})).sort((e,n)=>{const a=e.item.status===B.hitl,r=n.item.status===B.hitl;return a!==r?a?-1:1:e.index-n.index}).map(({item:e})=>e),Qe=2,ms=t=>{if(!t)return{canScrollUp:!1,canScrollDown:!1};const e=t.scrollHeight-t.clientHeight;return e<=Qe?{canScrollUp:!1,canScrollDown:!1}:{canScrollUp:t.scrollTop>Qe,canScrollDown:t.scrollTop<e-Qe}},_s=(t,e)=>{if(!t||!e)return null;const n=t.getBoundingClientRect(),a=e.getBoundingClientRect();return{top:a.top-n.top,left:a.left-n.left,width:a.width,height:a.height}},ze=({children:t,className:e,contentClassName:n,scrollSelector:a,style:r,"aria-label":l})=>{const i=o.useRef(null),u=o.useRef(null),[c,v]=o.useState(!1),[f,h]=o.useState(!1),[p,O]=o.useState(null),w=()=>{var y;return a?((y=i.current)==null?void 0:y.querySelector(a))??null:u.current},j=()=>{const y=w(),k=ms(y);if(v(_=>_===k.canScrollUp?_:k.canScrollUp),h(_=>_===k.canScrollDown?_:k.canScrollDown),a){const _=_s(i.current,y);O(C=>(C==null?void 0:C.top)===(_==null?void 0:_.top)&&(C==null?void 0:C.left)===(_==null?void 0:_.left)&&(C==null?void 0:C.width)===(_==null?void 0:_.width)&&(C==null?void 0:C.height)===(_==null?void 0:_.height)?C:_)}else O(_=>_===null?_:null)};o.useLayoutEffect(()=>{j()}),o.useEffect(()=>{const y=i.current;if(!y)return;let k=null,_=null;const C=()=>{k==null||k.removeEventListener("scroll",j),_==null||_.disconnect(),_=null,k=null},R=M=>{if(M===k){j();return}if(C(),k=M,!k){j();return}k.addEventListener("scroll",j,{passive:!0}),_=new ResizeObserver(()=>j()),_.observe(k),k.firstElementChild instanceof HTMLElement&&_.observe(k.firstElementChild),j()};R(w());const T=new MutationObserver(()=>{R(w())});return T.observe(y,{childList:!0,subtree:!0,characterData:!0}),window.addEventListener("resize",j),()=>{window.removeEventListener("resize",j),T.disconnect(),C()}},[a]);const N=y=>{const k=w();if(!k)return;const _=Math.max(k.clientHeight*.75,120);k.scrollBy({top:y==="up"?-_:_,behavior:"smooth"})},P=s.jsxs(s.Fragment,{children:[c&&s.jsxs(s.Fragment,{children:[s.jsx("div",{className:"scrollable-region__fade scrollable-region__fade--top","aria-hidden":"true"}),s.jsx("button",{type:"button",className:"scrollable-region__edge scrollable-region__edge--top","aria-label":"Scroll up",onClick:()=>N("up"),children:s.jsx(d.Icon,{name:"chevron-up",size:16,color:"currentColor"})})]}),f&&s.jsxs(s.Fragment,{children:[s.jsx("div",{className:"scrollable-region__fade scrollable-region__fade--bottom","aria-hidden":"true"}),s.jsx("button",{type:"button",className:"scrollable-region__edge scrollable-region__edge--bottom","aria-label":"Scroll down",onClick:()=>N("down"),children:s.jsx(d.Icon,{name:"chevron-down",size:16,color:"currentColor"})})]})]});return s.jsx("div",{ref:i,className:J("scrollable-region",e),style:r,"aria-label":l,children:a?s.jsxs(s.Fragment,{children:[t,p&&(c||f)&&s.jsx("div",{className:"scrollable-region__overlay",style:{top:p.top,left:p.left,width:p.width,height:p.height},children:P})]}):s.jsxs(s.Fragment,{children:[P,s.jsx("div",{ref:u,className:J("scrollable-region__viewport",n),children:t})]})})},fs=48,vs=({checklist:t})=>{const e=o.useRef(null),n=o.useRef(!1);return o.useLayoutEffect(()=>{const a=e.current;if(!a)return;const r=a.scrollHeight-a.scrollTop-a.clientHeight;(!n.current||r<=fs)&&(a.scrollTop=a.scrollHeight,n.current=!0)},[t]),t.length===0?s.jsx("p",{className:"agent-view__progress-empty",children:"No tasks to display."}):s.jsx(ze,{className:"agent-view__progress-scroll",scrollSelector:".agent-view__progress-list",children:s.jsx("ul",{ref:e,className:"agent-view__progress-list","aria-label":"Agent tasks",children:ps(t).map(a=>{const r=V[a.status];return s.jsxs("li",{className:J("agent-view__progress-item",`agent-view__progress-item--${a.status.replace(/_/g,"-")}`),children:[s.jsx(d.Icon,{name:r.icon,size:16,color:r.color,screenReaderText:`${r.label}:`}),s.jsxs("div",{className:"agent-view__progress-item-content",children:[s.jsx("span",{className:"agent-view__progress-label",children:a.task}),a.status!==B.complete&&s.jsx("span",{className:"agent-view__progress-description",children:a.description})]})]},a.task)})})})},ws=({prompts:t,classNamePrefix:e="agent-workspace",onSelect:n})=>t.length===0?null:s.jsx("div",{className:`${e}__chips`,children:t.map(a=>s.jsx("button",{type:"button",className:`${e}__chip`,onClick:()=>n(a),children:a},a))});class xs{constructor(e,n){this.connector=e,this.canSend=n.canSend,this.onTurn=n.onTurn,this.onAwaitingChange=n.onAwaitingChange}get canRate(){return!1}get canLoadHistory(){return!1}get canListInteractions(){return!1}get canSendNotification(){return!1}get ratingPopupUrls(){return{}}async sendMessage(e){var n,a;if(!this.canSend())return null;(n=this.onAwaitingChange)==null||n.call(this,!0);try{const r=await this.connector.sendMessage(e.userMessage,e.uploadFiles);return this.onTurn(r),{id:r.message.id,text:r.message.text,type:me.CHAT_RESPONSE_TYPE_AGENT,...r.message.followUpPrompts?{followUpPrompts:r.message.followUpPrompts}:{}}}catch{return{id:`error-${Date.now()}`,text:rs,type:me.CHAT_RESPONSE_TYPE_ERROR}}finally{(a=this.onAwaitingChange)==null||a.call(this,!1)}}async loadHistory(e){return null}async listInteractions(){return null}async rateMessage(e){}async sendNotification(e){return!1}}const ks=({connector:t,phase:e,chatHistory:n,chatSessionKey:a,startQuery:r,clarificationMessage:l,enableUpload:i=!1,onTurn:u,onAwaitingChange:c,onClarificationPrompt:v,onDismissClarification:f})=>{const h=o.useMemo(()=>new xs(t,{canSend:()=>e===H.running,onTurn:u,onAwaitingChange:c}),[t,e,u,c]),p=e!==H.running,O=e===H.running;return s.jsxs("section",{className:"agent-workspace__chat-body","aria-label":"Chat",children:[l&&s.jsxs("div",{className:"agent-workspace__clarification",role:"region","aria-label":"Agent question",children:[s.jsx("p",{className:"agent-workspace__clarification-text",children:l.text}),l.followUpPrompts&&s.jsx(ws,{prompts:l.followUpPrompts,onSelect:v}),s.jsx("button",{type:"button",className:"agent-workspace__clarification-dismiss",onClick:f,children:"Dismiss"})]}),s.jsx("div",{className:"agent-workspace__ask-arbor",children:s.jsx(ze,{scrollSelector:".chat-panel-message-list",children:s.jsx(me.ChatPanel,{connector:h,chatHistory:n,startQuery:r,lockConversation:p,enableUpload:i,speechEnabled:O,speechLanguage:"en-GB",speechSubmissionDelay:1e3,slashMenuItems:[],menuContent:[],introHeading:"Message your agent",introBody:"Ask questions, share trip details, or paste a link. The agent will update the checklist as it works.",placeholder:O?"Message the agent, paste a link, or attach a file…":"The agent is not accepting messages."},a)})}),e===H.stopped&&s.jsxs("div",{className:"agent-workspace__notice",role:"status",children:[s.jsx(d.Icon,{name:"circle-alert",size:16,color:"var(--color-semantic-warning-600)"}),s.jsx("span",{children:"You stopped the agent. Its progress is saved in the checklist on the left."})]}),e===H.complete&&s.jsxs("div",{className:"agent-workspace__notice",role:"status",children:[s.jsx(d.Icon,{name:"party-popper",size:16,color:"var(--color-semantic-success-600)"}),s.jsx("span",{children:"The agent has finished."})]})]})},bt=({item:t,depth:e,canRequestInput:n,onAttentionItemClick:a})=>{const r=V[t.status],l=t.status.replace(/_/g,"-"),i=t.status===B.hitl&&n&&a,u=s.jsxs("div",{className:"agent-workspace__task-row",children:[s.jsx(d.Icon,{name:r.icon,size:16,color:r.color,screenReaderText:`${r.label}:`}),s.jsxs("div",{className:"agent-workspace__task-content",children:[s.jsx("span",{className:"agent-workspace__task-label",children:t.task}),t.status!==B.complete&&t.description&&s.jsx("span",{className:"agent-workspace__task-description",children:t.description})]})]});return s.jsxs("li",{className:J("agent-workspace__task",`agent-workspace__task--${l}`,{"agent-workspace__task--child":e>0}),children:[i?s.jsx("button",{type:"button",className:"agent-workspace__task-button","aria-label":`Provide input for ${t.task}`,onClick:()=>a(t),children:u}):u,t.children&&t.children.length>0&&s.jsx("ul",{className:"agent-workspace__task-children",children:t.children.map(c=>s.jsx(bt,{item:c,depth:e+1,canRequestInput:n,onAttentionItemClick:a},c.task))})]})},pt=({items:t,ariaLabel:e,canRequestInput:n,onAttentionItemClick:a})=>s.jsx("ul",{className:"agent-workspace__task-list","aria-label":e,children:t.map(r=>s.jsx(bt,{item:r,depth:0,canRequestInput:n,onAttentionItemClick:a},r.task))}),ys=({checklist:t,isLoading:e,error:n,phase:a,canRequestInput:r,onAttentionItemClick:l})=>{const i=o.useMemo(()=>t?jt(t):null,[t]);return s.jsxs("section",{className:"agent-workspace__panel agent-workspace__panel--checklist","aria-label":"Checklist",children:[s.jsx("div",{className:"agent-workspace__panel-header",children:s.jsx(d.Heading,{level:4,children:"Checklist"})}),s.jsx("div",{className:"agent-workspace__panel-body","aria-live":"polite",children:s.jsxs(ze,{children:[e&&s.jsxs("div",{className:"agent-workspace__loading",children:[s.jsx(d.Icon,{name:"loader",size:16,color:"var(--color-brand-600)",className:"agent-workspace__task-icon--spinning",screenReaderText:he}),s.jsx("span",{children:he})]}),!e&&n&&s.jsx("p",{className:"agent-workspace__error",role:"alert",children:n}),!e&&!n&&i&&s.jsxs(s.Fragment,{children:[i.needsInput.length>0&&s.jsxs("div",{className:"agent-workspace__task-group",children:[s.jsx("p",{className:"agent-workspace__task-group-label",children:"Needs your input"}),s.jsx(pt,{items:i.needsInput,ariaLabel:"Tasks needing your input",canRequestInput:r,onAttentionItemClick:l})]}),i.tasks.length>0&&s.jsxs("div",{className:J("agent-workspace__task-group",{"agent-workspace__task-group--following":i.needsInput.length>0}),children:[i.needsInput.length>0&&s.jsx("p",{className:"agent-workspace__task-group-label",children:"Other tasks"}),s.jsx(pt,{items:i.tasks,ariaLabel:"Agent tasks",canRequestInput:r,onAttentionItemClick:l})]})]}),!e&&!n&&(!i||i.needsInput.length===0&&i.tasks.length===0)&&s.jsx("p",{className:"agent-workspace__empty",children:a===H.briefing?"Tasks will appear here once the agent starts.":"No tasks to display."})]})})]})},Ss=({resource:t,html:e,isLoading:n,error:a,onClose:r})=>{o.useEffect(()=>{if(!t)return;const i=d.SlideoverUtils.removeSlideover;return d.SlideoverUtils.removeSlideover=()=>{i(),r()},()=>{d.SlideoverUtils.removeSlideover=i}},[t,r]),o.useEffect(()=>{if(!t)return;const i=u=>{u.key==="Escape"&&d.SlideoverUtils.removeSlideover()};return window.addEventListener("keydown",i),()=>window.removeEventListener("keydown",i)},[t]);const l=o.useMemo(()=>t?[{centerHeaderText:!1,children:s.jsxs("div",{className:"resource-preview-slideover__body",children:[n&&s.jsxs("div",{className:"resource-preview-slideover__status",children:[s.jsx(d.Icon,{name:"loader",size:16,color:"var(--color-brand-600)",className:"agent-workspace__task-icon--spinning",screenReaderText:"Loading document"}),s.jsx("span",{children:"Loading document…"})]}),!n&&a&&s.jsx("p",{className:"resource-preview-slideover__error",role:"alert",children:a}),!n&&!a&&e!==null&&s.jsx("iframe",{className:"resource-preview-slideover__frame",title:t.title,sandbox:"",srcDoc:e})]})}]:[],[t,e,n,a]);return s.jsx("div",{className:"resource-preview-slideover",children:s.jsx(d.SlideoverManager,{slideovers:l})})},Ns={[re.mis_record]:{icon:"table",label:"Arbor MIS",color:"var(--color-brand-600)"},[re.document_html]:{icon:"file",label:"Document",color:"var(--color-semantic-caution-800)"},[re.file]:{icon:"file",label:"File",color:"var(--color-semantic-caution-800)"},[re.workflow]:{icon:"list-tree",label:"Workflow",color:"var(--color-semantic-warning-700)"},[re.link]:{icon:"link",label:"Link",color:"var(--color-semantic-info-700)"}},js=({resources:t,isLoading:e=!1,error:n=null,onOpenResource:a})=>s.jsxs("section",{className:"agent-workspace__panel agent-workspace__panel--documents","aria-label":"Resources",children:[s.jsxs("div",{className:"agent-workspace__panel-header",children:[s.jsx(d.Heading,{level:4,children:"Resources"}),s.jsx("span",{className:"agent-workspace__panel-count",children:t.length})]}),s.jsx("div",{className:"agent-workspace__panel-body","aria-live":"polite",children:s.jsxs(ze,{children:[e&&s.jsxs("div",{className:"agent-workspace__loading",children:[s.jsx(d.Icon,{name:"loader",size:16,color:"var(--color-brand-600)",className:"agent-workspace__task-icon--spinning",screenReaderText:"Loading resources"}),s.jsx("span",{children:"Loading resources…"})]}),!e&&n&&s.jsx("p",{className:"agent-workspace__error",role:"alert",children:n}),!e&&!n&&t.length>0&&s.jsx("ul",{className:"agent-workspace__resource-list","aria-label":"Agent resources",children:t.map(r=>{const l=Ns[r.type],i=r.misRecordUrl;return s.jsx("li",{className:"agent-workspace__resource",children:i?s.jsx("a",{className:"agent-workspace__resource-card",href:i,target:"_blank",rel:"noreferrer",onClick:u=>{u.preventDefault(),a(r)},children:s.jsx(mt,{resource:r,config:l,external:!0})}):s.jsx("button",{type:"button",className:"agent-workspace__resource-card",onClick:()=>a(r),children:s.jsx(mt,{resource:r,config:l})})},r.id)})}),!e&&!n&&t.length===0&&s.jsx("p",{className:"agent-workspace__empty",children:"No resources yet."})]})})]}),mt=({resource:t,config:e,external:n=!1})=>s.jsxs(s.Fragment,{children:[s.jsx("span",{className:`agent-workspace__resource-icon agent-workspace__resource-icon--${t.type}`,children:s.jsx(d.Icon,{name:e.icon,size:16,color:e.color,screenReaderText:`${e.label}:`})}),s.jsx("span",{className:"agent-workspace__resource-content",children:s.jsxs("span",{className:"agent-workspace__resource-top",children:[s.jsx("span",{className:"agent-workspace__resource-name",children:t.title}),s.jsx("span",{className:`agent-workspace__resource-badge agent-workspace__resource-badge--${t.type}`,children:e.label})]})}),n&&s.jsx(d.Icon,{name:"external-link",size:12,color:"var(--color-grey-500)",screenReaderText:"Opens in a new tab",className:"agent-workspace__resource-open"})]}),Be=t=>{const e=Date.parse(t);return Number.isFinite(e)?e:0},bs=new Intl.DateTimeFormat("en-GB",{day:"numeric",month:"long",year:"numeric",hour:"numeric",minute:"2-digit"}),Ze=t=>{const e=new Date(t);return Number.isFinite(e.getTime())?bs.format(e):t},Ue=t=>t.replace(/[A-Za-z0-9]+(?:[_-][A-Za-z0-9]+)+/g,e=>e.split(/[_-]/).map(n=>n.charAt(0).toUpperCase()+n.slice(1).toLowerCase()).join(" ")),Ne=(t,e)=>e<=1?0:t/(e-1)*100,At=t=>Math.max(t,0)+2,As=t=>t+1,Cs=(t,e)=>{if(e.length===0)return 50;const n=At(e.length),a=Ne(1,n),r=Ne(e.length,n),l=e.map(f=>Be(f.timestamp)),i=Math.min(...l),u=Math.max(...l);if(u<=i)return a;const c=(Be(t.timestamp)-i)/(u-i),v=Math.min(1,Math.max(0,c));return a+v*(r-a)},Es=8,Ts=20,Rs=(t,e=Es,n=Ts)=>{const a=new Map;if(t.length===0)return a;const r=[...t].sort((i,u)=>i.leftPercent-u.leftPercent||i.timestampMs-u.timestampMs||i.id.localeCompare(u.id)),l=[];for(const i of r){const u=l[l.length-1];u&&i.leftPercent-u[u.length-1].leftPercent<e?u.push(i):l.push([i])}for(const i of l){const u=[...i].sort((v,f)=>v.timestampMs-f.timestampMs||v.id.localeCompare(f.id)),c=(u.length-1)/2;u.forEach((v,f)=>{a.set(v.id,(f-c)*n)})}return a},De=(t,e=0)=>({left:`calc(${t/100} * (100% - var(--agent-timeline-node-size)) + (var(--agent-timeline-node-size) / 2) + ${e}px)`,transform:"translateX(-50%)"}),Is=t=>t.type!=="message-sent",Os=({timeline:t,isLoading:e,error:n,onOpenChatSession:a})=>{const r=((t==null?void 0:t.actionLog)??[]).filter(Is),l=(t==null?void 0:t.chatSessions)??[],i=!e&&!n&&r.length===0&&l.length===0,u=At(r.length),c=r.map((h,p)=>({id:`action-${h.timestamp}-${p}`,leftPercent:Ne(As(p),u),timestampMs:Be(h.timestamp)})),v=l.map(h=>({id:h.sessionId,leftPercent:Cs(h,r),timestampMs:Be(h.timestamp)})),f=Rs([...c,...v]);return s.jsxs("section",{className:"agent-workspace__timeline","aria-label":"Agent timeline",children:[e&&s.jsx("p",{className:"agent-workspace__timeline-status",role:"status",children:"Loading timeline…"}),n&&s.jsx("p",{className:"agent-workspace__timeline-status",role:"alert",children:n||St}),i&&s.jsx("p",{className:"agent-workspace__timeline-status",role:"status",children:"No timeline activity yet."}),!e&&!n&&!i&&s.jsxs("div",{className:"agent-timeline",children:[s.jsx("div",{className:"agent-timeline__track","aria-hidden":"true"}),s.jsxs("div",{className:"agent-timeline__station agent-timeline__station--terminus",style:De(Ne(0,u)),children:[s.jsx("span",{className:"agent-timeline__station-node agent-timeline__station-node--terminus","aria-hidden":"true",children:s.jsx(d.Icon,{name:"arrow-right-from-line",size:16,color:"currentColor"})}),s.jsx("span",{className:"agent-timeline__terminus-label",children:"Start"})]}),r.map((h,p)=>{const O=`action-${h.timestamp}-${p}`,w=c[p].leftPercent,j=h.type==="checklist-updated",N=h.type==="status-transition",P=j?"checklist":N?"status":"note";return s.jsxs("div",{className:`agent-timeline__station agent-timeline__station--${P}`,style:De(w,f.get(O)??0),children:[s.jsxs("button",{type:"button",className:`agent-timeline__station-node agent-timeline__station-node--${P}`,"aria-label":`${Ue(h.type)}: ${Ue(h.entry)}`,children:[j&&s.jsx(d.Icon,{name:"check-solid",size:16,color:"currentColor"}),N&&s.jsx(d.Icon,{name:"iteration-ccw",size:16,color:"currentColor"})]}),s.jsxs("div",{className:"agent-timeline__pill",role:"tooltip",children:[s.jsx("strong",{className:"agent-timeline__pill-type",children:Ue(h.type)}),s.jsx("span",{className:"agent-timeline__pill-entry",children:Ue(h.entry)}),s.jsx("span",{className:"agent-timeline__pill-entry",children:Ze(h.timestamp)})]})]},O)}),s.jsxs("div",{className:"agent-timeline__station agent-timeline__station--terminus",style:De(Ne(u-1,u)),children:[s.jsx("span",{className:"agent-timeline__station-node agent-timeline__station-node--terminus","aria-hidden":"true",children:s.jsx(d.Icon,{name:"flag",size:16,color:"currentColor"})}),s.jsx("span",{className:"agent-timeline__terminus-label",children:"Finish"})]}),l.map((h,p)=>{const O=v[p].leftPercent;return s.jsxs("div",{className:"agent-timeline__chat-station",style:De(O,f.get(h.sessionId)??0),children:[s.jsx("button",{type:"button",className:"agent-timeline__chat-node","aria-label":`Open chat session from ${Ze(h.timestamp)}`,onClick:()=>a(h.sessionId),children:s.jsx(d.Icon,{name:"sparkles",size:16,color:"currentColor"})}),s.jsxs("div",{className:"agent-timeline__pill",role:"tooltip",children:[s.jsx("strong",{className:"agent-timeline__pill-type",children:"Chat session"}),s.jsx("span",{className:"agent-timeline__pill-entry",children:Ze(h.timestamp)})]})]},h.sessionId)})]})]})},Ps=["I'll get the details and come back to you","Skip this for now"],Ls=t=>{var n;const e=(n=t.prompt)!=null&&n.trim()?t.prompt.trim():`I need a bit more from you on "${t.task}". ${t.description} What can you tell me?`;return{id:`clarification-${Date.now()}`,author:Z.agent,text:e,followUpPrompts:t.clarificationPrompts??Ps}},ge=t=>({id:t.id,text:t.text,type:t.author===Z.user?me.CHAT_RESPONSE_TYPE_USER:t.author===Z.system?me.CHAT_RESPONSE_TYPE_INFO:me.CHAT_RESPONSE_TYPE_AGENT,...t.followUpPrompts?{followUpPrompts:t.followUpPrompts}:{}});class pe extends Error{constructor(e,n,a){super(a??`Agent service request failed (${e})`),this.name="AgentServiceError",this.status=e,this.detail=n}}const Ms="/api/v1",$={agentDefinitions:"/agent-definitions",agents:"/agents",conversations:"/conversations",tripOptions:"/trip-options",demoDataset:"/demo/dataset"},F={GET:"GET",POST:"POST"},Us={error:"error"},Ds={user:"user"},oe={acceptJson:"application/json",acceptHtml:"text/html",acceptEventStream:"text/event-stream",contentTypeJson:"application/json",arborApplicationUrl:"X-Arbor-Application-Url"},$s=100,Ct=t=>{switch(t){case gt.cancelled:return A.failed;case gt.archived:return A.complete;case A.hitl:case A.complete:case A.failed:case A["generating-a-response"]:return t;default:return A["generating-a-response"]}},Et=t=>{switch(t){case Xe.requires_attention:return B.hitl;case Xe.in_progress:case Xe.available:return B["generating-a-response"];case B.failed:case B.complete:case B.hitl:case B["generating-a-response"]:return t;default:return B["generating-a-response"]}},nt=t=>({ref:t.name,display_name:t.display_name,agent_intent:t.agent_intent??"",description:t.description}),Hs=t=>({id:t.id,name:t.name,...t.has_run_before?{hasRunBefore:t.has_run_before}:{}}),Bs=new Set(Object.values(re)),zs=t=>Bs.has(t)?t:re.document_html,Tt=t=>({id:t.id,type:zs(t.type),title:t.title,createdDatetime:t.created_datetime,lastUpdatedDatetime:t.last_updated_datetime,misRecordUrl:t.mis_record_url}),Rt=t=>({resources:t.resources.map(Tt),pageNumber:t.page_number,pageSize:t.page_size,totalRecords:t.total_records}),It=t=>({actionLog:(t.action_log??[]).map(e=>({timestamp:e.timestamp,type:e.type,entry:e.entry,origin:e.origin})),chatSessions:(t.chat_sessions??[]).map(e=>({sessionId:e.session_id,timestamp:e.timestamp}))}),tt=t=>{var n;const e=t.invocation_id??t.id;return{id:t.id,invocation_id:e,agent_definition_ref:t.agent_definition_ref,...t.agent_intent?{agent_intent:t.agent_intent}:{},invocation_name:((n=t.invocation_name)==null?void 0:n.trim())||t.agent_definition_ref,application_id:t.application_id,...t.application_name?{application_name:t.application_name}:{},created_by:t.created_by,status:Ct(t.status),context_ref:t.context_ref??null,checklist_ref:t.checklist_ref??null}},at=t=>{var e;return{task:t.task??t.name??t.label??os,status:Et(t.status),description:t.description??"",...t.prompt?{prompt:t.prompt}:{},...(e=t.follow_up_prompts)!=null&&e.length?{clarificationPrompts:t.follow_up_prompts}:{}}},Fs=t=>Array.isArray(t)?t:t.checklist_items??t.checklist??t.items??[],rt=(t,e,n)=>{var l;const a=!Array.isArray(e)&&(e.opening_message||(l=e.opening_follow_up_prompts)!=null&&l.length)?e:n,r=a?je(a):void 0;return{invocation_id:t,checklist:Fs(e).map(at),...r?{openingMessage:r}:{}}},Ot=(t,e)=>{const n=je(e);return{invocation_id:e.invocation_id??t,checklist:(e.checklist_items??[]).map(at),...n?{openingMessage:n}:{}}},je=t=>{var n,a;const e=(n=t.opening_message)==null?void 0:n.trim();if(e)return{id:yt,author:Z.agent,text:e,...(a=t.opening_follow_up_prompts)!=null&&a.length?{followUpPrompts:t.opening_follow_up_prompts}:{}}},Pt=t=>t.filter(e=>(e.role==="user"||e.role==="assistant")&&typeof e.content=="string"&&e.content.length>0&&e.message_type!=="tool_request").map(e=>({id:e.message_id,author:e.role==="user"?Z.user:Z.agent,text:e.content})),qs=/:invocationId\b/g,Gs=/:resourceId\b/g,Js=t=>t.trim().replace(/^Bearer\s+/i,""),Ks=t=>t.endsWith("/")?t.slice(0,-1):t;class Fe{constructor(e){var a;this.baseUrl=Ks(e.baseUrl??"");const n=(a=e.token)==null?void 0:a.trim();this.token=n?Js(n):void 0,this.customHeaders=e.headers,this.urls=e.urls??{},this.fetchImpl=e.fetch??globalThis.fetch.bind(globalThis)}setHeaders(e){this.customHeaders=e}async listAgentDefinitions(){return(await this.request(F.GET,this.resolveUrl("agentDefinitions",$.agentDefinitions))).agent_definitions??[]}getAgentDefinition(e){return this.request(F.GET,this.apiUrl(`${$.agentDefinitions}/${encodeURIComponent(e)}`))}listTripOptions(){return this.request(F.GET,this.apiUrl($.tripOptions))}getDataset(){return this.request(F.GET,this.apiUrl($.demoDataset))}setDataset(e){return this.request(F.POST,this.apiUrl($.demoDataset),{dataset:e})}listAgents(e={}){const n=new URLSearchParams;e.status&&n.set("status",e.status),e.agentDefinitionRef&&n.set("agent_definition_ref",e.agentDefinitionRef);const a=n.toString()?`?${n.toString()}`:"";return this.request(F.GET,`${this.resolveUrl("agents",$.agents)}${a}`)}createAgent(e,n={}){var i,u;const a={agent_definition_ref:e},r=(i=n.invocationName)==null?void 0:i.trim(),l=(u=n.agentIntent)==null?void 0:u.trim();return r&&(a.invocation_name=r),l&&(a.agent_intent=l),this.request(F.POST,this.resolveUrl("agents",$.agents),a)}getAgent(e){return this.request(F.GET,this.resolveUrl("agent",`${$.agents}/${encodeURIComponent(e)}`,e))}getAgentChecklist(e){return this.request(F.GET,this.resolveUrl("agentChecklist",`${$.agents}/${encodeURIComponent(e)}/checklist`,e))}getAgentResources(e,n={}){const a=new URLSearchParams;n.pageNumber!==void 0&&a.set("page_number",String(n.pageNumber)),n.pageSize!==void 0&&a.set("page_size",String(n.pageSize)),n.type&&a.set("type",n.type);const r=a.toString(),l=this.resolveUrl("agentResources",`${$.agents}/${encodeURIComponent(e)}/resources`,e);return this.request(F.GET,r?`${l}?${r}`:l)}async listAllAgentResources(e){const n=$s;let a=1;const r=[];let l=Number.POSITIVE_INFINITY;for(;r.length<l;){const i=Rt(await this.getAgentResources(e,{pageNumber:a,pageSize:n}));if(l=i.totalRecords,i.resources.length===0||(r.push(...i.resources),r.length>=l))break;a+=1}return r}getAgentResourceHtml(e,n){return this.requestText(F.GET,this.resolveResourceHtmlUrl(e,n))}getAgentTimeline(e){return this.request(F.GET,this.resolveUrl("agentTimeline",`${$.agents}/${encodeURIComponent(e)}/agent-timeline`,e))}getAgentContext(e){return this.request(F.GET,this.apiUrl(`${$.agents}/${encodeURIComponent(e)}/context`))}cancelAgent(e){return this.request(F.POST,this.apiUrl(`${$.agents}/${encodeURIComponent(e)}/cancel`))}archiveAgent(e){return this.request(F.POST,this.apiUrl(`${$.agents}/${encodeURIComponent(e)}/archive`))}getConversation(e){return this.request(F.GET,this.resolveUrl("agentConversation",`${$.conversations}/${encodeURIComponent(e)}`,e))}async chat(e,n,a={}){const r=!!(a.uploadFiles&&a.uploadFiles.length>0),l=await this.fetchImpl(this.resolveUrl("agentChat",`${$.agents}/${encodeURIComponent(e)}/chat`,e),{method:F.POST,headers:{...this.customHeaders,...this.authHeaders(),Accept:oe.acceptEventStream,...r?{}:{"Content-Type":oe.contentTypeJson}},body:r?Vs(n,a.uploadFiles??[]):JSON.stringify(n),signal:a.signal});if(!l.ok)throw await this.toError(l);if(!l.body)throw new pe(l.status,null,"Chat response contained no stream body");return this.consumeSse(l.body,a.onEvent)}authHeaders(){return this.token?{Authorization:`Bearer ${this.token}`}:{}}apiUrl(e){return`${this.baseUrl}${Ms}${e}`}resolveUrl(e,n,a,r){const l=this.urls[e];if(!l)return this.apiUrl(n);let i=l;return a&&(i=i.replace(qs,encodeURIComponent(a))),r&&(i=i.replace(Gs,encodeURIComponent(r))),i}resolveResourceHtmlUrl(e,n){return this.urls.agentResourceHtml?this.resolveUrl("agentResourceHtml",`${$.agents}/${encodeURIComponent(e)}/resources/${encodeURIComponent(n)}`,e,n):this.urls.agentResources?`${this.resolveUrl("agentResources",`${$.agents}/${encodeURIComponent(e)}/resources`,e).replace(/\/$/,"")}/${encodeURIComponent(n)}`:this.apiUrl(`${$.agents}/${encodeURIComponent(e)}/resources/${encodeURIComponent(n)}`)}async request(e,n,a){const r=await this.fetchImpl(n,{method:e,headers:{...this.customHeaders,...this.authHeaders(),Accept:oe.acceptJson,...a===void 0?{}:{"Content-Type":oe.contentTypeJson}},...a===void 0?{}:{body:JSON.stringify(a)}});if(!r.ok)throw await this.toError(r);if(r.status!==204)return await r.json()}async requestText(e,n){const a=await this.fetchImpl(n,{method:e,headers:{...this.customHeaders,...this.authHeaders(),Accept:oe.acceptHtml}});if(!a.ok)throw await this.toError(a);return a.text()}async toError(e){let n=null;try{n=await e.json()}catch{}return new pe(e.status,n,`Agent service request failed (${e.status} ${e.statusText})`)}async consumeSse(e,n){const a=e.getReader(),r=new TextDecoder;let l="",i;const u=c=>{const{event:v,data:f}=Ws(c);if(f===null)return;if(v===Us.error){const p=_t(f);throw new pe(502,p,(p==null?void 0:p.message)??"Chat stream error")}const h=_t(f);h&&(i=h,n==null||n(h))};for(;;){const{done:c,value:v}=await a.read();if(c)break;l+=r.decode(v,{stream:!0});const f=l.split(`
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const s=require("react/jsx-runtime"),o=require("react"),J=require("classnames"),d=require("@arbor-education/design-system.components"),me=require("@arbor-education/ask-arbor-chat-panel"),A={"generating-a-response":"generating-a-response",hitl:"hitl",complete:"complete",failed:"failed"},B={"generating-a-response":"generating-a-response",hitl:"hitl",complete:"complete",failed:"failed"},H={briefing:"briefing",running:"running",stopped:"stopped",complete:"complete"},Z={agent:"agent",user:"user",system:"system"},re={document_html:"document_html",mis_record:"mis_record",workflow:"workflow",file:"file",link:"link"},gt={cancelled:"cancelled",archived:"archived"},Xe={in_progress:"in_progress",requires_attention:"requires_attention",available:"available"},V={[B.complete]:{label:"Complete",icon:"circle-check",color:"var(--color-semantic-success-600)"},[B.failed]:{label:"Failed",icon:"circle-x",color:"var(--color-semantic-destructive-600)"},[B.hitl]:{label:"Requires attention",icon:"triangle-alert",color:"var(--color-semantic-warning-600)"},[B["generating-a-response"]]:{label:"Generating a response",icon:"sparkles",color:"var(--color-brand-600)"}},He={[A["generating-a-response"]]:{status:A["generating-a-response"],title:"Active",dotColour:"green",statusIcon:{name:V["generating-a-response"].icon,color:V["generating-a-response"].color}},[A.hitl]:{status:A.hitl,title:"Requires attention",dotColour:"orange",statusIcon:{name:V.hitl.icon,color:V.hitl.color}},[A.complete]:{status:A.complete,title:"Complete",dotColour:"green",dotModifier:"grey-dark",statusIcon:{name:V.complete.icon,color:V.complete.color}},[A.failed]:{status:A.failed,title:"Failed",dotColour:"salmon",statusIcon:{name:V.failed.icon,color:V.failed.color}}},Zt=[A["generating-a-response"],A.hitl],es=[A.complete,A.failed],ts="m4",ss="1",yt="msg-opening",$e="Unable to load agent tasks. Please try again.",ns="Unable to load the resources for this agent",as="Unable to load this document. Please try again.",St="Unable to load the timeline for this agent",rs="Something went wrong. Please try again.",Nt="Unable to load agents. Please try again.",he="Loading tasks…",ht="Loading agents…",os="Task",is={[H.briefing]:"Briefing",[H.running]:"Working",[H.stopped]:"Stopped",[H.complete]:"Complete"},ls=[A["generating-a-response"],A.hitl,A.complete,A.failed],cs={[A["generating-a-response"]]:"Agents currently working on tasks for you.",[A.hitl]:"Agents that need your input before they can continue.",[A.complete]:"Agents that have finished their work.",[A.failed]:"Agents that failed or were stopped."},ds=()=>s.jsxs("svg",{className:"agent-view__empty-illustration",viewBox:"0 0 360 240",xmlns:"http://www.w3.org/2000/svg",role:"img","aria-label":"Preview of the agents board layout",children:[s.jsx("rect",{x:"0",y:"0",width:"360",height:"240",rx:"12",fill:"var(--color-grey-100)"}),s.jsx("rect",{x:"16",y:"16",width:"100",height:"208",rx:"8",fill:"var(--card-default-color-background)",stroke:"var(--card-default-color-border)"}),s.jsx("rect",{x:"130",y:"16",width:"100",height:"208",rx:"8",fill:"var(--card-default-color-background)",stroke:"var(--card-default-color-border)"}),s.jsx("rect",{x:"244",y:"16",width:"100",height:"100",rx:"8",fill:"var(--card-default-color-background)",stroke:"var(--card-default-color-border)"}),s.jsx("rect",{x:"244",y:"124",width:"100",height:"100",rx:"8",fill:"var(--card-default-color-background)",stroke:"var(--card-default-color-border)"}),s.jsx("rect",{x:"28",y:"52",width:"76",height:"36",rx:"6",fill:"var(--color-grey-050)"}),s.jsx("rect",{x:"28",y:"96",width:"76",height:"36",rx:"6",fill:"var(--color-grey-050)"}),s.jsx("rect",{x:"142",y:"52",width:"76",height:"36",rx:"6",fill:"var(--color-semantic-warning-050)"}),s.jsx("circle",{cx:"40",cy:"70",r:"4",fill:"var(--color-brand-600)"}),s.jsx("circle",{cx:"40",cy:"114",r:"4",fill:"var(--color-brand-600)"}),s.jsx("circle",{cx:"154",cy:"70",r:"4",fill:"var(--color-semantic-warning-600)"}),s.jsx("circle",{cx:"256",cy:"52",r:"4",fill:"var(--color-grey-400)"}),s.jsx("circle",{cx:"256",cy:"160",r:"4",fill:"var(--color-semantic-destructive-500)"})]}),us=({status:t})=>{const e=He[t];return e.statusIcon?s.jsx(d.Icon,{name:e.statusIcon.name,size:16,color:e.statusIcon.color,screenReaderText:e.title}):s.jsx(d.Dot,{colour:e.dotColour,label:e.title})},gs=()=>s.jsxs("section",{className:"agent-view__empty","aria-label":"About the agents board",children:[s.jsxs("div",{className:"agent-view__empty-content",children:[s.jsx(d.Heading,{level:4,children:"Your agents board"}),s.jsx("p",{className:"agent-view__empty-lead",children:"When you start an agent, it appears here so you can track progress at a glance. Agents move between columns as their status changes."}),s.jsx("ul",{className:"agent-view__empty-columns",children:ls.map(t=>{const e=He[t];return s.jsxs("li",{className:"agent-view__empty-column",children:[s.jsx("span",{className:"agent-view__empty-column-indicator",children:s.jsx(us,{status:t})}),s.jsxs("span",{className:"agent-view__empty-column-text",children:[s.jsx("span",{className:"agent-view__empty-column-title",children:e.title}),s.jsx("span",{className:"agent-view__empty-column-description",children:cs[t]})]})]},t)})}),s.jsxs("p",{className:"agent-view__empty-hint",children:["Use ",s.jsx("strong",{children:"Start an agent"})," above to begin."]})]}),s.jsx("div",{className:"agent-view__empty-visual",children:s.jsx(ds,{})})]}),hs=(t,e)=>({...t,...e.length>0?{children:e}:{}}),jt=t=>{const e=[],n=[];for(const a of t){const r=a.children?jt(a.children):{needsInput:[],tasks:[]};if(e.push(...r.needsInput),a.status===B.hitl){e.push({...a,children:void 0});continue}n.push(hs(a,r.tasks))}return{needsInput:e,tasks:n}},ps=t=>t.map((e,n)=>({item:e,index:n})).sort((e,n)=>{const a=e.item.status===B.hitl,r=n.item.status===B.hitl;return a!==r?a?-1:1:e.index-n.index}).map(({item:e})=>e),Qe=2,ms=t=>{if(!t)return{canScrollUp:!1,canScrollDown:!1};const e=t.scrollHeight-t.clientHeight;return e<=Qe?{canScrollUp:!1,canScrollDown:!1}:{canScrollUp:t.scrollTop>Qe,canScrollDown:t.scrollTop<e-Qe}},_s=(t,e)=>{if(!t||!e)return null;const n=t.getBoundingClientRect(),a=e.getBoundingClientRect();return{top:a.top-n.top,left:a.left-n.left,width:a.width,height:a.height}},ze=({children:t,className:e,contentClassName:n,scrollSelector:a,style:r,"aria-label":l})=>{const i=o.useRef(null),u=o.useRef(null),[c,v]=o.useState(!1),[f,h]=o.useState(!1),[p,O]=o.useState(null),w=()=>{var y;return a?((y=i.current)==null?void 0:y.querySelector(a))??null:u.current},j=()=>{const y=w(),k=ms(y);if(v(_=>_===k.canScrollUp?_:k.canScrollUp),h(_=>_===k.canScrollDown?_:k.canScrollDown),a){const _=_s(i.current,y);O(C=>(C==null?void 0:C.top)===(_==null?void 0:_.top)&&(C==null?void 0:C.left)===(_==null?void 0:_.left)&&(C==null?void 0:C.width)===(_==null?void 0:_.width)&&(C==null?void 0:C.height)===(_==null?void 0:_.height)?C:_)}else O(_=>_===null?_:null)};o.useLayoutEffect(()=>{j()}),o.useEffect(()=>{const y=i.current;if(!y)return;let k=null,_=null;const C=()=>{k==null||k.removeEventListener("scroll",j),_==null||_.disconnect(),_=null,k=null},R=M=>{if(M===k){j();return}if(C(),k=M,!k){j();return}k.addEventListener("scroll",j,{passive:!0}),_=new ResizeObserver(()=>j()),_.observe(k),k.firstElementChild instanceof HTMLElement&&_.observe(k.firstElementChild),j()};R(w());const T=new MutationObserver(()=>{R(w())});return T.observe(y,{childList:!0,subtree:!0,characterData:!0}),window.addEventListener("resize",j),()=>{window.removeEventListener("resize",j),T.disconnect(),C()}},[a]);const N=y=>{const k=w();if(!k)return;const _=Math.max(k.clientHeight*.75,120);k.scrollBy({top:y==="up"?-_:_,behavior:"smooth"})},P=s.jsxs(s.Fragment,{children:[c&&s.jsxs(s.Fragment,{children:[s.jsx("div",{className:"scrollable-region__fade scrollable-region__fade--top","aria-hidden":"true"}),s.jsx("button",{type:"button",className:"scrollable-region__edge scrollable-region__edge--top","aria-label":"Scroll up",onClick:()=>N("up"),children:s.jsx(d.Icon,{name:"chevron-up",size:16,color:"currentColor"})})]}),f&&s.jsxs(s.Fragment,{children:[s.jsx("div",{className:"scrollable-region__fade scrollable-region__fade--bottom","aria-hidden":"true"}),s.jsx("button",{type:"button",className:"scrollable-region__edge scrollable-region__edge--bottom","aria-label":"Scroll down",onClick:()=>N("down"),children:s.jsx(d.Icon,{name:"chevron-down",size:16,color:"currentColor"})})]})]});return s.jsx("div",{ref:i,className:J("scrollable-region",e),style:r,"aria-label":l,children:a?s.jsxs(s.Fragment,{children:[t,p&&(c||f)&&s.jsx("div",{className:"scrollable-region__overlay",style:{top:p.top,left:p.left,width:p.width,height:p.height},children:P})]}):s.jsxs(s.Fragment,{children:[P,s.jsx("div",{ref:u,className:J("scrollable-region__viewport",n),children:t})]})})},fs=48,vs=({checklist:t})=>{const e=o.useRef(null),n=o.useRef(!1);return o.useLayoutEffect(()=>{const a=e.current;if(!a)return;const r=a.scrollHeight-a.scrollTop-a.clientHeight;(!n.current||r<=fs)&&(a.scrollTop=a.scrollHeight,n.current=!0)},[t]),t.length===0?s.jsx("p",{className:"agent-view__progress-empty",children:"No tasks to display."}):s.jsx(ze,{className:"agent-view__progress-scroll",scrollSelector:".agent-view__progress-list",children:s.jsx("ul",{ref:e,className:"agent-view__progress-list","aria-label":"Agent tasks",children:ps(t).map(a=>{const r=V[a.status];return s.jsxs("li",{className:J("agent-view__progress-item",`agent-view__progress-item--${a.status.replace(/_/g,"-")}`),children:[s.jsx(d.Icon,{name:r.icon,size:16,color:r.color,screenReaderText:`${r.label}:`}),s.jsxs("div",{className:"agent-view__progress-item-content",children:[s.jsx("span",{className:"agent-view__progress-label",children:a.task}),a.status!==B.complete&&s.jsx("span",{className:"agent-view__progress-description",children:a.description})]})]},a.task)})})})},ws=({prompts:t,classNamePrefix:e="agent-workspace",onSelect:n})=>t.length===0?null:s.jsx("div",{className:`${e}__chips`,children:t.map(a=>s.jsx("button",{type:"button",className:`${e}__chip`,onClick:()=>n(a),children:a},a))});class xs{constructor(e,n){this.connector=e,this.canSend=n.canSend,this.onTurn=n.onTurn,this.onAwaitingChange=n.onAwaitingChange}get canRate(){return!1}get canLoadHistory(){return!1}get canListInteractions(){return!1}get canSendNotification(){return!1}get ratingPopupUrls(){return{}}async sendMessage(e){var n,a;if(!this.canSend())return null;(n=this.onAwaitingChange)==null||n.call(this,!0);try{const r=await this.connector.sendMessage(e.userMessage,e.uploadFiles);return this.onTurn(r),{id:r.message.id,text:r.message.text,type:me.CHAT_RESPONSE_TYPE_AGENT,...r.message.followUpPrompts?{followUpPrompts:r.message.followUpPrompts}:{}}}catch{return{id:`error-${Date.now()}`,text:rs,type:me.CHAT_RESPONSE_TYPE_ERROR}}finally{(a=this.onAwaitingChange)==null||a.call(this,!1)}}async loadHistory(e){return null}async listInteractions(){return null}async rateMessage(e){}async sendNotification(e){return!1}}const ks=({connector:t,phase:e,chatHistory:n,chatSessionKey:a,startQuery:r,clarificationMessage:l,enableUpload:i=!1,onTurn:u,onAwaitingChange:c,onClarificationPrompt:v,onDismissClarification:f})=>{const h=o.useMemo(()=>new xs(t,{canSend:()=>e===H.running,onTurn:u,onAwaitingChange:c}),[t,e,u,c]),p=e!==H.running,O=e===H.running;return s.jsxs("section",{className:"agent-workspace__chat-body","aria-label":"Chat",children:[l&&s.jsxs("div",{className:"agent-workspace__clarification",role:"region","aria-label":"Agent question",children:[s.jsx("p",{className:"agent-workspace__clarification-text",children:l.text}),l.followUpPrompts&&s.jsx(ws,{prompts:l.followUpPrompts,onSelect:v}),s.jsx("button",{type:"button",className:"agent-workspace__clarification-dismiss",onClick:f,children:"Dismiss"})]}),s.jsx("div",{className:"agent-workspace__ask-arbor",children:s.jsx(ze,{scrollSelector:".chat-panel-message-list",children:s.jsx(me.ChatPanel,{connector:h,chatHistory:n,startQuery:r,lockConversation:p,enableUpload:i,speechEnabled:O,speechLanguage:"en-GB",speechSubmissionDelay:1e3,slashMenuItems:[],menuContent:[],introHeading:"Message your agent",introBody:"Ask questions, share trip details, or paste a link. The agent will update the checklist as it works.",placeholder:O?"Message the agent, paste a link, or attach a file…":"The agent is not accepting messages."},a)})}),e===H.stopped&&s.jsxs("div",{className:"agent-workspace__notice",role:"status",children:[s.jsx(d.Icon,{name:"circle-alert",size:16,color:"var(--color-semantic-warning-600)"}),s.jsx("span",{children:"You stopped the agent. Its progress is saved in the checklist on the left."})]}),e===H.complete&&s.jsxs("div",{className:"agent-workspace__notice",role:"status",children:[s.jsx(d.Icon,{name:"party-popper",size:16,color:"var(--color-semantic-success-600)"}),s.jsx("span",{children:"The agent has finished."})]})]})},bt=({item:t,depth:e,canRequestInput:n,onAttentionItemClick:a})=>{const r=V[t.status],l=t.status.replace(/_/g,"-"),i=t.status===B.hitl&&n&&a,u=s.jsxs("div",{className:"agent-workspace__task-row",children:[s.jsx(d.Icon,{name:r.icon,size:16,color:r.color,screenReaderText:`${r.label}:`}),s.jsxs("div",{className:"agent-workspace__task-content",children:[s.jsx("span",{className:"agent-workspace__task-label",children:t.task}),t.status!==B.complete&&t.description&&s.jsx("span",{className:"agent-workspace__task-description",children:t.description})]})]});return s.jsxs("li",{className:J("agent-workspace__task",`agent-workspace__task--${l}`,{"agent-workspace__task--child":e>0}),children:[i?s.jsx("button",{type:"button",className:"agent-workspace__task-button","aria-label":`Provide input for ${t.task}`,onClick:()=>a(t),children:u}):u,t.children&&t.children.length>0&&s.jsx("ul",{className:"agent-workspace__task-children",children:t.children.map(c=>s.jsx(bt,{item:c,depth:e+1,canRequestInput:n,onAttentionItemClick:a},c.task))})]})},pt=({items:t,ariaLabel:e,canRequestInput:n,onAttentionItemClick:a})=>s.jsx("ul",{className:"agent-workspace__task-list","aria-label":e,children:t.map(r=>s.jsx(bt,{item:r,depth:0,canRequestInput:n,onAttentionItemClick:a},r.task))}),ys=({checklist:t,isLoading:e,error:n,phase:a,canRequestInput:r,onAttentionItemClick:l})=>{const i=o.useMemo(()=>t?jt(t):null,[t]);return s.jsxs("section",{className:"agent-workspace__panel agent-workspace__panel--checklist","aria-label":"Checklist",children:[s.jsx("div",{className:"agent-workspace__panel-header",children:s.jsx(d.Heading,{level:4,children:"Checklist"})}),s.jsx("div",{className:"agent-workspace__panel-body","aria-live":"polite",children:s.jsxs(ze,{children:[e&&s.jsxs("div",{className:"agent-workspace__loading",children:[s.jsx(d.Icon,{name:"loader",size:16,color:"var(--color-brand-600)",className:"agent-workspace__task-icon--spinning",screenReaderText:he}),s.jsx("span",{children:he})]}),!e&&n&&s.jsx("p",{className:"agent-workspace__error",role:"alert",children:n}),!e&&!n&&i&&s.jsxs(s.Fragment,{children:[i.needsInput.length>0&&s.jsxs("div",{className:"agent-workspace__task-group",children:[s.jsx("p",{className:"agent-workspace__task-group-label",children:"Needs your input"}),s.jsx(pt,{items:i.needsInput,ariaLabel:"Tasks needing your input",canRequestInput:r,onAttentionItemClick:l})]}),i.tasks.length>0&&s.jsxs("div",{className:J("agent-workspace__task-group",{"agent-workspace__task-group--following":i.needsInput.length>0}),children:[i.needsInput.length>0&&s.jsx("p",{className:"agent-workspace__task-group-label",children:"Other tasks"}),s.jsx(pt,{items:i.tasks,ariaLabel:"Agent tasks",canRequestInput:r,onAttentionItemClick:l})]})]}),!e&&!n&&(!i||i.needsInput.length===0&&i.tasks.length===0)&&s.jsx("p",{className:"agent-workspace__empty",children:a===H.briefing?"Tasks will appear here once the agent starts.":"No tasks to display."})]})})]})},Ss=({resource:t,html:e,isLoading:n,error:a,onClose:r})=>{o.useEffect(()=>{if(!t)return;const i=d.SlideoverUtils.removeSlideover;return d.SlideoverUtils.removeSlideover=()=>{i(),r()},()=>{d.SlideoverUtils.removeSlideover=i}},[t,r]),o.useEffect(()=>{if(!t)return;const i=u=>{u.key==="Escape"&&d.SlideoverUtils.removeSlideover()};return window.addEventListener("keydown",i),()=>window.removeEventListener("keydown",i)},[t]);const l=o.useMemo(()=>t?[{centerHeaderText:!1,children:s.jsxs("div",{className:"resource-preview-slideover__body",children:[n&&s.jsxs("div",{className:"resource-preview-slideover__status",children:[s.jsx(d.Icon,{name:"loader",size:16,color:"var(--color-brand-600)",className:"agent-workspace__task-icon--spinning",screenReaderText:"Loading document"}),s.jsx("span",{children:"Loading document…"})]}),!n&&a&&s.jsx("p",{className:"resource-preview-slideover__error",role:"alert",children:a}),!n&&!a&&e!==null&&s.jsx("iframe",{className:"resource-preview-slideover__frame",title:t.title,sandbox:"",srcDoc:e})]})}]:[],[t,e,n,a]);return s.jsx("div",{className:"resource-preview-slideover",children:s.jsx(d.SlideoverManager,{slideovers:l})})},Ns={[re.mis_record]:{icon:"table",label:"Arbor MIS",color:"var(--color-brand-600)"},[re.document_html]:{icon:"file",label:"Document",color:"var(--color-semantic-caution-800)"},[re.file]:{icon:"file",label:"File",color:"var(--color-semantic-caution-800)"},[re.workflow]:{icon:"list-tree",label:"Workflow",color:"var(--color-semantic-warning-700)"},[re.link]:{icon:"link",label:"Link",color:"var(--color-semantic-info-700)"}},js=({resources:t,isLoading:e=!1,error:n=null,onOpenResource:a})=>s.jsxs("section",{className:"agent-workspace__panel agent-workspace__panel--documents","aria-label":"Resources",children:[s.jsxs("div",{className:"agent-workspace__panel-header",children:[s.jsx(d.Heading,{level:4,children:"Resources"}),s.jsx("span",{className:"agent-workspace__panel-count",children:t.length})]}),s.jsx("div",{className:"agent-workspace__panel-body","aria-live":"polite",children:s.jsxs(ze,{children:[e&&s.jsxs("div",{className:"agent-workspace__loading",children:[s.jsx(d.Icon,{name:"loader",size:16,color:"var(--color-brand-600)",className:"agent-workspace__task-icon--spinning",screenReaderText:"Loading resources"}),s.jsx("span",{children:"Loading resources…"})]}),!e&&n&&s.jsx("p",{className:"agent-workspace__error",role:"alert",children:n}),!e&&!n&&t.length>0&&s.jsx("ul",{className:"agent-workspace__resource-list","aria-label":"Agent resources",children:t.map(r=>{const l=Ns[r.type],i=r.misRecordUrl;return s.jsx("li",{className:"agent-workspace__resource",children:i?s.jsx("a",{className:"agent-workspace__resource-card",href:i,target:"_blank",rel:"noreferrer",onClick:u=>{u.preventDefault(),a(r)},children:s.jsx(mt,{resource:r,config:l,external:!0})}):s.jsx("button",{type:"button",className:"agent-workspace__resource-card",onClick:()=>a(r),children:s.jsx(mt,{resource:r,config:l})})},r.id)})}),!e&&!n&&t.length===0&&s.jsx("p",{className:"agent-workspace__empty",children:"No resources yet."})]})})]}),mt=({resource:t,config:e,external:n=!1})=>s.jsxs(s.Fragment,{children:[s.jsx("span",{className:`agent-workspace__resource-icon agent-workspace__resource-icon--${t.type}`,children:s.jsx(d.Icon,{name:e.icon,size:16,color:e.color,screenReaderText:`${e.label}:`})}),s.jsx("span",{className:"agent-workspace__resource-content",children:s.jsxs("span",{className:"agent-workspace__resource-top",children:[s.jsx("span",{className:"agent-workspace__resource-name",children:t.title}),s.jsx("span",{className:`agent-workspace__resource-badge agent-workspace__resource-badge--${t.type}`,children:e.label})]})}),n&&s.jsx(d.Icon,{name:"external-link",size:12,color:"var(--color-grey-500)",screenReaderText:"Opens in a new tab",className:"agent-workspace__resource-open"})]}),Be=t=>{const e=Date.parse(t);return Number.isFinite(e)?e:0},bs=new Intl.DateTimeFormat("en-GB",{day:"numeric",month:"long",year:"numeric",hour:"numeric",minute:"2-digit"}),Ze=t=>{const e=new Date(t);return Number.isFinite(e.getTime())?bs.format(e):t},Ue=t=>t.replace(/[A-Za-z0-9]+(?:[_-][A-Za-z0-9]+)+/g,e=>e.split(/[_-]/).map(n=>n.charAt(0).toUpperCase()+n.slice(1).toLowerCase()).join(" ")),Ne=(t,e)=>e<=1?0:t/(e-1)*100,At=t=>Math.max(t,0)+2,As=t=>t+1,Cs=(t,e)=>{if(e.length===0)return 50;const n=At(e.length),a=Ne(1,n),r=Ne(e.length,n),l=e.map(f=>Be(f.timestamp)),i=Math.min(...l),u=Math.max(...l);if(u<=i)return a;const c=(Be(t.timestamp)-i)/(u-i),v=Math.min(1,Math.max(0,c));return a+v*(r-a)},Es=8,Ts=20,Rs=(t,e=Es,n=Ts)=>{const a=new Map;if(t.length===0)return a;const r=[...t].sort((i,u)=>i.leftPercent-u.leftPercent||i.timestampMs-u.timestampMs||i.id.localeCompare(u.id)),l=[];for(const i of r){const u=l[l.length-1];u&&i.leftPercent-u[u.length-1].leftPercent<e?u.push(i):l.push([i])}for(const i of l){const u=[...i].sort((v,f)=>v.timestampMs-f.timestampMs||v.id.localeCompare(f.id)),c=(u.length-1)/2;u.forEach((v,f)=>{a.set(v.id,(f-c)*n)})}return a},De=(t,e=0)=>({left:`calc(${t/100} * (100% - var(--agent-timeline-node-size)) + (var(--agent-timeline-node-size) / 2) + ${e}px)`,transform:"translateX(-50%)"}),Is=t=>t.type!=="message-sent",Os=({timeline:t,isLoading:e,error:n,onOpenChatSession:a})=>{const r=((t==null?void 0:t.actionLog)??[]).filter(Is),l=(t==null?void 0:t.chatSessions)??[],i=!e&&!n&&r.length===0&&l.length===0,u=At(r.length),c=r.map((h,p)=>({id:`action-${h.timestamp}-${p}`,leftPercent:Ne(As(p),u),timestampMs:Be(h.timestamp)})),v=l.map(h=>({id:h.sessionId,leftPercent:Cs(h,r),timestampMs:Be(h.timestamp)})),f=Rs([...c,...v]);return s.jsxs("section",{className:"agent-workspace__timeline","aria-label":"Agent timeline",children:[e&&s.jsx("p",{className:"agent-workspace__timeline-status",role:"status",children:"Loading timeline…"}),n&&s.jsx("p",{className:"agent-workspace__timeline-status",role:"alert",children:n||St}),i&&s.jsx("p",{className:"agent-workspace__timeline-status",role:"status",children:"No timeline activity yet."}),!e&&!n&&!i&&s.jsxs("div",{className:"agent-timeline",children:[s.jsx("div",{className:"agent-timeline__track","aria-hidden":"true"}),s.jsxs("div",{className:"agent-timeline__station agent-timeline__station--terminus",style:De(Ne(0,u)),children:[s.jsx("span",{className:"agent-timeline__station-node agent-timeline__station-node--terminus","aria-hidden":"true",children:s.jsx(d.Icon,{name:"arrow-right-from-line",size:16,color:"currentColor"})}),s.jsx("span",{className:"agent-timeline__terminus-label",children:"Start"})]}),r.map((h,p)=>{const O=`action-${h.timestamp}-${p}`,w=c[p].leftPercent,j=h.type==="checklist-updated",N=h.type==="status-transition",P=j?"checklist":N?"status":"note";return s.jsxs("div",{className:`agent-timeline__station agent-timeline__station--${P}`,style:De(w,f.get(O)??0),children:[s.jsxs("button",{type:"button",className:`agent-timeline__station-node agent-timeline__station-node--${P}`,"aria-label":`${Ue(h.type)}: ${Ue(h.entry)}`,children:[j&&s.jsx(d.Icon,{name:"check-solid",size:16,color:"currentColor"}),N&&s.jsx(d.Icon,{name:"iteration-ccw",size:16,color:"currentColor"})]}),s.jsxs("div",{className:"agent-timeline__pill",role:"tooltip",children:[s.jsx("strong",{className:"agent-timeline__pill-type",children:Ue(h.type)}),s.jsx("span",{className:"agent-timeline__pill-entry",children:Ue(h.entry)}),s.jsx("span",{className:"agent-timeline__pill-entry",children:Ze(h.timestamp)})]})]},O)}),s.jsxs("div",{className:"agent-timeline__station agent-timeline__station--terminus",style:De(Ne(u-1,u)),children:[s.jsx("span",{className:"agent-timeline__station-node agent-timeline__station-node--terminus","aria-hidden":"true",children:s.jsx(d.Icon,{name:"flag",size:16,color:"currentColor"})}),s.jsx("span",{className:"agent-timeline__terminus-label",children:"Finish"})]}),l.map((h,p)=>{const O=v[p].leftPercent;return s.jsxs("div",{className:"agent-timeline__chat-station",style:De(O,f.get(h.sessionId)??0),children:[s.jsx("button",{type:"button",className:"agent-timeline__chat-node","aria-label":`Open chat session from ${Ze(h.timestamp)}`,onClick:()=>a(h.sessionId),children:s.jsx(d.Icon,{name:"sparkles",size:16,color:"currentColor"})}),s.jsxs("div",{className:"agent-timeline__pill",role:"tooltip",children:[s.jsx("strong",{className:"agent-timeline__pill-type",children:"Chat session"}),s.jsx("span",{className:"agent-timeline__pill-entry",children:Ze(h.timestamp)})]})]},h.sessionId)})]})]})},Ps=["I'll get the details and come back to you","Skip this for now"],Ls=t=>{var n;const e=(n=t.prompt)!=null&&n.trim()?t.prompt.trim():`I need a bit more from you on "${t.task}". ${t.description} What can you tell me?`;return{id:`clarification-${Date.now()}`,author:Z.agent,text:e,followUpPrompts:t.clarificationPrompts??Ps}},ge=t=>({id:t.id,text:t.text,type:t.author===Z.user?me.CHAT_RESPONSE_TYPE_USER:t.author===Z.system?me.CHAT_RESPONSE_TYPE_INFO:me.CHAT_RESPONSE_TYPE_AGENT,...t.followUpPrompts?{followUpPrompts:t.followUpPrompts}:{}});class pe extends Error{constructor(e,n,a){super(a??`Agent service request failed (${e})`),this.name="AgentServiceError",this.status=e,this.detail=n}}const Ms="/api/v1",$={agentDefinitions:"/agent-definitions",agents:"/agents",conversations:"/conversations",tripOptions:"/trip-options",demoDataset:"/demo/dataset"},F={GET:"GET",POST:"POST"},Us={error:"error"},Ds={user:"user"},oe={acceptJson:"application/json",acceptHtml:"text/html",acceptEventStream:"text/event-stream",contentTypeJson:"application/json",arborApplicationUrl:"X-Arbor-Application-Url"},$s=100,Ct=t=>{switch(t){case gt.cancelled:return A.failed;case gt.archived:return A.complete;case A.hitl:case A.complete:case A.failed:case A["generating-a-response"]:return t;default:return A["generating-a-response"]}},Et=t=>{switch(t){case Xe.requires_attention:return B.hitl;case Xe.in_progress:case Xe.available:return B["generating-a-response"];case B.failed:case B.complete:case B.hitl:case B["generating-a-response"]:return t;default:return B["generating-a-response"]}},nt=t=>({ref:t.name,display_name:t.display_name,agent_intent:t.agent_intent??"",description:t.description}),Hs=t=>({id:t.id,name:t.name,...t.has_run_before?{hasRunBefore:t.has_run_before}:{}}),Bs=new Set(Object.values(re)),zs=t=>Bs.has(t)?t:re.document_html,Tt=t=>({id:t.id,type:zs(t.type),title:t.title,createdDatetime:t.created_datetime,lastUpdatedDatetime:t.last_updated_datetime,misRecordUrl:t.mis_record_url}),Rt=t=>({resources:t.resources.map(Tt),pageNumber:t.page_number,pageSize:t.page_size,totalRecords:t.total_records}),It=t=>({actionLog:(t.action_log??[]).map(e=>({timestamp:e.timestamp,type:e.type,entry:e.entry,origin:e.origin})),chatSessions:(t.chat_sessions??[]).map(e=>({sessionId:e.session_id,timestamp:e.timestamp}))}),tt=t=>{var n;const e=t.invocation_id??t.id;return{id:t.id,invocation_id:e,agent_definition_ref:t.agent_definition_ref,...t.agent_intent?{agent_intent:t.agent_intent}:{},invocation_name:((n=t.invocation_name)==null?void 0:n.trim())||t.agent_definition_ref,application_id:t.application_id,...t.application_name?{application_name:t.application_name}:{},created_by:t.created_by,status:Ct(t.status),context_ref:t.context_ref??null,checklist_ref:t.checklist_ref??null}},at=t=>{var e;return{task:t.item??t.task??t.name??t.label??os,status:Et(t.status),description:t.description??"",...t.prompt?{prompt:t.prompt}:{},...(e=t.follow_up_prompts)!=null&&e.length?{clarificationPrompts:t.follow_up_prompts}:{}}},Fs=t=>Array.isArray(t)?t:t.checklist_items??t.checklist??t.items??[],rt=(t,e,n)=>{var l;const a=!Array.isArray(e)&&(e.opening_message||(l=e.opening_follow_up_prompts)!=null&&l.length)?e:n,r=a?je(a):void 0;return{invocation_id:t,checklist:Fs(e).map(at),...r?{openingMessage:r}:{}}},Ot=(t,e)=>{const n=je(e);return{invocation_id:e.invocation_id??t,checklist:(e.checklist_items??[]).map(at),...n?{openingMessage:n}:{}}},je=t=>{var n,a;const e=(n=t.opening_message)==null?void 0:n.trim();if(e)return{id:yt,author:Z.agent,text:e,...(a=t.opening_follow_up_prompts)!=null&&a.length?{followUpPrompts:t.opening_follow_up_prompts}:{}}},Pt=t=>t.filter(e=>(e.role==="user"||e.role==="assistant")&&typeof e.content=="string"&&e.content.length>0&&e.message_type!=="tool_request").map(e=>({id:e.message_id,author:e.role==="user"?Z.user:Z.agent,text:e.content})),qs=/:invocationId\b/g,Gs=/:resourceId\b/g,Js=t=>t.trim().replace(/^Bearer\s+/i,""),Ks=t=>t.endsWith("/")?t.slice(0,-1):t;class Fe{constructor(e){var a;this.baseUrl=Ks(e.baseUrl??"");const n=(a=e.token)==null?void 0:a.trim();this.token=n?Js(n):void 0,this.customHeaders=e.headers,this.urls=e.urls??{},this.fetchImpl=e.fetch??globalThis.fetch.bind(globalThis)}setHeaders(e){this.customHeaders=e}async listAgentDefinitions(){return(await this.request(F.GET,this.resolveUrl("agentDefinitions",$.agentDefinitions))).agent_definitions??[]}getAgentDefinition(e){return this.request(F.GET,this.apiUrl(`${$.agentDefinitions}/${encodeURIComponent(e)}`))}listTripOptions(){return this.request(F.GET,this.apiUrl($.tripOptions))}getDataset(){return this.request(F.GET,this.apiUrl($.demoDataset))}setDataset(e){return this.request(F.POST,this.apiUrl($.demoDataset),{dataset:e})}listAgents(e={}){const n=new URLSearchParams;e.status&&n.set("status",e.status),e.agentDefinitionRef&&n.set("agent_definition_ref",e.agentDefinitionRef);const a=n.toString()?`?${n.toString()}`:"";return this.request(F.GET,`${this.resolveUrl("agents",$.agents)}${a}`)}createAgent(e,n={}){var i,u;const a={agent_definition_ref:e},r=(i=n.invocationName)==null?void 0:i.trim(),l=(u=n.agentIntent)==null?void 0:u.trim();return r&&(a.invocation_name=r),l&&(a.agent_intent=l),this.request(F.POST,this.resolveUrl("agents",$.agents),a)}getAgent(e){return this.request(F.GET,this.resolveUrl("agent",`${$.agents}/${encodeURIComponent(e)}`,e))}getAgentChecklist(e){return this.request(F.GET,this.resolveUrl("agentChecklist",`${$.agents}/${encodeURIComponent(e)}/checklist`,e))}getAgentResources(e,n={}){const a=new URLSearchParams;n.pageNumber!==void 0&&a.set("page_number",String(n.pageNumber)),n.pageSize!==void 0&&a.set("page_size",String(n.pageSize)),n.type&&a.set("type",n.type);const r=a.toString(),l=this.resolveUrl("agentResources",`${$.agents}/${encodeURIComponent(e)}/resources`,e);return this.request(F.GET,r?`${l}?${r}`:l)}async listAllAgentResources(e){const n=$s;let a=1;const r=[];let l=Number.POSITIVE_INFINITY;for(;r.length<l;){const i=Rt(await this.getAgentResources(e,{pageNumber:a,pageSize:n}));if(l=i.totalRecords,i.resources.length===0||(r.push(...i.resources),r.length>=l))break;a+=1}return r}getAgentResourceHtml(e,n){return this.requestText(F.GET,this.resolveResourceHtmlUrl(e,n))}getAgentTimeline(e){return this.request(F.GET,this.resolveUrl("agentTimeline",`${$.agents}/${encodeURIComponent(e)}/agent-timeline`,e))}getAgentContext(e){return this.request(F.GET,this.apiUrl(`${$.agents}/${encodeURIComponent(e)}/context`))}cancelAgent(e){return this.request(F.POST,this.apiUrl(`${$.agents}/${encodeURIComponent(e)}/cancel`))}archiveAgent(e){return this.request(F.POST,this.apiUrl(`${$.agents}/${encodeURIComponent(e)}/archive`))}getConversation(e){return this.request(F.GET,this.resolveUrl("agentConversation",`${$.conversations}/${encodeURIComponent(e)}`,e))}async chat(e,n,a={}){const r=!!(a.uploadFiles&&a.uploadFiles.length>0),l=await this.fetchImpl(this.resolveUrl("agentChat",`${$.agents}/${encodeURIComponent(e)}/chat`,e),{method:F.POST,headers:{...this.customHeaders,...this.authHeaders(),Accept:oe.acceptEventStream,...r?{}:{"Content-Type":oe.contentTypeJson}},body:r?Vs(n,a.uploadFiles??[]):JSON.stringify(n),signal:a.signal});if(!l.ok)throw await this.toError(l);if(!l.body)throw new pe(l.status,null,"Chat response contained no stream body");return this.consumeSse(l.body,a.onEvent)}authHeaders(){return this.token?{Authorization:`Bearer ${this.token}`}:{}}apiUrl(e){return`${this.baseUrl}${Ms}${e}`}resolveUrl(e,n,a,r){const l=this.urls[e];if(!l)return this.apiUrl(n);let i=l;return a&&(i=i.replace(qs,encodeURIComponent(a))),r&&(i=i.replace(Gs,encodeURIComponent(r))),i}resolveResourceHtmlUrl(e,n){return this.urls.agentResourceHtml?this.resolveUrl("agentResourceHtml",`${$.agents}/${encodeURIComponent(e)}/resources/${encodeURIComponent(n)}`,e,n):this.urls.agentResources?`${this.resolveUrl("agentResources",`${$.agents}/${encodeURIComponent(e)}/resources`,e).replace(/\/$/,"")}/${encodeURIComponent(n)}`:this.apiUrl(`${$.agents}/${encodeURIComponent(e)}/resources/${encodeURIComponent(n)}`)}async request(e,n,a){const r=await this.fetchImpl(n,{method:e,headers:{...this.customHeaders,...this.authHeaders(),Accept:oe.acceptJson,...a===void 0?{}:{"Content-Type":oe.contentTypeJson}},...a===void 0?{}:{body:JSON.stringify(a)}});if(!r.ok)throw await this.toError(r);if(r.status!==204)return await r.json()}async requestText(e,n){const a=await this.fetchImpl(n,{method:e,headers:{...this.customHeaders,...this.authHeaders(),Accept:oe.acceptHtml}});if(!a.ok)throw await this.toError(a);return a.text()}async toError(e){let n=null;try{n=await e.json()}catch{}return new pe(e.status,n,`Agent service request failed (${e.status} ${e.statusText})`)}async consumeSse(e,n){const a=e.getReader(),r=new TextDecoder;let l="",i;const u=c=>{const{event:v,data:f}=Ws(c);if(f===null)return;if(v===Us.error){const p=_t(f);throw new pe(502,p,(p==null?void 0:p.message)??"Chat stream error")}const h=_t(f);h&&(i=h,n==null||n(h))};for(;;){const{done:c,value:v}=await a.read();if(c)break;l+=r.decode(v,{stream:!0});const f=l.split(`
2
2
 
3
3
  `);l=f.pop()??"";for(const h of f)u(h)}if(l.trim()&&u(l),!i)throw new pe(502,null,"Chat stream ended without any events");return i}}const Ws=t=>{let e=null;const n=[];for(const a of t.split(`
4
4
  `)){const r=a.trimEnd();r.startsWith("event:")?e=r.slice(6).trim():r.startsWith("data:")&&n.push(r.slice(5).trim())}return{event:e,data:n.length>0?n.join(`
package/dist/index.d.ts CHANGED
@@ -348,6 +348,7 @@ declare type ApiChecklistEndpointResponse = ApiChecklistItem[] | {
348
348
 
349
349
  export declare type ApiChecklistItem = {
350
350
  id?: string;
351
+ item?: string;
351
352
  task?: string;
352
353
  name?: string;
353
354
  label?: string;
package/dist/index.js CHANGED
@@ -1241,7 +1241,7 @@ const Wn = "/api/v1", B = {
1241
1241
  }, Ht = (t) => {
1242
1242
  var e;
1243
1243
  return {
1244
- task: t.task ?? t.name ?? t.label ?? fn,
1244
+ task: t.item ?? t.task ?? t.name ?? t.label ?? fn,
1245
1245
  status: Qn(t.status),
1246
1246
  description: t.description ?? "",
1247
1247
  ...t.prompt ? { prompt: t.prompt } : {},
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- .agent-view-frontend{--page-heading-spacing-gap: 0px;--modal-header-spacing-padding: 0px}.agent-workspace{--page-heading-spacing-gap: 0px}.scrollable-region{position:relative;isolation:isolate;display:flex;flex:1;flex-direction:column;min-height:0;min-width:0}.scrollable-region__viewport{flex:1;min-height:0;overflow:hidden auto}.scrollable-region__overlay{position:absolute;z-index:2;pointer-events:none}.scrollable-region__overlay .scrollable-region__edge{pointer-events:auto}.scrollable-region__fade{position:absolute;right:0;left:0;z-index:1;height:40px;pointer-events:none}.scrollable-region__fade--top{top:0;background:linear-gradient(to bottom,var(--color-white, #ffffff) 0%,rgba(255,255,255,0) 100%)}.scrollable-region__fade--bottom{bottom:0;background:linear-gradient(to top,var(--color-white, #ffffff) 0%,rgba(255,255,255,0) 100%)}.scrollable-region__edge{position:absolute;left:50%;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:36px;height:28px;padding:0;color:var(--color-grey-600, #6b6b7b);cursor:pointer;background-color:var(--color-white, #ffffff);border:1px solid var(--card-default-color-border, #e4e4ee);border-radius:999px;box-shadow:0 2px 10px #1f1f2e1a;transform:translate(-50%);transition:color .12s ease,border-color .12s ease,box-shadow .12s ease,transform .12s ease}.scrollable-region__edge:hover{color:var(--color-brand-600);border-color:var(--color-brand-600);box-shadow:0 4px 14px #1f1f2e24}.scrollable-region__edge:focus-visible{outline:2px solid var(--color-brand-600);outline-offset:2px}.scrollable-region__edge--top{top:8px}.scrollable-region__edge--bottom{bottom:8px}.ask-arbor-prompt-library{width:100%;box-sizing:border-box}.ask-arbor-prompt-library__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.ask-arbor-prompt-library__grid-item{display:flex;flex-direction:column;min-width:0}.ask-arbor-prompt-library__grid-item--full-width{grid-column:1/-1}.ask-arbor-prompt-library__expanded-block{width:100%;display:flex;flex-direction:column;min-width:0}.ask-arbor-prompt-library__expanded-block .ask-arbor-prompt-library__category{border-bottom-left-radius:0;border-bottom-right-radius:0}.ask-arbor-prompt-library__expanded-block .ask-arbor-prompt-library__drawer{margin-top:0;border-top-left-radius:0;border-top-right-radius:0}.ask-arbor-prompt-library__category{width:100%;border-radius:8px;border:1px solid #dfdcdb;background:#fff;overflow:hidden;box-sizing:border-box;transition:box-shadow .25s ease;cursor:pointer;height:100%}.ask-arbor-prompt-library__category:hover .ask-arbor-prompt-library__header{border-color:#dfdcdb;background:#f9f8f8}.ask-arbor-prompt-library__category--expanded{box-shadow:0 4px 12px #20202014;height:auto}.ask-arbor-prompt-library__header{display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;gap:8px;width:100%;height:100%;padding:14px 16px;cursor:pointer;border-radius:8px;box-sizing:border-box;transition:border-color .15s ease,background .15s ease}.ask-arbor-prompt-library__header:focus{outline:none}.ask-arbor-prompt-library__icon-circle{grid-column:1;grid-row:1;align-self:center;box-sizing:border-box;display:flex;flex-direction:row;align-items:center;justify-content:center;padding:6px;gap:0;width:24px;height:24px;border-radius:6px}.ask-arbor-prompt-library__category--green .ask-arbor-prompt-library__icon-circle{background:#e1eed3;color:#355629}.ask-arbor-prompt-library__category--blue .ask-arbor-prompt-library__icon-circle{background:#daf9ff;color:#227280}.ask-arbor-prompt-library__category--purple .ask-arbor-prompt-library__icon-circle{background:#f0d7e5;color:#cc79a7}.ask-arbor-prompt-library__category--orange .ask-arbor-prompt-library__icon-circle{background:#fef2e4;color:#7c4a0f}.ask-arbor-prompt-library__category--teal .ask-arbor-prompt-library__icon-circle{background:#c6e7e4;color:#40b0a6}.ask-arbor-prompt-library__category--salmon .ask-arbor-prompt-library__icon-circle{background:#efc4bf;color:#ed8a7a}.ask-arbor-prompt-library__category--yellow .ask-arbor-prompt-library__icon-circle{background:#fefad9;color:#7e700b}.ask-arbor-prompt-library__header-text{grid-column:2;grid-row:1;min-width:0;align-self:center}.ask-arbor-prompt-library__title{margin:0;font-size:14px;font-weight:600;color:#3c3735;line-height:1.25;width:100%}.ask-arbor-prompt-library__description{grid-column:1/-1;grid-row:2;margin:0;font-size:12px;font-weight:400;color:#595350;line-height:1.2;width:100%;box-sizing:border-box}.ask-arbor-prompt-library__chevron{grid-column:3;grid-row:1;align-self:center;flex-shrink:0}.ask-arbor-prompt-library__drawer{margin-top:6px;border-radius:0 0 8px 8px;border:1px solid #dfdcdb;border-top:none;background:#fff;box-shadow:0 2px 8px #20202014;box-sizing:border-box;padding:10px;display:flex;flex-direction:column;gap:8px;overflow:hidden;animation:ask-arbor-drawer-enter .25s ease}@keyframes ask-arbor-drawer-enter{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.ask-arbor-prompt-library__prompt-group{display:flex;flex-direction:column;margin-top:5px}.ask-arbor-prompt-library__prompt-group+.ask-arbor-prompt-library__prompt-group{padding-top:10px}.ask-arbor-prompt-library__prompt-group .ds-tag{align-self:flex-start;font-size:12px}.ask-arbor-prompt-library__prompts{display:flex;flex-direction:column;gap:4px;padding-top:10px}.ask-arbor-prompt-library__prompt-row{box-sizing:border-box;display:flex;flex-direction:row;justify-content:space-between;align-items:center;width:calc(100% - 10px);margin-left:10px;margin-right:10px;padding:10px 10px 10px 20px;gap:11px;background:#f9f8f8;border:1px solid #efeeed;border-radius:8px;cursor:pointer;font-size:14px;font-weight:400;color:#3c3735;text-align:left;transition:background .15s ease}.ask-arbor-prompt-library__prompt-row:hover{background:#efeeed}.ask-arbor-prompt-library__prompt-row:focus{outline:none}.ask-arbor-prompt-library__prompt-text{flex:1;min-width:0;font-size:14px;line-height:1.3}.ask-arbor-settings{position:absolute;bottom:100%;right:0;margin-bottom:4px;min-width:160px;padding:2px 0;background:#fff;border:1px solid #dfdcdb;border-radius:8px;box-shadow:0 4px 12px #20202014;z-index:10}.ask-arbor-settings__item{display:flex;flex-direction:row;align-items:center;gap:8px;width:100%;padding:4px 8px;border:none;background:none;font-size:14px;line-height:120%;color:#3c3735;text-align:left;cursor:pointer;text-decoration:none}.ask-arbor-settings__item:hover{background:#efeeed}.ask-arbor-settings__label{flex:1}.ask-arbor-input{display:flex;flex-direction:column;align-items:center;gap:7px;position:relative;width:100%;max-width:548px}.ask-arbor-input__content{display:flex;flex-direction:column;align-items:center;gap:7px;flex:1;min-width:0;width:100%}.ask-arbor-input__file-input{position:absolute;width:0;height:0;opacity:0;overflow:hidden;pointer-events:none}.ask-arbor-input__frame{box-sizing:border-box;display:flex;flex-direction:column;align-items:flex-start;gap:16px;width:100%;min-height:97px;padding:16px;background:#fff;border:1px solid #dfdcdb;border-radius:8px;box-shadow:0 4px 12px #20202014;position:relative}.ask-arbor-input__frame:focus-within{border-color:#68aa22}.ask-arbor-input__frame--dragging{border-color:#ada8a6;border-style:dashed}.ask-arbor-input__frame--dragging-rejected{border-color:#fa9d9d;background:#fde2e2}.ask-arbor-input__drop-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border-radius:7px;background:#ffffffeb;pointer-events:none}.ask-arbor-input__drop-overlay--rejected{background:#fde2e2f0}.ask-arbor-input__drop-overlay-text{font-size:14px;line-height:120%;color:#3c3735}.ask-arbor-input__drop-overlay--rejected .ask-arbor-input__drop-overlay-text{color:#9d1010;font-weight:600}.ask-arbor-input__drop-overlay-hint{font-size:12px;line-height:120%;color:#9d1010;text-align:center;max-width:80%}.ask-arbor-input__upload-rejection{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;display:flex;align-items:center;gap:8px;padding:0 28px 0 16px;border-radius:7px;background:#fde2e2;color:#9d1010;font-size:14px;line-height:120%;cursor:pointer}.ask-arbor-input__upload-rejection-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ask-arbor-input__file-cards{display:flex;flex-wrap:wrap;gap:8px;width:100%}.ask-arbor-input__file-cards--hidden{visibility:hidden}.ask-arbor-input__file-card{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:8px 10px;background:#f9f8f8;border:1px solid #dfdcdb;border-radius:8px;color:#3c3735}.ask-arbor-input__file-card-name{flex:1;min-width:0;max-width:280px;font-size:13px;line-height:120%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ask-arbor-input__file-card-dismiss{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border:none;background:transparent;color:inherit;cursor:pointer;padding:0}.ask-arbor-input__upload-rejection-dismiss{display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:inherit;cursor:pointer;position:absolute;top:50%;right:0;transform:translateY(-50%)}.ask-arbor-input__input-zone{display:flex;flex-direction:column;gap:16px;width:100%}.ask-arbor-input__input-row{display:flex;align-items:center;gap:4px;width:100%;min-height:17px}.ask-arbor-input__textarea{flex:1;min-width:0;border:none;background:transparent;resize:none;font-size:14px;line-height:120%;color:#3c3735;outline:none}.ask-arbor-input__textarea::placeholder{color:#c7c4c3}@supports (field-sizing: content){.ask-arbor-input__textarea{field-sizing:content;max-height:300px}}.ask-arbor-input__bottom-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;width:100%;height:32px}.ask-arbor-input__actions-right{display:flex;justify-content:flex-end;align-items:center;gap:8px;flex:1}.ask-arbor-input__timer{margin-right:4px;font-size:14px;line-height:120%;color:#3c3735}.ask-arbor-input__settings-wrap{position:relative}.ask-arbor-input__settings-btn--open{background:#efeeed}.ask-arbor-input__disclaimer{width:100%;margin:0;font-size:12px;line-height:120%;color:#3c3735;text-align:center}.chat-message__footer-actions,.chat-message--warning,.chat-message--error,.chat-message--info,.chat-message--agent{max-width:80%;width:auto;margin-right:auto}.chat-message-container{margin-bottom:10px}.chat-message-container--user{display:flex;justify-content:flex-end}.chat-message-container--agent{display:inline-flex;flex-direction:column;align-items:stretch;margin-right:auto;min-width:100%}.chat-message-container__content{display:flex;flex-direction:column;width:fit-content;max-width:100%;align-self:flex-start}.chat-message{border-radius:5px;padding:10px;position:relative;white-space:pre-wrap;line-height:18px;align-items:center}.chat-message a{text-decoration:none;color:#f7931e;cursor:pointer}.chat-message a:hover{text-decoration:underline}.chat-message--user{background-color:#efeeed;max-width:80%;width:auto;margin-left:auto}.chat-message--agent{padding-left:0}.chat-message--info{background-color:#daf9ff}.chat-message--error{background-color:#fde2e2}.chat-message--warning{background-color:#fef2e4}.chat-message--error,.chat-message--info,.chat-message--warning{display:flex;align-items:flex-start;gap:8px}.chat-message--error .chat-message__icon,.chat-message--info .chat-message__icon,.chat-message--warning .chat-message__icon{flex-shrink:0;width:35px;display:flex;align-items:center;justify-content:center;font-size:25px}.chat-message__footer-actions{display:flex;flex-direction:row;justify-content:flex-start;align-items:flex-start;margin-top:9px;min-width:0;box-sizing:border-box}.chat-message__follow-up-prompts{flex-grow:1;max-width:90%}.chat-message__follow-up-prompts-list{display:flex;flex-flow:row wrap;gap:8px;list-style:none;margin:0;padding:0}.chat-message__follow-up-prompts-list li{max-width:100%}.chat-message__footer-icons{display:flex;flex-direction:row;align-items:center;gap:0;flex:none}.chat-message__feedback{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;padding:0 0 4px;background:#fff;flex:none;align-self:stretch;flex-grow:0;min-width:0}.chat-message__feedback-question{font-weight:400;font-size:14px;line-height:120%;display:flex;align-items:center;color:#3c3735;flex:none;flex-grow:0}.chat-message__feedback-buttons{display:flex;flex-direction:row;align-items:center;padding:0;gap:0;flex:none;flex-grow:0}.chat-message__feedback-button{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;padding:6px 12px;gap:8px;min-height:36px;height:36px;box-sizing:border-box;background:#fff;border:none;cursor:pointer;font-style:normal;font-weight:700;font-size:18px;line-height:120%}.chat-message__feedback-button--up,.chat-message__feedback-button--up .chat-message__feedback-button-icon,.chat-message__feedback-button--up .chat-message__feedback-button-text{color:#3c3735}.chat-message__feedback-button--down{width:180px;color:#595350}.chat-message__feedback-button--down .chat-message__feedback-button-icon,.chat-message__feedback-button--down .chat-message__feedback-button-text{color:#595350}.chat-message__feedback-button--selected.chat-message__feedback-button--up,.chat-message__feedback-button--selected.chat-message__feedback-button--up .chat-message__feedback-button-icon,.chat-message__feedback-button--selected.chat-message__feedback-button--up .chat-message__feedback-button-text{color:#4e801a}.chat-message__feedback-button--selected.chat-message__feedback-button--down,.chat-message__feedback-button--selected.chat-message__feedback-button--down .chat-message__feedback-button-icon,.chat-message__feedback-button--selected.chat-message__feedback-button--down .chat-message__feedback-button-text{color:#b96e16}.chat-message__feedback-button-icon{flex:none;width:18px;height:18px;font-size:18px;line-height:1;display:flex;align-items:center;justify-content:center;color:inherit}.chat-message__feedback-button-icon svg{width:18px;height:18px}.chat-message__feedback-button-text{flex:none;white-space:nowrap;font-size:14px}.chat-message__icon{top:10px}.chat-message--info .chat-message__icon{color:#33aabf}.chat-message--error .chat-message__icon{color:#9d1010}.chat-message--warning .chat-message__icon{color:#b96e16}.keyboard-shortcut-menu{position:absolute;left:0;width:100%;z-index:1000;top:auto;bottom:100%;margin-bottom:8px}.keyboard-shortcut-menu.keyboard-shortcut-menu-below{bottom:auto;top:60%;margin-bottom:0}.keyboard-shortcut-menu.keyboard-shortcut-menu-hidden{opacity:0;pointer-events:none;visibility:hidden}.keyboard-shortcut-menu .keyboard-shortcut-menu__content{border:solid 1px #c7c4c3;background-color:#fff;border-radius:4px;box-shadow:0 3px 3px #dfdcdb;width:100%;max-height:300px;overflow-y:auto}.keyboard-shortcut-menu .keyboard-shortcut-menu__header{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-bottom:1px solid #dfdcdb}.keyboard-shortcut-menu .keyboard-shortcut-menu__close{cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:none;border:none;border-radius:4px}.keyboard-shortcut-menu .keyboard-shortcut-menu__close:hover{background:#efeeed}.keyboard-shortcut-menu .keyboard-shortcut-menu__close:focus-visible{outline:2px solid #68aa22;outline-offset:2px}.keyboard-shortcut-menu .keyboard-shortcut-menu__close-icon{font-size:8px}.keyboard-shortcut-menu .keyboard-shortcut-menu__search{display:flex;align-items:center;padding:8px 0;width:100%}.keyboard-shortcut-menu .keyboard-shortcut-menu__search input{flex:1;border:none;outline:none;font-size:14px;padding:4px 0}.keyboard-shortcut-menu .keyboard-shortcut-menu__items{max-height:200px;overflow-y:auto;list-style-type:none;padding:0;margin:0}.keyboard-shortcut-menu .keyboard-shortcut-menu__item{display:flex;padding:8px 12px;cursor:pointer;transition:background-color .1s ease;text-decoration:none!important;color:inherit;align-items:center;gap:8px}.keyboard-shortcut-menu .keyboard-shortcut-menu__item:hover{background-color:#dfdcdb}.keyboard-shortcut-menu .keyboard-shortcut-menu__item--selected{background-color:#c7c4c3;font-weight:500}.keyboard-shortcut-menu .keyboard-shortcut-menu__item-reference{min-width:100px}.keyboard-shortcut-menu .keyboard-shortcut-menu__item-description{margin-left:8px}.keyboard-shortcut-menu .keyboard-shortcut-menu__item-main{font-weight:800;color:#595350;text-decoration:none!important}.keyboard-shortcut-menu .keyboard-shortcut-menu__item-secondary{color:#776e6a;font-weight:500;text-decoration:none}.keyboard-shortcut-menu .keyboard-shortcut-menu__no-results{padding:12px;color:#ada8a6;text-align:center;font-style:italic}.loading-spinner{display:inline-block;position:relative;width:50px;height:50px;flex-shrink:0}.loading-spinner__inner{position:relative;animation-name:arbor-logo-rotation;animation-duration:1s;animation-iteration-count:infinite;animation-timing-function:ease-in-out;transform-origin:25px 25px}.loading-spinner__circle{height:50px;width:50px;border-radius:100%;opacity:.9;animation-duration:1s;animation-direction:alternate;animation-iteration-count:infinite;animation-timing-function:ease-in-out;position:absolute}.loading-spinner__circle-left{background-color:#7cb93c;animation-name:arbor-logo-left}.loading-spinner__circle-top{background-color:#f7931c;animation-name:arbor-logo-top}.loading-spinner__circle-right{background-color:#deee21;animation-name:arbor-logo-right}.loading-spinner__circle-bottom{background-color:#afd317;animation-name:arbor-logo-bottom}@keyframes arbor-logo-rotation{0%{rotate:0}to{rotate:360deg}}@keyframes arbor-logo-left{0%{left:-25px}to{left:0}}@keyframes arbor-logo-right{0%{left:25px}to{left:0}}@keyframes arbor-logo-top{0%{top:-25px}to{top:0}}@keyframes arbor-logo-bottom{0%{top:25px}to{top:0}}@keyframes chat-panel-notify-button-fade-in{0%{opacity:0}to{opacity:1}}.chat-panel__loading-container{display:flex;flex-direction:column;gap:0;position:relative;left:-5px}.chat-panel__loading-content{display:flex;flex-direction:row;align-items:center}.chat-panel__loading-spinner-container{background-color:#eee;display:flex;justify-content:center;align-items:center;flex-shrink:0;border-radius:4px}.loading-spinner.chat-panel__loading-spinner{flex-shrink:0;transform:scale(.25);width:40px;height:40px;position:relative;left:-1px;top:-1px}.chat-panel__loading-phrase{font-size:14px;color:#3c3735;opacity:1;transition:opacity .3s ease-in-out;flex-grow:1;display:flex;align-items:center}.chat-panel__loading-phrase.fade-out{opacity:0}.chat-panel__loading-phrase.fade-in{opacity:1}.chat-panel__notify-later{margin-left:40px;display:flex;flex-direction:column;align-items:flex-start;gap:12px;animation:chat-panel-notify-button-fade-in .3s ease-in-out forwards}.chat-panel__notify-later-message{font-size:14px;font-weight:400;line-height:1.4;color:#3c3735;margin:0}.chat-panel__notify-later-btn{display:inline-flex;align-items:center;justify-content:center;padding:6px 14px;border-radius:4px;border:1px solid #dfdcdb;background:#fff;font-size:14px;cursor:pointer;color:#3c3735}.chat-panel__notify-later-btn:hover{background:#efeeed}.chat-panel{display:flex;flex-direction:column}.chat-panel .chat-panel__body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding-bottom:20px}.chat-panel .chat-panel__body--no-messages{padding-bottom:0;flex:none}.chat-panel .chat-panel__message-list-wrapper{position:relative;flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.chat-panel .chat-panel-message-list{display:flex;flex-direction:column;list-style-type:none;margin:0;flex:1;min-height:0;overflow-y:auto;padding:0 24px}.chat-panel .chat-panel__body:has(.chat-panel__message-list-wrapper){min-height:calc(100vh - 240px)}.chat-panel .chat-panel__body:has(.chat-panel__message-list-wrapper) .chat-panel__input-container{position:sticky;bottom:0;z-index:1;background-color:#fff}.chat-panel .chat-panel-footer{position:relative;top:-12px}.chat-panel .chat-panel__active-chat-header{display:flex;justify-content:flex-end;align-items:center;width:100%;box-sizing:border-box;margin-bottom:10px;padding:0}.chat-panel .chat-panel__active-chat-header .chat-panel__new-chat-button{display:inline-block;padding:6px 14px;border-radius:4px;font-size:14px;font-weight:600;background-color:#68aa22;color:#fff;text-decoration:none;border:none;cursor:pointer}.chat-panel .chat-panel__active-chat-header .chat-panel__new-chat-button:hover{background-color:#4e801a}.chat-panel .chat-panel__tabs{flex-shrink:0;padding:0 16px}.chat-panel .chat-panel__tab-content{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;padding-top:16px}.chat-panel .chat-panel__tab-content:has(.chat-panel__tab-panel--recent){padding-top:0}.chat-panel .chat-panel__tab-panel--recent{flex:1;min-height:0;overflow-y:auto}.chat-panel .chat-panel__ai-interactions-loading,.chat-panel .chat-panel__ai-interactions-empty{padding:32px 24px;color:#595350;font-size:14px;text-align:center}.chat-panel .chat-panel__ai-interactions-table{width:100%;margin:0}.chat-panel .chat-panel__ai-interactions-table .ag-row{cursor:pointer}.chat-panel .chat-panel__sample-prompt-container{display:flex;justify-content:space-evenly;padding:0 23px;gap:10px}.chat-panel .chat-panel__sample-prompt{display:flex;text-align:left;border-radius:5.5px;border:1px solid #dfdcdb;padding:12px;cursor:pointer;font-size:14px;flex:1;line-height:19px;background-color:#fff;filter:drop-shadow(0 4px 12px rgba(32,32,32,.08))}.chat-panel .chat-panel__sample-prompt:hover{background-color:#f9f9f9}.chat-panel .chat-panel__daily-prompt{display:flex;text-align:left;border-radius:5.5px;border:1px solid #dfdcdb;padding:12px;cursor:pointer;font-size:14px;flex:1;line-height:19px;background-color:#f8fff1}.chat-panel .chat-panel__daily-prompt:hover{background-color:#e0f5d8}.chat-panel .chat-panel__message-limit{position:absolute;bottom:0;right:0;padding:4px;border-radius:2px;background-color:#efeeed}.chat-panel .chat-panel__input-container{flex-shrink:0;display:flex;gap:9px;padding:7px 24px;min-height:50px}.chat-panel .chat-panel__input-wrapper{position:relative;flex:1;display:flex;flex-direction:column;min-width:0}.chat-panel .chat-panel__input-wrapper .ask-arbor-input{width:100%;max-width:none}.chat-panel .chat-panel__speech-disabled-wrapper{text-align:left;padding-left:20px;padding-bottom:10px;font-style:italic}.chat-panel .chat-panel__chat-intro{flex:1;max-height:140px;display:flex;flex-direction:column;padding:32px 72px}.chat-panel .chat-panel__chat-intro-frame{display:flex;flex-direction:row;justify-content:center;align-items:center;padding:0;gap:12px;flex:none}.chat-panel .chat-panel__chat-intro-icon{display:inline-flex;flex:none;width:40px;height:42px;align-items:center;justify-content:center}.chat-panel .chat-panel__chat-intro-icon svg{width:40px;height:42px}.chat-panel .chat-panel__chat-intro-heading{font-style:normal;font-weight:700;font-size:20px;line-height:120%;display:flex;align-items:center;color:#3c3735;margin:0;flex:none}.chat-panel .chat-panel__chat-intro-body{font-style:normal;font-weight:400;font-size:14px;line-height:120%;display:flex;align-items:center;text-align:center;color:#3c3735;margin:0;flex:none;align-self:stretch;max-width:436px}.chat-panel table{width:100%;border-collapse:separate;border-spacing:0;margin:20px 0;font-size:14px;text-align:left;border:1px solid #dfdcdb;border-radius:4px;overflow:scroll}.chat-panel table thead{background-color:#f9f8f8;border-bottom:1px solid #ada8a6}.chat-panel table thead th{padding:10px;font-weight:700;border-bottom:1px solid #ada8a6}.chat-panel table tbody th{padding-left:10px;border-bottom:1px solid #ada8a6}.chat-panel table tbody tr{height:35px}.chat-panel table tbody tr:nth-child(odd){background-color:#fff}.chat-panel table tbody tr:nth-child(2n){background-color:#f9f8f8}.chat-panel table tbody tr td{padding:10px;border-bottom:1px solid #ada8a6;vertical-align:top}.chat-panel table tbody tr:last-child td{border-bottom:none}.chat-panel .chat-panel__message-tag{background-color:#c7c4c3;font-weight:700}.ds-slideover{top:0;z-index:2147483647;border-left:1px solid #e8e8e8;--slideover-color-background: #fff;--slideover-spacing-padding: 0px}.ds-slideover__contents{overflow:hidden}.resource-preview-slideover .ds-slideover-manager--active{z-index:30}.resource-preview-slideover .ds-slideover{min-width:580px;max-width:50%}.resource-preview-slideover .ds-slideover__header .ds-heading{display:none}.resource-preview-slideover .ds-slideover__contents{min-height:0;padding:0}.resource-preview-slideover__body{display:flex;flex:1;flex-direction:column;min-height:0;height:100%;padding:0 12px 12px;box-sizing:border-box}.resource-preview-slideover__status,.resource-preview-slideover__error{display:flex;align-items:center;gap:8px;margin:0;font-size:14px;line-height:20px;color:var(--color-grey-700, #374151)}.resource-preview-slideover__error{color:var(--color-semantic-danger-700, #b91c1c)}.resource-preview-slideover__frame{flex:1;width:100%;min-height:0;border:1px solid var(--card-default-color-border, #e4e4ee);border-radius:12px;background:var(--color-grey-000, #fff);padding:5px}.agent-workspace{--modal-header-spacing-padding: 16px;width:calc(100vw - 32px);height:calc(100vh - 32px);min-width:unset;max-width:calc(100vw - 32px);max-height:calc(100vh - 32px);overflow:hidden}.agent-workspace__header-title{display:flex;align-items:center;gap:12px;min-width:0;flex:1}.agent-workspace__header-title .ds-modal__title{font-size:var(--type-headings-h3-size, 18px);font-weight:var(--type-headings-h3-weight, 600);line-height:var(--type-headings-h3-line-height, 24px)}.agent-workspace__header-avatar{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;color:var(--color-brand-600);border-radius:50%}.agent-workspace__header-actions{display:flex;align-items:center;gap:8px}.agent-workspace__phase{padding:2px 10px;font-size:12px;font-weight:var(--font-weight-semi-bold, 600);color:var(--color-grey-600, #6b6b7b);background-color:var(--color-grey-100, #f0f0f3);border-radius:999px}.agent-workspace__phase--running{color:var(--color-brand-600);background-color:var(--color-brand-050)}.agent-workspace__phase--stopped{color:var(--color-semantic-warning-600, #b45309);background-color:var(--color-semantic-warning-050, #fff7ed)}.agent-workspace__phase--complete{color:var(--color-semantic-success-600, #15803d);background-color:var(--color-semantic-success-050, #ecfdf3)}.agent-workspace__body{position:relative;display:grid;grid-template-columns:minmax(0,1.7fr) minmax(220px,.9fr) minmax(240px,1fr);gap:16px;flex:1;min-height:0;padding:16px;background-color:var(--color-grey-050, #f7f7f8)}.agent-workspace__body--no-checklist{grid-template-columns:minmax(0,1.7fr) minmax(240px,1fr)}.agent-workspace__body--no-resources{grid-template-columns:minmax(0,1.7fr) minmax(220px,.9fr)}.agent-workspace__body--no-checklist.agent-workspace__body--no-resources{grid-template-columns:minmax(0,1fr)}.agent-workspace__panel{display:flex;flex-direction:column;min-height:0;background-color:var(--color-white, #ffffff);border:1px solid var(--card-default-color-border, #e4e4ee);border-radius:12px}.agent-workspace__panel--chat{background-color:var(--color-white, #ffffff);overflow:hidden}.agent-workspace__panel--chat.agent-workspace__panel--timeline{overflow:visible}.agent-workspace__chat-keep-alive:not([hidden]){display:flex;flex:1;flex-direction:column;min-height:0}.agent-workspace__chat-body{display:flex;flex:1;flex-direction:column;min-height:0}.agent-workspace__ask-arbor{display:flex;flex:1;flex-direction:column;min-height:0;padding-top:20px}.agent-workspace__ask-arbor>.scrollable-region{flex:1;min-height:0}.agent-workspace__ask-arbor .chat-panel{flex:1;min-height:0;height:100%;border:none;border-radius:0}.agent-workspace__ask-arbor .chat-panel__body:has(.chat-panel__message-list-wrapper){min-height:0}.agent-workspace__ask-arbor .chat-panel__tabs{display:none}.agent-workspace__ask-arbor .chat-message-container--agent .chat-message-container__content{padding-bottom:52px}.agent-workspace__clarification{display:flex;flex-direction:column;gap:10px;margin:16px 16px 0;padding:12px 14px;background-color:var(--color-brand-050);border:1px solid var(--card-default-color-border, #e4e4ee);border-radius:12px}.agent-workspace__clarification-text{margin:0;font-size:14px;line-height:20px}.agent-workspace__clarification-dismiss{align-self:flex-start;padding:0;font:inherit;font-size:13px;color:var(--color-brand-800);cursor:pointer;background:none;border:none;text-decoration:underline}.agent-workspace__panel-header{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--card-default-color-border, #e4e4ee)}.agent-workspace__panel-count{margin-left:auto;font-weight:var(--font-weight-semi-bold, 600);color:var(--color-grey-600, #6b6b7b)}.agent-workspace__panel-header-action{margin-left:auto}.agent-workspace__panel-body{display:flex;flex:1;flex-direction:column;min-height:0;overflow:hidden}.agent-workspace__panel-body .scrollable-region__viewport{padding:12px 14px}.agent-workspace__panel-hint{margin:0 0 12px;font-size:13px;line-height:18px;color:var(--color-grey-600, #6b6b7b)}.agent-workspace__chat-scroll{flex:1;min-height:0;padding:20px;overflow-y:auto}.agent-workspace__messages{display:flex;flex-direction:column;gap:16px;margin:0;padding:0;list-style:none}.agent-workspace__message{display:flex;gap:10px;max-width:82%}.agent-workspace__message--user{align-self:flex-end;flex-direction:row-reverse}.agent-workspace__message--system{align-self:center;max-width:100%}.agent-workspace__message-body{display:flex;flex-direction:column;gap:8px;min-width:0}.agent-workspace__bubble{padding:10px 14px;font-size:14px;line-height:20px;white-space:pre-wrap;background-color:var(--color-grey-100, #f0f0f3);border-radius:14px}.agent-workspace__message--agent .agent-workspace__bubble{background-color:var(--color-brand-050);border-bottom-left-radius:4px}.agent-workspace__message--user .agent-workspace__bubble{color:var(--color-white, #ffffff);background-color:var(--color-brand-600);border-bottom-right-radius:4px}.agent-workspace__message--system .agent-workspace__bubble{font-size:13px;color:var(--color-grey-600, #6b6b7b);background-color:var(--color-grey-100, #f0f0f3)}.agent-workspace__chips{display:flex;flex-wrap:wrap;gap:8px}.agent-workspace__chip{padding:6px 12px;font:inherit;font-size:13px;color:var(--color-brand-800);cursor:pointer;background-color:var(--color-white, #ffffff);border:1px solid var(--card-default-color-border, #e4e4ee);border-radius:999px;transition:background-color .15s ease,border-color .15s ease}.agent-workspace__chip:hover{background-color:var(--color-brand-050);border-color:var(--color-brand-600)}.agent-workspace__typing{display:inline-flex;gap:4px;align-items:center}.agent-workspace__typing span{width:6px;height:6px;background-color:var(--color-grey-600, #6b6b7b);border-radius:50%;animation:agent-workspace-typing 1.2s infinite ease-in-out}.agent-workspace__typing span:nth-child(2){animation-delay:.15s}.agent-workspace__typing span:nth-child(3){animation-delay:.3s}.agent-workspace__notice{display:flex;align-items:center;gap:8px;margin:0 16px 12px;padding:10px 14px;font-size:13px;color:var(--color-grey-600, #6b6b7b);background-color:var(--color-grey-050, #f7f7f8);border:1px solid var(--card-default-color-border, #e4e4ee);border-radius:12px}.agent-workspace__composer{display:flex;align-items:flex-end;gap:8px;padding:12px 16px 16px;border-top:1px solid var(--card-default-color-border, #e4e4ee)}.agent-workspace__composer-input{flex:1;max-height:140px}.agent-workspace__file-input{display:none}.agent-workspace__resource-list{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none}.agent-workspace__resource-card{display:flex;align-items:flex-start;gap:10px;width:100%;padding:12px;border:1px solid var(--card-default-color-border, #e4e4ee);border-radius:12px;background:var(--color-white, #ffffff);text-align:left;text-decoration:none;color:inherit;cursor:pointer;font:inherit;transition:border-color .15s ease,box-shadow .15s ease}.agent-workspace__resource-card:hover,.agent-workspace__resource-card:focus-visible{border-color:var(--color-brand-600);box-shadow:0 1px 4px #00000014}.agent-workspace__resource-card:focus-visible{outline:2px solid var(--color-brand-600);outline-offset:2px}.agent-workspace__resource-icon{display:inline-flex;align-items:center;justify-content:center;flex:none;width:32px;height:32px;border-radius:8px;background:var(--color-brand-050)}.agent-workspace__resource-icon--document_html,.agent-workspace__resource-icon--file{background:var(--color-semantic-caution-050)}.agent-workspace__resource-icon--link{background:var(--color-semantic-info-050)}.agent-workspace__resource-icon--workflow{background:var(--color-semantic-warning-050)}.agent-workspace__resource-content{display:flex;flex:1;flex-direction:column;gap:4px;min-width:0}.agent-workspace__resource-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.agent-workspace__resource-name{font-size:14px;font-weight:600;line-height:20px;color:var(--color-grey-900, #1f1f2e);overflow-wrap:anywhere}.agent-workspace__resource-badge{flex:none;padding:2px 8px;border-radius:999px;background:var(--color-brand-050);color:var(--color-brand-800);font-size:11px;font-weight:600;line-height:16px;white-space:nowrap}.agent-workspace__resource-badge--document_html,.agent-workspace__resource-badge--file{background:var(--color-semantic-caution-050);color:var(--color-semantic-caution-800)}.agent-workspace__resource-badge--link{background:var(--color-semantic-info-050);color:var(--color-semantic-info-700)}.agent-workspace__resource-badge--workflow{background:var(--color-semantic-warning-050);color:var(--color-semantic-warning-700)}.agent-workspace__resource-open{flex:none;margin-top:2px}.agent-workspace__task-group{display:flex;flex-direction:column;gap:8px}.agent-workspace__task-group--following{margin-top:16px;padding-top:16px;border-top:1px solid var(--card-default-color-border, #e4e4ee)}.agent-workspace__task-group-label{margin:0;font-size:12px;font-weight:600;line-height:16px;letter-spacing:.02em;color:var(--color-grey-600, #6b6b7b)}.agent-workspace__task-list{display:flex;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none}.agent-workspace__task-row{display:flex;align-items:flex-start;gap:8px}.agent-workspace__task-button{display:block;width:100%;margin:0;padding:0;border:0;background:none;font:inherit;text-align:left;cursor:pointer}.agent-workspace__task-button:focus-visible .agent-workspace__task-row{outline:2px solid var(--color-brand-600, #4f46e5);outline-offset:2px}.agent-workspace__task-button:hover .agent-workspace__task-row{background-color:var(--color-semantic-warning-100, #ffedd5)}.agent-workspace__task-content{display:flex;flex:1;flex-direction:column;gap:2px;min-width:0}.agent-workspace__task-label{font-size:14px;line-height:20px;color:var(--color-grey-900, #1f1f2e)}.agent-workspace__task-description{font-size:12px;line-height:16px;color:var(--color-grey-600, #6b6b7b)}.agent-workspace__task--hitl .agent-workspace__task-row{padding:8px;background-color:var(--color-semantic-warning-050, #fff7ed);border-radius:8px}.agent-workspace__task--failed .agent-workspace__task-row{padding:8px;background-color:var(--color-semantic-destructive-050, #fef2f2);border-radius:8px}.agent-workspace__task-children{display:flex;flex-direction:column;gap:8px;margin:8px 0 0;padding:0 0 0 24px;list-style:none;border-left:2px solid var(--card-default-color-border, #e4e4ee)}.agent-workspace__task-child .agent-workspace__task-label{font-size:13px}.agent-workspace__task-icon--spinning{animation:agent-workspace-icon-spin 1s linear infinite}.agent-workspace__loading,.agent-workspace__empty,.agent-workspace__error{display:flex;gap:8px;align-items:center;margin:0;font-size:14px;color:var(--color-grey-600, #6b6b7b)}.agent-workspace__error{color:var(--color-semantic-destructive-600, #dc2626)}@media (width <= 900px){.agent-workspace__body{grid-template-columns:minmax(0,1fr)}.agent-workspace__panel--documents,.agent-workspace__panel--checklist{display:none}}@keyframes agent-workspace-icon-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes agent-workspace-typing{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.agent-workspace__timeline{display:flex;flex:1;flex-direction:column;justify-content:center;min-width:0;min-height:0;padding:24px 32px 32px;overflow:visible}.agent-workspace__timeline-status{margin:0;font-size:14px;line-height:20px;color:var(--color-grey-600, #6b6b7b);text-align:center}.agent-timeline{--agent-timeline-node-size: 32px;--agent-timeline-station-size: 10px;--agent-timeline-track-top: 48px;--agent-timeline-track-height: 4px;position:relative;width:100%;max-width:100%;height:140px;overflow:visible;box-sizing:border-box}.agent-timeline__track{position:absolute;top:var(--agent-timeline-track-top);right:calc(var(--agent-timeline-node-size) / 2);left:calc(var(--agent-timeline-node-size) / 2);height:var(--agent-timeline-track-height);background-color:var(--color-grey-800, #3b3b3b);border-radius:999px}.agent-timeline__station{position:absolute;top:calc(var(--agent-timeline-track-top) + (var(--agent-timeline-track-height) - var(--agent-timeline-station-size)) / 2);z-index:2}.agent-timeline__station--terminus,.agent-timeline__station--checklist,.agent-timeline__station--status{top:calc(var(--agent-timeline-track-top) + (var(--agent-timeline-track-height) - var(--agent-timeline-node-size)) / 2)}.agent-timeline__chat-station{position:absolute;top:calc(var(--agent-timeline-track-top) + (var(--agent-timeline-track-height) - var(--agent-timeline-node-size)) / 2);z-index:3}.agent-timeline__station:hover,.agent-timeline__station:focus-within,.agent-timeline__chat-station:hover,.agent-timeline__chat-station:focus-within{z-index:50}.agent-timeline__station-node{display:block;width:var(--agent-timeline-station-size);height:var(--agent-timeline-station-size);padding:0;cursor:default;background-color:var(--tag-neutral-color-background);border:none;border-radius:50%;box-sizing:border-box}.agent-timeline__station-node--terminus,.agent-timeline__station-node--checklist,.agent-timeline__station-node--status{width:var(--agent-timeline-node-size);height:var(--agent-timeline-node-size);border-radius:50%;box-sizing:border-box}.agent-timeline__station-node--terminus{display:inline-flex;align-items:center;justify-content:center;color:var(--tag-category-blue-color-text);background:var(--tag-category-blue-color-background)}.agent-timeline__station-node--checklist{display:inline-flex;align-items:center;justify-content:center;color:var(--tag-category-purple-color-text);background:var(--tag-category-purple-color-background)}.agent-timeline__station-node--status{display:inline-flex;align-items:center;justify-content:center;color:var(--tag-category-orange-color-text);background:var(--tag-category-orange-color-background)}.agent-timeline__station-node--note{border:1px solid black}.agent-timeline__terminus-label{position:absolute;top:calc(100% + 8px);left:50%;font-size:12px;font-weight:600;line-height:16px;color:var(--color-grey-900, #1f1f2e);white-space:nowrap;transform:translate(-50%)}.agent-timeline__pill{position:absolute;top:auto;bottom:calc(100% + 10px);left:50%;z-index:60;display:none;box-sizing:border-box;width:min(400px,70vw);padding:8px 12px;font-size:12px;line-height:16px;color:var(--color-mono-white, #ffffff);white-space:pre-wrap;overflow-wrap:break-word;pointer-events:none;background-color:var(--color-mono-black, #202020);border-radius:8px;transform:translate(-50%)}.agent-timeline__pill-type{display:block;font-weight:600}.agent-timeline__pill-entry{display:block;margin-top:2px;opacity:.85}.agent-timeline__station:hover .agent-timeline__pill,.agent-timeline__station:focus-within .agent-timeline__pill,.agent-timeline__chat-station:hover .agent-timeline__pill,.agent-timeline__chat-station:focus-within .agent-timeline__pill{display:block}.agent-timeline__chat-node{display:inline-flex;align-items:center;justify-content:center;width:var(--agent-timeline-node-size);height:var(--agent-timeline-node-size);padding:0;cursor:pointer;color:var(--tag-category-green-color-text);background:var(--tag-category-green-color-background);border:none;border-radius:50%;box-sizing:border-box}.agent-timeline__chat-node:hover,.agent-timeline__chat-node:focus-visible{outline:2px solid var(--color-mono-black, #202020);outline-offset:2px}.agent-workspace__center-tabs{flex-shrink:0;padding:12px 14px 0}.agent-workspace__center-back{display:flex;flex-shrink:0;padding:8px 14px 0}.new-agent{--page-heading-spacing-gap: 0px;width:min(600px,100%);min-width:unset;max-height:calc(100vh - var(--spacing-medium));overflow:hidden;font-family:var(--font-family-standard),sans-serif;color:var(--color-grey-900, #1f1f2e)}.new-agent--embedded{width:100%;max-height:none;overflow:visible;box-sizing:border-box;padding:var(--spacing-large, 16px)}.new-agent__header{gap:var(--spacing-large)}.new-agent__header-title{display:flex;align-items:center;gap:var(--spacing-medium);min-width:0;flex:1}.new-agent__header-title .ds-modal__title,.new-agent__header-title .new-agent__title{margin:0;font-size:var(--type-headings-h3-size, 18px);font-weight:var(--type-headings-h3-weight, 600);line-height:var(--type-headings-h3-line-height, 24px)}.new-agent__header-avatar{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:32px;height:32px;color:var(--color-brand-600);background-color:var(--color-brand-050);border-radius:50%}.new-agent__body{display:flex;flex-direction:column;gap:var(--spacing-large)}.new-agent__type-field{display:flex;flex-direction:column;gap:var(--spacing-small)}.new-agent__type-label{font-size:12px;font-weight:var(--font-weight-semi-bold, 600);color:var(--color-grey-600, #6b6b7b)}.new-agent__form{display:flex;flex-direction:column;gap:var(--spacing-large)}.new-agent__actions{display:flex;justify-content:flex-end}.new-agent__start-button--starting .ds-icon{animation:new-agent-spin 1s linear infinite}.new-agent__error{margin:0;font-size:13px;line-height:18px;color:var(--color-danger-600, #c62828)}.new-agent__state{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-medium);padding:var(--spacing-large) 0;text-align:center}.new-agent__state-message{margin:0;font-size:13px;line-height:18px;color:var(--color-grey-600, #6b6b7b)}.new-agent__state--error .new-agent__state-message{color:var(--color-danger-600, #c62828)}.new-agent__spinner{animation:new-agent-spin 1s linear infinite}@keyframes new-agent-spin{to{transform:rotate(360deg)}}.agent-view{--agent-view-column-gap: 16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--agent-view-column-gap);width:100%;box-sizing:border-box}.agent-view__header{display:flex;grid-column:1/-1;align-items:center;justify-content:space-between;gap:16px}.agent-view__filters{display:flex;grid-column:1/-1;flex-wrap:wrap;gap:16px}.agent-view__filter{display:flex;flex-direction:column;gap:4px;min-width:220px;max-width:280px;flex:1}.agent-view__filter-label{font-family:var(--font-family-standard),sans-serif;font-size:14px;font-weight:var(--font-weight-semi-bold);line-height:20px;color:var(--color-grey-700)}.agent-view__board{display:grid;grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--agent-view-column-gap);align-items:stretch;width:100%;min-height:600px;border-radius:0}.agent-view__split-column{display:grid;grid-template-rows:1fr 1fr;gap:16px;min-height:0}.agent-view__column{display:flex;flex-direction:column;min-height:0;padding:12px;border:1px solid var(--card-default-color-border);border-radius:8px;background-color:var(--card-default-color-background)}.agent-view__column--split{min-height:0;overflow:hidden}.agent-view__column-header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.agent-view__column-count{margin-left:auto;font-family:var(--font-family-standard),sans-serif;font-weight:var(--font-weight-semi-bold);color:var(--color-grey-600)}.agent-view__card-list{list-style:none;margin:0;padding:0;display:flex;flex:1;flex-direction:column;gap:8px;min-height:0;overflow-y:auto}.agent-view__card{list-style:none}.agent-view__card .ds-card__container{box-shadow:0 4px 12px #20202014}.agent-view__card--expanded .ds-card__container{border-color:var(--card-default-color-border)}.agent-view__card-toggle{display:block;width:100%;padding:0;border:0;background:none;cursor:pointer;text-align:left;font:inherit;color:inherit}.agent-view__card-content{display:flex;align-items:center;gap:8px;min-height:40px}.agent-view__card-chevron{margin-left:auto;flex-shrink:0;color:var(--color-grey-600)}.agent-view__card-invocation-name{font-family:var(--type-headings-h4-family),sans-serif;font-size:var(--type-headings-h4-size);font-weight:var(--type-headings-h4-weight);line-height:var(--type-headings-h4-line-height);color:var(--color-grey-900)}.agent-view__card-agent-name{flex-shrink:0;padding:2px 10px;border-radius:999px;background:var(--color-grey-100);color:var(--color-grey-700);font-size:12px;font-weight:var(--font-weight-semi-bold, 600);line-height:16px;white-space:nowrap}.agent-view__card-progress{margin-top:12px;padding-top:12px;border-top:1px solid var(--card-default-color-border)}.agent-view__card-actions{display:flex;justify-content:flex-end;margin-top:12px}.agent-view__progress-scroll{flex:0 1 auto}.agent-view__progress-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;max-height:500px;overflow-y:auto}.agent-view__progress-item{display:flex;align-items:flex-start;gap:8px;font-family:var(--font-family-standard),sans-serif;font-size:14px;line-height:20px}.agent-view__progress-item--complete{color:var(--color-semantic-success-600)}.agent-view__progress-item--failed{color:var(--color-semantic-destructive-600)}.agent-view__progress-item--hitl{padding:8px;border-radius:6px;background-color:var(--color-semantic-warning-050);color:var(--color-semantic-warning-600)}.agent-view__progress-item--generating-a-response{color:var(--color-brand-600)}.agent-view__progress-item-content{display:flex;flex:1;flex-direction:column;gap:2px;min-width:0}.agent-view__progress-label{color:var(--color-grey-900)}.agent-view__progress-description{color:var(--color-grey-600);font-size:12px;line-height:16px}.agent-view__progress-empty,.agent-view__progress-error{margin:0;font-family:var(--font-family-standard),sans-serif;font-size:14px;line-height:20px;color:var(--color-grey-600)}.agent-view__progress-error{color:var(--color-semantic-destructive-600)}.agent-view__progress-loading{display:flex;align-items:center;gap:8px;font-family:var(--font-family-standard),sans-serif;font-size:14px;line-height:20px;color:var(--color-grey-600)}.agent-view__progress-icon--spinning{animation:agent-view-icon-spin 1s linear infinite}.agent-view__status-indicator,.agent-view__dot{display:inline-flex;line-height:0}.agent-view__dot--grey-dark .ds-dot{background-color:var(--color-grey-600)}.agent-view__state{display:flex;grid-column:1/-1;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-medium, 12px);width:100%;min-height:240px;padding:var(--spacing-xxlarge, 32px);box-sizing:border-box;border:1px solid var(--card-default-color-border);border-radius:8px;background-color:var(--card-default-color-background);text-align:center}.agent-view__state-message{margin:0;font-family:var(--font-family-standard),sans-serif;font-size:var(--font-size-3-14, 14px);line-height:20px;color:var(--color-grey-700)}.agent-view__state--error .agent-view__state-message{color:var(--color-semantic-destructive-600)}.agent-view__empty{display:grid;grid-column:1/-1;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--spacing-xxlarge, 32px);justify-self:center;align-items:center;width:100%;max-width:1100px;min-height:0;padding:var(--spacing-xxlarge, 32px);box-sizing:border-box;border:1px solid var(--card-default-color-border);border-radius:8px;background-color:var(--card-default-color-background)}.agent-view__empty-content{display:flex;flex-direction:column;gap:var(--spacing-large, 16px);width:100%}.agent-view__empty-content .ds-heading{justify-content:flex-start}.agent-view__empty-lead,.agent-view__empty-hint{margin:0;font-family:var(--font-family-standard),sans-serif;font-size:var(--font-size-3-14, 14px);font-weight:var(--font-weight-regular);line-height:20px;color:var(--color-grey-700)}.agent-view__empty-hint strong{font-weight:var(--font-weight-semi-bold);color:var(--color-grey-900)}.agent-view__empty-columns{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--spacing-medium, 12px)}.agent-view__empty-column{display:flex;align-items:flex-start;gap:var(--spacing-small, 8px)}.agent-view__empty-column-indicator{display:inline-flex;flex-shrink:0;line-height:0;padding-top:2px}.agent-view__empty-column-text{display:flex;flex-direction:column;gap:2px}.agent-view__empty-column-title{font-family:var(--type-headings-h4-family),sans-serif;font-size:var(--type-headings-h4-size);font-weight:var(--type-headings-h4-weight);line-height:var(--type-headings-h4-line-height);color:var(--color-grey-900)}.agent-view__empty-column-description{font-family:var(--font-family-standard),sans-serif;font-size:var(--font-size-3-14, 14px);font-weight:var(--font-weight-regular);line-height:20px;color:var(--color-grey-600)}.agent-view__empty-visual{display:flex;justify-content:center;align-items:center}.agent-view__empty-illustration{width:100%;max-width:360px;height:auto}@media (width <= 600px){.agent-view__empty{grid-template-columns:1fr}.agent-view__empty-visual{order:-1}}@keyframes agent-view-icon-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
1
+ .agent-view-frontend{--page-heading-spacing-gap: 0px;--modal-header-spacing-padding: 0px}.agent-workspace{--page-heading-spacing-gap: 0px}.scrollable-region{position:relative;isolation:isolate;display:flex;flex:1;flex-direction:column;min-height:0;min-width:0}.scrollable-region__viewport{flex:1;min-height:0;overflow:hidden auto}.scrollable-region__overlay{position:absolute;z-index:2;pointer-events:none}.scrollable-region__overlay .scrollable-region__edge{pointer-events:auto}.scrollable-region__fade{position:absolute;right:0;left:0;z-index:1;height:40px;pointer-events:none}.scrollable-region__fade--top{top:0;background:linear-gradient(to bottom,var(--color-white, #ffffff) 0%,rgba(255,255,255,0) 100%)}.scrollable-region__fade--bottom{bottom:0;background:linear-gradient(to top,var(--color-white, #ffffff) 0%,rgba(255,255,255,0) 100%)}.scrollable-region__edge{position:absolute;left:50%;z-index:2;display:inline-flex;align-items:center;justify-content:center;width:36px;height:28px;padding:0;color:var(--color-grey-600, #6b6b7b);cursor:pointer;background-color:var(--color-white, #ffffff);border:1px solid var(--card-default-color-border, #e4e4ee);border-radius:999px;box-shadow:0 2px 10px #1f1f2e1a;transform:translate(-50%);transition:color .12s ease,border-color .12s ease,box-shadow .12s ease,transform .12s ease}.scrollable-region__edge:hover{color:var(--color-brand-600);border-color:var(--color-brand-600);box-shadow:0 4px 14px #1f1f2e24}.scrollable-region__edge:focus-visible{outline:2px solid var(--color-brand-600);outline-offset:2px}.scrollable-region__edge--top{top:8px}.scrollable-region__edge--bottom{bottom:8px}.ask-arbor-prompt-library{width:100%;box-sizing:border-box}.ask-arbor-prompt-library__grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.ask-arbor-prompt-library__grid-item{display:flex;flex-direction:column;min-width:0}.ask-arbor-prompt-library__grid-item--full-width{grid-column:1/-1}.ask-arbor-prompt-library__expanded-block{width:100%;display:flex;flex-direction:column;min-width:0}.ask-arbor-prompt-library__expanded-block .ask-arbor-prompt-library__category{border-bottom-left-radius:0;border-bottom-right-radius:0}.ask-arbor-prompt-library__expanded-block .ask-arbor-prompt-library__drawer{margin-top:0;border-top-left-radius:0;border-top-right-radius:0}.ask-arbor-prompt-library__category{width:100%;border-radius:8px;border:1px solid #dfdcdb;background:#fff;overflow:hidden;box-sizing:border-box;transition:box-shadow .25s ease;cursor:pointer;height:100%}.ask-arbor-prompt-library__category:hover .ask-arbor-prompt-library__header{border-color:#dfdcdb;background:#f9f8f8}.ask-arbor-prompt-library__category--expanded{box-shadow:0 4px 12px #20202014;height:auto}.ask-arbor-prompt-library__header{display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;gap:8px;width:100%;height:100%;padding:14px 16px;cursor:pointer;border-radius:8px;box-sizing:border-box;transition:border-color .15s ease,background .15s ease}.ask-arbor-prompt-library__header:focus{outline:none}.ask-arbor-prompt-library__icon-circle{grid-column:1;grid-row:1;align-self:center;box-sizing:border-box;display:flex;flex-direction:row;align-items:center;justify-content:center;padding:6px;gap:0;width:24px;height:24px;border-radius:6px}.ask-arbor-prompt-library__category--green .ask-arbor-prompt-library__icon-circle{background:#e1eed3;color:#355629}.ask-arbor-prompt-library__category--blue .ask-arbor-prompt-library__icon-circle{background:#daf9ff;color:#227280}.ask-arbor-prompt-library__category--purple .ask-arbor-prompt-library__icon-circle{background:#f0d7e5;color:#cc79a7}.ask-arbor-prompt-library__category--orange .ask-arbor-prompt-library__icon-circle{background:#fef2e4;color:#7c4a0f}.ask-arbor-prompt-library__category--teal .ask-arbor-prompt-library__icon-circle{background:#c6e7e4;color:#40b0a6}.ask-arbor-prompt-library__category--salmon .ask-arbor-prompt-library__icon-circle{background:#efc4bf;color:#ed8a7a}.ask-arbor-prompt-library__category--yellow .ask-arbor-prompt-library__icon-circle{background:#fefad9;color:#7e700b}.ask-arbor-prompt-library__header-text{grid-column:2;grid-row:1;min-width:0;align-self:center}.ask-arbor-prompt-library__title{margin:0;font-size:14px;font-weight:600;color:#3c3735;line-height:1.25;width:100%}.ask-arbor-prompt-library__description{grid-column:1/-1;grid-row:2;margin:0;font-size:12px;font-weight:400;color:#595350;line-height:1.2;width:100%;box-sizing:border-box}.ask-arbor-prompt-library__chevron{grid-column:3;grid-row:1;align-self:center;flex-shrink:0}.ask-arbor-prompt-library__drawer{margin-top:6px;border-radius:0 0 8px 8px;border:1px solid #dfdcdb;border-top:none;background:#fff;box-shadow:0 2px 8px #20202014;box-sizing:border-box;padding:10px;display:flex;flex-direction:column;gap:8px;overflow:hidden;animation:ask-arbor-drawer-enter .25s ease}@keyframes ask-arbor-drawer-enter{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.ask-arbor-prompt-library__prompt-group{display:flex;flex-direction:column;margin-top:5px}.ask-arbor-prompt-library__prompt-group+.ask-arbor-prompt-library__prompt-group{padding-top:10px}.ask-arbor-prompt-library__prompt-group .ds-tag{align-self:flex-start;font-size:12px}.ask-arbor-prompt-library__prompts{display:flex;flex-direction:column;gap:4px;padding-top:10px}.ask-arbor-prompt-library__prompt-row{box-sizing:border-box;display:flex;flex-direction:row;justify-content:space-between;align-items:center;width:calc(100% - 10px);margin-left:10px;margin-right:10px;padding:10px 10px 10px 20px;gap:11px;background:#f9f8f8;border:1px solid #efeeed;border-radius:8px;cursor:pointer;font-size:14px;font-weight:400;color:#3c3735;text-align:left;transition:background .15s ease}.ask-arbor-prompt-library__prompt-row:hover{background:#efeeed}.ask-arbor-prompt-library__prompt-row:focus{outline:none}.ask-arbor-prompt-library__prompt-text{flex:1;min-width:0;font-size:14px;line-height:1.3}.ask-arbor-settings{position:absolute;bottom:100%;right:0;margin-bottom:4px;min-width:160px;padding:2px 0;background:#fff;border:1px solid #dfdcdb;border-radius:8px;box-shadow:0 4px 12px #20202014;z-index:10}.ask-arbor-settings__item{display:flex;flex-direction:row;align-items:center;gap:8px;width:100%;padding:4px 8px;border:none;background:none;font-size:14px;line-height:120%;color:#3c3735;text-align:left;cursor:pointer;text-decoration:none}.ask-arbor-settings__item:hover{background:#efeeed}.ask-arbor-settings__label{flex:1}.ask-arbor-input{display:flex;flex-direction:column;align-items:center;gap:7px;position:relative;width:100%;max-width:548px}.ask-arbor-input__content{display:flex;flex-direction:column;align-items:center;gap:7px;flex:1;min-width:0;width:100%}.ask-arbor-input__file-input{position:absolute;width:0;height:0;opacity:0;overflow:hidden;pointer-events:none}.ask-arbor-input__frame{box-sizing:border-box;display:flex;flex-direction:column;align-items:flex-start;gap:16px;width:100%;min-height:97px;padding:16px;background:#fff;border:1px solid #dfdcdb;border-radius:8px;box-shadow:0 4px 12px #20202014;position:relative}.ask-arbor-input__frame:focus-within{border-color:#68aa22}.ask-arbor-input__frame--dragging{border-color:#ada8a6;border-style:dashed}.ask-arbor-input__frame--dragging-rejected{border-color:#fa9d9d;background:#fde2e2}.ask-arbor-input__drop-overlay{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border-radius:7px;background:#ffffffeb;pointer-events:none}.ask-arbor-input__drop-overlay--rejected{background:#fde2e2f0}.ask-arbor-input__drop-overlay-text{font-size:14px;line-height:120%;color:#3c3735}.ask-arbor-input__drop-overlay--rejected .ask-arbor-input__drop-overlay-text{color:#9d1010;font-weight:600}.ask-arbor-input__drop-overlay-hint{font-size:12px;line-height:120%;color:#9d1010;text-align:center;max-width:80%}.ask-arbor-input__upload-rejection{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;display:flex;align-items:center;gap:8px;padding:0 28px 0 16px;border-radius:7px;background:#fde2e2;color:#9d1010;font-size:14px;line-height:120%;cursor:pointer}.ask-arbor-input__upload-rejection-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ask-arbor-input__file-cards{display:flex;flex-wrap:wrap;gap:8px;width:100%}.ask-arbor-input__file-cards--hidden{visibility:hidden}.ask-arbor-input__file-card{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:8px 10px;background:#f9f8f8;border:1px solid #dfdcdb;border-radius:8px;color:#3c3735}.ask-arbor-input__file-card-name{flex:1;min-width:0;max-width:280px;font-size:13px;line-height:120%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ask-arbor-input__file-card-dismiss{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;border:none;background:transparent;color:inherit;cursor:pointer;padding:0}.ask-arbor-input__upload-rejection-dismiss{display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:inherit;cursor:pointer;position:absolute;top:50%;right:0;transform:translateY(-50%)}.ask-arbor-input__input-zone{display:flex;flex-direction:column;gap:16px;width:100%}.ask-arbor-input__input-row{display:flex;align-items:center;gap:4px;width:100%;min-height:17px}.ask-arbor-input__textarea{flex:1;min-width:0;border:none;background:transparent;resize:none;font-size:14px;line-height:120%;color:#3c3735;outline:none}.ask-arbor-input__textarea::placeholder{color:#c7c4c3}@supports (field-sizing: content){.ask-arbor-input__textarea{field-sizing:content;max-height:300px}}.ask-arbor-input__bottom-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;width:100%;height:32px}.ask-arbor-input__actions-right{display:flex;justify-content:flex-end;align-items:center;gap:8px;flex:1}.ask-arbor-input__timer{margin-right:4px;font-size:14px;line-height:120%;color:#3c3735}.ask-arbor-input__settings-wrap{position:relative}.ask-arbor-input__settings-btn--open{background:#efeeed}.ask-arbor-input__disclaimer{width:100%;margin:0;font-size:12px;line-height:120%;color:#3c3735;text-align:center}.chat-message__footer-actions,.chat-message--warning,.chat-message--error,.chat-message--info,.chat-message--agent{max-width:80%;width:auto;margin-right:auto}.chat-message-container{margin-bottom:10px}.chat-message-container--user{display:flex;justify-content:flex-end}.chat-message-container--agent{display:inline-flex;flex-direction:column;align-items:stretch;margin-right:auto;min-width:100%}.chat-message-container__content{display:flex;flex-direction:column;width:fit-content;max-width:100%;align-self:flex-start}.chat-message{border-radius:5px;padding:10px;position:relative;white-space:pre-wrap;line-height:18px;align-items:center}.chat-message a{text-decoration:none;color:#f7931e;cursor:pointer}.chat-message a:hover{text-decoration:underline}.chat-message--user{background-color:#efeeed;max-width:80%;width:auto;margin-left:auto}.chat-message--agent{padding-left:0}.chat-message--info{background-color:#daf9ff}.chat-message--error{background-color:#fde2e2}.chat-message--warning{background-color:#fef2e4}.chat-message--error,.chat-message--info,.chat-message--warning{display:flex;align-items:flex-start;gap:8px}.chat-message--error .chat-message__icon,.chat-message--info .chat-message__icon,.chat-message--warning .chat-message__icon{flex-shrink:0;width:35px;display:flex;align-items:center;justify-content:center;font-size:25px}.chat-message__footer-actions{display:flex;flex-direction:row;justify-content:flex-start;align-items:flex-start;margin-top:9px;min-width:0;box-sizing:border-box}.chat-message__follow-up-prompts{flex-grow:1;max-width:90%}.chat-message__follow-up-prompts-list{display:flex;flex-flow:row wrap;gap:8px;list-style:none;margin:0;padding:0}.chat-message__follow-up-prompts-list li{max-width:100%}.chat-message__footer-icons{display:flex;flex-direction:row;align-items:center;gap:0;flex:none}.chat-message__feedback{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;padding:0 0 4px;background:#fff;flex:none;align-self:stretch;flex-grow:0;min-width:0}.chat-message__feedback-question{font-weight:400;font-size:14px;line-height:120%;display:flex;align-items:center;color:#3c3735;flex:none;flex-grow:0}.chat-message__feedback-buttons{display:flex;flex-direction:row;align-items:center;padding:0;gap:0;flex:none;flex-grow:0}.chat-message__feedback-button{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;padding:6px 12px;gap:8px;min-height:36px;height:36px;box-sizing:border-box;background:#fff;border:none;cursor:pointer;font-style:normal;font-weight:700;font-size:18px;line-height:120%}.chat-message__feedback-button--up,.chat-message__feedback-button--up .chat-message__feedback-button-icon,.chat-message__feedback-button--up .chat-message__feedback-button-text{color:#3c3735}.chat-message__feedback-button--down{width:180px;color:#595350}.chat-message__feedback-button--down .chat-message__feedback-button-icon,.chat-message__feedback-button--down .chat-message__feedback-button-text{color:#595350}.chat-message__feedback-button--selected.chat-message__feedback-button--up,.chat-message__feedback-button--selected.chat-message__feedback-button--up .chat-message__feedback-button-icon,.chat-message__feedback-button--selected.chat-message__feedback-button--up .chat-message__feedback-button-text{color:#4e801a}.chat-message__feedback-button--selected.chat-message__feedback-button--down,.chat-message__feedback-button--selected.chat-message__feedback-button--down .chat-message__feedback-button-icon,.chat-message__feedback-button--selected.chat-message__feedback-button--down .chat-message__feedback-button-text{color:#b96e16}.chat-message__feedback-button-icon{flex:none;width:18px;height:18px;font-size:18px;line-height:1;display:flex;align-items:center;justify-content:center;color:inherit}.chat-message__feedback-button-icon svg{width:18px;height:18px}.chat-message__feedback-button-text{flex:none;white-space:nowrap;font-size:14px}.chat-message__icon{top:10px}.chat-message--info .chat-message__icon{color:#33aabf}.chat-message--error .chat-message__icon{color:#9d1010}.chat-message--warning .chat-message__icon{color:#b96e16}.keyboard-shortcut-menu{position:absolute;left:0;width:100%;z-index:1000;top:auto;bottom:100%;margin-bottom:8px}.keyboard-shortcut-menu.keyboard-shortcut-menu-below{bottom:auto;top:60%;margin-bottom:0}.keyboard-shortcut-menu.keyboard-shortcut-menu-hidden{opacity:0;pointer-events:none;visibility:hidden}.keyboard-shortcut-menu .keyboard-shortcut-menu__content{border:solid 1px #c7c4c3;background-color:#fff;border-radius:4px;box-shadow:0 3px 3px #dfdcdb;width:100%;max-height:300px;overflow-y:auto}.keyboard-shortcut-menu .keyboard-shortcut-menu__header{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;border-bottom:1px solid #dfdcdb}.keyboard-shortcut-menu .keyboard-shortcut-menu__close{cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:none;border:none;border-radius:4px}.keyboard-shortcut-menu .keyboard-shortcut-menu__close:hover{background:#efeeed}.keyboard-shortcut-menu .keyboard-shortcut-menu__close:focus-visible{outline:2px solid #68aa22;outline-offset:2px}.keyboard-shortcut-menu .keyboard-shortcut-menu__close-icon{font-size:8px}.keyboard-shortcut-menu .keyboard-shortcut-menu__search{display:flex;align-items:center;padding:8px 0;width:100%}.keyboard-shortcut-menu .keyboard-shortcut-menu__search input{flex:1;border:none;outline:none;font-size:14px;padding:4px 0}.keyboard-shortcut-menu .keyboard-shortcut-menu__items{max-height:200px;overflow-y:auto;list-style-type:none;padding:0;margin:0}.keyboard-shortcut-menu .keyboard-shortcut-menu__item{display:flex;padding:8px 12px;cursor:pointer;transition:background-color .1s ease;text-decoration:none!important;color:inherit;align-items:center;gap:8px}.keyboard-shortcut-menu .keyboard-shortcut-menu__item:hover{background-color:#dfdcdb}.keyboard-shortcut-menu .keyboard-shortcut-menu__item--selected{background-color:#c7c4c3;font-weight:500}.keyboard-shortcut-menu .keyboard-shortcut-menu__item-reference{min-width:100px}.keyboard-shortcut-menu .keyboard-shortcut-menu__item-description{margin-left:8px}.keyboard-shortcut-menu .keyboard-shortcut-menu__item-main{font-weight:800;color:#595350;text-decoration:none!important}.keyboard-shortcut-menu .keyboard-shortcut-menu__item-secondary{color:#776e6a;font-weight:500;text-decoration:none}.keyboard-shortcut-menu .keyboard-shortcut-menu__no-results{padding:12px;color:#ada8a6;text-align:center;font-style:italic}.loading-spinner{display:inline-block;position:relative;width:50px;height:50px;flex-shrink:0}.loading-spinner__inner{position:relative;animation-name:arbor-logo-rotation;animation-duration:1s;animation-iteration-count:infinite;animation-timing-function:ease-in-out;transform-origin:25px 25px}.loading-spinner__circle{height:50px;width:50px;border-radius:100%;opacity:.9;animation-duration:1s;animation-direction:alternate;animation-iteration-count:infinite;animation-timing-function:ease-in-out;position:absolute}.loading-spinner__circle-left{background-color:#7cb93c;animation-name:arbor-logo-left}.loading-spinner__circle-top{background-color:#f7931c;animation-name:arbor-logo-top}.loading-spinner__circle-right{background-color:#deee21;animation-name:arbor-logo-right}.loading-spinner__circle-bottom{background-color:#afd317;animation-name:arbor-logo-bottom}@keyframes arbor-logo-rotation{0%{rotate:0}to{rotate:360deg}}@keyframes arbor-logo-left{0%{left:-25px}to{left:0}}@keyframes arbor-logo-right{0%{left:25px}to{left:0}}@keyframes arbor-logo-top{0%{top:-25px}to{top:0}}@keyframes arbor-logo-bottom{0%{top:25px}to{top:0}}@keyframes chat-panel-notify-button-fade-in{0%{opacity:0}to{opacity:1}}.chat-panel__loading-container{display:flex;flex-direction:column;gap:0;position:relative;left:-5px}.chat-panel__loading-content{display:flex;flex-direction:row;align-items:center}.chat-panel__loading-spinner-container{background-color:#eee;display:flex;justify-content:center;align-items:center;flex-shrink:0;border-radius:4px}.loading-spinner.chat-panel__loading-spinner{flex-shrink:0;transform:scale(.25);width:40px;height:40px;position:relative;left:-1px;top:-1px}.chat-panel__loading-phrase{font-size:14px;color:#3c3735;opacity:1;transition:opacity .3s ease-in-out;flex-grow:1;display:flex;align-items:center}.chat-panel__loading-phrase.fade-out{opacity:0}.chat-panel__loading-phrase.fade-in{opacity:1}.chat-panel__notify-later{margin-left:40px;display:flex;flex-direction:column;align-items:flex-start;gap:12px;animation:chat-panel-notify-button-fade-in .3s ease-in-out forwards}.chat-panel__notify-later-message{font-size:14px;font-weight:400;line-height:1.4;color:#3c3735;margin:0}.chat-panel__notify-later-btn{display:inline-flex;align-items:center;justify-content:center;padding:6px 14px;border-radius:4px;border:1px solid #dfdcdb;background:#fff;font-size:14px;cursor:pointer;color:#3c3735}.chat-panel__notify-later-btn:hover{background:#efeeed}.chat-panel{display:flex;flex-direction:column}.chat-panel .chat-panel__body{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;padding-bottom:20px}.chat-panel .chat-panel__body--no-messages{padding-bottom:0;flex:none}.chat-panel .chat-panel__message-list-wrapper{position:relative;flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.chat-panel .chat-panel-message-list{display:flex;flex-direction:column;list-style-type:none;margin:0;flex:1;min-height:0;overflow-y:auto;padding:0 24px}.chat-panel .chat-panel__body:has(.chat-panel__message-list-wrapper){min-height:calc(100vh - 240px)}.chat-panel .chat-panel__body:has(.chat-panel__message-list-wrapper) .chat-panel__input-container{position:sticky;bottom:0;z-index:1;background-color:#fff}.chat-panel .chat-panel-footer{position:relative;top:-12px}.chat-panel .chat-panel__active-chat-header{display:flex;justify-content:flex-end;align-items:center;width:100%;box-sizing:border-box;margin-bottom:10px;padding:0}.chat-panel .chat-panel__active-chat-header .chat-panel__new-chat-button{display:inline-block;padding:6px 14px;border-radius:4px;font-size:14px;font-weight:600;background-color:#68aa22;color:#fff;text-decoration:none;border:none;cursor:pointer}.chat-panel .chat-panel__active-chat-header .chat-panel__new-chat-button:hover{background-color:#4e801a}.chat-panel .chat-panel__tabs{flex-shrink:0;padding:0 16px}.chat-panel .chat-panel__tab-content{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;padding-top:16px}.chat-panel .chat-panel__tab-content:has(.chat-panel__tab-panel--recent){padding-top:0}.chat-panel .chat-panel__tab-panel--recent{flex:1;min-height:0;overflow-y:auto}.chat-panel .chat-panel__ai-interactions-loading,.chat-panel .chat-panel__ai-interactions-empty{padding:32px 24px;color:#595350;font-size:14px;text-align:center}.chat-panel .chat-panel__ai-interactions-table{width:100%;margin:0}.chat-panel .chat-panel__ai-interactions-table .ag-row{cursor:pointer}.chat-panel .chat-panel__sample-prompt-container{display:flex;justify-content:space-evenly;padding:0 23px;gap:10px}.chat-panel .chat-panel__sample-prompt{display:flex;text-align:left;border-radius:5.5px;border:1px solid #dfdcdb;padding:12px;cursor:pointer;font-size:14px;flex:1;line-height:19px;background-color:#fff;filter:drop-shadow(0 4px 12px rgba(32,32,32,.08))}.chat-panel .chat-panel__sample-prompt:hover{background-color:#f9f9f9}.chat-panel .chat-panel__daily-prompt{display:flex;text-align:left;border-radius:5.5px;border:1px solid #dfdcdb;padding:12px;cursor:pointer;font-size:14px;flex:1;line-height:19px;background-color:#f8fff1}.chat-panel .chat-panel__daily-prompt:hover{background-color:#e0f5d8}.chat-panel .chat-panel__message-limit{position:absolute;bottom:0;right:0;padding:4px;border-radius:2px;background-color:#efeeed}.chat-panel .chat-panel__input-container{flex-shrink:0;display:flex;gap:9px;padding:7px 24px;min-height:50px}.chat-panel .chat-panel__input-wrapper{position:relative;flex:1;display:flex;flex-direction:column;min-width:0}.chat-panel .chat-panel__input-wrapper .ask-arbor-input{width:100%;max-width:none}.chat-panel .chat-panel__speech-disabled-wrapper{text-align:left;padding-left:20px;padding-bottom:10px;font-style:italic}.chat-panel .chat-panel__chat-intro{flex:1;max-height:140px;display:flex;flex-direction:column;padding:32px 72px}.chat-panel .chat-panel__chat-intro-frame{display:flex;flex-direction:row;justify-content:center;align-items:center;padding:0;gap:12px;flex:none}.chat-panel .chat-panel__chat-intro-icon{display:inline-flex;flex:none;width:40px;height:42px;align-items:center;justify-content:center}.chat-panel .chat-panel__chat-intro-icon svg{width:40px;height:42px}.chat-panel .chat-panel__chat-intro-heading{font-style:normal;font-weight:700;font-size:20px;line-height:120%;display:flex;align-items:center;color:#3c3735;margin:0;flex:none}.chat-panel .chat-panel__chat-intro-body{font-style:normal;font-weight:400;font-size:14px;line-height:120%;display:flex;align-items:center;text-align:center;color:#3c3735;margin:0;flex:none;align-self:stretch;max-width:436px}.chat-panel table{width:100%;border-collapse:separate;border-spacing:0;margin:20px 0;font-size:14px;text-align:left;border:1px solid #dfdcdb;border-radius:4px;overflow:scroll}.chat-panel table thead{background-color:#f9f8f8;border-bottom:1px solid #ada8a6}.chat-panel table thead th{padding:10px;font-weight:700;border-bottom:1px solid #ada8a6}.chat-panel table tbody th{padding-left:10px;border-bottom:1px solid #ada8a6}.chat-panel table tbody tr{height:35px}.chat-panel table tbody tr:nth-child(odd){background-color:#fff}.chat-panel table tbody tr:nth-child(2n){background-color:#f9f8f8}.chat-panel table tbody tr td{padding:10px;border-bottom:1px solid #ada8a6;vertical-align:top}.chat-panel table tbody tr:last-child td{border-bottom:none}.chat-panel .chat-panel__message-tag{background-color:#c7c4c3;font-weight:700}.ds-slideover{top:0;z-index:2147483647;border-left:1px solid #e8e8e8;--slideover-color-background: #fff;--slideover-spacing-padding: 0px}.ds-slideover__contents{overflow:hidden}.resource-preview-slideover .ds-slideover-manager--active{z-index:30}.resource-preview-slideover .ds-slideover{min-width:580px;max-width:50%}.resource-preview-slideover .ds-slideover__header .ds-heading{display:none}.resource-preview-slideover .ds-slideover__contents{min-height:0;padding:0}.resource-preview-slideover__body{display:flex;flex:1;flex-direction:column;min-height:0;height:100%;padding:0 12px 12px;box-sizing:border-box}.resource-preview-slideover__status,.resource-preview-slideover__error{display:flex;align-items:center;gap:8px;margin:0;font-size:14px;line-height:20px;color:var(--color-grey-700, #374151)}.resource-preview-slideover__error{color:var(--color-semantic-danger-700, #b91c1c)}.resource-preview-slideover__frame{flex:1;width:100%;min-height:0;border:1px solid var(--card-default-color-border, #e4e4ee);border-radius:12px;background:var(--color-grey-000, #fff);padding:5px}.agent-workspace{--modal-header-spacing-padding: 16px;width:calc(100vw - 32px);height:calc(100vh - 32px);min-width:unset;max-width:calc(100vw - 32px);max-height:calc(100vh - 32px);overflow:hidden}.agent-workspace__header-title{display:flex;align-items:center;gap:12px;min-width:0;flex:1}.agent-workspace__header-title .ds-modal__title{font-size:var(--type-headings-h3-size, 18px);font-weight:var(--type-headings-h3-weight, 600);line-height:var(--type-headings-h3-line-height, 24px)}.agent-workspace__header-avatar{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;color:var(--color-brand-600);border-radius:50%}.agent-workspace__header-actions{display:flex;align-items:center;gap:8px}.agent-workspace__phase{padding:2px 10px;font-size:12px;font-weight:var(--font-weight-semi-bold, 600);color:var(--color-grey-600, #6b6b7b);background-color:var(--color-grey-100, #f0f0f3);border-radius:999px}.agent-workspace__phase--running{color:var(--color-brand-600);background-color:var(--color-brand-050)}.agent-workspace__phase--stopped{color:var(--color-semantic-warning-600, #b45309);background-color:var(--color-semantic-warning-050, #fff7ed)}.agent-workspace__phase--complete{color:var(--color-semantic-success-600, #15803d);background-color:var(--color-semantic-success-050, #ecfdf3)}.agent-workspace__body{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,1fr) minmax(240px,1fr);gap:16px;flex:1;min-height:0;padding:16px;background-color:var(--color-grey-050, #f7f7f8)}.agent-workspace__body--no-checklist{grid-template-columns:minmax(0,1fr) minmax(240px,1fr)}.agent-workspace__body--no-resources{grid-template-columns:minmax(0,1fr) minmax(220px,1fr)}.agent-workspace__body--no-checklist.agent-workspace__body--no-resources{grid-template-columns:minmax(0,1fr)}.agent-workspace__panel{display:flex;flex-direction:column;min-height:0;background-color:var(--color-white, #ffffff);border:1px solid var(--card-default-color-border, #e4e4ee);border-radius:12px}.agent-workspace__panel--chat{background-color:var(--color-white, #ffffff);overflow:hidden}.agent-workspace__panel--chat.agent-workspace__panel--timeline{overflow:visible}.agent-workspace__chat-keep-alive:not([hidden]){display:flex;flex:1;flex-direction:column;min-height:0}.agent-workspace__chat-body{display:flex;flex:1;flex-direction:column;min-height:0}.agent-workspace__ask-arbor{display:flex;flex:1;flex-direction:column;min-height:0;padding-top:20px}.agent-workspace__ask-arbor>.scrollable-region{flex:1;min-height:0}.agent-workspace__ask-arbor .chat-panel{flex:1;min-height:0;height:100%;border:none;border-radius:0}.agent-workspace__ask-arbor .chat-panel__body:has(.chat-panel__message-list-wrapper){min-height:0}.agent-workspace__ask-arbor .chat-panel__tabs{display:none}.agent-workspace__ask-arbor .chat-message-container--agent .chat-message-container__content{padding-bottom:52px}.agent-workspace__clarification{display:flex;flex-direction:column;gap:10px;margin:16px 16px 0;padding:12px 14px;background-color:var(--color-brand-050);border:1px solid var(--card-default-color-border, #e4e4ee);border-radius:12px}.agent-workspace__clarification-text{margin:0;font-size:14px;line-height:20px}.agent-workspace__clarification-dismiss{align-self:flex-start;padding:0;font:inherit;font-size:13px;color:var(--color-brand-800);cursor:pointer;background:none;border:none;text-decoration:underline}.agent-workspace__panel-header{display:flex;align-items:center;gap:8px;padding:12px 14px;border-bottom:1px solid var(--card-default-color-border, #e4e4ee)}.agent-workspace__panel-count{margin-left:auto;font-weight:var(--font-weight-semi-bold, 600);color:var(--color-grey-600, #6b6b7b)}.agent-workspace__panel-header-action{margin-left:auto}.agent-workspace__panel-body{display:flex;flex:1;flex-direction:column;min-height:0;overflow:hidden}.agent-workspace__panel-body .scrollable-region__viewport{padding:12px 14px}.agent-workspace__panel-hint{margin:0 0 12px;font-size:13px;line-height:18px;color:var(--color-grey-600, #6b6b7b)}.agent-workspace__chat-scroll{flex:1;min-height:0;padding:20px;overflow-y:auto}.agent-workspace__messages{display:flex;flex-direction:column;gap:16px;margin:0;padding:0;list-style:none}.agent-workspace__message{display:flex;gap:10px;max-width:82%}.agent-workspace__message--user{align-self:flex-end;flex-direction:row-reverse}.agent-workspace__message--system{align-self:center;max-width:100%}.agent-workspace__message-body{display:flex;flex-direction:column;gap:8px;min-width:0}.agent-workspace__bubble{padding:10px 14px;font-size:14px;line-height:20px;white-space:pre-wrap;background-color:var(--color-grey-100, #f0f0f3);border-radius:14px}.agent-workspace__message--agent .agent-workspace__bubble{background-color:var(--color-brand-050);border-bottom-left-radius:4px}.agent-workspace__message--user .agent-workspace__bubble{color:var(--color-white, #ffffff);background-color:var(--color-brand-600);border-bottom-right-radius:4px}.agent-workspace__message--system .agent-workspace__bubble{font-size:13px;color:var(--color-grey-600, #6b6b7b);background-color:var(--color-grey-100, #f0f0f3)}.agent-workspace__chips{display:flex;flex-wrap:wrap;gap:8px}.agent-workspace__chip{padding:6px 12px;font:inherit;font-size:13px;color:var(--color-brand-800);cursor:pointer;background-color:var(--color-white, #ffffff);border:1px solid var(--card-default-color-border, #e4e4ee);border-radius:999px;transition:background-color .15s ease,border-color .15s ease}.agent-workspace__chip:hover{background-color:var(--color-brand-050);border-color:var(--color-brand-600)}.agent-workspace__typing{display:inline-flex;gap:4px;align-items:center}.agent-workspace__typing span{width:6px;height:6px;background-color:var(--color-grey-600, #6b6b7b);border-radius:50%;animation:agent-workspace-typing 1.2s infinite ease-in-out}.agent-workspace__typing span:nth-child(2){animation-delay:.15s}.agent-workspace__typing span:nth-child(3){animation-delay:.3s}.agent-workspace__notice{display:flex;align-items:center;gap:8px;margin:0 16px 12px;padding:10px 14px;font-size:13px;color:var(--color-grey-600, #6b6b7b);background-color:var(--color-grey-050, #f7f7f8);border:1px solid var(--card-default-color-border, #e4e4ee);border-radius:12px}.agent-workspace__composer{display:flex;align-items:flex-end;gap:8px;padding:12px 16px 16px;border-top:1px solid var(--card-default-color-border, #e4e4ee)}.agent-workspace__composer-input{flex:1;max-height:140px}.agent-workspace__file-input{display:none}.agent-workspace__resource-list{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none}.agent-workspace__resource-card{display:flex;align-items:flex-start;gap:10px;width:100%;padding:12px;border:1px solid var(--card-default-color-border, #e4e4ee);border-radius:12px;background:var(--color-white, #ffffff);text-align:left;text-decoration:none;color:inherit;cursor:pointer;font:inherit;transition:border-color .15s ease,box-shadow .15s ease}.agent-workspace__resource-card:hover,.agent-workspace__resource-card:focus-visible{border-color:var(--color-brand-600);box-shadow:0 1px 4px #00000014}.agent-workspace__resource-card:focus-visible{outline:2px solid var(--color-brand-600);outline-offset:2px}.agent-workspace__resource-icon{display:inline-flex;align-items:center;justify-content:center;flex:none;width:32px;height:32px;border-radius:8px;background:var(--color-brand-050)}.agent-workspace__resource-icon--document_html,.agent-workspace__resource-icon--file{background:var(--color-semantic-caution-050)}.agent-workspace__resource-icon--link{background:var(--color-semantic-info-050)}.agent-workspace__resource-icon--workflow{background:var(--color-semantic-warning-050)}.agent-workspace__resource-content{display:flex;flex:1;flex-direction:column;gap:4px;min-width:0}.agent-workspace__resource-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.agent-workspace__resource-name{font-size:14px;font-weight:600;line-height:20px;color:var(--color-grey-900, #1f1f2e);overflow-wrap:anywhere}.agent-workspace__resource-badge{flex:none;padding:2px 8px;border-radius:999px;background:var(--color-brand-050);color:var(--color-brand-800);font-size:11px;font-weight:600;line-height:16px;white-space:nowrap}.agent-workspace__resource-badge--document_html,.agent-workspace__resource-badge--file{background:var(--color-semantic-caution-050);color:var(--color-semantic-caution-800)}.agent-workspace__resource-badge--link{background:var(--color-semantic-info-050);color:var(--color-semantic-info-700)}.agent-workspace__resource-badge--workflow{background:var(--color-semantic-warning-050);color:var(--color-semantic-warning-700)}.agent-workspace__resource-open{flex:none;margin-top:2px}.agent-workspace__task-group{display:flex;flex-direction:column;gap:8px}.agent-workspace__task-group--following{margin-top:16px;padding-top:16px;border-top:1px solid var(--card-default-color-border, #e4e4ee)}.agent-workspace__task-group-label{margin:0;font-size:12px;font-weight:600;line-height:16px;letter-spacing:.02em;color:var(--color-grey-600, #6b6b7b)}.agent-workspace__task-list{display:flex;flex-direction:column;gap:10px;margin:0;padding:0;list-style:none}.agent-workspace__task-row{display:flex;align-items:flex-start;gap:8px}.agent-workspace__task-button{display:block;width:100%;margin:0;padding:0;border:0;background:none;font:inherit;text-align:left;cursor:pointer}.agent-workspace__task-button:focus-visible .agent-workspace__task-row{outline:2px solid var(--color-brand-600, #4f46e5);outline-offset:2px}.agent-workspace__task-button:hover .agent-workspace__task-row{background-color:var(--color-semantic-warning-100, #ffedd5)}.agent-workspace__task-content{display:flex;flex:1;flex-direction:column;gap:2px;min-width:0}.agent-workspace__task-label{font-size:14px;line-height:20px;color:var(--color-grey-900, #1f1f2e)}.agent-workspace__task-description{font-size:12px;line-height:16px;color:var(--color-grey-600, #6b6b7b)}.agent-workspace__task--hitl .agent-workspace__task-row{padding:8px;background-color:var(--color-semantic-warning-050, #fff7ed);border-radius:8px}.agent-workspace__task--failed .agent-workspace__task-row{padding:8px;background-color:var(--color-semantic-destructive-050, #fef2f2);border-radius:8px}.agent-workspace__task--generating-a-response .agent-workspace__task-row{padding:8px;background-color:var(--color-semantic-success-050, #ecfdf3);border-radius:8px}.agent-workspace__task-children{display:flex;flex-direction:column;gap:8px;margin:8px 0 0;padding:0 0 0 24px;list-style:none;border-left:2px solid var(--card-default-color-border, #e4e4ee)}.agent-workspace__task-child .agent-workspace__task-label{font-size:13px}.agent-workspace__task-icon--spinning{animation:agent-workspace-icon-spin 1s linear infinite}.agent-workspace__loading,.agent-workspace__empty,.agent-workspace__error{display:flex;gap:8px;align-items:center;margin:0;font-size:14px;color:var(--color-grey-600, #6b6b7b)}.agent-workspace__error{color:var(--color-semantic-destructive-600, #dc2626)}@media (width <= 900px){.agent-workspace__header{flex-wrap:wrap;gap:12px}.agent-workspace__header-actions{flex-wrap:wrap;justify-content:flex-end}.agent-workspace__body,.agent-workspace__body--no-checklist,.agent-workspace__body--no-resources,.agent-workspace__body--no-checklist.agent-workspace__body--no-resources{grid-template-columns:minmax(0,1fr);grid-auto-rows:auto;align-content:start;overflow-x:hidden;overflow-y:auto}.agent-workspace__panel--chat{height:min(70vh,560px);min-height:320px;flex:none}.agent-workspace__panel--checklist,.agent-workspace__panel--documents{flex:none;min-height:240px;max-height:min(50vh,420px)}}@keyframes agent-workspace-icon-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes agent-workspace-typing{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.agent-workspace__timeline{display:flex;flex:1;flex-direction:column;justify-content:center;min-width:0;min-height:0;padding:24px 32px 32px;overflow:visible}.agent-workspace__timeline-status{margin:0;font-size:14px;line-height:20px;color:var(--color-grey-600, #6b6b7b);text-align:center}.agent-timeline{--agent-timeline-node-size: 32px;--agent-timeline-station-size: 10px;--agent-timeline-track-top: 48px;--agent-timeline-track-height: 4px;position:relative;width:100%;max-width:100%;height:140px;overflow:visible;box-sizing:border-box}.agent-timeline__track{position:absolute;top:var(--agent-timeline-track-top);right:calc(var(--agent-timeline-node-size) / 2);left:calc(var(--agent-timeline-node-size) / 2);height:var(--agent-timeline-track-height);background-color:var(--color-grey-800, #3b3b3b);border-radius:999px}.agent-timeline__station{position:absolute;top:calc(var(--agent-timeline-track-top) + (var(--agent-timeline-track-height) - var(--agent-timeline-station-size)) / 2);z-index:2}.agent-timeline__station--terminus,.agent-timeline__station--checklist,.agent-timeline__station--status{top:calc(var(--agent-timeline-track-top) + (var(--agent-timeline-track-height) - var(--agent-timeline-node-size)) / 2)}.agent-timeline__chat-station{position:absolute;top:calc(var(--agent-timeline-track-top) + (var(--agent-timeline-track-height) - var(--agent-timeline-node-size)) / 2);z-index:3}.agent-timeline__station:hover,.agent-timeline__station:focus-within,.agent-timeline__chat-station:hover,.agent-timeline__chat-station:focus-within{z-index:50}.agent-timeline__station-node{display:block;width:var(--agent-timeline-station-size);height:var(--agent-timeline-station-size);padding:0;cursor:default;background-color:var(--tag-neutral-color-background);border:none;border-radius:50%;box-sizing:border-box}.agent-timeline__station-node--terminus,.agent-timeline__station-node--checklist,.agent-timeline__station-node--status{width:var(--agent-timeline-node-size);height:var(--agent-timeline-node-size);border-radius:50%;box-sizing:border-box}.agent-timeline__station-node--terminus{display:inline-flex;align-items:center;justify-content:center;color:var(--tag-category-blue-color-text);background:var(--tag-category-blue-color-background)}.agent-timeline__station-node--checklist{display:inline-flex;align-items:center;justify-content:center;color:var(--tag-category-purple-color-text);background:var(--tag-category-purple-color-background)}.agent-timeline__station-node--status{display:inline-flex;align-items:center;justify-content:center;color:var(--tag-category-orange-color-text);background:var(--tag-category-orange-color-background)}.agent-timeline__station-node--note{border:1px solid black}.agent-timeline__terminus-label{position:absolute;top:calc(100% + 8px);left:50%;font-size:12px;font-weight:600;line-height:16px;color:var(--color-grey-900, #1f1f2e);white-space:nowrap;transform:translate(-50%)}.agent-timeline__pill{position:absolute;top:auto;bottom:calc(100% + 10px);left:50%;z-index:60;display:none;box-sizing:border-box;width:min(400px,70vw);padding:8px 12px;font-size:12px;line-height:16px;color:var(--color-mono-white, #ffffff);white-space:pre-wrap;overflow-wrap:break-word;pointer-events:none;background-color:var(--color-mono-black, #202020);border-radius:8px;transform:translate(-50%)}.agent-timeline__pill-type{display:block;font-weight:600}.agent-timeline__pill-entry{display:block;margin-top:2px;opacity:.85}.agent-timeline__station:hover .agent-timeline__pill,.agent-timeline__station:focus-within .agent-timeline__pill,.agent-timeline__chat-station:hover .agent-timeline__pill,.agent-timeline__chat-station:focus-within .agent-timeline__pill{display:block}.agent-timeline__chat-node{display:inline-flex;align-items:center;justify-content:center;width:var(--agent-timeline-node-size);height:var(--agent-timeline-node-size);padding:0;cursor:pointer;color:var(--tag-category-green-color-text);background:var(--tag-category-green-color-background);border:none;border-radius:50%;box-sizing:border-box}.agent-timeline__chat-node:hover,.agent-timeline__chat-node:focus-visible{outline:2px solid var(--color-mono-black, #202020);outline-offset:2px}.agent-workspace__center-tabs{flex-shrink:0;padding:12px 14px 0}.agent-workspace__center-back{display:flex;flex-shrink:0;padding:8px 14px 0}.new-agent{--page-heading-spacing-gap: 0px;width:min(600px,100%);min-width:unset;max-height:calc(100vh - var(--spacing-medium));overflow:hidden;font-family:var(--font-family-standard),sans-serif;color:var(--color-grey-900, #1f1f2e)}.new-agent--embedded{width:100%;max-height:none;overflow:visible;box-sizing:border-box;padding:var(--spacing-large, 16px)}.new-agent__header{gap:var(--spacing-large)}.new-agent__header-title{display:flex;align-items:center;gap:var(--spacing-medium);min-width:0;flex:1}.new-agent__header-title .ds-modal__title,.new-agent__header-title .new-agent__title{margin:0;font-size:var(--type-headings-h3-size, 18px);font-weight:var(--type-headings-h3-weight, 600);line-height:var(--type-headings-h3-line-height, 24px)}.new-agent__header-avatar{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:32px;height:32px;color:var(--color-brand-600);background-color:var(--color-brand-050);border-radius:50%}.new-agent__body{display:flex;flex-direction:column;gap:var(--spacing-large)}.new-agent__type-field{display:flex;flex-direction:column;gap:var(--spacing-small)}.new-agent__type-label{font-size:12px;font-weight:var(--font-weight-semi-bold, 600);color:var(--color-grey-600, #6b6b7b)}.new-agent__form{display:flex;flex-direction:column;gap:var(--spacing-large)}.new-agent__actions{display:flex;justify-content:flex-end}.new-agent__start-button--starting .ds-icon{animation:new-agent-spin 1s linear infinite}.new-agent__error{margin:0;font-size:13px;line-height:18px;color:var(--color-danger-600, #c62828)}.new-agent__state{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-medium);padding:var(--spacing-large) 0;text-align:center}.new-agent__state-message{margin:0;font-size:13px;line-height:18px;color:var(--color-grey-600, #6b6b7b)}.new-agent__state--error .new-agent__state-message{color:var(--color-danger-600, #c62828)}.new-agent__spinner{animation:new-agent-spin 1s linear infinite}@keyframes new-agent-spin{to{transform:rotate(360deg)}}.agent-view{--agent-view-column-gap: 16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--agent-view-column-gap);width:100%;box-sizing:border-box}.agent-view__header{display:flex;grid-column:1/-1;align-items:center;justify-content:space-between;gap:16px}.agent-view__filters{display:flex;grid-column:1/-1;flex-wrap:wrap;gap:16px}.agent-view__filter{display:flex;flex-direction:column;gap:4px;min-width:220px;max-width:280px;flex:1}.agent-view__filter-label{font-family:var(--font-family-standard),sans-serif;font-size:14px;font-weight:var(--font-weight-semi-bold);line-height:20px;color:var(--color-grey-700)}.agent-view__board{display:grid;grid-column:1/-1;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--agent-view-column-gap);align-items:stretch;width:100%;min-height:600px;border-radius:0}.agent-view__split-column{display:grid;grid-template-rows:1fr 1fr;gap:16px;min-height:0}.agent-view__column{display:flex;flex-direction:column;min-height:0;padding:12px;border:1px solid var(--card-default-color-border);border-radius:8px;background-color:var(--card-default-color-background)}.agent-view__column--split{min-height:0;overflow:hidden}.agent-view__column-header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.agent-view__column-count{margin-left:auto;font-family:var(--font-family-standard),sans-serif;font-weight:var(--font-weight-semi-bold);color:var(--color-grey-600)}.agent-view__card-list{list-style:none;margin:0;padding:0;display:flex;flex:1;flex-direction:column;gap:8px;min-height:0;overflow-y:auto}.agent-view__card{list-style:none}.agent-view__card .ds-card__container{box-shadow:0 4px 12px #20202014}.agent-view__card--expanded .ds-card__container{border-color:var(--card-default-color-border)}.agent-view__card-toggle{display:block;width:100%;padding:0;border:0;background:none;cursor:pointer;text-align:left;font:inherit;color:inherit}.agent-view__card-content{display:flex;align-items:center;gap:8px;min-height:40px}.agent-view__card-chevron{margin-left:auto;flex-shrink:0;color:var(--color-grey-600)}.agent-view__card-invocation-name{font-family:var(--type-headings-h4-family),sans-serif;font-size:var(--type-headings-h4-size);font-weight:var(--type-headings-h4-weight);line-height:var(--type-headings-h4-line-height);color:var(--color-grey-900)}.agent-view__card-agent-name{flex-shrink:0;padding:2px 10px;border-radius:999px;background:var(--color-grey-100);color:var(--color-grey-700);font-size:12px;font-weight:var(--font-weight-semi-bold, 600);line-height:16px;white-space:nowrap}.agent-view__card-progress{margin-top:12px;padding-top:12px;border-top:1px solid var(--card-default-color-border)}.agent-view__card-actions{display:flex;justify-content:flex-end;margin-top:12px}.agent-view__progress-scroll{flex:0 1 auto}.agent-view__progress-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;max-height:500px;overflow-y:auto}.agent-view__progress-item{display:flex;align-items:flex-start;gap:8px;font-family:var(--font-family-standard),sans-serif;font-size:14px;line-height:20px}.agent-view__progress-item--complete{color:var(--color-semantic-success-600)}.agent-view__progress-item--failed{color:var(--color-semantic-destructive-600)}.agent-view__progress-item--hitl{padding:8px;border-radius:6px;background-color:var(--color-semantic-warning-050);color:var(--color-semantic-warning-600)}.agent-view__progress-item--generating-a-response{color:var(--color-brand-600)}.agent-view__progress-item-content{display:flex;flex:1;flex-direction:column;gap:2px;min-width:0}.agent-view__progress-label{color:var(--color-grey-900)}.agent-view__progress-description{color:var(--color-grey-600);font-size:12px;line-height:16px}.agent-view__progress-empty,.agent-view__progress-error{margin:0;font-family:var(--font-family-standard),sans-serif;font-size:14px;line-height:20px;color:var(--color-grey-600)}.agent-view__progress-error{color:var(--color-semantic-destructive-600)}.agent-view__progress-loading{display:flex;align-items:center;gap:8px;font-family:var(--font-family-standard),sans-serif;font-size:14px;line-height:20px;color:var(--color-grey-600)}.agent-view__progress-icon--spinning{animation:agent-view-icon-spin 1s linear infinite}.agent-view__status-indicator,.agent-view__dot{display:inline-flex;line-height:0}.agent-view__dot--grey-dark .ds-dot{background-color:var(--color-grey-600)}.agent-view__state{display:flex;grid-column:1/-1;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-medium, 12px);width:100%;min-height:240px;padding:var(--spacing-xxlarge, 32px);box-sizing:border-box;border:1px solid var(--card-default-color-border);border-radius:8px;background-color:var(--card-default-color-background);text-align:center}.agent-view__state-message{margin:0;font-family:var(--font-family-standard),sans-serif;font-size:var(--font-size-3-14, 14px);line-height:20px;color:var(--color-grey-700)}.agent-view__state--error .agent-view__state-message{color:var(--color-semantic-destructive-600)}.agent-view__empty{display:grid;grid-column:1/-1;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--spacing-xxlarge, 32px);justify-self:center;align-items:center;width:100%;max-width:1100px;min-height:0;padding:var(--spacing-xxlarge, 32px);box-sizing:border-box;border:1px solid var(--card-default-color-border);border-radius:8px;background-color:var(--card-default-color-background)}.agent-view__empty-content{display:flex;flex-direction:column;gap:var(--spacing-large, 16px);width:100%}.agent-view__empty-content .ds-heading{justify-content:flex-start}.agent-view__empty-lead,.agent-view__empty-hint{margin:0;font-family:var(--font-family-standard),sans-serif;font-size:var(--font-size-3-14, 14px);font-weight:var(--font-weight-regular);line-height:20px;color:var(--color-grey-700)}.agent-view__empty-hint strong{font-weight:var(--font-weight-semi-bold);color:var(--color-grey-900)}.agent-view__empty-columns{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--spacing-medium, 12px)}.agent-view__empty-column{display:flex;align-items:flex-start;gap:var(--spacing-small, 8px)}.agent-view__empty-column-indicator{display:inline-flex;flex-shrink:0;line-height:0;padding-top:2px}.agent-view__empty-column-text{display:flex;flex-direction:column;gap:2px}.agent-view__empty-column-title{font-family:var(--type-headings-h4-family),sans-serif;font-size:var(--type-headings-h4-size);font-weight:var(--type-headings-h4-weight);line-height:var(--type-headings-h4-line-height);color:var(--color-grey-900)}.agent-view__empty-column-description{font-family:var(--font-family-standard),sans-serif;font-size:var(--font-size-3-14, 14px);font-weight:var(--font-weight-regular);line-height:20px;color:var(--color-grey-600)}.agent-view__empty-visual{display:flex;justify-content:center;align-items:center}.agent-view__empty-illustration{width:100%;max-width:360px;height:auto}@media (width <= 600px){.agent-view__empty{grid-template-columns:1fr}.agent-view__empty-visual{order:-1}}@keyframes agent-view-icon-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arbor-education/agent-view-frontend",
3
- "version": "0.4.9",
3
+ "version": "0.4.10",
4
4
  "description": "Kanban-style agent status board for Arbor AI agents",
5
5
  "author": "Rick Bairstow <rick.bairstow@arbor-education.com>",
6
6
  "license": "UNLICENSED",