@xcanwin/manyoyo 7.0.21 → 7.0.23

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.
@@ -118,7 +118,7 @@ else:
118
118
  `&&(i=!1);continue}if(a){t===`*`&&s===`/`&&(a=!1,n+=1);continue}if(r){if(t===`\\`){n+=1;continue}t===r&&(r=``);continue}if(t===`/`&&s===`/`){i=!0,n+=1;continue}if(t===`/`&&s===`*`){a=!0,n+=1;continue}if(t===`"`||t===`'`){r=t;continue}if(t===`{`||t===`[`||t===`(`){o+=1;continue}if(t===`}`||t===`]`||t===`)`){if(o===0)break;--o;continue}if(o===0&&t===`,`)break}let s=n;for(;s>t&&/\s/.test(e[s-1]);)--s;return s}function kJ(e){let t=DJ(e,0);return e[t]===`{`?t:-1}function AJ(e,t){let n=e[t],r=``;for(let i=t+1;i<e.length;i+=1){let t=e[i];if(t===`\\`){r+=t,i+1<e.length&&(r+=e[i+1],i+=1);continue}if(t===n)return{value:r,end:i+1};r+=t}return null}function jJ(e,t){let n=e[t];if(n===`"`||n===`'`)return AJ(e,t);if(!TJ(n))return null;let r=t+1;for(;r<e.length&&EJ(e[r]);)r+=1;return{value:e.slice(t,r),end:r}}function MJ(e,t,n){let r=DJ(e,t+1);for(;r<e.length;){if(r=DJ(e,r),e[r]===`}`)return null;let t=jJ(e,r);if(!t||(r=DJ(e,t.end),e[r]!==`:`))return null;let i=DJ(e,r+1),a=OJ(e,i);if(t.value===n)return{start:i,end:a};if(r=DJ(e,a),e[r]===`,`){r+=1;continue}if(e[r]===`}`)return null}return null}function NJ(e,t){if(!Array.isArray(t)||t.length===0)return null;let n=kJ(e);if(n===-1)return null;let r=null;for(let i=0;i<t.length;i+=1){if(r=MJ(e,n,t[i]),!r)return null;if(i===t.length-1)return r;let a=DJ(e,r.start);if(e[a]!==`{`)return null;n=a}return r}function PJ(e,t){return t.slice().sort((e,t)=>t.start-e.start).reduce((e,t)=>`${e.slice(0,t.start)}${t.text}${e.slice(t.end)}`,e)}var FJ=/(pass(word)?|passwd|secret|token|api(?:_|-)?key|auth(?:_|-)?token|oauth(?:_|-)?token)$/i,IJ=[{id:`page`,label:`页面`,keys:[]},{id:`basic`,label:`基础`,keys:[`containerName`,`hostPath`,`containerPath`,`imageName`,`imageVersion`,`containerMode`]},{id:`runtime`,label:`启动环境`,keys:[`envFile`,`env`,`volumes`,`ports`,`first`]},{id:`command`,label:`运行命令`,keys:[`shellPrefix`,`shell`,`shellSuffix`,`agentPromptCommand`,`yolo`,`quiet`]},{id:`build`,label:`构建参数`,keys:[`imageBuildArgs`]},{id:`web`,label:`Web 服务`,keys:[`serverUser`,`serverPass`,`serve`]},{id:`plugins`,label:`插件`,keys:[`plugins`]},{id:`runs`,label:`运行配置`,keys:[`runs`]},{id:`quick-chat`,label:`快捷对话`,keys:[]},{id:`capacity`,label:`容量预估`,keys:[]}];function LJ(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function RJ(e,t,n){if(t.length===0)return n;let[r,...i]=t,a=LJ(e)?{...e}:{};return a[r]=RJ(a[r],i,n),a}function zJ(e,t){return FJ.test(e)?`secret`:typeof t==`boolean`?`boolean`:typeof t==`number`?`number`:Array.isArray(t)?`array`:`string`}function BJ(e,t){return e===`boolean`?t?`true`:`false`:e===`array`?Array.isArray(t)?t.map(e=>String(e)).join(`
119
119
  `):``:e===`secret`?``:e===`number`?typeof t==`number`?String(t):``:t==null?``:String(t)}function VJ(e,t){if(e===`boolean`)return t===`true`?`true`:`false`;if(e===`array`){let e=t.split(`
120
120
  `).map(e=>e.trim()).filter(Boolean);return JSON.stringify(e)}if(e===`number`){let e=Number(t);return JSON.stringify(Number.isFinite(e)?e:0)}return JSON.stringify(t)}function HJ(e,t){if(e===`boolean`)return t===`true`;if(e===`array`)return t.split(`
121
- `).map(e=>e.trim()).filter(Boolean);if(e===`number`){let e=Number(t);return Number.isFinite(e)?e:0}return t}function UJ({path:e,value:t,onCommit:n}){let r=e[e.length-1],i=`config-field-${e.join(`.`)}`,a=zJ(r,t),[o,s]=_.useState(()=>BJ(a,t));function c(t){n(e,VJ(a,t),HJ(a,t))}return a===`boolean`?(0,J.jsxs)(Nd,{orientation:`horizontal`,className:`justify-between`,children:[(0,J.jsx)(Pd,{htmlFor:i,children:r}),(0,J.jsx)(sJ,{id:i,checked:o===`true`,onCheckedChange:e=>{let t=e?`true`:`false`;s(t),c(t)}})]}):a===`array`?(0,J.jsxs)(Nd,{children:[(0,J.jsx)(Pd,{htmlFor:i,children:r}),(0,J.jsx)(Qp,{id:i,value:o,onChange:e=>s(e.target.value),onBlur:()=>c(o),placeholder:`每行一项`,spellCheck:!1,wrap:`off`,className:`min-h-16 overflow-x-auto font-mono text-xs whitespace-pre`})]}):a===`secret`?(0,J.jsxs)(Nd,{children:[(0,J.jsx)(Pd,{htmlFor:i,children:r}),(0,J.jsx)(ef,{id:i,type:`password`,value:o,onChange:e=>s(e.target.value),onBlur:()=>{o&&c(o)},placeholder:`敏感值已隐藏,留空则保留原值`,autoComplete:`off`})]}):a===`number`?(0,J.jsxs)(Nd,{children:[(0,J.jsx)(Pd,{htmlFor:i,children:r}),(0,J.jsx)(ef,{id:i,value:o,onChange:e=>s(e.target.value),onBlur:()=>c(o),inputMode:`decimal`})]}):(0,J.jsxs)(Nd,{children:[(0,J.jsx)(Pd,{htmlFor:i,children:r}),(0,J.jsx)(ef,{id:i,value:o,onChange:e=>{s(e.target.value),c(e.target.value)}})]})}function WJ({path:e,value:t,onCommit:n,depth:r=0}){if(LJ(t)){let i=Object.entries(t);return(0,J.jsxs)(kd,{className:`gap-3 rounded-lg border bg-muted/30 p-3`,children:[(0,J.jsx)(Ad,{variant:`legend`,className:`text-sm font-semibold text-foreground`,children:e[e.length-1]}),i.length===0?(0,J.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`空`}):i.map(([t,i])=>(0,J.jsx)(WJ,{path:[...e,t],value:i,onCommit:n,depth:r+1},t))]})}return(0,J.jsx)(`div`,{className:K(r>0&&`pl-1`),children:(0,J.jsx)(UJ,{path:e,value:t,onCommit:n})})}function GJ({category:e,liveParsed:t,onCommit:n}){let r=e.keys.filter(e=>e in t);return r.length===0?(0,J.jsx)(`p`,{className:`p-4 text-sm text-muted-foreground`,children:`当前配置中该分类暂无内容,如需新增字段请切换到 JSON 视图编辑。`}):(0,J.jsx)(jd,{children:r.map(e=>(0,J.jsx)(WJ,{path:[e],value:t[e],onCommit:n},e))})}function KJ({liveParsed:e,onCommit:t}){let n=LJ(e.runs)?e.runs:{},r=Object.keys(n),[i,a]=_.useState(r[0]||``),o=r.includes(i)?i:r[0]||``;return r.length===0?(0,J.jsx)(`p`,{className:`p-4 text-sm text-muted-foreground`,children:`当前未配置任何 run,可在 JSON 视图中添加。`}):(0,J.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,J.jsxs)(Nd,{children:[(0,J.jsx)(Pd,{children:`选择 run`}),(0,J.jsxs)(Wp,{value:o,onValueChange:e=>a(e??``),children:[(0,J.jsx)(qp,{className:`w-full`,children:(0,J.jsx)(Kp,{placeholder:`选择 run`})}),(0,J.jsx)(Jp,{children:(0,J.jsx)(Gp,{children:r.map(e=>(0,J.jsx)(Yp,{value:e,children:e},e))})})]})]}),o?(0,J.jsx)(jd,{children:(0,J.jsx)(WJ,{path:[`runs`,o],value:n[o],onCommit:t},o)}):null]})}function qJ({open:e,onOpenChange:t}){let[n,r]=_.useState(``),[i,a]=_.useState(``),[o,s]=_.useState({}),[c,l]=_.useState(0),[u,d]=_.useState(`form`),[f,p]=_.useState(IJ[0].id),[m,h]=_.useState(!1),[g,v]=_.useState(!1),[y,b]=_.useState(``),[x,S]=_.useState(``),{theme:C,setTheme:w}=tJ(),T=_.useCallback(()=>{h(!0),b(``),S(``),tn(`/api/config`).then(e=>{let t=String(e.raw||``);r(String(e.path||``)),a(t),s(t?Jv.default.parse(t):{}),l(e=>e+1),d(`form`)}).catch(e=>b(e instanceof Error?e.message:`加载配置失败`)).finally(()=>h(!1))},[]);_.useEffect(()=>{e&&queueMicrotask(()=>T())},[e,T]);function E(e,t,n){a(n=>{let r=NJ(n,e);return r?PJ(n,[{start:r.start,end:r.end,text:t}]):n}),s(t=>RJ(t,e,n))}function D(){try{let e=Jv.default.parse(i);if(!LJ(e))throw Error(`配置根节点必须是对象`);s(e),l(e=>e+1),b(``),d(`form`)}catch(e){b(e instanceof Error?`JSON 内容有误,无法切回分类设置:${e.message}`:`JSON 内容有误,无法切回分类设置`)}}async function O(){v(!0),b(``),S(``);try{await rn(`/api/config`,{raw:i}),S(`已保存`)}catch(e){b(e instanceof Error?e.message:`保存失败`)}finally{v(!1)}}return(0,J.jsx)(dd,{open:e,onOpenChange:t,children:(0,J.jsxs)(md,{className:`flex h-[80vh] max-h-[80vh] flex-col sm:max-w-4xl`,children:[(0,J.jsxs)(hd,{className:`shrink-0`,children:[(0,J.jsx)(_d,{children:`系统设置`}),(0,J.jsx)(vd,{children:n||`~/.manyoyo/manyoyo.json`})]}),(0,J.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,children:m?(0,J.jsx)(`div`,{className:`flex h-40 items-center justify-center text-sm text-muted-foreground`,children:`加载中...`}):u===`json`?(0,J.jsx)(`div`,{className:`h-full min-h-72`,children:(0,J.jsx)(Oq,{value:i,language:`json`,readOnly:!1,onChange:a})}):(0,J.jsxs)(bJ,{value:f,onValueChange:e=>p(String(e)),orientation:`vertical`,className:`h-full min-h-72`,children:[(0,J.jsx)(SJ,{variant:`line`,className:`w-36 shrink-0`,children:IJ.map(e=>(0,J.jsx)(CJ,{value:e.id,children:e.label},e.id))}),(0,J.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto pl-4`,children:IJ.map(e=>(0,J.jsx)(wJ,{value:e.id,className:`mt-0`,children:e.id===`page`?(0,J.jsx)(jd,{children:(0,J.jsxs)(Nd,{children:[(0,J.jsx)(Pd,{children:`主题`}),(0,J.jsxs)(Gq,{variant:`outline`,size:`sm`,value:[C],onValueChange:e=>{let t=e[0];t&&w(t)},children:[(0,J.jsx)(Kq,{value:`light`,children:`浅色`}),(0,J.jsx)(Kq,{value:`dark`,children:`深色`}),(0,J.jsx)(Kq,{value:`system`,children:`跟随系统`})]})]})}):e.id===`runs`?(0,J.jsx)(KJ,{liveParsed:o,onCommit:E}):e.id===`capacity`?(0,J.jsx)(Zv,{}):e.id===`quick-chat`?(0,J.jsx)(kq,{}):(0,J.jsx)(GJ,{category:e,liveParsed:o,onCommit:E})},e.id))})]},c)}),y?(0,J.jsx)(wd,{variant:`destructive`,className:`shrink-0`,children:(0,J.jsx)(Td,{children:y})}):null,x?(0,J.jsx)(wd,{className:`shrink-0`,children:(0,J.jsx)(Td,{children:x})}):null,(0,J.jsxs)(gd,{className:`shrink-0 sm:flex-row sm:justify-between`,children:[(0,J.jsx)(ud,{type:`button`,variant:`outline`,size:`sm`,className:`w-full sm:w-auto`,onClick:u===`form`?()=>d(`json`):D,disabled:m,children:u===`form`?`显示 JSON 设置`:`返回分类设置`}),(0,J.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row`,children:[(0,J.jsx)(ud,{type:`button`,variant:`outline`,className:`w-full sm:w-auto`,onClick:T,disabled:m||g,children:`重新加载`}),(0,J.jsx)(ud,{type:`button`,className:`w-full sm:w-auto`,onClick:O,disabled:m||g,children:g?`保存中...`:`保存`})]})]})]})})}function JJ({className:e,...t}){return(0,J.jsx)(`nav`,{"aria-label":`breadcrumb`,"data-slot":`breadcrumb`,className:K(e),...t})}function YJ({className:e,...t}){return(0,J.jsx)(`ol`,{"data-slot":`breadcrumb-list`,className:K(`flex flex-wrap items-center gap-1.5 text-sm wrap-break-word text-muted-foreground`,e),...t})}function XJ({className:e,...t}){return(0,J.jsx)(`li`,{"data-slot":`breadcrumb-item`,className:K(`inline-flex items-center gap-1`,e),...t})}function ZJ({className:e,...t}){return(0,J.jsx)(`span`,{"data-slot":`breadcrumb-page`,role:`link`,"aria-disabled":`true`,"aria-current":`page`,className:K(`font-normal text-foreground`,e),...t})}function QJ({children:e,className:t,...n}){return(0,J.jsx)(`li`,{"data-slot":`breadcrumb-separator`,role:`presentation`,"aria-hidden":`true`,className:K(`[&>svg]:size-3.5`,t),...n,children:e??(0,J.jsx)(F,{})})}var $J=_.createContext(void 0);function eY(e){let t=_.useContext($J);if(t===void 0&&!e)throw Error(_n(33));return t}var tY=_.createContext(void 0);function nY(e){let t=_.useContext(tY);if(t===void 0&&!e)throw Error(_n(36));return t}var rY=_.createContext(void 0);function iY(e=!0){let t=_.useContext(rY);if(t===void 0&&!e)throw Error(_n(25));return t}function aY(e){let{closeOnClick:t,highlighted:n,id:r,nodeId:i,store:a,typingRef:o,itemRef:s,itemMetadata:c}=e,{events:l}=a.useState(`floatingTreeRoot`),u=a.useState(`open`),d=iY(!0),f=d!==void 0;return _.useMemo(()=>({id:r,role:`menuitem`,tabIndex:u&&n?0:-1,onKeyDown(e){e.key===` `&&o?.current&&e.preventDefault()},onMouseMove(e){i&&l.emit(`itemhover`,{nodeId:i,target:e.currentTarget})},onClick(e){t&&l.emit(`close`,{domEvent:e,reason:li})},onMouseUp(e){if(d){let t=d.initialCursorPointRef.current;if(d.initialCursorPointRef.current=null,f&&t&&Math.abs(e.clientX-t.x)<=1&&Math.abs(e.clientY-t.y)<=1||f&&!Hi&&e.button===2)return}s.current&&a.context.allowMouseUpTriggerRef.current&&(!f||e.button===2)&&c.type===`regular-item`&&ei(s.current,e,{detail:1})}}),[t,n,r,l,i,u,a,o,s,d,f,c])}var oY={type:`regular-item`};function sY(e){let{closeOnClick:t,disabled:n,highlighted:r,id:i,store:a,typingRef:o=a.context.typingRef,nativeButton:s,itemMetadata:c,nodeId:l}=e,u=_.useRef(null),{getButtonProps:d,buttonRef:f}=ti({disabled:n,focusableWhenDisabled:!0,native:s,composite:!0}),p=aY({closeOnClick:t,highlighted:r,id:i,nodeId:l,store:a,typingRef:o,itemRef:u,itemMetadata:c}),m=_.useCallback(e=>zn(p,{onMouseEnter(){c.type===`submenu-trigger`&&c.setActive()}},e,d),[p,d,c]),h=Sn(u,f);return _.useMemo(()=>({getItemProps:m,itemRef:h}),[m,h])}var cY=_.createContext(void 0),lY=_.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,[o,s]=_.useState(void 0),c=$n(`div`,e,{ref:t,props:{role:`group`,"aria-labelledby":o,...a}});return(0,J.jsx)(cY.Provider,{value:s,children:c})}),uY=_.forwardRef(function(e,t){let{render:n,className:r,id:i,label:a,nativeButton:o=!1,disabled:s=!1,closeOnClick:c=!0,style:l,...u}=e,d=jp({guess:!0,label:a}),f=eY(!0),p=Di(i),{store:m}=nY(),h=m.useState(`disabled`),g=s||h,_=m.useState(`isActive`,d.index),v=m.useState(`itemProps`),{getItemProps:y,itemRef:b}=sY({closeOnClick:c,disabled:g,highlighted:_,id:p,store:m,nativeButton:o,nodeId:f?.context.nodeId,itemMetadata:oY});return $n(`div`,e,{state:{disabled:g,highlighted:_},props:[v,u,y],ref:[b,t,d.ref]})}),dY=_.forwardRef(function(e,t){let{render:n,className:r,style:i,finalFocus:a,...o}=e,{store:s}=nY(),{side:c,align:l}=eY(),u=_p(!0)!=null,d=s.useState(`open`),f=s.useState(`transitionStatus`),p=s.useState(`popupProps`),m=s.useState(`mounted`),h=s.useState(`instantType`),g=s.useState(`activeTriggerElement`),v=s.useState(`parent`),y=s.useState(`lastOpenChangeReason`),b=s.useState(`rootId`),x=s.useState(`floatingRootContext`),S=s.useState(`floatingTreeRoot`),C=s.useState(`closeDelay`),w=s.useState(`hoverEnabled`),T=s.useState(`disabled`),E=s.useState(`openMethod`),D=v.type===`context-menu`;_l({open:d,ref:s.context.popupRef,onComplete(){d&&s.context.onOpenChangeComplete?.(!0)}}),_.useEffect(()=>{function e(e){s.setOpen(!1,xi(e.reason,e.domEvent))}return S.events.on(`close`,e),()=>{S.events.off(`close`,e)}},[S.events,s]),Ql(x,{enabled:w&&!T&&!D&&v.type!==`menubar`,closeDelay:C});let O=s.useStateSetter(`popupElement`),k=$n(`div`,e,{state:{transitionStatus:f,side:c,align:l,open:d,nested:v.type===`menu`,instant:h},ref:[t,s.context.popupRef,O],stateAttributesMapping:_r,props:[p,{onKeyDown(e){u&&wu.has(e.key)&&e.stopPropagation()}},cp(f),o,{"data-rootownerid":b}]}),A=v.type===void 0||D;return(g||v.type===`menubar`&&y!==`outside-press`)&&(A=!0),(0,J.jsx)(Fs,{context:x,openInteractionType:E,modal:D,disabled:!m,returnFocus:a===void 0?A:a,initialFocus:v.type!==`menu`,restoreFocus:!0,externalTree:v.type===`menubar`?void 0:S,previousFocusableElement:g,nextFocusableElement:v.type===void 0?s.context.triggerFocusTargetRef:void 0,beforeContentFocusGuardRef:v.type===void 0?s.context.beforeContentFocusGuardRef:void 0,children:k})}),fY=_.createContext(void 0);function pY(){let e=_.useContext(fY);if(e===void 0)throw Error(_n(32));return e}var mY=_.forwardRef(function(e,t){let{keepMounted:n=!1,...r}=e,{store:i}=nY();return i.useState(`mounted`)||n?(0,J.jsx)(fY.Provider,{value:n,children:(0,J.jsx)(gs,{ref:t,...r})}):null}),hY=_.forwardRef(function(e,t){let{anchor:n,positionMethod:r=`absolute`,className:i,render:a,side:o,align:s,sideOffset:c=0,alignOffset:l=0,collisionBoundary:u=`clipping-ancestors`,collisionPadding:d=5,arrowPadding:f=5,sticky:p=!1,disableAnchorTracking:m=!1,collisionAvoidance:h=cs,style:g,...v}=e,{store:y}=nY(),b=pY(),x=iY(!0),S=y.useState(`parent`),C=y.useState(`floatingRootContext`),w=y.useState(`floatingTreeRoot`),T=y.useState(`mounted`),E=y.useState(`open`),D=y.useState(`modal`),O=y.useState(`openMethod`),k=y.useState(`activeTriggerElement`),A=y.useState(`transitionStatus`),j=y.useState(`positionerElement`),M=y.useState(`instantType`),N=y.useState(`adaptiveOrigin`),P=y.useState(`lastOpenChangeReason`),F=y.useState(`floatingNodeId`),I=y.useState(`floatingParentNodeId`),L=C.useState(`domReferenceElement`),R=_.useRef(null),z=gl(j),ee=n,B=c,V=l,H=s,te=h;S.type===`context-menu`&&(ee=n??S.context?.anchor,H??=`start`,!o&&H!==`center`&&(V=e.alignOffset??2,B=e.sideOffset??-5));let U=o,ne=H;S.type===`menu`?(U??=`inline-end`,ne??=`start`,te=e.collisionAvoidance??ls):S.type===`menubar`&&(U??=S.context.orientation===`vertical`?`inline-end`:`bottom`,ne??=`start`);let re=S.type===`context-menu`,ie=tp({anchor:ee,floatingRootContext:C,positionMethod:x?`fixed`:r,mounted:T,side:U,sideOffset:B,align:ne,alignOffset:V,arrowPadding:re?0:f,collisionBoundary:u,collisionPadding:d,sticky:p,nodeId:F,keepMounted:b,disableAnchorTracking:m,collisionAvoidance:te,shift:re?{crossAxis:!(`side`in te&&te.side===`flip`),rootBoundary:`layoutViewport`}:void 0,externalTree:w,adaptiveOrigin:N});_.useEffect(()=>{function e(e){e.open&&(e.parentNodeId===F&&y.set(`hoverEnabled`,!1),e.nodeId!==F&&e.parentNodeId===y.select(`floatingParentNodeId`)&&y.setOpen(!1,xi(hi)))}return w.events.on(`menuopenchange`,e),()=>{w.events.off(`menuopenchange`,e)}},[y,w.events,F]),_.useEffect(()=>{if(y.select(`floatingParentNodeId`)==null)return;function e(e){if(e.open||e.nodeId!==y.select(`floatingParentNodeId`))return;let t=e.reason??`sibling-open`;y.setOpen(!1,xi(t))}return w.events.on(`menuopenchange`,e),()=>{w.events.off(`menuopenchange`,e)}},[w.events,y]);let ae=Mi();_.useEffect(()=>{E||ae.clear()},[E,ae]),_.useEffect(()=>{function e(e){if(!(!E||e.nodeId!==y.select(`floatingParentNodeId`))){if(e.target&&k&&k!==e.target){let e=y.select(`closeDelay`);e>0?ae.isStarted()||ae.start(e,()=>{y.setOpen(!1,xi(hi))}):y.setOpen(!1,xi(hi))}else ae.clear()}}return w.events.on(`itemhover`,e),()=>{w.events.off(`itemhover`,e)}},[w.events,E,k,y,ae]),_.useEffect(()=>{let e={open:E,nodeId:F,parentNodeId:I,reason:y.select(`lastOpenChangeReason`)};w.events.emit(`menuopenchange`,e)},[w.events,E,y,F,I]),q(()=>{let e=L,t=R.current;if(e&&(R.current=e),t&&e&&e!==t){y.set(`instantType`,void 0);let e=new AbortController;return z(()=>{y.set(`instantType`,`trigger-change`)},e.signal),()=>{e.abort()}}},[L,z,y]);let oe={open:E,side:ie.side,align:ie.align,anchorHidden:ie.anchorHidden,nested:S.type===`menu`,instant:M},se=S.type===`menubar`&&S.context.modal;dp(E&&(se||D&&P!==`trigger-hover`),O===`touch`,j,k);let ce=lp(e,oe,{styles:ie.positionerStyles,transitionStatus:A,props:v,refs:[t,y.useStateSetter(`positionerElement`)],hidden:!T,inert:!E}),le=T&&S.type!==`menu`&&(S.type!==`menubar`&&D&&P!==`trigger-hover`||S.type===`menubar`&&S.context.modal),ue=null;return S.type===`menubar`?ue=S.context.contentElement:S.type===void 0&&(ue=k),(0,J.jsxs)($J.Provider,{value:ie,children:[le&&(0,J.jsx)(Pu,{ref:S.type===`context-menu`||S.type===`nested-context-menu`?S.context.internalBackdropRef:null,inert:Nu(!E),cutout:ue}),(0,J.jsx)(ws,{id:F,children:(0,J.jsx)(Rf,{elementsRef:y.context.itemDomElements,labelsRef:y.context.itemLabels,children:ce})})]})}),gY=_.createContext(null);function _Y(e){let t=_.useContext(gY);if(t===null&&!e)throw Error(_n(5));return t}var vY={...Bl,disabled:e=>e.parent.type===`menubar`&&e.parent.context.disabled||e.disabled,modal:e=>(e.parent.type===void 0||e.parent.type===`context-menu`)&&(e.modal??!0),openMethod:e=>e.openMethod,allowMouseEnter:e=>e.allowMouseEnter,highlightItemOnHover:e=>e.highlightItemOnHover,parent:e=>e.parent,rootId:e=>e.parent.type===`menu`?e.parent.store.select(`rootId`):e.parent.type===void 0?e.rootId:e.parent.context.rootId,activeIndex:e=>e.activeIndex,isActive:(e,t)=>e.activeIndex===t,hoverEnabled:e=>e.hoverEnabled,instantType:e=>e.instantType,lastOpenChangeReason:e=>e.openChangeReason,floatingTreeRoot:e=>e.parent.type===`menu`?e.parent.store.select(`floatingTreeRoot`):e.floatingTreeRoot,floatingNodeId:e=>e.floatingNodeId,floatingParentNodeId:e=>e.floatingParentNodeId,itemProps:e=>e.itemProps,closeDelay:e=>e.closeDelay,adaptiveOrigin:e=>e.adaptiveOrigin,keyboardEventRelay:e=>{if(e.keyboardEventRelay)return e.keyboardEventRelay;if(e.parent.type===`menu`)return e.parent.store.select(`keyboardEventRelay`)}},yY=class extends dl{constructor(e){super({...xY(),...e},bY(),vY),this.unsubscribeParentListener=this.observe(`parent`,e=>{if(this.unsubscribeParentListener?.(),e.type===`menu`){let t=e.store.select(`rootId`),n=e.store.select(`floatingTreeRoot`),r=e.store.select(`keyboardEventRelay`);this.unsubscribeParentListener=e.store.subscribe(()=>{let i=e.store.select(`rootId`),a=e.store.select(`floatingTreeRoot`),o=e.store.select(`keyboardEventRelay`);(t!==i||n!==a||r!==o)&&(t=i,n=a,r=o,this.notifyAll())}),this.context.allowMouseUpTriggerRef=e.store.context.allowMouseUpTriggerRef;return}e.type!==void 0&&(this.context.allowMouseUpTriggerRef=e.context.allowMouseUpTriggerRef),this.unsubscribeParentListener=null})}setOpen(e,t){this.state.floatingRootContext.context.events.emit(`setOpen`,{open:e,eventDetails:t})}unsubscribeParentListener=null};function bY(){return{positionerRef:_.createRef(),popupRef:_.createRef(),typingRef:{current:!1},itemDomElements:{current:[]},itemLabels:{current:[]},allowMouseUpTriggerRef:{current:!1},triggerFocusTargetRef:_.createRef(),beforeContentFocusGuardRef:_.createRef(),onOpenChangeComplete:void 0,triggerElements:new jl}}function xY(){return{...Nl(),disabled:!1,modal:!0,openMethod:null,allowMouseEnter:!1,highlightItemOnHover:!0,parent:{type:void 0},rootId:void 0,activeIndex:null,hoverEnabled:!0,instantType:void 0,openChangeReason:null,floatingTreeRoot:new vs,floatingNodeId:void 0,floatingParentNodeId:null,itemProps:Pn,keyboardEventRelay:void 0,closeDelay:0,adaptiveOrigin:void 0}}var SY=_.createContext(void 0);function CY(){return _.useContext(SY)}var wY=el(function(e){let{children:t,open:n,onOpenChange:r,onOpenChangeComplete:i,defaultOpen:a=!1,disabled:o=!1,modal:s,loopFocus:c=!0,orientation:l=`vertical`,actionsRef:u,closeParentOnEsc:d=!1,handle:f,triggerId:p,defaultTriggerId:m=null,highlightItemOnHover:h=!0}=e,g=iY(!0),v=nY(!0),y=_Y(!0),b=CY(),x=_.useMemo(()=>b&&v?{type:`menu`,store:v.store}:y?{type:`menubar`,context:y}:g&&!v?{type:`context-menu`,context:g}:{type:void 0},[g,v,y,b]),S=TY({open:a,openProp:n,activeTriggerId:m,triggerIdProp:p,parent:x});S.useControlledProp(`openProp`,n),S.useControlledProp(`triggerIdProp`,p),S.useContextCallback(`onOpenChangeComplete`,i);let C=Ei(),w=Ei(),T=S.useState(`floatingTreeRoot`),E=Cs(T),D=xs(),O=S.useState(`open`),k=S.useState(`activeTriggerElement`),A=S.useState(`positionerElement`),j=S.useState(`hoverEnabled`),M=S.useState(`disabled`),N=S.useState(`lastOpenChangeReason`),P=S.useState(`parent`),F=S.useState(`activeIndex`),I=S.useState(`payload`),L=S.useState(`floatingParentNodeId`),R=_.useRef(null),z=_.useRef(P.type!==`context-menu`),ee=Mi(),B=_.useRef(!0),V=Mi(),H=L!=null,{openMethod:te,triggerProps:U}=id(O);S.useSyncedValues({disabled:o,highlightItemOnHover:h,modal:P.type===void 0?s:void 0,openMethod:te,rootId:C}),Dl(S);let{forceUnmount:ne}=Ol(O,S,()=>{S.set(`allowMouseEnter`,!1)});q(()=>{g&&!v?S.update({parent:{type:`context-menu`,context:g},floatingNodeId:E,floatingParentNodeId:D}):v&&S.update({floatingNodeId:E,floatingParentNodeId:D})},[g,v,E,D,S]),_.useEffect(()=>{if(O||(R.current=null),P.type===`context-menu`){if(!O){ee.clear(),z.current=!1;return}ee.start(500,()=>{z.current=!0})}},[ee,O,P.type]),q(()=>{!O&&!j&&S.set(`hoverEnabled`,!0)},[O,j,S]);let re=qr((e,t)=>{let n=t.reason;if(!e&&!S.select(`open`)||O===e&&t.trigger===k&&N===n)return;let i=wl(t);if(!e&&t.trigger==null&&(t.trigger=k??void 0),r?.(e,t),t.isCanceled)return;S.state.floatingRootContext.dispatchOpenChange(e,t);let a=t.event;if(e===!1&&a?.type===`click`&&a.pointerType===`touch`&&!B.current)return;e&&n===`trigger-focus`?(B.current=!1,V.start(300,()=>{B.current=!0})):(B.current=!0,V.clear());let o=(n===`trigger-press`||n===`item-press`)&&a.detail===0,s=!e&&(n===`escape-key`||n==null),c={open:e,openChangeReason:n};R.current=t.event,Cl(c,e,t.trigger,i()),S.update(c),P.type===`menubar`&&(n===`trigger-focus`||n===`focus-out`||n===`trigger-hover`||n===`list-navigation`||n===`sibling-open`)?S.set(`instantType`,`group`):o||s?S.set(`instantType`,o?`click`:`dismiss`):S.set(`instantType`,void 0)}),ie=ml({popupStore:S,floatingId:w,nested:D!=null,onOpenChange:re}),ae=ie.context.events;q(()=>{let e=({open:e,eventDetails:t})=>re(e,t);return ae.on(`setOpen`,e),()=>{ae?.off(`setOpen`,e)}},[ae,re]);let oe=_.useCallback(()=>{S.setOpen(!1,xi(yi))},[S]);_.useImperativeHandle(u,()=>({unmount:ne,close:oe}),[ne,oe]);let se;P.type===`context-menu`&&(se=P.context),_.useImperativeHandle(se?.positionerRef,()=>A,[A]),_.useImperativeHandle(se?.actionsRef,()=>({setOpen:re}),[re]);let ce=Hs(ie,{enabled:!M,bubbles:{escapeKey:d&&P.type===`menu`},outsidePress(){return P.type!==`context-menu`||R.current?.type===`contextmenu`||z.current},externalTree:H?T:void 0}),le=Kf(),ue=_.useCallback(e=>{S.select(`activeIndex`)!==e&&S.set(`activeIndex`,e)},[S]),de=cu(ie,{enabled:!M,listRef:S.context.itemDomElements,activeIndex:F,nested:P.type!==void 0,loopFocus:c,orientation:l,parentOrientation:P.type===`menubar`?P.context.orientation:void 0,rtl:le===`rtl`,disabledIndices:Nn,onNavigate:ue,openOnArrowKeyDown:P.type!==`context-menu`,externalTree:H?T:void 0,focusItemOnHover:h}),fe=_.useCallback(e=>{S.context.typingRef.current=e},[S]),pe=lu(ie,{enabled:!M,listRef:S.context.itemLabels,elementsRef:S.context.itemDomElements,activeIndex:F,resetMs:500,onMatch:e=>{O&&e!==F&&S.set(`activeIndex`,e)},onTyping:fe});kl(S,{floatingRootContext:ie,activeTriggerProps:_.useMemo(()=>{let e=zn(pe.reference,de.reference,ce.reference,{onMouseMove(){S.set(`allowMouseEnter`,!0)}},U);return e[`aria-haspopup`]=`menu`,e[`aria-expanded`]=O,e},[S,pe.reference,de.reference,ce.reference,U,O]),inactiveTriggerProps:_.useMemo(()=>{let e=zn(de.trigger,ce.trigger,U);return e[`aria-haspopup`]=`menu`,e[`aria-expanded`]=!1,e},[de.trigger,ce.trigger,U]),popupProps:_.useMemo(()=>zn(vl,{id:w,role:`menu`,"aria-labelledby":k?.id,onMouseMove(){S.set(`allowMouseEnter`,!0),P.type===`menu`&&S.set(`hoverEnabled`,!1)},onClick(){S.select(`hoverEnabled`)&&S.set(`hoverEnabled`,!1)},onKeyDown(e){let t=S.select(`keyboardEventRelay`);t&&!e.isPropagationStopped()&&t(e)}},pe.floating,de.floating,ce.floating),[k,w,P.type,S,pe.floating,de.floating,ce.floating]),itemProps:de.item??Pn});let W=_.useMemo(()=>({store:S,parent:x}),[S,x]),me=(0,J.jsxs)(tY.Provider,{value:W,children:[f&&(0,J.jsx)(xl,{handle:f,store:S}),typeof t==`function`?t({payload:I}):t]});return P.type===void 0||P.type===`context-menu`?(0,J.jsx)(Ts,{externalTree:T,children:me}):me});function TY(e){return xn(()=>new yY(e)).current}function EY(e){if(Tr(e)&&e.hasAttribute(`data-rootownerid`))return e.getAttribute(`data-rootownerid`);if(!Lr(e))return EY(Br(e))}function DY(e,t){let n=_.useRef(null);function r(t){ds.flushSync(()=>{e.setOpen(!1,xi(di,t.nativeEvent,t.currentTarget))}),zo(n.current)?.focus()}function i(n){let r=e.select(`positionerElement`);if(r&&Bo(n,r))e.context.beforeContentFocusGuardRef.current?.focus();else{ds.flushSync(()=>{e.setOpen(!1,xi(di,n.nativeEvent,n.currentTarget))});let i=Ro(e.context.triggerFocusTargetRef.current||t.current);for(;i!==null&&oa(r,i);){let e=i;if(i=Fo(i),i===e)break}i?.focus()}}return{preFocusGuardRef:n,handlePreFocusGuardFocus:r,handleFocusTargetFocus:i}}function OY(e){let{enabled:t=!0,mouseDownAction:n,open:r}=e,i=_.useRef(!1);return _.useMemo(()=>t?{onMouseDown:e=>{(n===`open`&&!r||n===`close`&&r)&&(i.current=!0,$r(e.currentTarget).addEventListener(`click`,()=>{i.current=!1},{once:!0}))},onClick:e=>{i.current&&(i.current=!1,e.preventBaseUIHandler())}}:Pn,[t,n,r])}var kY=tl(function(e,t){let{render:n,className:r,style:i,disabled:a=!1,nativeButton:o=!0,id:s,openOnHover:c,delay:l=100,closeDelay:u=0,handle:d,payload:f,...p}=e,m=nY(!0),h=Vl(d)??m?.store;if(!h)throw Error(_n(85));let g=Di(s),v=h.useState(`isTriggerActive`,g),y=h.useState(`floatingRootContext`),b=h.useState(`isOpenedByTrigger`,g),x=h.useState(`triggerPopupId`,g),S=_.useRef(null),C=jY(),w=Zr(!0),T=Ss(),E=_.useMemo(()=>T??new vs,[T]),{registerTrigger:D,isMountedByThisTrigger:O}=El(g,S,h,{payload:f,closeDelay:u,parent:C,floatingTreeRoot:E,floatingNodeId:Cs(E),floatingParentNodeId:xs(),keyboardEventRelay:w?.relayKeyboardEvent}),k=C.type===`menubar`,A=h.useState(`disabled`),j=a||A||k&&C.context.disabled,{getButtonProps:M,buttonRef:N}=ti({disabled:j,native:o});_.useEffect(()=>{!b&&C.type===void 0&&(h.context.allowMouseUpTriggerRef.current=!1)},[h,b,C.type]);let P=_.useRef(null),F=Mi(),I=qr(e=>{if(!P.current)return;F.clear(),h.context.allowMouseUpTriggerRef.current=!1;let t=e.target;oa(P.current,t)||oa(h.select(`positionerElement`),t)||t===P.current||(t==null||EY(t)!==h.select(`rootId`))&&(Df(e,P.current)||E.events.emit(`close`,{domEvent:e,reason:mi}))});_.useEffect(()=>{b&&h.select(`lastOpenChangeReason`)===`trigger-hover`&&$r(P.current).addEventListener(`mouseup`,I,{once:!0})},[b,I,h]);let L=k&&C.context.hasSubmenuOpen,R=eu(y,{enabled:(c??L)&&!j&&(!k||L&&!O),handleClose:_u({blockPointerEvents:!k}),mouseOnly:!0,move:!1,restMs:C.type===void 0?l:void 0,delay:{close:u},triggerElementRef:S,externalTree:E,isActiveTrigger:v,isClosing:()=>h.select(`transitionStatus`)===`ending`}),z=AY(b,h.select(`lastOpenChangeReason`)),ee=Is(y,{enabled:!j,event:b&&k?`click`:`mousedown`,toggle:!0,ignoreMouse:!1,stickIfOpen:C.type===void 0&&z}),B=Kl(y,{enabled:!j&&L}),V=OY({open:b,enabled:k,mouseDownAction:`open`}),H=_.useMemo(()=>zn(B.reference,ee.reference),[B.reference,ee.reference]),te=h.useState(`triggerProps`,O),{preFocusGuardRef:U,handlePreFocusGuardFocus:ne,handleFocusTargetFocus:re}=DY(h,S),ie={disabled:j,open:b},ae=[P,t,N,D,S],oe=[H,R??Pn,te,{"aria-haspopup":`menu`,"aria-controls":x,id:g,onMouseDown:e=>{h.select(`open`)||(F.start(200,()=>{h.context.allowMouseUpTriggerRef.current=!0}),$r(e.currentTarget).addEventListener(`mouseup`,I,{once:!0}))}},k?{role:`menuitem`}:{},V,p,M],se=$n(`button`,e,{enabled:!k,stateAttributesMapping:hr,state:ie,ref:ae,props:oe});return k?(0,J.jsx)(Nq,{tag:`button`,render:n,className:r,style:i,state:ie,refs:ae,props:oe,stateAttributesMapping:hr}):b?(0,J.jsxs)(_.Fragment,{children:[(0,J.jsx)(Ia,{ref:U,onFocus:ne},`${g}-pre-focus-guard`),(0,J.jsx)(_.Fragment,{children:se},g),(0,J.jsx)(Ia,{ref:h.context.triggerFocusTargetRef,onFocus:re},`${g}-post-focus-guard`)]}):(0,J.jsx)(_.Fragment,{children:se},g)});function AY(e,t){let n=Mi(),[r,i]=_.useState(!1);return q(()=>{e&&t===`trigger-hover`?(i(!0),n.start(500,()=>{i(!1)})):e||(n.clear(),i(!1))},[e,t,n]),r}function jY(){let e=_Y(!0);return _.useMemo(()=>e?{type:`menubar`,context:e}:{type:void 0},[e])}function MY({...e}){return(0,J.jsx)(wY,{"data-slot":`dropdown-menu`,...e})}function NY({...e}){return(0,J.jsx)(kY,{"data-slot":`dropdown-menu-trigger`,...e})}function PY({align:e=`start`,alignOffset:t=0,side:n=`bottom`,sideOffset:r=4,className:i,...a}){return(0,J.jsx)(mY,{children:(0,J.jsx)(hY,{className:`isolate z-50 outline-none`,align:e,alignOffset:t,side:n,sideOffset:r,children:(0,J.jsx)(dY,{"data-slot":`dropdown-menu-content`,className:K(`z-50 max-h-(--available-height) w-(--anchor-width) min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover p-1 text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 outline-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:overflow-hidden data-closed:fade-out-0 data-closed:zoom-out-95`,i),...a})})})}function FY({...e}){return(0,J.jsx)(lY,{"data-slot":`dropdown-menu-group`,...e})}function IY({className:e,inset:t,variant:n=`default`,...r}){return(0,J.jsx)(uY,{"data-slot":`dropdown-menu-item`,"data-inset":t,"data-variant":n,className:K(`group/dropdown-menu-item relative flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-[variant=destructive]:*:[svg]:text-destructive`,e),...r})}var LY=768;function RY(){let[e,t]=_.useState(()=>window.innerWidth<LY);return _.useEffect(()=>{let e=window.matchMedia(`(max-width: 767px)`),n=()=>{t(window.innerWidth<LY)};return e.addEventListener(`change`,n),()=>e.removeEventListener(`change`,n)},[]),!!e}function zY({...e}){return(0,J.jsx)($u,{"data-slot":`sheet`,...e})}function BY({...e}){return(0,J.jsx)(Fu,{"data-slot":`sheet-portal`,...e})}function VY({className:e,...t}){return(0,J.jsx)(vr,{"data-slot":`sheet-overlay`,className:K(`fixed inset-0 z-50 bg-black/10 transition-opacity duration-150 data-ending-style:opacity-0 data-starting-style:opacity-0 supports-backdrop-filter:backdrop-blur-xs`,e),...t})}function HY({className:e,children:t,side:n=`right`,showCloseButton:r=!0,...i}){return(0,J.jsxs)(BY,{children:[(0,J.jsx)(VY,{}),(0,J.jsxs)(Mu,{"data-slot":`sheet-content`,"data-side":n,className:K(`fixed z-50 flex flex-col gap-4 bg-popover bg-clip-padding text-sm text-popover-foreground shadow-lg transition duration-200 ease-in-out data-ending-style:opacity-0 data-starting-style:opacity-0 data-[side=bottom]:inset-x-0 data-[side=bottom]:bottom-0 data-[side=bottom]:h-auto data-[side=bottom]:border-t data-[side=bottom]:data-ending-style:translate-y-[2.5rem] data-[side=bottom]:data-starting-style:translate-y-[2.5rem] data-[side=left]:inset-y-0 data-[side=left]:left-0 data-[side=left]:h-full data-[side=left]:w-3/4 data-[side=left]:border-r data-[side=left]:data-ending-style:translate-x-[-2.5rem] data-[side=left]:data-starting-style:translate-x-[-2.5rem] data-[side=right]:inset-y-0 data-[side=right]:right-0 data-[side=right]:h-full data-[side=right]:w-3/4 data-[side=right]:border-l data-[side=right]:data-ending-style:translate-x-[2.5rem] data-[side=right]:data-starting-style:translate-x-[2.5rem] data-[side=top]:inset-x-0 data-[side=top]:top-0 data-[side=top]:h-auto data-[side=top]:border-b data-[side=top]:data-ending-style:translate-y-[-2.5rem] data-[side=top]:data-starting-style:translate-y-[-2.5rem] data-[side=left]:sm:max-w-sm data-[side=right]:sm:max-w-sm`,e),...i,children:[t,r&&(0,J.jsxs)(Si,{"data-slot":`sheet-close`,render:(0,J.jsx)(ud,{variant:`ghost`,className:`absolute top-3 right-3`,size:`icon-sm`}),children:[(0,J.jsx)(pe,{}),(0,J.jsx)(`span`,{className:`sr-only`,children:`Close`})]})]})]})}function UY({className:e,...t}){return(0,J.jsx)(`div`,{"data-slot":`sheet-header`,className:K(`flex flex-col gap-0.5 p-4`,e),...t})}function WY({className:e,...t}){return(0,J.jsx)(ed,{"data-slot":`sheet-title`,className:K(`font-heading text-base font-medium text-foreground`,e),...t})}function GY({className:e,...t}){return(0,J.jsx)(Oi,{"data-slot":`sheet-description`,className:K(`text-sm text-muted-foreground`,e),...t})}var KY=_.createContext(void 0);function qY(e){let t=_.useContext(KY);if(t===void 0&&!e)throw Error(_n(72));return t}var JY={...Bl,disabled:e=>e.disabled,instantType:e=>e.instantType,isInstantPhase:e=>e.isInstantPhase,trackCursorAxis:e=>e.trackCursorAxis,disableHoverablePopup:e=>e.disableHoverablePopup,lastOpenChangeReason:e=>e.openChangeReason,closeOnClick:e=>e.closeOnClick,closeDelay:e=>e.closeDelay,adaptiveOrigin:e=>e.adaptiveOrigin},YY=class extends dl{constructor(e,t,n){let r=new jl;super(XY(e,r,t,n),ZY(r),JY)}setOpen=(e,t)=>{Tl(this,e,t,{extraState:{openChangeReason:t.reason}})};cancelPendingOpen(e){this.state.floatingRootContext.dispatchOpenChange(!1,xi(ai,e))}};function XY(e,t,n,r=!1){let i={...Nl(),disabled:!1,instantType:void 0,isInstantPhase:!1,trackCursorAxis:`none`,disableHoverablePopup:!1,openChangeReason:null,closeOnClick:!0,closeDelay:0,adaptiveOrigin:void 0,...e};return i.floatingRootContext=Pl(t,n,r),i}function ZY(e){return{popupRef:_.createRef(),onOpenChange:void 0,onOpenChangeComplete:void 0,triggerElements:e}}var QY=el(function(e){let{disabled:t=!1,defaultOpen:n=!1,open:r,disableHoverablePopup:i=!1,trackCursorAxis:a=`none`,actionsRef:o,onOpenChange:s,onOpenChangeComplete:c,handle:l,triggerId:u,defaultTriggerId:d=null,children:f}=e,p=bl((e,t)=>new YY({open:n,openProp:r,activeTriggerId:d,triggerIdProp:u},e,t));p.useControlledProp(`openProp`,r),p.useControlledProp(`triggerIdProp`,u),p.useContextCallback(`onOpenChange`,s),p.useContextCallback(`onOpenChangeComplete`,c);let m=p.useState(`open`),h=!t&&m,g=p.useState(`activeTriggerId`),v=p.useState(`mounted`),y=p.useState(`payload`);p.useSyncedValues({trackCursorAxis:a,disableHoverablePopup:i,disabled:t}),Dl(p,{closeOnActiveTriggerUnmount:!0});let{forceUnmount:b,transitionStatus:x}=Ol(h,p),S=p.useState(`isInstantPhase`),C=p.useState(`instantType`),w=p.useState(`lastOpenChangeReason`),T=_.useRef(null);q(()=>{m&&t&&p.setOpen(!1,xi(gi))},[m,t,p]),q(()=>{x===`ending`&&w===`none`||x!==`ending`&&S?(C!==`delay`&&(T.current=C),p.set(`instantType`,`delay`)):T.current!==null&&(p.set(`instantType`,T.current),T.current=null)},[x,S,w,C,p]),q(()=>{h&&(g??p.set(`payload`,void 0))},[p,g,h]),_.useImperativeHandle(o,()=>({unmount:b,close:()=>p.setOpen(!1,xi(yi))}),[b,p]);let E=h||v||!t&&a!==`none`;return(0,J.jsxs)(KY.Provider,{value:p,children:[l&&(0,J.jsx)(xl,{handle:l,store:p}),E&&(0,J.jsx)($Y,{store:p,disabled:t,trackCursorAxis:a}),typeof f==`function`?f({payload:y}):f]})});function $Y({store:e,disabled:t,trackCursorAxis:n}){let r=e.useState(`floatingRootContext`),i=Hs(r,{enabled:!t,referencePress:()=>e.select(`closeOnClick`)}),a=zs(r,{enabled:!t&&n!==`none`,axis:n===`none`?void 0:n}),o=_.useMemo(()=>zn(a.reference,i.reference),[a.reference,i.reference]);return kl(e,{activeTriggerProps:o,inactiveTriggerProps:o,popupProps:i.floating??Pn}),null}var eX=_.createContext(void 0);function tX(){return _.useContext(eX)}var nX=`data-base-ui-tooltip-trigger`;function rX(e){if(`composedPath`in e){let t=e.composedPath();for(let e=0;e<t.length;e+=1){let n=t[e];if(wr(n))return n}}let t=e.target;return wr(t)?t:null}function iX(e){let t=e;for(;t;){let e=t.closest(`[${nX}]`);if(e)return e;let n=t.getRootNode();t=`host`in n&&wr(n.host)?n.host:null}return null}var aX=tl(function(e,t){let{render:n,className:r,style:i,handle:a,payload:o,disabled:s,delay:c,closeOnClick:l=!0,closeDelay:u,id:d,...f}=e,p=qY(!0),m=Vl(a)??p;if(!m)throw Error(_n(82));let h=Di(d),g=m.useState(`isTriggerActive`,h),v=m.useState(`isOpenedByTrigger`,h),y=m.useState(`floatingRootContext`),b=_.useRef(null),x=c??600,S=u??0,{registerTrigger:C,isMountedByThisTrigger:w}=El(h,b,m,{payload:o,closeOnClick:l,closeDelay:S}),T=tX(),{delayRef:E,isInstantPhase:D,hasProvider:O}=wa(y,{open:v}),k=Zl(y);m.useSyncedValue(`isInstantPhase`,D);let A=m.useState(`disabled`),j=s??A,M=Da(j),N=m.useState(`trackCursorAxis`),P=m.useState(`disableHoverablePopup`),F=_.useRef(!1),I=Mi(),L=_.useRef(void 0);function R(){return O?_a(E.current,`open`)===0?0:c??T??600:x}function z(e){let t=b.current;if(!t||!e)return!1;let n=iX(e);return n!==null&&n!==t&&oa(t,n)}function ee(e){let t=z(e);return F.current=t,t&&(k.openChangeTimeout.clear(),k.restTimeout.clear(),k.restTimeoutPending=!1,I.clear()),t}let B=eu(y,{enabled:!j,mouseOnly:!0,move:!1,handleClose:!P&&N!==`both`?_u():null,restMs:R,delay(){return u==null&&O?{close:_a(E.current,`close`)}:{close:S}},triggerElementRef:b,isActiveTrigger:g,isClosing:()=>m.select(`transitionStatus`)===`ending`,shouldOpen(){return!F.current}}),V=Kl(y,{enabled:!j}).reference,H=e=>{let t=F.current,n=rX(e),r=ee(n),i=b.current,a=i&&n&&oa(i,n);if(r&&m.select(`open`)&&m.select(`lastOpenChangeReason`)===`trigger-hover`){m.setOpen(!1,xi(oi,e));return}if(t&&!r&&a&&!M.current&&!m.select(`open`)&&i&&Zi(L.current)){let t=()=>{!F.current&&!M.current&&!m.select(`open`)&&m.setOpen(!0,xi(oi,e,i))},n=R();n===0?(I.clear(),t()):I.start(n,t)}},te=m.useState(`triggerProps`,w);return $n(`button`,e,{state:{open:v},ref:[t,C,b],props:[B,V,w||N!==`none`?te:void 0,{onMouseOver(e){H(e.nativeEvent)},onFocus(e){z(rX(e.nativeEvent))&&e.preventBaseUIHandler()},onMouseLeave(){F.current=!1,I.clear(),L.current=void 0},onPointerEnter(e){L.current=e.pointerType},onPointerDown(e){L.current=e.pointerType,m.set(`closeOnClick`,l),l&&!m.select(`open`)&&m.cancelPendingOpen(e.nativeEvent)},onClick(e){l&&!m.select(`open`)&&m.cancelPendingOpen(e.nativeEvent)},id:h,"data-trigger-disabled":j?``:void 0,[nX]:j?void 0:``},f],stateAttributesMapping:mr})}),oX=_.createContext(void 0);function sX(){let e=_.useContext(oX);if(e===void 0)throw Error(_n(70));return e}var cX=_.forwardRef(function(e,t){let{children:n,container:r,className:i,render:a,style:o,...s}=e,{node:c,subtree:l}=hs({container:r,ref:t,componentProps:e,elementProps:s});return!l&&!c?null:(0,J.jsxs)(_.Fragment,{children:[l,c&&ds.createPortal(n,c)]})}),lX=_.forwardRef(function(e,t){let{keepMounted:n=!1,...r}=e;return qY().useState(`mounted`)||n?(0,J.jsx)(oX.Provider,{value:n,children:(0,J.jsx)(cX,{ref:t,...r})}):null}),uX=_.createContext(void 0);function dX(){let e=_.useContext(uX);if(e===void 0)throw Error(_n(71));return e}var fX=_.forwardRef(function(e,t){let{render:n,className:r,anchor:i,positionMethod:a=`absolute`,side:o=`top`,align:s=`center`,sideOffset:c=0,alignOffset:l=0,collisionBoundary:u=`clipping-ancestors`,collisionPadding:d=5,arrowPadding:f=5,sticky:p=!1,disableAnchorTracking:m=!1,collisionAvoidance:h=ls,style:g,...v}=e,y=qY(),b=sX(),x=y.useState(`open`),S=y.useState(`mounted`),C=y.useState(`trackCursorAxis`),w=y.useState(`disableHoverablePopup`),T=y.useState(`floatingRootContext`),E=y.useState(`instantType`),D=y.useState(`transitionStatus`),O=tp({anchor:i,positionMethod:a,floatingRootContext:T,mounted:S,side:o,sideOffset:c,align:s,alignOffset:l,collisionBoundary:u,collisionPadding:d,sticky:p,arrowPadding:f,disableAnchorTracking:m,keepMounted:b,collisionAvoidance:h,adaptiveOrigin:y.useState(`adaptiveOrigin`)}),k=lp(e,_.useMemo(()=>({open:x,side:O.side,align:O.align,anchorHidden:O.anchorHidden,instant:C===`none`?E:`tracking-cursor`}),[x,O.side,O.align,O.anchorHidden,C,E]),{styles:O.positionerStyles,transitionStatus:D,props:v,refs:[t,y.useStateSetter(`positionerElement`)],hidden:!S,inert:!x||C===`both`||w});return(0,J.jsx)(uX.Provider,{value:O,children:k})}),pX=_.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,o=qY(),{side:s,align:c}=dX(),l=o.useState(`open`),u=o.useState(`instantType`),d=o.useState(`transitionStatus`),f=o.useState(`popupProps`),p=o.useState(`floatingRootContext`),m=o.useState(`disabled`),h=o.useState(`closeDelay`);_l({open:l,ref:o.context.popupRef,onComplete(){l&&o.context.onOpenChangeComplete?.(!0)}}),Ql(p,{enabled:!m,closeDelay:h});let g=o.useStateSetter(`popupElement`);return $n(`div`,e,{state:{open:l,side:s,align:c,instant:u,transitionStatus:d},ref:[t,o.context.popupRef,g],props:[vl,f,cp(d),a],stateAttributesMapping:_r})}),mX=_.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,o=qY(),{arrowRef:s,side:c,align:l,arrowUncentered:u,arrowStyles:d}=dX();return $n(`div`,e,{state:{open:o.useState(`open`),side:c,align:l,uncentered:u,instant:o.useState(`instantType`)},ref:[t,s],props:[{style:d,"aria-hidden":!0},a],stateAttributesMapping:gr})});function hX({...e}){return(0,J.jsx)(QY,{"data-slot":`tooltip`,...e})}function gX({...e}){return(0,J.jsx)(aX,{"data-slot":`tooltip-trigger`,...e})}function _X({className:e,side:t=`top`,sideOffset:n=4,align:r=`center`,alignOffset:i=0,children:a,...o}){return(0,J.jsx)(lX,{children:(0,J.jsx)(fX,{align:r,alignOffset:i,side:t,sideOffset:n,className:`isolate z-50`,children:(0,J.jsxs)(pX,{"data-slot":`tooltip-content`,className:K(`z-50 inline-flex w-fit max-w-xs origin-(--transform-origin) items-center gap-1.5 rounded-md bg-foreground px-3 py-1.5 text-xs text-background has-data-[slot=kbd]:pr-1.5 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 **:data-[slot=kbd]:relative **:data-[slot=kbd]:isolate **:data-[slot=kbd]:z-50 **:data-[slot=kbd]:rounded-sm data-[state=delayed-open]:animate-in data-[state=delayed-open]:fade-in-0 data-[state=delayed-open]:zoom-in-95 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95`,e),...o,children:[a,(0,J.jsx)(mX,{className:`z-50 size-2.5 translate-y-[calc(-50%-2px)] rotate-45 rounded-[2px] bg-foreground fill-foreground data-[side=bottom]:top-1 data-[side=inline-end]:top-1/2! data-[side=inline-end]:-left-1 data-[side=inline-end]:-translate-y-1/2 data-[side=inline-start]:top-1/2! data-[side=inline-start]:-right-1 data-[side=inline-start]:-translate-y-1/2 data-[side=left]:top-1/2! data-[side=left]:-right-1 data-[side=left]:-translate-y-1/2 data-[side=right]:top-1/2! data-[side=right]:-left-1 data-[side=right]:-translate-y-1/2 data-[side=top]:-bottom-2.5`})]})})})}var vX=`sidebar_state`,yX=604800,bX=`16rem`,xX=`18rem`,SX=`3rem`,CX=`b`,wX=_.createContext(null);function TX(){let e=_.useContext(wX);if(!e)throw Error(`useSidebar must be used within a SidebarProvider.`);return e}function EX({defaultOpen:e=!0,open:t,onOpenChange:n,className:r,style:i,children:a,...o}){let s=RY(),[c,l]=_.useState(!1),[u,d]=_.useState(e),f=t??u,p=_.useCallback(e=>{let t=typeof e==`function`?e(f):e;n?n(t):d(t),document.cookie=`${vX}=${t}; path=/; max-age=${yX}`},[n,f]),m=_.useCallback(()=>s?l(e=>!e):p(e=>!e),[s,p,l]);_.useEffect(()=>{let e=e=>{e.key===CX&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),m())};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[m]);let h=f?`expanded`:`collapsed`,g=_.useMemo(()=>({state:h,open:f,setOpen:p,isMobile:s,openMobile:c,setOpenMobile:l,toggleSidebar:m}),[h,f,p,s,c,l,m]);return(0,J.jsx)(wX.Provider,{value:g,children:(0,J.jsx)(`div`,{"data-slot":`sidebar-wrapper`,style:{"--sidebar-width":bX,"--sidebar-width-icon":SX,...i},className:K(`group/sidebar-wrapper flex min-h-svh w-full has-data-[variant=inset]:bg-sidebar`,r),...o,children:a})})}function DX({side:e=`left`,variant:t=`sidebar`,collapsible:n=`offcanvas`,className:r,children:i,dir:a,...o}){let{isMobile:s,state:c,openMobile:l,setOpenMobile:u}=TX();return n===`none`?(0,J.jsx)(`div`,{"data-slot":`sidebar`,className:K(`flex h-full w-(--sidebar-width) flex-col bg-sidebar text-sidebar-foreground`,r),...o,children:i}):s?(0,J.jsx)(zY,{open:l,onOpenChange:u,...o,children:(0,J.jsxs)(HY,{dir:a,"data-sidebar":`sidebar`,"data-slot":`sidebar`,"data-mobile":`true`,className:K(`w-(--sidebar-width) bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden`,r),style:{"--sidebar-width":xX},side:e,children:[(0,J.jsxs)(UY,{className:`sr-only`,children:[(0,J.jsx)(WY,{children:`Sidebar`}),(0,J.jsx)(GY,{children:`Displays the mobile sidebar.`})]}),(0,J.jsx)(`div`,{className:`flex h-full w-full flex-col`,children:i})]})}):(0,J.jsxs)(`div`,{className:`group peer hidden text-sidebar-foreground md:block`,"data-state":c,"data-collapsible":c===`collapsed`?n:``,"data-variant":t,"data-side":e,"data-slot":`sidebar`,children:[(0,J.jsx)(`div`,{"data-slot":`sidebar-gap`,className:K(`relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear`,`group-data-[collapsible=offcanvas]:w-0`,`group-data-[side=right]:rotate-180`,t===`floating`||t===`inset`?`group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]`:`group-data-[collapsible=icon]:w-(--sidebar-width-icon)`)}),(0,J.jsx)(`div`,{"data-slot":`sidebar-container`,"data-side":e,className:K(`fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear data-[side=left]:left-0 data-[side=left]:group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)] data-[side=right]:right-0 data-[side=right]:group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)] md:flex`,t===`floating`||t===`inset`?`p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]`:`group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l`,r),...o,children:(0,J.jsx)(`div`,{"data-sidebar":`sidebar`,"data-slot":`sidebar-inner`,className:`flex size-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:shadow-sm group-data-[variant=floating]:ring-1 group-data-[variant=floating]:ring-sidebar-border`,children:i})})]})}function OX({className:e,onClick:t,...n}){let{toggleSidebar:r}=TX();return(0,J.jsxs)(ud,{"data-sidebar":`trigger`,"data-slot":`sidebar-trigger`,variant:`ghost`,size:`icon-sm`,className:K(e),onClick:e=>{t?.(e),r()},...n,children:[(0,J.jsx)(ie,{}),(0,J.jsx)(`span`,{className:`sr-only`,children:`Toggle Sidebar`})]})}function kX({className:e,...t}){return(0,J.jsx)(`main`,{"data-slot":`sidebar-inset`,className:K(`relative flex w-full flex-1 flex-col bg-background md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2`,e),...t})}function AX({className:e,...t}){return(0,J.jsx)(`div`,{"data-slot":`sidebar-header`,"data-sidebar":`header`,className:K(`flex flex-col gap-2 p-2`,e),...t})}function jX({className:e,...t}){return(0,J.jsx)(`div`,{"data-slot":`sidebar-footer`,"data-sidebar":`footer`,className:K(`flex flex-col gap-2 p-2`,e),...t})}function MX({className:e,...t}){return(0,J.jsx)(`div`,{"data-slot":`sidebar-content`,"data-sidebar":`content`,className:K(`thin-scrollbar flex min-h-0 flex-1 flex-col gap-0 overflow-auto group-data-[collapsible=icon]:overflow-hidden`,e),...t})}function NX({className:e,...t}){return(0,J.jsx)(`div`,{"data-slot":`sidebar-group`,"data-sidebar":`group`,className:K(`relative flex w-full min-w-0 flex-col p-2`,e),...t})}function PX({className:e,...t}){return(0,J.jsx)(`div`,{"data-slot":`sidebar-group-content`,"data-sidebar":`group-content`,className:K(`w-full text-sm`,e),...t})}function FX({className:e,...t}){return(0,J.jsx)(`ul`,{"data-slot":`sidebar-menu`,"data-sidebar":`menu`,className:K(`flex w-full min-w-0 flex-col gap-0`,e),...t})}function IX({className:e,...t}){return(0,J.jsx)(`li`,{"data-slot":`sidebar-menu-item`,"data-sidebar":`menu-item`,className:K(`group/menu-item relative`,e),...t})}var LX=cd(`peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm ring-sidebar-ring outline-hidden transition-[width,height,padding] group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-[color-mix(in_oklch,var(--sidebar-accent),var(--foreground)_8%)] data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate`,{variants:{variant:{default:`hover:bg-sidebar-accent hover:text-sidebar-accent-foreground`,outline:`bg-background shadow-[0_0_0_1px_var(--sidebar-border)] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_var(--sidebar-accent)]`},size:{default:`h-8 text-sm`,sm:`h-7 text-xs`,lg:`h-12 text-sm group-data-[collapsible=icon]:p-0!`}},defaultVariants:{variant:`default`,size:`default`}});function RX({render:e,isActive:t=!1,variant:n=`default`,size:r=`default`,tooltip:i,className:a,...o}){let{isMobile:s,state:c}=TX(),l=yd({defaultTagName:`button`,props:zn({className:K(LX({variant:n,size:r}),a)},o),render:i?(0,J.jsx)(gX,{render:e}):e,state:{slot:`sidebar-menu-button`,sidebar:`menu-button`,size:r,active:t}});return i?(typeof i==`string`&&(i={children:i}),(0,J.jsxs)(hX,{children:[l,(0,J.jsx)(_X,{side:`right`,align:`center`,hidden:c!==`collapsed`||s,...i})]})):l}function zX({className:e,render:t,showOnHover:n=!1,...r}){return yd({defaultTagName:`button`,props:zn({className:K(`absolute top-1/2 right-1 flex size-7 -translate-y-1/2 items-center justify-center rounded-md p-0 text-sidebar-foreground ring-sidebar-ring outline-hidden transition-transform group-data-[collapsible=icon]:hidden peer-hover/menu-button:text-sidebar-accent-foreground after:absolute after:-inset-2 hover:bg-[color-mix(in_oklch,var(--sidebar-accent),var(--foreground)_18%)] hover:text-sidebar-accent-foreground aria-expanded:bg-[color-mix(in_oklch,var(--sidebar-accent),var(--foreground)_18%)] aria-expanded:text-sidebar-accent-foreground focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0`,n&&`group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 peer-data-active/menu-button:text-sidebar-accent-foreground aria-expanded:opacity-100 md:opacity-0`,e)},r),render:t,state:{slot:`sidebar-menu-action`,sidebar:`menu-action`}})}function BX(e,t){return e.find(e=>e.name===t)||e.find(e=>e.synthetic!==!0)||(e[0]??null)}var VX=`manyoyo.web.sidebarNav.v1`;function HX(){try{let e=window.localStorage.getItem(VX);if(!e)return{navLevel:`containers`,navContainer:``};let t=JSON.parse(e);return{navLevel:t.navLevel===`agents`?`agents`:`containers`,navContainer:typeof t.navContainer==`string`?t.navContainer:``}}catch{return{navLevel:`containers`,navContainer:``}}}function UX(e){if(!e)return`暂无更新`;let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString()}function WX(e,t){let n=new Set(e.map(e=>e.containerName)),r=t.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`),i=RegExp(`^${r}-copy(\\d+)$`),a=0;return n.forEach(e=>{let t=e.match(i);if(t){let e=Number(t[1]);Number.isFinite(e)&&e>a&&(a=e)}}),`${t}-copy${a+1}`}function GX({containers:e,loading:t,error:n,activeSessionName:r,onSelectSession:i,onRefresh:a,confirmLeaveIfDirty:o,creatingAgentContainer:s,onCreatingAgentContainerChange:c,...l}){let{isMobile:u,setOpenMobile:d}=TX(),[f,p]=_.useState(()=>HX().navLevel),[m,h]=_.useState(()=>HX().navContainer),[g,v]=_.useState(!1),[y,b]=_.useState(!1),[x,S]=_.useState(!1),[C,w]=_.useState(!1),[T,E]=_.useState(!1),[D,O]=_.useState(``),[A,j]=_.useState(null),[M,N]=_.useState(null),[P,F]=_.useState(null);function I(e,t){return new Promise(n=>{F({title:e,message:t,resolve:n})})}function L(e){F(t=>(t?.resolve(e),null))}let z=e.reduce((e,t)=>e+t.sessions.filter(e=>e.synthetic!==!0).length,0),ee=e.find(e=>e.containerName===m),B=_.useMemo(()=>(ee?.sessions??[]).filter(e=>e.synthetic!==!0),[ee]);_.useEffect(()=>{try{window.localStorage.setItem(VX,JSON.stringify({navLevel:f,navContainer:m}))}catch{}},[f,m]);let V=t?null:e.map(e=>e.containerName).join(`,`),[H,te]=_.useState(V);V!==H&&(te(V),V!==null&&f===`agents`&&!e.some(e=>e.containerName===m)&&(p(`containers`),h(``)));let ne=_.useMemo(()=>r?e.find(e=>e.sessions.some(e=>e.name===r))?.containerName??``:``,[e,r]);function re(){p(`containers`),h(``)}function ie(e){p(`agents`),h(e)}async function ae(e){e&&e.name!==r&&!await o()||se(e)}function se(e){i(e),e&&u&&d(!1)}function le(e,t){let n=e.find(t);if(n){se(n);return}O(`已创建成功,但会话列表刷新失败,请稍后重试或刷新页面`)}_.useEffect(()=>{function e(e){(e.metaKey||e.ctrlKey)&&e.key.toLowerCase()===`k`&&(e.preventDefault(),v(e=>!e))}return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[]);async function de(e){O(``);try{let t=await a();ie(e),le(t,t=>t.name===e||t.containerName===e)}catch(e){O(e instanceof Error?e.message:`刷新会话列表失败`)}}function fe(e){let t=e=>String(e).padStart(2,`0`);return`${e.getFullYear()}${t(e.getMonth()+1)}${t(e.getDate())}-${t(e.getHours())}${t(e.getMinutes())}${t(e.getSeconds())}`}async function pe(e,t){S(!0),O(``);try{let n=fe(new Date),r=`${e.replace(/\/+$/,``)}/${n}`,i=await nn(`/api/fs/directories/mkdir`,{path:r}),a=typeof i.path==`string`&&i.path?i.path:r,o=await nn(`/api/sessions`,{run:t,createOptions:{hostPath:a,containerPath:a,containerName:`my-easy-${n}`}});await de(String(o.name))}catch(e){O(e instanceof Error?e.message:`快捷对话创建失败`)}finally{S(!1)}}async function W(){if(!x&&await o()){O(``);try{let e=await tn(`/api/system/quick-chat-config`),t=typeof e.path==`string`?e.path:``,n=typeof e.run==`string`?e.run:``;t&&n?await pe(t,n):b(!0)}catch(e){O(e instanceof Error?e.message:`读取快捷对话配置失败`)}}}async function me(e){if(!s&&await o()){O(``),c(e);try{let t=await nn(`/api/sessions/${encodeURIComponent(e)}/agents`,{}),n=typeof t.name==`string`?t.name:``,r=await a();ie(e),le(r,e=>e.name===n)}catch(e){O(e instanceof Error?e.message:`新建 AGENT 失败`)}finally{c(null)}}}function he(e,t){j({kind:`container`,key:e,initial:t})}function ge(e,t){N({mode:e,containerName:t})}async function _e(e){if(!M)return;let t=M.mode===`duplicate`?`duplicate`:`clone-config`,n=await nn(`/api/sessions/${encodeURIComponent(M.containerName)}/${t}`,e?{containerName:e}:{}),r=await a(),i=String(n.name);ie(i),le(r,e=>e.name===i||e.containerName===i)}async function ve(e){let t=await I(`删除容器`,`确认删除容器 ${e}?可以选择是否同时删除该容器的全部历史记录(消息与事件日志)。`);if(!t)return;let n=t===`with-history`;O(``);try{await nn(`/api/sessions/${encodeURIComponent(e)}/remove`,{removeHistory:n}),m===e&&re(),sn(r,e)&&i(null),await a()}catch(e){O(e instanceof Error?e.message:`删除容器失败`)}}function ye(e){j({kind:`agent`,key:e.name,initial:e.agentRemark})}async function be(e){if(!A)return;let t=A.kind===`container`?`container-remark`:`agent-remark`;await nn(`/api/sessions/${encodeURIComponent(A.key)}/${t}`,{remark:e}),await a()}async function xe(e){let t=await I(`删除 AGENT`,`确认删除 ${e.agentRemark||e.agentName}?可以选择是否同时删除它的历史记录(消息与事件日志)。`);if(!t)return;let n=t===`with-history`;O(``);try{await nn(`/api/sessions/${encodeURIComponent(e.name)}/remove-with-history`,{removeHistory:n}),r===e.name&&i(null),await a()}catch(e){O(e instanceof Error?e.message:`删除 AGENT 失败`)}}let Se=!!(g||y||C||T||A||M||P);return(0,J.jsxs)(DX,{...l,className:K(u&&Se&&`pointer-events-none opacity-40 blur-[2px]`),children:[(0,J.jsxs)(AX,{className:`gap-3 px-3 pt-3`,children:[(0,J.jsx)(`div`,{className:`flex items-center justify-between gap-2`,children:(0,J.jsx)(`span`,{className:`text-sm font-semibold tracking-tight`,children:`MANYOYO Web`})}),(0,J.jsxs)(ud,{className:`w-full`,size:`lg`,disabled:f===`agents`&&s===m,onClick:()=>f===`agents`?me(m):E(!0),children:[f===`agents`&&s===m?(0,J.jsx)(Sd,{"data-icon":`inline-start`}):(0,J.jsx)(oe,{"data-icon":`inline-start`}),f===`agents`?s===m?`创建中...`:`新建AGENT`:`新建容器`]}),(0,J.jsxs)(ud,{className:`w-full`,variant:`outline`,disabled:x,onClick:W,children:[x?(0,J.jsx)(Sd,{"data-icon":`inline-start`}):(0,J.jsx)(U,{"data-icon":`inline-start`}),x?`创建中...`:`快捷对话`]}),(0,J.jsxs)(`div`,{className:`flex items-center justify-between text-xs text-muted-foreground`,children:[(0,J.jsx)(`span`,{children:`工作台`}),(0,J.jsx)(`span`,{children:t?`加载中...`:f===`agents`?`${B.length} 个 AGENT`:`${e.length} 个容器 / ${z} 个 AGENT`})]}),(0,J.jsx)(JJ,{children:(0,J.jsxs)(YJ,{className:`flex-nowrap gap-1 text-xs`,children:[(0,J.jsx)(XJ,{className:`shrink-0`,children:(0,J.jsxs)(ud,{variant:`outline`,size:`xs`,disabled:f===`containers`,onClick:f===`containers`?void 0:re,className:`text-foreground`,children:[f===`containers`?(0,J.jsx)(`span`,{"data-icon":`inline-start`,className:`flex size-4 items-center justify-center`,children:(0,J.jsx)(`span`,{className:`size-1.5 rounded-full bg-current`})}):(0,J.jsx)(k,{"data-icon":`inline-start`}),`全部容器`]})}),f===`agents`&&ee?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(QJ,{className:`shrink-0`}),(0,J.jsx)(XJ,{className:`min-w-0 flex-1`,children:(0,J.jsx)(ZJ,{className:`block truncate`,children:ee.containerRemark||ee.containerName})})]}):null]})}),(0,J.jsxs)(ud,{variant:`outline`,className:`w-full justify-start bg-background text-muted-foreground shadow-none`,onClick:()=>v(!0),children:[(0,J.jsx)(ce,{"data-icon":`inline-start`}),`搜索容器 / AGENT`,(0,J.jsx)(`kbd`,{className:`ml-auto font-mono text-xs text-muted-foreground`,children:`⌘K`})]}),n||D?(0,J.jsx)(`p`,{className:`text-xs text-destructive`,children:n||D}):null]}),(0,J.jsx)(MX,{children:(0,J.jsx)(NX,{className:`pt-0`,children:(0,J.jsx)(PX,{children:(0,J.jsxs)(FX,{className:`gap-1`,children:[f===`containers`?e.map(e=>(0,J.jsxs)(IX,{children:[(0,J.jsxs)(RX,{size:`lg`,isActive:e.containerName===ne,onClick:()=>{ie(e.containerName),ae(BX(e.sessions,r))},className:`h-auto flex-col items-start gap-1 py-2.5`,children:[(0,J.jsxs)(`span`,{className:`flex w-full items-center gap-1.5`,children:[(0,J.jsx)(`span`,{className:`truncate font-medium`,children:e.containerRemark||e.containerName}),(0,J.jsx)(xd,{variant:e.status.toLowerCase().includes(`up`)?`default`:`outline`,className:K(`ml-auto shrink-0`,e.status.toLowerCase().includes(`up`)&&`bg-emerald-600 text-white`),children:e.status===`history`?`仅历史`:e.status.toLowerCase().includes(`up`)?`运行中`:`已停止`})]}),(0,J.jsx)(`span`,{className:`w-full truncate text-xs text-muted-foreground`,children:e.hostPath})]}),(0,J.jsxs)(MY,{children:[(0,J.jsx)(NY,{render:(0,J.jsx)(zX,{showOnHover:!0,children:(0,J.jsx)(R,{})})}),(0,J.jsx)(PY,{side:`right`,align:`start`,className:`w-56`,children:(0,J.jsxs)(FY,{className:`flex flex-col gap-1`,children:[(0,J.jsx)(IY,{onClick:()=>he(e.containerName,e.containerRemark),children:`编辑备注`}),(0,J.jsx)(IY,{disabled:s===e.containerName,onClick:()=>me(e.containerName),children:s===e.containerName?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(Sd,{"data-icon":`inline-start`}),`创建中...`]}):`新建 AGENT`}),(0,J.jsx)(IY,{onClick:()=>ge(`clone-config`,e.containerName),children:`创建相同配置容器`}),(0,J.jsx)(IY,{onClick:()=>ge(`duplicate`,e.containerName),children:`复制容器`}),(0,J.jsx)(IY,{variant:`destructive`,onClick:()=>ve(e.containerName),children:`删除容器`})]})})]})]},e.containerName)):B.map(e=>(0,J.jsxs)(IX,{children:[(0,J.jsxs)(RX,{size:`lg`,isActive:r===e.name,onClick:()=>ae(e),className:`h-auto flex-col items-start gap-1 py-2.5`,children:[(0,J.jsxs)(`span`,{className:`flex w-full items-center gap-1.5`,children:[(0,J.jsx)(`span`,{className:`truncate font-medium`,children:e.agentRemark||e.agentName}),e.archived?(0,J.jsx)(xd,{variant:`outline`,className:`ml-auto shrink-0`,children:`已停止`}):null]}),(0,J.jsx)(`span`,{className:`w-full truncate text-xs text-muted-foreground`,children:UX(e.updatedAt||``)})]}),(0,J.jsxs)(MY,{children:[(0,J.jsx)(NY,{render:(0,J.jsx)(zX,{showOnHover:!0,children:(0,J.jsx)(R,{})})}),(0,J.jsx)(PY,{side:`right`,align:`start`,className:`w-56`,children:(0,J.jsxs)(FY,{className:`flex flex-col gap-1`,children:[(0,J.jsx)(IY,{onClick:()=>ye(e),children:`编辑备注`}),(0,J.jsx)(IY,{variant:`destructive`,onClick:()=>xe(e),children:`删除 AGENT`})]})})]})]},e.name)),f===`containers`&&!t&&e.length===0?(0,J.jsx)(`div`,{className:`px-2 py-6 text-center text-xs text-muted-foreground`,children:`暂无 manyoyo 容器`}):null,f===`agents`&&B.length===0?(0,J.jsx)(`div`,{className:`px-2 py-6 text-center text-xs text-muted-foreground`,children:`该容器下暂无 AGENT`}):null]})})})}),(0,J.jsx)(jX,{className:`px-3 pb-3`,children:(0,J.jsxs)(ud,{variant:`outline`,size:`lg`,className:`w-full`,onClick:()=>w(!0),children:[(0,J.jsx)(ue,{"data-icon":`inline-start`}),`系统设置`]})}),(0,J.jsx)(qJ,{open:C,onOpenChange:w}),(0,J.jsx)(qv,{open:g,onOpenChange:v,containers:e,onSelectContainer:t=>{ie(t),ae(BX(e.find(e=>e.containerName===t)?.sessions??[],r))},onSelectAgent:(e,t)=>{ie(e),ae(t)}}),(0,J.jsx)(um,{open:y,onOpenChange:b,initialPath:``,initialRun:``,onSaved:(e,t)=>pe(e,t)}),(0,J.jsx)(sm,{open:T,onOpenChange:E,onCreated:de}),(0,J.jsx)(cm,{open:A!==null,onOpenChange:e=>{e||j(null)},title:A?.kind===`container`?`设置容器备注`:`设置 AGENT 备注`,description:`留空可清除备注。`,label:`备注`,initialValue:A?.initial??``,onSubmit:be}),(0,J.jsx)(tf,{open:M!==null,onOpenChange:e=>{e||N(null)},mode:M?.mode??`clone-config`,sourceContainerName:M?.containerName??``,suggestedName:M?WX(e,M.containerName):``,onSubmit:_e}),(0,J.jsx)(dd,{open:P!==null,onOpenChange:e=>{e||L(null)},children:(0,J.jsxs)(md,{className:`sm:max-w-sm`,children:[(0,J.jsx)(_d,{children:P?.title}),(0,J.jsx)(vd,{children:P?.message}),(0,J.jsxs)(gd,{children:[(0,J.jsx)(ud,{variant:`outline`,onClick:()=>L(null),children:`取消`}),(0,J.jsx)(ud,{variant:`outline`,onClick:()=>L(`keep-history`),children:`否,保留历史`}),(0,J.jsx)(ud,{variant:`destructive`,onClick:()=>L(`with-history`),children:`是,连同历史一起删除`})]})]})})]})}function KX({onPointerDown:e,dragging:t,className:n,style:r}){return(0,J.jsx)(`div`,{role:`separator`,"aria-orientation":`vertical`,onPointerDown:e,style:r,className:K(`group relative w-2 shrink-0 cursor-col-resize touch-none select-none`,n),children:(0,J.jsx)(`div`,{className:K(`absolute inset-y-0 left-1/2 w-px -translate-x-1/2 bg-border transition-colors group-hover:bg-primary/60`,t&&`bg-primary`)})})}function qX(e){return e.some(e=>e.pending===!0)}function JX(e,t,n,r){let i=_.useRef(t);_.useEffect(()=>{i.current=t},[t]);let a=_.useRef(n);_.useEffect(()=>{a.current=n},[n]);let o=qX(t);_.useEffect(()=>{if(!e||!o||r)return;let t=!1,n=0,s=0;function c(){if(t||!qX(i.current))return;let e=fn(s);s+=1,n=window.setTimeout(async()=>{if(!t){try{await a.current()}catch{}t||c()}},e)}return c(),()=>{t=!0,window.clearTimeout(n)}},[e?.name,o,r])}function YX(e,t,n,r=48){return t-(e+n)<=r}function XX(e){let t=String(e||``).trim();return t?`${t} · MANYOYO Web`:`MANYOYO Web`}function ZX(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var QX=ZX();function $X(e){QX=e}var eZ={exec:()=>null};function tZ(e){let t=[];return n=>{let r=Math.max(0,Math.min(3,n-1)),i=t[r];return i||(i=e(r),t[r]=i),i}}function nZ(e,t=``){let n=typeof e==`string`?e:e.source,r={replace:(e,t)=>{let i=typeof t==`string`?t:t.source;return i=i.replace(iZ.caret,`$1`),n=n.replace(e,i),r},getRegex:()=>new RegExp(n,t)};return r}var rZ=((e=``)=>{try{return!!RegExp(`(?<=1)(?<!1)`+e)}catch{return!1}})(),iZ={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:e=>RegExp(`^( {0,3}${e})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:tZ(e=>RegExp(`^ {0,${e}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`)),hrRegex:tZ(e=>RegExp(`^ {0,${e}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`)),fencesBeginRegex:tZ(e=>RegExp(`^ {0,${e}}(?:\`\`\`|~~~)`)),headingBeginRegex:tZ(e=>RegExp(`^ {0,${e}}#`)),htmlBeginRegex:tZ(e=>RegExp(`^ {0,${e}}<(?:[a-z].*>|!--)`,`i`)),blockquoteBeginRegex:tZ(e=>RegExp(`^ {0,${e}}>`))},aZ=/^(?:[ \t]*(?:\n|$))+/,oZ=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,sZ=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,cZ=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,lZ=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,uZ=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,dZ=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,fZ=nZ(dZ).replace(/bull/g,uZ).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}(?:\s|$)/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,``).getRegex(),pZ=nZ(dZ).replace(/bull/g,uZ).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}(?:\s|$)/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),mZ=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table|[ \t]+\n)[^\n]+)*)/,hZ=/^[^\n]+/,gZ=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,_Z=nZ(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace(`label`,gZ).replace(`title`,/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),vZ=nZ(/^(bull)([ \t][^\n]*?)?(?:\n|$)/).replace(/bull/g,uZ).getRegex(),yZ=`address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul`,bZ=/\x3C!--(?:-?>|[\s\S]*?(?:-->|$))/,xZ=nZ(`^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n*|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>[^\\n]*\\n*|$)|<![A-Z][\\s\\S]*?(?:>[^\\n]*\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>[^\\n]*\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))`,`i`).replace(`comment`,bZ).replace(`tag`,yZ).replace(`attribute`,/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),SZ=e=>nZ(mZ).replace(`hr`,cZ).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`|lheading`,``).replace(`|table`,``).replace(`blockquote`,` {0,3}>`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace(`list`,e).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,yZ).getRegex(),CZ=SZ(/ {0,3}(?:[*+-]|1[.)])[ \t]+[^ \t\n]/),wZ=SZ(/ {0,3}(?:[*+-]|\d{1,9}[.)])(?:[ \t]|\n|$)/),TZ={blockquote:nZ(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace(`paragraph`,wZ).getRegex(),code:oZ,def:_Z,fences:sZ,heading:lZ,hr:cZ,html:xZ,lheading:fZ,list:vZ,newline:aZ,paragraph:CZ,table:eZ,text:hZ},EZ=nZ(`^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)`).replace(`hr`,cZ).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`blockquote`,` {0,3}>`).replace(`code`,`(?: {4}| {0,3} )[^\\n]`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace(`list`,` {0,3}(?:[*+-]|1[.)])[ \\t]`).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,yZ).getRegex(),DZ={...TZ,lheading:pZ,table:EZ,paragraph:nZ(mZ).replace(`hr`,cZ).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`|lheading`,``).replace(`table`,EZ).replace(`blockquote`,` {0,3}>`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace(`list`,` {0,3}(?:[*+-]|1[.)])[ \\t]+[^ \\t\\n]`).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,yZ).getRegex()},OZ={...TZ,html:nZ(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace(`comment`,bZ).replace(/tag/g,`(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b`).getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:eZ,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:nZ(mZ).replace(`hr`,cZ).replace(`heading`,` *#{1,6} *[^
121
+ `).map(e=>e.trim()).filter(Boolean);if(e===`number`){let e=Number(t);return Number.isFinite(e)?e:0}return t}function UJ({path:e,value:t,onCommit:n}){let r=e[e.length-1],i=`config-field-${e.join(`.`)}`,a=zJ(r,t),[o,s]=_.useState(()=>BJ(a,t));function c(t){n(e,VJ(a,t),HJ(a,t))}return a===`boolean`?(0,J.jsxs)(Nd,{orientation:`horizontal`,className:`justify-between`,children:[(0,J.jsx)(Pd,{htmlFor:i,children:r}),(0,J.jsx)(sJ,{id:i,checked:o===`true`,onCheckedChange:e=>{let t=e?`true`:`false`;s(t),c(t)}})]}):a===`array`?(0,J.jsxs)(Nd,{children:[(0,J.jsx)(Pd,{htmlFor:i,children:r}),(0,J.jsx)(Qp,{id:i,value:o,onChange:e=>s(e.target.value),onBlur:()=>c(o),placeholder:`每行一项`,spellCheck:!1,wrap:`off`,className:`min-h-16 overflow-x-auto font-mono text-xs whitespace-pre`})]}):a===`secret`?(0,J.jsxs)(Nd,{children:[(0,J.jsx)(Pd,{htmlFor:i,children:r}),(0,J.jsx)(ef,{id:i,type:`password`,value:o,onChange:e=>s(e.target.value),onBlur:()=>{o&&c(o)},placeholder:`敏感值已隐藏,留空则保留原值`,autoComplete:`off`})]}):a===`number`?(0,J.jsxs)(Nd,{children:[(0,J.jsx)(Pd,{htmlFor:i,children:r}),(0,J.jsx)(ef,{id:i,value:o,onChange:e=>s(e.target.value),onBlur:()=>c(o),inputMode:`decimal`})]}):(0,J.jsxs)(Nd,{children:[(0,J.jsx)(Pd,{htmlFor:i,children:r}),(0,J.jsx)(ef,{id:i,value:o,onChange:e=>{s(e.target.value),c(e.target.value)}})]})}function WJ({path:e,value:t,onCommit:n,depth:r=0}){if(LJ(t)){let i=Object.entries(t);return(0,J.jsxs)(kd,{className:`gap-3 rounded-lg border bg-muted/30 p-3`,children:[(0,J.jsx)(Ad,{variant:`legend`,className:`text-sm font-semibold text-foreground`,children:e[e.length-1]}),i.length===0?(0,J.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:`空`}):i.map(([t,i])=>(0,J.jsx)(WJ,{path:[...e,t],value:i,onCommit:n,depth:r+1},t))]})}return(0,J.jsx)(`div`,{className:K(r>0&&`pl-1`),children:(0,J.jsx)(UJ,{path:e,value:t,onCommit:n})})}function GJ({category:e,liveParsed:t,onCommit:n}){let r=e.keys.filter(e=>e in t);return r.length===0?(0,J.jsx)(`p`,{className:`p-4 text-sm text-muted-foreground`,children:`当前配置中该分类暂无内容,如需新增字段请切换到 JSON 视图编辑。`}):(0,J.jsx)(jd,{children:r.map(e=>(0,J.jsx)(WJ,{path:[e],value:t[e],onCommit:n},e))})}function KJ({liveParsed:e,onCommit:t}){let n=LJ(e.runs)?e.runs:{},r=Object.keys(n),[i,a]=_.useState(r[0]||``),o=r.includes(i)?i:r[0]||``;return r.length===0?(0,J.jsx)(`p`,{className:`p-4 text-sm text-muted-foreground`,children:`当前未配置任何 run,可在 JSON 视图中添加。`}):(0,J.jsxs)(`div`,{className:`flex flex-col gap-4`,children:[(0,J.jsxs)(Nd,{children:[(0,J.jsx)(Pd,{children:`选择 run`}),(0,J.jsxs)(Wp,{value:o,onValueChange:e=>a(e??``),children:[(0,J.jsx)(qp,{className:`w-full`,children:(0,J.jsx)(Kp,{placeholder:`选择 run`})}),(0,J.jsx)(Jp,{children:(0,J.jsx)(Gp,{children:r.map(e=>(0,J.jsx)(Yp,{value:e,children:e},e))})})]})]}),o?(0,J.jsx)(jd,{children:(0,J.jsx)(WJ,{path:[`runs`,o],value:n[o],onCommit:t},o)}):null]})}function qJ({open:e,onOpenChange:t}){let[n,r]=_.useState(``),[i,a]=_.useState(``),[o,s]=_.useState({}),[c,l]=_.useState(0),[u,d]=_.useState(`form`),[f,p]=_.useState(IJ[0].id),[m,h]=_.useState(!1),[g,v]=_.useState(!1),[y,b]=_.useState(``),[x,S]=_.useState(``),{theme:C,setTheme:w}=tJ(),T=_.useCallback(()=>{h(!0),b(``),S(``),tn(`/api/config`).then(e=>{let t=String(e.raw||``);r(String(e.path||``)),a(t),s(t?Jv.default.parse(t):{}),l(e=>e+1),d(`form`)}).catch(e=>b(e instanceof Error?e.message:`加载配置失败`)).finally(()=>h(!1))},[]);_.useEffect(()=>{e&&queueMicrotask(()=>T())},[e,T]);function E(e,t,n){a(n=>{let r=NJ(n,e);return r?PJ(n,[{start:r.start,end:r.end,text:t}]):n}),s(t=>RJ(t,e,n))}function D(){try{let e=Jv.default.parse(i);if(!LJ(e))throw Error(`配置根节点必须是对象`);s(e),l(e=>e+1),b(``),d(`form`)}catch(e){b(e instanceof Error?`JSON 内容有误,无法切回分类设置:${e.message}`:`JSON 内容有误,无法切回分类设置`)}}async function O(){v(!0),b(``),S(``);try{await rn(`/api/config`,{raw:i}),S(`已保存`)}catch(e){b(e instanceof Error?e.message:`保存失败`)}finally{v(!1)}}return(0,J.jsx)(dd,{open:e,onOpenChange:t,children:(0,J.jsxs)(md,{className:`flex h-[80vh] max-h-[80vh] flex-col sm:max-w-4xl`,children:[(0,J.jsxs)(hd,{className:`shrink-0`,children:[(0,J.jsx)(_d,{children:`系统设置`}),(0,J.jsx)(vd,{children:n||`~/.manyoyo/manyoyo.json`})]}),(0,J.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,children:m?(0,J.jsx)(`div`,{className:`flex h-40 items-center justify-center text-sm text-muted-foreground`,children:`加载中...`}):u===`json`?(0,J.jsx)(`div`,{className:`h-full min-h-72`,children:(0,J.jsx)(Oq,{value:i,language:`javascript`,readOnly:!1,onChange:a})}):(0,J.jsxs)(bJ,{value:f,onValueChange:e=>p(String(e)),orientation:`vertical`,className:`h-full min-h-72`,children:[(0,J.jsx)(SJ,{variant:`line`,className:`w-20 shrink-0 sm:w-36`,children:IJ.map(e=>(0,J.jsx)(CJ,{value:e.id,children:e.label},e.id))}),(0,J.jsx)(`div`,{className:`min-h-0 flex-1 overflow-y-auto pl-4`,children:IJ.map(e=>(0,J.jsx)(wJ,{value:e.id,className:`mt-0`,children:e.id===`page`?(0,J.jsx)(jd,{children:(0,J.jsxs)(Nd,{children:[(0,J.jsx)(Pd,{children:`主题`}),(0,J.jsxs)(Gq,{variant:`outline`,size:`sm`,value:[C],onValueChange:e=>{let t=e[0];t&&w(t)},children:[(0,J.jsx)(Kq,{value:`light`,children:`浅色`}),(0,J.jsx)(Kq,{value:`dark`,children:`深色`}),(0,J.jsx)(Kq,{value:`system`,children:`跟随系统`})]})]})}):e.id===`runs`?(0,J.jsx)(KJ,{liveParsed:o,onCommit:E}):e.id===`capacity`?(0,J.jsx)(Zv,{}):e.id===`quick-chat`?(0,J.jsx)(kq,{}):(0,J.jsx)(GJ,{category:e,liveParsed:o,onCommit:E})},e.id))})]},c)}),y?(0,J.jsx)(wd,{variant:`destructive`,className:`shrink-0`,children:(0,J.jsx)(Td,{children:y})}):null,x?(0,J.jsx)(wd,{className:`shrink-0`,children:(0,J.jsx)(Td,{children:x})}):null,(0,J.jsxs)(gd,{className:`shrink-0 sm:flex-row sm:justify-between`,children:[(0,J.jsx)(ud,{type:`button`,variant:`outline`,size:`sm`,className:`w-full sm:w-auto`,onClick:u===`form`?()=>d(`json`):D,disabled:m,children:u===`form`?`显示 JSON 设置`:`返回分类设置`}),(0,J.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row`,children:[(0,J.jsx)(ud,{type:`button`,variant:`outline`,className:`w-full sm:w-auto`,onClick:T,disabled:m||g,children:`重新加载`}),(0,J.jsx)(ud,{type:`button`,className:`w-full sm:w-auto`,onClick:O,disabled:m||g,children:g?`保存中...`:`保存`})]})]})]})})}function JJ({className:e,...t}){return(0,J.jsx)(`nav`,{"aria-label":`breadcrumb`,"data-slot":`breadcrumb`,className:K(e),...t})}function YJ({className:e,...t}){return(0,J.jsx)(`ol`,{"data-slot":`breadcrumb-list`,className:K(`flex flex-wrap items-center gap-1.5 text-sm wrap-break-word text-muted-foreground`,e),...t})}function XJ({className:e,...t}){return(0,J.jsx)(`li`,{"data-slot":`breadcrumb-item`,className:K(`inline-flex items-center gap-1`,e),...t})}function ZJ({className:e,...t}){return(0,J.jsx)(`span`,{"data-slot":`breadcrumb-page`,role:`link`,"aria-disabled":`true`,"aria-current":`page`,className:K(`font-normal text-foreground`,e),...t})}function QJ({children:e,className:t,...n}){return(0,J.jsx)(`li`,{"data-slot":`breadcrumb-separator`,role:`presentation`,"aria-hidden":`true`,className:K(`[&>svg]:size-3.5`,t),...n,children:e??(0,J.jsx)(F,{})})}var $J=_.createContext(void 0);function eY(e){let t=_.useContext($J);if(t===void 0&&!e)throw Error(_n(33));return t}var tY=_.createContext(void 0);function nY(e){let t=_.useContext(tY);if(t===void 0&&!e)throw Error(_n(36));return t}var rY=_.createContext(void 0);function iY(e=!0){let t=_.useContext(rY);if(t===void 0&&!e)throw Error(_n(25));return t}function aY(e){let{closeOnClick:t,highlighted:n,id:r,nodeId:i,store:a,typingRef:o,itemRef:s,itemMetadata:c}=e,{events:l}=a.useState(`floatingTreeRoot`),u=a.useState(`open`),d=iY(!0),f=d!==void 0;return _.useMemo(()=>({id:r,role:`menuitem`,tabIndex:u&&n?0:-1,onKeyDown(e){e.key===` `&&o?.current&&e.preventDefault()},onMouseMove(e){i&&l.emit(`itemhover`,{nodeId:i,target:e.currentTarget})},onClick(e){t&&l.emit(`close`,{domEvent:e,reason:li})},onMouseUp(e){if(d){let t=d.initialCursorPointRef.current;if(d.initialCursorPointRef.current=null,f&&t&&Math.abs(e.clientX-t.x)<=1&&Math.abs(e.clientY-t.y)<=1||f&&!Hi&&e.button===2)return}s.current&&a.context.allowMouseUpTriggerRef.current&&(!f||e.button===2)&&c.type===`regular-item`&&ei(s.current,e,{detail:1})}}),[t,n,r,l,i,u,a,o,s,d,f,c])}var oY={type:`regular-item`};function sY(e){let{closeOnClick:t,disabled:n,highlighted:r,id:i,store:a,typingRef:o=a.context.typingRef,nativeButton:s,itemMetadata:c,nodeId:l}=e,u=_.useRef(null),{getButtonProps:d,buttonRef:f}=ti({disabled:n,focusableWhenDisabled:!0,native:s,composite:!0}),p=aY({closeOnClick:t,highlighted:r,id:i,nodeId:l,store:a,typingRef:o,itemRef:u,itemMetadata:c}),m=_.useCallback(e=>zn(p,{onMouseEnter(){c.type===`submenu-trigger`&&c.setActive()}},e,d),[p,d,c]),h=Sn(u,f);return _.useMemo(()=>({getItemProps:m,itemRef:h}),[m,h])}var cY=_.createContext(void 0),lY=_.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,[o,s]=_.useState(void 0),c=$n(`div`,e,{ref:t,props:{role:`group`,"aria-labelledby":o,...a}});return(0,J.jsx)(cY.Provider,{value:s,children:c})}),uY=_.forwardRef(function(e,t){let{render:n,className:r,id:i,label:a,nativeButton:o=!1,disabled:s=!1,closeOnClick:c=!0,style:l,...u}=e,d=jp({guess:!0,label:a}),f=eY(!0),p=Di(i),{store:m}=nY(),h=m.useState(`disabled`),g=s||h,_=m.useState(`isActive`,d.index),v=m.useState(`itemProps`),{getItemProps:y,itemRef:b}=sY({closeOnClick:c,disabled:g,highlighted:_,id:p,store:m,nativeButton:o,nodeId:f?.context.nodeId,itemMetadata:oY});return $n(`div`,e,{state:{disabled:g,highlighted:_},props:[v,u,y],ref:[b,t,d.ref]})}),dY=_.forwardRef(function(e,t){let{render:n,className:r,style:i,finalFocus:a,...o}=e,{store:s}=nY(),{side:c,align:l}=eY(),u=_p(!0)!=null,d=s.useState(`open`),f=s.useState(`transitionStatus`),p=s.useState(`popupProps`),m=s.useState(`mounted`),h=s.useState(`instantType`),g=s.useState(`activeTriggerElement`),v=s.useState(`parent`),y=s.useState(`lastOpenChangeReason`),b=s.useState(`rootId`),x=s.useState(`floatingRootContext`),S=s.useState(`floatingTreeRoot`),C=s.useState(`closeDelay`),w=s.useState(`hoverEnabled`),T=s.useState(`disabled`),E=s.useState(`openMethod`),D=v.type===`context-menu`;_l({open:d,ref:s.context.popupRef,onComplete(){d&&s.context.onOpenChangeComplete?.(!0)}}),_.useEffect(()=>{function e(e){s.setOpen(!1,xi(e.reason,e.domEvent))}return S.events.on(`close`,e),()=>{S.events.off(`close`,e)}},[S.events,s]),Ql(x,{enabled:w&&!T&&!D&&v.type!==`menubar`,closeDelay:C});let O=s.useStateSetter(`popupElement`),k=$n(`div`,e,{state:{transitionStatus:f,side:c,align:l,open:d,nested:v.type===`menu`,instant:h},ref:[t,s.context.popupRef,O],stateAttributesMapping:_r,props:[p,{onKeyDown(e){u&&wu.has(e.key)&&e.stopPropagation()}},cp(f),o,{"data-rootownerid":b}]}),A=v.type===void 0||D;return(g||v.type===`menubar`&&y!==`outside-press`)&&(A=!0),(0,J.jsx)(Fs,{context:x,openInteractionType:E,modal:D,disabled:!m,returnFocus:a===void 0?A:a,initialFocus:v.type!==`menu`,restoreFocus:!0,externalTree:v.type===`menubar`?void 0:S,previousFocusableElement:g,nextFocusableElement:v.type===void 0?s.context.triggerFocusTargetRef:void 0,beforeContentFocusGuardRef:v.type===void 0?s.context.beforeContentFocusGuardRef:void 0,children:k})}),fY=_.createContext(void 0);function pY(){let e=_.useContext(fY);if(e===void 0)throw Error(_n(32));return e}var mY=_.forwardRef(function(e,t){let{keepMounted:n=!1,...r}=e,{store:i}=nY();return i.useState(`mounted`)||n?(0,J.jsx)(fY.Provider,{value:n,children:(0,J.jsx)(gs,{ref:t,...r})}):null}),hY=_.forwardRef(function(e,t){let{anchor:n,positionMethod:r=`absolute`,className:i,render:a,side:o,align:s,sideOffset:c=0,alignOffset:l=0,collisionBoundary:u=`clipping-ancestors`,collisionPadding:d=5,arrowPadding:f=5,sticky:p=!1,disableAnchorTracking:m=!1,collisionAvoidance:h=cs,style:g,...v}=e,{store:y}=nY(),b=pY(),x=iY(!0),S=y.useState(`parent`),C=y.useState(`floatingRootContext`),w=y.useState(`floatingTreeRoot`),T=y.useState(`mounted`),E=y.useState(`open`),D=y.useState(`modal`),O=y.useState(`openMethod`),k=y.useState(`activeTriggerElement`),A=y.useState(`transitionStatus`),j=y.useState(`positionerElement`),M=y.useState(`instantType`),N=y.useState(`adaptiveOrigin`),P=y.useState(`lastOpenChangeReason`),F=y.useState(`floatingNodeId`),I=y.useState(`floatingParentNodeId`),L=C.useState(`domReferenceElement`),R=_.useRef(null),z=gl(j),ee=n,B=c,V=l,H=s,te=h;S.type===`context-menu`&&(ee=n??S.context?.anchor,H??=`start`,!o&&H!==`center`&&(V=e.alignOffset??2,B=e.sideOffset??-5));let U=o,ne=H;S.type===`menu`?(U??=`inline-end`,ne??=`start`,te=e.collisionAvoidance??ls):S.type===`menubar`&&(U??=S.context.orientation===`vertical`?`inline-end`:`bottom`,ne??=`start`);let re=S.type===`context-menu`,ie=tp({anchor:ee,floatingRootContext:C,positionMethod:x?`fixed`:r,mounted:T,side:U,sideOffset:B,align:ne,alignOffset:V,arrowPadding:re?0:f,collisionBoundary:u,collisionPadding:d,sticky:p,nodeId:F,keepMounted:b,disableAnchorTracking:m,collisionAvoidance:te,shift:re?{crossAxis:!(`side`in te&&te.side===`flip`),rootBoundary:`layoutViewport`}:void 0,externalTree:w,adaptiveOrigin:N});_.useEffect(()=>{function e(e){e.open&&(e.parentNodeId===F&&y.set(`hoverEnabled`,!1),e.nodeId!==F&&e.parentNodeId===y.select(`floatingParentNodeId`)&&y.setOpen(!1,xi(hi)))}return w.events.on(`menuopenchange`,e),()=>{w.events.off(`menuopenchange`,e)}},[y,w.events,F]),_.useEffect(()=>{if(y.select(`floatingParentNodeId`)==null)return;function e(e){if(e.open||e.nodeId!==y.select(`floatingParentNodeId`))return;let t=e.reason??`sibling-open`;y.setOpen(!1,xi(t))}return w.events.on(`menuopenchange`,e),()=>{w.events.off(`menuopenchange`,e)}},[w.events,y]);let ae=Mi();_.useEffect(()=>{E||ae.clear()},[E,ae]),_.useEffect(()=>{function e(e){if(!(!E||e.nodeId!==y.select(`floatingParentNodeId`))){if(e.target&&k&&k!==e.target){let e=y.select(`closeDelay`);e>0?ae.isStarted()||ae.start(e,()=>{y.setOpen(!1,xi(hi))}):y.setOpen(!1,xi(hi))}else ae.clear()}}return w.events.on(`itemhover`,e),()=>{w.events.off(`itemhover`,e)}},[w.events,E,k,y,ae]),_.useEffect(()=>{let e={open:E,nodeId:F,parentNodeId:I,reason:y.select(`lastOpenChangeReason`)};w.events.emit(`menuopenchange`,e)},[w.events,E,y,F,I]),q(()=>{let e=L,t=R.current;if(e&&(R.current=e),t&&e&&e!==t){y.set(`instantType`,void 0);let e=new AbortController;return z(()=>{y.set(`instantType`,`trigger-change`)},e.signal),()=>{e.abort()}}},[L,z,y]);let oe={open:E,side:ie.side,align:ie.align,anchorHidden:ie.anchorHidden,nested:S.type===`menu`,instant:M},se=S.type===`menubar`&&S.context.modal;dp(E&&(se||D&&P!==`trigger-hover`),O===`touch`,j,k);let ce=lp(e,oe,{styles:ie.positionerStyles,transitionStatus:A,props:v,refs:[t,y.useStateSetter(`positionerElement`)],hidden:!T,inert:!E}),le=T&&S.type!==`menu`&&(S.type!==`menubar`&&D&&P!==`trigger-hover`||S.type===`menubar`&&S.context.modal),ue=null;return S.type===`menubar`?ue=S.context.contentElement:S.type===void 0&&(ue=k),(0,J.jsxs)($J.Provider,{value:ie,children:[le&&(0,J.jsx)(Pu,{ref:S.type===`context-menu`||S.type===`nested-context-menu`?S.context.internalBackdropRef:null,inert:Nu(!E),cutout:ue}),(0,J.jsx)(ws,{id:F,children:(0,J.jsx)(Rf,{elementsRef:y.context.itemDomElements,labelsRef:y.context.itemLabels,children:ce})})]})}),gY=_.createContext(null);function _Y(e){let t=_.useContext(gY);if(t===null&&!e)throw Error(_n(5));return t}var vY={...Bl,disabled:e=>e.parent.type===`menubar`&&e.parent.context.disabled||e.disabled,modal:e=>(e.parent.type===void 0||e.parent.type===`context-menu`)&&(e.modal??!0),openMethod:e=>e.openMethod,allowMouseEnter:e=>e.allowMouseEnter,highlightItemOnHover:e=>e.highlightItemOnHover,parent:e=>e.parent,rootId:e=>e.parent.type===`menu`?e.parent.store.select(`rootId`):e.parent.type===void 0?e.rootId:e.parent.context.rootId,activeIndex:e=>e.activeIndex,isActive:(e,t)=>e.activeIndex===t,hoverEnabled:e=>e.hoverEnabled,instantType:e=>e.instantType,lastOpenChangeReason:e=>e.openChangeReason,floatingTreeRoot:e=>e.parent.type===`menu`?e.parent.store.select(`floatingTreeRoot`):e.floatingTreeRoot,floatingNodeId:e=>e.floatingNodeId,floatingParentNodeId:e=>e.floatingParentNodeId,itemProps:e=>e.itemProps,closeDelay:e=>e.closeDelay,adaptiveOrigin:e=>e.adaptiveOrigin,keyboardEventRelay:e=>{if(e.keyboardEventRelay)return e.keyboardEventRelay;if(e.parent.type===`menu`)return e.parent.store.select(`keyboardEventRelay`)}},yY=class extends dl{constructor(e){super({...xY(),...e},bY(),vY),this.unsubscribeParentListener=this.observe(`parent`,e=>{if(this.unsubscribeParentListener?.(),e.type===`menu`){let t=e.store.select(`rootId`),n=e.store.select(`floatingTreeRoot`),r=e.store.select(`keyboardEventRelay`);this.unsubscribeParentListener=e.store.subscribe(()=>{let i=e.store.select(`rootId`),a=e.store.select(`floatingTreeRoot`),o=e.store.select(`keyboardEventRelay`);(t!==i||n!==a||r!==o)&&(t=i,n=a,r=o,this.notifyAll())}),this.context.allowMouseUpTriggerRef=e.store.context.allowMouseUpTriggerRef;return}e.type!==void 0&&(this.context.allowMouseUpTriggerRef=e.context.allowMouseUpTriggerRef),this.unsubscribeParentListener=null})}setOpen(e,t){this.state.floatingRootContext.context.events.emit(`setOpen`,{open:e,eventDetails:t})}unsubscribeParentListener=null};function bY(){return{positionerRef:_.createRef(),popupRef:_.createRef(),typingRef:{current:!1},itemDomElements:{current:[]},itemLabels:{current:[]},allowMouseUpTriggerRef:{current:!1},triggerFocusTargetRef:_.createRef(),beforeContentFocusGuardRef:_.createRef(),onOpenChangeComplete:void 0,triggerElements:new jl}}function xY(){return{...Nl(),disabled:!1,modal:!0,openMethod:null,allowMouseEnter:!1,highlightItemOnHover:!0,parent:{type:void 0},rootId:void 0,activeIndex:null,hoverEnabled:!0,instantType:void 0,openChangeReason:null,floatingTreeRoot:new vs,floatingNodeId:void 0,floatingParentNodeId:null,itemProps:Pn,keyboardEventRelay:void 0,closeDelay:0,adaptiveOrigin:void 0}}var SY=_.createContext(void 0);function CY(){return _.useContext(SY)}var wY=el(function(e){let{children:t,open:n,onOpenChange:r,onOpenChangeComplete:i,defaultOpen:a=!1,disabled:o=!1,modal:s,loopFocus:c=!0,orientation:l=`vertical`,actionsRef:u,closeParentOnEsc:d=!1,handle:f,triggerId:p,defaultTriggerId:m=null,highlightItemOnHover:h=!0}=e,g=iY(!0),v=nY(!0),y=_Y(!0),b=CY(),x=_.useMemo(()=>b&&v?{type:`menu`,store:v.store}:y?{type:`menubar`,context:y}:g&&!v?{type:`context-menu`,context:g}:{type:void 0},[g,v,y,b]),S=TY({open:a,openProp:n,activeTriggerId:m,triggerIdProp:p,parent:x});S.useControlledProp(`openProp`,n),S.useControlledProp(`triggerIdProp`,p),S.useContextCallback(`onOpenChangeComplete`,i);let C=Ei(),w=Ei(),T=S.useState(`floatingTreeRoot`),E=Cs(T),D=xs(),O=S.useState(`open`),k=S.useState(`activeTriggerElement`),A=S.useState(`positionerElement`),j=S.useState(`hoverEnabled`),M=S.useState(`disabled`),N=S.useState(`lastOpenChangeReason`),P=S.useState(`parent`),F=S.useState(`activeIndex`),I=S.useState(`payload`),L=S.useState(`floatingParentNodeId`),R=_.useRef(null),z=_.useRef(P.type!==`context-menu`),ee=Mi(),B=_.useRef(!0),V=Mi(),H=L!=null,{openMethod:te,triggerProps:U}=id(O);S.useSyncedValues({disabled:o,highlightItemOnHover:h,modal:P.type===void 0?s:void 0,openMethod:te,rootId:C}),Dl(S);let{forceUnmount:ne}=Ol(O,S,()=>{S.set(`allowMouseEnter`,!1)});q(()=>{g&&!v?S.update({parent:{type:`context-menu`,context:g},floatingNodeId:E,floatingParentNodeId:D}):v&&S.update({floatingNodeId:E,floatingParentNodeId:D})},[g,v,E,D,S]),_.useEffect(()=>{if(O||(R.current=null),P.type===`context-menu`){if(!O){ee.clear(),z.current=!1;return}ee.start(500,()=>{z.current=!0})}},[ee,O,P.type]),q(()=>{!O&&!j&&S.set(`hoverEnabled`,!0)},[O,j,S]);let re=qr((e,t)=>{let n=t.reason;if(!e&&!S.select(`open`)||O===e&&t.trigger===k&&N===n)return;let i=wl(t);if(!e&&t.trigger==null&&(t.trigger=k??void 0),r?.(e,t),t.isCanceled)return;S.state.floatingRootContext.dispatchOpenChange(e,t);let a=t.event;if(e===!1&&a?.type===`click`&&a.pointerType===`touch`&&!B.current)return;e&&n===`trigger-focus`?(B.current=!1,V.start(300,()=>{B.current=!0})):(B.current=!0,V.clear());let o=(n===`trigger-press`||n===`item-press`)&&a.detail===0,s=!e&&(n===`escape-key`||n==null),c={open:e,openChangeReason:n};R.current=t.event,Cl(c,e,t.trigger,i()),S.update(c),P.type===`menubar`&&(n===`trigger-focus`||n===`focus-out`||n===`trigger-hover`||n===`list-navigation`||n===`sibling-open`)?S.set(`instantType`,`group`):o||s?S.set(`instantType`,o?`click`:`dismiss`):S.set(`instantType`,void 0)}),ie=ml({popupStore:S,floatingId:w,nested:D!=null,onOpenChange:re}),ae=ie.context.events;q(()=>{let e=({open:e,eventDetails:t})=>re(e,t);return ae.on(`setOpen`,e),()=>{ae?.off(`setOpen`,e)}},[ae,re]);let oe=_.useCallback(()=>{S.setOpen(!1,xi(yi))},[S]);_.useImperativeHandle(u,()=>({unmount:ne,close:oe}),[ne,oe]);let se;P.type===`context-menu`&&(se=P.context),_.useImperativeHandle(se?.positionerRef,()=>A,[A]),_.useImperativeHandle(se?.actionsRef,()=>({setOpen:re}),[re]);let ce=Hs(ie,{enabled:!M,bubbles:{escapeKey:d&&P.type===`menu`},outsidePress(){return P.type!==`context-menu`||R.current?.type===`contextmenu`||z.current},externalTree:H?T:void 0}),le=Kf(),ue=_.useCallback(e=>{S.select(`activeIndex`)!==e&&S.set(`activeIndex`,e)},[S]),de=cu(ie,{enabled:!M,listRef:S.context.itemDomElements,activeIndex:F,nested:P.type!==void 0,loopFocus:c,orientation:l,parentOrientation:P.type===`menubar`?P.context.orientation:void 0,rtl:le===`rtl`,disabledIndices:Nn,onNavigate:ue,openOnArrowKeyDown:P.type!==`context-menu`,externalTree:H?T:void 0,focusItemOnHover:h}),fe=_.useCallback(e=>{S.context.typingRef.current=e},[S]),pe=lu(ie,{enabled:!M,listRef:S.context.itemLabels,elementsRef:S.context.itemDomElements,activeIndex:F,resetMs:500,onMatch:e=>{O&&e!==F&&S.set(`activeIndex`,e)},onTyping:fe});kl(S,{floatingRootContext:ie,activeTriggerProps:_.useMemo(()=>{let e=zn(pe.reference,de.reference,ce.reference,{onMouseMove(){S.set(`allowMouseEnter`,!0)}},U);return e[`aria-haspopup`]=`menu`,e[`aria-expanded`]=O,e},[S,pe.reference,de.reference,ce.reference,U,O]),inactiveTriggerProps:_.useMemo(()=>{let e=zn(de.trigger,ce.trigger,U);return e[`aria-haspopup`]=`menu`,e[`aria-expanded`]=!1,e},[de.trigger,ce.trigger,U]),popupProps:_.useMemo(()=>zn(vl,{id:w,role:`menu`,"aria-labelledby":k?.id,onMouseMove(){S.set(`allowMouseEnter`,!0),P.type===`menu`&&S.set(`hoverEnabled`,!1)},onClick(){S.select(`hoverEnabled`)&&S.set(`hoverEnabled`,!1)},onKeyDown(e){let t=S.select(`keyboardEventRelay`);t&&!e.isPropagationStopped()&&t(e)}},pe.floating,de.floating,ce.floating),[k,w,P.type,S,pe.floating,de.floating,ce.floating]),itemProps:de.item??Pn});let W=_.useMemo(()=>({store:S,parent:x}),[S,x]),me=(0,J.jsxs)(tY.Provider,{value:W,children:[f&&(0,J.jsx)(xl,{handle:f,store:S}),typeof t==`function`?t({payload:I}):t]});return P.type===void 0||P.type===`context-menu`?(0,J.jsx)(Ts,{externalTree:T,children:me}):me});function TY(e){return xn(()=>new yY(e)).current}function EY(e){if(Tr(e)&&e.hasAttribute(`data-rootownerid`))return e.getAttribute(`data-rootownerid`);if(!Lr(e))return EY(Br(e))}function DY(e,t){let n=_.useRef(null);function r(t){ds.flushSync(()=>{e.setOpen(!1,xi(di,t.nativeEvent,t.currentTarget))}),zo(n.current)?.focus()}function i(n){let r=e.select(`positionerElement`);if(r&&Bo(n,r))e.context.beforeContentFocusGuardRef.current?.focus();else{ds.flushSync(()=>{e.setOpen(!1,xi(di,n.nativeEvent,n.currentTarget))});let i=Ro(e.context.triggerFocusTargetRef.current||t.current);for(;i!==null&&oa(r,i);){let e=i;if(i=Fo(i),i===e)break}i?.focus()}}return{preFocusGuardRef:n,handlePreFocusGuardFocus:r,handleFocusTargetFocus:i}}function OY(e){let{enabled:t=!0,mouseDownAction:n,open:r}=e,i=_.useRef(!1);return _.useMemo(()=>t?{onMouseDown:e=>{(n===`open`&&!r||n===`close`&&r)&&(i.current=!0,$r(e.currentTarget).addEventListener(`click`,()=>{i.current=!1},{once:!0}))},onClick:e=>{i.current&&(i.current=!1,e.preventBaseUIHandler())}}:Pn,[t,n,r])}var kY=tl(function(e,t){let{render:n,className:r,style:i,disabled:a=!1,nativeButton:o=!0,id:s,openOnHover:c,delay:l=100,closeDelay:u=0,handle:d,payload:f,...p}=e,m=nY(!0),h=Vl(d)??m?.store;if(!h)throw Error(_n(85));let g=Di(s),v=h.useState(`isTriggerActive`,g),y=h.useState(`floatingRootContext`),b=h.useState(`isOpenedByTrigger`,g),x=h.useState(`triggerPopupId`,g),S=_.useRef(null),C=jY(),w=Zr(!0),T=Ss(),E=_.useMemo(()=>T??new vs,[T]),{registerTrigger:D,isMountedByThisTrigger:O}=El(g,S,h,{payload:f,closeDelay:u,parent:C,floatingTreeRoot:E,floatingNodeId:Cs(E),floatingParentNodeId:xs(),keyboardEventRelay:w?.relayKeyboardEvent}),k=C.type===`menubar`,A=h.useState(`disabled`),j=a||A||k&&C.context.disabled,{getButtonProps:M,buttonRef:N}=ti({disabled:j,native:o});_.useEffect(()=>{!b&&C.type===void 0&&(h.context.allowMouseUpTriggerRef.current=!1)},[h,b,C.type]);let P=_.useRef(null),F=Mi(),I=qr(e=>{if(!P.current)return;F.clear(),h.context.allowMouseUpTriggerRef.current=!1;let t=e.target;oa(P.current,t)||oa(h.select(`positionerElement`),t)||t===P.current||(t==null||EY(t)!==h.select(`rootId`))&&(Df(e,P.current)||E.events.emit(`close`,{domEvent:e,reason:mi}))});_.useEffect(()=>{b&&h.select(`lastOpenChangeReason`)===`trigger-hover`&&$r(P.current).addEventListener(`mouseup`,I,{once:!0})},[b,I,h]);let L=k&&C.context.hasSubmenuOpen,R=eu(y,{enabled:(c??L)&&!j&&(!k||L&&!O),handleClose:_u({blockPointerEvents:!k}),mouseOnly:!0,move:!1,restMs:C.type===void 0?l:void 0,delay:{close:u},triggerElementRef:S,externalTree:E,isActiveTrigger:v,isClosing:()=>h.select(`transitionStatus`)===`ending`}),z=AY(b,h.select(`lastOpenChangeReason`)),ee=Is(y,{enabled:!j,event:b&&k?`click`:`mousedown`,toggle:!0,ignoreMouse:!1,stickIfOpen:C.type===void 0&&z}),B=Kl(y,{enabled:!j&&L}),V=OY({open:b,enabled:k,mouseDownAction:`open`}),H=_.useMemo(()=>zn(B.reference,ee.reference),[B.reference,ee.reference]),te=h.useState(`triggerProps`,O),{preFocusGuardRef:U,handlePreFocusGuardFocus:ne,handleFocusTargetFocus:re}=DY(h,S),ie={disabled:j,open:b},ae=[P,t,N,D,S],oe=[H,R??Pn,te,{"aria-haspopup":`menu`,"aria-controls":x,id:g,onMouseDown:e=>{h.select(`open`)||(F.start(200,()=>{h.context.allowMouseUpTriggerRef.current=!0}),$r(e.currentTarget).addEventListener(`mouseup`,I,{once:!0}))}},k?{role:`menuitem`}:{},V,p,M],se=$n(`button`,e,{enabled:!k,stateAttributesMapping:hr,state:ie,ref:ae,props:oe});return k?(0,J.jsx)(Nq,{tag:`button`,render:n,className:r,style:i,state:ie,refs:ae,props:oe,stateAttributesMapping:hr}):b?(0,J.jsxs)(_.Fragment,{children:[(0,J.jsx)(Ia,{ref:U,onFocus:ne},`${g}-pre-focus-guard`),(0,J.jsx)(_.Fragment,{children:se},g),(0,J.jsx)(Ia,{ref:h.context.triggerFocusTargetRef,onFocus:re},`${g}-post-focus-guard`)]}):(0,J.jsx)(_.Fragment,{children:se},g)});function AY(e,t){let n=Mi(),[r,i]=_.useState(!1);return q(()=>{e&&t===`trigger-hover`?(i(!0),n.start(500,()=>{i(!1)})):e||(n.clear(),i(!1))},[e,t,n]),r}function jY(){let e=_Y(!0);return _.useMemo(()=>e?{type:`menubar`,context:e}:{type:void 0},[e])}function MY({...e}){return(0,J.jsx)(wY,{"data-slot":`dropdown-menu`,...e})}function NY({...e}){return(0,J.jsx)(kY,{"data-slot":`dropdown-menu-trigger`,...e})}function PY({align:e=`start`,alignOffset:t=0,side:n=`bottom`,sideOffset:r=4,className:i,...a}){return(0,J.jsx)(mY,{children:(0,J.jsx)(hY,{className:`isolate z-50 outline-none`,align:e,alignOffset:t,side:n,sideOffset:r,children:(0,J.jsx)(dY,{"data-slot":`dropdown-menu-content`,className:K(`z-50 max-h-(--available-height) w-(--anchor-width) min-w-32 origin-(--transform-origin) overflow-x-hidden overflow-y-auto rounded-lg bg-popover p-1 text-popover-foreground shadow-md ring-1 ring-foreground/10 duration-100 outline-none data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:overflow-hidden data-closed:fade-out-0 data-closed:zoom-out-95`,i),...a})})})}function FY({...e}){return(0,J.jsx)(lY,{"data-slot":`dropdown-menu-group`,...e})}function IY({className:e,inset:t,variant:n=`default`,...r}){return(0,J.jsx)(uY,{"data-slot":`dropdown-menu-item`,"data-inset":t,"data-variant":n,className:K(`group/dropdown-menu-item relative flex cursor-default items-center gap-1.5 rounded-md px-1.5 py-1 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground not-data-[variant=destructive]:focus:**:text-accent-foreground data-inset:pl-7 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 data-disabled:pointer-events-none data-disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-[variant=destructive]:*:[svg]:text-destructive`,e),...r})}var LY=768;function RY(){let[e,t]=_.useState(()=>window.innerWidth<LY);return _.useEffect(()=>{let e=window.matchMedia(`(max-width: 767px)`),n=()=>{t(window.innerWidth<LY)};return e.addEventListener(`change`,n),()=>e.removeEventListener(`change`,n)},[]),!!e}function zY({...e}){return(0,J.jsx)($u,{"data-slot":`sheet`,...e})}function BY({...e}){return(0,J.jsx)(Fu,{"data-slot":`sheet-portal`,...e})}function VY({className:e,...t}){return(0,J.jsx)(vr,{"data-slot":`sheet-overlay`,className:K(`fixed inset-0 z-50 bg-black/10 transition-opacity duration-150 data-ending-style:opacity-0 data-starting-style:opacity-0 supports-backdrop-filter:backdrop-blur-xs`,e),...t})}function HY({className:e,children:t,side:n=`right`,showCloseButton:r=!0,...i}){return(0,J.jsxs)(BY,{children:[(0,J.jsx)(VY,{}),(0,J.jsxs)(Mu,{"data-slot":`sheet-content`,"data-side":n,className:K(`fixed z-50 flex flex-col gap-4 bg-popover bg-clip-padding text-sm text-popover-foreground shadow-lg transition duration-200 ease-in-out data-ending-style:opacity-0 data-starting-style:opacity-0 data-[side=bottom]:inset-x-0 data-[side=bottom]:bottom-0 data-[side=bottom]:h-auto data-[side=bottom]:border-t data-[side=bottom]:data-ending-style:translate-y-[2.5rem] data-[side=bottom]:data-starting-style:translate-y-[2.5rem] data-[side=left]:inset-y-0 data-[side=left]:left-0 data-[side=left]:h-full data-[side=left]:w-3/4 data-[side=left]:border-r data-[side=left]:data-ending-style:translate-x-[-2.5rem] data-[side=left]:data-starting-style:translate-x-[-2.5rem] data-[side=right]:inset-y-0 data-[side=right]:right-0 data-[side=right]:h-full data-[side=right]:w-3/4 data-[side=right]:border-l data-[side=right]:data-ending-style:translate-x-[2.5rem] data-[side=right]:data-starting-style:translate-x-[2.5rem] data-[side=top]:inset-x-0 data-[side=top]:top-0 data-[side=top]:h-auto data-[side=top]:border-b data-[side=top]:data-ending-style:translate-y-[-2.5rem] data-[side=top]:data-starting-style:translate-y-[-2.5rem] data-[side=left]:sm:max-w-sm data-[side=right]:sm:max-w-sm`,e),...i,children:[t,r&&(0,J.jsxs)(Si,{"data-slot":`sheet-close`,render:(0,J.jsx)(ud,{variant:`ghost`,className:`absolute top-3 right-3`,size:`icon-sm`}),children:[(0,J.jsx)(pe,{}),(0,J.jsx)(`span`,{className:`sr-only`,children:`Close`})]})]})]})}function UY({className:e,...t}){return(0,J.jsx)(`div`,{"data-slot":`sheet-header`,className:K(`flex flex-col gap-0.5 p-4`,e),...t})}function WY({className:e,...t}){return(0,J.jsx)(ed,{"data-slot":`sheet-title`,className:K(`font-heading text-base font-medium text-foreground`,e),...t})}function GY({className:e,...t}){return(0,J.jsx)(Oi,{"data-slot":`sheet-description`,className:K(`text-sm text-muted-foreground`,e),...t})}var KY=_.createContext(void 0);function qY(e){let t=_.useContext(KY);if(t===void 0&&!e)throw Error(_n(72));return t}var JY={...Bl,disabled:e=>e.disabled,instantType:e=>e.instantType,isInstantPhase:e=>e.isInstantPhase,trackCursorAxis:e=>e.trackCursorAxis,disableHoverablePopup:e=>e.disableHoverablePopup,lastOpenChangeReason:e=>e.openChangeReason,closeOnClick:e=>e.closeOnClick,closeDelay:e=>e.closeDelay,adaptiveOrigin:e=>e.adaptiveOrigin},YY=class extends dl{constructor(e,t,n){let r=new jl;super(XY(e,r,t,n),ZY(r),JY)}setOpen=(e,t)=>{Tl(this,e,t,{extraState:{openChangeReason:t.reason}})};cancelPendingOpen(e){this.state.floatingRootContext.dispatchOpenChange(!1,xi(ai,e))}};function XY(e,t,n,r=!1){let i={...Nl(),disabled:!1,instantType:void 0,isInstantPhase:!1,trackCursorAxis:`none`,disableHoverablePopup:!1,openChangeReason:null,closeOnClick:!0,closeDelay:0,adaptiveOrigin:void 0,...e};return i.floatingRootContext=Pl(t,n,r),i}function ZY(e){return{popupRef:_.createRef(),onOpenChange:void 0,onOpenChangeComplete:void 0,triggerElements:e}}var QY=el(function(e){let{disabled:t=!1,defaultOpen:n=!1,open:r,disableHoverablePopup:i=!1,trackCursorAxis:a=`none`,actionsRef:o,onOpenChange:s,onOpenChangeComplete:c,handle:l,triggerId:u,defaultTriggerId:d=null,children:f}=e,p=bl((e,t)=>new YY({open:n,openProp:r,activeTriggerId:d,triggerIdProp:u},e,t));p.useControlledProp(`openProp`,r),p.useControlledProp(`triggerIdProp`,u),p.useContextCallback(`onOpenChange`,s),p.useContextCallback(`onOpenChangeComplete`,c);let m=p.useState(`open`),h=!t&&m,g=p.useState(`activeTriggerId`),v=p.useState(`mounted`),y=p.useState(`payload`);p.useSyncedValues({trackCursorAxis:a,disableHoverablePopup:i,disabled:t}),Dl(p,{closeOnActiveTriggerUnmount:!0});let{forceUnmount:b,transitionStatus:x}=Ol(h,p),S=p.useState(`isInstantPhase`),C=p.useState(`instantType`),w=p.useState(`lastOpenChangeReason`),T=_.useRef(null);q(()=>{m&&t&&p.setOpen(!1,xi(gi))},[m,t,p]),q(()=>{x===`ending`&&w===`none`||x!==`ending`&&S?(C!==`delay`&&(T.current=C),p.set(`instantType`,`delay`)):T.current!==null&&(p.set(`instantType`,T.current),T.current=null)},[x,S,w,C,p]),q(()=>{h&&(g??p.set(`payload`,void 0))},[p,g,h]),_.useImperativeHandle(o,()=>({unmount:b,close:()=>p.setOpen(!1,xi(yi))}),[b,p]);let E=h||v||!t&&a!==`none`;return(0,J.jsxs)(KY.Provider,{value:p,children:[l&&(0,J.jsx)(xl,{handle:l,store:p}),E&&(0,J.jsx)($Y,{store:p,disabled:t,trackCursorAxis:a}),typeof f==`function`?f({payload:y}):f]})});function $Y({store:e,disabled:t,trackCursorAxis:n}){let r=e.useState(`floatingRootContext`),i=Hs(r,{enabled:!t,referencePress:()=>e.select(`closeOnClick`)}),a=zs(r,{enabled:!t&&n!==`none`,axis:n===`none`?void 0:n}),o=_.useMemo(()=>zn(a.reference,i.reference),[a.reference,i.reference]);return kl(e,{activeTriggerProps:o,inactiveTriggerProps:o,popupProps:i.floating??Pn}),null}var eX=_.createContext(void 0);function tX(){return _.useContext(eX)}var nX=`data-base-ui-tooltip-trigger`;function rX(e){if(`composedPath`in e){let t=e.composedPath();for(let e=0;e<t.length;e+=1){let n=t[e];if(wr(n))return n}}let t=e.target;return wr(t)?t:null}function iX(e){let t=e;for(;t;){let e=t.closest(`[${nX}]`);if(e)return e;let n=t.getRootNode();t=`host`in n&&wr(n.host)?n.host:null}return null}var aX=tl(function(e,t){let{render:n,className:r,style:i,handle:a,payload:o,disabled:s,delay:c,closeOnClick:l=!0,closeDelay:u,id:d,...f}=e,p=qY(!0),m=Vl(a)??p;if(!m)throw Error(_n(82));let h=Di(d),g=m.useState(`isTriggerActive`,h),v=m.useState(`isOpenedByTrigger`,h),y=m.useState(`floatingRootContext`),b=_.useRef(null),x=c??600,S=u??0,{registerTrigger:C,isMountedByThisTrigger:w}=El(h,b,m,{payload:o,closeOnClick:l,closeDelay:S}),T=tX(),{delayRef:E,isInstantPhase:D,hasProvider:O}=wa(y,{open:v}),k=Zl(y);m.useSyncedValue(`isInstantPhase`,D);let A=m.useState(`disabled`),j=s??A,M=Da(j),N=m.useState(`trackCursorAxis`),P=m.useState(`disableHoverablePopup`),F=_.useRef(!1),I=Mi(),L=_.useRef(void 0);function R(){return O?_a(E.current,`open`)===0?0:c??T??600:x}function z(e){let t=b.current;if(!t||!e)return!1;let n=iX(e);return n!==null&&n!==t&&oa(t,n)}function ee(e){let t=z(e);return F.current=t,t&&(k.openChangeTimeout.clear(),k.restTimeout.clear(),k.restTimeoutPending=!1,I.clear()),t}let B=eu(y,{enabled:!j,mouseOnly:!0,move:!1,handleClose:!P&&N!==`both`?_u():null,restMs:R,delay(){return u==null&&O?{close:_a(E.current,`close`)}:{close:S}},triggerElementRef:b,isActiveTrigger:g,isClosing:()=>m.select(`transitionStatus`)===`ending`,shouldOpen(){return!F.current}}),V=Kl(y,{enabled:!j}).reference,H=e=>{let t=F.current,n=rX(e),r=ee(n),i=b.current,a=i&&n&&oa(i,n);if(r&&m.select(`open`)&&m.select(`lastOpenChangeReason`)===`trigger-hover`){m.setOpen(!1,xi(oi,e));return}if(t&&!r&&a&&!M.current&&!m.select(`open`)&&i&&Zi(L.current)){let t=()=>{!F.current&&!M.current&&!m.select(`open`)&&m.setOpen(!0,xi(oi,e,i))},n=R();n===0?(I.clear(),t()):I.start(n,t)}},te=m.useState(`triggerProps`,w);return $n(`button`,e,{state:{open:v},ref:[t,C,b],props:[B,V,w||N!==`none`?te:void 0,{onMouseOver(e){H(e.nativeEvent)},onFocus(e){z(rX(e.nativeEvent))&&e.preventBaseUIHandler()},onMouseLeave(){F.current=!1,I.clear(),L.current=void 0},onPointerEnter(e){L.current=e.pointerType},onPointerDown(e){L.current=e.pointerType,m.set(`closeOnClick`,l),l&&!m.select(`open`)&&m.cancelPendingOpen(e.nativeEvent)},onClick(e){l&&!m.select(`open`)&&m.cancelPendingOpen(e.nativeEvent)},id:h,"data-trigger-disabled":j?``:void 0,[nX]:j?void 0:``},f],stateAttributesMapping:mr})}),oX=_.createContext(void 0);function sX(){let e=_.useContext(oX);if(e===void 0)throw Error(_n(70));return e}var cX=_.forwardRef(function(e,t){let{children:n,container:r,className:i,render:a,style:o,...s}=e,{node:c,subtree:l}=hs({container:r,ref:t,componentProps:e,elementProps:s});return!l&&!c?null:(0,J.jsxs)(_.Fragment,{children:[l,c&&ds.createPortal(n,c)]})}),lX=_.forwardRef(function(e,t){let{keepMounted:n=!1,...r}=e;return qY().useState(`mounted`)||n?(0,J.jsx)(oX.Provider,{value:n,children:(0,J.jsx)(cX,{ref:t,...r})}):null}),uX=_.createContext(void 0);function dX(){let e=_.useContext(uX);if(e===void 0)throw Error(_n(71));return e}var fX=_.forwardRef(function(e,t){let{render:n,className:r,anchor:i,positionMethod:a=`absolute`,side:o=`top`,align:s=`center`,sideOffset:c=0,alignOffset:l=0,collisionBoundary:u=`clipping-ancestors`,collisionPadding:d=5,arrowPadding:f=5,sticky:p=!1,disableAnchorTracking:m=!1,collisionAvoidance:h=ls,style:g,...v}=e,y=qY(),b=sX(),x=y.useState(`open`),S=y.useState(`mounted`),C=y.useState(`trackCursorAxis`),w=y.useState(`disableHoverablePopup`),T=y.useState(`floatingRootContext`),E=y.useState(`instantType`),D=y.useState(`transitionStatus`),O=tp({anchor:i,positionMethod:a,floatingRootContext:T,mounted:S,side:o,sideOffset:c,align:s,alignOffset:l,collisionBoundary:u,collisionPadding:d,sticky:p,arrowPadding:f,disableAnchorTracking:m,keepMounted:b,collisionAvoidance:h,adaptiveOrigin:y.useState(`adaptiveOrigin`)}),k=lp(e,_.useMemo(()=>({open:x,side:O.side,align:O.align,anchorHidden:O.anchorHidden,instant:C===`none`?E:`tracking-cursor`}),[x,O.side,O.align,O.anchorHidden,C,E]),{styles:O.positionerStyles,transitionStatus:D,props:v,refs:[t,y.useStateSetter(`positionerElement`)],hidden:!S,inert:!x||C===`both`||w});return(0,J.jsx)(uX.Provider,{value:O,children:k})}),pX=_.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,o=qY(),{side:s,align:c}=dX(),l=o.useState(`open`),u=o.useState(`instantType`),d=o.useState(`transitionStatus`),f=o.useState(`popupProps`),p=o.useState(`floatingRootContext`),m=o.useState(`disabled`),h=o.useState(`closeDelay`);_l({open:l,ref:o.context.popupRef,onComplete(){l&&o.context.onOpenChangeComplete?.(!0)}}),Ql(p,{enabled:!m,closeDelay:h});let g=o.useStateSetter(`popupElement`);return $n(`div`,e,{state:{open:l,side:s,align:c,instant:u,transitionStatus:d},ref:[t,o.context.popupRef,g],props:[vl,f,cp(d),a],stateAttributesMapping:_r})}),mX=_.forwardRef(function(e,t){let{render:n,className:r,style:i,...a}=e,o=qY(),{arrowRef:s,side:c,align:l,arrowUncentered:u,arrowStyles:d}=dX();return $n(`div`,e,{state:{open:o.useState(`open`),side:c,align:l,uncentered:u,instant:o.useState(`instantType`)},ref:[t,s],props:[{style:d,"aria-hidden":!0},a],stateAttributesMapping:gr})});function hX({...e}){return(0,J.jsx)(QY,{"data-slot":`tooltip`,...e})}function gX({...e}){return(0,J.jsx)(aX,{"data-slot":`tooltip-trigger`,...e})}function _X({className:e,side:t=`top`,sideOffset:n=4,align:r=`center`,alignOffset:i=0,children:a,...o}){return(0,J.jsx)(lX,{children:(0,J.jsx)(fX,{align:r,alignOffset:i,side:t,sideOffset:n,className:`isolate z-50`,children:(0,J.jsxs)(pX,{"data-slot":`tooltip-content`,className:K(`z-50 inline-flex w-fit max-w-xs origin-(--transform-origin) items-center gap-1.5 rounded-md bg-foreground px-3 py-1.5 text-xs text-background has-data-[slot=kbd]:pr-1.5 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 **:data-[slot=kbd]:relative **:data-[slot=kbd]:isolate **:data-[slot=kbd]:z-50 **:data-[slot=kbd]:rounded-sm data-[state=delayed-open]:animate-in data-[state=delayed-open]:fade-in-0 data-[state=delayed-open]:zoom-in-95 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95`,e),...o,children:[a,(0,J.jsx)(mX,{className:`z-50 size-2.5 translate-y-[calc(-50%-2px)] rotate-45 rounded-[2px] bg-foreground fill-foreground data-[side=bottom]:top-1 data-[side=inline-end]:top-1/2! data-[side=inline-end]:-left-1 data-[side=inline-end]:-translate-y-1/2 data-[side=inline-start]:top-1/2! data-[side=inline-start]:-right-1 data-[side=inline-start]:-translate-y-1/2 data-[side=left]:top-1/2! data-[side=left]:-right-1 data-[side=left]:-translate-y-1/2 data-[side=right]:top-1/2! data-[side=right]:-left-1 data-[side=right]:-translate-y-1/2 data-[side=top]:-bottom-2.5`})]})})})}var vX=`sidebar_state`,yX=604800,bX=`16rem`,xX=`18rem`,SX=`3rem`,CX=`b`,wX=_.createContext(null);function TX(){let e=_.useContext(wX);if(!e)throw Error(`useSidebar must be used within a SidebarProvider.`);return e}function EX({defaultOpen:e=!0,open:t,onOpenChange:n,className:r,style:i,children:a,...o}){let s=RY(),[c,l]=_.useState(!1),[u,d]=_.useState(e),f=t??u,p=_.useCallback(e=>{let t=typeof e==`function`?e(f):e;n?n(t):d(t),document.cookie=`${vX}=${t}; path=/; max-age=${yX}`},[n,f]),m=_.useCallback(()=>s?l(e=>!e):p(e=>!e),[s,p,l]);_.useEffect(()=>{let e=e=>{e.key===CX&&(e.metaKey||e.ctrlKey)&&(e.preventDefault(),m())};return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[m]);let h=f?`expanded`:`collapsed`,g=_.useMemo(()=>({state:h,open:f,setOpen:p,isMobile:s,openMobile:c,setOpenMobile:l,toggleSidebar:m}),[h,f,p,s,c,l,m]);return(0,J.jsx)(wX.Provider,{value:g,children:(0,J.jsx)(`div`,{"data-slot":`sidebar-wrapper`,style:{"--sidebar-width":bX,"--sidebar-width-icon":SX,...i},className:K(`group/sidebar-wrapper flex min-h-svh w-full has-data-[variant=inset]:bg-sidebar`,r),...o,children:a})})}function DX({side:e=`left`,variant:t=`sidebar`,collapsible:n=`offcanvas`,className:r,children:i,dir:a,...o}){let{isMobile:s,state:c,openMobile:l,setOpenMobile:u}=TX();return n===`none`?(0,J.jsx)(`div`,{"data-slot":`sidebar`,className:K(`flex h-full w-(--sidebar-width) flex-col bg-sidebar text-sidebar-foreground`,r),...o,children:i}):s?(0,J.jsx)(zY,{open:l,onOpenChange:u,...o,children:(0,J.jsxs)(HY,{dir:a,"data-sidebar":`sidebar`,"data-slot":`sidebar`,"data-mobile":`true`,className:K(`w-(--sidebar-width) bg-sidebar p-0 text-sidebar-foreground [&>button]:hidden`,r),style:{"--sidebar-width":xX},side:e,children:[(0,J.jsxs)(UY,{className:`sr-only`,children:[(0,J.jsx)(WY,{children:`Sidebar`}),(0,J.jsx)(GY,{children:`Displays the mobile sidebar.`})]}),(0,J.jsx)(`div`,{className:`flex h-full w-full flex-col`,children:i})]})}):(0,J.jsxs)(`div`,{className:`group peer hidden text-sidebar-foreground md:block`,"data-state":c,"data-collapsible":c===`collapsed`?n:``,"data-variant":t,"data-side":e,"data-slot":`sidebar`,children:[(0,J.jsx)(`div`,{"data-slot":`sidebar-gap`,className:K(`relative w-(--sidebar-width) bg-transparent transition-[width] duration-200 ease-linear`,`group-data-[collapsible=offcanvas]:w-0`,`group-data-[side=right]:rotate-180`,t===`floating`||t===`inset`?`group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4)))]`:`group-data-[collapsible=icon]:w-(--sidebar-width-icon)`)}),(0,J.jsx)(`div`,{"data-slot":`sidebar-container`,"data-side":e,className:K(`fixed inset-y-0 z-10 hidden h-svh w-(--sidebar-width) transition-[left,right,width] duration-200 ease-linear data-[side=left]:left-0 data-[side=left]:group-data-[collapsible=offcanvas]:left-[calc(var(--sidebar-width)*-1)] data-[side=right]:right-0 data-[side=right]:group-data-[collapsible=offcanvas]:right-[calc(var(--sidebar-width)*-1)] md:flex`,t===`floating`||t===`inset`?`p-2 group-data-[collapsible=icon]:w-[calc(var(--sidebar-width-icon)+(--spacing(4))+2px)]`:`group-data-[collapsible=icon]:w-(--sidebar-width-icon) group-data-[side=left]:border-r group-data-[side=right]:border-l`,r),...o,children:(0,J.jsx)(`div`,{"data-sidebar":`sidebar`,"data-slot":`sidebar-inner`,className:`flex size-full flex-col bg-sidebar group-data-[variant=floating]:rounded-lg group-data-[variant=floating]:shadow-sm group-data-[variant=floating]:ring-1 group-data-[variant=floating]:ring-sidebar-border`,children:i})})]})}function OX({className:e,onClick:t,...n}){let{toggleSidebar:r}=TX();return(0,J.jsxs)(ud,{"data-sidebar":`trigger`,"data-slot":`sidebar-trigger`,variant:`ghost`,size:`icon-sm`,className:K(e),onClick:e=>{t?.(e),r()},...n,children:[(0,J.jsx)(ie,{}),(0,J.jsx)(`span`,{className:`sr-only`,children:`Toggle Sidebar`})]})}function kX({className:e,...t}){return(0,J.jsx)(`main`,{"data-slot":`sidebar-inset`,className:K(`relative flex w-full flex-1 flex-col bg-background md:peer-data-[variant=inset]:m-2 md:peer-data-[variant=inset]:ml-0 md:peer-data-[variant=inset]:rounded-xl md:peer-data-[variant=inset]:shadow-sm md:peer-data-[variant=inset]:peer-data-[state=collapsed]:ml-2`,e),...t})}function AX({className:e,...t}){return(0,J.jsx)(`div`,{"data-slot":`sidebar-header`,"data-sidebar":`header`,className:K(`flex flex-col gap-2 p-2`,e),...t})}function jX({className:e,...t}){return(0,J.jsx)(`div`,{"data-slot":`sidebar-footer`,"data-sidebar":`footer`,className:K(`flex flex-col gap-2 p-2`,e),...t})}function MX({className:e,...t}){return(0,J.jsx)(`div`,{"data-slot":`sidebar-content`,"data-sidebar":`content`,className:K(`thin-scrollbar flex min-h-0 flex-1 flex-col gap-0 overflow-auto group-data-[collapsible=icon]:overflow-hidden`,e),...t})}function NX({className:e,...t}){return(0,J.jsx)(`div`,{"data-slot":`sidebar-group`,"data-sidebar":`group`,className:K(`relative flex w-full min-w-0 flex-col p-2`,e),...t})}function PX({className:e,...t}){return(0,J.jsx)(`div`,{"data-slot":`sidebar-group-content`,"data-sidebar":`group-content`,className:K(`w-full text-sm`,e),...t})}function FX({className:e,...t}){return(0,J.jsx)(`ul`,{"data-slot":`sidebar-menu`,"data-sidebar":`menu`,className:K(`flex w-full min-w-0 flex-col gap-0`,e),...t})}function IX({className:e,...t}){return(0,J.jsx)(`li`,{"data-slot":`sidebar-menu-item`,"data-sidebar":`menu-item`,className:K(`group/menu-item relative`,e),...t})}var LX=cd(`peer/menu-button group/menu-button flex w-full items-center gap-2 overflow-hidden rounded-md p-2 text-left text-sm ring-sidebar-ring outline-hidden transition-[width,height,padding] group-has-data-[sidebar=menu-action]/menu-item:pr-8 group-data-[collapsible=icon]:size-8! group-data-[collapsible=icon]:p-2! hover:bg-sidebar-accent hover:text-sidebar-accent-foreground focus-visible:ring-2 active:bg-sidebar-accent active:text-sidebar-accent-foreground disabled:pointer-events-none disabled:opacity-50 aria-disabled:pointer-events-none aria-disabled:opacity-50 data-open:hover:bg-sidebar-accent data-open:hover:text-sidebar-accent-foreground data-active:bg-[color-mix(in_oklch,var(--sidebar-accent),var(--foreground)_8%)] data-active:font-medium data-active:text-sidebar-accent-foreground [&_svg]:size-4 [&_svg]:shrink-0 [&>span:last-child]:truncate`,{variants:{variant:{default:`hover:bg-sidebar-accent hover:text-sidebar-accent-foreground`,outline:`bg-background shadow-[0_0_0_1px_var(--sidebar-border)] hover:bg-sidebar-accent hover:text-sidebar-accent-foreground hover:shadow-[0_0_0_1px_var(--sidebar-accent)]`},size:{default:`h-8 text-sm`,sm:`h-7 text-xs`,lg:`h-12 text-sm group-data-[collapsible=icon]:p-0!`}},defaultVariants:{variant:`default`,size:`default`}});function RX({render:e,isActive:t=!1,variant:n=`default`,size:r=`default`,tooltip:i,className:a,...o}){let{isMobile:s,state:c}=TX(),l=yd({defaultTagName:`button`,props:zn({className:K(LX({variant:n,size:r}),a)},o),render:i?(0,J.jsx)(gX,{render:e}):e,state:{slot:`sidebar-menu-button`,sidebar:`menu-button`,size:r,active:t}});return i?(typeof i==`string`&&(i={children:i}),(0,J.jsxs)(hX,{children:[l,(0,J.jsx)(_X,{side:`right`,align:`center`,hidden:c!==`collapsed`||s,...i})]})):l}function zX({className:e,render:t,showOnHover:n=!1,...r}){return yd({defaultTagName:`button`,props:zn({className:K(`absolute top-1/2 right-1 flex size-7 -translate-y-1/2 items-center justify-center rounded-md p-0 text-sidebar-foreground ring-sidebar-ring outline-hidden transition-transform group-data-[collapsible=icon]:hidden peer-hover/menu-button:text-sidebar-accent-foreground after:absolute after:-inset-2 hover:bg-[color-mix(in_oklch,var(--sidebar-accent),var(--foreground)_18%)] hover:text-sidebar-accent-foreground aria-expanded:bg-[color-mix(in_oklch,var(--sidebar-accent),var(--foreground)_18%)] aria-expanded:text-sidebar-accent-foreground focus-visible:ring-2 [&>svg]:size-4 [&>svg]:shrink-0`,n&&`group-focus-within/menu-item:opacity-100 group-hover/menu-item:opacity-100 peer-data-active/menu-button:text-sidebar-accent-foreground aria-expanded:opacity-100 md:opacity-0`,e)},r),render:t,state:{slot:`sidebar-menu-action`,sidebar:`menu-action`}})}function BX(e,t){return e.find(e=>e.name===t)||e.find(e=>e.synthetic!==!0)||(e[0]??null)}var VX=`manyoyo.web.sidebarNav.v1`;function HX(){try{let e=window.localStorage.getItem(VX);if(!e)return{navLevel:`containers`,navContainer:``};let t=JSON.parse(e);return{navLevel:t.navLevel===`agents`?`agents`:`containers`,navContainer:typeof t.navContainer==`string`?t.navContainer:``}}catch{return{navLevel:`containers`,navContainer:``}}}function UX(e){if(!e)return`暂无更新`;let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString()}function WX(e,t){let n=new Set(e.map(e=>e.containerName)),r=t.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`),i=RegExp(`^${r}-copy(\\d+)$`),a=0;return n.forEach(e=>{let t=e.match(i);if(t){let e=Number(t[1]);Number.isFinite(e)&&e>a&&(a=e)}}),`${t}-copy${a+1}`}function GX({containers:e,loading:t,error:n,activeSessionName:r,onSelectSession:i,onRefresh:a,confirmLeaveIfDirty:o,creatingAgentContainer:s,onCreatingAgentContainerChange:c,...l}){let{isMobile:u,setOpenMobile:d}=TX(),[f,p]=_.useState(()=>HX().navLevel),[m,h]=_.useState(()=>HX().navContainer),[g,v]=_.useState(!1),[y,b]=_.useState(!1),[x,S]=_.useState(!1),[C,w]=_.useState(!1),[T,E]=_.useState(!1),[D,O]=_.useState(``),[A,j]=_.useState(null),[M,N]=_.useState(null),[P,F]=_.useState(null);function I(e,t){return new Promise(n=>{F({title:e,message:t,resolve:n})})}function L(e){F(t=>(t?.resolve(e),null))}let z=e.reduce((e,t)=>e+t.sessions.filter(e=>e.synthetic!==!0).length,0),ee=e.find(e=>e.containerName===m),B=_.useMemo(()=>(ee?.sessions??[]).filter(e=>e.synthetic!==!0),[ee]);_.useEffect(()=>{try{window.localStorage.setItem(VX,JSON.stringify({navLevel:f,navContainer:m}))}catch{}},[f,m]);let V=t?null:e.map(e=>e.containerName).join(`,`),[H,te]=_.useState(V);V!==H&&(te(V),V!==null&&f===`agents`&&!e.some(e=>e.containerName===m)&&(p(`containers`),h(``)));let ne=_.useMemo(()=>r?e.find(e=>e.sessions.some(e=>e.name===r))?.containerName??``:``,[e,r]);function re(){p(`containers`),h(``)}function ie(e){p(`agents`),h(e)}async function ae(e){e&&e.name!==r&&!await o()||se(e)}function se(e){i(e),e&&u&&d(!1)}function le(e,t){let n=e.find(t);if(n){se(n);return}O(`已创建成功,但会话列表刷新失败,请稍后重试或刷新页面`)}_.useEffect(()=>{function e(e){(e.metaKey||e.ctrlKey)&&e.key.toLowerCase()===`k`&&(e.preventDefault(),v(e=>!e))}return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[]);async function de(e){O(``);try{let t=await a();ie(e),le(t,t=>t.name===e||t.containerName===e)}catch(e){O(e instanceof Error?e.message:`刷新会话列表失败`)}}function fe(e){let t=e=>String(e).padStart(2,`0`);return`${e.getFullYear()}${t(e.getMonth()+1)}${t(e.getDate())}-${t(e.getHours())}${t(e.getMinutes())}${t(e.getSeconds())}`}async function pe(e,t){S(!0),O(``);try{let n=fe(new Date),r=`${e.replace(/\/+$/,``)}/${n}`,i=await nn(`/api/fs/directories/mkdir`,{path:r}),a=typeof i.path==`string`&&i.path?i.path:r,o=await nn(`/api/sessions`,{run:t,createOptions:{hostPath:a,containerPath:a,containerName:`my-easy-${n}`}});await de(String(o.name))}catch(e){O(e instanceof Error?e.message:`快捷对话创建失败`)}finally{S(!1)}}async function W(){if(!x&&await o()){O(``);try{let e=await tn(`/api/system/quick-chat-config`),t=typeof e.path==`string`?e.path:``,n=typeof e.run==`string`?e.run:``;t&&n?await pe(t,n):b(!0)}catch(e){O(e instanceof Error?e.message:`读取快捷对话配置失败`)}}}async function me(e){if(!s&&await o()){O(``),c(e);try{let t=await nn(`/api/sessions/${encodeURIComponent(e)}/agents`,{}),n=typeof t.name==`string`?t.name:``,r=await a();ie(e),le(r,e=>e.name===n)}catch(e){O(e instanceof Error?e.message:`新建 AGENT 失败`)}finally{c(null)}}}function he(e,t){j({kind:`container`,key:e,initial:t})}function ge(e,t){N({mode:e,containerName:t})}async function _e(e){if(!M)return;let t=M.mode===`duplicate`?`duplicate`:`clone-config`,n=await nn(`/api/sessions/${encodeURIComponent(M.containerName)}/${t}`,e?{containerName:e}:{}),r=await a(),i=String(n.name);ie(i),le(r,e=>e.name===i||e.containerName===i)}async function ve(e){let t=await I(`删除容器`,`确认删除容器 ${e}?可以选择是否同时删除该容器的全部历史记录(消息与事件日志)。`);if(!t)return;let n=t===`with-history`;O(``);try{await nn(`/api/sessions/${encodeURIComponent(e)}/remove`,{removeHistory:n}),m===e&&re(),sn(r,e)&&i(null),await a()}catch(e){O(e instanceof Error?e.message:`删除容器失败`)}}function ye(e){j({kind:`agent`,key:e.name,initial:e.agentRemark})}async function be(e){if(!A)return;let t=A.kind===`container`?`container-remark`:`agent-remark`;await nn(`/api/sessions/${encodeURIComponent(A.key)}/${t}`,{remark:e}),await a()}async function xe(e){let t=await I(`删除 AGENT`,`确认删除 ${e.agentRemark||e.agentName}?可以选择是否同时删除它的历史记录(消息与事件日志)。`);if(!t)return;let n=t===`with-history`;O(``);try{await nn(`/api/sessions/${encodeURIComponent(e.name)}/remove-with-history`,{removeHistory:n}),r===e.name&&i(null),await a()}catch(e){O(e instanceof Error?e.message:`删除 AGENT 失败`)}}let Se=!!(g||y||C||T||A||M||P);return(0,J.jsxs)(DX,{...l,className:K(u&&Se&&`pointer-events-none opacity-40 blur-[2px]`),children:[(0,J.jsxs)(AX,{className:`gap-3 px-3 pt-3`,children:[(0,J.jsx)(`div`,{className:`flex items-center justify-between gap-2`,children:(0,J.jsx)(`span`,{className:`text-sm font-semibold tracking-tight`,children:`MANYOYO Web`})}),(0,J.jsxs)(ud,{className:`w-full`,size:`lg`,disabled:f===`agents`&&s===m,onClick:()=>f===`agents`?me(m):E(!0),children:[f===`agents`&&s===m?(0,J.jsx)(Sd,{"data-icon":`inline-start`}):(0,J.jsx)(oe,{"data-icon":`inline-start`}),f===`agents`?s===m?`创建中...`:`新建AGENT`:`新建容器`]}),(0,J.jsxs)(ud,{className:`w-full`,variant:`outline`,disabled:x,onClick:W,children:[x?(0,J.jsx)(Sd,{"data-icon":`inline-start`}):(0,J.jsx)(U,{"data-icon":`inline-start`}),x?`创建中...`:`快捷对话`]}),(0,J.jsxs)(`div`,{className:`flex items-center justify-between text-xs text-muted-foreground`,children:[(0,J.jsx)(`span`,{children:`工作台`}),(0,J.jsx)(`span`,{children:t?`加载中...`:f===`agents`?`${B.length} 个 AGENT`:`${e.length} 个容器 / ${z} 个 AGENT`})]}),(0,J.jsx)(JJ,{children:(0,J.jsxs)(YJ,{className:`flex-nowrap gap-1 text-xs`,children:[(0,J.jsx)(XJ,{className:`shrink-0`,children:(0,J.jsxs)(ud,{variant:`outline`,size:`xs`,disabled:f===`containers`,onClick:f===`containers`?void 0:re,className:`text-foreground`,children:[f===`containers`?(0,J.jsx)(`span`,{"data-icon":`inline-start`,className:`flex size-4 items-center justify-center`,children:(0,J.jsx)(`span`,{className:`size-1.5 rounded-full bg-current`})}):(0,J.jsx)(k,{"data-icon":`inline-start`}),`全部容器`]})}),f===`agents`&&ee?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(QJ,{className:`shrink-0`}),(0,J.jsx)(XJ,{className:`min-w-0 flex-1`,children:(0,J.jsx)(ZJ,{className:`block truncate`,children:ee.containerRemark||ee.containerName})})]}):null]})}),(0,J.jsxs)(ud,{variant:`outline`,className:`w-full justify-start bg-background text-muted-foreground shadow-none`,onClick:()=>v(!0),children:[(0,J.jsx)(ce,{"data-icon":`inline-start`}),`搜索容器 / AGENT`,(0,J.jsx)(`kbd`,{className:`ml-auto font-mono text-xs text-muted-foreground`,children:`⌘K`})]}),n||D?(0,J.jsx)(`p`,{className:`text-xs text-destructive`,children:n||D}):null]}),(0,J.jsx)(MX,{children:(0,J.jsx)(NX,{className:`pt-0`,children:(0,J.jsx)(PX,{children:(0,J.jsxs)(FX,{className:`gap-1`,children:[f===`containers`?e.map(e=>(0,J.jsxs)(IX,{children:[(0,J.jsxs)(RX,{size:`lg`,isActive:e.containerName===ne,onClick:()=>{ie(e.containerName),ae(BX(e.sessions,r))},className:`h-auto flex-col items-start gap-1 py-2.5`,children:[(0,J.jsxs)(`span`,{className:`flex w-full items-center gap-1.5`,children:[(0,J.jsx)(`span`,{className:`truncate font-medium`,children:e.containerRemark||e.containerName}),(0,J.jsx)(xd,{variant:e.status.toLowerCase().includes(`up`)?`default`:`outline`,className:K(`ml-auto shrink-0`,e.status.toLowerCase().includes(`up`)&&`bg-emerald-600 text-white`),children:e.status===`history`?`仅历史`:e.status.toLowerCase().includes(`up`)?`运行中`:`已停止`})]}),(0,J.jsx)(`span`,{className:`w-full truncate text-xs text-muted-foreground`,children:e.hostPath})]}),(0,J.jsxs)(MY,{children:[(0,J.jsx)(NY,{render:(0,J.jsx)(zX,{showOnHover:!0,children:(0,J.jsx)(R,{})})}),(0,J.jsx)(PY,{side:`right`,align:`start`,className:`w-56`,children:(0,J.jsxs)(FY,{className:`flex flex-col gap-1`,children:[(0,J.jsx)(IY,{onClick:()=>he(e.containerName,e.containerRemark),children:`编辑备注`}),(0,J.jsx)(IY,{disabled:s===e.containerName,onClick:()=>me(e.containerName),children:s===e.containerName?(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(Sd,{"data-icon":`inline-start`}),`创建中...`]}):`新建 AGENT`}),(0,J.jsx)(IY,{onClick:()=>ge(`clone-config`,e.containerName),children:`创建相同配置容器`}),(0,J.jsx)(IY,{onClick:()=>ge(`duplicate`,e.containerName),children:`复制容器`}),(0,J.jsx)(IY,{variant:`destructive`,onClick:()=>ve(e.containerName),children:`删除容器`})]})})]})]},e.containerName)):B.map(e=>(0,J.jsxs)(IX,{children:[(0,J.jsxs)(RX,{size:`lg`,isActive:r===e.name,onClick:()=>ae(e),className:`h-auto flex-col items-start gap-1 py-2.5`,children:[(0,J.jsxs)(`span`,{className:`flex w-full items-center gap-1.5`,children:[(0,J.jsx)(`span`,{className:`truncate font-medium`,children:e.agentRemark||e.agentName}),e.archived?(0,J.jsx)(xd,{variant:`outline`,className:`ml-auto shrink-0`,children:`已停止`}):null]}),(0,J.jsx)(`span`,{className:`w-full truncate text-xs text-muted-foreground`,children:UX(e.updatedAt||``)})]}),(0,J.jsxs)(MY,{children:[(0,J.jsx)(NY,{render:(0,J.jsx)(zX,{showOnHover:!0,children:(0,J.jsx)(R,{})})}),(0,J.jsx)(PY,{side:`right`,align:`start`,className:`w-56`,children:(0,J.jsxs)(FY,{className:`flex flex-col gap-1`,children:[(0,J.jsx)(IY,{onClick:()=>ye(e),children:`编辑备注`}),(0,J.jsx)(IY,{variant:`destructive`,onClick:()=>xe(e),children:`删除 AGENT`})]})})]})]},e.name)),f===`containers`&&!t&&e.length===0?(0,J.jsx)(`div`,{className:`px-2 py-6 text-center text-xs text-muted-foreground`,children:`暂无 manyoyo 容器`}):null,f===`agents`&&B.length===0?(0,J.jsx)(`div`,{className:`px-2 py-6 text-center text-xs text-muted-foreground`,children:`该容器下暂无 AGENT`}):null]})})})}),(0,J.jsx)(jX,{className:`px-3 pb-3`,children:(0,J.jsxs)(ud,{variant:`outline`,size:`lg`,className:`w-full`,onClick:()=>w(!0),children:[(0,J.jsx)(ue,{"data-icon":`inline-start`}),`系统设置`]})}),(0,J.jsx)(qJ,{open:C,onOpenChange:w}),(0,J.jsx)(qv,{open:g,onOpenChange:v,containers:e,onSelectContainer:t=>{ie(t),ae(BX(e.find(e=>e.containerName===t)?.sessions??[],r))},onSelectAgent:(e,t)=>{ie(e),ae(t)}}),(0,J.jsx)(um,{open:y,onOpenChange:b,initialPath:``,initialRun:``,onSaved:(e,t)=>pe(e,t)}),(0,J.jsx)(sm,{open:T,onOpenChange:E,onCreated:de}),(0,J.jsx)(cm,{open:A!==null,onOpenChange:e=>{e||j(null)},title:A?.kind===`container`?`设置容器备注`:`设置 AGENT 备注`,description:`留空可清除备注。`,label:`备注`,initialValue:A?.initial??``,onSubmit:be}),(0,J.jsx)(tf,{open:M!==null,onOpenChange:e=>{e||N(null)},mode:M?.mode??`clone-config`,sourceContainerName:M?.containerName??``,suggestedName:M?WX(e,M.containerName):``,onSubmit:_e}),(0,J.jsx)(dd,{open:P!==null,onOpenChange:e=>{e||L(null)},children:(0,J.jsxs)(md,{className:`sm:max-w-sm`,children:[(0,J.jsx)(_d,{children:P?.title}),(0,J.jsx)(vd,{children:P?.message}),(0,J.jsxs)(gd,{children:[(0,J.jsx)(ud,{variant:`outline`,onClick:()=>L(null),children:`取消`}),(0,J.jsx)(ud,{variant:`outline`,onClick:()=>L(`keep-history`),children:`否,保留历史`}),(0,J.jsx)(ud,{variant:`destructive`,onClick:()=>L(`with-history`),children:`是,连同历史一起删除`})]})]})})]})}function KX({onPointerDown:e,dragging:t,className:n,style:r}){return(0,J.jsx)(`div`,{role:`separator`,"aria-orientation":`vertical`,onPointerDown:e,style:r,className:K(`group relative w-2 shrink-0 cursor-col-resize touch-none select-none`,n),children:(0,J.jsx)(`div`,{className:K(`absolute inset-y-0 left-1/2 w-px -translate-x-1/2 bg-border transition-colors group-hover:bg-primary/60`,t&&`bg-primary`)})})}function qX(e){return e.some(e=>e.pending===!0)}function JX(e,t,n,r){let i=_.useRef(t);_.useEffect(()=>{i.current=t},[t]);let a=_.useRef(n);_.useEffect(()=>{a.current=n},[n]);let o=qX(t);_.useEffect(()=>{if(!e||!o||r)return;let t=!1,n=0,s=0;function c(){if(t||!qX(i.current))return;let e=fn(s);s+=1,n=window.setTimeout(async()=>{if(!t){try{await a.current()}catch{}t||c()}},e)}return c(),()=>{t=!0,window.clearTimeout(n)}},[e?.name,o,r])}function YX(e,t,n,r=48){return t-(e+n)<=r}function XX(e){let t=String(e||``).trim();return t?`${t} · MANYOYO Web`:`MANYOYO Web`}function ZX(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var QX=ZX();function $X(e){QX=e}var eZ={exec:()=>null};function tZ(e){let t=[];return n=>{let r=Math.max(0,Math.min(3,n-1)),i=t[r];return i||(i=e(r),t[r]=i),i}}function nZ(e,t=``){let n=typeof e==`string`?e:e.source,r={replace:(e,t)=>{let i=typeof t==`string`?t:t.source;return i=i.replace(iZ.caret,`$1`),n=n.replace(e,i),r},getRegex:()=>new RegExp(n,t)};return r}var rZ=((e=``)=>{try{return!!RegExp(`(?<=1)(?<!1)`+e)}catch{return!1}})(),iZ={codeRemoveIndent:/^(?: {1,4}| {0,3}\t)/gm,outputLinkReplace:/\\([\[\]])/g,indentCodeCompensation:/^(\s+)(?:```)/,beginningSpace:/^\s+/,endingHash:/#$/,startingSpaceChar:/^ /,endingSpaceChar:/ $/,nonSpaceChar:/[^ ]/,newLineCharGlobal:/\n/g,tabCharGlobal:/\t/g,multipleSpaceGlobal:/\s+/g,blankLine:/^[ \t]*$/,doubleBlankLine:/\n[ \t]*\n[ \t]*$/,blockquoteStart:/^ {0,3}>/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^<a /i,endATag:/^<\/a>/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^</,endAngleBracket:/>$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:e=>RegExp(`^( {0,3}${e})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:tZ(e=>RegExp(`^ {0,${e}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`)),hrRegex:tZ(e=>RegExp(`^ {0,${e}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`)),fencesBeginRegex:tZ(e=>RegExp(`^ {0,${e}}(?:\`\`\`|~~~)`)),headingBeginRegex:tZ(e=>RegExp(`^ {0,${e}}#`)),htmlBeginRegex:tZ(e=>RegExp(`^ {0,${e}}<(?:[a-z].*>|!--)`,`i`)),blockquoteBeginRegex:tZ(e=>RegExp(`^ {0,${e}}>`))},aZ=/^(?:[ \t]*(?:\n|$))+/,oZ=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,sZ=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,cZ=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,lZ=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,uZ=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,dZ=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,fZ=nZ(dZ).replace(/bull/g,uZ).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}(?:\s|$)/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,``).getRegex(),pZ=nZ(dZ).replace(/bull/g,uZ).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}(?:\s|$)/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),mZ=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table|[ \t]+\n)[^\n]+)*)/,hZ=/^[^\n]+/,gZ=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,_Z=nZ(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace(`label`,gZ).replace(`title`,/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),vZ=nZ(/^(bull)([ \t][^\n]*?)?(?:\n|$)/).replace(/bull/g,uZ).getRegex(),yZ=`address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul`,bZ=/\x3C!--(?:-?>|[\s\S]*?(?:-->|$))/,xZ=nZ(`^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n*|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>[^\\n]*\\n*|$)|<![A-Z][\\s\\S]*?(?:>[^\\n]*\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>[^\\n]*\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))`,`i`).replace(`comment`,bZ).replace(`tag`,yZ).replace(`attribute`,/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),SZ=e=>nZ(mZ).replace(`hr`,cZ).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`|lheading`,``).replace(`|table`,``).replace(`blockquote`,` {0,3}>`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace(`list`,e).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,yZ).getRegex(),CZ=SZ(/ {0,3}(?:[*+-]|1[.)])[ \t]+[^ \t\n]/),wZ=SZ(/ {0,3}(?:[*+-]|\d{1,9}[.)])(?:[ \t]|\n|$)/),TZ={blockquote:nZ(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace(`paragraph`,wZ).getRegex(),code:oZ,def:_Z,fences:sZ,heading:lZ,hr:cZ,html:xZ,lheading:fZ,list:vZ,newline:aZ,paragraph:CZ,table:eZ,text:hZ},EZ=nZ(`^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)`).replace(`hr`,cZ).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`blockquote`,` {0,3}>`).replace(`code`,`(?: {4}| {0,3} )[^\\n]`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace(`list`,` {0,3}(?:[*+-]|1[.)])[ \\t]`).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,yZ).getRegex(),DZ={...TZ,lheading:pZ,table:EZ,paragraph:nZ(mZ).replace(`hr`,cZ).replace(`heading`,` {0,3}#{1,6}(?:\\s|$)`).replace(`|lheading`,``).replace(`table`,EZ).replace(`blockquote`,` {0,3}>`).replace(`fences`," {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace(`list`,` {0,3}(?:[*+-]|1[.)])[ \\t]+[^ \\t\\n]`).replace(`html`,`</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)`).replace(`tag`,yZ).getRegex()},OZ={...TZ,html:nZ(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:"[^"]*"|'[^']*'|\\s[^'"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace(`comment`,bZ).replace(/tag/g,`(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b`).getRegex(),def:/^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:eZ,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:nZ(mZ).replace(`hr`,cZ).replace(`heading`,` *#{1,6} *[^
122
122
  ]`).replace(`lheading`,fZ).replace(`|table`,``).replace(`blockquote`,` {0,3}>`).replace(`|fences`,``).replace(`|list`,``).replace(`|html`,``).replace(`|tag`,``).getRegex()},kZ=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,AZ=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,jZ=/^( {2,}|\\)\n(?!\s*$)/,MZ=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/,NZ=/[\p{P}\p{S}]/u,PZ=/[\s\p{P}\p{S}]/u,FZ=/[^\s\p{P}\p{S}]/u,IZ=nZ(/^((?![*_])punctSpace)/,`u`).replace(/punctSpace/g,PZ).getRegex(),LZ=/[\p{Pi}\p{Ps}"']/u,RZ=/(?!~)[\p{P}\p{S}]/u,zZ=/(?!~)[\s\p{P}\p{S}]/u,BZ=/(?:[^\s\p{P}\p{S}]|~)/u,VZ=nZ(/link|precode-code|html/,`g`).replace(`link`,/\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace(`precode-`,rZ?"(?<!`)()":"(^^|[^`])").replace(`code`,/(?<b>`+)[^`]+\k<b>(?!`)/).replace(`html`,/<(?! )[^<>]*?>/).getRegex(),HZ=/^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/,UZ=nZ(HZ,`u`).replace(/punct/g,NZ).getRegex(),WZ=nZ(HZ,`u`).replace(/punct/g,RZ).getRegex(),GZ=nZ(/^(?:\*+(?:((?!\*)(?!openQuote)punct)|([^\s*]))?)|^_+(?:((?!_)(?!openQuote)punct)|([^\s_]))?/,`u`).replace(/openQuote/g,LZ).replace(/punct/g,NZ).getRegex(),KZ=`^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)`,qZ=nZ(KZ,`gu`).replace(/notPunctSpace/g,FZ).replace(/punctSpace/g,PZ).replace(/punct/g,NZ).getRegex(),JZ=nZ(KZ,`gu`).replace(/notPunctSpace/g,BZ).replace(/punctSpace/g,zZ).replace(/punct/g,RZ).getRegex(),YZ=nZ(`^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)[\\s](\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|(?:(?!\\*)punct|notPunctSpace)(\\*+)(?!\\*)(?=notPunctSpace)`,`gu`).replace(/notPunctSpace/g,FZ).replace(/punctSpace/g,PZ).replace(/punct/g,NZ).getRegex(),XZ=nZ(`^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)`,`gu`).replace(/notPunctSpace/g,FZ).replace(/punctSpace/g,PZ).replace(/punct/g,NZ).getRegex(),ZZ=nZ(`^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)[\\s](_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)|(?:(?!_)punct|notPunctSpace)(_+)(?!_)(?=notPunctSpace)`,`gu`).replace(/notPunctSpace/g,FZ).replace(/punctSpace/g,PZ).replace(/punct/g,NZ).getRegex(),QZ=nZ(/^~~?(?:((?!~)punct)|[^\s~])/,`u`).replace(/punct/g,NZ).getRegex(),$Z=nZ(`^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)`,`gu`).replace(/notPunctSpace/g,FZ).replace(/punctSpace/g,PZ).replace(/punct/g,NZ).getRegex(),eQ=nZ(/\\(punct)/,`gu`).replace(/punct/g,NZ).getRegex(),tQ=nZ(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace(`scheme`,/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace(`email`,/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),nQ=nZ(bZ).replace(`(?:-->|$)`,`-->`).getRegex(),rQ=nZ(`^comment|^</[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>`).replace(`comment`,nQ).replace(`attribute`,/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),iQ=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/,aQ=nZ(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace(`label`,iQ).replace(`href`,/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]+|(?=\))/).replace(`title`,/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),oQ=nZ(/^!?\[(label)\]\[(ref)\]/).replace(`label`,iQ).replace(`ref`,gZ).getRegex(),sQ=nZ(/^!?\[(ref)\](?:\[\])?/).replace(`ref`,gZ).getRegex(),cQ=nZ(`reflink|nolink(?!\\()`,`g`).replace(`reflink`,oQ).replace(`nolink`,sQ).getRegex(),lQ=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,uQ={_backpedal:eZ,anyPunctuation:eQ,autolink:tQ,blockSkip:VZ,br:jZ,code:AZ,del:eZ,delLDelim:eZ,delRDelim:eZ,emStrongLDelim:UZ,emStrongRDelimAst:qZ,emStrongRDelimUnd:XZ,escape:kZ,link:aQ,nolink:sQ,punctuation:IZ,reflink:oQ,reflinkSearch:cQ,tag:rQ,text:MZ,url:eZ},dQ={...uQ,emStrongLDelim:GZ,emStrongRDelimAst:YZ,emStrongRDelimUnd:ZZ,link:nZ(/^!?\[(label)\]\((.*?)\)/).replace(`label`,iQ).getRegex(),reflink:nZ(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace(`label`,iQ).getRegex()},fQ={...uQ,emStrongRDelimAst:JZ,emStrongLDelim:WZ,delLDelim:QZ,delRDelim:$Z,url:nZ(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace(`protocol`,lQ).replace(`email`,/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:nZ(/^(`+|~+|[^`~])(?:(?=[`~])|(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)))/).replace(`protocol`,lQ).getRegex()},pQ={...fQ,br:nZ(jZ).replace(`{2,}`,`*`).getRegex(),text:nZ(fQ.text).replace(`\\b_`,`\\b_| {2,}\\n`).replace(/\{2,\}/g,`*`).getRegex()},mQ={normal:TZ,gfm:DZ,pedantic:OZ},hQ={normal:uQ,gfm:fQ,breaks:pQ,pedantic:dQ},gQ={"&":`&amp;`,"<":`&lt;`,">":`&gt;`,'"':`&quot;`,"'":`&#39;`},_Q=e=>gQ[e];function vQ(e,t){if(t){if(iZ.escapeTest.test(e))return e.replace(iZ.escapeReplace,_Q)}else if(iZ.escapeTestNoEncode.test(e))return e.replace(iZ.escapeReplaceNoEncode,_Q);return e}function yQ(e){try{e=encodeURI(e).replace(iZ.percentDecode,`%`)}catch{return null}return e}function bQ(e,t){let n=e.replace(iZ.findPipe,(e,t,n)=>{let r=!1,i=t;for(;--i>=0&&n[i]===`\\`;)r=!r;return r?`|`:` |`}).split(iZ.splitPipe),r=0;if(n[0].trim()||n.shift(),n.length>0&&!n.at(-1)?.trim()&&n.pop(),t){if(n.length>t)n.splice(t);else for(;n.length<t;)n.push(``)}for(;r<n.length;r++)n[r]=n[r].trim().replace(iZ.slashPipe,`|`);return n}function xQ(e,t,n){let r=e.length;if(r===0)return``;let i=0;for(;i<r;){let a=e.charAt(r-i-1);if(a===t&&!n)i++;else if(a!==t&&n)i++;else break}return e.slice(0,r-i)}function SQ(e){let t=e.split(`
123
123
  `),n=t.length-1;for(;n>=0&&iZ.blankLine.test(t[n]);)n--;return t.length-n<=2?e:t.slice(0,n+1).join(`
124
124
  `)}function CQ(e,t){if(e.indexOf(t[1])===-1)return-1;let n=0;for(let r=0;r<e.length;r++)if(e[r]===`\\`)r++;else if(e[r]===t[0])n++;else if(e[r]===t[1]&&(n--,n<0))return r;return n>0?-2:-1}function wQ(e,t=0){let n=t,r=``;for(let t of e)if(t===` `){let e=4-n%4;r+=` `.repeat(e),n+=e}else r+=t,n++;return r}function TQ(e,t,n,r,i){let a=t.href,o=t.title||null,s=e[1].replace(i.other.outputLinkReplace,`$1`);r.state.inLink=!0;let c={type:e[0].charAt(0)===`!`?`image`:`link`,raw:n,href:a,title:o,text:s,tokens:r.inlineTokens(s)};return r.state.inLink=!1,c}function EQ(e,t,n){let r=e.match(n.other.indentCodeCompensation);if(r===null)return t;let i=r[1];return t.split(`
@@ -184,7 +184,7 @@ ${e}</tr>
184
184
  `}strong({tokens:e}){return`<strong>${this.parser.parseInline(e)}</strong>`}em({tokens:e}){return`<em>${this.parser.parseInline(e)}</em>`}codespan({text:e}){return`<code>${vQ(e,!0)}</code>`}br(e){return`<br>`}del({tokens:e}){return`<del>${this.parser.parseInline(e)}</del>`}link({href:e,title:t,tokens:n}){let r=this.parser.parseInline(n),i=yQ(e);if(i===null)return r;e=i;let a=`<a href="`+e+`"`;return t&&(a+=` title="`+vQ(t)+`"`),a+=`>`+r+`</a>`,a}image({href:e,title:t,text:n,tokens:r}){r&&(n=this.parser.parseInline(r,this.parser.textRenderer));let i=yQ(e);if(i===null)return vQ(n);e=i;let a=`<img src="${e}" alt="${vQ(n)}"`;return t&&(a+=` title="${vQ(t)}"`),a+=`>`,a}text(e){return`tokens`in e&&e.tokens?this.parser.parseInline(e.tokens):`escaped`in e&&e.escaped?e.text:vQ(e.text)}},AQ=class{strong({text:e}){return e}em({text:e}){return e}codespan({text:e}){return e}del({text:e}){return e}html({text:e}){return e}text({text:e}){return e}link({text:e}){return``+e}image({text:e}){return``+e}br(){return``}checkbox({raw:e}){return e}},jQ=class e{options;renderer;textRenderer;constructor(e){this.options=e||QX,this.options.renderer=this.options.renderer||new kQ,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new AQ}static parse(t,n){return new e(n).parse(t)}static parseInline(t,n){return new e(n).parseInline(t)}parse(e){this.renderer.parser=this;let t=``;for(let n=0;n<e.length;n++){let r=e[n];if(this.options.extensions?.renderers?.[r.type]){let e=r,n=this.options.extensions.renderers[e.type].call({parser:this},e);if(n!==!1||![`space`,`hr`,`heading`,`code`,`table`,`blockquote`,`list`,`checkbox`,`html`,`def`,`paragraph`,`text`].includes(e.type)){t+=n||``;continue}}let i=r;switch(i.type){case`space`:t+=this.renderer.space(i);break;case`hr`:t+=this.renderer.hr(i);break;case`heading`:t+=this.renderer.heading(i);break;case`code`:t+=this.renderer.code(i);break;case`table`:t+=this.renderer.table(i);break;case`blockquote`:t+=this.renderer.blockquote(i);break;case`list`:t+=this.renderer.list(i);break;case`checkbox`:t+=this.renderer.checkbox(i);break;case`html`:t+=this.renderer.html(i);break;case`def`:t+=this.renderer.def(i);break;case`paragraph`:t+=this.renderer.paragraph(i);break;case`text`:t+=this.renderer.text(i);break;default:{let e=`Token with "`+i.type+`" type was not found.`;if(this.options.silent)return console.error(e),``;throw Error(e)}}}return t}parseInline(e,t=this.renderer){this.renderer.parser=this;let n=``;for(let r=0;r<e.length;r++){let i=e[r];if(this.options.extensions?.renderers?.[i.type]){let e=this.options.extensions.renderers[i.type].call({parser:this},i);if(e!==!1||![`escape`,`html`,`link`,`image`,`checkbox`,`strong`,`em`,`codespan`,`br`,`del`,`text`].includes(i.type)){n+=e||``;continue}}let a=i;switch(a.type){case`escape`:n+=t.text(a);break;case`html`:n+=t.html(a);break;case`link`:n+=t.link(a);break;case`image`:n+=t.image(a);break;case`checkbox`:n+=t.checkbox(a);break;case`strong`:n+=t.strong(a);break;case`em`:n+=t.em(a);break;case`codespan`:n+=t.codespan(a);break;case`br`:n+=t.br(a);break;case`del`:n+=t.del(a);break;case`text`:n+=t.text(a);break;default:{let e=`Token with "`+a.type+`" type was not found.`;if(this.options.silent)return console.error(e),``;throw Error(e)}}}return n}},MQ=class{options;block;constructor(e){this.options=e||QX}static passThroughHooks=new Set([`preprocess`,`postprocess`,`processAllTokens`,`emStrongMask`]);static passThroughHooksRespectAsync=new Set([`preprocess`,`postprocess`,`processAllTokens`]);preprocess(e){return e}postprocess(e){return e}processAllTokens(e){return e}emStrongMask(e){return e}provideLexer(e=this.block){return e?OQ.lex:OQ.lexInline}provideParser(e=this.block){return e?jQ.parse:jQ.parseInline}},NQ=new class{defaults=ZX();options=this.setOptions;parse=this.parseMarkdown(!0);parseInline=this.parseMarkdown(!1);Parser=jQ;Renderer=kQ;TextRenderer=AQ;Lexer=OQ;Tokenizer=DQ;Hooks=MQ;constructor(...e){this.use(...e)}walkTokens(e,t){let n=[];for(let r of e)switch(n=n.concat(t.call(this,r)),r.type){case`table`:{let e=r;for(let r of e.header)n=n.concat(this.walkTokens(r.tokens,t));for(let r of e.rows)for(let e of r)n=n.concat(this.walkTokens(e.tokens,t));break}case`list`:{let e=r;n=n.concat(this.walkTokens(e.items,t));break}default:{let e=r;this.defaults.extensions?.childTokens?.[e.type]?this.defaults.extensions.childTokens[e.type].forEach(r=>{let i=e[r].flat(1/0);n=n.concat(this.walkTokens(i,t))}):e.tokens&&(n=n.concat(this.walkTokens(e.tokens,t)))}}return n}use(...e){let t=this.defaults.extensions||{renderers:{},childTokens:{}};return e.forEach(e=>{let n={...e};if(n.async=this.defaults.async||n.async||!1,e.extensions&&(e.extensions.forEach(e=>{if(!e.name)throw Error(`extension name required`);if(`renderer`in e){let n=t.renderers[e.name];n?t.renderers[e.name]=function(...t){let r=e.renderer.apply(this,t);return r===!1&&(r=n.apply(this,t)),r}:t.renderers[e.name]=e.renderer}if(`tokenizer`in e){if(!e.level||e.level!==`block`&&e.level!==`inline`)throw Error(`extension level must be 'block' or 'inline'`);let n=t[e.level];n?n.unshift(e.tokenizer):t[e.level]=[e.tokenizer],e.start&&(e.level===`block`?t.startBlock?t.startBlock.push(e.start):t.startBlock=[e.start]:e.level===`inline`&&(t.startInline?t.startInline.push(e.start):t.startInline=[e.start]))}`childTokens`in e&&e.childTokens&&(t.childTokens[e.name]=e.childTokens)}),n.extensions=t),e.renderer){let t=this.defaults.renderer||new kQ(this.defaults);for(let n in e.renderer){if(!(n in t))throw Error(`renderer '${n}' does not exist`);if([`options`,`parser`].includes(n))continue;let r=n,i=e.renderer[r],a=t[r];t[r]=(...e)=>{let n=i.apply(t,e);return n===!1&&(n=a.apply(t,e)),n||``}}n.renderer=t}if(e.tokenizer){let t=this.defaults.tokenizer||new DQ(this.defaults);for(let n in e.tokenizer){if(!(n in t))throw Error(`tokenizer '${n}' does not exist`);if([`options`,`rules`,`lexer`].includes(n))continue;let r=n,i=e.tokenizer[r],a=t[r];t[r]=(...e)=>{let n=i.apply(t,e);return n===!1&&(n=a.apply(t,e)),n}}n.tokenizer=t}if(e.hooks){let t=this.defaults.hooks||new MQ;for(let n in e.hooks){if(!(n in t))throw Error(`hook '${n}' does not exist`);if([`options`,`block`].includes(n))continue;let r=n,i=e.hooks[r],a=t[r];t[r]=MQ.passThroughHooks.has(n)?e=>{if(this.defaults.async&&MQ.passThroughHooksRespectAsync.has(n))return(async()=>{let n=await i.call(t,e);return a.call(t,n)})();let r=i.call(t,e);return a.call(t,r)}:(...e)=>{if(this.defaults.async)return(async()=>{let n=await i.apply(t,e);return n===!1&&(n=await a.apply(t,e)),n})();let n=i.apply(t,e);return n===!1&&(n=a.apply(t,e)),n}}n.hooks=t}if(e.walkTokens){let t=this.defaults.walkTokens,r=e.walkTokens;n.walkTokens=function(e){let n=[];return n.push(r.call(this,e)),t&&(n=n.concat(t.call(this,e))),n}}this.defaults={...this.defaults,...n}}),this}setOptions(e){return this.defaults={...this.defaults,...e},this}lexer(e,t){return OQ.lex(e,t??this.defaults)}parser(e,t){return jQ.parse(e,t??this.defaults)}parseMarkdown(e){return(t,n)=>{let r={...n},i={...this.defaults,...r},a=this.onError(!!i.silent,!!i.async);if(this.defaults.async===!0&&r.async===!1)return a(Error(`marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise.`));if(typeof t>`u`||t===null)return a(Error(`marked(): input parameter is undefined or null`));if(typeof t!=`string`)return a(Error(`marked(): input parameter is of type `+Object.prototype.toString.call(t)+`, string expected`));if(i.hooks&&(i.hooks.options=i,i.hooks.block=e),i.async)return(async()=>{let n=i.hooks?await i.hooks.preprocess(t):t,r=await(i.hooks?await i.hooks.provideLexer(e):e?OQ.lex:OQ.lexInline)(n,i),a=i.hooks?await i.hooks.processAllTokens(r):r;i.walkTokens&&await Promise.all(this.walkTokens(a,i.walkTokens));let o=await(i.hooks?await i.hooks.provideParser(e):e?jQ.parse:jQ.parseInline)(a,i);return i.hooks?await i.hooks.postprocess(o):o})().catch(a);try{i.hooks&&(t=i.hooks.preprocess(t));let n=(i.hooks?i.hooks.provideLexer(e):e?OQ.lex:OQ.lexInline)(t,i);i.hooks&&(n=i.hooks.processAllTokens(n)),i.walkTokens&&this.walkTokens(n,i.walkTokens);let r=(i.hooks?i.hooks.provideParser(e):e?jQ.parse:jQ.parseInline)(n,i);return i.hooks&&(r=i.hooks.postprocess(r)),r}catch(e){return a(e)}}}onError(e,t){return n=>{if(n.message+=`
185
185
  Please report this to https://github.com/markedjs/marked.`,e){let e=`<p>An error occurred:</p><pre>`+vQ(n.message+``,!0)+`</pre>`;return t?Promise.resolve(e):e}if(t)return Promise.reject(n);throw n}}};function PQ(e,t){return NQ.parse(e,t)}PQ.options=PQ.setOptions=function(e){return NQ.setOptions(e),PQ.defaults=NQ.defaults,$X(PQ.defaults),PQ},PQ.getDefaults=ZX,PQ.defaults=QX;function FQ(...e){return NQ.use(...e),PQ.defaults=NQ.defaults,$X(PQ.defaults),PQ}PQ.use=FQ,PQ.walkTokens=function(e,t){return NQ.walkTokens(e,t)},PQ.parseInline=NQ.parseInline,PQ.Parser=jQ,PQ.parser=jQ.parse,PQ.Renderer=kQ,PQ.TextRenderer=AQ,PQ.Lexer=OQ,PQ.lexer=OQ.lex,PQ.Tokenizer=DQ,PQ.Hooks=MQ,PQ.parse=PQ,PQ.options,PQ.setOptions,PQ.walkTokens,PQ.parseInline,jQ.parse,OQ.lex;function IQ(e){let t=PQ.parse(e||``,{async:!1});return new DOMParser().parseFromString(t,`text/html`).body.textContent||``}var LQ=`custom`,RQ=`__inherit__`;function zQ(e){return String(e.containerAgentPromptCommand||``).trim()||String(e.agentPromptCommand||``).trim()}function BQ({open:e,onOpenChange:t,session:n,onSaved:r}){let i=n?.agentId==="default",[a,o]=_.useState(LQ),[s,c]=_.useState(``),[l,u]=_.useState(!1),[d,f]=_.useState(!1),[p,m]=_.useState(``),h=_.useRef({}),g=e&&n?n.name:null,[v,y]=_.useState(g);g!==v&&(y(g),g!==null&&(u(!0),m(``))),_.useEffect(()=>{!e||!n||tn(`/api/sessions/${encodeURIComponent(n.name)}/detail`).then(e=>{let t=e.detail||{};h.current=t;let n=String(i?t.containerAgentPromptCommand||``:t.agentPromptCommandOverride||``);if(c(n),!i&&!n){o(RQ);return}let r=Object.entries($p).find(([,e])=>e===n)?.[0];o(r||LQ)}).catch(e=>m(e instanceof Error?e.message:`加载模板失败`)).finally(()=>u(!1))},[e,n,i]);function b(e){let t=e??LQ;if(o(t),t===RQ){c(zQ(h.current));return}t!==LQ&&c($p[t])}async function x(){if(n){f(!0),m(``);try{let e=i?{containerAgentPromptCommand:s}:{agentPromptCommandOverride:a===RQ?``:s};await rn(`/api/sessions/${encodeURIComponent(n.name)}/agent-template`,e),t(!1),r()}catch(e){m(e instanceof Error?e.message:`保存失败`)}finally{f(!1)}}}return(0,J.jsx)(dd,{open:e,onOpenChange:t,children:(0,J.jsxs)(md,{className:`sm:max-w-md`,children:[(0,J.jsxs)(hd,{children:[(0,J.jsx)(_d,{children:`设置 CLI / Agent 模板`}),(0,J.jsx)(vd,{children:i?`对该容器下所有未单独覆盖的 AGENT 生效。`:`仅对当前 AGENT 生效,覆盖容器级模板;留空则继承容器默认模板。`})]}),l?(0,J.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`加载中...`}):(0,J.jsxs)(jd,{children:[(0,J.jsxs)(Nd,{children:[(0,J.jsx)(Pd,{htmlFor:`agent-template-cli`,children:`CLI`}),(0,J.jsxs)(Wp,{value:a,onValueChange:b,children:[(0,J.jsx)(qp,{id:`agent-template-cli`,className:`w-full`,children:(0,J.jsx)(Kp,{children:e=>e===RQ?`继承容器默认`:e===LQ?`自定义`:e})}),(0,J.jsx)(Jp,{children:(0,J.jsxs)(Gp,{children:[i?null:(0,J.jsx)(Yp,{value:RQ,children:`继承容器默认`}),(0,J.jsx)(Yp,{value:LQ,children:`自定义`}),(0,J.jsx)(Yp,{value:`claude`,children:`claude`}),(0,J.jsx)(Yp,{value:`codex`,children:`codex`}),(0,J.jsx)(Yp,{value:`gemini`,children:`gemini`}),(0,J.jsx)(Yp,{value:`opencode`,children:`opencode`})]})})]})]}),(0,J.jsxs)(Nd,{children:[(0,J.jsx)(Pd,{htmlFor:`agent-template-command`,children:i?`容器级 agentPromptCommand`:`当前 AGENT 覆盖`}),(0,J.jsx)(Qp,{id:`agent-template-command`,className:`min-h-20 font-mono text-xs`,placeholder:i?`例如 codex exec --skip-git-repo-check {prompt}`:`留空则继承容器默认模板`,value:s,onChange:e=>c(e.target.value)}),(0,J.jsxs)(Fd,{children:[`模板需包含 `,`{prompt}`,` 占位符。`]})]}),p?(0,J.jsx)(wd,{variant:`destructive`,children:(0,J.jsx)(Td,{children:p})}):null]}),(0,J.jsx)(gd,{children:(0,J.jsx)(ud,{onClick:x,disabled:l||d,children:d?`保存中...`:`保存`})})]})})}function VQ({className:e,size:t=`default`,...n}){return(0,J.jsx)(`div`,{"data-slot":`card`,"data-size":t,className:K(`group/card flex flex-col gap-(--card-spacing) overflow-hidden rounded-xl bg-card py-(--card-spacing) text-sm text-card-foreground ring-1 ring-foreground/10 [--card-spacing:--spacing(4)] has-data-[slot=card-footer]:pb-0 has-[>img:first-child]:pt-0 data-[size=sm]:[--card-spacing:--spacing(3)] data-[size=sm]:has-data-[slot=card-footer]:pb-0 *:[img:first-child]:rounded-t-xl *:[img:last-child]:rounded-b-xl`,e),...n})}function HQ({className:e,...t}){return(0,J.jsx)(`div`,{"data-slot":`card-header`,className:K(`group/card-header @container/card-header grid auto-rows-min items-start gap-1 rounded-t-xl px-(--card-spacing) has-data-[slot=card-action]:grid-cols-[1fr_auto] has-data-[slot=card-description]:grid-rows-[auto_auto] [.border-b]:pb-(--card-spacing)`,e),...t})}function UQ({className:e,...t}){return(0,J.jsx)(`div`,{"data-slot":`card-title`,className:K(`font-heading text-base leading-snug font-medium group-data-[size=sm]/card:text-sm`,e),...t})}function WQ({className:e,...t}){return(0,J.jsx)(`div`,{"data-slot":`card-content`,className:K(`px-(--card-spacing)`,e),...t})}var GQ=RegExp(`[`+[[8203,8207],[8234,8238],[8288,8297],[65279,65279],[1564,1564]].map(([e,t])=>String.fromCodePoint(e)+`-`+String.fromCodePoint(t)).join(``)+`]`,`g`);function KQ(e){return String(e??``).replace(GQ,e=>`\\u`+e.codePointAt(0).toString(16).toUpperCase().padStart(4,`0`))}function qQ(){let[e,t]=_.useState(null),n=_.useCallback(e=>new Promise(n=>{t({...e,resolve:n})}),[]);function r(e){t(t=>(t?.resolve(e),null))}return{confirm:n,dialog:(0,J.jsx)(dd,{open:e!==null,onOpenChange:e=>{e||r(!1)},children:(0,J.jsxs)(md,{className:`sm:max-w-sm`,children:[(0,J.jsx)(_d,{children:e?.title}),(0,J.jsx)(vd,{className:`whitespace-pre-wrap break-all`,children:e?.message}),(0,J.jsxs)(gd,{children:[(0,J.jsx)(ud,{variant:`outline`,onClick:()=>r(!1),children:e?.cancelLabel||`取消`}),(0,J.jsx)(ud,{onClick:()=>r(!0),children:e?.confirmLabel||`继续`})]})]})})}}function JQ(e,t,n){return Math.min(n,Math.max(t,e))}function YQ({storageKey:e,defaultWidth:t,min:n,max:r}){let[i,a]=_.useState(()=>{if(typeof window>`u`)return t;let i=Number(window.localStorage.getItem(e));return Number.isFinite(i)&&i>0?JQ(i,n,r):t}),[o,s]=_.useState(!1);return _.useEffect(()=>{window.localStorage.setItem(e,String(i))},[e,i]),{width:i,dragging:o,onHandlePointerDown:_.useCallback(e=>{e.preventDefault();let t=e.clientX,o=i;s(!0);function c(e){a(JQ(o+(e.clientX-t),n,r))}function l(){s(!1),window.removeEventListener(`pointermove`,c),window.removeEventListener(`pointerup`,l)}window.addEventListener(`pointermove`,c),window.addEventListener(`pointerup`,l)},[i,n,r])}}function XQ(e,t){(t==null||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function ZQ(e){if(Array.isArray(e))return e}function QQ(e,t){var n=e==null?null:typeof Symbol<`u`&&e[Symbol.iterator]||e[`@@iterator`];if(n!=null){var r,i,a,o,s=[],c=!0,l=!1;try{if(a=(n=n.call(e)).next,t!==0)for(;!(c=(r=a.call(n)).done)&&(s.push(r.value),s.length!==t);c=!0);}catch(e){l=!0,i=e}finally{try{if(!c&&n.return!=null&&(o=n.return(),Object(o)!==o))return}finally{if(l)throw i}}return s}}function $Q(){throw TypeError(`Invalid attempt to destructure non-iterable instance.
186
186
  In order to be iterable, non-array objects must have a [Symbol.iterator]() method.`)}function e$(e,t){return ZQ(e)||QQ(e,t)||t$(e,t)||$Q()}function t$(e,t){if(e){if(typeof e==`string`)return XQ(e,t);var n={}.toString.call(e).slice(8,-1);return n===`Object`&&e.constructor&&(n=e.constructor.name),n===`Map`||n===`Set`?Array.from(e):n===`Arguments`||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?XQ(e,t):void 0}}var n$=Object.entries,r$=Object.setPrototypeOf,i$=Object.isFrozen,a$=Object.getPrototypeOf,o$=Object.getOwnPropertyDescriptor,s$=Object.freeze,c$=Object.seal,l$=Object.create,u$=typeof Reflect<`u`&&Reflect,d$=u$.apply,f$=u$.construct;s$||=function(e){return e},c$||=function(e){return e},d$||=function(e,t){var n=[...arguments].slice(2);return e.apply(t,n)},f$||=function(e){return new e(...[...arguments].slice(1))};var p$=N$(Array.prototype.forEach),m$=N$(Array.prototype.lastIndexOf),h$=N$(Array.prototype.pop),g$=N$(Array.prototype.push),_$=N$(Array.prototype.splice),v$=Array.isArray,y$=N$(String.prototype.toLowerCase),b$=N$(String.prototype.toString),x$=N$(String.prototype.match),S$=N$(String.prototype.replace),C$=N$(String.prototype.indexOf),w$=N$(String.prototype.trim),T$=N$(Number.prototype.toString),E$=N$(Boolean.prototype.toString),D$=typeof BigInt>`u`?null:N$(BigInt.prototype.toString),O$=typeof Symbol>`u`?null:N$(Symbol.prototype.toString),k$=N$(Object.prototype.hasOwnProperty),A$=N$(Object.prototype.toString),j$=N$(RegExp.prototype.test),M$=P$(TypeError);function N$(e){return function(t){t instanceof RegExp&&(t.lastIndex=0);var n=[...arguments].slice(1);return d$(e,t,n)}}function P$(e){return function(){return f$(e,[...arguments])}}function F$(e,t){let n=arguments.length>2&&arguments[2]!==void 0?arguments[2]:y$;if(r$&&r$(e,null),!v$(t))return e;let r=t.length;for(;r--;){let i=t[r];if(typeof i==`string`){let e=n(i);e!==i&&(i$(t)||(t[r]=e),i=e)}e[i]=!0}return e}function I$(e){for(let t=0;t<e.length;t++)k$(e,t)||(e[t]=null);return e}function L$(e){let t=l$(null);for(let r of n$(e)){var n=e$(r,2);let i=n[0],a=n[1];k$(e,i)&&(t[i]=v$(a)?I$(a):a&&typeof a==`object`&&a.constructor===Object?L$(a):a)}return t}function R$(e){switch(typeof e){case`string`:return e;case`number`:return T$(e);case`boolean`:return E$(e);case`bigint`:return D$?D$(e):`0`;case`symbol`:return O$?O$(e):`Symbol()`;case`undefined`:return A$(e);case`function`:case`object`:{if(e===null)return A$(e);let t=e,n=z$(t,`toString`);if(typeof n==`function`){let e=n(t);return typeof e==`string`?e:A$(e)}return A$(e)}default:return A$(e)}}function z$(e,t){for(;e!==null;){let n=o$(e,t);if(n){if(n.get)return N$(n.get);if(typeof n.value==`function`)return N$(n.value)}e=a$(e)}function n(){return null}return n}function B$(e){try{return j$(e,``),!0}catch{return!1}}var V$=s$(`a.abbr.acronym.address.area.article.aside.audio.b.bdi.bdo.big.blink.blockquote.body.br.button.canvas.caption.center.cite.code.col.colgroup.content.data.datalist.dd.decorator.del.details.dfn.dialog.dir.div.dl.dt.element.em.fieldset.figcaption.figure.font.footer.form.h1.h2.h3.h4.h5.h6.head.header.hgroup.hr.html.i.img.input.ins.kbd.label.legend.li.main.map.mark.marquee.menu.menuitem.meter.nav.nobr.ol.optgroup.option.output.p.picture.pre.progress.q.rp.rt.ruby.s.samp.search.section.select.shadow.slot.small.source.spacer.span.strike.strong.style.sub.summary.sup.table.tbody.td.template.textarea.tfoot.th.thead.time.tr.track.tt.u.ul.var.video.wbr`.split(`.`)),H$=s$(`svg.a.altglyph.altglyphdef.altglyphitem.animatecolor.animatemotion.animatetransform.circle.clippath.defs.desc.ellipse.enterkeyhint.exportparts.filter.font.g.glyph.glyphref.hkern.image.inputmode.line.lineargradient.marker.mask.metadata.mpath.part.path.pattern.polygon.polyline.radialgradient.rect.stop.style.switch.symbol.text.textpath.title.tref.tspan.view.vkern`.split(`.`)),U$=s$([`feBlend`,`feColorMatrix`,`feComponentTransfer`,`feComposite`,`feConvolveMatrix`,`feDiffuseLighting`,`feDisplacementMap`,`feDistantLight`,`feDropShadow`,`feFlood`,`feFuncA`,`feFuncB`,`feFuncG`,`feFuncR`,`feGaussianBlur`,`feImage`,`feMerge`,`feMergeNode`,`feMorphology`,`feOffset`,`fePointLight`,`feSpecularLighting`,`feSpotLight`,`feTile`,`feTurbulence`]),W$=s$([`animate`,`color-profile`,`cursor`,`discard`,`font-face`,`font-face-format`,`font-face-name`,`font-face-src`,`font-face-uri`,`foreignobject`,`hatch`,`hatchpath`,`mesh`,`meshgradient`,`meshpatch`,`meshrow`,`missing-glyph`,`script`,`set`,`solidcolor`,`unknown`,`use`]),G$=s$(`math.menclose.merror.mfenced.mfrac.mglyph.mi.mlabeledtr.mmultiscripts.mn.mo.mover.mpadded.mphantom.mroot.mrow.ms.mspace.msqrt.mstyle.msub.msup.msubsup.mtable.mtd.mtext.mtr.munder.munderover.mprescripts`.split(`.`)),K$=s$([`maction`,`maligngroup`,`malignmark`,`mlongdiv`,`mscarries`,`mscarry`,`msgroup`,`mstack`,`msline`,`msrow`,`semantics`,`annotation`,`annotation-xml`,`mprescripts`,`none`]),q$=s$([`#text`]),J$=s$(`accept.action.align.alt.autocapitalize.autocomplete.autopictureinpicture.autoplay.background.bgcolor.border.capture.cellpadding.cellspacing.checked.cite.class.clear.color.cols.colspan.command.commandfor.controls.controlslist.coords.crossorigin.datetime.decoding.default.dir.disabled.disablepictureinpicture.disableremoteplayback.download.draggable.enctype.enterkeyhint.exportparts.face.for.headers.height.hidden.high.href.hreflang.id.inert.inputmode.integrity.ismap.kind.label.lang.list.loading.loop.low.max.maxlength.media.method.min.minlength.multiple.muted.name.nonce.noshade.novalidate.nowrap.open.optimum.part.pattern.placeholder.playsinline.popover.popovertarget.popovertargetaction.poster.preload.pubdate.radiogroup.readonly.rel.required.rev.reversed.role.rows.rowspan.spellcheck.scope.selected.shape.size.sizes.slot.span.srclang.start.src.srcset.step.style.summary.tabindex.title.translate.type.usemap.valign.value.width.wrap.xmlns`.split(`.`)),Y$=s$(`accent-height.accumulate.additive.alignment-baseline.amplitude.ascent.attributename.attributetype.azimuth.basefrequency.baseline-shift.begin.bias.by.class.clip.clippathunits.clip-path.clip-rule.color.color-interpolation.color-interpolation-filters.color-profile.color-rendering.cx.cy.d.dx.dy.diffuseconstant.direction.display.divisor.dominant-baseline.dur.edgemode.elevation.end.exponent.fill.fill-opacity.fill-rule.filter.filterunits.flood-color.flood-opacity.font-family.font-size.font-size-adjust.font-stretch.font-style.font-variant.font-weight.fx.fy.g1.g2.glyph-name.glyphref.gradientunits.gradienttransform.height.href.id.image-rendering.in.in2.intercept.k.k1.k2.k3.k4.kerning.keypoints.keysplines.keytimes.lang.lengthadjust.letter-spacing.kernelmatrix.kernelunitlength.lighting-color.local.marker-end.marker-mid.marker-start.markerheight.markerunits.markerwidth.maskcontentunits.maskunits.max.mask.mask-type.media.method.mode.min.name.numoctaves.offset.operator.opacity.order.orient.orientation.origin.overflow.paint-order.path.pathlength.patterncontentunits.patterntransform.patternunits.pointer-events.points.preservealpha.preserveaspectratio.primitiveunits.r.rx.ry.radius.refx.refy.repeatcount.repeatdur.restart.result.rotate.scale.seed.shape-rendering.slope.specularconstant.specularexponent.spreadmethod.startoffset.stddeviation.stitchtiles.stop-color.stop-opacity.stroke-dasharray.stroke-dashoffset.stroke-linecap.stroke-linejoin.stroke-miterlimit.stroke-opacity.stroke.stroke-width.style.surfacescale.systemlanguage.tabindex.tablevalues.targetx.targety.transform.transform-origin.text-anchor.text-decoration.text-orientation.text-rendering.textlength.type.u1.u2.unicode.values.vector-effect.viewbox.visibility.version.vert-adv-y.vert-origin-x.vert-origin-y.width.word-spacing.wrap.writing-mode.xchannelselector.ychannelselector.x.x1.x2.xmlns.y.y1.y2.z.zoomandpan`.split(`.`)),X$=s$(`accent.accentunder.align.bevelled.close.columnalign.columnlines.columnspacing.columnspan.denomalign.depth.dir.display.displaystyle.encoding.fence.frame.height.href.id.largeop.length.linethickness.lquote.lspace.mathbackground.mathcolor.mathsize.mathvariant.maxsize.minsize.movablelimits.notation.numalign.open.rowalign.rowlines.rowspacing.rowspan.rspace.rquote.scriptlevel.scriptminsize.scriptsizemultiplier.selection.separator.separators.stretchy.subscriptshift.supscriptshift.symmetric.voffset.width.xmlns`.split(`.`)),Z$=s$([`xlink:href`,`xml:id`,`xlink:title`,`xml:space`,`xmlns:xlink`]),Q$=c$(/{{[\w\W]*|^[\w\W]*}}/g),$$=c$(/<%[\w\W]*|^[\w\W]*%>/g),e1=c$(/\${[\w\W]*/g),t1=c$(/^data-[\-\w.\u00B7-\uFFFF]+$/),n1=c$(/^aria-[\-\w]+$/),r1=c$(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),i1=c$(/^(?:\w+script|data):/i),a1=c$(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),o1=c$(/^html$/i),s1=c$(/^[a-z][.\w]*(-[.\w]+)+$/i),c1=c$(/<[/\w!]/g),l1=c$(/<[/\w]/g),u1=c$(/<\/no(script|embed|frames)/i),d1=c$(/\/>/i),f1={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},p1=[`style`,`script`,`xmp`,`iframe`,`noembed`,`noframes`,`plaintext`,`noscript`],m1=s$(F$({},p1)),h1=function(){let e={};return p$(p1,t=>{e[t]=c$(RegExp(`</`+t+`(?=[\\t\\n\\f\\r />])`,`i`))}),s$(e)}(),g1=function(){return typeof window>`u`?null:window},_1=function(e,t){if(typeof e!=`object`||typeof e.createPolicy!=`function`)return null;let n=null,r=`data-tt-policy-suffix`;t&&t.hasAttribute(r)&&(n=t.getAttribute(r));let i=`dompurify`+(n?`#`+n:``);try{return e.createPolicy(i,{createHTML(e){return e},createScriptURL(e){return e}})}catch{return console.warn(`TrustedTypes policy `+i+` could not be created.`),null}},v1=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},y1=function(e,t,n,r){return k$(e,t)&&v$(e[t])?F$(r.base?L$(r.base):{},e[t],r.transform):n},b1=function(e,t,n){let r=k$(e,t)?e[t]:void 0;return r&&typeof r==`object`?L$(r):n()};function x1(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:g1(),t=e=>x1(e);if(t.version=`3.4.14`,t.removed=[],!e||!e.document||e.document.nodeType!==f1.document||!e.Element)return t.isSupported=!1,t;let n=e.document,r=n,i=r.currentScript;e.DocumentFragment;let a=e.HTMLTemplateElement,o=e.Node,s=e.Element,c=e.NodeFilter;e.NamedNodeMap===void 0&&(e.NamedNodeMap||e.MozNamedAttrMap),e.HTMLFormElement;let l=e.DOMParser,u=e.trustedTypes,d=s.prototype,f=z$(d,`cloneNode`),p=z$(d,`remove`),m=z$(d,`nextSibling`),h=z$(d,`childNodes`),g=z$(d,`parentNode`),_=z$(d,`shadowRoot`),v=z$(d,`attributes`),y=o&&o.prototype?z$(o.prototype,`nodeType`):null,b=o&&o.prototype?z$(o.prototype,`nodeName`):null,x=o&&o.prototype?z$(o.prototype,`ownerDocument`):null,S=function(e){return y?y(e):e.nodeType},C=function(e){return b?b(e):e.nodeName};if(typeof a==`function`){let e=n.createElement(`template`);e.content&&e.content.ownerDocument&&(n=e.content.ownerDocument)}let w,T=``,E,D=!1,O=0,k=function(){if(O>0)throw M$(`A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted Types" section of the README.`)},A=function(e){k(),O++;try{return w.createHTML(e)}finally{O--}},j=function(e){k(),O++;try{return w.createScriptURL(e)}finally{O--}},M=function(){return D||=(E=_1(u,i),!0),E},N=n,P=N.implementation,F=N.createNodeIterator,I=N.createDocumentFragment,L=N.getElementsByTagName,R=r.importNode,z=v1();t.isSupported=typeof n$==`function`&&typeof g==`function`&&P&&P.createHTMLDocument!==void 0;let ee=Q$,B=$$,V=e1,H=t1,te=n1,U=i1,ne=a1,re=s1,ie=r1,ae=null,oe=F$({},[...V$,...H$,...U$,...G$,...q$]),se=null,ce=F$({},[...J$,...Y$,...X$,...Z$]),le=Object.seal(l$(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),ue=null,de=null,fe=Object.seal(l$(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}})),pe=!0,W=!0,me=!1,he=!0,ge=!1,_e=!0,ve=!1,ye=!1,be=null,xe=null,Se=!1,Ce=!1,we=!1,Te=!1,Ee=!0,De=!1,Oe=`user-content-`,ke=!0,Ae=!1,je={},Me=null,Ne=F$({},`annotation-xml.audio.colgroup.desc.foreignobject.head.iframe.math.mi.mn.mo.ms.mtext.noembed.noframes.noscript.plaintext.script.selectedcontent.style.svg.template.thead.title.video.xmp`.split(`.`)),Pe=null,Fe=F$({},[`audio`,`video`,`img`,`source`,`image`,`track`]),Ie=null,Le=F$({},[`alt`,`class`,`for`,`id`,`label`,`name`,`pattern`,`placeholder`,`role`,`summary`,`title`,`value`,`style`,`xmlns`]),Re=`http://www.w3.org/1998/Math/MathML`,ze=`http://www.w3.org/2000/svg`,Be=`http://www.w3.org/1999/xhtml`,Ve=Be,He=!1,Ue=null,We=F$({},[Re,ze,Be],b$),Ge=s$([`mi`,`mo`,`mn`,`ms`,`mtext`]),Ke=F$({},Ge),qe=s$([`annotation-xml`]),Je=F$({},qe),Ye=F$({},[`title`,`style`,`font`,`a`,`script`]),Xe=null,Ze=[`application/xhtml+xml`,`text/html`],Qe=null,$e=null,et=n.createElement(`form`),tt=function(e){return e instanceof RegExp||e instanceof Function},nt=function(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if($e&&$e===e)return;(!e||typeof e!=`object`)&&(e={}),e=L$(e),Xe=Ze.indexOf(e.PARSER_MEDIA_TYPE)===-1?`text/html`:e.PARSER_MEDIA_TYPE,Qe=Xe===`application/xhtml+xml`?b$:y$,ae=y1(e,`ALLOWED_TAGS`,oe,{transform:Qe}),se=y1(e,`ALLOWED_ATTR`,ce,{transform:Qe}),Ue=y1(e,`ALLOWED_NAMESPACES`,We,{transform:b$}),Ie=y1(e,`ADD_URI_SAFE_ATTR`,Le,{transform:Qe,base:Le}),Pe=y1(e,`ADD_DATA_URI_TAGS`,Fe,{transform:Qe,base:Fe}),Me=y1(e,`FORBID_CONTENTS`,Ne,{transform:Qe}),ue=y1(e,`FORBID_TAGS`,L$({}),{transform:Qe}),de=y1(e,`FORBID_ATTR`,L$({}),{transform:Qe}),je=k$(e,`USE_PROFILES`)?e.USE_PROFILES&&typeof e.USE_PROFILES==`object`?L$(e.USE_PROFILES):e.USE_PROFILES:!1,pe=e.ALLOW_ARIA_ATTR!==!1,W=e.ALLOW_DATA_ATTR!==!1,me=e.ALLOW_UNKNOWN_PROTOCOLS||!1,he=e.ALLOW_SELF_CLOSE_IN_ATTR!==!1,ge=e.SAFE_FOR_TEMPLATES||!1,_e=e.SAFE_FOR_XML!==!1,ve=e.WHOLE_DOCUMENT||!1,Ce=e.RETURN_DOM||!1,we=e.RETURN_DOM_FRAGMENT||!1,Te=e.RETURN_TRUSTED_TYPE||!1,Se=e.FORCE_BODY||!1,Ee=e.SANITIZE_DOM!==!1,De=e.SANITIZE_NAMED_PROPS||!1,ke=e.KEEP_CONTENT!==!1,Ae=e.IN_PLACE||!1,ie=B$(e.ALLOWED_URI_REGEXP)?e.ALLOWED_URI_REGEXP:r1,Ve=typeof e.NAMESPACE==`string`?e.NAMESPACE:Be,Ke=b1(e,`MATHML_TEXT_INTEGRATION_POINTS`,()=>F$({},Ge)),Je=b1(e,`HTML_INTEGRATION_POINTS`,()=>F$({},qe));let t=b1(e,`CUSTOM_ELEMENT_HANDLING`,()=>l$(null));if(le=l$(null),k$(t,`tagNameCheck`)&&tt(t.tagNameCheck)&&(le.tagNameCheck=t.tagNameCheck),k$(t,`attributeNameCheck`)&&tt(t.attributeNameCheck)&&(le.attributeNameCheck=t.attributeNameCheck),k$(t,`allowCustomizedBuiltInElements`)&&typeof t.allowCustomizedBuiltInElements==`boolean`&&(le.allowCustomizedBuiltInElements=t.allowCustomizedBuiltInElements),c$(le),ge&&(W=!1),we&&(Ce=!0),je&&(ae=F$({},q$),se=l$(null),je.html===!0&&(F$(ae,V$),F$(se,J$)),je.svg===!0&&(F$(ae,H$),F$(se,Y$),F$(se,Z$)),je.svgFilters===!0&&(F$(ae,U$),F$(se,Y$),F$(se,Z$)),je.mathMl===!0&&(F$(ae,G$),F$(se,X$),F$(se,Z$))),fe.tagCheck=null,fe.attributeCheck=null,k$(e,`ADD_TAGS`)&&(typeof e.ADD_TAGS==`function`?fe.tagCheck=e.ADD_TAGS:v$(e.ADD_TAGS)&&(ae===oe&&(ae=L$(ae)),F$(ae,e.ADD_TAGS,Qe))),k$(e,`ADD_ATTR`)&&(typeof e.ADD_ATTR==`function`?fe.attributeCheck=e.ADD_ATTR:v$(e.ADD_ATTR)&&(se===ce&&(se=L$(se)),F$(se,e.ADD_ATTR,Qe))),k$(e,`ADD_FORBID_CONTENTS`)&&v$(e.ADD_FORBID_CONTENTS)&&(Me===Ne&&(Me=L$(Me)),F$(Me,e.ADD_FORBID_CONTENTS,Qe)),ke&&(ae[`#text`]=!0),ve&&F$(ae,[`html`,`head`,`body`]),ae.table&&(F$(ae,[`tbody`]),delete ue.tbody),e.TRUSTED_TYPES_POLICY){if(typeof e.TRUSTED_TYPES_POLICY.createHTML!=`function`)throw M$(`TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.`);if(typeof e.TRUSTED_TYPES_POLICY.createScriptURL!=`function`)throw M$(`TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.`);let t=w;w=e.TRUSTED_TYPES_POLICY;try{T=A(``)}catch(e){throw w=t,e}}else e.TRUSTED_TYPES_POLICY===null?(w=void 0,T=``):(w===void 0&&(w=M()),w&&typeof T==`string`&&(T=A(``)));s$&&s$(e),$e=e},rt=F$({},[...H$,...U$,...W$]),it=F$({},[...G$,...K$]),at=function(e,t,n){return t.namespaceURI===Be?e===`svg`:t.namespaceURI===Re?e===`svg`&&(n===`annotation-xml`||Ke[n]):!!rt[e]},ot=function(e,t,n){return t.namespaceURI===Be?e===`math`:t.namespaceURI===ze?e===`math`&&Je[n]:!!it[e]},st=function(e,t,n){return t.namespaceURI===ze&&!Je[n]||t.namespaceURI===Re&&!Ke[n]?!1:!it[e]&&(Ye[e]||!rt[e])},ct=function(e){let t=g(e);(!t||!t.tagName)&&(t={namespaceURI:Ve,tagName:`template`});let n=y$(e.tagName),r=y$(t.tagName);return Ue[e.namespaceURI]?e.namespaceURI===ze?at(n,t,r):e.namespaceURI===Re?ot(n,t,r):e.namespaceURI===Be?st(n,t,r):!!(Xe===`application/xhtml+xml`&&Ue[e.namespaceURI]):!1},lt=function(e){g$(t.removed,{element:e});try{g(e).removeChild(e)}catch{if(p(e),!g(e))throw M$(`a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place`)}},ut=function(e,t,n){try{e.removeAttributeNode(t)}catch{try{e.removeAttribute(n)}catch{}}},dt=function(e){mt(e);let t=h(e);if(t){let e=[];p$(t,t=>{g$(e,t)}),p$(e,e=>{try{p(e)}catch{}})}let n=v(e);if(n)for(let t=n.length-1;t>=0;--t){let r=n[t],i=r&&r.name;typeof i==`string`&&ut(e,r,i)}},ft=function(e,n,r){if(!r)try{r=n.getAttributeNode(e)}catch{r=null}g$(t.removed,{attribute:r||null,from:n});try{r?n.removeAttributeNode(r):n.removeAttribute(e)}catch{try{n.removeAttribute(e)}catch{}}if(e===`is`){if(Ce||we)try{lt(n)}catch{}else try{n.setAttribute(e,``)}catch{}}},pt=function(e){let t=v(e);if(t)for(let n=t.length-1;n>=0;--n){let r=t[n],i=r&&r.name;typeof i!=`string`||se[Qe(i)]||ut(e,r,i)}},mt=function(e){let t=[e];for(;t.length>0;){let e=t.pop();S(e)===f1.element&&pt(e);let n=h(e);if(n)for(let e=n.length-1;e>=0;--e)t.push(n[e])}},ht=function(e,t){return _e?e===`patchsrc`||e===`for`&&t!==`label`&&t!==`output`:!1},gt=function(e){if(!_e)return;let t=[e];for(;t.length>0;){let e=t.pop(),n=S(e);if(n===f1.processingInstruction||n===f1.comment&&j$(l1,e.data)){try{p(e)}catch{}continue}if(n===f1.element){let t=e,n=Qe(C(e));try{t.hasAttribute&&t.hasAttribute(`patchsrc`)&&t.removeAttribute(`patchsrc`),t.hasAttribute&&t.hasAttribute(`for`)&&ht(`for`,n)&&t.removeAttribute(`for`)}catch{}}let r=h(e);if(r)for(let e=r.length-1;e>=0;--e)t.push(r[e])}},_t=function(e){let t=null,r=null;if(Se)e=`<remove></remove>`+e;else{let t=x$(e,/^[\r\n\t ]+/);r=t&&t[0]}Xe===`application/xhtml+xml`&&Ve===Be&&(e=`<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>`+e+`</body></html>`);let i=w?A(e):e;if(Ve===Be)try{t=new l().parseFromString(i,Xe)}catch{}if(!t||!t.documentElement){t=P.createDocument(Ve,`template`,null);try{t.documentElement.innerHTML=He?T:i}catch{}}let a=t.body||t.documentElement;return e&&r&&a.insertBefore(n.createTextNode(r),a.childNodes[0]||null),Ve===Be?L.call(t,ve?`html`:`body`)[0]:ve?t.documentElement:a},vt=function(e){let t=x?x(e):e.ownerDocument;return F.call(t||e,e,c.SHOW_ELEMENT|c.SHOW_COMMENT|c.SHOW_TEXT|c.SHOW_PROCESSING_INSTRUCTION|c.SHOW_CDATA_SECTION,null)},yt=function(e){return e=S$(e,ee,` `),e=S$(e,B,` `),e=S$(e,V,` `),e},bt=function(e){e.normalize();let t=x?x(e):e.ownerDocument,n=F.call(t||e,e,c.SHOW_TEXT|c.SHOW_COMMENT|c.SHOW_CDATA_SECTION|c.SHOW_PROCESSING_INSTRUCTION,null),r=n.nextNode();for(;r;)r.data=yt(r.data),r=n.nextNode();let i=e.querySelectorAll?.call(e,`template`);i&&p$(i,e=>{St(e.content)&&bt(e.content)})},xt=function(e){let t=b?b(e):null;return typeof t!=`string`||Qe(t)!==`form`?!1:typeof e.nodeName!=`string`||typeof e.textContent!=`string`||typeof e.removeChild!=`function`||e.attributes!==v(e)||typeof e.removeAttribute!=`function`||typeof e.setAttribute!=`function`||typeof e.namespaceURI!=`string`||typeof e.insertBefore!=`function`||typeof e.hasChildNodes!=`function`||e.nodeType!==y(e)||e.childNodes!==h(e)},St=function(e){if(!y||typeof e!=`object`||!e)return!1;try{return y(e)===f1.documentFragment}catch{return!1}},Ct=function(e){if(!y||typeof e!=`object`||!e)return!1;try{return typeof y(e)==`number`}catch{return!1}};function G(e,n,r){e.length!==0&&p$(e,e=>{e.call(t,n,r,$e)})}let wt=function(e,t){return!!(_e&&e.hasChildNodes()&&!Ct(e.firstElementChild)&&j$(c1,e.textContent)&&j$(c1,e.innerHTML)||_e&&e.namespaceURI===Be&&m1[t]&&(Ct(e.firstElementChild)||typeof e.textContent==`string`&&j$(h1[t],e.textContent))||e.nodeType===f1.processingInstruction||_e&&e.nodeType===f1.comment&&j$(l1,e.data))},Tt=function(e,t){return e instanceof RegExp?j$(e,t):e instanceof Function&&!!e(t,...[...arguments].slice(2))},Et=function(e,t,n){if(!ue[t]&&Mt(t)&&Tt(le.tagNameCheck,t))return!1;if(ke&&!Me[t]){let t=g(e),r=h(e);if(r&&t){let i=r.length;for(let a=i-1;a>=0;--a){let i=e===n?f(r[a],!0):r[a];t.insertBefore(i,m(e))}}}return lt(e),!0},Dt=function(e,t,n,r){return e.length===0?t:t===n||t===r?L$(t):t},Ot=function(e,t){return e===t||g(e)!==null?!1:(Ae&&mt(e),!0)},kt=function(e,n){if(G(z.beforeSanitizeElements,e,null),Ot(e,n))return!0;if(xt(e))return lt(e),!0;let r=Qe(C(e));if(ae=Dt(z.uponSanitizeElement,ae,oe,be),G(z.uponSanitizeElement,e,{tagName:r,allowedTags:ae}),Ot(e,n))return!0;if(wt(e,r))return lt(e),!0;if(ue[r]||!(fe.tagCheck instanceof Function&&fe.tagCheck(r))&&!ae[r]){let t=Et(e,r,n);return t===!1&&G(z.afterSanitizeElements,e,null),t}if(S(e)===f1.element&&!ct(e)||(r===`noscript`||r===`noembed`||r===`noframes`)&&j$(u1,e.innerHTML))return lt(e),!0;if(ge&&e.nodeType===f1.text){let n=yt(e.textContent);e.textContent!==n&&(g$(t.removed,{element:e.cloneNode()}),e.textContent=n)}return G(z.afterSanitizeElements,e,null),!1},At=function(e,t,r){if(de[t]||ht(t,e)||Ee&&(t===`id`||t===`name`)&&(r in n||r in et))return!1;let i=se[t]||fe.attributeCheck instanceof Function&&fe.attributeCheck(t,e);return W&&j$(H,t)||pe&&j$(te,t)?!0:i?Ie[t]||j$(ie,S$(r,ne,``))||(t===`src`||t===`xlink:href`||t===`href`)&&e!==`script`&&C$(r,`data:`)===0&&Pe[e]||me&&!j$(U,S$(r,ne,``))?!0:!r:Mt(e)&&Tt(le.tagNameCheck,e)&&Tt(le.attributeNameCheck,t,e)||t===`is`&&le.allowCustomizedBuiltInElements&&Tt(le.tagNameCheck,r)},jt=F$({},[`annotation-xml`,`color-profile`,`font-face`,`font-face-format`,`font-face-name`,`font-face-src`,`font-face-uri`,`missing-glyph`]),Mt=function(e){return!jt[y$(e)]&&j$(re,e)},Nt=function(e,t,n,r){if(w&&typeof u==`object`&&typeof u.getAttributeType==`function`&&!n)switch(u.getAttributeType(e,t)){case`TrustedHTML`:return A(r);case`TrustedScriptURL`:return j(r)}return r},Pt=function(e,n,r,i){try{r?e.setAttributeNS(r,n,i):e.setAttribute(n,i),xt(e)?lt(e):h$(t.removed)}catch{ft(n,e)}},Ft=function(e){G(z.beforeSanitizeAttributes,e,null);let t=e.attributes;if(!t||xt(e))return;se=Dt(z.uponSanitizeAttribute,se,ce,xe);let n={attrName:``,attrValue:``,keepAttr:!0,allowedAttributes:se,forceKeepAttr:void 0},r=t.length,i=Qe(e.nodeName);for(;r--;){let a=t[r],o=a.name,s=a.namespaceURI,c=a.value,l=Qe(o),u=c,d=o===`value`?u:w$(u);if(n.attrName=l,n.attrValue=d,n.keepAttr=!0,n.forceKeepAttr=void 0,G(z.uponSanitizeAttribute,e,n),d=n.attrValue,De&&(l===`id`||l===`name`)&&C$(d,Oe)!==0&&(ft(o,e,a),d=Oe+d),_e&&j$(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,d)){ft(o,e,a);continue}if(l===`attributename`&&x$(d,`href`)){ft(o,e,a);continue}if(!n.forceKeepAttr){if(!n.keepAttr){ft(o,e,a);continue}if(!he&&j$(d1,d)){ft(o,e,a);continue}if(ge&&(d=yt(d)),!At(i,l,d)){ft(o,e,a);continue}d=Nt(i,l,s,d),d!==u&&Pt(e,o,s,d)}}G(z.afterSanitizeAttributes,e,null)},It=function(e){let t=null,n=vt(e);for(G(z.beforeSanitizeShadowDOM,e,null);t=n.nextNode();)if(G(z.uponSanitizeShadowNode,t,null),kt(t,e),Ft(t),St(t.content)&&It(t.content),S(t)===f1.element){let e=_(t);St(e)&&(Lt(e),It(e))}G(z.afterSanitizeShadowDOM,e,null)},Lt=function(e){let t=[{node:e,shadow:null}];for(;t.length>0;){let e=t.pop();if(e.shadow){It(e.shadow);continue}let n=e.node,r=S(n)===f1.element,i=h(n);if(i)for(let e=i.length-1;e>=0;--e)t.push({node:i[e],shadow:null});if(r){let e=b?b(n):null;if(typeof e==`string`&&Qe(e)===`template`){let e=n.content;St(e)&&t.push({node:e,shadow:null})}}if(r){let e=_(n);St(e)&&t.push({node:null,shadow:e},{node:e,shadow:null})}}};return t.sanitize=function(e){let n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},i=null,a=null,o=null,s=null;if(He=!e,He&&(e=`\x3C!-->`),typeof e!=`string`&&!Ct(e)&&(e=R$(e),typeof e!=`string`))throw M$(`dirty is not a string, aborting`);if(!t.isSupported)return e;ye?(ae=be,se=xe):nt(n),(z.uponSanitizeElement.length>0||z.uponSanitizeAttribute.length>0)&&(ae=L$(ae)),z.uponSanitizeAttribute.length>0&&(se=L$(se)),t.removed=[];let c=Ae&&typeof e!=`string`&&Ct(e);if(c){gt(e);let t=C(e);if(typeof t==`string`){let n=Qe(t);if(!ae[n]||ue[n])throw dt(e),M$(`root node is forbidden and cannot be sanitized in-place`)}if(xt(e))throw dt(e),M$(`root node is clobbered and cannot be sanitized in-place`);try{Lt(e)}catch(t){throw dt(e),t}}else if(Ct(e))i=_t(`\x3C!---->`),a=i.ownerDocument.importNode(e,!0),a.nodeType===f1.element&&a.nodeName===`BODY`||a.nodeName===`HTML`?i=a:i.appendChild(a),Lt(a);else{if(!Ce&&!ge&&!ve&&e.indexOf(`<`)===-1)return w&&Te?A(e):e;if(i=_t(e),!i)return Ce?null:Te?T:``}i&&Se&&lt(i.firstChild);let l=c?e:i;try{let e=vt(l);for(;o=e.nextNode();)kt(o,l),Ft(o),St(o.content)&&It(o.content)}catch(n){throw c&&(dt(e),p$(t.removed,e=>{e.element&&mt(e.element)})),n}if(c)return p$(t.removed,e=>{e.element&&mt(e.element)}),ge&&bt(e),e;if(Ce){if(ge&&bt(i),we)for(s=I.call(i.ownerDocument);i.firstChild;)s.appendChild(i.firstChild);else s=i;return(se.shadowroot||se.shadowrootmode)&&(s=R.call(r,s,!0)),s}let u=ve?i.outerHTML:i.innerHTML;return ve&&ae[`!doctype`]&&i.ownerDocument&&i.ownerDocument.doctype&&i.ownerDocument.doctype.name&&j$(o1,i.ownerDocument.doctype.name)&&(u=`<!DOCTYPE `+i.ownerDocument.doctype.name+`>
187
- `+u),ge&&(u=yt(u)),w&&Te?A(u):u},t.setConfig=function(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};nt(e),ye=!0,be=ae,xe=se},t.clearConfig=function(){$e=null,ye=!1,be=null,xe=null,w=E,T=``},t.isValidAttribute=function(e,t,n){$e||nt({});let r=Qe(e),i=Qe(t);return At(r,i,n)},t.addHook=function(e,t){typeof t==`function`&&k$(z,e)&&g$(z[e],t)},t.removeHook=function(e,t){if(k$(z,e)){if(t!==void 0){let n=m$(z[e],t);return n===-1?void 0:_$(z[e],n,1)[0]}return h$(z[e])}},t.removeHooks=function(e){k$(z,e)&&(z[e]=[])},t.removeAllHooks=function(){z=v1()},t}var S1=x1();PQ.setOptions({breaks:!0,gfm:!0});function C1(e){return e.replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`).replace(/"/g,`&quot;`)}S1.addHook(`afterSanitizeAttributes`,e=>{(e.tagName===`IMG`||e.tagName===`A`)&&e.setAttribute(`referrerpolicy`,`no-referrer`),e.tagName===`A`&&e.setAttribute(`rel`,`noopener noreferrer`)});function w1(e,t){let n=[],r=new kQ,i=r.image.bind(r);if(r.image=e=>{let{href:t}=e;if(/^https?:/i.test(t||``)){let n=C1(e.text||t);return`<a href="${C1(t)}" title="${C1(e.title||``)}">🖼️ 点击查看图片:${n}</a>`}return i(e)},t){let e=r.code.bind(r);r.code=t=>{let r=e(t);if(String(t.lang||``).trim().toLowerCase()!==`html`)return r;let i=n.length;return n.push(t.text),`<div class="not-prose relative">${r}<button type="button" data-preview-html-index="${i}" class="absolute top-2 right-2 rounded-md border border-border bg-background px-2 py-1 text-xs text-foreground shadow-sm hover:bg-muted">预览</button></div>`}}let a=PQ.parse(e||``,{async:!1,renderer:r});return{html:S1.sanitize(a,{ALLOWED_URI_REGEXP:/^(?:https?:|mailto:|tel:|#|[^a-z]|[a-z+.-]+(?:[^a-z+.:-]|$))/i,ADD_ATTR:[`referrerpolicy`,`data-preview-html-index`]}),htmlBlocks:n}}function T1(e,t){return e.content===t.content&&e.className===t.className&&!!e.onPreviewHtml==!!t.onPreviewHtml}var E1=_.memo(function({content:e,className:t,onPreviewHtml:n}){let[r,i]=_.useState(null),{html:a,htmlBlocks:o}=_.useMemo(()=>w1(e,!!n),[e,!!n]);function s(e){let t=e.target.closest(`[data-preview-html-index]`);if(t){let e=Number(t.getAttribute(`data-preview-html-index`)),r=o[e];r!==void 0&&n?.(r);return}let r=e.target.closest(`a`);if(!r)return;let a=r.getAttribute(`href`)||``;!a||a.startsWith(`#`)||(e.preventDefault(),i(a))}function c(){let e=r;if(i(null),!e)return;let t=window.open(e,`_blank`,`noopener,noreferrer`);t&&(t.opener=null)}return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`div`,{className:K(`prose prose-sm dark:prose-invert max-w-none break-words`,`prose-p:my-[0.6em] prose-p:leading-[1.6] prose-li:my-0`,`prose-ul:my-[0.6em] prose-ol:my-[0.6em] prose-blockquote:my-[0.6em]`,`prose-code:text-sm prose-pre:text-sm prose-pre:my-[0.6em]`,`[&_pre]:bg-foreground/10! dark:[&_pre]:bg-foreground/15! prose-pre:text-foreground`,`prose-table:my-[0.6em] [&_table]:block [&_table]:overflow-x-auto [&_table]:[scrollbar-width:thin] [&_table::-webkit-scrollbar]:h-1.5 [&_table::-webkit-scrollbar-thumb]:rounded-full [&_table::-webkit-scrollbar-thumb]:bg-foreground/25`,t),onClick:s,dangerouslySetInnerHTML:{__html:a}}),(0,J.jsx)(dd,{open:r!==null,onOpenChange:e=>{e||i(null)},children:(0,J.jsxs)(md,{className:`sm:max-w-sm`,children:[(0,J.jsx)(_d,{children:`打开外部链接`}),(0,J.jsx)(vd,{className:`break-all`,children:r}),(0,J.jsxs)(gd,{children:[(0,J.jsx)(ud,{variant:`outline`,onClick:()=>i(null),children:`取消`}),(0,J.jsx)(ud,{onClick:c,children:`确认并新标签打开`})]})]})})]})},T1),D1=2097152;function O1(e,t){return`${e.replace(/\/$/,``)}/${t}`}function k1(e){return Number.isFinite(e)?e<1024?`${e} B`:e<1048576?`${(e/1024).toFixed(1)} KB`:`${(e/1048576).toFixed(1)} MB`:`未知大小`}function A1(e,t,n){try{let r=t.lastIndexOf(`/`),i=r>=0?t.slice(0,r+1):`/`,a=new URL(n,`http://manyoyo-internal`+i).pathname;return`/api/sessions/${encodeURIComponent(e)}/fs/raw?path=${encodeURIComponent(a)}`}catch{return``}}function j1(e,t){return e.replace(/!\[([^\]]*)\]\(([^)\s]+)(\s+"[^"]*")?\)/g,(e,n,r,i=``)=>{if(/^(?:https?:|data:|#)/i.test(r))return e;let a=t(r);return a?`![${n}](${a}${i})`:e})}function M1({value:e,className:t}){return(0,J.jsx)(`div`,{className:K(`no-scrollbar flex h-8 w-full min-w-0 items-center overflow-x-auto rounded-lg border border-input bg-transparent px-2.5 dark:bg-input/30`,t),children:(0,J.jsx)(`span`,{className:`w-max shrink-0 font-mono text-xs whitespace-nowrap text-muted-foreground`,children:e})})}function N1({activeSession:e,editorStateRef:t,confirmLeaveIfDirty:n,onPreviewHtml:r}){let i=e?.status===`history`,{confirm:a,dialog:o}=qQ(),s=RY(),[c,l]=_.useState(`list`),{width:u,dragging:d,onHandlePointerDown:f}=YQ({storageKey:`manyoyo:files-list-width`,defaultWidth:256,min:180,max:480}),[p,m]=_.useState(`/`),[h,g]=_.useState(``),[v,y]=_.useState([]),[b,x]=_.useState(!1),[S,C]=_.useState(``),[w,T]=_.useState(``),[E,D]=_.useState(null),[O,j]=_.useState(!1),[M,N]=_.useState(``),[P,F]=_.useState(null),[I,L]=_.useState(`preview`),[R,te]=_.useState(null),[U,ne]=_.useState(!1),[re,ie]=_.useState(!1),ae=R!==null&&E!==null&&R!==(E.content||``),oe=_.useRef(()=>Promise.resolve(!1)),ce=_.useCallback(()=>oe.current(),[]);_.useEffect(()=>{if(t)return t.current=ae?{fileName:w.split(`/`).pop()||w,save:ce}:null,()=>{t.current=null}},[ae,w,t,ce]),_.useEffect(()=>{if(I!==`edit`)return;function e(e){(e.metaKey||e.ctrlKey)&&e.key.toLowerCase()===`s`&&(e.preventDefault(),oe.current())}return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[I]);let le=_.useCallback(t=>{!e||i||(x(!0),C(``),tn(`/api/sessions/${encodeURIComponent(e.name)}/fs/list?path=${encodeURIComponent(t)}`).then(e=>{m(String(e.path||t)),g(typeof e.parentPath==`string`?e.parentPath:``),y(Array.isArray(e.entries)?e.entries:[])}).catch(e=>{C(e instanceof Error?e.message:`加载目录失败`)}).finally(()=>x(!1)))},[e,i]),ue=`${e?.name??``}:${i}`,[de,fe]=_.useState(ue);ue!==de&&(fe(ue),T(``),D(null),N(``),te(null),L(`preview`),l(`list`),(!e||i)&&y([])),_.useEffect(()=>{!e||i||queueMicrotask(()=>le(e.containerPath||`/`))},[e?.name,i]);async function pe(t,i){if(e&&await n()){l(`detail`),T(t),D(null),te(null),L(`preview`),ie(i),j(!0),N(``);try{let n=await tn(`/api/sessions/${encodeURIComponent(e.name)}/fs/read?path=${encodeURIComponent(t)}&full=1`);D(n);let a=!!(n.kind===`text`&&n.editable&&!i),o=n.kind===`text`&&n.language===`markdown`,s=n.kind===`text`&&n.language===`html`;a&&!o&&!s?(te(n.content||``),L(`edit`)):(L(`preview`),s&&r&&r(t.split(`/`).pop()||t,n.content||``))}catch(e){N(e instanceof Error?e.message:`读取文件失败`)}finally{j(!1)}}}async function W(e){let t=Number(e.size),n=!1;if(Number.isFinite(t)&&t>=D1){if(!await a({title:`大文件确认`,message:`文件较大(${k1(t)}),继续后将以只读方式全量预览,无法保存。是否继续?`,confirmLabel:`继续预览`}))return;n=!0}await pe(e.path,n)}async function me(e){if(e.kind===`symlink`){let t=KQ(e.name),n=e.symlinkTarget?`"${t}" 是符号链接,实际指向:\n${KQ(e.symlinkTarget)}\n\n是否继续访问?`:`"${t}" 是一个无法解析的符号链接(可能已损坏),是否仍要尝试访问?`;if(!await a({title:`符号链接确认`,message:n,confirmLabel:`继续访问`}))return;if(e.symlinkTargetKind===`directory`){le(e.path);return}await W(e);return}if(e.kind===`directory`){le(e.path);return}await W(e)}function he(){!E||!Ce||(te(e=>e===null?E.content||``:e),L(`edit`))}function ge(){L(`preview`),Se&&r&&r(w.split(`/`).pop()||w,R??E?.content??``)}async function _e(){if(!e||!w||U||R===null)return!1;ne(!0),N(``);try{await rn(`/api/sessions/${encodeURIComponent(e.name)}/fs/write`,{path:w,content:R});let t=R;return D(e=>e&&{...e,content:t,size:t.length}),!0}catch(e){return N(e instanceof Error?e.message:`保存失败`),!1}finally{ne(!1)}}_.useEffect(()=>{oe.current=_e});function ve(){te(null),L(`preview`),Se&&r&&r(w.split(`/`).pop()||w,E?.content||``)}async function ye(){await n()&&l(`list`)}async function be(t){if(!e||!P)return;if(!t.trim())throw Error(`名称不能为空`);let n=O1(p,t),r=P===`file`?`fs/create`:`fs/mkdir`;await nn(`/api/sessions/${encodeURIComponent(e.name)}/${r}`,{path:n}),le(p)}if(!e)return(0,J.jsx)(`div`,{className:`flex h-full items-center justify-center p-6 text-center text-sm text-muted-foreground`,children:`请先在左侧选择一个容器 / AGENT`});if(i)return(0,J.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-1 p-6 text-center text-sm text-muted-foreground`,children:[(0,J.jsx)(`p`,{className:`font-medium text-foreground`,children:`容器不可用`}),(0,J.jsx)(`p`,{children:`当前会话只有历史记录,没有可访问的运行中容器。`})]});let xe=E?.kind===`text`&&E.language===`markdown`,Se=E?.kind===`text`&&E.language===`html`,Ce=!!(E?.kind===`text`&&E.editable&&!re),we=!s||c===`list`,Te=!s||c===`detail`;return(0,J.jsxs)(`div`,{className:`flex h-full min-h-0 min-w-0 flex-col`,children:[we?(0,J.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 border-b p-2`,children:[(0,J.jsx)(ud,{variant:`outline`,size:`icon-sm`,disabled:!h,onClick:()=>le(h),title:`返回上一层目录`,children:(0,J.jsx)(A,{})}),(0,J.jsx)(M1,{value:KQ(p)}),(0,J.jsx)(ud,{variant:`outline`,size:`icon-sm`,onClick:()=>le(p),title:`刷新`,children:(0,J.jsx)(se,{})}),(0,J.jsx)(ud,{variant:`outline`,size:`icon-sm`,onClick:()=>F(`file`),title:`新建文件`,children:(0,J.jsx)(z,{})}),(0,J.jsx)(ud,{variant:`outline`,size:`icon-sm`,onClick:()=>F(`folder`),title:`新建文件夹`,children:(0,J.jsx)(B,{})})]}):null,S&&we?(0,J.jsx)(wd,{variant:`destructive`,className:`m-2`,children:(0,J.jsx)(Td,{children:S})}):null,(0,J.jsxs)(`div`,{className:`flex min-h-0 min-w-0 flex-1`,children:[(0,J.jsx)(`div`,{style:s?void 0:{width:u},className:K(`h-full shrink-0 overflow-y-auto border-r`,s&&`w-full`,!we&&`hidden`),children:(0,J.jsx)(`div`,{className:`flex flex-col gap-0.5 p-2`,children:b?(0,J.jsx)(`div`,{className:`flex h-32 items-center justify-center`,children:(0,J.jsx)(Sd,{className:`size-5`})}):(0,J.jsxs)(J.Fragment,{children:[v.length===0?(0,J.jsx)(`div`,{className:`px-2 py-1.5 text-xs text-muted-foreground`,children:`空目录`}):null,v.map(e=>(0,J.jsxs)(`button`,{type:`button`,onClick:()=>me(e),className:K(`flex items-center gap-2 rounded-md px-2 py-1.5 text-left text-sm hover:bg-foreground/8`,w===e.path&&`bg-foreground/12 font-medium`),title:e.kind===`symlink`&&e.symlinkTarget?`符号链接 → ${KQ(e.symlinkTarget)}`:KQ(e.name),children:[e.kind===`directory`?(0,J.jsx)(V,{className:`size-4 shrink-0 text-muted-foreground`}):e.kind===`symlink`?(0,J.jsx)(H,{className:`size-4 shrink-0 text-muted-foreground`}):(0,J.jsx)(ee,{className:`size-4 shrink-0 text-muted-foreground`}),(0,J.jsx)(`span`,{className:`truncate`,children:KQ(e.name)})]},e.path))]})})}),s?null:(0,J.jsx)(KX,{onPointerDown:f,dragging:d}),(0,J.jsxs)(`div`,{className:K(`flex min-h-0 min-w-0 flex-1 flex-col`,!Te&&`hidden`),children:[w?(0,J.jsxs)(`div`,{className:`flex shrink-0 items-center justify-between gap-2 border-b p-2`,children:[(0,J.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-1.5`,children:[s?(0,J.jsx)(ud,{variant:`ghost`,size:`icon-sm`,onClick:ye,title:`返回列表`,children:(0,J.jsx)(k,{})}):null,(0,J.jsx)(M1,{value:KQ(w)})]}),E?.kind===`text`?(0,J.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(0,J.jsx)(ud,{variant:I===`edit`?`secondary`:`outline`,size:`sm`,disabled:!Ce,onClick:he,children:`编辑`}),(0,J.jsx)(ud,{variant:I===`preview`?`secondary`:`outline`,size:`sm`,onClick:ge,children:`预览`}),(0,J.jsx)(ud,{variant:`outline`,size:`sm`,onClick:ve,disabled:!(I===`edit`&&ae)||U,children:`取消`}),(0,J.jsx)(ud,{size:`sm`,onClick:_e,disabled:!(I===`edit`&&ae)||U,children:U?`保存中...`:`保存`})]}):null]}):null,(0,J.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-auto p-3`,children:[w?null:(0,J.jsx)(`p`,{className:`p-6 text-center text-sm text-muted-foreground`,children:`选择左侧的文件查看内容`}),O?(0,J.jsx)(`div`,{className:`flex h-32 items-center justify-center`,children:(0,J.jsx)(Sd,{className:`size-5`})}):null,M?(0,J.jsx)(wd,{variant:`destructive`,children:(0,J.jsx)(Td,{children:M})}):null,E&&!O?(0,J.jsxs)(J.Fragment,{children:[E.kind===`image`?(0,J.jsx)(`img`,{src:`/api/sessions/${encodeURIComponent(e.name)}/fs/raw?path=${encodeURIComponent(w)}`,alt:w,className:`max-w-full rounded-md border`}):E.kind===`binary`?(0,J.jsxs)(`p`,{className:`text-sm text-muted-foreground`,children:[`二进制文件,无法预览(`,E.size,` 字节)`]}):I===`edit`?(0,J.jsx)(Oq,{value:R??E.content??``,language:E.language||`text`,readOnly:!1,onChange:te}):xe?(0,J.jsx)(E1,{content:j1(R??E.content??``,t=>A1(e.name,w,t))}):(0,J.jsx)(Oq,{value:R??E.content??``,language:E.language||`text`,readOnly:!0}),E.truncated?(0,J.jsx)(`p`,{className:`mt-2 text-xs text-muted-foreground`,children:`内容过大,已截断显示`}):null]}):null]})]})]}),(0,J.jsx)(cm,{open:P!==null,onOpenChange:e=>{e||F(null)},title:P===`file`?`新建文件`:`新建文件夹`,description:`将在 ${KQ(p)} 下创建。`,label:`名称`,initialValue:``,onSubmit:be}),o]})}function P1({state:e,onOpenChange:t}){return(0,J.jsx)(zY,{open:e!==null,onOpenChange:t,children:(0,J.jsxs)(HY,{side:`right`,className:`w-full gap-0 p-0 sm:max-w-3xl`,children:[(0,J.jsxs)(UY,{className:`border-b`,children:[(0,J.jsx)(WY,{className:`truncate`,children:e?.title||`HTML 预览`}),(0,J.jsx)(GY,{children:`沙箱环境渲染,无法访问站点数据`})]}),(0,J.jsx)(`div`,{className:`min-h-0 flex-1 bg-white`,children:e?(0,J.jsx)(`iframe`,{title:e.title||`html-preview`,srcDoc:e.code,sandbox:`allow-scripts`,className:`size-full border-0`}):null})]})})}var F1=`__default__`,I1=`__custom__`;function L1({open:e,onOpenChange:t,session:n,onSaved:r}){let[i,a]=_.useState([]),[o,s]=_.useState(F1),[c,l]=_.useState(``),[u,d]=_.useState(!1),[f,p]=_.useState(!1),[m,h]=_.useState(``),g=e&&n?n.name:null,[v,y]=_.useState(g);g!==v&&(y(g),g!==null&&(d(!0),h(``))),_.useEffect(()=>{!e||!n||tn(`/api/sessions/${encodeURIComponent(n.name)}/models`).then(e=>{let t=Array.isArray(e.models)?e.models:[];a(t);let r=n.model||``;r?t.some(e=>e.value===r)?s(r):(s(I1),l(r)):(s(F1),l(``))}).catch(e=>h(e instanceof Error?e.message:`获取模型列表失败`)).finally(()=>d(!1))},[e,n]);async function b(){if(n){p(!0),h(``);try{let e=o===F1?``:o===I1?c.trim():o;await nn(`/api/sessions/${encodeURIComponent(n.name)}/model`,{model:e}),t(!1),r()}catch(e){h(e instanceof Error?e.message:`保存失败`)}finally{p(!1)}}}return(0,J.jsx)(dd,{open:e,onOpenChange:t,children:(0,J.jsxs)(md,{className:`sm:max-w-sm`,children:[(0,J.jsx)(hd,{children:(0,J.jsx)(_d,{children:`选择模型`})}),u?(0,J.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`正在获取模型列表...`}):(0,J.jsxs)(jd,{children:[(0,J.jsxs)(Nd,{children:[(0,J.jsx)(Pd,{htmlFor:`model-select`,children:`模型`}),(0,J.jsxs)(Wp,{value:o,onValueChange:e=>s(e??F1),children:[(0,J.jsx)(qp,{id:`model-select`,className:`w-full`,children:(0,J.jsx)(Kp,{children:e=>e===F1?`跟随默认(不传 --model)`:e===I1?`自定义...`:i.find(t=>t.value===e)?.label||e})}),(0,J.jsx)(Jp,{children:(0,J.jsxs)(Gp,{children:[(0,J.jsx)(Yp,{value:F1,children:`跟随默认(不传 --model)`}),i.map(e=>(0,J.jsx)(Yp,{value:e.value,children:e.label},e.value)),(0,J.jsx)(Yp,{value:I1,children:`自定义...`})]})})]})]}),o===I1?(0,J.jsxs)(Nd,{children:[(0,J.jsx)(Pd,{htmlFor:`model-custom`,children:`自定义模型名称`}),(0,J.jsx)(ef,{id:`model-custom`,placeholder:`例如 gemini-2.5-pro`,value:c,onChange:e=>l(e.target.value)})]}):null,m?(0,J.jsx)(wd,{variant:`destructive`,children:(0,J.jsx)(Td,{children:m})}):null]}),(0,J.jsx)(gd,{children:(0,J.jsx)(ud,{onClick:b,disabled:u||f,children:f?`保存中...`:`保存`})})]})})}var R1=2,z1=1,B1=class{activate(e){this._terminal=e}dispose(){}fit(){let e=this.proposeDimensions();if(!e||!this._terminal||isNaN(e.cols)||isNaN(e.rows))return;let t=this._terminal._core;(this._terminal.rows!==e.rows||this._terminal.cols!==e.cols)&&(t._renderService.clear(),this._terminal.resize(e.cols,e.rows))}proposeDimensions(){if(!this._terminal||!this._terminal.element||!this._terminal.element.parentElement)return;let e=this._terminal._core._renderService.dimensions;if(e.css.cell.width===0||e.css.cell.height===0)return;let t=this._terminal.options.scrollback===0?0:this._terminal.options.overviewRuler?.width||14,n=window.getComputedStyle(this._terminal.element.parentElement),r=parseInt(n.getPropertyValue(`height`)),i=Math.max(0,parseInt(n.getPropertyValue(`width`))),a=window.getComputedStyle(this._terminal.element),o={top:parseInt(a.getPropertyValue(`padding-top`)),bottom:parseInt(a.getPropertyValue(`padding-bottom`)),right:parseInt(a.getPropertyValue(`padding-right`)),left:parseInt(a.getPropertyValue(`padding-left`))},s=o.top+o.bottom,c=o.right+o.left,l=r-s,u=i-c-t;return{cols:Math.max(R1,Math.floor(u/e.css.cell.width)),rows:Math.max(z1,Math.floor(l/e.css.cell.height))}}},V1=Object.defineProperty,H1=Object.getOwnPropertyDescriptor,U1=(e,t)=>{for(var n in t)V1(e,n,{get:t[n],enumerable:!0})},W1=(e,t,n,r)=>{for(var i=r>1?void 0:r?H1(t,n):t,a=e.length-1,o;a>=0;a--)(o=e[a])&&(i=(r?o(t,n,i):o(i))||i);return r&&i&&V1(t,n,i),i},G1=(e,t)=>(n,r)=>t(n,r,e),K1=`Terminal input`,q1={get:()=>K1,set:e=>K1=e},J1=`Too much output to announce, navigate to rows manually to read`,Y1={get:()=>J1,set:e=>J1=e};function X1(e){return e.replace(/\r?\n/g,`\r`)}function Z1(e,t){return t?`\x1B[200~`+e+`\x1B[201~`:e}function Q1(e,t){e.clipboardData&&e.clipboardData.setData(`text/plain`,t.selectionText),e.preventDefault()}function $1(e,t,n,r){e.stopPropagation(),e.clipboardData&&e0(e.clipboardData.getData(`text/plain`),t,n,r)}function e0(e,t,n,r){e=X1(e),e=Z1(e,n.decPrivateModes.bracketedPasteMode&&r.rawOptions.ignoreBracketedPasteMode!==!0),n.triggerDataEvent(e,!0),t.value=``}function t0(e,t,n){let r=n.getBoundingClientRect(),i=e.clientX-r.left-10,a=e.clientY-r.top-10;t.style.width=`20px`,t.style.height=`20px`,t.style.left=`${i}px`,t.style.top=`${a}px`,t.style.zIndex=`1000`,t.focus()}function n0(e,t,n,r,i){t0(e,t,n),i&&r.rightClickSelect(e),t.value=r.selectionText,t.select()}function r0(e){return e>65535?(e-=65536,String.fromCharCode((e>>10)+55296)+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)}function i0(e,t=0,n=e.length){let r=``;for(let i=t;i<n;++i){let t=e[i];t>65535?(t-=65536,r+=String.fromCharCode((t>>10)+55296)+String.fromCharCode(t%1024+56320)):r+=String.fromCharCode(t)}return r}var a0=class{constructor(){this._interim=0}clear(){this._interim=0}decode(e,t){let n=e.length;if(!n)return 0;let r=0,i=0;if(this._interim){let n=e.charCodeAt(i++);56320<=n&&n<=57343?t[r++]=(this._interim-55296)*1024+n-56320+65536:(t[r++]=this._interim,t[r++]=n),this._interim=0}for(let a=i;a<n;++a){let i=e.charCodeAt(a);if(55296<=i&&i<=56319){if(++a>=n)return this._interim=i,r;let o=e.charCodeAt(a);56320<=o&&o<=57343?t[r++]=(i-55296)*1024+o-56320+65536:(t[r++]=i,t[r++]=o);continue}i!==65279&&(t[r++]=i)}return r}},o0=class{constructor(){this.interim=new Uint8Array(3)}clear(){this.interim.fill(0)}decode(e,t){let n=e.length;if(!n)return 0;let r=0,i,a,o,s,c=0,l=0;if(this.interim[0]){let i=!1,a=this.interim[0];a&=(a&224)==192?31:(a&240)==224?15:7;let o=0,s;for(;(s=this.interim[++o]&63)&&o<4;)a<<=6,a|=s;let c=(this.interim[0]&224)==192?2:(this.interim[0]&240)==224?3:4,u=c-o;for(;l<u;){if(l>=n)return 0;if(s=e[l++],(s&192)!=128){l--,i=!0;break}this.interim[o++]=s,a<<=6,a|=s&63}i||(c===2?a<128?l--:t[r++]=a:c===3?a<2048||a>=55296&&a<=57343||a===65279||(t[r++]=a):a<65536||a>1114111||(t[r++]=a)),this.interim.fill(0)}let u=n-4,d=l;for(;d<n;){for(;d<u&&!((i=e[d])&128)&&!((a=e[d+1])&128)&&!((o=e[d+2])&128)&&!((s=e[d+3])&128);)t[r++]=i,t[r++]=a,t[r++]=o,t[r++]=s,d+=4;if(i=e[d++],i<128)t[r++]=i;else if((i&224)==192){if(d>=n)return this.interim[0]=i,r;if(a=e[d++],(a&192)!=128){d--;continue}if(c=(i&31)<<6|a&63,c<128){d--;continue}t[r++]=c}else if((i&240)==224){if(d>=n)return this.interim[0]=i,r;if(a=e[d++],(a&192)!=128){d--;continue}if(d>=n)return this.interim[0]=i,this.interim[1]=a,r;if(o=e[d++],(o&192)!=128){d--;continue}if(c=(i&15)<<12|(a&63)<<6|o&63,c<2048||c>=55296&&c<=57343||c===65279)continue;t[r++]=c}else if((i&248)==240){if(d>=n)return this.interim[0]=i,r;if(a=e[d++],(a&192)!=128){d--;continue}if(d>=n)return this.interim[0]=i,this.interim[1]=a,r;if(o=e[d++],(o&192)!=128){d--;continue}if(d>=n)return this.interim[0]=i,this.interim[1]=a,this.interim[2]=o,r;if(s=e[d++],(s&192)!=128){d--;continue}if(c=(i&7)<<18|(a&63)<<12|(o&63)<<6|s&63,c<65536||c>1114111)continue;t[r++]=c}}return r}},s0=``,c0=` `,l0=class e{constructor(){this.fg=0,this.bg=0,this.extended=new u0}static toColorRGB(e){return[e>>>16&255,e>>>8&255,e&255]}static fromColorRGB(e){return(e[0]&255)<<16|(e[1]&255)<<8|e[2]&255}clone(){let t=new e;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t}isInverse(){return this.fg&67108864}isBold(){return this.fg&134217728}isUnderline(){return this.hasExtendedAttrs()&&this.extended.underlineStyle!==0?1:this.fg&268435456}isBlink(){return this.fg&536870912}isInvisible(){return this.fg&1073741824}isItalic(){return this.bg&67108864}isDim(){return this.bg&134217728}isStrikethrough(){return this.fg&2147483648}isProtected(){return this.bg&536870912}isOverline(){return this.bg&1073741824}getFgColorMode(){return this.fg&50331648}getBgColorMode(){return this.bg&50331648}isFgRGB(){return(this.fg&50331648)==50331648}isBgRGB(){return(this.bg&50331648)==50331648}isFgPalette(){return(this.fg&50331648)==16777216||(this.fg&50331648)==33554432}isBgPalette(){return(this.bg&50331648)==16777216||(this.bg&50331648)==33554432}isFgDefault(){return!(this.fg&50331648)}isBgDefault(){return!(this.bg&50331648)}isAttributeDefault(){return this.fg===0&&this.bg===0}getFgColor(){switch(this.fg&50331648){case 16777216:case 33554432:return this.fg&255;case 50331648:return this.fg&16777215;default:return-1}}getBgColor(){switch(this.bg&50331648){case 16777216:case 33554432:return this.bg&255;case 50331648:return this.bg&16777215;default:return-1}}hasExtendedAttrs(){return this.bg&268435456}updateExtended(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456}getUnderlineColor(){if(this.bg&268435456&&~this.extended.underlineColor)switch(this.extended.underlineColor&50331648){case 16777216:case 33554432:return this.extended.underlineColor&255;case 50331648:return this.extended.underlineColor&16777215;default:return this.getFgColor()}return this.getFgColor()}getUnderlineColorMode(){return this.bg&268435456&&~this.extended.underlineColor?this.extended.underlineColor&50331648:this.getFgColorMode()}isUnderlineColorRGB(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)==50331648:this.isFgRGB()}isUnderlineColorPalette(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)==16777216||(this.extended.underlineColor&50331648)==33554432:this.isFgPalette()}isUnderlineColorDefault(){return this.bg&268435456&&~this.extended.underlineColor?!(this.extended.underlineColor&50331648):this.isFgDefault()}getUnderlineStyle(){return this.fg&268435456?this.bg&268435456?this.extended.underlineStyle:1:0}getUnderlineVariantOffset(){return this.extended.underlineVariantOffset}},u0=class e{constructor(e=0,t=0){this._ext=0,this._urlId=0,this._ext=e,this._urlId=t}get ext(){return this._urlId?this._ext&-469762049|this.underlineStyle<<26:this._ext}set ext(e){this._ext=e}get underlineStyle(){return this._urlId?5:(this._ext&469762048)>>26}set underlineStyle(e){this._ext&=-469762049,this._ext|=e<<26&469762048}get underlineColor(){return this._ext&67108863}set underlineColor(e){this._ext&=-67108864,this._ext|=e&67108863}get urlId(){return this._urlId}set urlId(e){this._urlId=e}get underlineVariantOffset(){let e=(this._ext&3758096384)>>29;return e<0?e^4294967288:e}set underlineVariantOffset(e){this._ext&=536870911,this._ext|=e<<29&3758096384}clone(){return new e(this._ext,this._urlId)}isEmpty(){return this.underlineStyle===0&&this._urlId===0}},d0=class e extends l0{constructor(){super(...arguments),this.content=0,this.fg=0,this.bg=0,this.extended=new u0,this.combinedData=``}static fromCharData(t){let n=new e;return n.setFromCharData(t),n}isCombined(){return this.content&2097152}getWidth(){return this.content>>22}getChars(){return this.content&2097152?this.combinedData:this.content&2097151?r0(this.content&2097151):``}getCode(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):this.content&2097151}setFromCharData(e){this.fg=e[0],this.bg=0;let t=!1;if(e[1].length>2)t=!0;else if(e[1].length===2){let n=e[1].charCodeAt(0);if(55296<=n&&n<=56319){let r=e[1].charCodeAt(1);56320<=r&&r<=57343?this.content=(n-55296)*1024+r-56320+65536|e[2]<<22:t=!0}else t=!0}else this.content=e[1].charCodeAt(0)|e[2]<<22;t&&(this.combinedData=e[1],this.content=2097152|e[2]<<22)}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}},f0=`di$target`,p0=`di$dependencies`,m0=new Map;function h0(e){return e[p0]||[]}function g0(e){if(m0.has(e))return m0.get(e);let t=function(e,n,r){if(arguments.length!==3)throw Error(`@IServiceName-decorator can only be used to decorate a parameter`);_0(t,e,r)};return t._id=e,m0.set(e,t),t}function _0(e,t,n){t[f0]===t?t[p0].push({id:e,index:n}):(t[p0]=[{id:e,index:n}],t[f0]=t)}var v0=g0(`BufferService`),y0=g0(`CoreMouseService`),b0=g0(`CoreService`),x0=g0(`CharsetService`),S0=g0(`InstantiationService`),C0=g0(`LogService`),w0=g0(`OptionsService`),T0=g0(`OscLinkService`),E0=g0(`UnicodeService`),D0=g0(`DecorationService`),O0=class{constructor(e,t,n){this._bufferService=e,this._optionsService=t,this._oscLinkService=n}provideLinks(e,t){let n=this._bufferService.buffer.lines.get(e-1);if(!n){t(void 0);return}let r=[],i=this._optionsService.rawOptions.linkHandler,a=new d0,o=n.getTrimmedLength(),s=-1,c=-1,l=!1;for(let t=0;t<o;t++)if(!(c===-1&&!n.hasContent(t))){if(n.loadCell(t,a),a.hasExtendedAttrs()&&a.extended.urlId){if(c===-1){c=t,s=a.extended.urlId;continue}l=a.extended.urlId!==s}else c!==-1&&(l=!0);if(l||c!==-1&&t===o-1){let n=this._oscLinkService.getLinkData(s)?.uri;if(n){let a={start:{x:c+1,y:e},end:{x:t+ +(!l&&t===o-1),y:e}},s=!1;if(!i?.allowNonHttpProtocols)try{let e=new URL(n);[`http:`,`https:`].includes(e.protocol)||(s=!0)}catch{s=!0}s||r.push({text:n,range:a,activate:(e,t)=>i?i.activate(e,t,a):k0(e,t),hover:(e,t)=>i?.hover?.(e,t,a),leave:(e,t)=>i?.leave?.(e,t,a)})}l=!1,a.hasExtendedAttrs()&&a.extended.urlId?(c=t,s=a.extended.urlId):(c=-1,s=-1)}}t(r)}};O0=W1([G1(0,v0),G1(1,w0),G1(2,T0)],O0);function k0(e,t){if(confirm(`Do you want to navigate to ${t}?
187
+ `+u),ge&&(u=yt(u)),w&&Te?A(u):u},t.setConfig=function(){let e=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};nt(e),ye=!0,be=ae,xe=se},t.clearConfig=function(){$e=null,ye=!1,be=null,xe=null,w=E,T=``},t.isValidAttribute=function(e,t,n){$e||nt({});let r=Qe(e),i=Qe(t);return At(r,i,n)},t.addHook=function(e,t){typeof t==`function`&&k$(z,e)&&g$(z[e],t)},t.removeHook=function(e,t){if(k$(z,e)){if(t!==void 0){let n=m$(z[e],t);return n===-1?void 0:_$(z[e],n,1)[0]}return h$(z[e])}},t.removeHooks=function(e){k$(z,e)&&(z[e]=[])},t.removeAllHooks=function(){z=v1()},t}var S1=x1();PQ.setOptions({breaks:!0,gfm:!0});function C1(e){return e.replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`).replace(/"/g,`&quot;`)}S1.addHook(`afterSanitizeAttributes`,e=>{(e.tagName===`IMG`||e.tagName===`A`)&&e.setAttribute(`referrerpolicy`,`no-referrer`),e.tagName===`A`&&e.setAttribute(`rel`,`noopener noreferrer`)});function w1(e,t){let n=[],r=new kQ,i=r.image.bind(r);if(r.image=e=>{let{href:t}=e;if(/^https?:/i.test(t||``)){let n=C1(e.text||t);return`<a href="${C1(t)}" title="${C1(e.title||``)}">🖼️ 点击查看图片:${n}</a>`}return i(e)},t){let e=r.code.bind(r);r.code=t=>{let r=e(t);if(String(t.lang||``).trim().toLowerCase()!==`html`)return r;let i=n.length;return n.push(t.text),`<div class="not-prose relative">${r}<button type="button" data-preview-html-index="${i}" class="absolute top-2 right-2 rounded-md border border-border bg-background px-2 py-1 text-xs text-foreground shadow-sm hover:bg-muted">预览</button></div>`}}let a=PQ.parse(e||``,{async:!1,renderer:r});return{html:S1.sanitize(a,{ALLOWED_URI_REGEXP:/^(?:https?:|mailto:|tel:|#|[^a-z]|[a-z+.-]+(?:[^a-z+.:-]|$))/i,ADD_ATTR:[`referrerpolicy`,`data-preview-html-index`]}),htmlBlocks:n}}function T1(e,t){return e.content===t.content&&e.className===t.className&&!!e.onPreviewHtml==!!t.onPreviewHtml}var E1=_.memo(function({content:e,className:t,onPreviewHtml:n}){let[r,i]=_.useState(null),{html:a,htmlBlocks:o}=_.useMemo(()=>w1(e,!!n),[e,!!n]);function s(e){let t=e.target.closest(`[data-preview-html-index]`);if(t){let e=Number(t.getAttribute(`data-preview-html-index`)),r=o[e];r!==void 0&&n?.(r);return}let r=e.target.closest(`a`);if(!r)return;let a=r.getAttribute(`href`)||``;!a||a.startsWith(`#`)||(e.preventDefault(),i(a))}function c(){let e=r;if(i(null),!e)return;let t=window.open(e,`_blank`,`noopener,noreferrer`);t&&(t.opener=null)}return(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`div`,{className:K(`prose prose-sm dark:prose-invert max-w-none break-words`,`prose-p:my-[0.6em] prose-p:leading-[1.6] prose-li:my-0`,`prose-ul:my-[0.6em] prose-ol:my-[0.6em] prose-blockquote:my-[0.6em]`,`prose-code:text-sm prose-pre:text-sm prose-pre:my-[0.6em]`,`prose-code:before:content-none prose-code:after:content-none prose-code:font-normal`,`[&_:not(pre)>code]:rounded [&_:not(pre)>code]:bg-foreground/10 [&_:not(pre)>code]:px-1 [&_:not(pre)>code]:py-0.5`,`dark:[&_:not(pre)>code]:bg-foreground/15`,`[&_pre]:bg-foreground/10! dark:[&_pre]:bg-foreground/15! prose-pre:text-foreground`,`prose-table:my-[0.6em] [&_table]:block [&_table]:overflow-x-auto [&_table]:[scrollbar-width:thin] [&_table::-webkit-scrollbar]:h-1.5 [&_table::-webkit-scrollbar-thumb]:rounded-full [&_table::-webkit-scrollbar-thumb]:bg-foreground/25`,t),onClick:s,dangerouslySetInnerHTML:{__html:a}}),(0,J.jsx)(dd,{open:r!==null,onOpenChange:e=>{e||i(null)},children:(0,J.jsxs)(md,{className:`sm:max-w-sm`,children:[(0,J.jsx)(_d,{children:`打开外部链接`}),(0,J.jsx)(vd,{className:`break-all`,children:r}),(0,J.jsxs)(gd,{children:[(0,J.jsx)(ud,{variant:`outline`,onClick:()=>i(null),children:`取消`}),(0,J.jsx)(ud,{onClick:c,children:`确认并新标签打开`})]})]})})]})},T1),D1=2097152;function O1(e,t){return`${e.replace(/\/$/,``)}/${t}`}function k1(e){return Number.isFinite(e)?e<1024?`${e} B`:e<1048576?`${(e/1024).toFixed(1)} KB`:`${(e/1048576).toFixed(1)} MB`:`未知大小`}function A1(e,t,n){try{let r=t.lastIndexOf(`/`),i=r>=0?t.slice(0,r+1):`/`,a=new URL(n,`http://manyoyo-internal`+i).pathname;return`/api/sessions/${encodeURIComponent(e)}/fs/raw?path=${encodeURIComponent(a)}`}catch{return``}}function j1(e,t){return e.replace(/!\[([^\]]*)\]\(([^)\s]+)(\s+"[^"]*")?\)/g,(e,n,r,i=``)=>{if(/^(?:https?:|data:|#)/i.test(r))return e;let a=t(r);return a?`![${n}](${a}${i})`:e})}function M1({value:e,className:t}){return(0,J.jsx)(`div`,{className:K(`no-scrollbar flex h-8 w-full min-w-0 items-center overflow-x-auto rounded-lg border border-input bg-transparent px-2.5 dark:bg-input/30`,t),children:(0,J.jsx)(`span`,{className:`w-max shrink-0 font-mono text-xs whitespace-nowrap text-muted-foreground`,children:e})})}function N1({activeSession:e,editorStateRef:t,confirmLeaveIfDirty:n,onPreviewHtml:r}){let i=e?.status===`history`,{confirm:a,dialog:o}=qQ(),s=RY(),[c,l]=_.useState(`list`),{width:u,dragging:d,onHandlePointerDown:f}=YQ({storageKey:`manyoyo:files-list-width`,defaultWidth:256,min:180,max:480}),[p,m]=_.useState(`/`),[h,g]=_.useState(``),[v,y]=_.useState([]),[b,x]=_.useState(!1),[S,C]=_.useState(``),[w,T]=_.useState(``),[E,D]=_.useState(null),[O,j]=_.useState(!1),[M,N]=_.useState(``),[P,F]=_.useState(null),[I,L]=_.useState(`preview`),[R,te]=_.useState(null),[U,ne]=_.useState(!1),[re,ie]=_.useState(!1),ae=R!==null&&E!==null&&R!==(E.content||``),oe=_.useRef(()=>Promise.resolve(!1)),ce=_.useCallback(()=>oe.current(),[]);_.useEffect(()=>{if(t)return t.current=ae?{fileName:w.split(`/`).pop()||w,save:ce}:null,()=>{t.current=null}},[ae,w,t,ce]),_.useEffect(()=>{if(I!==`edit`)return;function e(e){(e.metaKey||e.ctrlKey)&&e.key.toLowerCase()===`s`&&(e.preventDefault(),oe.current())}return window.addEventListener(`keydown`,e),()=>window.removeEventListener(`keydown`,e)},[I]);let le=_.useCallback(t=>{!e||i||(x(!0),C(``),tn(`/api/sessions/${encodeURIComponent(e.name)}/fs/list?path=${encodeURIComponent(t)}`).then(e=>{m(String(e.path||t)),g(typeof e.parentPath==`string`?e.parentPath:``),y(Array.isArray(e.entries)?e.entries:[])}).catch(e=>{C(e instanceof Error?e.message:`加载目录失败`)}).finally(()=>x(!1)))},[e,i]),ue=`${e?.name??``}:${i}`,[de,fe]=_.useState(ue);ue!==de&&(fe(ue),T(``),D(null),N(``),te(null),L(`preview`),l(`list`),(!e||i)&&y([])),_.useEffect(()=>{!e||i||queueMicrotask(()=>le(e.containerPath||`/`))},[e?.name,i]);async function pe(t,i,a=!1){if(e&&await n()){l(`detail`),T(t),D(null),te(null),L(`preview`),ie(i),j(!0),N(``);try{let n=await tn(`/api/sessions/${encodeURIComponent(e.name)}/fs/read?path=${encodeURIComponent(t)}&full=1`);D(n);let o=!!(n.kind===`text`&&n.editable&&!i),s=n.kind===`text`&&n.language===`markdown`,c=n.kind===`text`&&n.language===`html`;o&&(a||!s&&!c)?(te(n.content||``),L(`edit`)):(L(`preview`),c&&r&&r(t.split(`/`).pop()||t,n.content||``))}catch(e){N(e instanceof Error?e.message:`读取文件失败`)}finally{j(!1)}}}async function W(e){let t=Number(e.size),n=!1;if(Number.isFinite(t)&&t>=D1){if(!await a({title:`大文件确认`,message:`文件较大(${k1(t)}),继续后将以只读方式全量预览,无法保存。是否继续?`,confirmLabel:`继续预览`}))return;n=!0}await pe(e.path,n)}async function me(e){if(e.kind===`symlink`){let t=KQ(e.name),n=e.symlinkTarget?`"${t}" 是符号链接,实际指向:\n${KQ(e.symlinkTarget)}\n\n是否继续访问?`:`"${t}" 是一个无法解析的符号链接(可能已损坏),是否仍要尝试访问?`;if(!await a({title:`符号链接确认`,message:n,confirmLabel:`继续访问`}))return;if(e.symlinkTargetKind===`directory`){le(e.path);return}await W(e);return}if(e.kind===`directory`){le(e.path);return}await W(e)}function he(){!E||!Ce||(te(e=>e===null?E.content||``:e),L(`edit`))}function ge(){L(`preview`),Se&&r&&r(w.split(`/`).pop()||w,R??E?.content??``)}async function _e(){if(!e||!w||U||R===null)return!1;ne(!0),N(``);try{await rn(`/api/sessions/${encodeURIComponent(e.name)}/fs/write`,{path:w,content:R});let t=R;return D(e=>e&&{...e,content:t,size:t.length}),!0}catch(e){return N(e instanceof Error?e.message:`保存失败`),!1}finally{ne(!1)}}_.useEffect(()=>{oe.current=_e});function ve(){te(null),L(`preview`),Se&&r&&r(w.split(`/`).pop()||w,E?.content||``)}async function ye(){await n()&&l(`list`)}async function be(t){if(!e||!P)return;if(!t.trim())throw Error(`名称不能为空`);let n=O1(p,t),r=P===`file`?`fs/create`:`fs/mkdir`;await nn(`/api/sessions/${encodeURIComponent(e.name)}/${r}`,{path:n}),le(p),P===`file`&&await pe(n,!1,!0)}if(!e)return(0,J.jsx)(`div`,{className:`flex h-full items-center justify-center p-6 text-center text-sm text-muted-foreground`,children:`请先在左侧选择一个容器 / AGENT`});if(i)return(0,J.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-1 p-6 text-center text-sm text-muted-foreground`,children:[(0,J.jsx)(`p`,{className:`font-medium text-foreground`,children:`容器不可用`}),(0,J.jsx)(`p`,{children:`当前会话只有历史记录,没有可访问的运行中容器。`})]});let xe=E?.kind===`text`&&E.language===`markdown`,Se=E?.kind===`text`&&E.language===`html`,Ce=!!(E?.kind===`text`&&E.editable&&!re),we=!s||c===`list`,Te=!s||c===`detail`;return(0,J.jsxs)(`div`,{className:`flex h-full min-h-0 min-w-0 flex-col`,children:[we?(0,J.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 border-b p-2`,children:[(0,J.jsx)(ud,{variant:`outline`,size:`icon-sm`,disabled:!h,onClick:()=>le(h),title:`返回上一层目录`,children:(0,J.jsx)(A,{})}),(0,J.jsx)(M1,{value:KQ(p)}),(0,J.jsx)(ud,{variant:`outline`,size:`icon-sm`,onClick:()=>le(p),title:`刷新`,children:(0,J.jsx)(se,{})}),(0,J.jsx)(ud,{variant:`outline`,size:`icon-sm`,onClick:()=>F(`file`),title:`新建文件`,children:(0,J.jsx)(z,{})}),(0,J.jsx)(ud,{variant:`outline`,size:`icon-sm`,onClick:()=>F(`folder`),title:`新建文件夹`,children:(0,J.jsx)(B,{})})]}):null,S&&we?(0,J.jsx)(wd,{variant:`destructive`,className:`m-2`,children:(0,J.jsx)(Td,{children:S})}):null,(0,J.jsxs)(`div`,{className:`flex min-h-0 min-w-0 flex-1`,children:[(0,J.jsx)(`div`,{style:s?void 0:{width:u},className:K(`h-full shrink-0 overflow-y-auto border-r`,s&&`w-full`,!we&&`hidden`),children:(0,J.jsx)(`div`,{className:`flex flex-col gap-0.5 p-2`,children:b?(0,J.jsx)(`div`,{className:`flex h-32 items-center justify-center`,children:(0,J.jsx)(Sd,{className:`size-5`})}):(0,J.jsxs)(J.Fragment,{children:[v.length===0?(0,J.jsx)(`div`,{className:`px-2 py-1.5 text-xs text-muted-foreground`,children:`空目录`}):null,v.map(e=>(0,J.jsxs)(`button`,{type:`button`,onClick:()=>me(e),className:K(`flex items-center gap-2 rounded-md px-2 py-1.5 text-left text-sm hover:bg-foreground/8`,w===e.path&&`bg-foreground/12 font-medium`),title:e.kind===`symlink`&&e.symlinkTarget?`符号链接 → ${KQ(e.symlinkTarget)}`:KQ(e.name),children:[e.kind===`directory`?(0,J.jsx)(V,{className:`size-4 shrink-0 text-muted-foreground`}):e.kind===`symlink`?(0,J.jsx)(H,{className:`size-4 shrink-0 text-muted-foreground`}):(0,J.jsx)(ee,{className:`size-4 shrink-0 text-muted-foreground`}),(0,J.jsx)(`span`,{className:`truncate`,children:KQ(e.name)})]},e.path))]})})}),s?null:(0,J.jsx)(KX,{onPointerDown:f,dragging:d}),(0,J.jsxs)(`div`,{className:K(`flex min-h-0 min-w-0 flex-1 flex-col`,!Te&&`hidden`),children:[w?(0,J.jsxs)(`div`,{className:`flex shrink-0 items-center justify-between gap-2 border-b p-2`,children:[(0,J.jsxs)(`div`,{className:`flex min-w-0 flex-1 items-center gap-1.5`,children:[s?(0,J.jsx)(ud,{variant:`ghost`,size:`icon-sm`,onClick:ye,title:`返回列表`,children:(0,J.jsx)(k,{})}):null,(0,J.jsx)(M1,{value:KQ(w)})]}),E?.kind===`text`?(0,J.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2`,children:[(0,J.jsx)(ud,{variant:I===`edit`?`secondary`:`outline`,size:`sm`,disabled:!Ce,onClick:he,children:`编辑`}),(0,J.jsx)(ud,{variant:I===`preview`?`secondary`:`outline`,size:`sm`,onClick:ge,children:`预览`}),(0,J.jsx)(ud,{variant:`outline`,size:`sm`,onClick:ve,disabled:!(I===`edit`&&ae)||U,children:`取消`}),(0,J.jsx)(ud,{size:`sm`,onClick:_e,disabled:!(I===`edit`&&ae)||U,children:U?`保存中...`:`保存`})]}):null]}):null,(0,J.jsxs)(`div`,{className:`min-h-0 flex-1 overflow-auto p-3`,children:[w?null:(0,J.jsx)(`p`,{className:`p-6 text-center text-sm text-muted-foreground`,children:`选择左侧的文件查看内容`}),O?(0,J.jsx)(`div`,{className:`flex h-32 items-center justify-center`,children:(0,J.jsx)(Sd,{className:`size-5`})}):null,M?(0,J.jsx)(wd,{variant:`destructive`,children:(0,J.jsx)(Td,{children:M})}):null,E&&!O?(0,J.jsxs)(J.Fragment,{children:[E.kind===`image`?(0,J.jsx)(`img`,{src:`/api/sessions/${encodeURIComponent(e.name)}/fs/raw?path=${encodeURIComponent(w)}`,alt:w,className:`max-w-full rounded-md border`}):E.kind===`binary`?(0,J.jsxs)(`p`,{className:`text-sm text-muted-foreground`,children:[`二进制文件,无法预览(`,E.size,` 字节)`]}):I===`edit`?(0,J.jsx)(Oq,{value:R??E.content??``,language:E.language||`text`,readOnly:!1,onChange:te}):xe?(0,J.jsx)(E1,{content:j1(R??E.content??``,t=>A1(e.name,w,t))}):(0,J.jsx)(Oq,{value:R??E.content??``,language:E.language||`text`,readOnly:!0}),E.truncated?(0,J.jsx)(`p`,{className:`mt-2 text-xs text-muted-foreground`,children:`内容过大,已截断显示`}):null]}):null]})]})]}),(0,J.jsx)(cm,{open:P!==null,onOpenChange:e=>{e||F(null)},title:P===`file`?`新建文件`:`新建文件夹`,description:`将在 ${KQ(p)} 下创建。`,label:`名称`,initialValue:``,onSubmit:be}),o]})}function P1({state:e,onOpenChange:t}){return(0,J.jsx)(zY,{open:e!==null,onOpenChange:t,children:(0,J.jsxs)(HY,{side:`right`,className:`gap-0 p-0 data-[side=right]:w-full data-[side=right]:sm:w-2/3 data-[side=right]:sm:max-w-none`,children:[(0,J.jsxs)(UY,{className:`border-b`,children:[(0,J.jsx)(WY,{className:`truncate`,children:e?.title||`HTML 预览`}),(0,J.jsx)(GY,{children:`沙箱环境渲染,无法访问站点数据`})]}),(0,J.jsx)(`div`,{className:`min-h-0 flex-1 bg-white`,children:e?(0,J.jsx)(`iframe`,{title:e.title||`html-preview`,srcDoc:e.code,sandbox:`allow-scripts`,className:`size-full border-0`}):null})]})})}var F1=`__default__`,I1=`__custom__`;function L1({open:e,onOpenChange:t,session:n,onSaved:r}){let[i,a]=_.useState([]),[o,s]=_.useState(F1),[c,l]=_.useState(``),[u,d]=_.useState(!1),[f,p]=_.useState(!1),[m,h]=_.useState(``),g=e&&n?n.name:null,[v,y]=_.useState(g);g!==v&&(y(g),g!==null&&(d(!0),h(``))),_.useEffect(()=>{!e||!n||tn(`/api/sessions/${encodeURIComponent(n.name)}/models`).then(e=>{let t=Array.isArray(e.models)?e.models:[];a(t);let r=n.model||``;r?t.some(e=>e.value===r)?s(r):(s(I1),l(r)):(s(F1),l(``))}).catch(e=>h(e instanceof Error?e.message:`获取模型列表失败`)).finally(()=>d(!1))},[e,n]);async function b(){if(n){p(!0),h(``);try{let e=o===F1?``:o===I1?c.trim():o;await nn(`/api/sessions/${encodeURIComponent(n.name)}/model`,{model:e}),t(!1),r()}catch(e){h(e instanceof Error?e.message:`保存失败`)}finally{p(!1)}}}return(0,J.jsx)(dd,{open:e,onOpenChange:t,children:(0,J.jsxs)(md,{className:`sm:max-w-sm`,children:[(0,J.jsx)(hd,{children:(0,J.jsx)(_d,{children:`选择模型`})}),u?(0,J.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`正在获取模型列表...`}):(0,J.jsxs)(jd,{children:[(0,J.jsxs)(Nd,{children:[(0,J.jsx)(Pd,{htmlFor:`model-select`,children:`模型`}),(0,J.jsxs)(Wp,{value:o,onValueChange:e=>s(e??F1),children:[(0,J.jsx)(qp,{id:`model-select`,className:`w-full`,children:(0,J.jsx)(Kp,{children:e=>e===F1?`跟随默认(不传 --model)`:e===I1?`自定义...`:i.find(t=>t.value===e)?.label||e})}),(0,J.jsx)(Jp,{children:(0,J.jsxs)(Gp,{children:[(0,J.jsx)(Yp,{value:F1,children:`跟随默认(不传 --model)`}),i.map(e=>(0,J.jsx)(Yp,{value:e.value,children:e.label},e.value)),(0,J.jsx)(Yp,{value:I1,children:`自定义...`})]})})]})]}),o===I1?(0,J.jsxs)(Nd,{children:[(0,J.jsx)(Pd,{htmlFor:`model-custom`,children:`自定义模型名称`}),(0,J.jsx)(ef,{id:`model-custom`,placeholder:`例如 gemini-2.5-pro`,value:c,onChange:e=>l(e.target.value)})]}):null,m?(0,J.jsx)(wd,{variant:`destructive`,children:(0,J.jsx)(Td,{children:m})}):null]}),(0,J.jsx)(gd,{children:(0,J.jsx)(ud,{onClick:b,disabled:u||f,children:f?`保存中...`:`保存`})})]})})}var R1=2,z1=1,B1=class{activate(e){this._terminal=e}dispose(){}fit(){let e=this.proposeDimensions();if(!e||!this._terminal||isNaN(e.cols)||isNaN(e.rows))return;let t=this._terminal._core;(this._terminal.rows!==e.rows||this._terminal.cols!==e.cols)&&(t._renderService.clear(),this._terminal.resize(e.cols,e.rows))}proposeDimensions(){if(!this._terminal||!this._terminal.element||!this._terminal.element.parentElement)return;let e=this._terminal._core._renderService.dimensions;if(e.css.cell.width===0||e.css.cell.height===0)return;let t=this._terminal.options.scrollback===0?0:this._terminal.options.overviewRuler?.width||14,n=window.getComputedStyle(this._terminal.element.parentElement),r=parseInt(n.getPropertyValue(`height`)),i=Math.max(0,parseInt(n.getPropertyValue(`width`))),a=window.getComputedStyle(this._terminal.element),o={top:parseInt(a.getPropertyValue(`padding-top`)),bottom:parseInt(a.getPropertyValue(`padding-bottom`)),right:parseInt(a.getPropertyValue(`padding-right`)),left:parseInt(a.getPropertyValue(`padding-left`))},s=o.top+o.bottom,c=o.right+o.left,l=r-s,u=i-c-t;return{cols:Math.max(R1,Math.floor(u/e.css.cell.width)),rows:Math.max(z1,Math.floor(l/e.css.cell.height))}}},V1=Object.defineProperty,H1=Object.getOwnPropertyDescriptor,U1=(e,t)=>{for(var n in t)V1(e,n,{get:t[n],enumerable:!0})},W1=(e,t,n,r)=>{for(var i=r>1?void 0:r?H1(t,n):t,a=e.length-1,o;a>=0;a--)(o=e[a])&&(i=(r?o(t,n,i):o(i))||i);return r&&i&&V1(t,n,i),i},G1=(e,t)=>(n,r)=>t(n,r,e),K1=`Terminal input`,q1={get:()=>K1,set:e=>K1=e},J1=`Too much output to announce, navigate to rows manually to read`,Y1={get:()=>J1,set:e=>J1=e};function X1(e){return e.replace(/\r?\n/g,`\r`)}function Z1(e,t){return t?`\x1B[200~`+e+`\x1B[201~`:e}function Q1(e,t){e.clipboardData&&e.clipboardData.setData(`text/plain`,t.selectionText),e.preventDefault()}function $1(e,t,n,r){e.stopPropagation(),e.clipboardData&&e0(e.clipboardData.getData(`text/plain`),t,n,r)}function e0(e,t,n,r){e=X1(e),e=Z1(e,n.decPrivateModes.bracketedPasteMode&&r.rawOptions.ignoreBracketedPasteMode!==!0),n.triggerDataEvent(e,!0),t.value=``}function t0(e,t,n){let r=n.getBoundingClientRect(),i=e.clientX-r.left-10,a=e.clientY-r.top-10;t.style.width=`20px`,t.style.height=`20px`,t.style.left=`${i}px`,t.style.top=`${a}px`,t.style.zIndex=`1000`,t.focus()}function n0(e,t,n,r,i){t0(e,t,n),i&&r.rightClickSelect(e),t.value=r.selectionText,t.select()}function r0(e){return e>65535?(e-=65536,String.fromCharCode((e>>10)+55296)+String.fromCharCode(e%1024+56320)):String.fromCharCode(e)}function i0(e,t=0,n=e.length){let r=``;for(let i=t;i<n;++i){let t=e[i];t>65535?(t-=65536,r+=String.fromCharCode((t>>10)+55296)+String.fromCharCode(t%1024+56320)):r+=String.fromCharCode(t)}return r}var a0=class{constructor(){this._interim=0}clear(){this._interim=0}decode(e,t){let n=e.length;if(!n)return 0;let r=0,i=0;if(this._interim){let n=e.charCodeAt(i++);56320<=n&&n<=57343?t[r++]=(this._interim-55296)*1024+n-56320+65536:(t[r++]=this._interim,t[r++]=n),this._interim=0}for(let a=i;a<n;++a){let i=e.charCodeAt(a);if(55296<=i&&i<=56319){if(++a>=n)return this._interim=i,r;let o=e.charCodeAt(a);56320<=o&&o<=57343?t[r++]=(i-55296)*1024+o-56320+65536:(t[r++]=i,t[r++]=o);continue}i!==65279&&(t[r++]=i)}return r}},o0=class{constructor(){this.interim=new Uint8Array(3)}clear(){this.interim.fill(0)}decode(e,t){let n=e.length;if(!n)return 0;let r=0,i,a,o,s,c=0,l=0;if(this.interim[0]){let i=!1,a=this.interim[0];a&=(a&224)==192?31:(a&240)==224?15:7;let o=0,s;for(;(s=this.interim[++o]&63)&&o<4;)a<<=6,a|=s;let c=(this.interim[0]&224)==192?2:(this.interim[0]&240)==224?3:4,u=c-o;for(;l<u;){if(l>=n)return 0;if(s=e[l++],(s&192)!=128){l--,i=!0;break}this.interim[o++]=s,a<<=6,a|=s&63}i||(c===2?a<128?l--:t[r++]=a:c===3?a<2048||a>=55296&&a<=57343||a===65279||(t[r++]=a):a<65536||a>1114111||(t[r++]=a)),this.interim.fill(0)}let u=n-4,d=l;for(;d<n;){for(;d<u&&!((i=e[d])&128)&&!((a=e[d+1])&128)&&!((o=e[d+2])&128)&&!((s=e[d+3])&128);)t[r++]=i,t[r++]=a,t[r++]=o,t[r++]=s,d+=4;if(i=e[d++],i<128)t[r++]=i;else if((i&224)==192){if(d>=n)return this.interim[0]=i,r;if(a=e[d++],(a&192)!=128){d--;continue}if(c=(i&31)<<6|a&63,c<128){d--;continue}t[r++]=c}else if((i&240)==224){if(d>=n)return this.interim[0]=i,r;if(a=e[d++],(a&192)!=128){d--;continue}if(d>=n)return this.interim[0]=i,this.interim[1]=a,r;if(o=e[d++],(o&192)!=128){d--;continue}if(c=(i&15)<<12|(a&63)<<6|o&63,c<2048||c>=55296&&c<=57343||c===65279)continue;t[r++]=c}else if((i&248)==240){if(d>=n)return this.interim[0]=i,r;if(a=e[d++],(a&192)!=128){d--;continue}if(d>=n)return this.interim[0]=i,this.interim[1]=a,r;if(o=e[d++],(o&192)!=128){d--;continue}if(d>=n)return this.interim[0]=i,this.interim[1]=a,this.interim[2]=o,r;if(s=e[d++],(s&192)!=128){d--;continue}if(c=(i&7)<<18|(a&63)<<12|(o&63)<<6|s&63,c<65536||c>1114111)continue;t[r++]=c}}return r}},s0=``,c0=` `,l0=class e{constructor(){this.fg=0,this.bg=0,this.extended=new u0}static toColorRGB(e){return[e>>>16&255,e>>>8&255,e&255]}static fromColorRGB(e){return(e[0]&255)<<16|(e[1]&255)<<8|e[2]&255}clone(){let t=new e;return t.fg=this.fg,t.bg=this.bg,t.extended=this.extended.clone(),t}isInverse(){return this.fg&67108864}isBold(){return this.fg&134217728}isUnderline(){return this.hasExtendedAttrs()&&this.extended.underlineStyle!==0?1:this.fg&268435456}isBlink(){return this.fg&536870912}isInvisible(){return this.fg&1073741824}isItalic(){return this.bg&67108864}isDim(){return this.bg&134217728}isStrikethrough(){return this.fg&2147483648}isProtected(){return this.bg&536870912}isOverline(){return this.bg&1073741824}getFgColorMode(){return this.fg&50331648}getBgColorMode(){return this.bg&50331648}isFgRGB(){return(this.fg&50331648)==50331648}isBgRGB(){return(this.bg&50331648)==50331648}isFgPalette(){return(this.fg&50331648)==16777216||(this.fg&50331648)==33554432}isBgPalette(){return(this.bg&50331648)==16777216||(this.bg&50331648)==33554432}isFgDefault(){return!(this.fg&50331648)}isBgDefault(){return!(this.bg&50331648)}isAttributeDefault(){return this.fg===0&&this.bg===0}getFgColor(){switch(this.fg&50331648){case 16777216:case 33554432:return this.fg&255;case 50331648:return this.fg&16777215;default:return-1}}getBgColor(){switch(this.bg&50331648){case 16777216:case 33554432:return this.bg&255;case 50331648:return this.bg&16777215;default:return-1}}hasExtendedAttrs(){return this.bg&268435456}updateExtended(){this.extended.isEmpty()?this.bg&=-268435457:this.bg|=268435456}getUnderlineColor(){if(this.bg&268435456&&~this.extended.underlineColor)switch(this.extended.underlineColor&50331648){case 16777216:case 33554432:return this.extended.underlineColor&255;case 50331648:return this.extended.underlineColor&16777215;default:return this.getFgColor()}return this.getFgColor()}getUnderlineColorMode(){return this.bg&268435456&&~this.extended.underlineColor?this.extended.underlineColor&50331648:this.getFgColorMode()}isUnderlineColorRGB(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)==50331648:this.isFgRGB()}isUnderlineColorPalette(){return this.bg&268435456&&~this.extended.underlineColor?(this.extended.underlineColor&50331648)==16777216||(this.extended.underlineColor&50331648)==33554432:this.isFgPalette()}isUnderlineColorDefault(){return this.bg&268435456&&~this.extended.underlineColor?!(this.extended.underlineColor&50331648):this.isFgDefault()}getUnderlineStyle(){return this.fg&268435456?this.bg&268435456?this.extended.underlineStyle:1:0}getUnderlineVariantOffset(){return this.extended.underlineVariantOffset}},u0=class e{constructor(e=0,t=0){this._ext=0,this._urlId=0,this._ext=e,this._urlId=t}get ext(){return this._urlId?this._ext&-469762049|this.underlineStyle<<26:this._ext}set ext(e){this._ext=e}get underlineStyle(){return this._urlId?5:(this._ext&469762048)>>26}set underlineStyle(e){this._ext&=-469762049,this._ext|=e<<26&469762048}get underlineColor(){return this._ext&67108863}set underlineColor(e){this._ext&=-67108864,this._ext|=e&67108863}get urlId(){return this._urlId}set urlId(e){this._urlId=e}get underlineVariantOffset(){let e=(this._ext&3758096384)>>29;return e<0?e^4294967288:e}set underlineVariantOffset(e){this._ext&=536870911,this._ext|=e<<29&3758096384}clone(){return new e(this._ext,this._urlId)}isEmpty(){return this.underlineStyle===0&&this._urlId===0}},d0=class e extends l0{constructor(){super(...arguments),this.content=0,this.fg=0,this.bg=0,this.extended=new u0,this.combinedData=``}static fromCharData(t){let n=new e;return n.setFromCharData(t),n}isCombined(){return this.content&2097152}getWidth(){return this.content>>22}getChars(){return this.content&2097152?this.combinedData:this.content&2097151?r0(this.content&2097151):``}getCode(){return this.isCombined()?this.combinedData.charCodeAt(this.combinedData.length-1):this.content&2097151}setFromCharData(e){this.fg=e[0],this.bg=0;let t=!1;if(e[1].length>2)t=!0;else if(e[1].length===2){let n=e[1].charCodeAt(0);if(55296<=n&&n<=56319){let r=e[1].charCodeAt(1);56320<=r&&r<=57343?this.content=(n-55296)*1024+r-56320+65536|e[2]<<22:t=!0}else t=!0}else this.content=e[1].charCodeAt(0)|e[2]<<22;t&&(this.combinedData=e[1],this.content=2097152|e[2]<<22)}getAsCharData(){return[this.fg,this.getChars(),this.getWidth(),this.getCode()]}},f0=`di$target`,p0=`di$dependencies`,m0=new Map;function h0(e){return e[p0]||[]}function g0(e){if(m0.has(e))return m0.get(e);let t=function(e,n,r){if(arguments.length!==3)throw Error(`@IServiceName-decorator can only be used to decorate a parameter`);_0(t,e,r)};return t._id=e,m0.set(e,t),t}function _0(e,t,n){t[f0]===t?t[p0].push({id:e,index:n}):(t[p0]=[{id:e,index:n}],t[f0]=t)}var v0=g0(`BufferService`),y0=g0(`CoreMouseService`),b0=g0(`CoreService`),x0=g0(`CharsetService`),S0=g0(`InstantiationService`),C0=g0(`LogService`),w0=g0(`OptionsService`),T0=g0(`OscLinkService`),E0=g0(`UnicodeService`),D0=g0(`DecorationService`),O0=class{constructor(e,t,n){this._bufferService=e,this._optionsService=t,this._oscLinkService=n}provideLinks(e,t){let n=this._bufferService.buffer.lines.get(e-1);if(!n){t(void 0);return}let r=[],i=this._optionsService.rawOptions.linkHandler,a=new d0,o=n.getTrimmedLength(),s=-1,c=-1,l=!1;for(let t=0;t<o;t++)if(!(c===-1&&!n.hasContent(t))){if(n.loadCell(t,a),a.hasExtendedAttrs()&&a.extended.urlId){if(c===-1){c=t,s=a.extended.urlId;continue}l=a.extended.urlId!==s}else c!==-1&&(l=!0);if(l||c!==-1&&t===o-1){let n=this._oscLinkService.getLinkData(s)?.uri;if(n){let a={start:{x:c+1,y:e},end:{x:t+ +(!l&&t===o-1),y:e}},s=!1;if(!i?.allowNonHttpProtocols)try{let e=new URL(n);[`http:`,`https:`].includes(e.protocol)||(s=!0)}catch{s=!0}s||r.push({text:n,range:a,activate:(e,t)=>i?i.activate(e,t,a):k0(e,t),hover:(e,t)=>i?.hover?.(e,t,a),leave:(e,t)=>i?.leave?.(e,t,a)})}l=!1,a.hasExtendedAttrs()&&a.extended.urlId?(c=t,s=a.extended.urlId):(c=-1,s=-1)}}t(r)}};O0=W1([G1(0,v0),G1(1,w0),G1(2,T0)],O0);function k0(e,t){if(confirm(`Do you want to navigate to ${t}?
188
188
 
189
189
  WARNING: This link could potentially be dangerous`)){let e=window.open();if(e){try{e.opener=null}catch{}e.location.href=t}else console.warn(`Opening link blocked as opener could not be cleared`)}}var A0=g0(`CharSizeService`),j0=g0(`CoreBrowserService`),M0=g0(`MouseService`),N0=g0(`RenderService`),P0=g0(`SelectionService`),F0=g0(`CharacterJoinerService`),I0=g0(`ThemeService`),L0=g0(`LinkProviderService`),R0=new class{constructor(){this.listeners=[],this.unexpectedErrorHandler=function(e){setTimeout(()=>{throw e.stack?W0.isErrorNoTelemetry(e)?new W0(e.message+`
190
190
 
@@ -199,9 +199,9 @@ WARNING: This link could potentially be dangerous`)){let e=window.open();if(e){t
199
199
  `)}clearSelection(){this._model.clearSelection(),this._removeMouseDownListeners(),this.refresh(),this._onSelectionChange.fire()}refresh(e){this._refreshAnimationFrame||=this._coreBrowserService.window.requestAnimationFrame(()=>this._refresh()),W6&&e&&this.selectionText.length&&this._onLinuxMouseSelection.fire(this.selectionText)}_refresh(){this._refreshAnimationFrame=void 0,this._onRedrawRequest.fire({start:this._model.finalSelectionStart,end:this._model.finalSelectionEnd,columnSelectMode:this._activeSelectionMode===3})}_isClickInSelection(e){let t=this._getMouseBufferCoords(e),n=this._model.finalSelectionStart,r=this._model.finalSelectionEnd;return!n||!r||!t?!1:this._areCoordsInSelection(t,n,r)}isCellInSelection(e,t){let n=this._model.finalSelectionStart,r=this._model.finalSelectionEnd;return!n||!r?!1:this._areCoordsInSelection([e,t],n,r)}_areCoordsInSelection(e,t,n){return e[1]>t[1]&&e[1]<n[1]||t[1]===n[1]&&e[1]===t[1]&&e[0]>=t[0]&&e[0]<n[0]||t[1]<n[1]&&e[1]===n[1]&&e[0]<n[0]||t[1]<n[1]&&e[1]===t[1]&&e[0]>=t[0]}_selectWordAtCursor(e,t){let n=this._linkifier.currentLink?.link?.range;if(n)return this._model.selectionStart=[n.start.x-1,n.start.y-1],this._model.selectionStartLength=p8(n,this._bufferService.cols),this._model.selectionEnd=void 0,!0;let r=this._getMouseBufferCoords(e);return r?(this._selectWordAt(r,t),this._model.selectionEnd=void 0,!0):!1}selectAll(){this._model.isSelectAllActive=!0,this.refresh(),this._onSelectionChange.fire()}selectLines(e,t){this._model.clearSelection(),e=Math.max(e,0),t=Math.min(t,this._bufferService.buffer.lines.length-1),this._model.selectionStart=[0,e],this._model.selectionEnd=[this._bufferService.cols,t],this.refresh(),this._onSelectionChange.fire()}_handleTrim(e){this._model.handleTrim(e)&&this.refresh()}_getMouseBufferCoords(e){let t=this._mouseService.getCoords(e,this._screenElement,this._bufferService.cols,this._bufferService.rows,!0);if(t)return t[0]--,t[1]--,t[1]+=this._bufferService.buffer.ydisp,t}_getMouseEventScrollAmount(e){let t=O6(this._coreBrowserService.window,e,this._screenElement)[1],n=this._renderService.dimensions.css.canvas.height;return t>=0&&t<=n?0:(t>n&&(t-=n),t=Math.min(Math.max(t,-m8),m8),t/=m8,t/Math.abs(t)+Math.round(t*(h8-1)))}shouldForceSelection(e){return B6?e.altKey&&this._optionsService.rawOptions.macOptionClickForcesSelection:e.shiftKey}handleMouseDown(e){if(this._mouseDownTimeStamp=e.timeStamp,!(e.button===2&&this.hasSelection)&&e.button===0){if(!this._enabled){if(!this.shouldForceSelection(e))return;e.stopPropagation()}e.preventDefault(),this._dragScrollAmount=0,this._enabled&&e.shiftKey?this._handleIncrementalClick(e):e.detail===1?this._handleSingleClick(e):e.detail===2?this._handleDoubleClick(e):e.detail===3&&this._handleTripleClick(e),this._addMouseDownListeners(),this.refresh(!0)}}_addMouseDownListeners(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.addEventListener(`mousemove`,this._mouseMoveListener),this._screenElement.ownerDocument.addEventListener(`mouseup`,this._mouseUpListener)),this._dragScrollIntervalTimer=this._coreBrowserService.window.setInterval(()=>this._dragScroll(),g8)}_removeMouseDownListeners(){this._screenElement.ownerDocument&&(this._screenElement.ownerDocument.removeEventListener(`mousemove`,this._mouseMoveListener),this._screenElement.ownerDocument.removeEventListener(`mouseup`,this._mouseUpListener)),this._coreBrowserService.window.clearInterval(this._dragScrollIntervalTimer),this._dragScrollIntervalTimer=void 0}_handleIncrementalClick(e){this._model.selectionStart&&(this._model.selectionEnd=this._getMouseBufferCoords(e))}_handleSingleClick(e){if(this._model.selectionStartLength=0,this._model.isSelectAllActive=!1,this._activeSelectionMode=this.shouldColumnSelect(e)?3:0,this._model.selectionStart=this._getMouseBufferCoords(e),!this._model.selectionStart)return;this._model.selectionEnd=void 0;let t=this._bufferService.buffer.lines.get(this._model.selectionStart[1]);t&&t.length!==this._model.selectionStart[0]&&t.hasWidth(this._model.selectionStart[0])===0&&this._model.selectionStart[0]++}_handleDoubleClick(e){this._selectWordAtCursor(e,!0)&&(this._activeSelectionMode=1)}_handleTripleClick(e){let t=this._getMouseBufferCoords(e);t&&(this._activeSelectionMode=2,this._selectLineAt(t[1]))}shouldColumnSelect(e){return e.altKey&&!(B6&&this._optionsService.rawOptions.macOptionClickForcesSelection)}_handleMouseMove(e){if(e.stopImmediatePropagation(),!this._model.selectionStart)return;let t=this._model.selectionEnd?[this._model.selectionEnd[0],this._model.selectionEnd[1]]:null;if(this._model.selectionEnd=this._getMouseBufferCoords(e),!this._model.selectionEnd){this.refresh(!0);return}this._activeSelectionMode===2?this._model.selectionEnd[1]<this._model.selectionStart[1]?this._model.selectionEnd[0]=0:this._model.selectionEnd[0]=this._bufferService.cols:this._activeSelectionMode===1&&this._selectToWordAt(this._model.selectionEnd),this._dragScrollAmount=this._getMouseEventScrollAmount(e),this._activeSelectionMode!==3&&(this._dragScrollAmount>0?this._model.selectionEnd[0]=this._bufferService.cols:this._dragScrollAmount<0&&(this._model.selectionEnd[0]=0));let n=this._bufferService.buffer;if(this._model.selectionEnd[1]<n.lines.length){let e=n.lines.get(this._model.selectionEnd[1]);e&&e.hasWidth(this._model.selectionEnd[0])===0&&this._model.selectionEnd[0]<this._bufferService.cols&&this._model.selectionEnd[0]++}(!t||t[0]!==this._model.selectionEnd[0]||t[1]!==this._model.selectionEnd[1])&&this.refresh(!0)}_dragScroll(){if(!(!this._model.selectionEnd||!this._model.selectionStart)&&this._dragScrollAmount){this._onRequestScrollLines.fire({amount:this._dragScrollAmount,suppressScrollEvent:!1});let e=this._bufferService.buffer;this._dragScrollAmount>0?(this._activeSelectionMode!==3&&(this._model.selectionEnd[0]=this._bufferService.cols),this._model.selectionEnd[1]=Math.min(e.ydisp+this._bufferService.rows,e.lines.length-1)):(this._activeSelectionMode!==3&&(this._model.selectionEnd[0]=0),this._model.selectionEnd[1]=e.ydisp),this.refresh()}}_handleMouseUp(e){let t=e.timeStamp-this._mouseDownTimeStamp;if(this._removeMouseDownListeners(),this.selectionText.length<=1&&t<_8&&e.altKey&&this._optionsService.rawOptions.altClickMovesCursor){if(this._bufferService.buffer.ybase===this._bufferService.buffer.ydisp){let t=this._mouseService.getCoords(e,this._element,this._bufferService.cols,this._bufferService.rows,!1);if(t&&t[0]!==void 0&&t[1]!==void 0){let e=$6(t[0]-1,t[1]-1,this._bufferService,this._coreService.decPrivateModes.applicationCursorKeys);this._coreService.triggerDataEvent(e,!0)}}}else this._fireEventIfSelectionChanged()}_fireEventIfSelectionChanged(){let e=this._model.finalSelectionStart,t=this._model.finalSelectionEnd,n=!!e&&!!t&&(e[0]!==t[0]||e[1]!==t[1]);if(!n){this._oldHasSelection&&this._fireOnSelectionChange(e,t,n);return}!e||!t||(!this._oldSelectionStart||!this._oldSelectionEnd||e[0]!==this._oldSelectionStart[0]||e[1]!==this._oldSelectionStart[1]||t[0]!==this._oldSelectionEnd[0]||t[1]!==this._oldSelectionEnd[1])&&this._fireOnSelectionChange(e,t,n)}_fireOnSelectionChange(e,t,n){this._oldSelectionStart=e,this._oldSelectionEnd=t,this._oldHasSelection=n,this._onSelectionChange.fire()}_handleBufferActivate(e){this.clearSelection(),this._trimListener.dispose(),this._trimListener=e.activeBuffer.lines.onTrim(e=>this._handleTrim(e))}_convertViewportColToCharacterIndex(e,t){let n=t;for(let r=0;t>=r;r++){let i=e.loadCell(r,this._workCell).getChars().length;this._workCell.getWidth()===0?n--:i>1&&t!==r&&(n+=i-1)}return n}setSelection(e,t,n){this._model.clearSelection(),this._removeMouseDownListeners(),this._model.selectionStart=[e,t],this._model.selectionStartLength=n,this.refresh(),this._fireEventIfSelectionChanged()}rightClickSelect(e){this._isClickInSelection(e)||(this._selectWordAtCursor(e,!1)&&this.refresh(!0),this._fireEventIfSelectionChanged())}_getWordAt(e,t,n=!0,r=!0){if(e[0]>=this._bufferService.cols)return;let i=this._bufferService.buffer,a=i.lines.get(e[1]);if(!a)return;let o=i.translateBufferLineToString(e[1],!1),s=this._convertViewportColToCharacterIndex(a,e[0]),c=s,l=e[0]-s,u=0,d=0,f=0,p=0;if(o.charAt(s)===` `){for(;s>0&&o.charAt(s-1)===` `;)s--;for(;c<o.length&&o.charAt(c+1)===` `;)c++}else{let t=e[0],n=e[0];a.getWidth(t)===0&&(u++,t--),a.getWidth(n)===2&&(d++,n++);let r=a.getString(n).length;for(r>1&&(p+=r-1,c+=r-1);t>0&&s>0&&!this._isCharWordSeparator(a.loadCell(t-1,this._workCell));){a.loadCell(t-1,this._workCell);let e=this._workCell.getChars().length;this._workCell.getWidth()===0?(u++,t--):e>1&&(f+=e-1,s-=e-1),s--,t--}for(;n<a.length&&c+1<o.length&&!this._isCharWordSeparator(a.loadCell(n+1,this._workCell));){a.loadCell(n+1,this._workCell);let e=this._workCell.getChars().length;this._workCell.getWidth()===2?(d++,n++):e>1&&(p+=e-1,c+=e-1),c++,n++}}c++;let m=s+l-u+f,h=Math.min(this._bufferService.cols,c-s+u+d-f-p);if(!(!t&&o.slice(s,c).trim()===``)){if(n&&m===0&&a.getCodePoint(0)!==32){let t=i.lines.get(e[1]-1);if(t&&a.isWrapped&&t.getCodePoint(this._bufferService.cols-1)!==32){let t=this._getWordAt([this._bufferService.cols-1,e[1]-1],!1,!0,!1);if(t){let e=this._bufferService.cols-t.start;m-=e,h+=e}}}if(r&&m+h===this._bufferService.cols&&a.getCodePoint(this._bufferService.cols-1)!==32){let t=i.lines.get(e[1]+1);if(t?.isWrapped&&t.getCodePoint(0)!==32){let t=this._getWordAt([0,e[1]+1],!1,!1,!0);t&&(h+=t.length)}}return{start:m,length:h}}}_selectWordAt(e,t){let n=this._getWordAt(e,t);if(n){for(;n.start<0;)n.start+=this._bufferService.cols,e[1]--;this._model.selectionStart=[n.start,e[1]],this._model.selectionStartLength=n.length}}_selectToWordAt(e){let t=this._getWordAt(e,!0);if(t){let n=e[1];for(;t.start<0;)t.start+=this._bufferService.cols,n--;if(!this._model.areSelectionValuesReversed())for(;t.start+t.length>this._bufferService.cols;)t.length-=this._bufferService.cols,n++;this._model.selectionEnd=[this._model.areSelectionValuesReversed()?t.start:t.start+t.length,n]}}_isCharWordSeparator(e){return e.getWidth()!==0&&this._optionsService.rawOptions.wordSeparator.indexOf(e.getChars())>=0}_selectLineAt(e){let t=this._bufferService.buffer.getWrappedRangeForLine(e),n={start:{x:0,y:t.first},end:{x:this._bufferService.cols-1,y:t.last}};this._model.selectionStart=[0,t.first],this._model.selectionEnd=void 0,this._model.selectionStartLength=p8(n,this._bufferService.cols)}};y8=W1([G1(3,v0),G1(4,b0),G1(5,M0),G1(6,w0),G1(7,N0),G1(8,j0)],y8);var b8=class{constructor(){this._data={}}set(e,t,n){this._data[e]||(this._data[e]={}),this._data[e][t]=n}get(e,t){return this._data[e]?this._data[e][t]:void 0}clear(){this._data={}}},x8=class{constructor(){this._color=new b8,this._css=new b8}setCss(e,t,n){this._css.set(e,t,n)}getCss(e,t){return this._css.get(e,t)}setColor(e,t,n){this._color.set(e,t,n)}getColor(e,t){return this._color.get(e,t)}clear(){this._color.clear(),this._css.clear()}},S8=Object.freeze((()=>{let e=[X3.toColor(`#2e3436`),X3.toColor(`#cc0000`),X3.toColor(`#4e9a06`),X3.toColor(`#c4a000`),X3.toColor(`#3465a4`),X3.toColor(`#75507b`),X3.toColor(`#06989a`),X3.toColor(`#d3d7cf`),X3.toColor(`#555753`),X3.toColor(`#ef2929`),X3.toColor(`#8ae234`),X3.toColor(`#fce94f`),X3.toColor(`#729fcf`),X3.toColor(`#ad7fa8`),X3.toColor(`#34e2e2`),X3.toColor(`#eeeeec`)],t=[0,95,135,175,215,255];for(let n=0;n<216;n++){let r=t[n/36%6|0],i=t[n/6%6|0],a=t[n%6];e.push({css:J3.toCss(r,i,a),rgba:J3.toRgba(r,i,a)})}for(let t=0;t<24;t++){let n=8+t*10;e.push({css:J3.toCss(n,n,n),rgba:J3.toRgba(n,n,n)})}return e})()),C8=X3.toColor(`#ffffff`),w8=X3.toColor(`#000000`),T8=X3.toColor(`#ffffff`),E8=w8,D8={css:`rgba(255, 255, 255, 0.3)`,rgba:4294967117},O8=C8,k8=class extends s2{constructor(e){super(),this._optionsService=e,this._contrastCache=new x8,this._halfContrastCache=new x8,this._onChangeColors=this._register(new Q),this.onChangeColors=this._onChangeColors.event,this._colors={foreground:C8,background:w8,cursor:T8,cursorAccent:E8,selectionForeground:void 0,selectionBackgroundTransparent:D8,selectionBackgroundOpaque:Y3.blend(w8,D8),selectionInactiveBackgroundTransparent:D8,selectionInactiveBackgroundOpaque:Y3.blend(w8,D8),scrollbarSliderBackground:Y3.opacity(C8,.2),scrollbarSliderHoverBackground:Y3.opacity(C8,.4),scrollbarSliderActiveBackground:Y3.opacity(C8,.5),overviewRulerBorder:C8,ansi:S8.slice(),contrastCache:this._contrastCache,halfContrastCache:this._halfContrastCache},this._updateRestoreColors(),this._setTheme(this._optionsService.rawOptions.theme),this._register(this._optionsService.onSpecificOptionChange(`minimumContrastRatio`,()=>this._contrastCache.clear())),this._register(this._optionsService.onSpecificOptionChange(`theme`,()=>this._setTheme(this._optionsService.rawOptions.theme)))}get colors(){return this._colors}_setTheme(e={}){let t=this._colors;if(t.foreground=A8(e.foreground,C8),t.background=A8(e.background,w8),t.cursor=Y3.blend(t.background,A8(e.cursor,T8)),t.cursorAccent=Y3.blend(t.background,A8(e.cursorAccent,E8)),t.selectionBackgroundTransparent=A8(e.selectionBackground,D8),t.selectionBackgroundOpaque=Y3.blend(t.background,t.selectionBackgroundTransparent),t.selectionInactiveBackgroundTransparent=A8(e.selectionInactiveBackground,t.selectionBackgroundTransparent),t.selectionInactiveBackgroundOpaque=Y3.blend(t.background,t.selectionInactiveBackgroundTransparent),t.selectionForeground=e.selectionForeground?A8(e.selectionForeground,q3):void 0,t.selectionForeground===q3&&(t.selectionForeground=void 0),Y3.isOpaque(t.selectionBackgroundTransparent)&&(t.selectionBackgroundTransparent=Y3.opacity(t.selectionBackgroundTransparent,.3)),Y3.isOpaque(t.selectionInactiveBackgroundTransparent)&&(t.selectionInactiveBackgroundTransparent=Y3.opacity(t.selectionInactiveBackgroundTransparent,.3)),t.scrollbarSliderBackground=A8(e.scrollbarSliderBackground,Y3.opacity(t.foreground,.2)),t.scrollbarSliderHoverBackground=A8(e.scrollbarSliderHoverBackground,Y3.opacity(t.foreground,.4)),t.scrollbarSliderActiveBackground=A8(e.scrollbarSliderActiveBackground,Y3.opacity(t.foreground,.5)),t.overviewRulerBorder=A8(e.overviewRulerBorder,O8),t.ansi=S8.slice(),t.ansi[0]=A8(e.black,S8[0]),t.ansi[1]=A8(e.red,S8[1]),t.ansi[2]=A8(e.green,S8[2]),t.ansi[3]=A8(e.yellow,S8[3]),t.ansi[4]=A8(e.blue,S8[4]),t.ansi[5]=A8(e.magenta,S8[5]),t.ansi[6]=A8(e.cyan,S8[6]),t.ansi[7]=A8(e.white,S8[7]),t.ansi[8]=A8(e.brightBlack,S8[8]),t.ansi[9]=A8(e.brightRed,S8[9]),t.ansi[10]=A8(e.brightGreen,S8[10]),t.ansi[11]=A8(e.brightYellow,S8[11]),t.ansi[12]=A8(e.brightBlue,S8[12]),t.ansi[13]=A8(e.brightMagenta,S8[13]),t.ansi[14]=A8(e.brightCyan,S8[14]),t.ansi[15]=A8(e.brightWhite,S8[15]),e.extendedAnsi){let n=Math.min(t.ansi.length-16,e.extendedAnsi.length);for(let r=0;r<n;r++)t.ansi[r+16]=A8(e.extendedAnsi[r],S8[r+16])}this._contrastCache.clear(),this._halfContrastCache.clear(),this._updateRestoreColors(),this._onChangeColors.fire(this.colors)}restoreColor(e){this._restoreColor(e),this._onChangeColors.fire(this.colors)}_restoreColor(e){if(e===void 0){for(let e=0;e<this._restoreColors.ansi.length;++e)this._colors.ansi[e]=this._restoreColors.ansi[e];return}switch(e){case 256:this._colors.foreground=this._restoreColors.foreground;break;case 257:this._colors.background=this._restoreColors.background;break;case 258:this._colors.cursor=this._restoreColors.cursor;break;default:this._colors.ansi[e]=this._restoreColors.ansi[e]}}modifyColors(e){e(this._colors),this._onChangeColors.fire(this.colors)}_updateRestoreColors(){this._restoreColors={foreground:this._colors.foreground,background:this._colors.background,cursor:this._colors.cursor,ansi:this._colors.ansi.slice()}}};k8=W1([G1(0,w0)],k8);function A8(e,t){if(e!==void 0)try{return X3.toColor(e)}catch{}return t}var j8=class{constructor(...e){this._entries=new Map;for(let[t,n]of e)this.set(t,n)}set(e,t){let n=this._entries.get(e);return this._entries.set(e,t),n}forEach(e){for(let[t,n]of this._entries.entries())e(t,n)}has(e){return this._entries.has(e)}get(e){return this._entries.get(e)}},M8=class{constructor(){this._services=new j8,this._services.set(S0,this)}setService(e,t){this._services.set(e,t)}getService(e){return this._services.get(e)}createInstance(e,...t){let n=h0(e).sort((e,t)=>e.index-t.index),r=[];for(let t of n){let n=this._services.get(t.id);if(!n)throw Error(`[createInstance] ${e.name} depends on UNKNOWN service ${t.id._id}.`);r.push(n)}let i=n.length>0?n[0].index:t.length;if(t.length!==i)throw Error(`[createInstance] First service dependency of ${e.name} at position ${i+1} conflicts with ${t.length} static arguments`);return new e(...t,...r)}},N8={trace:0,debug:1,info:2,warn:3,error:4,off:5},P8=`xterm.js: `,F8=class extends s2{constructor(e){super(),this._optionsService=e,this._logLevel=5,this._updateLogLevel(),this._register(this._optionsService.onSpecificOptionChange(`logLevel`,()=>this._updateLogLevel())),I8=this}get logLevel(){return this._logLevel}_updateLogLevel(){this._logLevel=N8[this._optionsService.rawOptions.logLevel]}_evalLazyOptionalParams(e){for(let t=0;t<e.length;t++)typeof e[t]==`function`&&(e[t]=e[t]())}_log(e,t,n){this._evalLazyOptionalParams(n),e.call(console,(this._optionsService.options.logger?``:P8)+t,...n)}trace(e,...t){this._logLevel<=0&&this._log(this._optionsService.options.logger?.trace.bind(this._optionsService.options.logger)??console.log,e,t)}debug(e,...t){this._logLevel<=1&&this._log(this._optionsService.options.logger?.debug.bind(this._optionsService.options.logger)??console.log,e,t)}info(e,...t){this._logLevel<=2&&this._log(this._optionsService.options.logger?.info.bind(this._optionsService.options.logger)??console.info,e,t)}warn(e,...t){this._logLevel<=3&&this._log(this._optionsService.options.logger?.warn.bind(this._optionsService.options.logger)??console.warn,e,t)}error(e,...t){this._logLevel<=4&&this._log(this._optionsService.options.logger?.error.bind(this._optionsService.options.logger)??console.error,e,t)}};F8=W1([G1(0,w0)],F8);var I8,L8=class extends s2{constructor(e){super(),this._maxLength=e,this.onDeleteEmitter=this._register(new Q),this.onDelete=this.onDeleteEmitter.event,this.onInsertEmitter=this._register(new Q),this.onInsert=this.onInsertEmitter.event,this.onTrimEmitter=this._register(new Q),this.onTrim=this.onTrimEmitter.event,this._array=Array(this._maxLength),this._startIndex=0,this._length=0}get maxLength(){return this._maxLength}set maxLength(e){if(this._maxLength===e)return;let t=Array(e);for(let n=0;n<Math.min(e,this.length);n++)t[n]=this._array[this._getCyclicIndex(n)];this._array=t,this._maxLength=e,this._startIndex=0}get length(){return this._length}set length(e){if(e>this._length)for(let t=this._length;t<e;t++)this._array[t]=void 0;this._length=e}get(e){return this._array[this._getCyclicIndex(e)]}set(e,t){this._array[this._getCyclicIndex(e)]=t}push(e){this._array[this._getCyclicIndex(this._length)]=e,this._length===this._maxLength?(this._startIndex=++this._startIndex%this._maxLength,this.onTrimEmitter.fire(1)):this._length++}recycle(){if(this._length!==this._maxLength)throw Error(`Can only recycle when the buffer is full`);return this._startIndex=++this._startIndex%this._maxLength,this.onTrimEmitter.fire(1),this._array[this._getCyclicIndex(this._length-1)]}get isFull(){return this._length===this._maxLength}pop(){return this._array[this._getCyclicIndex(this._length---1)]}splice(e,t,...n){if(t){for(let n=e;n<this._length-t;n++)this._array[this._getCyclicIndex(n)]=this._array[this._getCyclicIndex(n+t)];this._length-=t,this.onDeleteEmitter.fire({index:e,amount:t})}for(let t=this._length-1;t>=e;t--)this._array[this._getCyclicIndex(t+n.length)]=this._array[this._getCyclicIndex(t)];for(let t=0;t<n.length;t++)this._array[this._getCyclicIndex(e+t)]=n[t];if(n.length&&this.onInsertEmitter.fire({index:e,amount:n.length}),this._length+n.length>this._maxLength){let e=this._length+n.length-this._maxLength;this._startIndex+=e,this._length=this._maxLength,this.onTrimEmitter.fire(e)}else this._length+=n.length}trimStart(e){e>this._length&&(e=this._length),this._startIndex+=e,this._length-=e,this.onTrimEmitter.fire(e)}shiftElements(e,t,n){if(!(t<=0)){if(e<0||e>=this._length)throw Error(`start argument out of range`);if(e+n<0)throw Error(`Cannot shift elements in list beyond index 0`);if(n>0){for(let r=t-1;r>=0;r--)this.set(e+r+n,this.get(e+r));let r=e+t+n-this._length;if(r>0)for(this._length+=r;this._length>this._maxLength;)this._length--,this._startIndex++,this.onTrimEmitter.fire(1)}else for(let r=0;r<t;r++)this.set(e+r+n,this.get(e+r))}}_getCyclicIndex(e){return(this._startIndex+e)%this._maxLength}},R8=3,z8=Object.freeze(new l0),B8=0,V8=2,H8=class e{constructor(e,t,n=!1){this.isWrapped=n,this._combined={},this._extendedAttrs={},this._data=new Uint32Array(e*R8);let r=t||d0.fromCharData([0,s0,1,0]);for(let t=0;t<e;++t)this.setCell(t,r);this.length=e}get(e){let t=this._data[e*R8+0],n=t&2097151;return[this._data[e*R8+1],t&2097152?this._combined[e]:n?r0(n):``,t>>22,t&2097152?this._combined[e].charCodeAt(this._combined[e].length-1):n]}set(e,t){this._data[e*R8+1]=t[0],t[1].length>1?(this._combined[e]=t[1],this._data[e*R8+0]=e|2097152|t[2]<<22):this._data[e*R8+0]=t[1].charCodeAt(0)|t[2]<<22}getWidth(e){return this._data[e*R8+0]>>22}hasWidth(e){return this._data[e*R8+0]&12582912}getFg(e){return this._data[e*R8+1]}getBg(e){return this._data[e*R8+2]}hasContent(e){return this._data[e*R8+0]&4194303}getCodePoint(e){let t=this._data[e*R8+0];return t&2097152?this._combined[e].charCodeAt(this._combined[e].length-1):t&2097151}isCombined(e){return this._data[e*R8+0]&2097152}getString(e){let t=this._data[e*R8+0];return t&2097152?this._combined[e]:t&2097151?r0(t&2097151):``}isProtected(e){return this._data[e*R8+2]&536870912}loadCell(e,t){return B8=e*R8,t.content=this._data[B8+0],t.fg=this._data[B8+1],t.bg=this._data[B8+2],t.content&2097152&&(t.combinedData=this._combined[e]),t.bg&268435456&&(t.extended=this._extendedAttrs[e]),t}setCell(e,t){t.content&2097152&&(this._combined[e]=t.combinedData),t.bg&268435456&&(this._extendedAttrs[e]=t.extended),this._data[e*R8+0]=t.content,this._data[e*R8+1]=t.fg,this._data[e*R8+2]=t.bg}setCellFromCodepoint(e,t,n,r){r.bg&268435456&&(this._extendedAttrs[e]=r.extended),this._data[e*R8+0]=t|n<<22,this._data[e*R8+1]=r.fg,this._data[e*R8+2]=r.bg}addCodepointToCell(e,t,n){let r=this._data[e*R8+0];r&2097152?this._combined[e]+=r0(t):r&2097151?(this._combined[e]=r0(r&2097151)+r0(t),r&=-2097152,r|=2097152):r=t|1<<22,n&&(r&=-12582913,r|=n<<22),this._data[e*R8+0]=r}insertCells(e,t,n){if(e%=this.length,e&&this.getWidth(e-1)===2&&this.setCellFromCodepoint(e-1,0,1,n),t<this.length-e){let r=new d0;for(let n=this.length-e-t-1;n>=0;--n)this.setCell(e+t+n,this.loadCell(e+n,r));for(let r=0;r<t;++r)this.setCell(e+r,n)}else for(let t=e;t<this.length;++t)this.setCell(t,n);this.getWidth(this.length-1)===2&&this.setCellFromCodepoint(this.length-1,0,1,n)}deleteCells(e,t,n){if(e%=this.length,t<this.length-e){let r=new d0;for(let n=0;n<this.length-e-t;++n)this.setCell(e+n,this.loadCell(e+t+n,r));for(let e=this.length-t;e<this.length;++e)this.setCell(e,n)}else for(let t=e;t<this.length;++t)this.setCell(t,n);e&&this.getWidth(e-1)===2&&this.setCellFromCodepoint(e-1,0,1,n),this.getWidth(e)===0&&!this.hasContent(e)&&this.setCellFromCodepoint(e,0,1,n)}replaceCells(e,t,n,r=!1){if(r){for(e&&this.getWidth(e-1)===2&&!this.isProtected(e-1)&&this.setCellFromCodepoint(e-1,0,1,n),t<this.length&&this.getWidth(t-1)===2&&!this.isProtected(t)&&this.setCellFromCodepoint(t,0,1,n);e<t&&e<this.length;)this.isProtected(e)||this.setCell(e,n),e++;return}for(e&&this.getWidth(e-1)===2&&this.setCellFromCodepoint(e-1,0,1,n),t<this.length&&this.getWidth(t-1)===2&&this.setCellFromCodepoint(t,0,1,n);e<t&&e<this.length;)this.setCell(e++,n)}resize(e,t){if(e===this.length)return this._data.length*4*V8<this._data.buffer.byteLength;let n=e*R8;if(e>this.length){if(this._data.buffer.byteLength>=n*4)this._data=new Uint32Array(this._data.buffer,0,n);else{let e=new Uint32Array(n);e.set(this._data),this._data=e}for(let n=this.length;n<e;++n)this.setCell(n,t)}else{this._data=this._data.subarray(0,n);let t=Object.keys(this._combined);for(let n=0;n<t.length;n++){let r=parseInt(t[n],10);r>=e&&delete this._combined[r]}let r=Object.keys(this._extendedAttrs);for(let t=0;t<r.length;t++){let n=parseInt(r[t],10);n>=e&&delete this._extendedAttrs[n]}}return this.length=e,n*4*V8<this._data.buffer.byteLength}cleanupMemory(){if(this._data.length*4*V8<this._data.buffer.byteLength){let e=new Uint32Array(this._data.length);return e.set(this._data),this._data=e,1}return 0}fill(e,t=!1){if(t){for(let t=0;t<this.length;++t)this.isProtected(t)||this.setCell(t,e);return}this._combined={},this._extendedAttrs={};for(let t=0;t<this.length;++t)this.setCell(t,e)}copyFrom(e){this.length===e.length?this._data.set(e._data):this._data=new Uint32Array(e._data),this.length=e.length,this._combined={};for(let t in e._combined)this._combined[t]=e._combined[t];this._extendedAttrs={};for(let t in e._extendedAttrs)this._extendedAttrs[t]=e._extendedAttrs[t];this.isWrapped=e.isWrapped}clone(){let t=new e(0);t._data=new Uint32Array(this._data),t.length=this.length;for(let e in this._combined)t._combined[e]=this._combined[e];for(let e in this._extendedAttrs)t._extendedAttrs[e]=this._extendedAttrs[e];return t.isWrapped=this.isWrapped,t}getTrimmedLength(){for(let e=this.length-1;e>=0;--e)if(this._data[e*R8+0]&4194303)return e+(this._data[e*R8+0]>>22);return 0}getNoBgTrimmedLength(){for(let e=this.length-1;e>=0;--e)if(this._data[e*R8+0]&4194303||this._data[e*R8+2]&50331648)return e+(this._data[e*R8+0]>>22);return 0}copyCellsFrom(e,t,n,r,i){let a=e._data;if(i)for(let i=r-1;i>=0;i--){for(let e=0;e<R8;e++)this._data[(n+i)*R8+e]=a[(t+i)*R8+e];a[(t+i)*R8+2]&268435456&&(this._extendedAttrs[n+i]=e._extendedAttrs[t+i])}else for(let i=0;i<r;i++){for(let e=0;e<R8;e++)this._data[(n+i)*R8+e]=a[(t+i)*R8+e];a[(t+i)*R8+2]&268435456&&(this._extendedAttrs[n+i]=e._extendedAttrs[t+i])}let o=Object.keys(e._combined);for(let r=0;r<o.length;r++){let i=parseInt(o[r],10);i>=t&&(this._combined[i-t+n]=e._combined[i])}}translateToString(e,t,n,r){t??=0,n??=this.length,e&&(n=Math.min(n,this.getTrimmedLength())),r&&(r.length=0);let i=``;for(;t<n;){let e=this._data[t*R8+0],n=e&2097151,a=e&2097152?this._combined[t]:n?r0(n):c0;if(i+=a,r)for(let e=0;e<a.length;++e)r.push(t);t+=e>>22||1}return r&&r.push(t),i}};function U8(e,t,n,r,i,a){let o=[];for(let s=0;s<e.length-1;s++){let c=s,l=e.get(++c);if(!l.isWrapped)continue;let u=[e.get(s)];for(;c<e.length&&l.isWrapped;)u.push(l),l=e.get(++c);if(!a&&r>=s&&r<c){s+=u.length-1;continue}let d=0,f=q8(u,d,t),p=1,m=0;for(;p<u.length;){let e=q8(u,p,t),r=e-m,a=n-f,o=Math.min(r,a);u[d].copyCellsFrom(u[p],m,f,o,!1),f+=o,f===n&&(d++,f=0),m+=o,m===e&&(p++,m=0),f===0&&d!==0&&u[d-1].getWidth(n-1)===2&&(u[d].copyCellsFrom(u[d-1],n-1,f++,1,!1),u[d-1].setCell(n-1,i))}u[d].replaceCells(f,n,i);let h=0;for(let e=u.length-1;e>0&&(e>d||u[e].getTrimmedLength()===0);e--)h++;h>0&&(o.push(s+u.length-h),o.push(h)),s+=u.length-1}return o}function W8(e,t){let n=[],r=0,i=t[r],a=0;for(let o=0;o<e.length;o++)if(i===o){let n=t[++r];e.onDeleteEmitter.fire({index:o-a,amount:n}),o+=n-1,a+=n,i=t[++r]}else n.push(o);return{layout:n,countRemoved:a}}function G8(e,t){let n=[];for(let r=0;r<t.length;r++)n.push(e.get(t[r]));for(let t=0;t<n.length;t++)e.set(t,n[t]);e.length=t.length}function K8(e,t,n){let r=[],i=e.map((n,r)=>q8(e,r,t)).reduce((e,t)=>e+t),a=0,o=0,s=0;for(;s<i;){if(i-s<n){r.push(i-s);break}a+=n;let c=q8(e,o,t);a>c&&(a-=c,o++);let l=e[o].getWidth(a-1)===2;l&&a--;let u=l?n-1:n;r.push(u),s+=u}return r}function q8(e,t,n){if(t===e.length-1)return e[t].getTrimmedLength();let r=!e[t].hasContent(n-1)&&e[t].getWidth(n-1)===1,i=e[t+1].getWidth(0)===2;return r&&i?n-1:n}var J8=class e{constructor(t){this.line=t,this.isDisposed=!1,this._disposables=[],this._id=e._nextId++,this._onDispose=this.register(new Q),this.onDispose=this._onDispose.event}get id(){return this._id}dispose(){this.isDisposed||(this.isDisposed=!0,this.line=-1,this._onDispose.fire(),n2(this._disposables),this._disposables.length=0)}register(e){return this._disposables.push(e),e}};J8._nextId=1;var Y8=J8,X8={},Z8=X8.B;X8[0]={"`":`◆`,a:`▒`,b:`␉`,c:`␌`,d:`␍`,e:`␊`,f:`°`,g:`±`,h:`␤`,i:`␋`,j:`┘`,k:`┐`,l:`┌`,m:`└`,n:`┼`,o:`⎺`,p:`⎻`,q:`─`,r:`⎼`,s:`⎽`,t:`├`,u:`┤`,v:`┴`,w:`┬`,x:`│`,y:`≤`,z:`≥`,"{":`π`,"|":`≠`,"}":`£`,"~":`·`},X8.A={"#":`£`},X8.B=void 0,X8[4]={"#":`£`,"@":`¾`,"[":`ij`,"\\":`½`,"]":`|`,"{":`¨`,"|":`f`,"}":`¼`,"~":`´`},X8.C=X8[5]={"[":`Ä`,"\\":`Ö`,"]":`Å`,"^":`Ü`,"`":`é`,"{":`ä`,"|":`ö`,"}":`å`,"~":`ü`},X8.R={"#":`£`,"@":`à`,"[":`°`,"\\":`ç`,"]":`§`,"{":`é`,"|":`ù`,"}":`è`,"~":`¨`},X8.Q={"@":`à`,"[":`â`,"\\":`ç`,"]":`ê`,"^":`î`,"`":`ô`,"{":`é`,"|":`ù`,"}":`è`,"~":`û`},X8.K={"@":`§`,"[":`Ä`,"\\":`Ö`,"]":`Ü`,"{":`ä`,"|":`ö`,"}":`ü`,"~":`ß`},X8.Y={"#":`£`,"@":`§`,"[":`°`,"\\":`ç`,"]":`é`,"`":`ù`,"{":`à`,"|":`ò`,"}":`è`,"~":`ì`},X8.E=X8[6]={"@":`Ä`,"[":`Æ`,"\\":`Ø`,"]":`Å`,"^":`Ü`,"`":`ä`,"{":`æ`,"|":`ø`,"}":`å`,"~":`ü`},X8.Z={"#":`£`,"@":`§`,"[":`¡`,"\\":`Ñ`,"]":`¿`,"{":`°`,"|":`ñ`,"}":`ç`},X8.H=X8[7]={"@":`É`,"[":`Ä`,"\\":`Ö`,"]":`Å`,"^":`Ü`,"`":`é`,"{":`ä`,"|":`ö`,"}":`å`,"~":`ü`},X8[`=`]={"#":`ù`,"@":`à`,"[":`é`,"\\":`ç`,"]":`ê`,"^":`î`,_:`è`,"`":`ô`,"{":`ä`,"|":`ö`,"}":`ü`,"~":`û`};var Q8=4294967295,$8=class{constructor(e,t,n){this._hasScrollback=e,this._optionsService=t,this._bufferService=n,this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.tabs={},this.savedY=0,this.savedX=0,this.savedCurAttrData=z8.clone(),this.savedCharset=Z8,this.markers=[],this._nullCell=d0.fromCharData([0,s0,1,0]),this._whitespaceCell=d0.fromCharData([0,c0,1,32]),this._isClearing=!1,this._memoryCleanupQueue=new Y6,this._memoryCleanupPosition=0,this._cols=this._bufferService.cols,this._rows=this._bufferService.rows,this.lines=new L8(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}getNullCell(e){return e?(this._nullCell.fg=e.fg,this._nullCell.bg=e.bg,this._nullCell.extended=e.extended):(this._nullCell.fg=0,this._nullCell.bg=0,this._nullCell.extended=new u0),this._nullCell}getWhitespaceCell(e){return e?(this._whitespaceCell.fg=e.fg,this._whitespaceCell.bg=e.bg,this._whitespaceCell.extended=e.extended):(this._whitespaceCell.fg=0,this._whitespaceCell.bg=0,this._whitespaceCell.extended=new u0),this._whitespaceCell}getBlankLine(e,t){return new H8(this._bufferService.cols,this.getNullCell(e),t)}get hasScrollback(){return this._hasScrollback&&this.lines.maxLength>this._rows}get isCursorInViewport(){let e=this.ybase+this.y-this.ydisp;return e>=0&&e<this._rows}_getCorrectBufferLength(e){if(!this._hasScrollback)return e;let t=e+this._optionsService.rawOptions.scrollback;return t>Q8?Q8:t}fillViewportRows(e){if(this.lines.length===0){e===void 0&&(e=z8);let t=this._rows;for(;t--;)this.lines.push(this.getBlankLine(e))}}clear(){this.ydisp=0,this.ybase=0,this.y=0,this.x=0,this.lines=new L8(this._getCorrectBufferLength(this._rows)),this.scrollTop=0,this.scrollBottom=this._rows-1,this.setupTabStops()}resize(e,t){let n=this.getNullCell(z8),r=0,i=this._getCorrectBufferLength(t);if(i>this.lines.maxLength&&(this.lines.maxLength=i),this.lines.length>0){if(this._cols<e)for(let t=0;t<this.lines.length;t++)r+=+this.lines.get(t).resize(e,n);let a=0;if(this._rows<t)for(let r=this._rows;r<t;r++)this.lines.length<t+this.ybase&&(this._optionsService.rawOptions.windowsMode||this._optionsService.rawOptions.windowsPty.backend!==void 0||this._optionsService.rawOptions.windowsPty.buildNumber!==void 0?this.lines.push(new H8(e,n)):this.ybase>0&&this.lines.length<=this.ybase+this.y+a+1?(this.ybase--,a++,this.ydisp>0&&this.ydisp--):this.lines.push(new H8(e,n)));else for(let e=this._rows;e>t;e--)this.lines.length>t+this.ybase&&(this.lines.length>this.ybase+this.y+1?this.lines.pop():(this.ybase++,this.ydisp++));if(i<this.lines.maxLength){let e=this.lines.length-i;e>0&&(this.lines.trimStart(e),this.ybase=Math.max(this.ybase-e,0),this.ydisp=Math.max(this.ydisp-e,0),this.savedY=Math.max(this.savedY-e,0)),this.lines.maxLength=i}this.x=Math.min(this.x,e-1),this.y=Math.min(this.y,t-1),a&&(this.y+=a),this.savedX=Math.min(this.savedX,e-1),this.scrollTop=0}if(this.scrollBottom=t-1,this._isReflowEnabled&&(this._reflow(e,t),this._cols>e))for(let t=0;t<this.lines.length;t++)r+=+this.lines.get(t).resize(e,n);this._cols=e,this._rows=t,this._memoryCleanupQueue.clear(),r>.1*this.lines.length&&(this._memoryCleanupPosition=0,this._memoryCleanupQueue.enqueue(()=>this._batchedMemoryCleanup()))}_batchedMemoryCleanup(){let e=!0;this._memoryCleanupPosition>=this.lines.length&&(this._memoryCleanupPosition=0,e=!1);let t=0;for(;this._memoryCleanupPosition<this.lines.length;)if(t+=this.lines.get(this._memoryCleanupPosition++).cleanupMemory(),t>100)return!0;return e}get _isReflowEnabled(){let e=this._optionsService.rawOptions.windowsPty;return e&&e.buildNumber?this._hasScrollback&&e.backend===`conpty`&&e.buildNumber>=21376:this._hasScrollback&&!this._optionsService.rawOptions.windowsMode}_reflow(e,t){this._cols!==e&&(e>this._cols?this._reflowLarger(e,t):this._reflowSmaller(e,t))}_reflowLarger(e,t){let n=this._optionsService.rawOptions.reflowCursorLine,r=U8(this.lines,this._cols,e,this.ybase+this.y,this.getNullCell(z8),n);if(r.length>0){let n=W8(this.lines,r);G8(this.lines,n.layout),this._reflowLargerAdjustViewport(e,t,n.countRemoved)}}_reflowLargerAdjustViewport(e,t,n){let r=this.getNullCell(z8),i=n;for(;i-->0;)this.ybase===0?(this.y>0&&this.y--,this.lines.length<t&&this.lines.push(new H8(e,r))):(this.ydisp===this.ybase&&this.ydisp--,this.ybase--);this.savedY=Math.max(this.savedY-n,0)}_reflowSmaller(e,t){let n=this._optionsService.rawOptions.reflowCursorLine,r=this.getNullCell(z8),i=[],a=0;for(let o=this.lines.length-1;o>=0;o--){let s=this.lines.get(o);if(!s||!s.isWrapped&&s.getTrimmedLength()<=e)continue;let c=[s];for(;s.isWrapped&&o>0;)s=this.lines.get(--o),c.unshift(s);if(!n){let e=this.ybase+this.y;if(e>=o&&e<o+c.length)continue}let l=c[c.length-1].getTrimmedLength(),u=K8(c,this._cols,e),d=u.length-c.length,f;f=this.ybase===0&&this.y!==this.lines.length-1?Math.max(0,this.y-this.lines.maxLength+d):Math.max(0,this.lines.length-this.lines.maxLength+d);let p=[];for(let e=0;e<d;e++){let e=this.getBlankLine(z8,!0);p.push(e)}p.length>0&&(i.push({start:o+c.length+a,newLines:p}),a+=p.length),c.push(...p);let m=u.length-1,h=u[m];h===0&&(m--,h=u[m]);let g=c.length-d-1,_=l;for(;g>=0;){let e=Math.min(_,h);if(c[m]===void 0)break;c[m].copyCellsFrom(c[g],_-e,h-e,e,!0),h-=e,h===0&&(m--,h=u[m]),_-=e,_===0&&(g--,_=q8(c,Math.max(g,0),this._cols))}for(let t=0;t<c.length;t++)u[t]<e&&c[t].setCell(u[t],r);let v=d-f;for(;v-->0;)this.ybase===0?this.y<t-1?(this.y++,this.lines.pop()):(this.ybase++,this.ydisp++):this.ybase<Math.min(this.lines.maxLength,this.lines.length+a)-t&&(this.ybase===this.ydisp&&this.ydisp++,this.ybase++);this.savedY=Math.min(this.savedY+d,this.ybase+t-1)}if(i.length>0){let e=[],t=[];for(let e=0;e<this.lines.length;e++)t.push(this.lines.get(e));let n=this.lines.length,r=n-1,o=0,s=i[o];this.lines.length=Math.min(this.lines.maxLength,this.lines.length+a);let c=0;for(let l=Math.min(this.lines.maxLength-1,n+a-1);l>=0;l--)if(s&&s.start>r+c){for(let e=s.newLines.length-1;e>=0;e--)this.lines.set(l--,s.newLines[e]);l++,e.push({index:r+1,amount:s.newLines.length}),c+=s.newLines.length,s=i[++o]}else this.lines.set(l,t[r--]);let l=0;for(let t=e.length-1;t>=0;t--)e[t].index+=l,this.lines.onInsertEmitter.fire(e[t]),l+=e[t].amount;let u=Math.max(0,n+a-this.lines.maxLength);u>0&&this.lines.onTrimEmitter.fire(u)}}translateBufferLineToString(e,t,n=0,r){let i=this.lines.get(e);return i?i.translateToString(t,n,r):``}getWrappedRangeForLine(e){let t=e,n=e;for(;t>0&&this.lines.get(t).isWrapped;)t--;for(;n+1<this.lines.length&&this.lines.get(n+1).isWrapped;)n++;return{first:t,last:n}}setupTabStops(e){for(e==null?(this.tabs={},e=0):this.tabs[e]||(e=this.prevStop(e));e<this._cols;e+=this._optionsService.rawOptions.tabStopWidth)this.tabs[e]=!0}prevStop(e){for(e??=this.x;!this.tabs[--e]&&e>0;);return e>=this._cols?this._cols-1:e<0?0:e}nextStop(e){for(e??=this.x;!this.tabs[++e]&&e<this._cols;);return e>=this._cols?this._cols-1:e<0?0:e}clearMarkers(e){this._isClearing=!0;for(let t=0;t<this.markers.length;t++)this.markers[t].line===e&&(this.markers[t].dispose(),this.markers.splice(t--,1));this._isClearing=!1}clearAllMarkers(){this._isClearing=!0;for(let e=0;e<this.markers.length;e++)this.markers[e].dispose();this.markers.length=0,this._isClearing=!1}addMarker(e){let t=new Y8(e);return this.markers.push(t),t.register(this.lines.onTrim(e=>{t.line-=e,t.line<0&&t.dispose()})),t.register(this.lines.onInsert(e=>{t.line>=e.index&&(t.line+=e.amount)})),t.register(this.lines.onDelete(e=>{t.line>=e.index&&t.line<e.index+e.amount&&t.dispose(),t.line>e.index&&(t.line-=e.amount)})),t.register(t.onDispose(()=>this._removeMarker(t))),t}_removeMarker(e){this._isClearing||this.markers.splice(this.markers.indexOf(e),1)}},e5=class extends s2{constructor(e,t){super(),this._optionsService=e,this._bufferService=t,this._onBufferActivate=this._register(new Q),this.onBufferActivate=this._onBufferActivate.event,this.reset(),this._register(this._optionsService.onSpecificOptionChange(`scrollback`,()=>this.resize(this._bufferService.cols,this._bufferService.rows))),this._register(this._optionsService.onSpecificOptionChange(`tabStopWidth`,()=>this.setupTabStops()))}reset(){this._normal=new $8(!0,this._optionsService,this._bufferService),this._normal.fillViewportRows(),this._alt=new $8(!1,this._optionsService,this._bufferService),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}),this.setupTabStops()}get alt(){return this._alt}get active(){return this._activeBuffer}get normal(){return this._normal}activateNormalBuffer(){this._activeBuffer!==this._normal&&(this._normal.x=this._alt.x,this._normal.y=this._alt.y,this._alt.clearAllMarkers(),this._alt.clear(),this._activeBuffer=this._normal,this._onBufferActivate.fire({activeBuffer:this._normal,inactiveBuffer:this._alt}))}activateAltBuffer(e){this._activeBuffer!==this._alt&&(this._alt.fillViewportRows(e),this._alt.x=this._normal.x,this._alt.y=this._normal.y,this._activeBuffer=this._alt,this._onBufferActivate.fire({activeBuffer:this._alt,inactiveBuffer:this._normal}))}resize(e,t){this._normal.resize(e,t),this._alt.resize(e,t),this.setupTabStops(e)}setupTabStops(e){this._normal.setupTabStops(e),this._alt.setupTabStops(e)}},t5=2,n5=1,r5=class extends s2{constructor(e){super(),this.isUserScrolling=!1,this._onResize=this._register(new Q),this.onResize=this._onResize.event,this._onScroll=this._register(new Q),this.onScroll=this._onScroll.event,this.cols=Math.max(e.rawOptions.cols||0,t5),this.rows=Math.max(e.rawOptions.rows||0,n5),this.buffers=this._register(new e5(e,this)),this._register(this.buffers.onBufferActivate(e=>{this._onScroll.fire(e.activeBuffer.ydisp)}))}get buffer(){return this.buffers.active}resize(e,t){let n=this.cols!==e,r=this.rows!==t;this.cols=e,this.rows=t,this.buffers.resize(e,t),this._onResize.fire({cols:e,rows:t,colsChanged:n,rowsChanged:r})}reset(){this.buffers.reset(),this.isUserScrolling=!1}scroll(e,t=!1){let n=this.buffer,r;r=this._cachedBlankLine,(!r||r.length!==this.cols||r.getFg(0)!==e.fg||r.getBg(0)!==e.bg)&&(r=n.getBlankLine(e,t),this._cachedBlankLine=r),r.isWrapped=t;let i=n.ybase+n.scrollTop,a=n.ybase+n.scrollBottom;if(n.scrollTop===0){let e=n.lines.isFull;a===n.lines.length-1?e?n.lines.recycle().copyFrom(r):n.lines.push(r.clone()):n.lines.splice(a+1,0,r.clone()),e?this.isUserScrolling&&(n.ydisp=Math.max(n.ydisp-1,0)):(n.ybase++,this.isUserScrolling||n.ydisp++)}else{let e=a-i+1;n.lines.shiftElements(i+1,e-1,-1),n.lines.set(a,r.clone())}this.isUserScrolling||(n.ydisp=n.ybase),this._onScroll.fire(n.ydisp)}scrollLines(e,t){let n=this.buffer;if(e<0){if(n.ydisp===0)return;this.isUserScrolling=!0}else e+n.ydisp>=n.ybase&&(this.isUserScrolling=!1);let r=n.ydisp;n.ydisp=Math.max(Math.min(n.ydisp+e,n.ybase),0),r!==n.ydisp&&(t||this._onScroll.fire(n.ydisp))}};r5=W1([G1(0,w0)],r5);var i5={cols:80,rows:24,cursorBlink:!1,cursorStyle:`block`,cursorWidth:1,cursorInactiveStyle:`outline`,customGlyphs:!0,drawBoldTextInBrightColors:!0,documentOverride:null,fastScrollModifier:`alt`,fastScrollSensitivity:5,fontFamily:`monospace`,fontSize:15,fontWeight:`normal`,fontWeightBold:`bold`,ignoreBracketedPasteMode:!1,lineHeight:1,letterSpacing:0,linkHandler:null,logLevel:`info`,logger:null,scrollback:1e3,scrollOnEraseInDisplay:!1,scrollOnUserInput:!0,scrollSensitivity:1,screenReaderMode:!1,smoothScrollDuration:0,macOptionIsMeta:!1,macOptionClickForcesSelection:!1,minimumContrastRatio:1,disableStdin:!1,allowProposedApi:!1,allowTransparency:!1,tabStopWidth:8,theme:{},reflowCursorLine:!1,rescaleOverlappingGlyphs:!1,rightClickSelectsWord:B6,windowOptions:{},windowsMode:!1,windowsPty:{},wordSeparator:` ()[]{}',"\``,altClickMovesCursor:!0,convertEol:!1,termName:`xterm`,cancelEvents:!1,overviewRuler:{}},a5=[`normal`,`bold`,`100`,`200`,`300`,`400`,`500`,`600`,`700`,`800`,`900`],o5=class extends s2{constructor(e){super(),this._onOptionChange=this._register(new Q),this.onOptionChange=this._onOptionChange.event;let t={...i5};for(let n in e)if(n in t)try{let r=e[n];t[n]=this._sanitizeAndValidateOption(n,r)}catch(e){console.error(e)}this.rawOptions=t,this.options={...t},this._setupOptions(),this._register(i2(()=>{this.rawOptions.linkHandler=null,this.rawOptions.documentOverride=null}))}onSpecificOptionChange(e,t){return this.onOptionChange(n=>{n===e&&t(this.rawOptions[e])})}onMultipleOptionChange(e,t){return this.onOptionChange(n=>{e.indexOf(n)!==-1&&t()})}_setupOptions(){let e=e=>{if(!(e in i5))throw Error(`No option with key "${e}"`);return this.rawOptions[e]},t=(e,t)=>{if(!(e in i5))throw Error(`No option with key "${e}"`);t=this._sanitizeAndValidateOption(e,t),this.rawOptions[e]!==t&&(this.rawOptions[e]=t,this._onOptionChange.fire(e))};for(let n in this.rawOptions){let r={get:e.bind(this,n),set:t.bind(this,n)};Object.defineProperty(this.options,n,r)}}_sanitizeAndValidateOption(e,t){switch(e){case`cursorStyle`:if(t||=i5[e],!s5(t))throw Error(`"${t}" is not a valid value for ${e}`);break;case`wordSeparator`:t||=i5[e];break;case`fontWeight`:case`fontWeightBold`:if(typeof t==`number`&&1<=t&&t<=1e3)break;t=a5.includes(t)?t:i5[e];break;case`cursorWidth`:t=Math.floor(t);case`lineHeight`:case`tabStopWidth`:if(t<1)throw Error(`${e} cannot be less than 1, value: ${t}`);break;case`minimumContrastRatio`:t=Math.max(1,Math.min(21,Math.round(t*10)/10));break;case`scrollback`:if(t=Math.min(t,4294967295),t<0)throw Error(`${e} cannot be less than 0, value: ${t}`);break;case`fastScrollSensitivity`:case`scrollSensitivity`:if(t<=0)throw Error(`${e} cannot be less than or equal to 0, value: ${t}`);break;case`rows`:case`cols`:if(!t&&t!==0)throw Error(`${e} must be numeric, value: ${t}`);break;case`windowsPty`:t??={}}return t}};function s5(e){return e===`block`||e===`underline`||e===`bar`}function c5(e,t=5){if(typeof e!=`object`)return e;let n=Array.isArray(e)?[]:{};for(let r in e)n[r]=t<=1?e[r]:e[r]&&c5(e[r],t-1);return n}var l5=Object.freeze({insertMode:!1}),u5=Object.freeze({applicationCursorKeys:!1,applicationKeypad:!1,bracketedPasteMode:!1,cursorBlink:void 0,cursorStyle:void 0,origin:!1,reverseWraparound:!1,sendFocus:!1,synchronizedOutput:!1,wraparound:!0}),d5=class extends s2{constructor(e,t,n){super(),this._bufferService=e,this._logService=t,this._optionsService=n,this.isCursorInitialized=!1,this.isCursorHidden=!1,this._onData=this._register(new Q),this.onData=this._onData.event,this._onUserInput=this._register(new Q),this.onUserInput=this._onUserInput.event,this._onBinary=this._register(new Q),this.onBinary=this._onBinary.event,this._onRequestScrollToBottom=this._register(new Q),this.onRequestScrollToBottom=this._onRequestScrollToBottom.event,this.modes=c5(l5),this.decPrivateModes=c5(u5)}reset(){this.modes=c5(l5),this.decPrivateModes=c5(u5)}triggerDataEvent(e,t=!1){if(this._optionsService.rawOptions.disableStdin)return;let n=this._bufferService.buffer;t&&this._optionsService.rawOptions.scrollOnUserInput&&n.ybase!==n.ydisp&&this._onRequestScrollToBottom.fire(),t&&this._onUserInput.fire(),this._logService.debug(`sending data "${e}"`),this._logService.trace(`sending data (codes)`,()=>e.split(``).map(e=>e.charCodeAt(0))),this._onData.fire(e)}triggerBinaryEvent(e){this._optionsService.rawOptions.disableStdin||(this._logService.debug(`sending binary "${e}"`),this._logService.trace(`sending binary (codes)`,()=>e.split(``).map(e=>e.charCodeAt(0))),this._onBinary.fire(e))}};d5=W1([G1(0,v0),G1(1,C0),G1(2,w0)],d5);var f5={NONE:{events:0,restrict:()=>!1},X10:{events:1,restrict:e=>e.button===4||e.action!==1?!1:(e.ctrl=!1,e.alt=!1,e.shift=!1,!0)},VT200:{events:19,restrict:e=>e.action!==32},DRAG:{events:23,restrict:e=>e.action!==32||e.button!==3},ANY:{events:31,restrict:e=>!0}};function p5(e,t){let n=(e.ctrl?16:0)|(e.shift?4:0)|(e.alt?8:0);return e.button===4?(n|=64,n|=e.action):(n|=e.button&3,e.button&4&&(n|=64),e.button&8&&(n|=128),e.action===32?n|=32:e.action===0&&!t&&(n|=3)),n}var m5=String.fromCharCode,h5={DEFAULT:e=>{let t=[p5(e,!1)+32,e.col+32,e.row+32];return t[0]>255||t[1]>255||t[2]>255?``:`\x1B[M${m5(t[0])}${m5(t[1])}${m5(t[2])}`},SGR:e=>{let t=e.action===0&&e.button!==4?`m`:`M`;return`\x1B[<${p5(e,!0)};${e.col};${e.row}${t}`},SGR_PIXELS:e=>{let t=e.action===0&&e.button!==4?`m`:`M`;return`\x1B[<${p5(e,!0)};${e.x};${e.y}${t}`}},g5=class extends s2{constructor(e,t,n){super(),this._bufferService=e,this._coreService=t,this._optionsService=n,this._protocols={},this._encodings={},this._activeProtocol=``,this._activeEncoding=``,this._lastEvent=null,this._wheelPartialScroll=0,this._onProtocolChange=this._register(new Q),this.onProtocolChange=this._onProtocolChange.event;for(let e of Object.keys(f5))this.addProtocol(e,f5[e]);for(let e of Object.keys(h5))this.addEncoding(e,h5[e]);this.reset()}addProtocol(e,t){this._protocols[e]=t}addEncoding(e,t){this._encodings[e]=t}get activeProtocol(){return this._activeProtocol}get areMouseEventsActive(){return this._protocols[this._activeProtocol].events!==0}set activeProtocol(e){if(!this._protocols[e])throw Error(`unknown protocol "${e}"`);this._activeProtocol=e,this._onProtocolChange.fire(this._protocols[e].events)}get activeEncoding(){return this._activeEncoding}set activeEncoding(e){if(!this._encodings[e])throw Error(`unknown encoding "${e}"`);this._activeEncoding=e}reset(){this.activeProtocol=`NONE`,this.activeEncoding=`DEFAULT`,this._lastEvent=null,this._wheelPartialScroll=0}consumeWheelEvent(e,t,n){if(e.deltaY===0||e.shiftKey||t===void 0||n===void 0)return 0;let r=t/n,i=this._applyScrollModifier(e.deltaY,e);return e.deltaMode===WheelEvent.DOM_DELTA_PIXEL?(i/=r+0,Math.abs(e.deltaY)<50&&(i*=.3),this._wheelPartialScroll+=i,i=Math.floor(Math.abs(this._wheelPartialScroll))*(this._wheelPartialScroll>0?1:-1),this._wheelPartialScroll%=1):e.deltaMode===WheelEvent.DOM_DELTA_PAGE&&(i*=this._bufferService.rows),i}_applyScrollModifier(e,t){return t.altKey||t.ctrlKey||t.shiftKey?e*this._optionsService.rawOptions.fastScrollSensitivity*this._optionsService.rawOptions.scrollSensitivity:e*this._optionsService.rawOptions.scrollSensitivity}triggerMouseEvent(e){if(e.col<0||e.col>=this._bufferService.cols||e.row<0||e.row>=this._bufferService.rows||e.button===4&&e.action===32||e.button===3&&e.action!==32||e.button!==4&&(e.action===2||e.action===3)||(e.col++,e.row++,e.action===32&&this._lastEvent&&this._equalEvents(this._lastEvent,e,this._activeEncoding===`SGR_PIXELS`))||!this._protocols[this._activeProtocol].restrict(e))return!1;let t=this._encodings[this._activeEncoding](e);return t&&(this._activeEncoding===`DEFAULT`?this._coreService.triggerBinaryEvent(t):this._coreService.triggerDataEvent(t,!0)),this._lastEvent=e,!0}explainEvents(e){return{down:!!(e&1),up:!!(e&2),drag:!!(e&4),move:!!(e&8),wheel:!!(e&16)}}_equalEvents(e,t,n){if(n){if(e.x!==t.x||e.y!==t.y)return!1}else if(e.col!==t.col||e.row!==t.row)return!1;return e.button===t.button&&e.action===t.action&&e.ctrl===t.ctrl&&e.alt===t.alt&&e.shift===t.shift}};g5=W1([G1(0,v0),G1(1,b0),G1(2,w0)],g5);var _5=[[768,879],[1155,1158],[1160,1161],[1425,1469],[1471,1471],[1473,1474],[1476,1477],[1479,1479],[1536,1539],[1552,1557],[1611,1630],[1648,1648],[1750,1764],[1767,1768],[1770,1773],[1807,1807],[1809,1809],[1840,1866],[1958,1968],[2027,2035],[2305,2306],[2364,2364],[2369,2376],[2381,2381],[2385,2388],[2402,2403],[2433,2433],[2492,2492],[2497,2500],[2509,2509],[2530,2531],[2561,2562],[2620,2620],[2625,2626],[2631,2632],[2635,2637],[2672,2673],[2689,2690],[2748,2748],[2753,2757],[2759,2760],[2765,2765],[2786,2787],[2817,2817],[2876,2876],[2879,2879],[2881,2883],[2893,2893],[2902,2902],[2946,2946],[3008,3008],[3021,3021],[3134,3136],[3142,3144],[3146,3149],[3157,3158],[3260,3260],[3263,3263],[3270,3270],[3276,3277],[3298,3299],[3393,3395],[3405,3405],[3530,3530],[3538,3540],[3542,3542],[3633,3633],[3636,3642],[3655,3662],[3761,3761],[3764,3769],[3771,3772],[3784,3789],[3864,3865],[3893,3893],[3895,3895],[3897,3897],[3953,3966],[3968,3972],[3974,3975],[3984,3991],[3993,4028],[4038,4038],[4141,4144],[4146,4146],[4150,4151],[4153,4153],[4184,4185],[4448,4607],[4959,4959],[5906,5908],[5938,5940],[5970,5971],[6002,6003],[6068,6069],[6071,6077],[6086,6086],[6089,6099],[6109,6109],[6155,6157],[6313,6313],[6432,6434],[6439,6440],[6450,6450],[6457,6459],[6679,6680],[6912,6915],[6964,6964],[6966,6970],[6972,6972],[6978,6978],[7019,7027],[7616,7626],[7678,7679],[8203,8207],[8234,8238],[8288,8291],[8298,8303],[8400,8431],[12330,12335],[12441,12442],[43014,43014],[43019,43019],[43045,43046],[64286,64286],[65024,65039],[65056,65059],[65279,65279],[65529,65531]],v5=[[68097,68099],[68101,68102],[68108,68111],[68152,68154],[68159,68159],[119143,119145],[119155,119170],[119173,119179],[119210,119213],[119362,119364],[917505,917505],[917536,917631],[917760,917999]],y5;function b5(e,t){let n=0,r=t.length-1,i;if(e<t[0][0]||e>t[r][1])return!1;for(;r>=n;)if(i=n+r>>1,e>t[i][1])n=i+1;else if(e<t[i][0])r=i-1;else return!0;return!1}var x5=class{constructor(){if(this.version=`6`,!y5){y5=new Uint8Array(65536),y5.fill(1),y5[0]=0,y5.fill(0,1,32),y5.fill(0,127,160),y5.fill(2,4352,4448),y5[9001]=2,y5[9002]=2,y5.fill(2,11904,42192),y5[12351]=1,y5.fill(2,44032,55204),y5.fill(2,63744,64256),y5.fill(2,65040,65050),y5.fill(2,65072,65136),y5.fill(2,65280,65377),y5.fill(2,65504,65511);for(let e=0;e<_5.length;++e)y5.fill(0,_5[e][0],_5[e][1]+1)}}wcwidth(e){return e<32?0:e<127?1:e<65536?y5[e]:b5(e,v5)?0:e>=131072&&e<=196605||e>=196608&&e<=262141?2:1}charProperties(e,t){let n=this.wcwidth(e),r=n===0&&t!==0;if(r){let e=S5.extractWidth(t);e===0?r=!1:e>n&&(n=e)}return S5.createPropertyValue(0,n,r)}},S5=class e{constructor(){this._providers=Object.create(null),this._active=``,this._onChange=new Q,this.onChange=this._onChange.event;let e=new x5;this.register(e),this._active=e.version,this._activeProvider=e}static extractShouldJoin(e){return!!(e&1)}static extractWidth(e){return e>>1&3}static extractCharKind(e){return e>>3}static createPropertyValue(e,t,n=!1){return(e&16777215)<<3|(t&3)<<1|!!n}dispose(){this._onChange.dispose()}get versions(){return Object.keys(this._providers)}get activeVersion(){return this._active}set activeVersion(e){if(!this._providers[e])throw Error(`unknown Unicode version "${e}"`);this._active=e,this._activeProvider=this._providers[e],this._onChange.fire(e)}register(e){this._providers[e.version]=e}wcwidth(e){return this._activeProvider.wcwidth(e)}getStringCellWidth(t){let n=0,r=0,i=t.length;for(let a=0;a<i;++a){let o=t.charCodeAt(a);if(55296<=o&&o<=56319){if(++a>=i)return n+this.wcwidth(o);let e=t.charCodeAt(a);56320<=e&&e<=57343?o=(o-55296)*1024+e-56320+65536:n+=this.wcwidth(e)}let s=this.charProperties(o,r),c=e.extractWidth(s);e.extractShouldJoin(s)&&(c-=e.extractWidth(r)),n+=c,r=s}return n}charProperties(e,t){return this._activeProvider.charProperties(e,t)}},C5=class{constructor(){this.glevel=0,this._charsets=[]}reset(){this.charset=void 0,this._charsets=[],this.glevel=0}setgLevel(e){this.glevel=e,this.charset=this._charsets[e]}setgCharset(e,t){this._charsets[e]=t,this.glevel===e&&(this.charset=t)}};function w5(e){let t=e.buffer.lines.get(e.buffer.ybase+e.buffer.y-1)?.get(e.cols-1),n=e.buffer.lines.get(e.buffer.ybase+e.buffer.y);n&&t&&(n.isWrapped=t[3]!==0&&t[3]!==32)}var T5=2147483647,E5=256,D5=class e{constructor(e=32,t=32){if(this.maxLength=e,this.maxSubParamsLength=t,t>E5)throw Error(`maxSubParamsLength must not be greater than 256`);this.params=new Int32Array(e),this.length=0,this._subParams=new Int32Array(t),this._subParamsLength=0,this._subParamsIdx=new Uint16Array(e),this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}static fromArray(t){let n=new e;if(!t.length)return n;for(let e=+!!Array.isArray(t[0]);e<t.length;++e){let r=t[e];if(Array.isArray(r))for(let e=0;e<r.length;++e)n.addSubParam(r[e]);else n.addParam(r)}return n}clone(){let t=new e(this.maxLength,this.maxSubParamsLength);return t.params.set(this.params),t.length=this.length,t._subParams.set(this._subParams),t._subParamsLength=this._subParamsLength,t._subParamsIdx.set(this._subParamsIdx),t._rejectDigits=this._rejectDigits,t._rejectSubDigits=this._rejectSubDigits,t._digitIsSub=this._digitIsSub,t}toArray(){let e=[];for(let t=0;t<this.length;++t){e.push(this.params[t]);let n=this._subParamsIdx[t]>>8,r=this._subParamsIdx[t]&255;r-n>0&&e.push(Array.prototype.slice.call(this._subParams,n,r))}return e}reset(){this.length=0,this._subParamsLength=0,this._rejectDigits=!1,this._rejectSubDigits=!1,this._digitIsSub=!1}addParam(e){if(this._digitIsSub=!1,this.length>=this.maxLength){this._rejectDigits=!0;return}if(e<-1)throw Error(`values lesser than -1 are not allowed`);this._subParamsIdx[this.length]=this._subParamsLength<<8|this._subParamsLength,this.params[this.length++]=e>T5?T5:e}addSubParam(e){if(this._digitIsSub=!0,this.length){if(this._rejectDigits||this._subParamsLength>=this.maxSubParamsLength){this._rejectSubDigits=!0;return}if(e<-1)throw Error(`values lesser than -1 are not allowed`);this._subParams[this._subParamsLength++]=e>T5?T5:e,this._subParamsIdx[this.length-1]++}}hasSubParams(e){return(this._subParamsIdx[e]&255)-(this._subParamsIdx[e]>>8)>0}getSubParams(e){let t=this._subParamsIdx[e]>>8,n=this._subParamsIdx[e]&255;return n-t>0?this._subParams.subarray(t,n):null}getSubParamsAll(){let e={};for(let t=0;t<this.length;++t){let n=this._subParamsIdx[t]>>8,r=this._subParamsIdx[t]&255;r-n>0&&(e[t]=this._subParams.slice(n,r))}return e}addDigit(e){let t;if(this._rejectDigits||!(t=this._digitIsSub?this._subParamsLength:this.length)||this._digitIsSub&&this._rejectSubDigits)return;let n=this._digitIsSub?this._subParams:this.params,r=n[t-1];n[t-1]=~r?Math.min(r*10+e,T5):e}},O5=[],k5=class{constructor(){this._state=0,this._active=O5,this._id=-1,this._handlers=Object.create(null),this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}registerHandler(e,t){this._handlers[e]===void 0&&(this._handlers[e]=[]);let n=this._handlers[e];return n.push(t),{dispose:()=>{let e=n.indexOf(t);e!==-1&&n.splice(e,1)}}}clearHandler(e){this._handlers[e]&&delete this._handlers[e]}setHandlerFallback(e){this._handlerFb=e}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=O5}reset(){if(this._state===2)for(let e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].end(!1);this._stack.paused=!1,this._active=O5,this._id=-1,this._state=0}_start(){if(this._active=this._handlers[this._id]||O5,!this._active.length)this._handlerFb(this._id,`START`);else for(let e=this._active.length-1;e>=0;e--)this._active[e].start()}_put(e,t,n){if(!this._active.length)this._handlerFb(this._id,`PUT`,i0(e,t,n));else for(let r=this._active.length-1;r>=0;r--)this._active[r].put(e,t,n)}start(){this.reset(),this._state=1}put(e,t,n){if(this._state!==3){if(this._state===1)for(;t<n;){let n=e[t++];if(n===59){this._state=2,this._start();break}if(n<48||57<n){this._state=3;return}this._id===-1&&(this._id=0),this._id=this._id*10+n-48}this._state===2&&n-t>0&&this._put(e,t,n)}}end(e,t=!0){if(this._state!==0){if(this._state!==3){if(this._state===1&&this._start(),!this._active.length)this._handlerFb(this._id,`END`,e);else{let n=!1,r=this._active.length-1,i=!1;if(this._stack.paused&&(r=this._stack.loopPosition-1,n=t,i=this._stack.fallThrough,this._stack.paused=!1),!i&&n===!1){for(;r>=0&&(n=this._active[r].end(e),n!==!0);r--)if(n instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=r,this._stack.fallThrough=!1,n;r--}for(;r>=0;r--)if(n=this._active[r].end(!1),n instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=r,this._stack.fallThrough=!0,n}}this._active=O5,this._id=-1,this._state=0}}},A5=class{constructor(e){this._handler=e,this._data=``,this._hitLimit=!1}start(){this._data=``,this._hitLimit=!1}put(e,t,n){this._hitLimit||(this._data+=i0(e,t,n),this._data.length>1e7&&(this._data=``,this._hitLimit=!0))}end(e){let t=!1;if(this._hitLimit)t=!1;else if(e&&(t=this._handler(this._data),t instanceof Promise))return t.then(e=>(this._data=``,this._hitLimit=!1,e));return this._data=``,this._hitLimit=!1,t}},j5=[],M5=class{constructor(){this._handlers=Object.create(null),this._active=j5,this._ident=0,this._handlerFb=()=>{},this._stack={paused:!1,loopPosition:0,fallThrough:!1}}dispose(){this._handlers=Object.create(null),this._handlerFb=()=>{},this._active=j5}registerHandler(e,t){this._handlers[e]===void 0&&(this._handlers[e]=[]);let n=this._handlers[e];return n.push(t),{dispose:()=>{let e=n.indexOf(t);e!==-1&&n.splice(e,1)}}}clearHandler(e){this._handlers[e]&&delete this._handlers[e]}setHandlerFallback(e){this._handlerFb=e}reset(){if(this._active.length)for(let e=this._stack.paused?this._stack.loopPosition-1:this._active.length-1;e>=0;--e)this._active[e].unhook(!1);this._stack.paused=!1,this._active=j5,this._ident=0}hook(e,t){if(this.reset(),this._ident=e,this._active=this._handlers[e]||j5,!this._active.length)this._handlerFb(this._ident,`HOOK`,t);else for(let e=this._active.length-1;e>=0;e--)this._active[e].hook(t)}put(e,t,n){if(!this._active.length)this._handlerFb(this._ident,`PUT`,i0(e,t,n));else for(let r=this._active.length-1;r>=0;r--)this._active[r].put(e,t,n)}unhook(e,t=!0){if(!this._active.length)this._handlerFb(this._ident,`UNHOOK`,e);else{let n=!1,r=this._active.length-1,i=!1;if(this._stack.paused&&(r=this._stack.loopPosition-1,n=t,i=this._stack.fallThrough,this._stack.paused=!1),!i&&n===!1){for(;r>=0&&(n=this._active[r].unhook(e),n!==!0);r--)if(n instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=r,this._stack.fallThrough=!1,n;r--}for(;r>=0;r--)if(n=this._active[r].unhook(!1),n instanceof Promise)return this._stack.paused=!0,this._stack.loopPosition=r,this._stack.fallThrough=!0,n}this._active=j5,this._ident=0}},N5=new D5;N5.addParam(0);var P5=class{constructor(e){this._handler=e,this._data=``,this._params=N5,this._hitLimit=!1}hook(e){this._params=e.length>1||e.params[0]?e.clone():N5,this._data=``,this._hitLimit=!1}put(e,t,n){this._hitLimit||(this._data+=i0(e,t,n),this._data.length>1e7&&(this._data=``,this._hitLimit=!0))}unhook(e){let t=!1;if(this._hitLimit)t=!1;else if(e&&(t=this._handler(this._data,this._params),t instanceof Promise))return t.then(e=>(this._params=N5,this._data=``,this._hitLimit=!1,e));return this._params=N5,this._data=``,this._hitLimit=!1,t}},F5=class{constructor(e){this.table=new Uint8Array(e)}setDefault(e,t){this.table.fill(e<<4|t)}add(e,t,n,r){this.table[t<<8|e]=n<<4|r}addMany(e,t,n,r){for(let i=0;i<e.length;i++)this.table[t<<8|e[i]]=n<<4|r}},I5=160,L5=function(){let e=new F5(4095),t=Array.apply(null,Array(256)).map((e,t)=>t),n=(e,n)=>t.slice(e,n),r=n(32,127),i=n(0,24);i.push(25),i.push.apply(i,n(28,32));let a=n(0,14),o;for(o in e.setDefault(1,0),e.addMany(r,0,2,0),a)e.addMany([24,26,153,154],o,3,0),e.addMany(n(128,144),o,3,0),e.addMany(n(144,152),o,3,0),e.add(156,o,0,0),e.add(27,o,11,1),e.add(157,o,4,8),e.addMany([152,158,159],o,0,7),e.add(155,o,11,3),e.add(144,o,11,9);return e.addMany(i,0,3,0),e.addMany(i,1,3,1),e.add(127,1,0,1),e.addMany(i,8,0,8),e.addMany(i,3,3,3),e.add(127,3,0,3),e.addMany(i,4,3,4),e.add(127,4,0,4),e.addMany(i,6,3,6),e.addMany(i,5,3,5),e.add(127,5,0,5),e.addMany(i,2,3,2),e.add(127,2,0,2),e.add(93,1,4,8),e.addMany(r,8,5,8),e.add(127,8,5,8),e.addMany([156,27,24,26,7],8,6,0),e.addMany(n(28,32),8,0,8),e.addMany([88,94,95],1,0,7),e.addMany(r,7,0,7),e.addMany(i,7,0,7),e.add(156,7,0,0),e.add(127,7,0,7),e.add(91,1,11,3),e.addMany(n(64,127),3,7,0),e.addMany(n(48,60),3,8,4),e.addMany([60,61,62,63],3,9,4),e.addMany(n(48,60),4,8,4),e.addMany(n(64,127),4,7,0),e.addMany([60,61,62,63],4,0,6),e.addMany(n(32,64),6,0,6),e.add(127,6,0,6),e.addMany(n(64,127),6,0,0),e.addMany(n(32,48),3,9,5),e.addMany(n(32,48),5,9,5),e.addMany(n(48,64),5,0,6),e.addMany(n(64,127),5,7,0),e.addMany(n(32,48),4,9,5),e.addMany(n(32,48),1,9,2),e.addMany(n(32,48),2,9,2),e.addMany(n(48,127),2,10,0),e.addMany(n(48,80),1,10,0),e.addMany(n(81,88),1,10,0),e.addMany([89,90,92],1,10,0),e.addMany(n(96,127),1,10,0),e.add(80,1,11,9),e.addMany(i,9,0,9),e.add(127,9,0,9),e.addMany(n(28,32),9,0,9),e.addMany(n(32,48),9,9,12),e.addMany(n(48,60),9,8,10),e.addMany([60,61,62,63],9,9,10),e.addMany(i,11,0,11),e.addMany(n(32,128),11,0,11),e.addMany(n(28,32),11,0,11),e.addMany(i,10,0,10),e.add(127,10,0,10),e.addMany(n(28,32),10,0,10),e.addMany(n(48,60),10,8,10),e.addMany([60,61,62,63],10,0,11),e.addMany(n(32,48),10,9,12),e.addMany(i,12,0,12),e.add(127,12,0,12),e.addMany(n(28,32),12,0,12),e.addMany(n(32,48),12,9,12),e.addMany(n(48,64),12,0,11),e.addMany(n(64,127),12,12,13),e.addMany(n(64,127),10,12,13),e.addMany(n(64,127),9,12,13),e.addMany(i,13,13,13),e.addMany(r,13,13,13),e.add(127,13,0,13),e.addMany([27,156,24,26],13,14,0),e.add(I5,0,2,0),e.add(I5,8,5,8),e.add(I5,6,0,6),e.add(I5,11,0,11),e.add(I5,13,13,13),e}(),R5=class extends s2{constructor(e=L5){super(),this._transitions=e,this._parseStack={state:0,handlers:[],handlerPos:0,transition:0,chunkPos:0},this.initialState=0,this.currentState=this.initialState,this._params=new D5,this._params.addParam(0),this._collect=0,this.precedingJoinState=0,this._printHandlerFb=(e,t,n)=>{},this._executeHandlerFb=e=>{},this._csiHandlerFb=(e,t)=>{},this._escHandlerFb=e=>{},this._errorHandlerFb=e=>e,this._printHandler=this._printHandlerFb,this._executeHandlers=Object.create(null),this._csiHandlers=Object.create(null),this._escHandlers=Object.create(null),this._register(i2(()=>{this._csiHandlers=Object.create(null),this._executeHandlers=Object.create(null),this._escHandlers=Object.create(null)})),this._oscParser=this._register(new k5),this._dcsParser=this._register(new M5),this._errorHandler=this._errorHandlerFb,this.registerEscHandler({final:`\\`},()=>!0)}_identifier(e,t=[64,126]){let n=0;if(e.prefix){if(e.prefix.length>1)throw Error(`only one byte as prefix supported`);if(n=e.prefix.charCodeAt(0),n&&60>n||n>63)throw Error(`prefix must be in range 0x3c .. 0x3f`)}if(e.intermediates){if(e.intermediates.length>2)throw Error(`only two bytes as intermediates are supported`);for(let t=0;t<e.intermediates.length;++t){let r=e.intermediates.charCodeAt(t);if(32>r||r>47)throw Error(`intermediate must be in range 0x20 .. 0x2f`);n<<=8,n|=r}}if(e.final.length!==1)throw Error(`final must be a single byte`);let r=e.final.charCodeAt(0);if(t[0]>r||r>t[1])throw Error(`final must be in range ${t[0]} .. ${t[1]}`);return n<<=8,n|=r,n}identToString(e){let t=[];for(;e;)t.push(String.fromCharCode(e&255)),e>>=8;return t.reverse().join(``)}setPrintHandler(e){this._printHandler=e}clearPrintHandler(){this._printHandler=this._printHandlerFb}registerEscHandler(e,t){let n=this._identifier(e,[48,126]);this._escHandlers[n]===void 0&&(this._escHandlers[n]=[]);let r=this._escHandlers[n];return r.push(t),{dispose:()=>{let e=r.indexOf(t);e!==-1&&r.splice(e,1)}}}clearEscHandler(e){this._escHandlers[this._identifier(e,[48,126])]&&delete this._escHandlers[this._identifier(e,[48,126])]}setEscHandlerFallback(e){this._escHandlerFb=e}setExecuteHandler(e,t){this._executeHandlers[e.charCodeAt(0)]=t}clearExecuteHandler(e){this._executeHandlers[e.charCodeAt(0)]&&delete this._executeHandlers[e.charCodeAt(0)]}setExecuteHandlerFallback(e){this._executeHandlerFb=e}registerCsiHandler(e,t){let n=this._identifier(e);this._csiHandlers[n]===void 0&&(this._csiHandlers[n]=[]);let r=this._csiHandlers[n];return r.push(t),{dispose:()=>{let e=r.indexOf(t);e!==-1&&r.splice(e,1)}}}clearCsiHandler(e){this._csiHandlers[this._identifier(e)]&&delete this._csiHandlers[this._identifier(e)]}setCsiHandlerFallback(e){this._csiHandlerFb=e}registerDcsHandler(e,t){return this._dcsParser.registerHandler(this._identifier(e),t)}clearDcsHandler(e){this._dcsParser.clearHandler(this._identifier(e))}setDcsHandlerFallback(e){this._dcsParser.setHandlerFallback(e)}registerOscHandler(e,t){return this._oscParser.registerHandler(e,t)}clearOscHandler(e){this._oscParser.clearHandler(e)}setOscHandlerFallback(e){this._oscParser.setHandlerFallback(e)}setErrorHandler(e){this._errorHandler=e}clearErrorHandler(){this._errorHandler=this._errorHandlerFb}reset(){this.currentState=this.initialState,this._oscParser.reset(),this._dcsParser.reset(),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0,this._parseStack.state!==0&&(this._parseStack.state=2,this._parseStack.handlers=[])}_preserveStack(e,t,n,r,i){this._parseStack.state=e,this._parseStack.handlers=t,this._parseStack.handlerPos=n,this._parseStack.transition=r,this._parseStack.chunkPos=i}parse(e,t,n){let r=0,i=0,a=0,o;if(this._parseStack.state){if(this._parseStack.state===2)this._parseStack.state=0,a=this._parseStack.chunkPos+1;else{if(n===void 0||this._parseStack.state===1)throw this._parseStack.state=1,Error(`improper continuation due to previous async handler, giving up parsing`);let t=this._parseStack.handlers,i=this._parseStack.handlerPos-1;switch(this._parseStack.state){case 3:if(n===!1&&i>-1){for(;i>=0&&(o=t[i](this._params),o!==!0);i--)if(o instanceof Promise)return this._parseStack.handlerPos=i,o}this._parseStack.handlers=[];break;case 4:if(n===!1&&i>-1){for(;i>=0&&(o=t[i](),o!==!0);i--)if(o instanceof Promise)return this._parseStack.handlerPos=i,o}this._parseStack.handlers=[];break;case 6:if(r=e[this._parseStack.chunkPos],o=this._dcsParser.unhook(r!==24&&r!==26,n),o)return o;r===27&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0;break;case 5:if(r=e[this._parseStack.chunkPos],o=this._oscParser.end(r!==24&&r!==26,n),o)return o;r===27&&(this._parseStack.transition|=1),this._params.reset(),this._params.addParam(0),this._collect=0}this._parseStack.state=0,a=this._parseStack.chunkPos+1,this.precedingJoinState=0,this.currentState=this._parseStack.transition&15}}for(let n=a;n<t;++n){switch(r=e[n],i=this._transitions.table[this.currentState<<8|(r<160?r:I5)],i>>4){case 2:for(let i=n+1;;++i){if(i>=t||(r=e[i])<32||r>126&&r<I5){this._printHandler(e,n,i),n=i-1;break}if(++i>=t||(r=e[i])<32||r>126&&r<I5){this._printHandler(e,n,i),n=i-1;break}if(++i>=t||(r=e[i])<32||r>126&&r<I5){this._printHandler(e,n,i),n=i-1;break}if(++i>=t||(r=e[i])<32||r>126&&r<I5){this._printHandler(e,n,i),n=i-1;break}}break;case 3:this._executeHandlers[r]?this._executeHandlers[r]():this._executeHandlerFb(r),this.precedingJoinState=0;break;case 0:break;case 1:if(this._errorHandler({position:n,code:r,currentState:this.currentState,collect:this._collect,params:this._params,abort:!1}).abort)return;break;case 7:let a=this._csiHandlers[this._collect<<8|r],s=a?a.length-1:-1;for(;s>=0&&(o=a[s](this._params),o!==!0);s--)if(o instanceof Promise)return this._preserveStack(3,a,s,i,n),o;s<0&&this._csiHandlerFb(this._collect<<8|r,this._params),this.precedingJoinState=0;break;case 8:do switch(r){case 59:this._params.addParam(0);break;case 58:this._params.addSubParam(-1);break;default:this._params.addDigit(r-48)}while(++n<t&&(r=e[n])>47&&r<60);n--;break;case 9:this._collect<<=8,this._collect|=r;break;case 10:let c=this._escHandlers[this._collect<<8|r],l=c?c.length-1:-1;for(;l>=0&&(o=c[l](),o!==!0);l--)if(o instanceof Promise)return this._preserveStack(4,c,l,i,n),o;l<0&&this._escHandlerFb(this._collect<<8|r),this.precedingJoinState=0;break;case 11:this._params.reset(),this._params.addParam(0),this._collect=0;break;case 12:this._dcsParser.hook(this._collect<<8|r,this._params);break;case 13:for(let i=n+1;;++i)if(i>=t||(r=e[i])===24||r===26||r===27||r>127&&r<I5){this._dcsParser.put(e,n,i),n=i-1;break}break;case 14:if(o=this._dcsParser.unhook(r!==24&&r!==26),o)return this._preserveStack(6,[],0,i,n),o;r===27&&(i|=1),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0;break;case 4:this._oscParser.start();break;case 5:for(let i=n+1;;i++)if(i>=t||(r=e[i])<32||r>127&&r<I5){this._oscParser.put(e,n,i),n=i-1;break}break;case 6:if(o=this._oscParser.end(r!==24&&r!==26),o)return this._preserveStack(5,[],0,i,n),o;r===27&&(i|=1),this._params.reset(),this._params.addParam(0),this._collect=0,this.precedingJoinState=0}this.currentState=i&15}}},z5=/^([\da-f])\/([\da-f])\/([\da-f])$|^([\da-f]{2})\/([\da-f]{2})\/([\da-f]{2})$|^([\da-f]{3})\/([\da-f]{3})\/([\da-f]{3})$|^([\da-f]{4})\/([\da-f]{4})\/([\da-f]{4})$/,B5=/^[\da-f]+$/;function V5(e){if(!e)return;let t=e.toLowerCase();if(t.indexOf(`rgb:`)===0){t=t.slice(4);let e=z5.exec(t);if(e){let t=e[1]?15:e[4]?255:e[7]?4095:65535;return[Math.round(parseInt(e[1]||e[4]||e[7]||e[10],16)/t*255),Math.round(parseInt(e[2]||e[5]||e[8]||e[11],16)/t*255),Math.round(parseInt(e[3]||e[6]||e[9]||e[12],16)/t*255)]}}else if(t.indexOf(`#`)===0&&(t=t.slice(1),B5.exec(t)&&[3,6,9,12].includes(t.length))){let e=t.length/3,n=[0,0,0];for(let r=0;r<3;++r){let i=parseInt(t.slice(e*r,e*r+e),16);n[r]=e===1?i<<4:e===2?i:e===3?i>>4:i>>8}return n}}function H5(e,t){let n=e.toString(16),r=n.length<2?`0`+n:n;switch(t){case 4:return n[0];case 8:return r;case 12:return(r+r).slice(0,3);default:return r+r}}function U5(e,t=16){let[n,r,i]=e;return`rgb:${H5(n,t)}/${H5(r,t)}/${H5(i,t)}`}var W5={"(":0,")":1,"*":2,"+":3,"-":1,".":2},G5=131072,K5=10;function q5(e,t){if(e>24)return t.setWinLines||!1;switch(e){case 1:return!!t.restoreWin;case 2:return!!t.minimizeWin;case 3:return!!t.setWinPosition;case 4:return!!t.setWinSizePixels;case 5:return!!t.raiseWin;case 6:return!!t.lowerWin;case 7:return!!t.refreshWin;case 8:return!!t.setWinSizeChars;case 9:return!!t.maximizeWin;case 10:return!!t.fullscreenWin;case 11:return!!t.getWinState;case 13:return!!t.getWinPosition;case 14:return!!t.getWinSizePixels;case 15:return!!t.getScreenSizePixels;case 16:return!!t.getCellSizePixels;case 18:return!!t.getWinSizeChars;case 19:return!!t.getScreenSizeChars;case 20:return!!t.getIconTitle;case 21:return!!t.getWinTitle;case 22:return!!t.pushTitle;case 23:return!!t.popTitle;case 24:return!!t.setWinLines}return!1}var J5=5e3,Y5=0,X5=class extends s2{constructor(e,t,n,r,i,a,o,s,c=new R5){super(),this._bufferService=e,this._charsetService=t,this._coreService=n,this._logService=r,this._optionsService=i,this._oscLinkService=a,this._coreMouseService=o,this._unicodeService=s,this._parser=c,this._parseBuffer=new Uint32Array(4096),this._stringDecoder=new a0,this._utf8Decoder=new o0,this._windowTitle=``,this._iconName=``,this._windowTitleStack=[],this._iconNameStack=[],this._curAttrData=z8.clone(),this._eraseAttrDataInternal=z8.clone(),this._onRequestBell=this._register(new Q),this.onRequestBell=this._onRequestBell.event,this._onRequestRefreshRows=this._register(new Q),this.onRequestRefreshRows=this._onRequestRefreshRows.event,this._onRequestReset=this._register(new Q),this.onRequestReset=this._onRequestReset.event,this._onRequestSendFocus=this._register(new Q),this.onRequestSendFocus=this._onRequestSendFocus.event,this._onRequestSyncScrollBar=this._register(new Q),this.onRequestSyncScrollBar=this._onRequestSyncScrollBar.event,this._onRequestWindowsOptionsReport=this._register(new Q),this.onRequestWindowsOptionsReport=this._onRequestWindowsOptionsReport.event,this._onA11yChar=this._register(new Q),this.onA11yChar=this._onA11yChar.event,this._onA11yTab=this._register(new Q),this.onA11yTab=this._onA11yTab.event,this._onCursorMove=this._register(new Q),this.onCursorMove=this._onCursorMove.event,this._onLineFeed=this._register(new Q),this.onLineFeed=this._onLineFeed.event,this._onScroll=this._register(new Q),this.onScroll=this._onScroll.event,this._onTitleChange=this._register(new Q),this.onTitleChange=this._onTitleChange.event,this._onColor=this._register(new Q),this.onColor=this._onColor.event,this._parseStack={paused:!1,cursorStartX:0,cursorStartY:0,decodedLength:0,position:0},this._specialColors=[256,257,258],this._register(this._parser),this._dirtyRowTracker=new Z5(this._bufferService),this._activeBuffer=this._bufferService.buffer,this._register(this._bufferService.buffers.onBufferActivate(e=>this._activeBuffer=e.activeBuffer)),this._parser.setCsiHandlerFallback((e,t)=>{this._logService.debug(`Unknown CSI code: `,{identifier:this._parser.identToString(e),params:t.toArray()})}),this._parser.setEscHandlerFallback(e=>{this._logService.debug(`Unknown ESC code: `,{identifier:this._parser.identToString(e)})}),this._parser.setExecuteHandlerFallback(e=>{this._logService.debug(`Unknown EXECUTE code: `,{code:e})}),this._parser.setOscHandlerFallback((e,t,n)=>{this._logService.debug(`Unknown OSC code: `,{identifier:e,action:t,data:n})}),this._parser.setDcsHandlerFallback((e,t,n)=>{t===`HOOK`&&(n=n.toArray()),this._logService.debug(`Unknown DCS code: `,{identifier:this._parser.identToString(e),action:t,payload:n})}),this._parser.setPrintHandler((e,t,n)=>this.print(e,t,n)),this._parser.registerCsiHandler({final:`@`},e=>this.insertChars(e)),this._parser.registerCsiHandler({intermediates:` `,final:`@`},e=>this.scrollLeft(e)),this._parser.registerCsiHandler({final:`A`},e=>this.cursorUp(e)),this._parser.registerCsiHandler({intermediates:` `,final:`A`},e=>this.scrollRight(e)),this._parser.registerCsiHandler({final:`B`},e=>this.cursorDown(e)),this._parser.registerCsiHandler({final:`C`},e=>this.cursorForward(e)),this._parser.registerCsiHandler({final:`D`},e=>this.cursorBackward(e)),this._parser.registerCsiHandler({final:`E`},e=>this.cursorNextLine(e)),this._parser.registerCsiHandler({final:`F`},e=>this.cursorPrecedingLine(e)),this._parser.registerCsiHandler({final:`G`},e=>this.cursorCharAbsolute(e)),this._parser.registerCsiHandler({final:`H`},e=>this.cursorPosition(e)),this._parser.registerCsiHandler({final:`I`},e=>this.cursorForwardTab(e)),this._parser.registerCsiHandler({final:`J`},e=>this.eraseInDisplay(e,!1)),this._parser.registerCsiHandler({prefix:`?`,final:`J`},e=>this.eraseInDisplay(e,!0)),this._parser.registerCsiHandler({final:`K`},e=>this.eraseInLine(e,!1)),this._parser.registerCsiHandler({prefix:`?`,final:`K`},e=>this.eraseInLine(e,!0)),this._parser.registerCsiHandler({final:`L`},e=>this.insertLines(e)),this._parser.registerCsiHandler({final:`M`},e=>this.deleteLines(e)),this._parser.registerCsiHandler({final:`P`},e=>this.deleteChars(e)),this._parser.registerCsiHandler({final:`S`},e=>this.scrollUp(e)),this._parser.registerCsiHandler({final:`T`},e=>this.scrollDown(e)),this._parser.registerCsiHandler({final:`X`},e=>this.eraseChars(e)),this._parser.registerCsiHandler({final:`Z`},e=>this.cursorBackwardTab(e)),this._parser.registerCsiHandler({final:"`"},e=>this.charPosAbsolute(e)),this._parser.registerCsiHandler({final:`a`},e=>this.hPositionRelative(e)),this._parser.registerCsiHandler({final:`b`},e=>this.repeatPrecedingCharacter(e)),this._parser.registerCsiHandler({final:`c`},e=>this.sendDeviceAttributesPrimary(e)),this._parser.registerCsiHandler({prefix:`>`,final:`c`},e=>this.sendDeviceAttributesSecondary(e)),this._parser.registerCsiHandler({final:`d`},e=>this.linePosAbsolute(e)),this._parser.registerCsiHandler({final:`e`},e=>this.vPositionRelative(e)),this._parser.registerCsiHandler({final:`f`},e=>this.hVPosition(e)),this._parser.registerCsiHandler({final:`g`},e=>this.tabClear(e)),this._parser.registerCsiHandler({final:`h`},e=>this.setMode(e)),this._parser.registerCsiHandler({prefix:`?`,final:`h`},e=>this.setModePrivate(e)),this._parser.registerCsiHandler({final:`l`},e=>this.resetMode(e)),this._parser.registerCsiHandler({prefix:`?`,final:`l`},e=>this.resetModePrivate(e)),this._parser.registerCsiHandler({final:`m`},e=>this.charAttributes(e)),this._parser.registerCsiHandler({final:`n`},e=>this.deviceStatus(e)),this._parser.registerCsiHandler({prefix:`?`,final:`n`},e=>this.deviceStatusPrivate(e)),this._parser.registerCsiHandler({intermediates:`!`,final:`p`},e=>this.softReset(e)),this._parser.registerCsiHandler({intermediates:` `,final:`q`},e=>this.setCursorStyle(e)),this._parser.registerCsiHandler({final:`r`},e=>this.setScrollRegion(e)),this._parser.registerCsiHandler({final:`s`},e=>this.saveCursor(e)),this._parser.registerCsiHandler({final:`t`},e=>this.windowOptions(e)),this._parser.registerCsiHandler({final:`u`},e=>this.restoreCursor(e)),this._parser.registerCsiHandler({intermediates:`'`,final:`}`},e=>this.insertColumns(e)),this._parser.registerCsiHandler({intermediates:`'`,final:`~`},e=>this.deleteColumns(e)),this._parser.registerCsiHandler({intermediates:`"`,final:`q`},e=>this.selectProtected(e)),this._parser.registerCsiHandler({intermediates:`$`,final:`p`},e=>this.requestMode(e,!0)),this._parser.registerCsiHandler({prefix:`?`,intermediates:`$`,final:`p`},e=>this.requestMode(e,!1)),this._parser.setExecuteHandler($.BEL,()=>this.bell()),this._parser.setExecuteHandler($.LF,()=>this.lineFeed()),this._parser.setExecuteHandler($.VT,()=>this.lineFeed()),this._parser.setExecuteHandler($.FF,()=>this.lineFeed()),this._parser.setExecuteHandler($.CR,()=>this.carriageReturn()),this._parser.setExecuteHandler($.BS,()=>this.backspace()),this._parser.setExecuteHandler($.HT,()=>this.tab()),this._parser.setExecuteHandler($.SO,()=>this.shiftOut()),this._parser.setExecuteHandler($.SI,()=>this.shiftIn()),this._parser.setExecuteHandler(B3.IND,()=>this.index()),this._parser.setExecuteHandler(B3.NEL,()=>this.nextLine()),this._parser.setExecuteHandler(B3.HTS,()=>this.tabSet()),this._parser.registerOscHandler(0,new A5(e=>(this.setTitle(e),this.setIconName(e),!0))),this._parser.registerOscHandler(1,new A5(e=>this.setIconName(e))),this._parser.registerOscHandler(2,new A5(e=>this.setTitle(e))),this._parser.registerOscHandler(4,new A5(e=>this.setOrReportIndexedColor(e))),this._parser.registerOscHandler(8,new A5(e=>this.setHyperlink(e))),this._parser.registerOscHandler(10,new A5(e=>this.setOrReportFgColor(e))),this._parser.registerOscHandler(11,new A5(e=>this.setOrReportBgColor(e))),this._parser.registerOscHandler(12,new A5(e=>this.setOrReportCursorColor(e))),this._parser.registerOscHandler(104,new A5(e=>this.restoreIndexedColor(e))),this._parser.registerOscHandler(110,new A5(e=>this.restoreFgColor(e))),this._parser.registerOscHandler(111,new A5(e=>this.restoreBgColor(e))),this._parser.registerOscHandler(112,new A5(e=>this.restoreCursorColor(e))),this._parser.registerEscHandler({final:`7`},()=>this.saveCursor()),this._parser.registerEscHandler({final:`8`},()=>this.restoreCursor()),this._parser.registerEscHandler({final:`D`},()=>this.index()),this._parser.registerEscHandler({final:`E`},()=>this.nextLine()),this._parser.registerEscHandler({final:`H`},()=>this.tabSet()),this._parser.registerEscHandler({final:`M`},()=>this.reverseIndex()),this._parser.registerEscHandler({final:`=`},()=>this.keypadApplicationMode()),this._parser.registerEscHandler({final:`>`},()=>this.keypadNumericMode()),this._parser.registerEscHandler({final:`c`},()=>this.fullReset()),this._parser.registerEscHandler({final:`n`},()=>this.setgLevel(2)),this._parser.registerEscHandler({final:`o`},()=>this.setgLevel(3)),this._parser.registerEscHandler({final:`|`},()=>this.setgLevel(3)),this._parser.registerEscHandler({final:`}`},()=>this.setgLevel(2)),this._parser.registerEscHandler({final:`~`},()=>this.setgLevel(1)),this._parser.registerEscHandler({intermediates:`%`,final:`@`},()=>this.selectDefaultCharset()),this._parser.registerEscHandler({intermediates:`%`,final:`G`},()=>this.selectDefaultCharset());for(let e in X8)this._parser.registerEscHandler({intermediates:`(`,final:e},()=>this.selectCharset(`(`+e)),this._parser.registerEscHandler({intermediates:`)`,final:e},()=>this.selectCharset(`)`+e)),this._parser.registerEscHandler({intermediates:`*`,final:e},()=>this.selectCharset(`*`+e)),this._parser.registerEscHandler({intermediates:`+`,final:e},()=>this.selectCharset(`+`+e)),this._parser.registerEscHandler({intermediates:`-`,final:e},()=>this.selectCharset(`-`+e)),this._parser.registerEscHandler({intermediates:`.`,final:e},()=>this.selectCharset(`.`+e)),this._parser.registerEscHandler({intermediates:`/`,final:e},()=>this.selectCharset(`/`+e));this._parser.registerEscHandler({intermediates:`#`,final:`8`},()=>this.screenAlignmentPattern()),this._parser.setErrorHandler(e=>(this._logService.error(`Parsing error: `,e),e)),this._parser.registerDcsHandler({intermediates:`$`,final:`q`},new P5((e,t)=>this.requestStatusString(e,t)))}getAttrData(){return this._curAttrData}_preserveStack(e,t,n,r){this._parseStack.paused=!0,this._parseStack.cursorStartX=e,this._parseStack.cursorStartY=t,this._parseStack.decodedLength=n,this._parseStack.position=r}_logSlowResolvingAsync(e){this._logService.logLevel<=3&&Promise.race([e,new Promise((e,t)=>setTimeout(()=>t(`#SLOW_TIMEOUT`),J5))]).catch(e=>{if(e!==`#SLOW_TIMEOUT`)throw e;console.warn(`async parser handler taking longer than ${J5} ms`)})}_getCurrentLinkId(){return this._curAttrData.extended.urlId}parse(e,t){let n,r=this._activeBuffer.x,i=this._activeBuffer.y,a=0,o=this._parseStack.paused;if(o){if(n=this._parser.parse(this._parseBuffer,this._parseStack.decodedLength,t))return this._logSlowResolvingAsync(n),n;r=this._parseStack.cursorStartX,i=this._parseStack.cursorStartY,this._parseStack.paused=!1,e.length>G5&&(a=this._parseStack.position+G5)}if(this._logService.logLevel<=1&&this._logService.debug(`parsing data ${typeof e==`string`?` "${e}"`:` "${Array.prototype.map.call(e,e=>String.fromCharCode(e)).join(``)}"`}`),this._logService.logLevel===0&&this._logService.trace(`parsing data (codes)`,typeof e==`string`?e.split(``).map(e=>e.charCodeAt(0)):e),this._parseBuffer.length<e.length&&this._parseBuffer.length<G5&&(this._parseBuffer=new Uint32Array(Math.min(e.length,G5))),o||this._dirtyRowTracker.clearRange(),e.length>G5)for(let t=a;t<e.length;t+=G5){let a=t+G5<e.length?t+G5:e.length,o=typeof e==`string`?this._stringDecoder.decode(e.substring(t,a),this._parseBuffer):this._utf8Decoder.decode(e.subarray(t,a),this._parseBuffer);if(n=this._parser.parse(this._parseBuffer,o))return this._preserveStack(r,i,o,t),this._logSlowResolvingAsync(n),n}else if(!o){let t=typeof e==`string`?this._stringDecoder.decode(e,this._parseBuffer):this._utf8Decoder.decode(e,this._parseBuffer);if(n=this._parser.parse(this._parseBuffer,t))return this._preserveStack(r,i,t,0),this._logSlowResolvingAsync(n),n}(this._activeBuffer.x!==r||this._activeBuffer.y!==i)&&this._onCursorMove.fire();let s=this._dirtyRowTracker.end+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp),c=this._dirtyRowTracker.start+(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp);c<this._bufferService.rows&&this._onRequestRefreshRows.fire({start:Math.min(c,this._bufferService.rows-1),end:Math.min(s,this._bufferService.rows-1)})}print(e,t,n){let r,i,a=this._charsetService.charset,o=this._optionsService.rawOptions.screenReaderMode,s=this._bufferService.cols,c=this._coreService.decPrivateModes.wraparound,l=this._coreService.modes.insertMode,u=this._curAttrData,d=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._activeBuffer.x&&n-t>0&&d.getWidth(this._activeBuffer.x-1)===2&&d.setCellFromCodepoint(this._activeBuffer.x-1,0,1,u);let f=this._parser.precedingJoinState;for(let p=t;p<n;++p){if(r=e[p],r<127&&a){let e=a[String.fromCharCode(r)];e&&(r=e.charCodeAt(0))}let t=this._unicodeService.charProperties(r,f);i=S5.extractWidth(t);let n=S5.extractShouldJoin(t),m=n?S5.extractWidth(f):0;if(f=t,o&&this._onA11yChar.fire(r0(r)),this._getCurrentLinkId()&&this._oscLinkService.addLineToLink(this._getCurrentLinkId(),this._activeBuffer.ybase+this._activeBuffer.y),this._activeBuffer.x+i-m>s){if(c){let e=d,t=this._activeBuffer.x-m;for(this._activeBuffer.x=m,this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData(),!0)):(this._activeBuffer.y>=this._bufferService.rows&&(this._activeBuffer.y=this._bufferService.rows-1),this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!0),d=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y),m>0&&d instanceof H8&&d.copyCellsFrom(e,t,0,m,!1);t<s;)e.setCellFromCodepoint(t++,0,1,u)}else if(this._activeBuffer.x=s-1,i===2)continue}if(n&&this._activeBuffer.x){let e=d.getWidth(this._activeBuffer.x-1)?1:2;d.addCodepointToCell(this._activeBuffer.x-e,r,i);for(let e=i-m;--e>=0;)d.setCellFromCodepoint(this._activeBuffer.x++,0,0,u);continue}if(l&&(d.insertCells(this._activeBuffer.x,i-m,this._activeBuffer.getNullCell(u)),d.getWidth(s-1)===2&&d.setCellFromCodepoint(s-1,0,1,u)),d.setCellFromCodepoint(this._activeBuffer.x++,r,i,u),i>0)for(;--i;)d.setCellFromCodepoint(this._activeBuffer.x++,0,0,u)}this._parser.precedingJoinState=f,this._activeBuffer.x<s&&n-t>0&&d.getWidth(this._activeBuffer.x)===0&&!d.hasContent(this._activeBuffer.x)&&d.setCellFromCodepoint(this._activeBuffer.x,0,1,u),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}registerCsiHandler(e,t){return e.final===`t`&&!e.prefix&&!e.intermediates?this._parser.registerCsiHandler(e,e=>!q5(e.params[0],this._optionsService.rawOptions.windowOptions)||t(e)):this._parser.registerCsiHandler(e,t)}registerDcsHandler(e,t){return this._parser.registerDcsHandler(e,new P5(t))}registerEscHandler(e,t){return this._parser.registerEscHandler(e,t)}registerOscHandler(e,t){return this._parser.registerOscHandler(e,new A5(t))}bell(){return this._onRequestBell.fire(),!0}lineFeed(){return this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._optionsService.rawOptions.convertEol&&(this._activeBuffer.x=0),this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData())):this._activeBuffer.y>=this._bufferService.rows?this._activeBuffer.y=this._bufferService.rows-1:this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.x>=this._bufferService.cols&&this._activeBuffer.x--,this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._onLineFeed.fire(),!0}carriageReturn(){return this._activeBuffer.x=0,!0}backspace(){if(!this._coreService.decPrivateModes.reverseWraparound)return this._restrictCursor(),this._activeBuffer.x>0&&this._activeBuffer.x--,!0;if(this._restrictCursor(this._bufferService.cols),this._activeBuffer.x>0)this._activeBuffer.x--;else if(this._activeBuffer.x===0&&this._activeBuffer.y>this._activeBuffer.scrollTop&&this._activeBuffer.y<=this._activeBuffer.scrollBottom&&this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y)?.isWrapped){this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).isWrapped=!1,this._activeBuffer.y--,this._activeBuffer.x=this._bufferService.cols-1;let e=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);e.hasWidth(this._activeBuffer.x)&&!e.hasContent(this._activeBuffer.x)&&this._activeBuffer.x--}return this._restrictCursor(),!0}tab(){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let e=this._activeBuffer.x;return this._activeBuffer.x=this._activeBuffer.nextStop(),this._optionsService.rawOptions.screenReaderMode&&this._onA11yTab.fire(this._activeBuffer.x-e),!0}shiftOut(){return this._charsetService.setgLevel(1),!0}shiftIn(){return this._charsetService.setgLevel(0),!0}_restrictCursor(e=this._bufferService.cols-1){this._activeBuffer.x=Math.min(e,Math.max(0,this._activeBuffer.x)),this._activeBuffer.y=this._coreService.decPrivateModes.origin?Math.min(this._activeBuffer.scrollBottom,Math.max(this._activeBuffer.scrollTop,this._activeBuffer.y)):Math.min(this._bufferService.rows-1,Math.max(0,this._activeBuffer.y)),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_setCursor(e,t){this._dirtyRowTracker.markDirty(this._activeBuffer.y),this._coreService.decPrivateModes.origin?(this._activeBuffer.x=e,this._activeBuffer.y=this._activeBuffer.scrollTop+t):(this._activeBuffer.x=e,this._activeBuffer.y=t),this._restrictCursor(),this._dirtyRowTracker.markDirty(this._activeBuffer.y)}_moveCursor(e,t){this._restrictCursor(),this._setCursor(this._activeBuffer.x+e,this._activeBuffer.y+t)}cursorUp(e){let t=this._activeBuffer.y-this._activeBuffer.scrollTop;return t>=0?this._moveCursor(0,-Math.min(t,e.params[0]||1)):this._moveCursor(0,-(e.params[0]||1)),!0}cursorDown(e){let t=this._activeBuffer.scrollBottom-this._activeBuffer.y;return t>=0?this._moveCursor(0,Math.min(t,e.params[0]||1)):this._moveCursor(0,e.params[0]||1),!0}cursorForward(e){return this._moveCursor(e.params[0]||1,0),!0}cursorBackward(e){return this._moveCursor(-(e.params[0]||1),0),!0}cursorNextLine(e){return this.cursorDown(e),this._activeBuffer.x=0,!0}cursorPrecedingLine(e){return this.cursorUp(e),this._activeBuffer.x=0,!0}cursorCharAbsolute(e){return this._setCursor((e.params[0]||1)-1,this._activeBuffer.y),!0}cursorPosition(e){return this._setCursor(e.length>=2?(e.params[1]||1)-1:0,(e.params[0]||1)-1),!0}charPosAbsolute(e){return this._setCursor((e.params[0]||1)-1,this._activeBuffer.y),!0}hPositionRelative(e){return this._moveCursor(e.params[0]||1,0),!0}linePosAbsolute(e){return this._setCursor(this._activeBuffer.x,(e.params[0]||1)-1),!0}vPositionRelative(e){return this._moveCursor(0,e.params[0]||1),!0}hVPosition(e){return this.cursorPosition(e),!0}tabClear(e){let t=e.params[0];return t===0?delete this._activeBuffer.tabs[this._activeBuffer.x]:t===3&&(this._activeBuffer.tabs={}),!0}cursorForwardTab(e){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let t=e.params[0]||1;for(;t--;)this._activeBuffer.x=this._activeBuffer.nextStop();return!0}cursorBackwardTab(e){if(this._activeBuffer.x>=this._bufferService.cols)return!0;let t=e.params[0]||1;for(;t--;)this._activeBuffer.x=this._activeBuffer.prevStop();return!0}selectProtected(e){let t=e.params[0];return t===1&&(this._curAttrData.bg|=536870912),(t===2||t===0)&&(this._curAttrData.bg&=-536870913),!0}_eraseInBufferLine(e,t,n,r=!1,i=!1){let a=this._activeBuffer.lines.get(this._activeBuffer.ybase+e);a.replaceCells(t,n,this._activeBuffer.getNullCell(this._eraseAttrData()),i),r&&(a.isWrapped=!1)}_resetBufferLine(e,t=!1){let n=this._activeBuffer.lines.get(this._activeBuffer.ybase+e);n&&(n.fill(this._activeBuffer.getNullCell(this._eraseAttrData()),t),this._bufferService.buffer.clearMarkers(this._activeBuffer.ybase+e),n.isWrapped=!1)}eraseInDisplay(e,t=!1){this._restrictCursor(this._bufferService.cols);let n;switch(e.params[0]){case 0:for(n=this._activeBuffer.y,this._dirtyRowTracker.markDirty(n),this._eraseInBufferLine(n++,this._activeBuffer.x,this._bufferService.cols,this._activeBuffer.x===0,t);n<this._bufferService.rows;n++)this._resetBufferLine(n,t);this._dirtyRowTracker.markDirty(n);break;case 1:for(n=this._activeBuffer.y,this._dirtyRowTracker.markDirty(n),this._eraseInBufferLine(n,0,this._activeBuffer.x+1,!0,t),this._activeBuffer.x+1>=this._bufferService.cols&&(this._activeBuffer.lines.get(n+1).isWrapped=!1);n--;)this._resetBufferLine(n,t);this._dirtyRowTracker.markDirty(0);break;case 2:if(this._optionsService.rawOptions.scrollOnEraseInDisplay){for(n=this._bufferService.rows,this._dirtyRowTracker.markRangeDirty(0,n-1);n--&&!this._activeBuffer.lines.get(this._activeBuffer.ybase+n)?.getTrimmedLength(););for(;n>=0;n--)this._bufferService.scroll(this._eraseAttrData())}else{for(n=this._bufferService.rows,this._dirtyRowTracker.markDirty(n-1);n--;)this._resetBufferLine(n,t);this._dirtyRowTracker.markDirty(0)}break;case 3:let e=this._activeBuffer.lines.length-this._bufferService.rows;e>0&&(this._activeBuffer.lines.trimStart(e),this._activeBuffer.ybase=Math.max(this._activeBuffer.ybase-e,0),this._activeBuffer.ydisp=Math.max(this._activeBuffer.ydisp-e,0),this._onScroll.fire(0))}return!0}eraseInLine(e,t=!1){switch(this._restrictCursor(this._bufferService.cols),e.params[0]){case 0:this._eraseInBufferLine(this._activeBuffer.y,this._activeBuffer.x,this._bufferService.cols,this._activeBuffer.x===0,t);break;case 1:this._eraseInBufferLine(this._activeBuffer.y,0,this._activeBuffer.x+1,!1,t);break;case 2:this._eraseInBufferLine(this._activeBuffer.y,0,this._bufferService.cols,!0,t)}return this._dirtyRowTracker.markDirty(this._activeBuffer.y),!0}insertLines(e){this._restrictCursor();let t=e.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let n=this._activeBuffer.ybase+this._activeBuffer.y,r=this._bufferService.rows-1-this._activeBuffer.scrollBottom,i=this._bufferService.rows-1+this._activeBuffer.ybase-r+1;for(;t--;)this._activeBuffer.lines.splice(i-1,1),this._activeBuffer.lines.splice(n,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.y,this._activeBuffer.scrollBottom),this._activeBuffer.x=0,!0}deleteLines(e){this._restrictCursor();let t=e.params[0]||1;if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let n=this._activeBuffer.ybase+this._activeBuffer.y,r;for(r=this._bufferService.rows-1-this._activeBuffer.scrollBottom,r=this._bufferService.rows-1+this._activeBuffer.ybase-r;t--;)this._activeBuffer.lines.splice(n,1),this._activeBuffer.lines.splice(r,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.y,this._activeBuffer.scrollBottom),this._activeBuffer.x=0,!0}insertChars(e){this._restrictCursor();let t=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return t&&(t.insertCells(this._activeBuffer.x,e.params[0]||1,this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}deleteChars(e){this._restrictCursor();let t=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return t&&(t.deleteCells(this._activeBuffer.x,e.params[0]||1,this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}scrollUp(e){let t=e.params[0]||1;for(;t--;)this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollTop,1),this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollBottom,0,this._activeBuffer.getBlankLine(this._eraseAttrData()));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollDown(e){let t=e.params[0]||1;for(;t--;)this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollBottom,1),this._activeBuffer.lines.splice(this._activeBuffer.ybase+this._activeBuffer.scrollTop,0,this._activeBuffer.getBlankLine(z8));return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollLeft(e){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let t=e.params[0]||1;for(let e=this._activeBuffer.scrollTop;e<=this._activeBuffer.scrollBottom;++e){let n=this._activeBuffer.lines.get(this._activeBuffer.ybase+e);n.deleteCells(0,t,this._activeBuffer.getNullCell(this._eraseAttrData())),n.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}scrollRight(e){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let t=e.params[0]||1;for(let e=this._activeBuffer.scrollTop;e<=this._activeBuffer.scrollBottom;++e){let n=this._activeBuffer.lines.get(this._activeBuffer.ybase+e);n.insertCells(0,t,this._activeBuffer.getNullCell(this._eraseAttrData())),n.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}insertColumns(e){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let t=e.params[0]||1;for(let e=this._activeBuffer.scrollTop;e<=this._activeBuffer.scrollBottom;++e){let n=this._activeBuffer.lines.get(this._activeBuffer.ybase+e);n.insertCells(this._activeBuffer.x,t,this._activeBuffer.getNullCell(this._eraseAttrData())),n.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}deleteColumns(e){if(this._activeBuffer.y>this._activeBuffer.scrollBottom||this._activeBuffer.y<this._activeBuffer.scrollTop)return!0;let t=e.params[0]||1;for(let e=this._activeBuffer.scrollTop;e<=this._activeBuffer.scrollBottom;++e){let n=this._activeBuffer.lines.get(this._activeBuffer.ybase+e);n.deleteCells(this._activeBuffer.x,t,this._activeBuffer.getNullCell(this._eraseAttrData())),n.isWrapped=!1}return this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom),!0}eraseChars(e){this._restrictCursor();let t=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y);return t&&(t.replaceCells(this._activeBuffer.x,this._activeBuffer.x+(e.params[0]||1),this._activeBuffer.getNullCell(this._eraseAttrData())),this._dirtyRowTracker.markDirty(this._activeBuffer.y)),!0}repeatPrecedingCharacter(e){let t=this._parser.precedingJoinState;if(!t)return!0;let n=e.params[0]||1,r=S5.extractWidth(t),i=this._activeBuffer.x-r,a=this._activeBuffer.lines.get(this._activeBuffer.ybase+this._activeBuffer.y).getString(i),o=new Uint32Array(a.length*n),s=0;for(let e=0;e<a.length;){let t=a.codePointAt(e)||0;o[s++]=t,e+=t>65535?2:1}let c=s;for(let e=1;e<n;++e)o.copyWithin(c,0,s),c+=s;return this.print(o,0,c),!0}sendDeviceAttributesPrimary(e){return e.params[0]>0||(this._is(`xterm`)||this._is(`rxvt-unicode`)||this._is(`screen`)?this._coreService.triggerDataEvent($.ESC+`[?1;2c`):this._is(`linux`)&&this._coreService.triggerDataEvent($.ESC+`[?6c`)),!0}sendDeviceAttributesSecondary(e){return e.params[0]>0||(this._is(`xterm`)?this._coreService.triggerDataEvent($.ESC+`[>0;276;0c`):this._is(`rxvt-unicode`)?this._coreService.triggerDataEvent($.ESC+`[>85;95;0c`):this._is(`linux`)?this._coreService.triggerDataEvent(e.params[0]+`c`):this._is(`screen`)&&this._coreService.triggerDataEvent($.ESC+`[>83;40003;0c`)),!0}_is(e){return(this._optionsService.rawOptions.termName+``).indexOf(e)===0}setMode(e){for(let t=0;t<e.length;t++)switch(e.params[t]){case 4:this._coreService.modes.insertMode=!0;break;case 20:this._optionsService.options.convertEol=!0;break}return!0}setModePrivate(e){for(let t=0;t<e.length;t++)switch(e.params[t]){case 1:this._coreService.decPrivateModes.applicationCursorKeys=!0;break;case 2:this._charsetService.setgCharset(0,Z8),this._charsetService.setgCharset(1,Z8),this._charsetService.setgCharset(2,Z8),this._charsetService.setgCharset(3,Z8);break;case 3:this._optionsService.rawOptions.windowOptions.setWinLines&&(this._bufferService.resize(132,this._bufferService.rows),this._onRequestReset.fire());break;case 6:this._coreService.decPrivateModes.origin=!0,this._setCursor(0,0);break;case 7:this._coreService.decPrivateModes.wraparound=!0;break;case 12:this._optionsService.options.cursorBlink=!0;break;case 45:this._coreService.decPrivateModes.reverseWraparound=!0;break;case 66:this._logService.debug(`Serial port requested application keypad.`),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire();break;case 9:this._coreMouseService.activeProtocol=`X10`;break;case 1e3:this._coreMouseService.activeProtocol=`VT200`;break;case 1002:this._coreMouseService.activeProtocol=`DRAG`;break;case 1003:this._coreMouseService.activeProtocol=`ANY`;break;case 1004:this._coreService.decPrivateModes.sendFocus=!0,this._onRequestSendFocus.fire();break;case 1005:this._logService.debug(`DECSET 1005 not supported (see #2507)`);break;case 1006:this._coreMouseService.activeEncoding=`SGR`;break;case 1015:this._logService.debug(`DECSET 1015 not supported (see #2507)`);break;case 1016:this._coreMouseService.activeEncoding=`SGR_PIXELS`;break;case 25:this._coreService.isCursorHidden=!1;break;case 1048:this.saveCursor();break;case 1049:this.saveCursor();case 47:case 1047:this._bufferService.buffers.activateAltBuffer(this._eraseAttrData()),this._coreService.isCursorInitialized=!0,this._onRequestRefreshRows.fire(void 0),this._onRequestSyncScrollBar.fire();break;case 2004:this._coreService.decPrivateModes.bracketedPasteMode=!0;break;case 2026:this._coreService.decPrivateModes.synchronizedOutput=!0;break}return!0}resetMode(e){for(let t=0;t<e.length;t++)switch(e.params[t]){case 4:this._coreService.modes.insertMode=!1;break;case 20:this._optionsService.options.convertEol=!1;break}return!0}resetModePrivate(e){for(let t=0;t<e.length;t++)switch(e.params[t]){case 1:this._coreService.decPrivateModes.applicationCursorKeys=!1;break;case 3:this._optionsService.rawOptions.windowOptions.setWinLines&&(this._bufferService.resize(80,this._bufferService.rows),this._onRequestReset.fire());break;case 6:this._coreService.decPrivateModes.origin=!1,this._setCursor(0,0);break;case 7:this._coreService.decPrivateModes.wraparound=!1;break;case 12:this._optionsService.options.cursorBlink=!1;break;case 45:this._coreService.decPrivateModes.reverseWraparound=!1;break;case 66:this._logService.debug(`Switching back to normal keypad.`),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire();break;case 9:case 1e3:case 1002:case 1003:this._coreMouseService.activeProtocol=`NONE`;break;case 1004:this._coreService.decPrivateModes.sendFocus=!1;break;case 1005:this._logService.debug(`DECRST 1005 not supported (see #2507)`);break;case 1006:this._coreMouseService.activeEncoding=`DEFAULT`;break;case 1015:this._logService.debug(`DECRST 1015 not supported (see #2507)`);break;case 1016:this._coreMouseService.activeEncoding=`DEFAULT`;break;case 25:this._coreService.isCursorHidden=!0;break;case 1048:this.restoreCursor();break;case 1049:case 47:case 1047:this._bufferService.buffers.activateNormalBuffer(),e.params[t]===1049&&this.restoreCursor(),this._coreService.isCursorInitialized=!0,this._onRequestRefreshRows.fire(void 0),this._onRequestSyncScrollBar.fire();break;case 2004:this._coreService.decPrivateModes.bracketedPasteMode=!1;break;case 2026:this._coreService.decPrivateModes.synchronizedOutput=!1,this._onRequestRefreshRows.fire(void 0);break}return!0}requestMode(e,t){let n;(e=>(e[e.NOT_RECOGNIZED=0]=`NOT_RECOGNIZED`,e[e.SET=1]=`SET`,e[e.RESET=2]=`RESET`,e[e.PERMANENTLY_SET=3]=`PERMANENTLY_SET`,e[e.PERMANENTLY_RESET=4]=`PERMANENTLY_RESET`))(n||={});let r=this._coreService.decPrivateModes,{activeProtocol:i,activeEncoding:a}=this._coreMouseService,o=this._coreService,{buffers:s,cols:c}=this._bufferService,{active:l,alt:u}=s,d=this._optionsService.rawOptions,f=(e,n)=>(o.triggerDataEvent(`${$.ESC}[${t?``:`?`}${e};${n}$y`),!0),p=e=>e?1:2,m=e.params[0];return t?m===2?f(m,4):m===4?f(m,p(o.modes.insertMode)):m===12?f(m,3):m===20?f(m,p(d.convertEol)):f(m,0):m===1?f(m,p(r.applicationCursorKeys)):m===3?f(m,d.windowOptions.setWinLines?c===80?2:+(c===132):0):m===6?f(m,p(r.origin)):m===7?f(m,p(r.wraparound)):m===8?f(m,3):m===9?f(m,p(i===`X10`)):m===12?f(m,p(d.cursorBlink)):m===25?f(m,p(!o.isCursorHidden)):m===45?f(m,p(r.reverseWraparound)):m===66?f(m,p(r.applicationKeypad)):m===67?f(m,4):m===1e3?f(m,p(i===`VT200`)):m===1002?f(m,p(i===`DRAG`)):m===1003?f(m,p(i===`ANY`)):m===1004?f(m,p(r.sendFocus)):m===1005?f(m,4):m===1006?f(m,p(a===`SGR`)):m===1015?f(m,4):m===1016?f(m,p(a===`SGR_PIXELS`)):m===1048?f(m,1):m===47||m===1047||m===1049?f(m,p(l===u)):m===2004?f(m,p(r.bracketedPasteMode)):m===2026?f(m,p(r.synchronizedOutput)):f(m,0)}_updateAttrColor(e,t,n,r,i){return t===2?(e|=50331648,e&=-16777216,e|=l0.fromColorRGB([n,r,i])):t===5&&(e&=-50331904,e|=33554432|n&255),e}_extractColor(e,t,n){let r=[0,0,-1,0,0,0],i=0,a=0;do{if(r[a+i]=e.params[t+a],e.hasSubParams(t+a)){let n=e.getSubParams(t+a),o=0;do r[1]===5&&(i=1),r[a+o+1+i]=n[o];while(++o<n.length&&o+a+1+i<r.length);break}if(r[1]===5&&a+i>=2||r[1]===2&&a+i>=5)break;r[1]&&(i=1)}while(++a+t<e.length&&a+i<r.length);for(let e=2;e<r.length;++e)r[e]===-1&&(r[e]=0);switch(r[0]){case 38:n.fg=this._updateAttrColor(n.fg,r[1],r[3],r[4],r[5]);break;case 48:n.bg=this._updateAttrColor(n.bg,r[1],r[3],r[4],r[5]);break;case 58:n.extended=n.extended.clone(),n.extended.underlineColor=this._updateAttrColor(n.extended.underlineColor,r[1],r[3],r[4],r[5])}return a}_processUnderline(e,t){t.extended=t.extended.clone(),(!~e||e>5)&&(e=1),t.extended.underlineStyle=e,t.fg|=268435456,e===0&&(t.fg&=-268435457),t.updateExtended()}_processSGR0(e){e.fg=z8.fg,e.bg=z8.bg,e.extended=e.extended.clone(),e.extended.underlineStyle=0,e.extended.underlineColor&=-67108864,e.updateExtended()}charAttributes(e){if(e.length===1&&e.params[0]===0)return this._processSGR0(this._curAttrData),!0;let t=e.length,n,r=this._curAttrData;for(let i=0;i<t;i++)n=e.params[i],n>=30&&n<=37?(r.fg&=-50331904,r.fg|=16777216|n-30):n>=40&&n<=47?(r.bg&=-50331904,r.bg|=16777216|n-40):n>=90&&n<=97?(r.fg&=-50331904,r.fg|=n-90|16777224):n>=100&&n<=107?(r.bg&=-50331904,r.bg|=n-100|16777224):n===0?this._processSGR0(r):n===1?r.fg|=134217728:n===3?r.bg|=67108864:n===4?(r.fg|=268435456,this._processUnderline(e.hasSubParams(i)?e.getSubParams(i)[0]:1,r)):n===5?r.fg|=536870912:n===7?r.fg|=67108864:n===8?r.fg|=1073741824:n===9?r.fg|=2147483648:n===2?r.bg|=134217728:n===21?this._processUnderline(2,r):n===22?(r.fg&=-134217729,r.bg&=-134217729):n===23?r.bg&=-67108865:n===24?(r.fg&=-268435457,this._processUnderline(0,r)):n===25?r.fg&=-536870913:n===27?r.fg&=-67108865:n===28?r.fg&=-1073741825:n===29?r.fg&=2147483647:n===39?(r.fg&=-67108864,r.fg|=z8.fg&16777215):n===49?(r.bg&=-67108864,r.bg|=z8.bg&16777215):n===38||n===48||n===58?i+=this._extractColor(e,i,r):n===53?r.bg|=1073741824:n===55?r.bg&=-1073741825:n===59?(r.extended=r.extended.clone(),r.extended.underlineColor=-1,r.updateExtended()):n===100?(r.fg&=-67108864,r.fg|=z8.fg&16777215,r.bg&=-67108864,r.bg|=z8.bg&16777215):this._logService.debug(`Unknown SGR attribute: %d.`,n);return!0}deviceStatus(e){switch(e.params[0]){case 5:this._coreService.triggerDataEvent(`${$.ESC}[0n`);break;case 6:let e=this._activeBuffer.y+1,t=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${$.ESC}[${e};${t}R`)}return!0}deviceStatusPrivate(e){if(e.params[0]===6){let e=this._activeBuffer.y+1,t=this._activeBuffer.x+1;this._coreService.triggerDataEvent(`${$.ESC}[?${e};${t}R`)}return!0}softReset(e){return this._coreService.isCursorHidden=!1,this._onRequestSyncScrollBar.fire(),this._activeBuffer.scrollTop=0,this._activeBuffer.scrollBottom=this._bufferService.rows-1,this._curAttrData=z8.clone(),this._coreService.reset(),this._charsetService.reset(),this._activeBuffer.savedX=0,this._activeBuffer.savedY=this._activeBuffer.ybase,this._activeBuffer.savedCurAttrData.fg=this._curAttrData.fg,this._activeBuffer.savedCurAttrData.bg=this._curAttrData.bg,this._activeBuffer.savedCharset=this._charsetService.charset,this._coreService.decPrivateModes.origin=!1,!0}setCursorStyle(e){let t=e.length===0?1:e.params[0];if(t===0)this._coreService.decPrivateModes.cursorStyle=void 0,this._coreService.decPrivateModes.cursorBlink=void 0;else{switch(t){case 1:case 2:this._coreService.decPrivateModes.cursorStyle=`block`;break;case 3:case 4:this._coreService.decPrivateModes.cursorStyle=`underline`;break;case 5:case 6:this._coreService.decPrivateModes.cursorStyle=`bar`}let e=t%2==1;this._coreService.decPrivateModes.cursorBlink=e}return!0}setScrollRegion(e){let t=e.params[0]||1,n;return(e.length<2||(n=e.params[1])>this._bufferService.rows||n===0)&&(n=this._bufferService.rows),n>t&&(this._activeBuffer.scrollTop=t-1,this._activeBuffer.scrollBottom=n-1,this._setCursor(0,0)),!0}windowOptions(e){if(!q5(e.params[0],this._optionsService.rawOptions.windowOptions))return!0;let t=e.length>1?e.params[1]:0;switch(e.params[0]){case 14:t!==2&&this._onRequestWindowsOptionsReport.fire(0);break;case 16:this._onRequestWindowsOptionsReport.fire(1);break;case 18:this._bufferService&&this._coreService.triggerDataEvent(`${$.ESC}[8;${this._bufferService.rows};${this._bufferService.cols}t`);break;case 22:(t===0||t===2)&&(this._windowTitleStack.push(this._windowTitle),this._windowTitleStack.length>K5&&this._windowTitleStack.shift()),(t===0||t===1)&&(this._iconNameStack.push(this._iconName),this._iconNameStack.length>K5&&this._iconNameStack.shift());break;case 23:(t===0||t===2)&&this._windowTitleStack.length&&this.setTitle(this._windowTitleStack.pop()),(t===0||t===1)&&this._iconNameStack.length&&this.setIconName(this._iconNameStack.pop())}return!0}saveCursor(e){return this._activeBuffer.savedX=this._activeBuffer.x,this._activeBuffer.savedY=this._activeBuffer.ybase+this._activeBuffer.y,this._activeBuffer.savedCurAttrData.fg=this._curAttrData.fg,this._activeBuffer.savedCurAttrData.bg=this._curAttrData.bg,this._activeBuffer.savedCharset=this._charsetService.charset,!0}restoreCursor(e){return this._activeBuffer.x=this._activeBuffer.savedX||0,this._activeBuffer.y=Math.max(this._activeBuffer.savedY-this._activeBuffer.ybase,0),this._curAttrData.fg=this._activeBuffer.savedCurAttrData.fg,this._curAttrData.bg=this._activeBuffer.savedCurAttrData.bg,this._charsetService.charset=this._savedCharset,this._activeBuffer.savedCharset&&(this._charsetService.charset=this._activeBuffer.savedCharset),this._restrictCursor(),!0}setTitle(e){return this._windowTitle=e,this._onTitleChange.fire(e),!0}setIconName(e){return this._iconName=e,!0}setOrReportIndexedColor(e){let t=[],n=e.split(`;`);for(;n.length>1;){let e=n.shift(),r=n.shift();if(/^\d+$/.exec(e)){let n=parseInt(e);if(Q5(n)){if(r===`?`)t.push({type:0,index:n});else{let e=V5(r);e&&t.push({type:1,index:n,color:e})}}}}return t.length&&this._onColor.fire(t),!0}setHyperlink(e){let t=e.indexOf(`;`);if(t===-1)return!0;let n=e.slice(0,t).trim(),r=e.slice(t+1);return r?this._createHyperlink(n,r):!n.trim()&&this._finishHyperlink()}_createHyperlink(e,t){this._getCurrentLinkId()&&this._finishHyperlink();let n=e.split(`:`),r,i=n.findIndex(e=>e.startsWith(`id=`));return i!==-1&&(r=n[i].slice(3)||void 0),this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=this._oscLinkService.registerLink({id:r,uri:t}),this._curAttrData.updateExtended(),!0}_finishHyperlink(){return this._curAttrData.extended=this._curAttrData.extended.clone(),this._curAttrData.extended.urlId=0,this._curAttrData.updateExtended(),!0}_setOrReportSpecialColor(e,t){let n=e.split(`;`);for(let e=0;e<n.length&&!(t>=this._specialColors.length);++e,++t)if(n[e]===`?`)this._onColor.fire([{type:0,index:this._specialColors[t]}]);else{let r=V5(n[e]);r&&this._onColor.fire([{type:1,index:this._specialColors[t],color:r}])}return!0}setOrReportFgColor(e){return this._setOrReportSpecialColor(e,0)}setOrReportBgColor(e){return this._setOrReportSpecialColor(e,1)}setOrReportCursorColor(e){return this._setOrReportSpecialColor(e,2)}restoreIndexedColor(e){if(!e)return this._onColor.fire([{type:2}]),!0;let t=[],n=e.split(`;`);for(let e=0;e<n.length;++e)if(/^\d+$/.exec(n[e])){let r=parseInt(n[e]);Q5(r)&&t.push({type:2,index:r})}return t.length&&this._onColor.fire(t),!0}restoreFgColor(e){return this._onColor.fire([{type:2,index:256}]),!0}restoreBgColor(e){return this._onColor.fire([{type:2,index:257}]),!0}restoreCursorColor(e){return this._onColor.fire([{type:2,index:258}]),!0}nextLine(){return this._activeBuffer.x=0,this.index(),!0}keypadApplicationMode(){return this._logService.debug(`Serial port requested application keypad.`),this._coreService.decPrivateModes.applicationKeypad=!0,this._onRequestSyncScrollBar.fire(),!0}keypadNumericMode(){return this._logService.debug(`Switching back to normal keypad.`),this._coreService.decPrivateModes.applicationKeypad=!1,this._onRequestSyncScrollBar.fire(),!0}selectDefaultCharset(){return this._charsetService.setgLevel(0),this._charsetService.setgCharset(0,Z8),!0}selectCharset(e){return e.length===2?(e[0]===`/`||this._charsetService.setgCharset(W5[e[0]],X8[e[1]]||Z8),!0):(this.selectDefaultCharset(),!0)}index(){return this._restrictCursor(),this._activeBuffer.y++,this._activeBuffer.y===this._activeBuffer.scrollBottom+1?(this._activeBuffer.y--,this._bufferService.scroll(this._eraseAttrData())):this._activeBuffer.y>=this._bufferService.rows&&(this._activeBuffer.y=this._bufferService.rows-1),this._restrictCursor(),!0}tabSet(){return this._activeBuffer.tabs[this._activeBuffer.x]=!0,!0}reverseIndex(){if(this._restrictCursor(),this._activeBuffer.y===this._activeBuffer.scrollTop){let e=this._activeBuffer.scrollBottom-this._activeBuffer.scrollTop;this._activeBuffer.lines.shiftElements(this._activeBuffer.ybase+this._activeBuffer.y,e,1),this._activeBuffer.lines.set(this._activeBuffer.ybase+this._activeBuffer.y,this._activeBuffer.getBlankLine(this._eraseAttrData())),this._dirtyRowTracker.markRangeDirty(this._activeBuffer.scrollTop,this._activeBuffer.scrollBottom)}else this._activeBuffer.y--,this._restrictCursor();return!0}fullReset(){return this._parser.reset(),this._onRequestReset.fire(),!0}reset(){this._curAttrData=z8.clone(),this._eraseAttrDataInternal=z8.clone()}_eraseAttrData(){return this._eraseAttrDataInternal.bg&=-67108864,this._eraseAttrDataInternal.bg|=this._curAttrData.bg&67108863,this._eraseAttrDataInternal}setgLevel(e){return this._charsetService.setgLevel(e),!0}screenAlignmentPattern(){let e=new d0;e.content=4194373,e.fg=this._curAttrData.fg,e.bg=this._curAttrData.bg,this._setCursor(0,0);for(let t=0;t<this._bufferService.rows;++t){let n=this._activeBuffer.ybase+this._activeBuffer.y+t,r=this._activeBuffer.lines.get(n);r&&(r.fill(e),r.isWrapped=!1)}return this._dirtyRowTracker.markAllDirty(),this._setCursor(0,0),!0}requestStatusString(e,t){let n=e=>(this._coreService.triggerDataEvent(`${$.ESC}${e}${$.ESC}\\`),!0),r=this._bufferService.buffer,i=this._optionsService.rawOptions;return n(e===`"q`?`P1$r${+!!this._curAttrData.isProtected()}"q`:e===`"p`?`P1$r61;1"p`:e===`r`?`P1$r${r.scrollTop+1};${r.scrollBottom+1}r`:e===`m`?`P1$r0m`:e===` q`?`P1$r${{block:2,underline:4,bar:6}[i.cursorStyle]-+!!i.cursorBlink} q`:`P0$r`)}markRangeDirty(e,t){this._dirtyRowTracker.markRangeDirty(e,t)}},Z5=class{constructor(e){this._bufferService=e,this.clearRange()}clearRange(){this.start=this._bufferService.buffer.y,this.end=this._bufferService.buffer.y}markDirty(e){e<this.start?this.start=e:e>this.end&&(this.end=e)}markRangeDirty(e,t){e>t&&(Y5=e,e=t,t=Y5),e<this.start&&(this.start=e),t>this.end&&(this.end=t)}markAllDirty(){this.markRangeDirty(0,this._bufferService.rows-1)}};Z5=W1([G1(0,v0)],Z5);function Q5(e){return 0<=e&&e<256}var $5=5e7,e7=12,t7=50,n7=class extends s2{constructor(e){super(),this._action=e,this._writeBuffer=[],this._callbacks=[],this._pendingData=0,this._bufferOffset=0,this._isSyncWriting=!1,this._syncCalls=0,this._didUserInput=!1,this._onWriteParsed=this._register(new Q),this.onWriteParsed=this._onWriteParsed.event}handleUserInput(){this._didUserInput=!0}writeSync(e,t){if(t!==void 0&&this._syncCalls>t){this._syncCalls=0;return}if(this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(void 0),this._syncCalls++,this._isSyncWriting)return;this._isSyncWriting=!0;let n;for(;n=this._writeBuffer.shift();){this._action(n);let e=this._callbacks.shift();e&&e()}this._pendingData=0,this._bufferOffset=2147483647,this._isSyncWriting=!1,this._syncCalls=0}write(e,t){if(this._pendingData>$5)throw Error(`write data discarded, use flow control to avoid losing data`);if(!this._writeBuffer.length){if(this._bufferOffset=0,this._didUserInput){this._didUserInput=!1,this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(t),this._innerWrite();return}setTimeout(()=>this._innerWrite())}this._pendingData+=e.length,this._writeBuffer.push(e),this._callbacks.push(t)}_innerWrite(e=0,t=!0){let n=e||performance.now();for(;this._writeBuffer.length>this._bufferOffset;){let e=this._writeBuffer[this._bufferOffset],r=this._action(e,t);if(r){r.catch(e=>(queueMicrotask(()=>{throw e}),Promise.resolve(!1))).then(e=>performance.now()-n>=e7?setTimeout(()=>this._innerWrite(0,e)):this._innerWrite(n,e));return}let i=this._callbacks[this._bufferOffset];if(i&&i(),this._bufferOffset++,this._pendingData-=e.length,performance.now()-n>=e7)break}this._writeBuffer.length>this._bufferOffset?(this._bufferOffset>t7&&(this._writeBuffer=this._writeBuffer.slice(this._bufferOffset),this._callbacks=this._callbacks.slice(this._bufferOffset),this._bufferOffset=0),setTimeout(()=>this._innerWrite())):(this._writeBuffer.length=0,this._callbacks.length=0,this._pendingData=0,this._bufferOffset=0),this._onWriteParsed.fire()}},r7=class{constructor(e){this._bufferService=e,this._nextId=1,this._entriesWithId=new Map,this._dataByLinkId=new Map}registerLink(e){let t=this._bufferService.buffer;if(e.id===void 0){let n=t.addMarker(t.ybase+t.y),r={data:e,id:this._nextId++,lines:[n]};return n.onDispose(()=>this._removeMarkerFromLink(r,n)),this._dataByLinkId.set(r.id,r),r.id}let n=e,r=this._getEntryIdKey(n),i=this._entriesWithId.get(r);if(i)return this.addLineToLink(i.id,t.ybase+t.y),i.id;let a=t.addMarker(t.ybase+t.y),o={id:this._nextId++,key:this._getEntryIdKey(n),data:n,lines:[a]};return a.onDispose(()=>this._removeMarkerFromLink(o,a)),this._entriesWithId.set(o.key,o),this._dataByLinkId.set(o.id,o),o.id}addLineToLink(e,t){let n=this._dataByLinkId.get(e);if(n&&n.lines.every(e=>e.line!==t)){let e=this._bufferService.buffer.addMarker(t);n.lines.push(e),e.onDispose(()=>this._removeMarkerFromLink(n,e))}}getLinkData(e){return this._dataByLinkId.get(e)?.data}_getEntryIdKey(e){return`${e.id};;${e.uri}`}_removeMarkerFromLink(e,t){let n=e.lines.indexOf(t);n!==-1&&(e.lines.splice(n,1),e.lines.length===0&&(e.data.id!==void 0&&this._entriesWithId.delete(e.key),this._dataByLinkId.delete(e.id)))}};r7=W1([G1(0,v0)],r7);var i7=!1,a7=class extends s2{constructor(e){super(),this._windowsWrappingHeuristics=this._register(new c2),this._onBinary=this._register(new Q),this.onBinary=this._onBinary.event,this._onData=this._register(new Q),this.onData=this._onData.event,this._onLineFeed=this._register(new Q),this.onLineFeed=this._onLineFeed.event,this._onResize=this._register(new Q),this.onResize=this._onResize.event,this._onWriteParsed=this._register(new Q),this.onWriteParsed=this._onWriteParsed.event,this._onScroll=this._register(new Q),this._instantiationService=new M8,this.optionsService=this._register(new o5(e)),this._instantiationService.setService(w0,this.optionsService),this._bufferService=this._register(this._instantiationService.createInstance(r5)),this._instantiationService.setService(v0,this._bufferService),this._logService=this._register(this._instantiationService.createInstance(F8)),this._instantiationService.setService(C0,this._logService),this.coreService=this._register(this._instantiationService.createInstance(d5)),this._instantiationService.setService(b0,this.coreService),this.coreMouseService=this._register(this._instantiationService.createInstance(g5)),this._instantiationService.setService(y0,this.coreMouseService),this.unicodeService=this._register(this._instantiationService.createInstance(S5)),this._instantiationService.setService(E0,this.unicodeService),this._charsetService=this._instantiationService.createInstance(C5),this._instantiationService.setService(x0,this._charsetService),this._oscLinkService=this._instantiationService.createInstance(r7),this._instantiationService.setService(T0,this._oscLinkService),this._inputHandler=this._register(new X5(this._bufferService,this._charsetService,this.coreService,this._logService,this.optionsService,this._oscLinkService,this.coreMouseService,this.unicodeService)),this._register(h2.forward(this._inputHandler.onLineFeed,this._onLineFeed)),this._register(this._inputHandler),this._register(h2.forward(this._bufferService.onResize,this._onResize)),this._register(h2.forward(this.coreService.onData,this._onData)),this._register(h2.forward(this.coreService.onBinary,this._onBinary)),this._register(this.coreService.onRequestScrollToBottom(()=>this.scrollToBottom(!0))),this._register(this.coreService.onUserInput(()=>this._writeBuffer.handleUserInput())),this._register(this.optionsService.onMultipleOptionChange([`windowsMode`,`windowsPty`],()=>this._handleWindowsPtyOptionChange())),this._register(this._bufferService.onScroll(()=>{this._onScroll.fire({position:this._bufferService.buffer.ydisp}),this._inputHandler.markRangeDirty(this._bufferService.buffer.scrollTop,this._bufferService.buffer.scrollBottom)})),this._writeBuffer=this._register(new n7((e,t)=>this._inputHandler.parse(e,t))),this._register(h2.forward(this._writeBuffer.onWriteParsed,this._onWriteParsed))}get onScroll(){return this._onScrollApi||(this._onScrollApi=this._register(new Q),this._onScroll.event(e=>{this._onScrollApi?.fire(e.position)})),this._onScrollApi.event}get cols(){return this._bufferService.cols}get rows(){return this._bufferService.rows}get buffers(){return this._bufferService.buffers}get options(){return this.optionsService.options}set options(e){for(let t in e)this.optionsService.options[t]=e[t]}write(e,t){this._writeBuffer.write(e,t)}writeSync(e,t){this._logService.logLevel<=3&&!i7&&(this._logService.warn(`writeSync is unreliable and will be removed soon.`),i7=!0),this._writeBuffer.writeSync(e,t)}input(e,t=!0){this.coreService.triggerDataEvent(e,t)}resize(e,t){isNaN(e)||isNaN(t)||(e=Math.max(e,t5),t=Math.max(t,n5),this._bufferService.resize(e,t))}scroll(e,t=!1){this._bufferService.scroll(e,t)}scrollLines(e,t){this._bufferService.scrollLines(e,t)}scrollPages(e){this.scrollLines(e*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(e){this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(e){let t=e-this._bufferService.buffer.ydisp;t!==0&&this.scrollLines(t)}registerEscHandler(e,t){return this._inputHandler.registerEscHandler(e,t)}registerDcsHandler(e,t){return this._inputHandler.registerDcsHandler(e,t)}registerCsiHandler(e,t){return this._inputHandler.registerCsiHandler(e,t)}registerOscHandler(e,t){return this._inputHandler.registerOscHandler(e,t)}_setup(){this._handleWindowsPtyOptionChange()}reset(){this._inputHandler.reset(),this._bufferService.reset(),this._charsetService.reset(),this.coreService.reset(),this.coreMouseService.reset()}_handleWindowsPtyOptionChange(){let e=!1,t=this.optionsService.rawOptions.windowsPty;t&&t.buildNumber!==void 0&&t.buildNumber!==void 0?e=t.backend===`conpty`&&t.buildNumber<21376:this.optionsService.rawOptions.windowsMode&&(e=!0),e?this._enableWindowsWrappingHeuristics():this._windowsWrappingHeuristics.clear()}_enableWindowsWrappingHeuristics(){if(!this._windowsWrappingHeuristics.value){let e=[];e.push(this.onLineFeed(w5.bind(null,this._bufferService))),e.push(this.registerCsiHandler({final:`H`},()=>(w5(this._bufferService),!1))),this._windowsWrappingHeuristics.value=i2(()=>{for(let t of e)t.dispose()})}}},o7={48:[`0`,`)`],49:[`1`,`!`],50:[`2`,`@`],51:[`3`,`#`],52:[`4`,`$`],53:[`5`,`%`],54:[`6`,`^`],55:[`7`,`&`],56:[`8`,`*`],57:[`9`,`(`],186:[`;`,`:`],187:[`=`,`+`],188:[`,`,`<`],189:[`-`,`_`],190:[`.`,`>`],191:[`/`,`?`],192:["`",`~`],219:[`[`,`{`],220:[`\\`,`|`],221:[`]`,`}`],222:[`'`,`"`]};function s7(e,t,n,r){let i={type:0,cancel:!1,key:void 0},a=!!e.shiftKey|(e.altKey?2:0)|(e.ctrlKey?4:0)|(e.metaKey?8:0);switch(e.keyCode){case 0:e.key===`UIKeyInputUpArrow`?i.key=t?$.ESC+`OA`:$.ESC+`[A`:e.key===`UIKeyInputLeftArrow`?i.key=t?$.ESC+`OD`:$.ESC+`[D`:e.key===`UIKeyInputRightArrow`?i.key=t?$.ESC+`OC`:$.ESC+`[C`:e.key===`UIKeyInputDownArrow`&&(i.key=t?$.ESC+`OB`:$.ESC+`[B`);break;case 8:i.key=e.ctrlKey?`\b`:$.DEL,e.altKey&&(i.key=$.ESC+i.key);break;case 9:if(e.shiftKey){i.key=$.ESC+`[Z`;break}i.key=$.HT,i.cancel=!0;break;case 13:i.key=e.altKey?$.ESC+$.CR:$.CR,i.cancel=!0;break;case 27:i.key=$.ESC,e.altKey&&(i.key=$.ESC+$.ESC),i.cancel=!0;break;case 37:if(e.metaKey)break;i.key=a?$.ESC+`[1;`+(a+1)+`D`:t?$.ESC+`OD`:$.ESC+`[D`;break;case 39:if(e.metaKey)break;i.key=a?$.ESC+`[1;`+(a+1)+`C`:t?$.ESC+`OC`:$.ESC+`[C`;break;case 38:if(e.metaKey)break;i.key=a?$.ESC+`[1;`+(a+1)+`A`:t?$.ESC+`OA`:$.ESC+`[A`;break;case 40:if(e.metaKey)break;i.key=a?$.ESC+`[1;`+(a+1)+`B`:t?$.ESC+`OB`:$.ESC+`[B`;break;case 45:!e.shiftKey&&!e.ctrlKey&&(i.key=$.ESC+`[2~`);break;case 46:i.key=a?$.ESC+`[3;`+(a+1)+`~`:$.ESC+`[3~`;break;case 36:i.key=a?$.ESC+`[1;`+(a+1)+`H`:t?$.ESC+`OH`:$.ESC+`[H`;break;case 35:i.key=a?$.ESC+`[1;`+(a+1)+`F`:t?$.ESC+`OF`:$.ESC+`[F`;break;case 33:e.shiftKey?i.type=2:i.key=e.ctrlKey?$.ESC+`[5;`+(a+1)+`~`:$.ESC+`[5~`;break;case 34:e.shiftKey?i.type=3:i.key=e.ctrlKey?$.ESC+`[6;`+(a+1)+`~`:$.ESC+`[6~`;break;case 112:i.key=a?$.ESC+`[1;`+(a+1)+`P`:$.ESC+`OP`;break;case 113:i.key=a?$.ESC+`[1;`+(a+1)+`Q`:$.ESC+`OQ`;break;case 114:i.key=a?$.ESC+`[1;`+(a+1)+`R`:$.ESC+`OR`;break;case 115:i.key=a?$.ESC+`[1;`+(a+1)+`S`:$.ESC+`OS`;break;case 116:i.key=a?$.ESC+`[15;`+(a+1)+`~`:$.ESC+`[15~`;break;case 117:i.key=a?$.ESC+`[17;`+(a+1)+`~`:$.ESC+`[17~`;break;case 118:i.key=a?$.ESC+`[18;`+(a+1)+`~`:$.ESC+`[18~`;break;case 119:i.key=a?$.ESC+`[19;`+(a+1)+`~`:$.ESC+`[19~`;break;case 120:i.key=a?$.ESC+`[20;`+(a+1)+`~`:$.ESC+`[20~`;break;case 121:i.key=a?$.ESC+`[21;`+(a+1)+`~`:$.ESC+`[21~`;break;case 122:i.key=a?$.ESC+`[23;`+(a+1)+`~`:$.ESC+`[23~`;break;case 123:i.key=a?$.ESC+`[24;`+(a+1)+`~`:$.ESC+`[24~`;break;default:if(e.ctrlKey&&!e.shiftKey&&!e.altKey&&!e.metaKey)e.keyCode>=65&&e.keyCode<=90?i.key=String.fromCharCode(e.keyCode-64):e.keyCode===32?i.key=$.NUL:e.keyCode>=51&&e.keyCode<=55?i.key=String.fromCharCode(e.keyCode-51+27):e.keyCode===56?i.key=$.DEL:e.keyCode===219?i.key=$.ESC:e.keyCode===220?i.key=$.FS:e.keyCode===221&&(i.key=$.GS);else if((!n||r)&&e.altKey&&!e.metaKey){let t=o7[e.keyCode]?.[+!!e.shiftKey];if(t)i.key=$.ESC+t;else if(e.keyCode>=65&&e.keyCode<=90){let t=e.ctrlKey?e.keyCode-64:e.keyCode+32,n=String.fromCharCode(t);e.shiftKey&&(n=n.toUpperCase()),i.key=$.ESC+n}else if(e.keyCode===32)i.key=$.ESC+(e.ctrlKey?$.NUL:` `);else if(e.key===`Dead`&&e.code.startsWith(`Key`)){let t=e.code.slice(3,4);e.shiftKey||(t=t.toLowerCase()),i.key=$.ESC+t,i.cancel=!0}}else n&&!e.altKey&&!e.ctrlKey&&!e.shiftKey&&e.metaKey?e.keyCode===65&&(i.type=1):e.key&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&e.keyCode>=48&&e.key.length===1?i.key=e.key:e.key&&e.ctrlKey&&(e.key===`_`&&(i.key=$.US),e.key===`@`&&(i.key=$.NUL))}return i}var c7=0,l7=class{constructor(e){this._getKey=e,this._array=[],this._insertedValues=[],this._flushInsertedTask=new Y6,this._isFlushingInserted=!1,this._deletedIndices=[],this._flushDeletedTask=new Y6,this._isFlushingDeleted=!1}clear(){this._array.length=0,this._insertedValues.length=0,this._flushInsertedTask.clear(),this._isFlushingInserted=!1,this._deletedIndices.length=0,this._flushDeletedTask.clear(),this._isFlushingDeleted=!1}insert(e){this._flushCleanupDeleted(),this._insertedValues.length===0&&this._flushInsertedTask.enqueue(()=>this._flushInserted()),this._insertedValues.push(e)}_flushInserted(){let e=this._insertedValues.sort((e,t)=>this._getKey(e)-this._getKey(t)),t=0,n=0,r=Array(this._array.length+this._insertedValues.length);for(let i=0;i<r.length;i++)n>=this._array.length||this._getKey(e[t])<=this._getKey(this._array[n])?(r[i]=e[t],t++):r[i]=this._array[n++];this._array=r,this._insertedValues.length=0}_flushCleanupInserted(){!this._isFlushingInserted&&this._insertedValues.length>0&&this._flushInsertedTask.flush()}delete(e){if(this._flushCleanupInserted(),this._array.length===0)return!1;let t=this._getKey(e);if(t===void 0||(c7=this._search(t),c7===-1)||this._getKey(this._array[c7])!==t)return!1;do if(this._array[c7]===e)return this._deletedIndices.length===0&&this._flushDeletedTask.enqueue(()=>this._flushDeleted()),this._deletedIndices.push(c7),!0;while(++c7<this._array.length&&this._getKey(this._array[c7])===t);return!1}_flushDeleted(){this._isFlushingDeleted=!0;let e=this._deletedIndices.sort((e,t)=>e-t),t=0,n=Array(this._array.length-e.length),r=0;for(let i=0;i<this._array.length;i++)e[t]===i?t++:n[r++]=this._array[i];this._array=n,this._deletedIndices.length=0,this._isFlushingDeleted=!1}_flushCleanupDeleted(){!this._isFlushingDeleted&&this._deletedIndices.length>0&&this._flushDeletedTask.flush()}*getKeyIterator(e){if(this._flushCleanupInserted(),this._flushCleanupDeleted(),this._array.length!==0&&(c7=this._search(e),!(c7<0||c7>=this._array.length)&&this._getKey(this._array[c7])===e))do yield this._array[c7];while(++c7<this._array.length&&this._getKey(this._array[c7])===e)}forEachByKey(e,t){if(this._flushCleanupInserted(),this._flushCleanupDeleted(),this._array.length!==0&&(c7=this._search(e),!(c7<0||c7>=this._array.length)&&this._getKey(this._array[c7])===e))do t(this._array[c7]);while(++c7<this._array.length&&this._getKey(this._array[c7])===e)}values(){return this._flushCleanupInserted(),this._flushCleanupDeleted(),[...this._array].values()}_search(e){let t=0,n=this._array.length-1;for(;n>=t;){let r=t+n>>1,i=this._getKey(this._array[r]);if(i>e)n=r-1;else if(i<e)t=r+1;else{for(;r>0&&this._getKey(this._array[r-1])===e;)r--;return r}}return t}},u7=0,d7=0,f7=class extends s2{constructor(){super(),this._decorations=new l7(e=>e?.marker.line),this._onDecorationRegistered=this._register(new Q),this.onDecorationRegistered=this._onDecorationRegistered.event,this._onDecorationRemoved=this._register(new Q),this.onDecorationRemoved=this._onDecorationRemoved.event,this._register(i2(()=>this.reset()))}get decorations(){return this._decorations.values()}registerDecoration(e){if(e.marker.isDisposed)return;let t=new p7(e);if(t){let e=t.marker.onDispose(()=>t.dispose()),n=t.onDispose(()=>{n.dispose(),t&&(this._decorations.delete(t)&&this._onDecorationRemoved.fire(t),e.dispose())});this._decorations.insert(t),this._onDecorationRegistered.fire(t)}return t}reset(){for(let e of this._decorations.values())e.dispose();this._decorations.clear()}*getDecorationsAtCell(e,t,n){let r=0,i=0;for(let a of this._decorations.getKeyIterator(t))r=a.options.x??0,i=r+(a.options.width??1),e>=r&&e<i&&(!n||(a.options.layer??`bottom`)===n)&&(yield a)}forEachDecorationAtCell(e,t,n,r){this._decorations.forEachByKey(t,t=>{u7=t.options.x??0,d7=u7+(t.options.width??1),e>=u7&&e<d7&&(!n||(t.options.layer??`bottom`)===n)&&r(t)})}},p7=class extends o2{constructor(e){super(),this.options=e,this.onRenderEmitter=this.add(new Q),this.onRender=this.onRenderEmitter.event,this._onDispose=this.add(new Q),this.onDispose=this._onDispose.event,this._cachedBg=null,this._cachedFg=null,this.marker=e.marker,this.options.overviewRulerOptions&&!this.options.overviewRulerOptions.position&&(this.options.overviewRulerOptions.position=`full`)}get backgroundColorRGB(){return this._cachedBg===null&&(this._cachedBg=this.options.backgroundColor?X3.toColor(this.options.backgroundColor):void 0),this._cachedBg}get foregroundColorRGB(){return this._cachedFg===null&&(this._cachedFg=this.options.foregroundColor?X3.toColor(this.options.foregroundColor):void 0),this._cachedFg}dispose(){this._onDispose.fire(),super.dispose()}},m7=1e3,h7=class{constructor(e,t=m7){this._renderCallback=e,this._debounceThresholdMS=t,this._lastRefreshMs=0,this._additionalRefreshRequested=!1}dispose(){this._refreshTimeoutID&&clearTimeout(this._refreshTimeoutID)}refresh(e,t,n){this._rowCount=n,e=e===void 0?0:e,t=t===void 0?this._rowCount-1:t,this._rowStart=this._rowStart===void 0?e:Math.min(this._rowStart,e),this._rowEnd=this._rowEnd===void 0?t:Math.max(this._rowEnd,t);let r=performance.now();if(r-this._lastRefreshMs>=this._debounceThresholdMS)this._lastRefreshMs=r,this._innerRefresh();else if(!this._additionalRefreshRequested){let e=r-this._lastRefreshMs,t=this._debounceThresholdMS-e;this._additionalRefreshRequested=!0,this._refreshTimeoutID=window.setTimeout(()=>{this._lastRefreshMs=performance.now(),this._innerRefresh(),this._additionalRefreshRequested=!1,this._refreshTimeoutID=void 0},t)}}_innerRefresh(){if(this._rowStart===void 0||this._rowEnd===void 0||this._rowCount===void 0)return;let e=Math.max(this._rowStart,0),t=Math.min(this._rowEnd,this._rowCount-1);this._rowStart=void 0,this._rowEnd=void 0,this._renderCallback(e,t)}},g7=20,_7=class extends s2{constructor(e,t,n,r){super(),this._terminal=e,this._coreBrowserService=n,this._renderService=r,this._rowColumns=new WeakMap,this._liveRegionLineCount=0,this._charsToConsume=[],this._charsToAnnounce=``;let i=this._coreBrowserService.mainDocument;this._accessibilityContainer=i.createElement(`div`),this._accessibilityContainer.classList.add(`xterm-accessibility`),this._rowContainer=i.createElement(`div`),this._rowContainer.setAttribute(`role`,`list`),this._rowContainer.classList.add(`xterm-accessibility-tree`),this._rowElements=[];for(let e=0;e<this._terminal.rows;e++)this._rowElements[e]=this._createAccessibilityTreeNode(),this._rowContainer.appendChild(this._rowElements[e]);if(this._topBoundaryFocusListener=e=>this._handleBoundaryFocus(e,0),this._bottomBoundaryFocusListener=e=>this._handleBoundaryFocus(e,1),this._rowElements[0].addEventListener(`focus`,this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener(`focus`,this._bottomBoundaryFocusListener),this._accessibilityContainer.appendChild(this._rowContainer),this._liveRegion=i.createElement(`div`),this._liveRegion.classList.add(`live-region`),this._liveRegion.setAttribute(`aria-live`,`assertive`),this._accessibilityContainer.appendChild(this._liveRegion),this._liveRegionDebouncer=this._register(new h7(this._renderRows.bind(this))),!this._terminal.element)throw Error(`Cannot enable accessibility before Terminal.open`);this._terminal.element.insertAdjacentElement(`afterbegin`,this._accessibilityContainer),this._register(this._terminal.onResize(e=>this._handleResize(e.rows))),this._register(this._terminal.onRender(e=>this._refreshRows(e.start,e.end))),this._register(this._terminal.onScroll(()=>this._refreshRows())),this._register(this._terminal.onA11yChar(e=>this._handleChar(e))),this._register(this._terminal.onLineFeed(()=>this._handleChar(`
200
200
  `))),this._register(this._terminal.onA11yTab(e=>this._handleTab(e))),this._register(this._terminal.onKey(e=>this._handleKey(e.key))),this._register(this._terminal.onBlur(()=>this._clearLiveRegion())),this._register(this._renderService.onDimensionsChange(()=>this._refreshRowsDimensions())),this._register(U4(i,`selectionchange`,()=>this._handleSelectionChange())),this._register(this._coreBrowserService.onDprChange(()=>this._refreshRowsDimensions())),this._refreshRowsDimensions(),this._refreshRows(),this._register(i2(()=>{this._accessibilityContainer.remove(),this._rowElements.length=0}))}_handleTab(e){for(let t=0;t<e;t++)this._handleChar(` `)}_handleChar(e){this._liveRegionLineCount<g7+1&&(this._charsToConsume.length>0?this._charsToConsume.shift()!==e&&(this._charsToAnnounce+=e):this._charsToAnnounce+=e,e===`
201
201
  `&&(this._liveRegionLineCount++,this._liveRegionLineCount===g7+1&&(this._liveRegion.textContent+=Y1.get())))}_clearLiveRegion(){this._liveRegion.textContent=``,this._liveRegionLineCount=0}_handleKey(e){this._clearLiveRegion(),/\p{Control}/u.test(e)||this._charsToConsume.push(e)}_refreshRows(e,t){this._liveRegionDebouncer.refresh(e,t,this._terminal.rows)}_renderRows(e,t){let n=this._terminal.buffer,r=n.lines.length.toString();for(let i=e;i<=t;i++){let e=n.lines.get(n.ydisp+i),t=[],a=e?.translateToString(!0,void 0,void 0,t)||``,o=(n.ydisp+i+1).toString(),s=this._rowElements[i];s&&(a.length===0?(s.textContent=`\xA0`,this._rowColumns.set(s,[0,1])):(s.textContent=a,this._rowColumns.set(s,t)),s.setAttribute(`aria-posinset`,o),s.setAttribute(`aria-setsize`,r),this._alignRowWidth(s))}this._announceCharacters()}_announceCharacters(){this._charsToAnnounce.length!==0&&(this._liveRegion.textContent+=this._charsToAnnounce,this._charsToAnnounce=``)}_handleBoundaryFocus(e,t){let n=e.target,r=this._rowElements[t===0?1:this._rowElements.length-2];if(n.getAttribute(`aria-posinset`)===(t===0?`1`:`${this._terminal.buffer.lines.length}`)||e.relatedTarget!==r)return;let i,a;if(t===0?(i=n,a=this._rowElements.pop(),this._rowContainer.removeChild(a)):(i=this._rowElements.shift(),a=n,this._rowContainer.removeChild(i)),i.removeEventListener(`focus`,this._topBoundaryFocusListener),a.removeEventListener(`focus`,this._bottomBoundaryFocusListener),t===0){let e=this._createAccessibilityTreeNode();this._rowElements.unshift(e),this._rowContainer.insertAdjacentElement(`afterbegin`,e)}else{let e=this._createAccessibilityTreeNode();this._rowElements.push(e),this._rowContainer.appendChild(e)}this._rowElements[0].addEventListener(`focus`,this._topBoundaryFocusListener),this._rowElements[this._rowElements.length-1].addEventListener(`focus`,this._bottomBoundaryFocusListener),this._terminal.scrollLines(t===0?-1:1),this._rowElements[t===0?1:this._rowElements.length-2].focus(),e.preventDefault(),e.stopImmediatePropagation()}_handleSelectionChange(){if(this._rowElements.length===0)return;let e=this._coreBrowserService.mainDocument.getSelection();if(!e)return;if(e.isCollapsed){this._rowContainer.contains(e.anchorNode)&&this._terminal.clearSelection();return}if(!e.anchorNode||!e.focusNode){console.error(`anchorNode and/or focusNode are null`);return}let t={node:e.anchorNode,offset:e.anchorOffset},n={node:e.focusNode,offset:e.focusOffset};if((t.node.compareDocumentPosition(n.node)&Node.DOCUMENT_POSITION_PRECEDING||t.node===n.node&&t.offset>n.offset)&&([t,n]=[n,t]),t.node.compareDocumentPosition(this._rowElements[0])&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_FOLLOWING)&&(t={node:this._rowElements[0].childNodes[0],offset:0}),!this._rowContainer.contains(t.node))return;let r=this._rowElements.slice(-1)[0];if(n.node.compareDocumentPosition(r)&(Node.DOCUMENT_POSITION_CONTAINED_BY|Node.DOCUMENT_POSITION_PRECEDING)&&(n={node:r,offset:r.textContent?.length??0}),!this._rowContainer.contains(n.node))return;let i=({node:e,offset:t})=>{let n=e instanceof Text?e.parentNode:e,r=parseInt(n?.getAttribute(`aria-posinset`),10)-1;if(isNaN(r))return console.warn(`row is invalid. Race condition?`),null;let i=this._rowColumns.get(n);if(!i)return console.warn(`columns is null. Race condition?`),null;let a=t<i.length?i[t]:i.slice(-1)[0]+1;return a>=this._terminal.cols&&(++r,a=0),{row:r,column:a}},a=i(t),o=i(n);if(!(!a||!o)){if(a.row>o.row||a.row===o.row&&a.column>=o.column)throw Error(`invalid range`);this._terminal.select(a.column,a.row,(o.row-a.row)*this._terminal.cols-a.column+o.column)}}_handleResize(e){this._rowElements[this._rowElements.length-1].removeEventListener(`focus`,this._bottomBoundaryFocusListener);for(let e=this._rowContainer.children.length;e<this._terminal.rows;e++)this._rowElements[e]=this._createAccessibilityTreeNode(),this._rowContainer.appendChild(this._rowElements[e]);for(;this._rowElements.length>e;)this._rowContainer.removeChild(this._rowElements.pop());this._rowElements[this._rowElements.length-1].addEventListener(`focus`,this._bottomBoundaryFocusListener),this._refreshRowsDimensions()}_createAccessibilityTreeNode(){let e=this._coreBrowserService.mainDocument.createElement(`div`);return e.setAttribute(`role`,`listitem`),e.tabIndex=-1,this._refreshRowDimensions(e),e}_refreshRowsDimensions(){if(this._renderService.dimensions.css.cell.height){Object.assign(this._accessibilityContainer.style,{width:`${this._renderService.dimensions.css.canvas.width}px`,fontSize:`${this._terminal.options.fontSize}px`}),this._rowElements.length!==this._terminal.rows&&this._handleResize(this._terminal.rows);for(let e=0;e<this._terminal.rows;e++)this._refreshRowDimensions(this._rowElements[e]),this._alignRowWidth(this._rowElements[e])}}_refreshRowDimensions(e){e.style.height=`${this._renderService.dimensions.css.cell.height}px`}_alignRowWidth(e){e.style.transform=``;let t=e.getBoundingClientRect().width,n=this._rowColumns.get(e)?.slice(-1)?.[0];if(!n)return;let r=n*this._renderService.dimensions.css.cell.width;e.style.transform=`scaleX(${r/t})`}};_7=W1([G1(1,S0),G1(2,j0),G1(3,N0)],_7);var v7=class extends s2{constructor(e,t,n,r,i){super(),this._element=e,this._mouseService=t,this._renderService=n,this._bufferService=r,this._linkProviderService=i,this._linkCacheDisposables=[],this._isMouseOut=!0,this._wasResized=!1,this._activeLine=-1,this._onShowLinkUnderline=this._register(new Q),this.onShowLinkUnderline=this._onShowLinkUnderline.event,this._onHideLinkUnderline=this._register(new Q),this.onHideLinkUnderline=this._onHideLinkUnderline.event,this._register(i2(()=>{n2(this._linkCacheDisposables),this._linkCacheDisposables.length=0,this._lastMouseEvent=void 0,this._activeProviderReplies?.clear()})),this._register(this._bufferService.onResize(()=>{this._clearCurrentLink(),this._wasResized=!0})),this._register(U4(this._element,`mouseleave`,()=>{this._isMouseOut=!0,this._clearCurrentLink()})),this._register(U4(this._element,`mousemove`,this._handleMouseMove.bind(this))),this._register(U4(this._element,`mousedown`,this._handleMouseDown.bind(this))),this._register(U4(this._element,`mouseup`,this._handleMouseUp.bind(this)))}get currentLink(){return this._currentLink}_handleMouseMove(e){this._lastMouseEvent=e;let t=this._positionFromMouseEvent(e,this._element,this._mouseService);if(!t)return;this._isMouseOut=!1;let n=e.composedPath();for(let e=0;e<n.length;e++){let t=n[e];if(t.classList.contains(`xterm`))break;if(t.classList.contains(`xterm-hover`))return}(!this._lastBufferCell||t.x!==this._lastBufferCell.x||t.y!==this._lastBufferCell.y)&&(this._handleHover(t),this._lastBufferCell=t)}_handleHover(e){if(this._activeLine!==e.y||this._wasResized){this._clearCurrentLink(),this._askForLink(e,!1),this._wasResized=!1;return}this._currentLink&&this._linkAtPosition(this._currentLink.link,e)||(this._clearCurrentLink(),this._askForLink(e,!0))}_askForLink(e,t){(!this._activeProviderReplies||!t)&&(this._activeProviderReplies?.forEach(e=>{e?.forEach(e=>{e.link.dispose&&e.link.dispose()})}),this._activeProviderReplies=new Map,this._activeLine=e.y);let n=!1;for(let[r,i]of this._linkProviderService.linkProviders.entries())t?this._activeProviderReplies?.get(r)&&(n=this._checkLinkProviderResult(r,e,n)):i.provideLinks(e.y,t=>{if(this._isMouseOut)return;let i=t?.map(e=>({link:e}));this._activeProviderReplies?.set(r,i),n=this._checkLinkProviderResult(r,e,n),this._activeProviderReplies?.size===this._linkProviderService.linkProviders.length&&this._removeIntersectingLinks(e.y,this._activeProviderReplies)})}_removeIntersectingLinks(e,t){let n=new Set;for(let r=0;r<t.size;r++){let i=t.get(r);if(i)for(let t=0;t<i.length;t++){let r=i[t],a=r.link.range.start.y<e?0:r.link.range.start.x,o=r.link.range.end.y>e?this._bufferService.cols:r.link.range.end.x;for(let e=a;e<=o;e++){if(n.has(e)){i.splice(t--,1);break}n.add(e)}}}}_checkLinkProviderResult(e,t,n){if(!this._activeProviderReplies)return n;let r=this._activeProviderReplies.get(e),i=!1;for(let t=0;t<e;t++)(!this._activeProviderReplies.has(t)||this._activeProviderReplies.get(t))&&(i=!0);if(!i&&r){let e=r.find(e=>this._linkAtPosition(e.link,t));e&&(n=!0,this._handleNewLink(e))}if(this._activeProviderReplies.size===this._linkProviderService.linkProviders.length&&!n)for(let e=0;e<this._activeProviderReplies.size;e++){let r=this._activeProviderReplies.get(e)?.find(e=>this._linkAtPosition(e.link,t));if(r){n=!0,this._handleNewLink(r);break}}return n}_handleMouseDown(){this._mouseDownLink=this._currentLink}_handleMouseUp(e){if(!this._currentLink)return;let t=this._positionFromMouseEvent(e,this._element,this._mouseService);t&&this._mouseDownLink&&y7(this._mouseDownLink.link,this._currentLink.link)&&this._linkAtPosition(this._currentLink.link,t)&&this._currentLink.link.activate(e,this._currentLink.link.text)}_clearCurrentLink(e,t){!this._currentLink||!this._lastMouseEvent||(!e||!t||this._currentLink.link.range.start.y>=e&&this._currentLink.link.range.end.y<=t)&&(this._linkLeave(this._element,this._currentLink.link,this._lastMouseEvent),this._currentLink=void 0,n2(this._linkCacheDisposables),this._linkCacheDisposables.length=0)}_handleNewLink(e){if(!this._lastMouseEvent)return;let t=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);t&&this._linkAtPosition(e.link,t)&&(this._currentLink=e,this._currentLink.state={decorations:{underline:e.link.decorations===void 0||e.link.decorations.underline,pointerCursor:e.link.decorations===void 0||e.link.decorations.pointerCursor},isHovered:!0},this._linkHover(this._element,e.link,this._lastMouseEvent),e.link.decorations={},Object.defineProperties(e.link.decorations,{pointerCursor:{get:()=>this._currentLink?.state?.decorations.pointerCursor,set:e=>{this._currentLink?.state&&this._currentLink.state.decorations.pointerCursor!==e&&(this._currentLink.state.decorations.pointerCursor=e,this._currentLink.state.isHovered&&this._element.classList.toggle(`xterm-cursor-pointer`,e))}},underline:{get:()=>this._currentLink?.state?.decorations.underline,set:t=>{this._currentLink?.state&&this._currentLink?.state?.decorations.underline!==t&&(this._currentLink.state.decorations.underline=t,this._currentLink.state.isHovered&&this._fireUnderlineEvent(e.link,t))}}}),this._linkCacheDisposables.push(this._renderService.onRenderedViewportChange(e=>{if(!this._currentLink)return;let t=e.start===0?0:e.start+1+this._bufferService.buffer.ydisp,n=this._bufferService.buffer.ydisp+1+e.end;if(this._currentLink.link.range.start.y>=t&&this._currentLink.link.range.end.y<=n&&(this._clearCurrentLink(t,n),this._lastMouseEvent)){let e=this._positionFromMouseEvent(this._lastMouseEvent,this._element,this._mouseService);e&&this._askForLink(e,!1)}})))}_linkHover(e,t,n){this._currentLink?.state&&(this._currentLink.state.isHovered=!0,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!0),this._currentLink.state.decorations.pointerCursor&&e.classList.add(`xterm-cursor-pointer`)),t.hover&&t.hover(n,t.text)}_fireUnderlineEvent(e,t){let n=e.range,r=this._bufferService.buffer.ydisp,i=this._createLinkUnderlineEvent(n.start.x-1,n.start.y-r-1,n.end.x,n.end.y-r-1,void 0);(t?this._onShowLinkUnderline:this._onHideLinkUnderline).fire(i)}_linkLeave(e,t,n){this._currentLink?.state&&(this._currentLink.state.isHovered=!1,this._currentLink.state.decorations.underline&&this._fireUnderlineEvent(t,!1),this._currentLink.state.decorations.pointerCursor&&e.classList.remove(`xterm-cursor-pointer`)),t.leave&&t.leave(n,t.text)}_linkAtPosition(e,t){let n=e.range.start.y*this._bufferService.cols+e.range.start.x,r=e.range.end.y*this._bufferService.cols+e.range.end.x,i=t.y*this._bufferService.cols+t.x;return n<=i&&i<=r}_positionFromMouseEvent(e,t,n){let r=n.getCoords(e,t,this._bufferService.cols,this._bufferService.rows);if(r)return{x:r[0],y:r[1]+this._bufferService.buffer.ydisp}}_createLinkUnderlineEvent(e,t,n,r,i){return{x1:e,y1:t,x2:n,y2:r,cols:this._bufferService.cols,fg:i}}};v7=W1([G1(1,M0),G1(2,N0),G1(3,v0),G1(4,L0)],v7);function y7(e,t){return e.text===t.text&&e.range.start.x===t.range.start.x&&e.range.start.y===t.range.start.y&&e.range.end.x===t.range.end.x&&e.range.end.y===t.range.end.y}var b7=class extends a7{constructor(e={}){super(e),this._linkifier=this._register(new c2),this.browser=M6,this._keyDownHandled=!1,this._keyDownSeen=!1,this._keyPressHandled=!1,this._unprocessedDeadKey=!1,this._accessibilityManager=this._register(new c2),this._onCursorMove=this._register(new Q),this.onCursorMove=this._onCursorMove.event,this._onKey=this._register(new Q),this.onKey=this._onKey.event,this._onRender=this._register(new Q),this.onRender=this._onRender.event,this._onSelectionChange=this._register(new Q),this.onSelectionChange=this._onSelectionChange.event,this._onTitleChange=this._register(new Q),this.onTitleChange=this._onTitleChange.event,this._onBell=this._register(new Q),this.onBell=this._onBell.event,this._onFocus=this._register(new Q),this._onBlur=this._register(new Q),this._onA11yCharEmitter=this._register(new Q),this._onA11yTabEmitter=this._register(new Q),this._onWillOpen=this._register(new Q),this._setup(),this._decorationService=this._instantiationService.createInstance(f7),this._instantiationService.setService(D0,this._decorationService),this._linkProviderService=this._instantiationService.createInstance(D6),this._instantiationService.setService(L0,this._linkProviderService),this._linkProviderService.registerLinkProvider(this._instantiationService.createInstance(O0)),this._register(this._inputHandler.onRequestBell(()=>this._onBell.fire())),this._register(this._inputHandler.onRequestRefreshRows(e=>this.refresh(e?.start??0,e?.end??this.rows-1))),this._register(this._inputHandler.onRequestSendFocus(()=>this._reportFocus())),this._register(this._inputHandler.onRequestReset(()=>this.reset())),this._register(this._inputHandler.onRequestWindowsOptionsReport(e=>this._reportWindowsOptions(e))),this._register(this._inputHandler.onColor(e=>this._handleColorEvent(e))),this._register(h2.forward(this._inputHandler.onCursorMove,this._onCursorMove)),this._register(h2.forward(this._inputHandler.onTitleChange,this._onTitleChange)),this._register(h2.forward(this._inputHandler.onA11yChar,this._onA11yCharEmitter)),this._register(h2.forward(this._inputHandler.onA11yTab,this._onA11yTabEmitter)),this._register(this._bufferService.onResize(e=>this._afterResize(e.cols,e.rows))),this._register(i2(()=>{this._customKeyEventHandler=void 0,this.element?.parentNode?.removeChild(this.element)}))}get linkifier(){return this._linkifier.value}get onFocus(){return this._onFocus.event}get onBlur(){return this._onBlur.event}get onA11yChar(){return this._onA11yCharEmitter.event}get onA11yTab(){return this._onA11yTabEmitter.event}get onWillOpen(){return this._onWillOpen.event}_handleColorEvent(e){if(this._themeService)for(let t of e){let e,n=``;switch(t.index){case 256:e=`foreground`,n=`10`;break;case 257:e=`background`,n=`11`;break;case 258:e=`cursor`,n=`12`;break;default:e=`ansi`,n=`4;`+t.index}switch(t.type){case 0:let r=Y3.toColorRGB(e===`ansi`?this._themeService.colors.ansi[t.index]:this._themeService.colors[e]);this.coreService.triggerDataEvent(`${$.ESC}]${n};${U5(r)}${V3.ST}`);break;case 1:if(e===`ansi`)this._themeService.modifyColors(e=>e.ansi[t.index]=J3.toColor(...t.color));else{let n=e;this._themeService.modifyColors(e=>e[n]=J3.toColor(...t.color))}break;case 2:this._themeService.restoreColor(t.index)}}}_setup(){super._setup(),this._customKeyEventHandler=void 0}get buffer(){return this.buffers.active}focus(){this.textarea&&this.textarea.focus({preventScroll:!0})}_handleScreenReaderModeOptionChange(e){e?!this._accessibilityManager.value&&this._renderService&&(this._accessibilityManager.value=this._instantiationService.createInstance(_7,this)):this._accessibilityManager.clear()}_handleTextAreaFocus(e){this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent($.ESC+`[I`),this.element.classList.add(`focus`),this._showCursor(),this._onFocus.fire()}blur(){return this.textarea?.blur()}_handleTextAreaBlur(){this.textarea.value=``,this.refresh(this.buffer.y,this.buffer.y),this.coreService.decPrivateModes.sendFocus&&this.coreService.triggerDataEvent($.ESC+`[O`),this.element.classList.remove(`focus`),this._onBlur.fire()}_syncTextArea(){if(!this.textarea||!this.buffer.isCursorInViewport||this._compositionHelper.isComposing||!this._renderService)return;let e=this.buffer.ybase+this.buffer.y,t=this.buffer.lines.get(e);if(!t)return;let n=Math.min(this.buffer.x,this.cols-1),r=this._renderService.dimensions.css.cell.height,i=t.getWidth(n),a=this._renderService.dimensions.css.cell.width*i,o=this.buffer.y*this._renderService.dimensions.css.cell.height,s=n*this._renderService.dimensions.css.cell.width;this.textarea.style.left=s+`px`,this.textarea.style.top=o+`px`,this.textarea.style.width=a+`px`,this.textarea.style.height=r+`px`,this.textarea.style.lineHeight=r+`px`,this.textarea.style.zIndex=`-5`}_initGlobal(){this._bindKeys(),this._register(U4(this.element,`copy`,e=>{this.hasSelection()&&Q1(e,this._selectionService)}));let e=e=>$1(e,this.textarea,this.coreService,this.optionsService);this._register(U4(this.textarea,`paste`,e)),this._register(U4(this.element,`paste`,e)),I6?this._register(U4(this.element,`mousedown`,e=>{e.button===2&&n0(e,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})):this._register(U4(this.element,`contextmenu`,e=>{n0(e,this.textarea,this.screenElement,this._selectionService,this.options.rightClickSelectsWord)})),W6&&this._register(U4(this.element,`auxclick`,e=>{e.button===1&&t0(e,this.textarea,this.screenElement)}))}_bindKeys(){this._register(U4(this.textarea,`keyup`,e=>this._keyUp(e),!0)),this._register(U4(this.textarea,`keydown`,e=>this._keyDown(e),!0)),this._register(U4(this.textarea,`keypress`,e=>this._keyPress(e),!0)),this._register(U4(this.textarea,`compositionstart`,()=>this._compositionHelper.compositionstart())),this._register(U4(this.textarea,`compositionupdate`,e=>this._compositionHelper.compositionupdate(e))),this._register(U4(this.textarea,`compositionend`,()=>this._compositionHelper.compositionend())),this._register(U4(this.textarea,`input`,e=>this._inputEvent(e),!0)),this._register(this.onRender(()=>this._compositionHelper.updateCompositionElements()))}open(e){if(!e)throw Error(`Terminal requires a parent element.`);if(e.isConnected||this._logService.debug(`Terminal.open was called on an element that was not attached to the DOM`),this.element?.ownerDocument.defaultView&&this._coreBrowserService){this.element.ownerDocument.defaultView!==this._coreBrowserService.window&&(this._coreBrowserService.window=this.element.ownerDocument.defaultView);return}this._document=e.ownerDocument,this.options.documentOverride&&this.options.documentOverride instanceof Document&&(this._document=this.optionsService.rawOptions.documentOverride),this.element=this._document.createElement(`div`),this.element.dir=`ltr`,this.element.classList.add(`terminal`),this.element.classList.add(`xterm`),e.appendChild(this.element);let t=this._document.createDocumentFragment();this._viewportElement=this._document.createElement(`div`),this._viewportElement.classList.add(`xterm-viewport`),t.appendChild(this._viewportElement),this.screenElement=this._document.createElement(`div`),this.screenElement.classList.add(`xterm-screen`),this._register(U4(this.screenElement,`mousemove`,e=>this.updateCursorStyle(e))),this._helperContainer=this._document.createElement(`div`),this._helperContainer.classList.add(`xterm-helpers`),this.screenElement.appendChild(this._helperContainer),t.appendChild(this.screenElement);let n=this.textarea=this._document.createElement(`textarea`);this.textarea.classList.add(`xterm-helper-textarea`),this.textarea.setAttribute(`aria-label`,q1.get()),G6||this.textarea.setAttribute(`aria-multiline`,`false`),this.textarea.setAttribute(`autocorrect`,`off`),this.textarea.setAttribute(`autocapitalize`,`off`),this.textarea.setAttribute(`spellcheck`,`false`),this.textarea.tabIndex=0,this._register(this.optionsService.onSpecificOptionChange(`disableStdin`,()=>n.readOnly=this.optionsService.rawOptions.disableStdin)),this.textarea.readOnly=this.optionsService.rawOptions.disableStdin,this._coreBrowserService=this._register(this._instantiationService.createInstance(T6,this.textarea,e.ownerDocument.defaultView??window,this._document??typeof window<`u`?window.document:null)),this._instantiationService.setService(j0,this._coreBrowserService),this._register(U4(this.textarea,`focus`,e=>this._handleTextAreaFocus(e))),this._register(U4(this.textarea,`blur`,()=>this._handleTextAreaBlur())),this._helperContainer.appendChild(this.textarea),this._charSizeService=this._instantiationService.createInstance(x6,this._document,this._helperContainer),this._instantiationService.setService(A0,this._charSizeService),this._themeService=this._instantiationService.createInstance(k8),this._instantiationService.setService(I0,this._themeService),this._characterJoinerService=this._instantiationService.createInstance(n6),this._instantiationService.setService(F0,this._characterJoinerService),this._renderService=this._register(this._instantiationService.createInstance(Z6,this.rows,this.screenElement)),this._instantiationService.setService(N0,this._renderService),this._register(this._renderService.onRenderedViewportChange(e=>this._onRender.fire(e))),this.onResize(e=>this._renderService.resize(e.cols,e.rows)),this._compositionView=this._document.createElement(`div`),this._compositionView.classList.add(`composition-view`),this._compositionHelper=this._instantiationService.createInstance(H3,this.textarea,this._compositionView),this._helperContainer.appendChild(this._compositionView),this._mouseService=this._instantiationService.createInstance(A6),this._instantiationService.setService(M0,this._mouseService);let r=this._linkifier.value=this._register(this._instantiationService.createInstance(v7,this.screenElement));this.element.appendChild(t);try{this._onWillOpen.fire(this.element)}catch{}this._renderService.hasRenderer()||this._renderService.setRenderer(this._createRenderer()),this._register(this.onCursorMove(()=>{this._renderService.handleCursorMove(),this._syncTextArea()})),this._register(this.onResize(()=>this._renderService.handleResize(this.cols,this.rows))),this._register(this.onBlur(()=>this._renderService.handleBlur())),this._register(this.onFocus(()=>this._renderService.handleFocus())),this._viewport=this._register(this._instantiationService.createInstance(N3,this.element,this.screenElement)),this._register(this._viewport.onRequestScrollLines(e=>{super.scrollLines(e,!1),this.refresh(0,this.rows-1)})),this._selectionService=this._register(this._instantiationService.createInstance(y8,this.element,this.screenElement,r)),this._instantiationService.setService(P0,this._selectionService),this._register(this._selectionService.onRequestScrollLines(e=>this.scrollLines(e.amount,e.suppressScrollEvent))),this._register(this._selectionService.onSelectionChange(()=>this._onSelectionChange.fire())),this._register(this._selectionService.onRequestRedraw(e=>this._renderService.handleSelectionChanged(e.start,e.end,e.columnSelectMode))),this._register(this._selectionService.onLinuxMouseSelection(e=>{this.textarea.value=e,this.textarea.focus(),this.textarea.select()})),this._register(h2.any(this._onScroll.event,this._inputHandler.onScroll)(()=>{this._selectionService.refresh(),this._viewport?.queueSync()})),this._register(this._instantiationService.createInstance(P3,this.screenElement)),this._register(U4(this.element,`mousedown`,e=>this._selectionService.handleMouseDown(e))),this.coreMouseService.areMouseEventsActive?(this._selectionService.disable(),this.element.classList.add(`enable-mouse-events`)):this._selectionService.enable(),this.options.screenReaderMode&&(this._accessibilityManager.value=this._instantiationService.createInstance(_7,this)),this._register(this.optionsService.onSpecificOptionChange(`screenReaderMode`,e=>this._handleScreenReaderModeOptionChange(e))),this.options.overviewRuler.width&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(z3,this._viewportElement,this.screenElement))),this.optionsService.onSpecificOptionChange(`overviewRuler`,e=>{!this._overviewRulerRenderer&&e&&this._viewportElement&&this.screenElement&&(this._overviewRulerRenderer=this._register(this._instantiationService.createInstance(z3,this._viewportElement,this.screenElement)))}),this._charSizeService.measure(),this.refresh(0,this.rows-1),this._initGlobal(),this.bindMouse()}_createRenderer(){return this._instantiationService.createInstance(b6,this,this._document,this.element,this.screenElement,this._viewportElement,this._helperContainer,this.linkifier)}bindMouse(){let e=this,t=this.element;function n(t){let n=e._mouseService.getMouseReportCoords(t,e.screenElement);if(!n)return!1;let r,i;switch(t.overrideType||t.type){case`mousemove`:i=32,t.buttons===void 0?(r=3,t.button!==void 0&&(r=t.button<3?t.button:3)):r=t.buttons&1?0:t.buttons&4?1:t.buttons&2?2:3;break;case`mouseup`:i=0,r=t.button<3?t.button:3;break;case`mousedown`:i=1,r=t.button<3?t.button:3;break;case`wheel`:if(e._customWheelEventHandler&&e._customWheelEventHandler(t)===!1)return!1;let n=t.deltaY;if(n===0||e.coreMouseService.consumeWheelEvent(t,e._renderService?.dimensions?.device?.cell?.height,e._coreBrowserService?.dpr)===0)return!1;i=n<0?0:1,r=4;break;default:return!1}return i===void 0||r===void 0||r>4?!1:e.coreMouseService.triggerMouseEvent({col:n.col,row:n.row,x:n.x,y:n.y,button:r,action:i,ctrl:t.ctrlKey,alt:t.altKey,shift:t.shiftKey})}let r={mouseup:null,wheel:null,mousedrag:null,mousemove:null},i={mouseup:e=>(n(e),e.buttons||(this._document.removeEventListener(`mouseup`,r.mouseup),r.mousedrag&&this._document.removeEventListener(`mousemove`,r.mousedrag)),this.cancel(e)),wheel:e=>(n(e),this.cancel(e,!0)),mousedrag:e=>{e.buttons&&n(e)},mousemove:e=>{e.buttons||n(e)}};this._register(this.coreMouseService.onProtocolChange(e=>{e?(this.optionsService.rawOptions.logLevel===`debug`&&this._logService.debug(`Binding to mouse events:`,this.coreMouseService.explainEvents(e)),this.element.classList.add(`enable-mouse-events`),this._selectionService.disable()):(this._logService.debug(`Unbinding from mouse events.`),this.element.classList.remove(`enable-mouse-events`),this._selectionService.enable()),e&8?r.mousemove||=(t.addEventListener(`mousemove`,i.mousemove),i.mousemove):(t.removeEventListener(`mousemove`,r.mousemove),r.mousemove=null),e&16?r.wheel||=(t.addEventListener(`wheel`,i.wheel,{passive:!1}),i.wheel):(t.removeEventListener(`wheel`,r.wheel),r.wheel=null),e&2?r.mouseup||=i.mouseup:(this._document.removeEventListener(`mouseup`,r.mouseup),r.mouseup=null),e&4?r.mousedrag||=i.mousedrag:(this._document.removeEventListener(`mousemove`,r.mousedrag),r.mousedrag=null)})),this.coreMouseService.activeProtocol=this.coreMouseService.activeProtocol,this._register(U4(t,`mousedown`,e=>{if(e.preventDefault(),this.focus(),!(!this.coreMouseService.areMouseEventsActive||this._selectionService.shouldForceSelection(e)))return n(e),r.mouseup&&this._document.addEventListener(`mouseup`,r.mouseup),r.mousedrag&&this._document.addEventListener(`mousemove`,r.mousedrag),this.cancel(e)})),this._register(U4(t,`wheel`,t=>{if(!r.wheel){if(this._customWheelEventHandler&&this._customWheelEventHandler(t)===!1)return!1;if(!this.buffer.hasScrollback){if(t.deltaY===0)return!1;if(e.coreMouseService.consumeWheelEvent(t,e._renderService?.dimensions?.device?.cell?.height,e._coreBrowserService?.dpr)===0)return this.cancel(t,!0);let n=$.ESC+(this.coreService.decPrivateModes.applicationCursorKeys?`O`:`[`)+(t.deltaY<0?`A`:`B`);return this.coreService.triggerDataEvent(n,!0),this.cancel(t,!0)}}},{passive:!1}))}refresh(e,t){this._renderService?.refreshRows(e,t)}updateCursorStyle(e){this._selectionService?.shouldColumnSelect(e)?this.element.classList.add(`column-select`):this.element.classList.remove(`column-select`)}_showCursor(){this.coreService.isCursorInitialized||(this.coreService.isCursorInitialized=!0,this.refresh(this.buffer.y,this.buffer.y))}scrollLines(e,t){this._viewport?this._viewport.scrollLines(e):super.scrollLines(e,t),this.refresh(0,this.rows-1)}scrollPages(e){this.scrollLines(e*(this.rows-1))}scrollToTop(){this.scrollLines(-this._bufferService.buffer.ydisp)}scrollToBottom(e){e&&this._viewport?this._viewport.scrollToLine(this.buffer.ybase,!0):this.scrollLines(this._bufferService.buffer.ybase-this._bufferService.buffer.ydisp)}scrollToLine(e){let t=e-this._bufferService.buffer.ydisp;t!==0&&this.scrollLines(t)}paste(e){e0(e,this.textarea,this.coreService,this.optionsService)}attachCustomKeyEventHandler(e){this._customKeyEventHandler=e}attachCustomWheelEventHandler(e){this._customWheelEventHandler=e}registerLinkProvider(e){return this._linkProviderService.registerLinkProvider(e)}registerCharacterJoiner(e){if(!this._characterJoinerService)throw Error(`Terminal must be opened first`);let t=this._characterJoinerService.register(e);return this.refresh(0,this.rows-1),t}deregisterCharacterJoiner(e){if(!this._characterJoinerService)throw Error(`Terminal must be opened first`);this._characterJoinerService.deregister(e)&&this.refresh(0,this.rows-1)}get markers(){return this.buffer.markers}registerMarker(e){return this.buffer.addMarker(this.buffer.ybase+this.buffer.y+e)}registerDecoration(e){return this._decorationService.registerDecoration(e)}hasSelection(){return this._selectionService?this._selectionService.hasSelection:!1}select(e,t,n){this._selectionService.setSelection(e,t,n)}getSelection(){return this._selectionService?this._selectionService.selectionText:``}getSelectionPosition(){if(!(!this._selectionService||!this._selectionService.hasSelection))return{start:{x:this._selectionService.selectionStart[0],y:this._selectionService.selectionStart[1]},end:{x:this._selectionService.selectionEnd[0],y:this._selectionService.selectionEnd[1]}}}clearSelection(){this._selectionService?.clearSelection()}selectAll(){this._selectionService?.selectAll()}selectLines(e,t){this._selectionService?.selectLines(e,t)}_keyDown(e){if(this._keyDownHandled=!1,this._keyDownSeen=!0,this._customKeyEventHandler&&this._customKeyEventHandler(e)===!1)return!1;let t=this.browser.isMac&&this.options.macOptionIsMeta&&e.altKey;if(!t&&!this._compositionHelper.keydown(e))return this.options.scrollOnUserInput&&this.buffer.ybase!==this.buffer.ydisp&&this.scrollToBottom(!0),!1;!t&&(e.key===`Dead`||e.key===`AltGraph`)&&(this._unprocessedDeadKey=!0);let n=s7(e,this.coreService.decPrivateModes.applicationCursorKeys,this.browser.isMac,this.options.macOptionIsMeta);if(this.updateCursorStyle(e),n.type===3||n.type===2){let t=this.rows-1;return this.scrollLines(n.type===2?-t:t),this.cancel(e,!0)}if(n.type===1&&this.selectAll(),this._isThirdLevelShift(this.browser,e)||(n.cancel&&this.cancel(e,!0),!n.key)||e.key&&!e.ctrlKey&&!e.altKey&&!e.metaKey&&e.key.length===1&&e.key.charCodeAt(0)>=65&&e.key.charCodeAt(0)<=90)return!0;if(this._unprocessedDeadKey)return this._unprocessedDeadKey=!1,!0;if((n.key===$.ETX||n.key===$.CR)&&(this.textarea.value=``),this._onKey.fire({key:n.key,domEvent:e}),this._showCursor(),this.coreService.triggerDataEvent(n.key,!0),!this.optionsService.rawOptions.screenReaderMode||e.altKey||e.ctrlKey)return this.cancel(e,!0);this._keyDownHandled=!0}_isThirdLevelShift(e,t){let n=e.isMac&&!this.options.macOptionIsMeta&&t.altKey&&!t.ctrlKey&&!t.metaKey||e.isWindows&&t.altKey&&t.ctrlKey&&!t.metaKey||e.isWindows&&t.getModifierState(`AltGraph`);return t.type===`keypress`?n:n&&(!t.keyCode||t.keyCode>47)}_keyUp(e){this._keyDownSeen=!1,!(this._customKeyEventHandler&&this._customKeyEventHandler(e)===!1)&&(x7(e)||this.focus(),this.updateCursorStyle(e),this._keyPressHandled=!1)}_keyPress(e){let t;if(this._keyPressHandled=!1,this._keyDownHandled||this._customKeyEventHandler&&this._customKeyEventHandler(e)===!1)return!1;if(this.cancel(e),e.charCode)t=e.charCode;else if(e.which===null||e.which===void 0)t=e.keyCode;else if(e.which!==0&&e.charCode!==0)t=e.which;else return!1;return!t||(e.altKey||e.ctrlKey||e.metaKey)&&!this._isThirdLevelShift(this.browser,e)?!1:(t=String.fromCharCode(t),this._onKey.fire({key:t,domEvent:e}),this._showCursor(),this.coreService.triggerDataEvent(t,!0),this._keyPressHandled=!0,this._unprocessedDeadKey=!1,!0)}_inputEvent(e){if(e.data&&e.inputType===`insertText`&&(!e.composed||!this._keyDownSeen)&&!this.optionsService.rawOptions.screenReaderMode){if(this._keyPressHandled)return!1;this._unprocessedDeadKey=!1;let t=e.data;return this.coreService.triggerDataEvent(t,!0),this.cancel(e),!0}return!1}resize(e,t){if(e===this.cols&&t===this.rows){this._charSizeService&&!this._charSizeService.hasValidSize&&this._charSizeService.measure();return}super.resize(e,t)}_afterResize(e,t){this._charSizeService?.measure()}clear(){if(this.buffer.ybase!==0||this.buffer.y!==0){this.buffer.clearAllMarkers(),this.buffer.lines.set(0,this.buffer.lines.get(this.buffer.ybase+this.buffer.y)),this.buffer.lines.length=1,this.buffer.ydisp=0,this.buffer.ybase=0,this.buffer.y=0;for(let e=1;e<this.rows;e++)this.buffer.lines.push(this.buffer.getBlankLine(z8));this._onScroll.fire({position:this.buffer.ydisp}),this.refresh(0,this.rows-1)}}reset(){this.options.rows=this.rows,this.options.cols=this.cols;let e=this._customKeyEventHandler;this._setup(),super.reset(),this._selectionService?.reset(),this._decorationService.reset(),this._customKeyEventHandler=e,this.refresh(0,this.rows-1)}clearTextureAtlas(){this._renderService?.clearTextureAtlas()}_reportFocus(){this.element?.classList.contains(`focus`)?this.coreService.triggerDataEvent($.ESC+`[I`):this.coreService.triggerDataEvent($.ESC+`[O`)}_reportWindowsOptions(e){if(this._renderService)switch(e){case 0:let e=this._renderService.dimensions.css.canvas.width.toFixed(0),t=this._renderService.dimensions.css.canvas.height.toFixed(0);this.coreService.triggerDataEvent(`${$.ESC}[4;${t};${e}t`);break;case 1:let n=this._renderService.dimensions.css.cell.width.toFixed(0),r=this._renderService.dimensions.css.cell.height.toFixed(0);this.coreService.triggerDataEvent(`${$.ESC}[6;${r};${n}t`);break}}cancel(e,t){if(!(!this.options.cancelEvents&&!t))return e.preventDefault(),e.stopPropagation(),!1}};function x7(e){return e.keyCode===16||e.keyCode===17||e.keyCode===18}var S7=class{constructor(){this._addons=[]}dispose(){for(let e=this._addons.length-1;e>=0;e--)this._addons[e].instance.dispose()}loadAddon(e,t){let n={instance:t,dispose:t.dispose,isDisposed:!1};this._addons.push(n),t.dispose=()=>this._wrappedAddonDispose(n),t.activate(e)}_wrappedAddonDispose(e){if(e.isDisposed)return;let t=-1;for(let n=0;n<this._addons.length;n++)if(this._addons[n]===e){t=n;break}if(t===-1)throw Error(`Could not dispose an addon that has not been loaded`);e.isDisposed=!0,e.dispose.apply(e.instance),this._addons.splice(t,1)}},C7=class{constructor(e){this._line=e}get isWrapped(){return this._line.isWrapped}get length(){return this._line.length}getCell(e,t){if(!(e<0||e>=this._line.length))return t?(this._line.loadCell(e,t),t):this._line.loadCell(e,new d0)}translateToString(e,t,n){return this._line.translateToString(e,t,n)}},w7=class{constructor(e,t){this._buffer=e,this.type=t}init(e){return this._buffer=e,this}get cursorY(){return this._buffer.y}get cursorX(){return this._buffer.x}get viewportY(){return this._buffer.ydisp}get baseY(){return this._buffer.ybase}get length(){return this._buffer.lines.length}getLine(e){let t=this._buffer.lines.get(e);if(t)return new C7(t)}getNullCell(){return new d0}},T7=class extends s2{constructor(e){super(),this._core=e,this._onBufferChange=this._register(new Q),this.onBufferChange=this._onBufferChange.event,this._normal=new w7(this._core.buffers.normal,`normal`),this._alternate=new w7(this._core.buffers.alt,`alternate`),this._core.buffers.onBufferActivate(()=>this._onBufferChange.fire(this.active))}get active(){if(this._core.buffers.active===this._core.buffers.normal)return this.normal;if(this._core.buffers.active===this._core.buffers.alt)return this.alternate;throw Error(`Active buffer is neither normal nor alternate`)}get normal(){return this._normal.init(this._core.buffers.normal)}get alternate(){return this._alternate.init(this._core.buffers.alt)}},E7=class{constructor(e){this._core=e}registerCsiHandler(e,t){return this._core.registerCsiHandler(e,e=>t(e.toArray()))}addCsiHandler(e,t){return this.registerCsiHandler(e,t)}registerDcsHandler(e,t){return this._core.registerDcsHandler(e,(e,n)=>t(e,n.toArray()))}addDcsHandler(e,t){return this.registerDcsHandler(e,t)}registerEscHandler(e,t){return this._core.registerEscHandler(e,t)}addEscHandler(e,t){return this.registerEscHandler(e,t)}registerOscHandler(e,t){return this._core.registerOscHandler(e,t)}addOscHandler(e,t){return this.registerOscHandler(e,t)}},D7=class{constructor(e){this._core=e}register(e){this._core.unicodeService.register(e)}get versions(){return this._core.unicodeService.versions}get activeVersion(){return this._core.unicodeService.activeVersion}set activeVersion(e){this._core.unicodeService.activeVersion=e}},O7=[`cols`,`rows`],k7=0,A7=class extends s2{constructor(e){super(),this._core=this._register(new b7(e)),this._addonManager=this._register(new S7),this._publicOptions={...this._core.options};let t=e=>this._core.options[e],n=(e,t)=>{this._checkReadonlyOptions(e),this._core.options[e]=t};for(let e in this._core.options){let r={get:t.bind(this,e),set:n.bind(this,e)};Object.defineProperty(this._publicOptions,e,r)}}_checkReadonlyOptions(e){if(O7.includes(e))throw Error(`Option "${e}" can only be set in the constructor`)}_checkProposedApi(){if(!this._core.optionsService.rawOptions.allowProposedApi)throw Error(`You must set the allowProposedApi option to true to use proposed API`)}get onBell(){return this._core.onBell}get onBinary(){return this._core.onBinary}get onCursorMove(){return this._core.onCursorMove}get onData(){return this._core.onData}get onKey(){return this._core.onKey}get onLineFeed(){return this._core.onLineFeed}get onRender(){return this._core.onRender}get onResize(){return this._core.onResize}get onScroll(){return this._core.onScroll}get onSelectionChange(){return this._core.onSelectionChange}get onTitleChange(){return this._core.onTitleChange}get onWriteParsed(){return this._core.onWriteParsed}get element(){return this._core.element}get parser(){return this._parser||=new E7(this._core),this._parser}get unicode(){return this._checkProposedApi(),new D7(this._core)}get textarea(){return this._core.textarea}get rows(){return this._core.rows}get cols(){return this._core.cols}get buffer(){return this._buffer||=this._register(new T7(this._core)),this._buffer}get markers(){return this._checkProposedApi(),this._core.markers}get modes(){let e=this._core.coreService.decPrivateModes,t=`none`;switch(this._core.coreMouseService.activeProtocol){case`X10`:t=`x10`;break;case`VT200`:t=`vt200`;break;case`DRAG`:t=`drag`;break;case`ANY`:t=`any`}return{applicationCursorKeysMode:e.applicationCursorKeys,applicationKeypadMode:e.applicationKeypad,bracketedPasteMode:e.bracketedPasteMode,insertMode:this._core.coreService.modes.insertMode,mouseTrackingMode:t,originMode:e.origin,reverseWraparoundMode:e.reverseWraparound,sendFocusMode:e.sendFocus,synchronizedOutputMode:e.synchronizedOutput,wraparoundMode:e.wraparound}}get options(){return this._publicOptions}set options(e){for(let t in e)this._publicOptions[t]=e[t]}blur(){this._core.blur()}focus(){this._core.focus()}input(e,t=!0){this._core.input(e,t)}resize(e,t){this._verifyIntegers(e,t),this._core.resize(e,t)}open(e){this._core.open(e)}attachCustomKeyEventHandler(e){this._core.attachCustomKeyEventHandler(e)}attachCustomWheelEventHandler(e){this._core.attachCustomWheelEventHandler(e)}registerLinkProvider(e){return this._core.registerLinkProvider(e)}registerCharacterJoiner(e){return this._checkProposedApi(),this._core.registerCharacterJoiner(e)}deregisterCharacterJoiner(e){this._checkProposedApi(),this._core.deregisterCharacterJoiner(e)}registerMarker(e=0){return this._verifyIntegers(e),this._core.registerMarker(e)}registerDecoration(e){return this._checkProposedApi(),this._verifyPositiveIntegers(e.x??0,e.width??0,e.height??0),this._core.registerDecoration(e)}hasSelection(){return this._core.hasSelection()}select(e,t,n){this._verifyIntegers(e,t,n),this._core.select(e,t,n)}getSelection(){return this._core.getSelection()}getSelectionPosition(){return this._core.getSelectionPosition()}clearSelection(){this._core.clearSelection()}selectAll(){this._core.selectAll()}selectLines(e,t){this._verifyIntegers(e,t),this._core.selectLines(e,t)}dispose(){super.dispose()}scrollLines(e){this._verifyIntegers(e),this._core.scrollLines(e)}scrollPages(e){this._verifyIntegers(e),this._core.scrollPages(e)}scrollToTop(){this._core.scrollToTop()}scrollToBottom(){this._core.scrollToBottom()}scrollToLine(e){this._verifyIntegers(e),this._core.scrollToLine(e)}clear(){this._core.clear()}write(e,t){this._core.write(e,t)}writeln(e,t){this._core.write(e),this._core.write(`\r
202
- `,t)}paste(e){this._core.paste(e)}refresh(e,t){this._verifyIntegers(e,t),this._core.refresh(e,t)}reset(){this._core.reset()}clearTextureAtlas(){this._core.clearTextureAtlas()}loadAddon(e){this._addonManager.loadAddon(this,e)}static get strings(){return{get promptLabel(){return q1.get()},set promptLabel(e){q1.set(e)},get tooMuchOutput(){return Y1.get()},set tooMuchOutput(e){Y1.set(e)}}}_verifyIntegers(...e){for(k7 of e)if(k7===1/0||isNaN(k7)||k7%1!=0)throw Error(`This API only accepts integers`)}_verifyPositiveIntegers(...e){for(k7 of e)if(k7&&(k7===1/0||isNaN(k7)||k7%1!=0||k7<0))throw Error(`This API only accepts positive integers`)}},j7=40,M7=12,N7=120,P7=36,F7=60;function I7(e,t,n){let r=window.location.protocol===`https:`?`wss`:`ws`,i=new URL(`/api/sessions/${encodeURIComponent(e)}/terminal/ws`,`${r}://${window.location.host}`);return i.searchParams.set(`cols`,String(t)),i.searchParams.set(`rows`,String(n)),i.toString()}var L7=[{label:`esc`,data:`\x1B`},{label:`tab`,data:` `},{label:`◀`,data:`\x1B[D`},{label:`▲`,data:`\x1B[A`},{label:`▼`,data:`\x1B[B`},{label:`▶`,data:`\x1B[C`}];function R7({session:e}){let t=_.useRef(null),n=_.useRef(null),r=_.useRef(null),[i,a]=_.useState(``),[o,s]=_.useState(!1),[c,l]=_.useState(!1),u=_.useRef(!1),d=_.useRef(!1);_.useEffect(()=>{u.current=o},[o]),_.useEffect(()=>{d.current=c},[c]);let f=e?.status===`history`;function p(e){let t=n.current;t&&t.readyState===WebSocket.OPEN&&t.send(JSON.stringify({type:`input`,data:e})),r.current?.focus()}return _.useEffect(()=>{let i=t.current;if(!e||!i||f)return;let o=new A7({convertEol:!0,fontSize:13,cursorBlink:!0,theme:{background:`#09090b`}}),s=new B1;o.loadAddon(s),o.open(i),s.fit(),r.current=o;let c=Math.max(o.cols||N7,j7),l=Math.max(o.rows||P7,M7);a(`连接中...`);let p=new WebSocket(I7(e.name,c,l));n.current=p,p.onmessage=e=>{try{let t=JSON.parse(e.data);t.type===`output`?o.write(t.data):t.type===`status`?t.phase===`ready`?a(`已连接`):t.phase===`closed`&&a(`会话已结束`):t.type===`error`&&o.write(`\r\n[error] ${t.error}\r\n`)}catch{}},p.onclose=()=>a(`连接已断开`),p.onerror=()=>a(`连接出错`);let m=o.onData(e=>{if(!e||p.readyState!==WebSocket.OPEN)return;let t=e;if(u.current&&e.length===1){let n=e.charCodeAt(0);(n>=65&&n<=90||n>=97&&n<=122)&&(t=String.fromCharCode(n&31))}else d.current&&e.length===1&&(t=`\x1B`+e);p.send(JSON.stringify({type:`input`,data:t}))}),h=0,g=new ResizeObserver(()=>{window.clearTimeout(h),h=window.setTimeout(()=>s.fit(),F7)});return g.observe(i),()=>{g.disconnect(),window.clearTimeout(h),m.dispose(),(p.readyState===WebSocket.OPEN||p.readyState===WebSocket.CONNECTING)&&(p.send(JSON.stringify({type:`close`})),p.close()),o.dispose(),n.current=null,r.current=null}},[e?.name,f]),e?f?(0,J.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-1 bg-zinc-950 p-6 text-center text-sm text-zinc-400`,children:[(0,J.jsx)(`p`,{className:`font-medium text-zinc-200`,children:`容器不可用`}),(0,J.jsx)(`p`,{children:`当前会话只有历史记录,没有可访问的运行中容器,无法连接终端。`})]}):(0,J.jsxs)(`div`,{className:`flex h-full flex-col bg-zinc-950`,children:[(0,J.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 border-b border-zinc-800 bg-zinc-900 px-2 py-1.5`,children:[(0,J.jsxs)(`div`,{className:`flex min-w-0 gap-1 overflow-x-auto`,children:[L7.map(e=>(0,J.jsx)(`button`,{type:`button`,onClick:()=>p(e.data),className:`shrink-0 rounded border border-zinc-700 px-2 py-0.5 font-mono text-xs text-zinc-300 hover:bg-zinc-800`,children:e.label},e.label)),(0,J.jsx)(`button`,{type:`button`,onClick:()=>{s(e=>!e),r.current?.focus()},className:K(`shrink-0 rounded border border-zinc-700 px-2 py-0.5 font-mono text-xs text-zinc-300 hover:bg-zinc-800`,o&&`border-zinc-100 bg-zinc-100 text-zinc-900 hover:bg-zinc-100`),children:`ctrl`}),(0,J.jsx)(`button`,{type:`button`,onClick:()=>{l(e=>!e),r.current?.focus()},className:K(`shrink-0 rounded border border-zinc-700 px-2 py-0.5 font-mono text-xs text-zinc-300 hover:bg-zinc-800`,c&&`border-zinc-100 bg-zinc-100 text-zinc-900 hover:bg-zinc-100`),children:`alt`})]}),(0,J.jsx)(`span`,{className:`shrink-0 truncate px-1 text-xs text-zinc-400`,children:i})]}),(0,J.jsx)(`div`,{ref:t,className:`min-h-0 flex-1 p-2`})]}):(0,J.jsx)(`div`,{className:`flex h-full items-center justify-center bg-zinc-950 p-6 text-center text-sm text-zinc-400`,children:`请先在左侧选择一个容器 / AGENT`})}var z7=_.createContext(void 0);function B7(e){let t=_.useContext(z7);if(t===void 0&&!e)throw Error(_n(47));return t}var V7={...Bl,disabled:e=>e.disabled,instantType:e=>e.instantType,openMethod:e=>e.openMethod,openChangeReason:e=>e.openChangeReason,modal:e=>e.modal,focusManagerModal:e=>e.focusManagerModal,stickIfOpen:e=>e.stickIfOpen,titleElementId:e=>e.titleElementId,descriptionElementId:e=>e.descriptionElementId,openOnHover:e=>e.openOnHover,closeDelay:e=>e.closeDelay,adaptiveOrigin:e=>e.adaptiveOrigin},H7=class extends dl{constructor(e,t,n){let r=new jl;super(U7(e,r,t,n),W7(r),V7)}setOpen=(e,t)=>{let n=t.reason===oi,r=t.reason===`trigger-press`&&t.event.detail===0,i=!e&&(t.reason===`escape-key`||t.reason==null),a=wl(t),o=this.select(`activeTriggerId`);if(!e&&t.reason===`close-press`&&t.trigger==null&&o!=null&&(t.trigger=this.context.triggerElements.getById(o)??this.select(`activeTriggerElement`)??void 0),this.context.onOpenChange?.(e,t),t.isCanceled)return;this.state.floatingRootContext.dispatchOpenChange(e,t);let s=()=>{let n={open:e,openChangeReason:t.reason};Cl(n,e,t.trigger,a()),this.update(n)};n?(this.set(`stickIfOpen`,!0),this.context.stickIfOpenTimeout.start(500,()=>{this.set(`stickIfOpen`,!1)}),ds.flushSync(s)):s();let c;r?c=`click`:i?c=`dismiss`:t.reason===`focus-out`&&(c=`focus`),this.set(`instantType`,c)}};function U7(e,t,n,r=!1){let i={...Nl(),disabled:!1,modal:!1,focusManagerModal:!1,instantType:void 0,openMethod:null,openChangeReason:null,titleElementId:void 0,descriptionElementId:void 0,stickIfOpen:!0,openOnHover:!1,closeDelay:0,adaptiveOrigin:void 0,...e};return i.open&&e?.mounted===void 0&&(i.mounted=!0),i.floatingRootContext=Pl(t,n,r),i}function W7(e){return{popupRef:_.createRef(),onOpenChange:void 0,onOpenChangeComplete:void 0,triggerFocusTargetRef:_.createRef(),beforeContentFocusGuardRef:_.createRef(),stickIfOpenTimeout:new ji,triggerElements:e}}function G7({props:e}){let{children:t,open:n,defaultOpen:r=!1,onOpenChange:i,onOpenChangeComplete:a,modal:o=!1,handle:s,triggerId:c,defaultTriggerId:l=null}=e,u=q7(s,{modal:o,open:r,openProp:n,activeTriggerId:l,triggerIdProp:c});u.useControlledProp(`openProp`,n),u.useControlledProp(`triggerIdProp`,c);let d=u.useState(`open`),f=u.useState(`mounted`),p=u.useState(`payload`);u.useContextCallback(`onOpenChange`,i),u.useContextCallback(`onOpenChangeComplete`,a),Al(u,d),Dl(u);let{forceUnmount:m}=Ol(d,u,()=>{u.update({stickIfOpen:!0,openChangeReason:null})});u.useSyncedValues({modal:o}),_.useEffect(()=>{d||u.context.stickIfOpenTimeout.clear()},[u,d]),_.useImperativeHandle(e.actionsRef,()=>({unmount:m,close:()=>u.setOpen(!1,xi(yi))}),[m,u]);let h=d||f;return(0,J.jsxs)(z7.Provider,{value:u,children:[s&&(0,J.jsx)(xl,{handle:s,store:u}),h&&(0,J.jsx)(J7,{store:u,modal:o}),typeof t==`function`?t({payload:p}):t]})}function K7(e){return B7(!0)?(0,J.jsx)(G7,{props:e}):(0,J.jsx)(Ts,{children:(0,J.jsx)(G7,{props:e})})}function q7(e,t){let n=bl((e,n)=>new H7(t,e,n));return _.useEffect(()=>n.context.stickIfOpenTimeout.disposeEffect(),[n]),n}function J7({store:e,modal:t}){let n=Hs(e.useState(`floatingRootContext`),{outsidePressEvent:{mouse:t===`trap-focus`?`sloppy`:`intentional`,touch:`sloppy`}}),r=n.reference,i=n.floating;return kl(e,{activeTriggerProps:r,inactiveTriggerProps:r,popupProps:i}),null}var Y7=_.forwardRef(function(e,t){let{render:n,className:r,style:i,disabled:a=!1,nativeButton:o=!0,handle:s,payload:c,openOnHover:l=!1,delay:u=300,closeDelay:d=0,id:f,...p}=e,m=B7(!0),h=Vl(s)??m;if(!h)throw Error(_n(74));let g=Di(f),v=h.useState(`isTriggerActive`,g),y=h.useState(`floatingRootContext`),b=h.useState(`isOpenedByTrigger`,g),x=h.useState(`triggerPopupId`,g),S=_.useRef(null),{registerTrigger:C,isMountedByThisTrigger:w}=El(g,S,h,{payload:c,disabled:a,openOnHover:l,closeDelay:d}),T=h.useState(`openChangeReason`),E=h.useState(`stickIfOpen`),D=h.useState(`openMethod`),O=h.useState(`focusManagerModal`),k=eu(y,{enabled:!a&&l&&(D!==`touch`||T!==`trigger-press`),mouseOnly:!0,move:!1,handleClose:_u(),restMs:u,delay:{close:d},triggerElementRef:S,isActiveTrigger:v,isClosing:()=>h.select(`transitionStatus`)===`ending`}),A=Is(y,{stickIfOpen:E}),j=rd(()=>h.select(`open`),e=>{h.set(`openMethod`,e)}),M=h.useState(`triggerProps`,w),{getButtonProps:N,buttonRef:P}=ti({disabled:a,native:o}),F={open(e){return e&&T===`trigger-press`?hr.open(e):mr.open(e)}},{preFocusGuardRef:I,handlePreFocusGuardFocus:L,handleFocusTargetFocus:R}=DY(h,S),z=$n(`button`,e,{state:{disabled:a,open:b},ref:[P,t,C,S],props:[A.reference,k,M,j,{[ss]:``,id:g,"aria-haspopup":`dialog`,"aria-expanded":b,"aria-controls":x},p,N],stateAttributesMapping:F}),ee=(0,J.jsx)(_.Fragment,{children:z},g);return w&&!O?(0,J.jsxs)(_.Fragment,{children:[(0,J.jsx)(Ia,{ref:I,onFocus:L}),ee,(0,J.jsx)(Ia,{ref:h.context.triggerFocusTargetRef,onFocus:R})]}):ee}),X7=_.createContext(void 0);function Z7(){let e=_.useContext(X7);if(e===void 0)throw Error(_n(45));return e}var Q7=_.forwardRef(function(e,t){let{keepMounted:n=!1,...r}=e;return B7().useState(`mounted`)||n?(0,J.jsx)(X7.Provider,{value:n,children:(0,J.jsx)(gs,{ref:t,...r})}):null}),$7=_.createContext(void 0);function e9(){let e=_.useContext($7);if(!e)throw Error(_n(46));return e}var t9=_.forwardRef(function(e,t){let{render:n,className:r,style:i,anchor:a,positionMethod:o,side:s,align:c,sideOffset:l,alignOffset:u,collisionBoundary:d=`clipping-ancestors`,collisionPadding:f,arrowPadding:p,sticky:m,disableAnchorTracking:h=!1,collisionAvoidance:g=ls,...v}=e,y=B7(),b=Z7(),x=Cs(),S=y.useState(`floatingRootContext`),C=y.useState(`mounted`),w=y.useState(`open`),T=y.useState(`openChangeReason`),E=y.useState(`activeTriggerElement`),D=y.useState(`modal`),O=y.useState(`openMethod`),k=y.useState(`positionerElement`),A=y.useState(`instantType`),j=y.useState(`transitionStatus`),M=y.useState(`adaptiveOrigin`),N=_.useRef(null),P=gl(k),F=tp({anchor:a,floatingRootContext:S,positionMethod:o,mounted:C,side:s,sideOffset:l,align:c,alignOffset:u,arrowPadding:p,collisionBoundary:d,collisionPadding:f,sticky:m,disableAnchorTracking:h,keepMounted:b,nodeId:x,collisionAvoidance:g,adaptiveOrigin:M}),I=S.useState(`domReferenceElement`);q(()=>{let e=I,t=N.current;if(e&&(N.current=e),t&&e&&e!==t){y.set(`instantType`,void 0);let e=new AbortController;return P(()=>{y.set(`instantType`,`trigger-change`)},e.signal),()=>{e.abort()}}},[I,P,y]);let L=D===!0&&T!==`trigger-hover`;dp(w&&L,O===`touch`,k,E);let R=y.useStateSetter(`positionerElement`),z=lp(e,{open:w,side:F.side,align:F.align,anchorHidden:F.anchorHidden,instant:A},{styles:F.positionerStyles,transitionStatus:j,props:v,refs:[t,R],hidden:!C,inert:!w});return(0,J.jsxs)($7.Provider,{value:F,children:[C&&L&&(0,J.jsx)(Pu,{inert:Nu(!w),cutout:E}),(0,J.jsx)(ws,{id:x,children:z})]})}),n9=_.createContext(void 0);function r9(){let[e,t]=_.useState(0),n=qr(()=>(t(e=>e+1),()=>{t(e=>Math.max(0,e-1))}));return{context:_.useMemo(()=>({register:n}),[n]),hasClosePart:e>0}}var i9=_.forwardRef(function(e,t){let{render:n,className:r,style:i,initialFocus:a,finalFocus:o,...s}=e,c=B7(),l=e9(),u=_p(!0)!=null,{context:d,hasClosePart:f}=r9(),p=c.useState(`open`),m=c.useState(`openMethod`),h=c.useState(`instantType`),g=c.useState(`transitionStatus`),_=c.useState(`popupProps`),v=c.useState(`titleElementId`),y=c.useState(`descriptionElementId`),b=c.useState(`modal`),x=c.useState(`mounted`),S=c.useState(`openChangeReason`),C=c.useState(`activeTriggerElement`),w=c.useState(`floatingRootContext`),T=w.useState(`floatingId`),E=c.useState(`disabled`),D=c.useState(`openOnHover`),O=c.useState(`closeDelay`);_l({open:p,ref:c.context.popupRef,onComplete(){p&&c.context.onOpenChangeComplete?.(!0)}}),Ql(w,{enabled:D&&!E,closeDelay:O});let k=a===void 0?yl(c.context.popupRef):a,A=b!==!1&&f;c.useSyncedValue(`focusManagerModal`,A);let j=c.useStateSetter(`popupElement`),M=$n(`div`,e,{state:{open:p,side:l.side,align:l.align,instant:h,transitionStatus:g},ref:[t,c.context.popupRef,j],props:[_,{id:T,role:`dialog`,...vl,"aria-labelledby":v,"aria-describedby":y,onKeyDown(e){u&&wu.has(e.key)&&e.stopPropagation()}},cp(g),s],stateAttributesMapping:_r});return(0,J.jsx)(Fs,{context:w,openInteractionType:m,modal:A,disabled:!x||S===`trigger-hover`,initialFocus:k,returnFocus:o,restoreFocus:`popup`,previousFocusableElement:Tr(C)?C:void 0,nextFocusableElement:c.context.triggerFocusTargetRef,beforeContentFocusGuardRef:c.context.beforeContentFocusGuardRef,children:(0,J.jsx)(n9.Provider,{value:d,children:M})})});function a9({...e}){return(0,J.jsx)(K7,{"data-slot":`popover`,...e})}function o9({...e}){return(0,J.jsx)(Y7,{"data-slot":`popover-trigger`,...e})}function s9({className:e,align:t=`center`,alignOffset:n=0,side:r=`bottom`,sideOffset:i=4,...a}){return(0,J.jsx)(Q7,{children:(0,J.jsx)(t9,{align:t,alignOffset:n,side:r,sideOffset:i,className:`isolate z-50`,children:(0,J.jsx)(i9,{"data-slot":`popover-content`,className:K(`z-50 flex w-72 origin-(--transform-origin) flex-col gap-2.5 rounded-lg bg-popover p-2.5 text-sm text-popover-foreground shadow-md ring-1 ring-foreground/10 outline-hidden duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95`,e),...a})})})}function c9(e){let{open:t,defaultOpen:n,onOpenChange:r,disabled:i}=e,[a,o]=Xd({controlled:t,default:n,name:`Collapsible`,state:`open`}),{mounted:s,setMounted:c,transitionStatus:l}=hl(a,!0,!0),u=Di(),[d,f]=_.useState(),p=d===null?void 0:d??u,m=qr(e=>{let t=!a,n=xi(ai,e.nativeEvent);r(t,n),!n.isCanceled&&o(t)});return _.useMemo(()=>({defaultPanelId:u,disabled:i,handleTrigger:m,mounted:s,open:a,panelId:p,setMounted:c,setOpen:o,setPanelIdState:f,transitionStatus:l}),[u,i,m,s,a,p,c,o,f,l])}var l9=_.createContext(void 0);function u9(){let e=_.useContext(l9);if(e===void 0)throw Error(_n(15));return e}var d9=function(e){return e.open=`data-open`,e.closed=`data-closed`,e[e.startingStyle=ar.startingStyle]=`startingStyle`,e[e.endingStyle=ar.endingStyle]=`endingStyle`,e}({}),f9=function(e){return e.panelOpen=`data-panel-open`,e}({}),p9={[d9.open]:``},m9={[d9.closed]:``},h9={open(e){return e?{[f9.panelOpen]:``}:null}},g9={open(e){return e?p9:m9},...cr},_9=_.forwardRef(function(e,t){let{render:n,className:r,defaultOpen:i=!1,disabled:a=!1,onOpenChange:o,open:s,style:c,...l}=e,u=qr(o),d=c9({open:s,defaultOpen:i,onOpenChange:u,disabled:a}),f=_.useMemo(()=>({open:d.open,disabled:d.disabled,transitionStatus:d.transitionStatus}),[d.open,d.disabled,d.transitionStatus]),p=_.useMemo(()=>({...d,onOpenChange:u,state:f}),[d,u,f]),m=$n(`div`,e,{state:f,ref:t,props:l,stateAttributesMapping:g9});return(0,J.jsx)(l9.Provider,{value:p,children:m})}),v9={...h9,...cr},y9=_.forwardRef(function(e,t){let{panelId:n,open:r,handleTrigger:i,state:a,disabled:o}=u9(),{className:s,disabled:c=o,render:l,nativeButton:u=!0,style:d,...f}=e,{getButtonProps:p,buttonRef:m}=ti({disabled:c,focusableWhenDisabled:!0,native:u});return $n(`button`,e,{state:a,ref:[t,m],props:[{"aria-controls":r?n:void 0,"aria-expanded":r,onClick:i},f,p],stateAttributesMapping:v9})}),b9={height:void 0,width:void 0};function x9(e){let{externalRef:t,hiddenUntilFound:n,id:r,keepMounted:i,mounted:a,onOpenChange:o,open:s,setMounted:c,setOpen:l,transitionStatus:u}=e,d=_.useRef(null),f=_.useRef(null),[p,m]=_.useState(b9),h=_.useRef(b9),g=_.useRef(!1),v=_.useRef(s),y=_.useRef(!1),[b,x]=_.useState(!1),S=_.useRef(null),C=Sn(t,d),w=Da(s),T=gl(d),E=!s&&!a,D=b?`idle`:u,O=s&&(v.current||y.current),k=!s&&a&&f.current===`css-animation`&&p.height===void 0&&p.width===void 0?h.current:p,A=n&&E&&f.current!==`css-animation`,j=qr((e,t=!0)=>{t&&(h.current=e),m(e)}),M=qr(()=>{S.current?.(),S.current=null}),N=qr(e=>{M(),S.current=()=>{S.current=null,e()}}),P=qr(()=>{s&&a&&f.current===`css-animation`&&(y.current=!0)});q(()=>{!b||u===`starting`||x(!1)},[b,u]),_.useEffect(()=>()=>{P(),M()},[P,M]),q(()=>{let e=d.current;if(!e)return;!s&&S.current&&M();let t=C9(e,O);if(f.current=t,s&&u===`idle`&&v.current&&t===`css-animation`){h.current=S9(e);return}if(s&&u===`starting`){let n=g.current;if(g.current=!1,t===`none`){j(S9(e)),x(!0);return}if(t===`css-transition`){let t=E9(e);if(j(S9(e)),!n)return t;let r=T9(e,`transition-duration`,`0s`);return N(r),x(!0),t}j(S9(e));let r=T9(e,`animation-name`,`none`);if(!n){r();return}let i=T9(e,`animation-duration`,`0s`);r(),N(i),x(!0);return}if(!s&&a&&(u===`idle`||u===`starting`)){if(v.current=!1,y.current=!1,t===`none`){j(b9,!1),c(!1);return}j(S9(e));return}if(u!==`ending`)return;if(t===`none`){c(!1);return}let n=S9(e);if(!(n.height>0||n.width>0)){c(!1);return}j(n),t===`css-animation`&&T9(e,`animation-name`,`none`)()},[a,s,M,j,c,N,O,u]),_l({enabled:s&&a&&D===`idle`,open:!0,ref:d,onComplete(){s&&j(b9,!1)}}),_.useEffect(()=>{if(s||!a||D!==`ending`||!d.current)return;let e=new AbortController,t=-1;function n(){w.current||(c(!1),j(b9,!1))}return t=ja.request(()=>{T(n,e.signal)}),()=>{ja.cancel(t),e.abort()}},[w,a,s,D,T,j,c]),q(()=>{let e=d.current;!e||!n||!E||e.setAttribute(`hidden`,`until-found`)},[E,n]),_.useEffect(function(){let e=d.current;if(!e)return;function t(e){let t=xi(ii,e);o(!0,t),!t.isCanceled&&(g.current=!0,l(!0))}return Ta(e,`beforematch`,t)},[o,l]);let F=i||n||a||s;return{height:k.height,props:{...A?{[d9.startingStyle]:``}:void 0,hidden:E,id:r},ref:C,shouldPreventOpenAnimation:O,shouldRender:F,transitionStatus:D,width:k.width}}function S9(e){return{height:e.scrollHeight,width:e.scrollWidth}}function C9(e,t){let n=xr(e).getComputedStyle(e),r=(n.animationName.split(`,`).map(e=>e.trim()).some(e=>e!==``&&e!==`none`)||t)&&w9(n.animationDuration),i=w9(n.transitionDuration);return r&&i||i?`css-transition`:r?`css-animation`:`none`}function w9(e){return e.split(`,`).map(e=>e.trim()).some(e=>e!==``&&Number.parseFloat(e)>0)}function T9(e,t,n){let r=e.style.getPropertyValue(t),i=e.style.getPropertyPriority(t);return e.style.setProperty(t,n),()=>{if(r===``){e.style.removeProperty(t);return}e.style.setProperty(t,r,i)}}function E9(e){let t={"justify-content":e.style.justifyContent,"align-items":e.style.alignItems,"align-content":e.style.alignContent,"justify-items":e.style.justifyItems};Object.keys(t).forEach(t=>{e.style.setProperty(t,`initial`,`important`)});function n(){Object.entries(t).forEach(([t,n])=>{if(n===``){e.style.removeProperty(t);return}e.style.setProperty(t,n)})}let r=ja.request(n);return()=>{ja.cancel(r),n()}}var D9=function(e){return e.collapsiblePanelHeight=`--collapsible-panel-height`,e.collapsiblePanelWidth=`--collapsible-panel-width`,e}({}),O9=_.forwardRef(function(e,t){let{className:n,hiddenUntilFound:r,keepMounted:i,render:a,id:o,style:s,...c}=e,{defaultPanelId:l,mounted:u,onOpenChange:d,open:f,setMounted:p,setPanelIdState:m,setOpen:h,state:g,transitionStatus:_}=u9(),v=r??!1,y=i??!1,b=o||void 0,x=b??l;q(()=>(m(e=>b??(e===null?void 0:e)),()=>{m(e=>e===b?null:e)}),[b,m]);let{height:S,props:C,ref:w,shouldPreventOpenAnimation:T,shouldRender:E,transitionStatus:D,width:O}=x9({externalRef:t,hiddenUntilFound:v,id:x,keepMounted:y,mounted:u,onOpenChange:d,open:f,setMounted:p,setOpen:h,transitionStatus:_}),k={...g,transitionStatus:D},A=Ln(s,k),j=$n(`div`,{...e,style:void 0},{state:k,ref:w,props:[C,{style:{[D9.collapsiblePanelHeight]:S===void 0?`auto`:`${S}px`,[D9.collapsiblePanelWidth]:O===void 0?`auto`:`${O}px`}},c,A?{style:A}:void 0,T?{style:{animationName:`none`}}:void 0],stateAttributesMapping:g9});return E?j:null});function k9({...e}){return(0,J.jsx)(_9,{"data-slot":`collapsible`,...e})}function A9({...e}){return(0,J.jsx)(y9,{"data-slot":`collapsible-trigger`,...e})}function j9({...e}){return(0,J.jsx)(O9,{"data-slot":`collapsible-content`,...e})}var M9={tool:fe,command:de,mcp:ae,agent_message:ne,error:re};function N9(e){if(e==null)return``;if(typeof e==`string`)return e;try{return JSON.stringify(e,null,2)}catch{return String(e)}}function P9(e){let t=[],n=(e,n)=>{let r=N9(n).trim();r&&t.push({label:e,value:r})};return e.kind===`command`&&(n(`命令`,e.command),typeof e.exitCode==`number`?n(`退出码`,String(e.exitCode)):n(`状态`,e.status),n(`结果`,e.result),n(`错误`,e.error)),e.kind===`mcp`&&(n(`工具`,[e.server,e.toolName].filter(Boolean).join(`.`)),n(`参数摘要`,e.argumentSummary),n(`参数`,e.arguments),n(`结果`,e.result),n(`错误`,e.error)),e.kind===`tool`&&(n(`工具`,e.toolName),n(`参数摘要`,e.argumentSummary),n(`参数`,e.arguments),n(`结果`,e.result),n(`错误`,e.error)),(e.kind===`agent_message`||e.kind===`status`||e.kind===`error`)&&e.detail&&n(`详情`,e.detail),t}function F9({text:e}){let[t,n]=_.useState(!1);async function r(){try{await navigator.clipboard.writeText(e),n(!0),window.setTimeout(()=>n(!1),1500)}catch{}}return(0,J.jsx)(`button`,{type:`button`,onClick:r,title:`复制`,className:`shrink-0 rounded p-0.5 text-muted-foreground hover:bg-muted hover:text-foreground`,children:t?(0,J.jsx)(N,{className:`size-3`}):(0,J.jsx)(L,{className:`size-3`})})}function I9({part:e}){let t=e.label===`结果`;return(0,J.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,J.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,J.jsx)(`span`,{className:`text-xs font-medium text-muted-foreground`,children:e.label}),t?(0,J.jsx)(F9,{text:e.value}):null]}),(0,J.jsx)(`pre`,{className:`overflow-x-auto rounded-md bg-muted p-2 font-mono text-xs whitespace-pre-wrap text-foreground`,children:e.value})]})}function L9({event:e}){let[t,n]=_.useState(!1),r=M9[e.kind]||ne,i=e.kind===`agent_message`,a=_.useMemo(()=>P9(e),[e]);return i||a.length>0?(0,J.jsxs)(k9,{open:t,onOpenChange:n,children:[(0,J.jsxs)(A9,{className:`flex w-full items-center gap-1.5 rounded-md px-1.5 py-1 text-left text-sm hover:bg-muted`,children:[(0,J.jsx)(r,{className:`size-3.5 shrink-0 text-muted-foreground`}),(0,J.jsx)(`span`,{className:`flex-1 truncate text-foreground`,children:i?`说明`:e.text}),(0,J.jsx)(F,{className:K(`size-3.5 shrink-0 text-muted-foreground transition-transform`,t&&`rotate-90`)})]}),(0,J.jsx)(j9,{className:`flex flex-col gap-2 px-1.5 pt-1 pb-1.5 pl-6`,children:i&&!a.length?(0,J.jsx)(`p`,{className:`text-sm whitespace-pre-wrap text-foreground`,children:e.detail||e.text}):a.map(e=>(0,J.jsx)(I9,{part:e},e.label))})]}):(0,J.jsxs)(`div`,{className:`flex items-start gap-1.5 px-1.5 py-1 text-sm`,children:[(0,J.jsx)(r,{className:`mt-0.5 size-3.5 shrink-0 text-muted-foreground`}),(0,J.jsx)(`span`,{className:`flex-1 truncate text-foreground`,children:e.text})]})}function R9({trace:e}){let[t,n]=_.useState(!1),r=_.useMemo(()=>Qt(e.traceEvents||[]),[e.traceEvents]);if(!r.length)return null;let i=$t(r,e.pending===!0);return(0,J.jsxs)(k9,{open:t,onOpenChange:n,className:`w-full max-w-[75%]`,children:[(0,J.jsxs)(A9,{className:`flex w-full items-center gap-1.5 rounded-lg border bg-muted/40 px-2.5 py-1.5 text-left text-xs text-muted-foreground hover:bg-muted`,children:[(0,J.jsx)(F,{className:K(`size-3.5 shrink-0 transition-transform`,t&&`rotate-90`)}),(0,J.jsxs)(`span`,{className:`flex-1`,children:[`执行过程 · `,i]})]}),(0,J.jsx)(j9,{className:`mt-1 flex flex-col gap-0.5 rounded-lg border bg-muted/20 p-1.5`,children:r.map((e,t)=>(0,J.jsx)(L9,{event:e},`${e.kind}-${t}`))})]})}var z9={activity:`聊天`,terminal:`终端`,files:`文件`,detail:`详情`,config:`配置`,check:`检查`},B9=[`activity`,`files`],V9=Object.keys(z9).filter(e=>!B9.includes(e)),H9=6e3,U9=6e5,W9=/^(\d+\.\d+\.\d+)-([A-Za-z0-9][A-Za-z0-9_.-]*)$/,G9={ok:`secondary`,warn:`outline`,danger:`destructive`,info:`outline`},K9={agent:`当前 AGENT 覆盖`,container:`容器默认模板`,inferred:`从启动命令推导`,none:`未配置`},vee={user:`用户`,assistant:`AGENT`,system:`系统`};function q9(e){return e===`history`?{label:`仅历史`,tone:`warn`}:e.toLowerCase().includes(`up`)?{label:`运行中`,tone:`ok`}:{label:`已停止`,tone:`danger`}}function J9(e){let t=e.lastResumeAt?X9(e.lastResumeAt):`暂无记录`;return e.lastResumeOk===!0?{value:`最近成功`,tone:`ok`,detail:`最近一次 resume 成功,时间:${t}。`}:e.lastResumeOk===!1?{value:`最近失败`,tone:`danger`,detail:e.lastResumeError?`最近一次 resume 失败:${e.lastResumeError}`:`最近一次 resume 失败,时间:${t}。`}:e.resumeSupported?{value:`未执行`,tone:`warn`,detail:`支持 resume,但当前会话还没有最近一次执行记录。`}:{value:`不支持`,tone:`warn`,detail:`当前 Agent 程序或模板不支持 resume。`}}function Y9({title:e,rows:t}){return(0,J.jsxs)(VQ,{children:[(0,J.jsx)(HQ,{children:(0,J.jsx)(UQ,{className:`text-sm`,children:e})}),(0,J.jsx)(WQ,{className:`flex flex-col divide-y`,children:t.map(e=>(0,J.jsxs)(`div`,{className:`flex flex-col gap-0.5 py-2 first:pt-0 last:pb-0`,children:[(0,J.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,J.jsx)(`span`,{className:`text-sm text-muted-foreground`,children:e.label}),e.tone?(0,J.jsx)(xd,{variant:G9[e.tone],children:e.value}):(0,J.jsx)(`span`,{className:`truncate text-sm font-medium`,children:e.value})]}),e.detail?(0,J.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:e.detail}):null]},e.label))})]})}function X9(e){if(!e)return``;let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString()}function Z9({text:e,markdown:t}){let[n,r]=_.useState(!1),[i,a]=_.useState(!1);async function o(e){try{await navigator.clipboard.writeText(e),a(!0),window.setTimeout(()=>a(!1),1500)}catch{}r(!1)}return t===void 0?(0,J.jsx)(`button`,{type:`button`,onClick:()=>o(e),title:`复制`,className:`rounded p-0.5 text-muted-foreground hover:bg-muted hover:text-foreground`,children:i?(0,J.jsx)(N,{className:`size-3`}):(0,J.jsx)(L,{className:`size-3`})}):(0,J.jsxs)(a9,{open:n,onOpenChange:r,children:[(0,J.jsx)(o9,{render:(0,J.jsx)(`button`,{type:`button`,title:`复制`,className:`rounded p-0.5 text-muted-foreground hover:bg-muted hover:text-foreground`}),children:i?(0,J.jsx)(N,{className:`size-3`}):(0,J.jsx)(L,{className:`size-3`})}),(0,J.jsx)(s9,{align:`start`,className:`w-32 p-1`,children:(0,J.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,J.jsx)(ud,{variant:`ghost`,size:`sm`,className:`justify-start`,onClick:()=>o(e),children:`复制文本`}),(0,J.jsx)(ud,{variant:`ghost`,size:`sm`,className:`justify-start`,onClick:()=>o(t),children:`复制 Markdown`})]})})]})}function yee({session:e,messages:t,mode:n,onPreviewHtml:r}){let i=_.useMemo(()=>Xt(t),[t]),a=_.useRef(null),o=_.useRef(!0);function s(){let e=a.current;e&&(o.current=YX(e.scrollTop,e.scrollHeight,e.clientHeight))}return _.useEffect(()=>{let e=a.current;!e||!o.current||(e.scrollTop=e.scrollHeight)},[i]),e?i.length?(0,J.jsx)(`div`,{ref:a,onScroll:s,className:`h-full overflow-x-hidden overflow-y-auto overscroll-y-contain`,children:(0,J.jsx)(`div`,{className:`flex flex-col gap-3 p-4`,children:i.map(e=>{let t=e.mode===`agent`||e.mode===`command`?e.mode:``,i=t!==``&&t!==n,a=e.streamTrace===!0&&!e.pairedTrace;return(0,J.jsxs)(`div`,{className:K(`flex flex-col gap-1 transition-opacity`,e.role===`user`?`items-end`:`items-start`,i&&`opacity-25`),children:[e.pairedTrace?(0,J.jsx)(R9,{trace:e.pairedTrace}):null,a?(0,J.jsx)(R9,{trace:e}):(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`div`,{className:K(`max-w-full rounded-xl px-3 py-2 text-sm sm:max-w-[75%]`,e.role===`user`?`max-w-[88%] bg-muted/80 text-foreground whitespace-pre-wrap sm:max-w-[75%]`:e.mode===`command`?`bg-muted/40 whitespace-pre-wrap text-foreground`:e.role===`system`?`bg-transparent whitespace-pre-wrap text-muted-foreground italic`:`bg-muted/40 text-foreground`,e.pending&&`opacity-70`),children:e.role===`assistant`?e.pending?(0,J.jsx)(`div`,{className:`whitespace-pre-wrap`,children:e.content||`…`}):(0,J.jsx)(E1,{content:e.content||``,onPreviewHtml:e=>r(`聊天中的 HTML 代码块`,e)}):e.content||(e.pending?`…`:``)}),(0,J.jsxs)(`span`,{className:`flex items-center gap-1 px-1 text-xs text-muted-foreground`,children:[X9(e.timestamp),e.interrupted?` · 已停止`:``,e.content&&!e.pending?e.role===`assistant`?(0,J.jsx)(Z9,{text:IQ(e.content),markdown:e.content}):(0,J.jsx)(Z9,{text:e.content}):null]})]})]},e.id)})})}):(0,J.jsx)(`div`,{className:`flex h-full flex-col items-center justify-center gap-2 p-6 text-center text-sm text-muted-foreground`,children:(0,J.jsx)(`p`,{children:`还没有对话记录,在下方输入内容开始与 AGENT 交流。`})}):(0,J.jsx)(`div`,{className:`flex h-full flex-col items-center justify-center gap-2 p-6 text-center text-sm text-muted-foreground`,children:(0,J.jsx)(`p`,{children:`请选择左侧的容器 / AGENT,或点击「新建容器」创建一个新会话。`})})}function Q9({text:e}){return(0,J.jsx)(`div`,{className:`flex h-full items-center justify-center p-6 text-center text-sm text-muted-foreground`,children:e})}function bee({detail:e}){if(!e)return(0,J.jsx)(Q9,{text:`请先选择左侧的容器 / AGENT`});let t=q9(e.status),n=J9(e),r=W9.test(e.applied.imageVersion||``),i=!!(e.applied.hostPath&&e.applied.containerPath);return(0,J.jsxs)(`div`,{className:`flex h-full flex-col gap-3 overflow-auto p-4`,children:[(0,J.jsx)(Y9,{title:`运行检查`,rows:[{label:`容器状态`,value:t.label,tone:t.tone,detail:t.tone===`ok`?`容器处于可交互状态。`:`当前不是活跃运行态,部分功能可能受限。`},{label:`Agent 输入`,value:e.agentEnabled?`已配置`:`未配置`,tone:e.agentEnabled?`ok`:`warn`,detail:e.agentEnabled?`活动页可直接发送 Agent 提示词。`:`当前会话不支持 Agent 模式。`},{label:`Resume 健康`,value:n.value,tone:n.tone,detail:n.detail},{label:`镜像版本`,value:r?`格式正常`:`格式异常`,tone:r?`ok`:`danger`,detail:e.applied.imageVersion?`当前值:${e.applied.imageVersion}。建议保持 x.y.z-后缀 格式,便于 manyoyo 的版本校验。`:`缺少 imageVersion,manyoyo 的版本校验会失效。`},{label:`工作目录映射`,value:i?`已配置`:`缺失`,tone:i?`ok`:`danger`,detail:i?`宿主目录与容器目录都已配置。`:`hostPath / containerPath 是容器会话最关键的上下文。`}]}),e.lastResumeError?(0,J.jsx)(Y9,{title:`最近问题`,rows:[{label:`Resume 错误`,value:`有错误输出`,tone:`danger`,detail:e.lastResumeError}]}):null]})}function xee({detail:e}){if(!e)return(0,J.jsx)(Q9,{text:`请先选择左侧的容器 / AGENT`});let t=e.applied,n=K9[e.agentPromptSource]||`未配置`,r=[];return t.shellPrefix&&r.push({label:`shellPrefix`,value:t.shellPrefix}),t.shell&&r.push({label:`shell`,value:t.shell}),t.shellSuffix&&r.push({label:`shellSuffix`,value:t.shellSuffix}),t.defaultCommand&&t.defaultCommand!==t.shell?r.push({label:`启动命令`,value:t.defaultCommand}):t.shell||r.push({label:`启动命令`,value:t.defaultCommand||`—`}),r.push({label:`Agent 模板`,value:e.agentPromptCommand||`—`}),r.push({label:`模板来源`,value:n}),r.push({label:`yolo`,value:t.yolo||`—`}),(0,J.jsxs)(`div`,{className:`flex h-full flex-col gap-3 overflow-auto p-4`,children:[(0,J.jsx)(Y9,{title:`基础配置`,rows:[{label:`AGENT`,value:e.agentName||e.name||`—`},{label:`containerName`,value:t.containerName||e.containerName||`—`},{label:`imageName`,value:t.imageName||e.image||`—`},{label:`imageVersion`,value:t.imageVersion||`—`},{label:`containerMode`,value:t.containerMode||`default`}]}),(0,J.jsx)(Y9,{title:`路径与资源`,rows:[{label:`hostPath`,value:t.hostPath||`—`},{label:`containerPath`,value:t.containerPath||`—`},{label:`env 数量`,value:String(t.envCount||0)},{label:`volume 数量`,value:String(t.volumeCount||0)},{label:`port 数量`,value:String(t.portCount||0)}]}),(0,J.jsx)(Y9,{title:`命令与 Agent`,rows:r})]})}function See({detail:e}){if(!e)return(0,J.jsx)(Q9,{text:`请先选择左侧的容器 / AGENT`});let t=q9(e.status),n=J9(e),r=K9[e.agentPromptSource]||`未配置`,i=vee[e.latestRole]||`暂无`,a=e.latestTimestamp?X9(e.latestTimestamp):`暂无`;return(0,J.jsxs)(`div`,{className:`flex h-full flex-col gap-3 overflow-auto p-4`,children:[(0,J.jsx)(Y9,{title:`会话概览`,rows:[{label:`AGENT`,value:e.agentName||e.name},{label:`容器`,value:e.containerName||`—`},{label:`状态`,value:t.label,tone:t.tone},{label:`镜像`,value:e.image||e.applied.imageName||`—`},{label:`最近更新`,value:e.updatedAt?X9(e.updatedAt):`—`},{label:`消息数`,value:String(e.messageCount||0)}]}),(0,J.jsx)(Y9,{title:`Agent 运行`,rows:[{label:`已启用`,value:e.agentEnabled?`是`:`否`,tone:e.agentEnabled?`ok`:`warn`},{label:`程序`,value:e.agentProgram||`—`},{label:`模板来源`,value:r},{label:`支持 resume`,value:e.resumeSupported?`是`:`否`,tone:e.resumeSupported?`ok`:`warn`},{label:`最近 resume`,value:e.lastResumeAt?X9(e.lastResumeAt):`暂无`},{label:`最近结果`,value:e.lastResumeOk==null?`暂无`:e.lastResumeOk?`成功`:`失败`,tone:e.lastResumeOk==null?`info`:e.lastResumeOk?`ok`:`danger`}]}),(0,J.jsx)(Y9,{title:`用量统计`,rows:e.usageTotal?[{label:`累计输入 tokens`,value:String(e.usageTotal.inputTokens)},{label:`累计输出 tokens`,value:String(e.usageTotal.outputTokens)},{label:`累计花费`,value:typeof e.usageTotal.costUsd==`number`?`$${e.usageTotal.costUsd.toFixed(4)}`:`暂不支持`}]:[{label:`状态`,value:`暂无数据`,tone:`info`,detail:`当前 Agent 程序不支持用量统计,或还未执行过对话。`}]}),(0,J.jsx)(Y9,{title:`最近活动`,rows:[{label:`最近角色`,value:i},{label:`最近时间`,value:a},{label:`resume 状态`,value:n.value,tone:n.tone}]})]})}function Cee({draft:e,onDraftChange:t,onSend:n,onStop:r,mode:i,onModeChange:a,disabled:o,sending:s,session:c,onOpenCliTemplate:l,onOpenModel:u}){let d=RY(),[f,p]=_.useState(!1),m=c?ln(c,i):``,h=!!c?.archived,g=o||m!==``,v=g||e.trim()===``;return(0,J.jsxs)(`div`,{className:`border-t p-3`,children:[(0,J.jsx)(Qp,{placeholder:o?`请先在左侧选择一个容器 / AGENT`:m===`archived`?`该 AGENT 已被删除,仅可查看历史消息`:m===`container-busy`?`同容器的另一个 AGENT 正在执行任务,请等它结束或先停止`:m===`agent-unavailable`?`当前会话未配置 CLI,点「选项 → CLI」设置后即可对话`:i===`command`?`输入容器命令,例如: ls -la`:`输入要发给 AGENT 的内容`,className:`min-h-16 resize-none`,value:e,disabled:g,onChange:e=>t(e.target.value),onKeyDown:e=>{e.key!==`Enter`||e.nativeEvent.isComposing||d||e.shiftKey||e.altKey||(e.preventDefault(),!s&&!g&&n())}}),(0,J.jsxs)(`div`,{className:`mt-2 flex items-center justify-between gap-2`,children:[(0,J.jsxs)(a9,{open:f,onOpenChange:p,children:[(0,J.jsx)(o9,{render:(0,J.jsx)(ud,{variant:i===`command`?`secondary`:`outline`,className:`px-4`,disabled:o}),children:cn(i)}),(0,J.jsx)(s9,{align:`start`,className:`w-44 p-1`,children:(0,J.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,J.jsx)(ud,{variant:i===`agent`?`secondary`:`ghost`,size:`sm`,className:`justify-start`,onClick:()=>{a(`agent`),p(!1)},children:`Agent对话`}),(0,J.jsx)(ud,{variant:i===`command`?`secondary`:`ghost`,size:`sm`,className:`justify-start`,onClick:()=>{a(`command`),p(!1)},children:`系统命令`}),(0,J.jsx)(Od,{className:`my-1`}),(0,J.jsxs)(ud,{variant:`ghost`,size:`sm`,className:`justify-start`,disabled:!c||h,onClick:()=>{l(),p(!1)},children:[`CLI · `,c?.agentProgram||`未设置`]}),(0,J.jsxs)(ud,{variant:`ghost`,size:`sm`,className:`justify-start`,disabled:!c||h,onClick:()=>{u(),p(!1)},children:[`模型 · `,c?.model||`跟随默认`]})]})})]}),s?(0,J.jsx)(ud,{variant:`destructive`,className:`px-4`,onClick:r,children:`停止`}):(0,J.jsxs)(ud,{className:`px-4`,onClick:n,disabled:v,children:[(0,J.jsx)(le,{"data-icon":`inline-start`}),`发送`]})]})]})}function wee({activeSession:e,onAfterSend:t,filesEditorRef:n,confirmLeaveIfDirty:r,creatingAgent:i}){let[a,o]=_.useState(`activity`),[s,c]=_.useState({}),[l,u]=_.useState(!1),[d,f]=_.useState(``),[p,m]=_.useState(`agent`),[h,g]=_.useState(!1),[v,y]=_.useState(()=>new Set),[b,x]=_.useState(``),[S,C]=_.useState(!1),w=_.useCallback((e,t=!1)=>{x(e),C(e?t:!1)},[]),[T,E]=_.useState(0),D=_.useRef(0),O=_.useRef(-1),[k,A]=_.useState(!1),[j,M]=_.useState(!1),[N,P]=_.useState(null),[F,I]=_.useState(null),L=_.useRef(e?.name??null);_.useEffect(()=>{L.current=e?.name??null},[e?.name]);let z=_.useRef(v);_.useEffect(()=>{z.current=v},[v]),_.useEffect(()=>{f(``),m(`agent`)},[e?.name]);let ee=e?s[e.name]:void 0,B=ee!==void 0,V=ee??[],H=_.useCallback((e,t)=>{c(n=>{let r=t(n[e]??[]);return r===n[e]?n:{...n,[e]:r}})},[]),te=e?v.has(e.name):!1,U=te||V.some(e=>e.mode===`agent`&&e.pending===!0);async function ne(e){a!==e&&(a===`files`&&!await r()||o(e))}function re(e,t){y(n=>{let r=new Set(n);return t?r.add(e):r.delete(e),r})}let ie=_.useCallback(t=>e?(t||(w(``),u(!0)),tn(`/api/sessions/${encodeURIComponent(e.name)}/messages`).then(t=>{Jt(e.name,L.current,z.current.has(e.name))||(H(e.name,()=>Array.isArray(t.messages)?t.messages:[]),D.current+=1,E(D.current))}).catch(e=>{t||w(e instanceof Error?e.message:`加载消息失败`)}).finally(()=>{t||u(!1)})):(u(!1),Promise.resolve()),[e?.name,H]),ae=_.useCallback(()=>e?tn(`/api/sessions/${encodeURIComponent(e.name)}/detail`).then(e=>P(e.detail||null)).catch(()=>{}):(P(null),Promise.resolve()),[e?.name]);_.useEffect(()=>{queueMicrotask(()=>{ie(),ae()})},[ie,ae]),JX(e,V,_.useCallback(async()=>{await Promise.all([ie(!0),ae()])},[ie,ae]),te);let oe=V.some(e=>e.pending===!0);_.useEffect(()=>{!S||te||oe||T<=O.current||w(``)},[S,te,oe,T,w]),_.useEffect(()=>{let e=Date.now();function n(){e=Date.now()}function r(){document.visibilityState===`visible`&&(t(),L.current&&(z.current.has(L.current)||(ie(!0),ae())))}function i(){n(),r()}let a=[`mousemove`,`mousedown`,`keydown`,`touchstart`,`scroll`];a.forEach(e=>window.addEventListener(e,n,{passive:!0})),document.addEventListener(`visibilitychange`,i),window.addEventListener(`focus`,i);let o=window.setInterval(()=>{document.visibilityState===`visible`&&(Date.now()-e>U9||r())},H9);return()=>{a.forEach(e=>window.removeEventListener(e,n)),document.removeEventListener(`visibilitychange`,i),window.removeEventListener(`focus`,i),window.clearInterval(o)}},[ie,ae,t]);async function se(){let n=d.trim();if(!n||!e||v.has(e.name))return;let r=e.name,i=()=>L.current===r;if(f(``),w(``),H(r,e=>[...e,{id:`${Ht}${Date.now()}`,role:`user`,content:n,timestamp:new Date().toISOString(),mode:p}]),p===`command`){re(r,!0);try{let e=await nn(`/api/sessions/${encodeURIComponent(r)}/run`,{command:n});H(r,t=>[...t,{id:`result-${Date.now()}`,role:`system`,content:String(e.output||``),timestamp:new Date().toISOString(),mode:`command`,exitCode:e.exitCode}])}catch(e){i()&&w(e instanceof Error?e.message:`命令执行失败`)}finally{re(r,!1),t(),i()&&ae()}return}re(r,!0);let a=[],o=Ut;H(r,e=>[...e,{id:Ut,role:`assistant`,content:`[执行过程]`,timestamp:new Date().toISOString(),streamTrace:!0,traceEvents:[],pending:!0,mode:`agent`},{id:Wt,role:`assistant`,content:``,timestamp:new Date().toISOString(),pending:!0,mode:`agent`}]);try{await mn(`/api/sessions/${encodeURIComponent(r)}/agent/stream`,{prompt:n},e=>{e.type===`meta`?(e.userMessageId!==void 0||e.traceMessageId!==void 0)&&(H(r,t=>Kt(t,{userMessageId:e.userMessageId,traceMessageId:e.traceMessageId})),e.traceMessageId!==void 0&&(o=e.traceMessageId)):e.type===`trace`?(e.traceEvent&&a.push(e.traceEvent),H(r,e=>qt(e,o,{traceEvents:a.slice()}))):e.type===`content_delta`?H(r,t=>t.map(t=>t.id===`__streaming__`?{...t,content:e.content}:t)):e.type===`content_chunk`?H(r,t=>t.map(t=>t.id===`__streaming__`?{...t,content:e.reset?``:`${t.content}${e.text}`}:t)):e.type===`result`?H(r,t=>Kt(qt(t,o,{pending:!1}).map(t=>t.id===`__streaming__`?{...t,content:e.output,pending:!1,interrupted:e.interrupted,exitCode:e.exitCode}:t),{replyMessageId:e.replyMessageId})):e.type===`error`&&(i()&&w(e.error),H(r,e=>Yt(e)))})}catch(e){let t=on(e);O.current=D.current,i()&&w(t?`与服务端的实时连接中断,任务仍在容器里继续执行,正在重新同步…`:e instanceof Error?e.message:`发送失败`,t),H(r,e=>Yt(e)),ie(!0)}finally{re(r,!1),t(),i()&&ae()}}async function ce(){if(e)try{await nn(`/api/sessions/${encodeURIComponent(e.name)}/agent/stop`,{})}catch(e){w(e instanceof Error?e.message:`停止失败`)}finally{ie(!0),ae()}}return(0,J.jsxs)(`div`,{className:`flex h-full min-h-0 min-w-0 flex-col`,children:[(0,J.jsxs)(`header`,{className:`flex h-12 shrink-0 items-center gap-2 border-b px-3`,children:[(0,J.jsx)(OX,{}),(0,J.jsx)(Od,{orientation:`vertical`,className:`h-4!`}),(0,J.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[(0,J.jsx)(ud,{variant:a===`activity`?`secondary`:`ghost`,size:`sm`,"aria-current":a===`activity`,onClick:()=>ne(`activity`),children:`聊天`}),(0,J.jsx)(ud,{variant:a===`files`?`secondary`:`ghost`,size:`sm`,"aria-current":a===`files`,onClick:()=>ne(`files`),children:`文件`}),(0,J.jsxs)(a9,{open:h,onOpenChange:g,children:[(0,J.jsx)(o9,{render:(0,J.jsx)(ud,{variant:`ghost`,size:`icon-sm`,title:`更多标签页`}),children:(0,J.jsx)(R,{})}),(0,J.jsx)(s9,{align:`start`,className:`w-36 p-1`,children:(0,J.jsx)(`div`,{className:`flex flex-col gap-1`,children:V9.map(e=>(0,J.jsx)(ud,{variant:a===e?`secondary`:`ghost`,size:`sm`,className:`justify-start`,"aria-current":a===e,onClick:()=>{ne(e),g(!1)},children:z9[e]},e))})})]})]}),(0,J.jsx)(Od,{orientation:`vertical`,className:`h-4! shrink-0`}),(0,J.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-center gap-1.5 truncate text-sm font-medium`,children:[(0,J.jsx)(`span`,{className:`truncate`,children:e?`${e.containerRemark||e.containerName} · ${e.agentRemark||e.agentName}`:`选择左侧的容器 / AGENT 开始`}),e?.archived?(0,J.jsx)(xd,{variant:`outline`,className:`shrink-0`,children:`已停止`}):null]})]}),(0,J.jsxs)(`div`,{className:`min-h-0 min-w-0 flex-1 overflow-x-hidden`,children:[i?(0,J.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-2`,children:[(0,J.jsx)(Sd,{className:`size-6`}),(0,J.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`正在创建 AGENT...`})]}):a===`activity`?l&&!B?(0,J.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,J.jsx)(Sd,{className:`size-6`})}):(0,J.jsx)(yee,{session:e,messages:V,mode:p,onPreviewHtml:(e,t)=>I({title:e,code:t})},e?.name??`none`):null,a===`terminal`?(0,J.jsx)(R7,{session:e}):null,a===`files`?(0,J.jsx)(N1,{activeSession:e,editorStateRef:n,confirmLeaveIfDirty:r,onPreviewHtml:(e,t)=>I({title:e,code:t})}):null,a===`detail`?(0,J.jsx)(See,{detail:N}):null,a===`config`?(0,J.jsx)(xee,{detail:N}):null,a===`check`?(0,J.jsx)(bee,{detail:N}):null]}),a===`activity`&&b?(0,J.jsx)(wd,{variant:`destructive`,className:`mx-3 mb-2 min-w-0`,children:(0,J.jsx)(Td,{className:`break-words`,children:b})}):null,a===`activity`?(0,J.jsx)(Cee,{draft:d,onDraftChange:f,onSend:se,onStop:ce,mode:p,onModeChange:m,disabled:!e||l&&!B,sending:U,session:e,onOpenCliTemplate:()=>A(!0),onOpenModel:()=>M(!0)}):null,(0,J.jsx)(BQ,{open:k,onOpenChange:A,session:e,onSaved:()=>{t(),ae()}}),(0,J.jsx)(L1,{open:j,onOpenChange:M,session:e,onSaved:()=>{t(),ae()}}),(0,J.jsx)(P1,{state:F,onOpenChange:e=>{e||I(null)}})]})}function Tee(){let[e,t]=_.useState([]),[n,r]=_.useState(!0),[i,a]=_.useState(``),o=_.useCallback(async()=>{a(``);try{let e=await tn(`/api/sessions`),n=Array.isArray(e.sessions)?e.sessions:[];return t(n),n}catch(e){return a(e instanceof Error?e.message:`加载会话列表失败`),[]}finally{r(!1)}},[]);return _.useEffect(()=>{queueMicrotask(()=>o())},[o]),{sessions:e,containers:_.useMemo(()=>hn(e),[e]),loading:n,error:i,refresh:o}}function Eee(){let[e,t]=_.useState(null),[n,r]=_.useState(!1),i=_.useCallback((e,n)=>new Promise(r=>{t({fileName:e,save:n,resolve:r})}),[]);function a(e){t(t=>(t?.resolve(e),null))}async function o(){if(!e||n)return;r(!0);let t=await e.save();r(!1),a(t?`proceed`:`cancel`)}return{ask:i,dialog:(0,J.jsx)(dd,{open:e!==null,onOpenChange:e=>{!e&&!n&&a(`cancel`)},children:(0,J.jsxs)(md,{className:`sm:max-w-sm`,children:[(0,J.jsx)(_d,{className:`sr-only`,children:`有未保存的修改`}),(0,J.jsxs)(vd,{className:`text-foreground`,children:[`是否要保存对 `,e?.fileName,` 的更改?`,(0,J.jsx)(`br`,{}),`如果不保存,你的更改将丢失。`]}),(0,J.jsxs)(gd,{children:[(0,J.jsxs)(ud,{disabled:n,onClick:o,children:[n?(0,J.jsx)(Sd,{"data-icon":`inline-start`}):null,`保存`]}),(0,J.jsx)(ud,{variant:`outline`,disabled:n,onClick:()=>a(`proceed`),children:`不保存`}),(0,J.jsx)(ud,{variant:`outline`,disabled:n,onClick:()=>a(`cancel`),children:`取消`})]})]})})}}function Dee({width:e,dragging:t,onPointerDown:n}){let{isMobile:r,state:i}=TX();return r||i===`collapsed`?null:(0,J.jsx)(KX,{onPointerDown:n,dragging:t,className:`absolute inset-y-0 z-20 -ml-1`,style:{left:e}})}function Oee(){let{sessions:e,containers:t,loading:n,error:r,refresh:i}=Tee(),{width:a,dragging:o,onHandlePointerDown:s}=YQ({storageKey:`manyoyo:sidebar-width`,defaultWidth:288,min:224,max:512}),[c,l]=_.useState(null),[u,d]=_.useState(null),f=_.useMemo(()=>e.find(e=>e.name===c)??null,[e,c]),p=_.useRef(null),{ask:m,dialog:h}=Eee(),g=_.useCallback(async()=>{let e=p.current;return!e||await m(e.fileName,e.save)===`proceed`},[m]);function v(e){l(e?e.name:null)}return _.useEffect(()=>{document.querySelector(`meta[name="manyoyo-serve-title"]`)||(document.title=XX(f?.agentRemark||f?.agentName))},[f]),(0,J.jsxs)(EX,{className:`relative h-svh overflow-hidden`,style:{"--sidebar-width":`${a}px`},children:[(0,J.jsx)(GX,{containers:t,loading:n,error:r,activeSessionName:c,onSelectSession:v,onRefresh:i,confirmLeaveIfDirty:g,creatingAgentContainer:u,onCreatingAgentContainerChange:d}),(0,J.jsx)(Dee,{width:a,dragging:o,onPointerDown:s}),(0,J.jsx)(kX,{className:`min-h-0 min-w-0`,children:(0,J.jsx)(wee,{activeSession:f,onAfterSend:i,filesEditorRef:p,confirmLeaveIfDirty:g,creatingAgent:u!==null})}),h]})}var $9=`/shadcn`;function kee(){let[e,t]=_.useState(``),[n,r]=_.useState(``),[i,a]=_.useState(``),[o,s]=_.useState(!1),[c,l]=_.useState(!0);_.useEffect(()=>{let e=!1;return fetch(`/api/sessions`,{headers:{"X-Requested-With":`XMLHttpRequest`}}).then(t=>{if(!e&&t.ok){window.location.href=$9;return}e||l(!1)}).catch(()=>{e||l(!1)}),()=>{e=!0}},[]);async function u(t){if(t.preventDefault(),!o){a(``),s(!0);try{let t=await fetch(`/auth/login`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({username:e.trim(),password:n})}),r=await t.json().catch(()=>({}));if(!t.ok)throw Error(r.error||`登录失败`);window.location.href=$9}catch(e){a(e instanceof Error?e.message:`登录失败`),s(!1)}}}return c?(0,J.jsx)(`div`,{className:`flex min-h-svh items-center justify-center`}):(0,J.jsxs)(`div`,{className:`relative flex min-h-svh items-center justify-center overflow-hidden p-6`,children:[(0,J.jsx)(`div`,{className:`pointer-events-none absolute inset-0 opacity-40 [background-image:linear-gradient(to_right,var(--border)_1px,transparent_1px),linear-gradient(to_bottom,var(--border)_1px,transparent_1px)] [background-size:32px_32px] [mask-image:radial-gradient(ellipse_60%_50%_at_50%_0%,black,transparent)]`,"aria-hidden":!0}),(0,J.jsx)(`div`,{className:`pointer-events-none absolute top-1/4 left-1/2 -z-10 size-72 -translate-x-1/2 -translate-y-1/2 rounded-full bg-primary/10 blur-3xl`,"aria-hidden":!0}),(0,J.jsxs)(`div`,{className:`relative w-full max-w-sm`,children:[(0,J.jsxs)(`div`,{className:`absolute inset-x-0 bottom-full mb-6 flex flex-col items-center gap-1.5 text-center`,children:[(0,J.jsx)(`span`,{className:`font-mono text-xs tracking-[0.2em] text-muted-foreground uppercase`,children:`Agent Sandbox Console`}),(0,J.jsx)(`h1`,{className:`font-mono text-4xl font-semibold tracking-tight text-foreground`,children:`MANYOYO`}),(0,J.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`AI Agent 容器安全沙箱 · 安全隔离运行`})]}),(0,J.jsxs)(VQ,{className:`w-full gap-0 py-0 shadow-lg`,children:[(0,J.jsxs)(`div`,{className:`flex items-center gap-1.5 border-b px-4 py-2.5`,children:[(0,J.jsx)(`span`,{className:`size-2.5 rounded-full bg-destructive/70`}),(0,J.jsx)(`span`,{className:`size-2.5 rounded-full bg-amber-500/70`}),(0,J.jsx)(`span`,{className:`size-2.5 rounded-full bg-emerald-500/70`})]}),(0,J.jsx)(WQ,{className:`px-6 py-6`,children:(0,J.jsx)(`form`,{onSubmit:u,children:(0,J.jsxs)(jd,{children:[(0,J.jsxs)(Nd,{children:[(0,J.jsx)(Pd,{htmlFor:`login-username`,className:`font-mono text-xs tracking-wide text-muted-foreground uppercase`,children:`用户名`}),(0,J.jsx)(ef,{id:`login-username`,autoFocus:!0,autoComplete:`username`,value:e,onChange:e=>t(e.target.value),onKeyDown:e=>{e.key!==`Enter`||e.nativeEvent.isComposing||e.keyCode===229||(e.preventDefault(),document.getElementById(`login-password`)?.focus())}})]}),(0,J.jsxs)(Nd,{children:[(0,J.jsx)(Pd,{htmlFor:`login-password`,className:`font-mono text-xs tracking-wide text-muted-foreground uppercase`,children:`密码`}),(0,J.jsx)(ef,{id:`login-password`,type:`password`,autoComplete:`current-password`,value:n,onChange:e=>r(e.target.value)})]}),i?(0,J.jsx)(wd,{variant:`destructive`,children:(0,J.jsx)(Td,{children:i})}):null,(0,J.jsxs)(ud,{type:`submit`,size:`lg`,className:`w-full`,disabled:o,children:[o?`登录中...`:`登录`,o?null:(0,J.jsx)(F,{"data-icon":`inline-end`})]})]})})})]})]})]})}var Aee=window.location.pathname===`/shadcn/auth/login`;(0,v.createRoot)(document.getElementById(`root`)).render((0,J.jsx)(_.StrictMode,{children:(0,J.jsx)(eJ,{children:Aee?(0,J.jsx)(kee,{}):(0,J.jsx)(Oee,{})})}));</script>
202
+ `,t)}paste(e){this._core.paste(e)}refresh(e,t){this._verifyIntegers(e,t),this._core.refresh(e,t)}reset(){this._core.reset()}clearTextureAtlas(){this._core.clearTextureAtlas()}loadAddon(e){this._addonManager.loadAddon(this,e)}static get strings(){return{get promptLabel(){return q1.get()},set promptLabel(e){q1.set(e)},get tooMuchOutput(){return Y1.get()},set tooMuchOutput(e){Y1.set(e)}}}_verifyIntegers(...e){for(k7 of e)if(k7===1/0||isNaN(k7)||k7%1!=0)throw Error(`This API only accepts integers`)}_verifyPositiveIntegers(...e){for(k7 of e)if(k7&&(k7===1/0||isNaN(k7)||k7%1!=0||k7<0))throw Error(`This API only accepts positive integers`)}},j7=40,M7=12,N7=120,P7=36,F7=60;function I7(e,t,n){let r=window.location.protocol===`https:`?`wss`:`ws`,i=new URL(`/api/sessions/${encodeURIComponent(e)}/terminal/ws`,`${r}://${window.location.host}`);return i.searchParams.set(`cols`,String(t)),i.searchParams.set(`rows`,String(n)),i.toString()}var L7=[{label:`esc`,data:`\x1B`},{label:`tab`,data:` `},{label:`◀`,data:`\x1B[D`},{label:`▲`,data:`\x1B[A`},{label:`▼`,data:`\x1B[B`},{label:`▶`,data:`\x1B[C`}];function R7({session:e}){let t=_.useRef(null),n=_.useRef(null),r=_.useRef(null),[i,a]=_.useState(``),[o,s]=_.useState(!1),[c,l]=_.useState(!1),u=_.useRef(!1),d=_.useRef(!1);_.useEffect(()=>{u.current=o},[o]),_.useEffect(()=>{d.current=c},[c]);let f=e?.status===`history`;function p(e){let t=n.current;t&&t.readyState===WebSocket.OPEN&&t.send(JSON.stringify({type:`input`,data:e})),r.current?.focus()}return _.useEffect(()=>{let i=t.current;if(!e||!i||f)return;let o=new A7({convertEol:!0,fontSize:13,cursorBlink:!0,theme:{background:`#09090b`}}),s=new B1;o.loadAddon(s),o.open(i),s.fit(),r.current=o;let c=Math.max(o.cols||N7,j7),l=Math.max(o.rows||P7,M7);a(`连接中...`);let p=new WebSocket(I7(e.name,c,l));n.current=p,p.onmessage=e=>{try{let t=JSON.parse(e.data);t.type===`output`?o.write(t.data):t.type===`status`?t.phase===`ready`?a(`已连接`):t.phase===`closed`&&a(`会话已结束`):t.type===`error`&&o.write(`\r\n[error] ${t.error}\r\n`)}catch{}},p.onclose=()=>a(`连接已断开`),p.onerror=()=>a(`连接出错`);let m=o.onData(e=>{if(!e||p.readyState!==WebSocket.OPEN)return;let t=e;if(u.current&&e.length===1){let n=e.charCodeAt(0);(n>=65&&n<=90||n>=97&&n<=122)&&(t=String.fromCharCode(n&31))}else d.current&&e.length===1&&(t=`\x1B`+e);p.send(JSON.stringify({type:`input`,data:t}))}),h=0,g=new ResizeObserver(()=>{window.clearTimeout(h),h=window.setTimeout(()=>s.fit(),F7)});return g.observe(i),()=>{g.disconnect(),window.clearTimeout(h),m.dispose(),(p.readyState===WebSocket.OPEN||p.readyState===WebSocket.CONNECTING)&&(p.send(JSON.stringify({type:`close`})),p.close()),o.dispose(),n.current=null,r.current=null}},[e?.name,f]),e?f?(0,J.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-1 bg-zinc-950 p-6 text-center text-sm text-zinc-400`,children:[(0,J.jsx)(`p`,{className:`font-medium text-zinc-200`,children:`容器不可用`}),(0,J.jsx)(`p`,{children:`当前会话只有历史记录,没有可访问的运行中容器,无法连接终端。`})]}):(0,J.jsxs)(`div`,{className:`flex h-full flex-col bg-zinc-950`,children:[(0,J.jsxs)(`div`,{className:`flex shrink-0 items-center gap-2 border-b border-zinc-800 bg-zinc-900 px-2 py-1.5`,children:[(0,J.jsxs)(`div`,{className:`flex min-w-0 gap-1 overflow-x-auto`,children:[L7.map(e=>(0,J.jsx)(`button`,{type:`button`,onClick:()=>p(e.data),className:`shrink-0 rounded border border-zinc-700 px-2 py-0.5 font-mono text-xs text-zinc-300 hover:bg-zinc-800`,children:e.label},e.label)),(0,J.jsx)(`button`,{type:`button`,onClick:()=>{s(e=>!e),r.current?.focus()},className:K(`shrink-0 rounded border border-zinc-700 px-2 py-0.5 font-mono text-xs text-zinc-300 hover:bg-zinc-800`,o&&`border-zinc-100 bg-zinc-100 text-zinc-900 hover:bg-zinc-100`),children:`ctrl`}),(0,J.jsx)(`button`,{type:`button`,onClick:()=>{l(e=>!e),r.current?.focus()},className:K(`shrink-0 rounded border border-zinc-700 px-2 py-0.5 font-mono text-xs text-zinc-300 hover:bg-zinc-800`,c&&`border-zinc-100 bg-zinc-100 text-zinc-900 hover:bg-zinc-100`),children:`alt`})]}),(0,J.jsx)(`span`,{className:`shrink-0 truncate px-1 text-xs text-zinc-400`,children:i})]}),(0,J.jsx)(`div`,{ref:t,className:`min-h-0 flex-1 p-2`})]}):(0,J.jsx)(`div`,{className:`flex h-full items-center justify-center bg-zinc-950 p-6 text-center text-sm text-zinc-400`,children:`请先在左侧选择一个容器 / AGENT`})}var z7=_.createContext(void 0);function B7(e){let t=_.useContext(z7);if(t===void 0&&!e)throw Error(_n(47));return t}var V7={...Bl,disabled:e=>e.disabled,instantType:e=>e.instantType,openMethod:e=>e.openMethod,openChangeReason:e=>e.openChangeReason,modal:e=>e.modal,focusManagerModal:e=>e.focusManagerModal,stickIfOpen:e=>e.stickIfOpen,titleElementId:e=>e.titleElementId,descriptionElementId:e=>e.descriptionElementId,openOnHover:e=>e.openOnHover,closeDelay:e=>e.closeDelay,adaptiveOrigin:e=>e.adaptiveOrigin},H7=class extends dl{constructor(e,t,n){let r=new jl;super(U7(e,r,t,n),W7(r),V7)}setOpen=(e,t)=>{let n=t.reason===oi,r=t.reason===`trigger-press`&&t.event.detail===0,i=!e&&(t.reason===`escape-key`||t.reason==null),a=wl(t),o=this.select(`activeTriggerId`);if(!e&&t.reason===`close-press`&&t.trigger==null&&o!=null&&(t.trigger=this.context.triggerElements.getById(o)??this.select(`activeTriggerElement`)??void 0),this.context.onOpenChange?.(e,t),t.isCanceled)return;this.state.floatingRootContext.dispatchOpenChange(e,t);let s=()=>{let n={open:e,openChangeReason:t.reason};Cl(n,e,t.trigger,a()),this.update(n)};n?(this.set(`stickIfOpen`,!0),this.context.stickIfOpenTimeout.start(500,()=>{this.set(`stickIfOpen`,!1)}),ds.flushSync(s)):s();let c;r?c=`click`:i?c=`dismiss`:t.reason===`focus-out`&&(c=`focus`),this.set(`instantType`,c)}};function U7(e,t,n,r=!1){let i={...Nl(),disabled:!1,modal:!1,focusManagerModal:!1,instantType:void 0,openMethod:null,openChangeReason:null,titleElementId:void 0,descriptionElementId:void 0,stickIfOpen:!0,openOnHover:!1,closeDelay:0,adaptiveOrigin:void 0,...e};return i.open&&e?.mounted===void 0&&(i.mounted=!0),i.floatingRootContext=Pl(t,n,r),i}function W7(e){return{popupRef:_.createRef(),onOpenChange:void 0,onOpenChangeComplete:void 0,triggerFocusTargetRef:_.createRef(),beforeContentFocusGuardRef:_.createRef(),stickIfOpenTimeout:new ji,triggerElements:e}}function G7({props:e}){let{children:t,open:n,defaultOpen:r=!1,onOpenChange:i,onOpenChangeComplete:a,modal:o=!1,handle:s,triggerId:c,defaultTriggerId:l=null}=e,u=q7(s,{modal:o,open:r,openProp:n,activeTriggerId:l,triggerIdProp:c});u.useControlledProp(`openProp`,n),u.useControlledProp(`triggerIdProp`,c);let d=u.useState(`open`),f=u.useState(`mounted`),p=u.useState(`payload`);u.useContextCallback(`onOpenChange`,i),u.useContextCallback(`onOpenChangeComplete`,a),Al(u,d),Dl(u);let{forceUnmount:m}=Ol(d,u,()=>{u.update({stickIfOpen:!0,openChangeReason:null})});u.useSyncedValues({modal:o}),_.useEffect(()=>{d||u.context.stickIfOpenTimeout.clear()},[u,d]),_.useImperativeHandle(e.actionsRef,()=>({unmount:m,close:()=>u.setOpen(!1,xi(yi))}),[m,u]);let h=d||f;return(0,J.jsxs)(z7.Provider,{value:u,children:[s&&(0,J.jsx)(xl,{handle:s,store:u}),h&&(0,J.jsx)(J7,{store:u,modal:o}),typeof t==`function`?t({payload:p}):t]})}function K7(e){return B7(!0)?(0,J.jsx)(G7,{props:e}):(0,J.jsx)(Ts,{children:(0,J.jsx)(G7,{props:e})})}function q7(e,t){let n=bl((e,n)=>new H7(t,e,n));return _.useEffect(()=>n.context.stickIfOpenTimeout.disposeEffect(),[n]),n}function J7({store:e,modal:t}){let n=Hs(e.useState(`floatingRootContext`),{outsidePressEvent:{mouse:t===`trap-focus`?`sloppy`:`intentional`,touch:`sloppy`}}),r=n.reference,i=n.floating;return kl(e,{activeTriggerProps:r,inactiveTriggerProps:r,popupProps:i}),null}var Y7=_.forwardRef(function(e,t){let{render:n,className:r,style:i,disabled:a=!1,nativeButton:o=!0,handle:s,payload:c,openOnHover:l=!1,delay:u=300,closeDelay:d=0,id:f,...p}=e,m=B7(!0),h=Vl(s)??m;if(!h)throw Error(_n(74));let g=Di(f),v=h.useState(`isTriggerActive`,g),y=h.useState(`floatingRootContext`),b=h.useState(`isOpenedByTrigger`,g),x=h.useState(`triggerPopupId`,g),S=_.useRef(null),{registerTrigger:C,isMountedByThisTrigger:w}=El(g,S,h,{payload:c,disabled:a,openOnHover:l,closeDelay:d}),T=h.useState(`openChangeReason`),E=h.useState(`stickIfOpen`),D=h.useState(`openMethod`),O=h.useState(`focusManagerModal`),k=eu(y,{enabled:!a&&l&&(D!==`touch`||T!==`trigger-press`),mouseOnly:!0,move:!1,handleClose:_u(),restMs:u,delay:{close:d},triggerElementRef:S,isActiveTrigger:v,isClosing:()=>h.select(`transitionStatus`)===`ending`}),A=Is(y,{stickIfOpen:E}),j=rd(()=>h.select(`open`),e=>{h.set(`openMethod`,e)}),M=h.useState(`triggerProps`,w),{getButtonProps:N,buttonRef:P}=ti({disabled:a,native:o}),F={open(e){return e&&T===`trigger-press`?hr.open(e):mr.open(e)}},{preFocusGuardRef:I,handlePreFocusGuardFocus:L,handleFocusTargetFocus:R}=DY(h,S),z=$n(`button`,e,{state:{disabled:a,open:b},ref:[P,t,C,S],props:[A.reference,k,M,j,{[ss]:``,id:g,"aria-haspopup":`dialog`,"aria-expanded":b,"aria-controls":x},p,N],stateAttributesMapping:F}),ee=(0,J.jsx)(_.Fragment,{children:z},g);return w&&!O?(0,J.jsxs)(_.Fragment,{children:[(0,J.jsx)(Ia,{ref:I,onFocus:L}),ee,(0,J.jsx)(Ia,{ref:h.context.triggerFocusTargetRef,onFocus:R})]}):ee}),X7=_.createContext(void 0);function Z7(){let e=_.useContext(X7);if(e===void 0)throw Error(_n(45));return e}var Q7=_.forwardRef(function(e,t){let{keepMounted:n=!1,...r}=e;return B7().useState(`mounted`)||n?(0,J.jsx)(X7.Provider,{value:n,children:(0,J.jsx)(gs,{ref:t,...r})}):null}),$7=_.createContext(void 0);function e9(){let e=_.useContext($7);if(!e)throw Error(_n(46));return e}var t9=_.forwardRef(function(e,t){let{render:n,className:r,style:i,anchor:a,positionMethod:o,side:s,align:c,sideOffset:l,alignOffset:u,collisionBoundary:d=`clipping-ancestors`,collisionPadding:f,arrowPadding:p,sticky:m,disableAnchorTracking:h=!1,collisionAvoidance:g=ls,...v}=e,y=B7(),b=Z7(),x=Cs(),S=y.useState(`floatingRootContext`),C=y.useState(`mounted`),w=y.useState(`open`),T=y.useState(`openChangeReason`),E=y.useState(`activeTriggerElement`),D=y.useState(`modal`),O=y.useState(`openMethod`),k=y.useState(`positionerElement`),A=y.useState(`instantType`),j=y.useState(`transitionStatus`),M=y.useState(`adaptiveOrigin`),N=_.useRef(null),P=gl(k),F=tp({anchor:a,floatingRootContext:S,positionMethod:o,mounted:C,side:s,sideOffset:l,align:c,alignOffset:u,arrowPadding:p,collisionBoundary:d,collisionPadding:f,sticky:m,disableAnchorTracking:h,keepMounted:b,nodeId:x,collisionAvoidance:g,adaptiveOrigin:M}),I=S.useState(`domReferenceElement`);q(()=>{let e=I,t=N.current;if(e&&(N.current=e),t&&e&&e!==t){y.set(`instantType`,void 0);let e=new AbortController;return P(()=>{y.set(`instantType`,`trigger-change`)},e.signal),()=>{e.abort()}}},[I,P,y]);let L=D===!0&&T!==`trigger-hover`;dp(w&&L,O===`touch`,k,E);let R=y.useStateSetter(`positionerElement`),z=lp(e,{open:w,side:F.side,align:F.align,anchorHidden:F.anchorHidden,instant:A},{styles:F.positionerStyles,transitionStatus:j,props:v,refs:[t,R],hidden:!C,inert:!w});return(0,J.jsxs)($7.Provider,{value:F,children:[C&&L&&(0,J.jsx)(Pu,{inert:Nu(!w),cutout:E}),(0,J.jsx)(ws,{id:x,children:z})]})}),n9=_.createContext(void 0);function r9(){let[e,t]=_.useState(0),n=qr(()=>(t(e=>e+1),()=>{t(e=>Math.max(0,e-1))}));return{context:_.useMemo(()=>({register:n}),[n]),hasClosePart:e>0}}var i9=_.forwardRef(function(e,t){let{render:n,className:r,style:i,initialFocus:a,finalFocus:o,...s}=e,c=B7(),l=e9(),u=_p(!0)!=null,{context:d,hasClosePart:f}=r9(),p=c.useState(`open`),m=c.useState(`openMethod`),h=c.useState(`instantType`),g=c.useState(`transitionStatus`),_=c.useState(`popupProps`),v=c.useState(`titleElementId`),y=c.useState(`descriptionElementId`),b=c.useState(`modal`),x=c.useState(`mounted`),S=c.useState(`openChangeReason`),C=c.useState(`activeTriggerElement`),w=c.useState(`floatingRootContext`),T=w.useState(`floatingId`),E=c.useState(`disabled`),D=c.useState(`openOnHover`),O=c.useState(`closeDelay`);_l({open:p,ref:c.context.popupRef,onComplete(){p&&c.context.onOpenChangeComplete?.(!0)}}),Ql(w,{enabled:D&&!E,closeDelay:O});let k=a===void 0?yl(c.context.popupRef):a,A=b!==!1&&f;c.useSyncedValue(`focusManagerModal`,A);let j=c.useStateSetter(`popupElement`),M=$n(`div`,e,{state:{open:p,side:l.side,align:l.align,instant:h,transitionStatus:g},ref:[t,c.context.popupRef,j],props:[_,{id:T,role:`dialog`,...vl,"aria-labelledby":v,"aria-describedby":y,onKeyDown(e){u&&wu.has(e.key)&&e.stopPropagation()}},cp(g),s],stateAttributesMapping:_r});return(0,J.jsx)(Fs,{context:w,openInteractionType:m,modal:A,disabled:!x||S===`trigger-hover`,initialFocus:k,returnFocus:o,restoreFocus:`popup`,previousFocusableElement:Tr(C)?C:void 0,nextFocusableElement:c.context.triggerFocusTargetRef,beforeContentFocusGuardRef:c.context.beforeContentFocusGuardRef,children:(0,J.jsx)(n9.Provider,{value:d,children:M})})});function a9({...e}){return(0,J.jsx)(K7,{"data-slot":`popover`,...e})}function o9({...e}){return(0,J.jsx)(Y7,{"data-slot":`popover-trigger`,...e})}function s9({className:e,align:t=`center`,alignOffset:n=0,side:r=`bottom`,sideOffset:i=4,...a}){return(0,J.jsx)(Q7,{children:(0,J.jsx)(t9,{align:t,alignOffset:n,side:r,sideOffset:i,className:`isolate z-50`,children:(0,J.jsx)(i9,{"data-slot":`popover-content`,className:K(`z-50 flex w-72 origin-(--transform-origin) flex-col gap-2.5 rounded-lg bg-popover p-2.5 text-sm text-popover-foreground shadow-md ring-1 ring-foreground/10 outline-hidden duration-100 data-[side=bottom]:slide-in-from-top-2 data-[side=inline-end]:slide-in-from-left-2 data-[side=inline-start]:slide-in-from-right-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-open:animate-in data-open:fade-in-0 data-open:zoom-in-95 data-closed:animate-out data-closed:fade-out-0 data-closed:zoom-out-95`,e),...a})})})}function c9(e){let{open:t,defaultOpen:n,onOpenChange:r,disabled:i}=e,[a,o]=Xd({controlled:t,default:n,name:`Collapsible`,state:`open`}),{mounted:s,setMounted:c,transitionStatus:l}=hl(a,!0,!0),u=Di(),[d,f]=_.useState(),p=d===null?void 0:d??u,m=qr(e=>{let t=!a,n=xi(ai,e.nativeEvent);r(t,n),!n.isCanceled&&o(t)});return _.useMemo(()=>({defaultPanelId:u,disabled:i,handleTrigger:m,mounted:s,open:a,panelId:p,setMounted:c,setOpen:o,setPanelIdState:f,transitionStatus:l}),[u,i,m,s,a,p,c,o,f,l])}var l9=_.createContext(void 0);function u9(){let e=_.useContext(l9);if(e===void 0)throw Error(_n(15));return e}var d9=function(e){return e.open=`data-open`,e.closed=`data-closed`,e[e.startingStyle=ar.startingStyle]=`startingStyle`,e[e.endingStyle=ar.endingStyle]=`endingStyle`,e}({}),f9=function(e){return e.panelOpen=`data-panel-open`,e}({}),p9={[d9.open]:``},m9={[d9.closed]:``},h9={open(e){return e?{[f9.panelOpen]:``}:null}},g9={open(e){return e?p9:m9},...cr},_9=_.forwardRef(function(e,t){let{render:n,className:r,defaultOpen:i=!1,disabled:a=!1,onOpenChange:o,open:s,style:c,...l}=e,u=qr(o),d=c9({open:s,defaultOpen:i,onOpenChange:u,disabled:a}),f=_.useMemo(()=>({open:d.open,disabled:d.disabled,transitionStatus:d.transitionStatus}),[d.open,d.disabled,d.transitionStatus]),p=_.useMemo(()=>({...d,onOpenChange:u,state:f}),[d,u,f]),m=$n(`div`,e,{state:f,ref:t,props:l,stateAttributesMapping:g9});return(0,J.jsx)(l9.Provider,{value:p,children:m})}),v9={...h9,...cr},y9=_.forwardRef(function(e,t){let{panelId:n,open:r,handleTrigger:i,state:a,disabled:o}=u9(),{className:s,disabled:c=o,render:l,nativeButton:u=!0,style:d,...f}=e,{getButtonProps:p,buttonRef:m}=ti({disabled:c,focusableWhenDisabled:!0,native:u});return $n(`button`,e,{state:a,ref:[t,m],props:[{"aria-controls":r?n:void 0,"aria-expanded":r,onClick:i},f,p],stateAttributesMapping:v9})}),b9={height:void 0,width:void 0};function x9(e){let{externalRef:t,hiddenUntilFound:n,id:r,keepMounted:i,mounted:a,onOpenChange:o,open:s,setMounted:c,setOpen:l,transitionStatus:u}=e,d=_.useRef(null),f=_.useRef(null),[p,m]=_.useState(b9),h=_.useRef(b9),g=_.useRef(!1),v=_.useRef(s),y=_.useRef(!1),[b,x]=_.useState(!1),S=_.useRef(null),C=Sn(t,d),w=Da(s),T=gl(d),E=!s&&!a,D=b?`idle`:u,O=s&&(v.current||y.current),k=!s&&a&&f.current===`css-animation`&&p.height===void 0&&p.width===void 0?h.current:p,A=n&&E&&f.current!==`css-animation`,j=qr((e,t=!0)=>{t&&(h.current=e),m(e)}),M=qr(()=>{S.current?.(),S.current=null}),N=qr(e=>{M(),S.current=()=>{S.current=null,e()}}),P=qr(()=>{s&&a&&f.current===`css-animation`&&(y.current=!0)});q(()=>{!b||u===`starting`||x(!1)},[b,u]),_.useEffect(()=>()=>{P(),M()},[P,M]),q(()=>{let e=d.current;if(!e)return;!s&&S.current&&M();let t=C9(e,O);if(f.current=t,s&&u===`idle`&&v.current&&t===`css-animation`){h.current=S9(e);return}if(s&&u===`starting`){let n=g.current;if(g.current=!1,t===`none`){j(S9(e)),x(!0);return}if(t===`css-transition`){let t=E9(e);if(j(S9(e)),!n)return t;let r=T9(e,`transition-duration`,`0s`);return N(r),x(!0),t}j(S9(e));let r=T9(e,`animation-name`,`none`);if(!n){r();return}let i=T9(e,`animation-duration`,`0s`);r(),N(i),x(!0);return}if(!s&&a&&(u===`idle`||u===`starting`)){if(v.current=!1,y.current=!1,t===`none`){j(b9,!1),c(!1);return}j(S9(e));return}if(u!==`ending`)return;if(t===`none`){c(!1);return}let n=S9(e);if(!(n.height>0||n.width>0)){c(!1);return}j(n),t===`css-animation`&&T9(e,`animation-name`,`none`)()},[a,s,M,j,c,N,O,u]),_l({enabled:s&&a&&D===`idle`,open:!0,ref:d,onComplete(){s&&j(b9,!1)}}),_.useEffect(()=>{if(s||!a||D!==`ending`||!d.current)return;let e=new AbortController,t=-1;function n(){w.current||(c(!1),j(b9,!1))}return t=ja.request(()=>{T(n,e.signal)}),()=>{ja.cancel(t),e.abort()}},[w,a,s,D,T,j,c]),q(()=>{let e=d.current;!e||!n||!E||e.setAttribute(`hidden`,`until-found`)},[E,n]),_.useEffect(function(){let e=d.current;if(!e)return;function t(e){let t=xi(ii,e);o(!0,t),!t.isCanceled&&(g.current=!0,l(!0))}return Ta(e,`beforematch`,t)},[o,l]);let F=i||n||a||s;return{height:k.height,props:{...A?{[d9.startingStyle]:``}:void 0,hidden:E,id:r},ref:C,shouldPreventOpenAnimation:O,shouldRender:F,transitionStatus:D,width:k.width}}function S9(e){return{height:e.scrollHeight,width:e.scrollWidth}}function C9(e,t){let n=xr(e).getComputedStyle(e),r=(n.animationName.split(`,`).map(e=>e.trim()).some(e=>e!==``&&e!==`none`)||t)&&w9(n.animationDuration),i=w9(n.transitionDuration);return r&&i||i?`css-transition`:r?`css-animation`:`none`}function w9(e){return e.split(`,`).map(e=>e.trim()).some(e=>e!==``&&Number.parseFloat(e)>0)}function T9(e,t,n){let r=e.style.getPropertyValue(t),i=e.style.getPropertyPriority(t);return e.style.setProperty(t,n),()=>{if(r===``){e.style.removeProperty(t);return}e.style.setProperty(t,r,i)}}function E9(e){let t={"justify-content":e.style.justifyContent,"align-items":e.style.alignItems,"align-content":e.style.alignContent,"justify-items":e.style.justifyItems};Object.keys(t).forEach(t=>{e.style.setProperty(t,`initial`,`important`)});function n(){Object.entries(t).forEach(([t,n])=>{if(n===``){e.style.removeProperty(t);return}e.style.setProperty(t,n)})}let r=ja.request(n);return()=>{ja.cancel(r),n()}}var D9=function(e){return e.collapsiblePanelHeight=`--collapsible-panel-height`,e.collapsiblePanelWidth=`--collapsible-panel-width`,e}({}),O9=_.forwardRef(function(e,t){let{className:n,hiddenUntilFound:r,keepMounted:i,render:a,id:o,style:s,...c}=e,{defaultPanelId:l,mounted:u,onOpenChange:d,open:f,setMounted:p,setPanelIdState:m,setOpen:h,state:g,transitionStatus:_}=u9(),v=r??!1,y=i??!1,b=o||void 0,x=b??l;q(()=>(m(e=>b??(e===null?void 0:e)),()=>{m(e=>e===b?null:e)}),[b,m]);let{height:S,props:C,ref:w,shouldPreventOpenAnimation:T,shouldRender:E,transitionStatus:D,width:O}=x9({externalRef:t,hiddenUntilFound:v,id:x,keepMounted:y,mounted:u,onOpenChange:d,open:f,setMounted:p,setOpen:h,transitionStatus:_}),k={...g,transitionStatus:D},A=Ln(s,k),j=$n(`div`,{...e,style:void 0},{state:k,ref:w,props:[C,{style:{[D9.collapsiblePanelHeight]:S===void 0?`auto`:`${S}px`,[D9.collapsiblePanelWidth]:O===void 0?`auto`:`${O}px`}},c,A?{style:A}:void 0,T?{style:{animationName:`none`}}:void 0],stateAttributesMapping:g9});return E?j:null});function k9({...e}){return(0,J.jsx)(_9,{"data-slot":`collapsible`,...e})}function A9({...e}){return(0,J.jsx)(y9,{"data-slot":`collapsible-trigger`,...e})}function j9({...e}){return(0,J.jsx)(O9,{"data-slot":`collapsible-content`,...e})}var M9={tool:fe,command:de,mcp:ae,agent_message:ne,error:re};function N9(e){if(e==null)return``;if(typeof e==`string`)return e;try{return JSON.stringify(e,null,2)}catch{return String(e)}}function P9(e){let t=[],n=(e,n)=>{let r=N9(n).trim();r&&t.push({label:e,value:r})};return e.kind===`command`&&(n(`命令`,e.command),typeof e.exitCode==`number`?n(`退出码`,String(e.exitCode)):n(`状态`,e.status),n(`结果`,e.result),n(`错误`,e.error)),e.kind===`mcp`&&(n(`工具`,[e.server,e.toolName].filter(Boolean).join(`.`)),n(`参数摘要`,e.argumentSummary),n(`参数`,e.arguments),n(`结果`,e.result),n(`错误`,e.error)),e.kind===`tool`&&(n(`工具`,e.toolName),n(`参数摘要`,e.argumentSummary),n(`参数`,e.arguments),n(`结果`,e.result),n(`错误`,e.error)),(e.kind===`agent_message`||e.kind===`status`||e.kind===`error`)&&e.detail&&n(`详情`,e.detail),t}function F9({text:e}){let[t,n]=_.useState(!1);async function r(){try{await navigator.clipboard.writeText(e),n(!0),window.setTimeout(()=>n(!1),1500)}catch{}}return(0,J.jsx)(`button`,{type:`button`,onClick:r,title:`复制`,className:`shrink-0 rounded p-0.5 text-muted-foreground hover:bg-muted hover:text-foreground`,children:t?(0,J.jsx)(N,{className:`size-3`}):(0,J.jsx)(L,{className:`size-3`})})}function I9({part:e}){let t=e.label===`结果`;return(0,J.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,J.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,J.jsx)(`span`,{className:`text-xs font-medium text-muted-foreground`,children:e.label}),t?(0,J.jsx)(F9,{text:e.value}):null]}),(0,J.jsx)(`pre`,{className:`overflow-x-auto rounded-md bg-muted p-2 font-mono text-xs whitespace-pre-wrap text-foreground`,children:e.value})]})}function L9({event:e}){let[t,n]=_.useState(!1),r=M9[e.kind]||ne,i=e.kind===`agent_message`,a=_.useMemo(()=>P9(e),[e]);return i||a.length>0?(0,J.jsxs)(k9,{open:t,onOpenChange:n,children:[(0,J.jsxs)(A9,{className:`flex w-full items-center gap-1.5 rounded-md px-1.5 py-1 text-left text-sm hover:bg-muted`,children:[(0,J.jsx)(r,{className:`size-3.5 shrink-0 text-muted-foreground`}),(0,J.jsx)(`span`,{className:`flex-1 truncate text-foreground`,children:i?`说明`:e.text}),(0,J.jsx)(F,{className:K(`size-3.5 shrink-0 text-muted-foreground transition-transform`,t&&`rotate-90`)})]}),(0,J.jsx)(j9,{className:`flex flex-col gap-2 px-1.5 pt-1 pb-1.5 pl-6`,children:i&&!a.length?(0,J.jsx)(`p`,{className:`text-sm whitespace-pre-wrap text-foreground`,children:e.detail||e.text}):a.map(e=>(0,J.jsx)(I9,{part:e},e.label))})]}):(0,J.jsxs)(`div`,{className:`flex items-start gap-1.5 px-1.5 py-1 text-sm`,children:[(0,J.jsx)(r,{className:`mt-0.5 size-3.5 shrink-0 text-muted-foreground`}),(0,J.jsx)(`span`,{className:`flex-1 truncate text-foreground`,children:e.text})]})}function R9({trace:e}){let[t,n]=_.useState(!1),r=_.useMemo(()=>Qt(e.traceEvents||[]),[e.traceEvents]);if(!r.length)return null;let i=$t(r,e.pending===!0);return(0,J.jsxs)(k9,{open:t,onOpenChange:n,className:`w-full max-w-[75%]`,children:[(0,J.jsxs)(A9,{className:`flex w-full items-center gap-1.5 rounded-lg border bg-muted/40 px-2.5 py-1.5 text-left text-xs text-muted-foreground hover:bg-muted`,children:[(0,J.jsx)(F,{className:K(`size-3.5 shrink-0 transition-transform`,t&&`rotate-90`)}),(0,J.jsxs)(`span`,{className:`flex-1`,children:[`执行过程 · `,i]})]}),(0,J.jsx)(j9,{className:`mt-1 flex flex-col gap-0.5 rounded-lg border bg-muted/20 p-1.5`,children:r.map((e,t)=>(0,J.jsx)(L9,{event:e},`${e.kind}-${t}`))})]})}var z9={activity:`聊天`,terminal:`终端`,files:`文件`,detail:`详情`,config:`配置`,check:`检查`},B9=[`activity`,`files`],V9=Object.keys(z9).filter(e=>!B9.includes(e)),H9=6e3,U9=6e5,W9=/^(\d+\.\d+\.\d+)-([A-Za-z0-9][A-Za-z0-9_.-]*)$/,G9={ok:`secondary`,warn:`outline`,danger:`destructive`,info:`outline`},K9={agent:`当前 AGENT 覆盖`,container:`容器默认模板`,inferred:`从启动命令推导`,none:`未配置`},vee={user:`用户`,assistant:`AGENT`,system:`系统`};function q9(e){return e===`history`?{label:`仅历史`,tone:`warn`}:e.toLowerCase().includes(`up`)?{label:`运行中`,tone:`ok`}:{label:`已停止`,tone:`danger`}}function J9(e){let t=e.lastResumeAt?X9(e.lastResumeAt):`暂无记录`;return e.lastResumeOk===!0?{value:`最近成功`,tone:`ok`,detail:`最近一次 resume 成功,时间:${t}。`}:e.lastResumeOk===!1?{value:`最近失败`,tone:`danger`,detail:e.lastResumeError?`最近一次 resume 失败:${e.lastResumeError}`:`最近一次 resume 失败,时间:${t}。`}:e.resumeSupported?{value:`未执行`,tone:`warn`,detail:`支持 resume,但当前会话还没有最近一次执行记录。`}:{value:`不支持`,tone:`warn`,detail:`当前 Agent 程序或模板不支持 resume。`}}function Y9({title:e,rows:t}){return(0,J.jsxs)(VQ,{children:[(0,J.jsx)(HQ,{children:(0,J.jsx)(UQ,{className:`text-sm`,children:e})}),(0,J.jsx)(WQ,{className:`flex flex-col divide-y`,children:t.map(e=>(0,J.jsxs)(`div`,{className:`flex flex-col gap-0.5 py-2 first:pt-0 last:pb-0`,children:[(0,J.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,J.jsx)(`span`,{className:`text-sm text-muted-foreground`,children:e.label}),e.tone?(0,J.jsx)(xd,{variant:G9[e.tone],children:e.value}):(0,J.jsx)(`span`,{className:`truncate text-sm font-medium`,children:e.value})]}),e.detail?(0,J.jsx)(`p`,{className:`text-xs text-muted-foreground`,children:e.detail}):null]},e.label))})]})}function X9(e){if(!e)return``;let t=new Date(e);return Number.isNaN(t.getTime())?e:t.toLocaleString()}function Z9({text:e,markdown:t}){let[n,r]=_.useState(!1),[i,a]=_.useState(!1);async function o(e){try{await navigator.clipboard.writeText(e),a(!0),window.setTimeout(()=>a(!1),1500)}catch{}r(!1)}return t===void 0?(0,J.jsx)(`button`,{type:`button`,onClick:()=>o(e),title:`复制`,className:`rounded p-0.5 text-muted-foreground hover:bg-muted hover:text-foreground`,children:i?(0,J.jsx)(N,{className:`size-3`}):(0,J.jsx)(L,{className:`size-3`})}):(0,J.jsxs)(a9,{open:n,onOpenChange:r,children:[(0,J.jsx)(o9,{render:(0,J.jsx)(`button`,{type:`button`,title:`复制`,className:`rounded p-0.5 text-muted-foreground hover:bg-muted hover:text-foreground`}),children:i?(0,J.jsx)(N,{className:`size-3`}):(0,J.jsx)(L,{className:`size-3`})}),(0,J.jsx)(s9,{align:`start`,className:`w-32 p-1`,children:(0,J.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,J.jsx)(ud,{variant:`ghost`,size:`sm`,className:`justify-start`,onClick:()=>o(e),children:`复制文本`}),(0,J.jsx)(ud,{variant:`ghost`,size:`sm`,className:`justify-start`,onClick:()=>o(t),children:`复制 Markdown`})]})})]})}function yee({session:e,messages:t,mode:n,onPreviewHtml:r}){let i=_.useMemo(()=>Xt(t),[t]),a=_.useRef(null),o=_.useRef(!0);function s(){let e=a.current;e&&(o.current=YX(e.scrollTop,e.scrollHeight,e.clientHeight))}return _.useEffect(()=>{let e=a.current;!e||!o.current||(e.scrollTop=e.scrollHeight)},[i]),e?i.length?(0,J.jsx)(`div`,{ref:a,onScroll:s,className:`h-full overflow-x-hidden overflow-y-auto overscroll-y-contain`,children:(0,J.jsx)(`div`,{className:`flex flex-col gap-3 p-4`,children:i.map(e=>{let t=e.mode===`agent`||e.mode===`command`?e.mode:``,i=t!==``&&t!==n,a=e.streamTrace===!0&&!e.pairedTrace;return(0,J.jsxs)(`div`,{className:K(`flex flex-col gap-1 transition-opacity`,e.role===`user`?`items-end`:`items-start`,i&&`opacity-25`),children:[e.pairedTrace?(0,J.jsx)(R9,{trace:e.pairedTrace}):null,a?(0,J.jsx)(R9,{trace:e}):(0,J.jsxs)(J.Fragment,{children:[(0,J.jsx)(`div`,{className:K(`max-w-full rounded-xl px-3 py-2 text-sm sm:max-w-[75%]`,e.role===`user`?`max-w-[88%] bg-muted/80 text-foreground whitespace-pre-wrap sm:max-w-[75%]`:e.mode===`command`?`bg-muted/40 whitespace-pre-wrap text-foreground`:e.role===`system`?`bg-transparent whitespace-pre-wrap text-muted-foreground italic`:`bg-muted/40 text-foreground`,e.pending&&`opacity-70`),children:e.role===`assistant`?e.pending?(0,J.jsx)(`div`,{className:`whitespace-pre-wrap`,children:e.content||`…`}):(0,J.jsx)(E1,{content:e.content||``,onPreviewHtml:e=>r(`聊天中的 HTML 代码块`,e)}):e.content||(e.pending?`…`:``)}),(0,J.jsxs)(`span`,{className:`flex items-center gap-1 px-1 text-xs text-muted-foreground`,children:[X9(e.timestamp),e.interrupted?` · 已停止`:``,e.content&&!e.pending?e.role===`assistant`?(0,J.jsx)(Z9,{text:IQ(e.content),markdown:e.content}):(0,J.jsx)(Z9,{text:e.content}):null]})]})]},e.id)})})}):(0,J.jsx)(`div`,{className:`flex h-full flex-col items-center justify-center gap-2 p-6 text-center text-sm text-muted-foreground`,children:(0,J.jsx)(`p`,{children:`还没有对话记录,在下方输入内容开始与 AGENT 交流。`})}):(0,J.jsx)(`div`,{className:`flex h-full flex-col items-center justify-center gap-2 p-6 text-center text-sm text-muted-foreground`,children:(0,J.jsx)(`p`,{children:`请选择左侧的容器 / AGENT,或点击「新建容器」创建一个新会话。`})})}function Q9({text:e}){return(0,J.jsx)(`div`,{className:`flex h-full items-center justify-center p-6 text-center text-sm text-muted-foreground`,children:e})}function bee({detail:e}){if(!e)return(0,J.jsx)(Q9,{text:`请先选择左侧的容器 / AGENT`});let t=q9(e.status),n=J9(e),r=W9.test(e.applied.imageVersion||``),i=!!(e.applied.hostPath&&e.applied.containerPath);return(0,J.jsxs)(`div`,{className:`flex h-full flex-col gap-3 overflow-auto p-4 [&>*]:shrink-0`,children:[(0,J.jsx)(Y9,{title:`运行检查`,rows:[{label:`容器状态`,value:t.label,tone:t.tone,detail:t.tone===`ok`?`容器处于可交互状态。`:`当前不是活跃运行态,部分功能可能受限。`},{label:`Agent 输入`,value:e.agentEnabled?`已配置`:`未配置`,tone:e.agentEnabled?`ok`:`warn`,detail:e.agentEnabled?`活动页可直接发送 Agent 提示词。`:`当前会话不支持 Agent 模式。`},{label:`Resume 健康`,value:n.value,tone:n.tone,detail:n.detail},{label:`镜像版本`,value:r?`格式正常`:`格式异常`,tone:r?`ok`:`danger`,detail:e.applied.imageVersion?`当前值:${e.applied.imageVersion}。建议保持 x.y.z-后缀 格式,便于 manyoyo 的版本校验。`:`缺少 imageVersion,manyoyo 的版本校验会失效。`},{label:`工作目录映射`,value:i?`已配置`:`缺失`,tone:i?`ok`:`danger`,detail:i?`宿主目录与容器目录都已配置。`:`hostPath / containerPath 是容器会话最关键的上下文。`}]}),e.lastResumeError?(0,J.jsx)(Y9,{title:`最近问题`,rows:[{label:`Resume 错误`,value:`有错误输出`,tone:`danger`,detail:e.lastResumeError}]}):null]})}function xee({detail:e}){if(!e)return(0,J.jsx)(Q9,{text:`请先选择左侧的容器 / AGENT`});let t=e.applied,n=K9[e.agentPromptSource]||`未配置`,r=[];return t.shellPrefix&&r.push({label:`shellPrefix`,value:t.shellPrefix}),t.shell&&r.push({label:`shell`,value:t.shell}),t.shellSuffix&&r.push({label:`shellSuffix`,value:t.shellSuffix}),t.defaultCommand&&t.defaultCommand!==t.shell?r.push({label:`启动命令`,value:t.defaultCommand}):t.shell||r.push({label:`启动命令`,value:t.defaultCommand||`—`}),r.push({label:`Agent 模板`,value:e.agentPromptCommand||`—`}),r.push({label:`模板来源`,value:n}),r.push({label:`yolo`,value:t.yolo||`—`}),(0,J.jsxs)(`div`,{className:`flex h-full flex-col gap-3 overflow-auto p-4 [&>*]:shrink-0`,children:[(0,J.jsx)(Y9,{title:`基础配置`,rows:[{label:`AGENT`,value:e.agentName||e.name||`—`},{label:`containerName`,value:t.containerName||e.containerName||`—`},{label:`imageName`,value:t.imageName||e.image||`—`},{label:`imageVersion`,value:t.imageVersion||`—`},{label:`containerMode`,value:t.containerMode||`default`}]}),(0,J.jsx)(Y9,{title:`路径与资源`,rows:[{label:`hostPath`,value:t.hostPath||`—`},{label:`containerPath`,value:t.containerPath||`—`},{label:`env 数量`,value:String(t.envCount||0)},{label:`volume 数量`,value:String(t.volumeCount||0)},{label:`port 数量`,value:String(t.portCount||0)}]}),(0,J.jsx)(Y9,{title:`命令与 Agent`,rows:r})]})}function See({detail:e}){if(!e)return(0,J.jsx)(Q9,{text:`请先选择左侧的容器 / AGENT`});let t=q9(e.status),n=J9(e),r=K9[e.agentPromptSource]||`未配置`,i=vee[e.latestRole]||`暂无`,a=e.latestTimestamp?X9(e.latestTimestamp):`暂无`;return(0,J.jsxs)(`div`,{className:`flex h-full flex-col gap-3 overflow-auto p-4 [&>*]:shrink-0`,children:[(0,J.jsx)(Y9,{title:`会话概览`,rows:[{label:`AGENT`,value:e.agentName||e.name},{label:`容器`,value:e.containerName||`—`},{label:`状态`,value:t.label,tone:t.tone},{label:`镜像`,value:e.image||e.applied.imageName||`—`},{label:`最近更新`,value:e.updatedAt?X9(e.updatedAt):`—`},{label:`消息数`,value:String(e.messageCount||0)}]}),(0,J.jsx)(Y9,{title:`Agent 运行`,rows:[{label:`已启用`,value:e.agentEnabled?`是`:`否`,tone:e.agentEnabled?`ok`:`warn`},{label:`程序`,value:e.agentProgram||`—`},{label:`模板来源`,value:r},{label:`支持 resume`,value:e.resumeSupported?`是`:`否`,tone:e.resumeSupported?`ok`:`warn`},{label:`最近 resume`,value:e.lastResumeAt?X9(e.lastResumeAt):`暂无`},{label:`最近结果`,value:e.lastResumeOk==null?`暂无`:e.lastResumeOk?`成功`:`失败`,tone:e.lastResumeOk==null?`info`:e.lastResumeOk?`ok`:`danger`}]}),(0,J.jsx)(Y9,{title:`用量统计`,rows:e.usageTotal?[{label:`累计输入 tokens`,value:String(e.usageTotal.inputTokens)},{label:`累计输出 tokens`,value:String(e.usageTotal.outputTokens)},{label:`累计花费`,value:typeof e.usageTotal.costUsd==`number`?`$${e.usageTotal.costUsd.toFixed(4)}`:`暂不支持`}]:[{label:`状态`,value:`暂无数据`,tone:`info`,detail:`当前 Agent 程序不支持用量统计,或还未执行过对话。`}]}),(0,J.jsx)(Y9,{title:`最近活动`,rows:[{label:`最近角色`,value:i},{label:`最近时间`,value:a},{label:`resume 状态`,value:n.value,tone:n.tone}]})]})}function Cee({draft:e,onDraftChange:t,onSend:n,onStop:r,mode:i,onModeChange:a,disabled:o,sending:s,session:c,onOpenCliTemplate:l,onOpenModel:u}){let d=RY(),[f,p]=_.useState(!1),m=c?ln(c,i):``,h=!!c?.archived,g=o||m!==``,v=g||e.trim()===``;return(0,J.jsxs)(`div`,{className:`border-t p-3`,children:[(0,J.jsx)(Qp,{placeholder:o?`请先在左侧选择一个容器 / AGENT`:m===`archived`?`该 AGENT 已被删除,仅可查看历史消息`:m===`container-busy`?`同容器的另一个 AGENT 正在执行任务,请等它结束或先停止`:m===`agent-unavailable`?`当前会话未配置 CLI,点「选项 → CLI」设置后即可对话`:i===`command`?`输入容器命令,例如: ls -la`:`输入要发给 AGENT 的内容`,className:`max-h-[40vh] min-h-16 resize-none overflow-y-auto`,value:e,disabled:g,onChange:e=>t(e.target.value),onKeyDown:e=>{e.key!==`Enter`||e.nativeEvent.isComposing||d||e.shiftKey||e.altKey||(e.preventDefault(),!s&&!g&&n())}}),(0,J.jsxs)(`div`,{className:`mt-2 flex items-center justify-between gap-2`,children:[(0,J.jsxs)(a9,{open:f,onOpenChange:p,children:[(0,J.jsx)(o9,{render:(0,J.jsx)(ud,{variant:i===`command`?`secondary`:`outline`,className:`px-4`,disabled:o}),children:cn(i)}),(0,J.jsx)(s9,{align:`start`,className:`w-44 p-1`,children:(0,J.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,J.jsx)(ud,{variant:i===`agent`?`secondary`:`ghost`,size:`sm`,className:`justify-start`,onClick:()=>{a(`agent`),p(!1)},children:`Agent对话`}),(0,J.jsx)(ud,{variant:i===`command`?`secondary`:`ghost`,size:`sm`,className:`justify-start`,onClick:()=>{a(`command`),p(!1)},children:`系统命令`}),(0,J.jsx)(Od,{className:`my-1`}),(0,J.jsxs)(ud,{variant:`ghost`,size:`sm`,className:`justify-start`,disabled:!c||h,onClick:()=>{l(),p(!1)},children:[`CLI · `,c?.agentProgram||`未设置`]}),(0,J.jsxs)(ud,{variant:`ghost`,size:`sm`,className:`justify-start`,disabled:!c||h,onClick:()=>{u(),p(!1)},children:[`模型 · `,c?.model||`跟随默认`]})]})})]}),s?(0,J.jsx)(ud,{variant:`destructive`,className:`px-4`,onClick:r,children:`停止`}):(0,J.jsxs)(ud,{className:`px-4`,onClick:n,disabled:v,children:[(0,J.jsx)(le,{"data-icon":`inline-start`}),`发送`]})]})]})}function wee({activeSession:e,onAfterSend:t,filesEditorRef:n,confirmLeaveIfDirty:r,creatingAgent:i}){let[a,o]=_.useState(`activity`),[s,c]=_.useState({}),[l,u]=_.useState(!1),[d,f]=_.useState(``),[p,m]=_.useState(`agent`),[h,g]=_.useState(!1),[v,y]=_.useState(()=>new Set),[b,x]=_.useState(``),[S,C]=_.useState(!1),w=_.useCallback((e,t=!1)=>{x(e),C(e?t:!1)},[]),[T,E]=_.useState(0),D=_.useRef(0),O=_.useRef(-1),[k,A]=_.useState(!1),[j,M]=_.useState(!1),[N,P]=_.useState(null),[F,I]=_.useState(null),L=_.useRef(e?.name??null);_.useEffect(()=>{L.current=e?.name??null},[e?.name]);let z=_.useRef(v);_.useEffect(()=>{z.current=v},[v]),_.useEffect(()=>{f(``),m(`agent`)},[e?.name]);let ee=e?s[e.name]:void 0,B=ee!==void 0,V=ee??[],H=_.useCallback((e,t)=>{c(n=>{let r=t(n[e]??[]);return r===n[e]?n:{...n,[e]:r}})},[]),te=e?v.has(e.name):!1,U=te||V.some(e=>e.mode===`agent`&&e.pending===!0);async function ne(e){a!==e&&(a===`files`&&!await r()||o(e))}function re(e,t){y(n=>{let r=new Set(n);return t?r.add(e):r.delete(e),r})}let ie=_.useCallback(t=>e?(t||(w(``),u(!0)),tn(`/api/sessions/${encodeURIComponent(e.name)}/messages`).then(t=>{Jt(e.name,L.current,z.current.has(e.name))||(H(e.name,()=>Array.isArray(t.messages)?t.messages:[]),D.current+=1,E(D.current))}).catch(e=>{t||w(e instanceof Error?e.message:`加载消息失败`)}).finally(()=>{t||u(!1)})):(u(!1),Promise.resolve()),[e?.name,H]),ae=_.useCallback(()=>e?tn(`/api/sessions/${encodeURIComponent(e.name)}/detail`).then(e=>P(e.detail||null)).catch(()=>{}):(P(null),Promise.resolve()),[e?.name]);_.useEffect(()=>{queueMicrotask(()=>{ie(),ae()})},[ie,ae]),JX(e,V,_.useCallback(async()=>{await Promise.all([ie(!0),ae()])},[ie,ae]),te);let oe=V.some(e=>e.pending===!0);_.useEffect(()=>{!S||te||oe||T<=O.current||w(``)},[S,te,oe,T,w]),_.useEffect(()=>{let e=Date.now();function n(){e=Date.now()}function r(){document.visibilityState===`visible`&&(t(),L.current&&(z.current.has(L.current)||(ie(!0),ae())))}function i(){n(),r()}let a=[`mousemove`,`mousedown`,`keydown`,`touchstart`,`scroll`];a.forEach(e=>window.addEventListener(e,n,{passive:!0})),document.addEventListener(`visibilitychange`,i),window.addEventListener(`focus`,i);let o=window.setInterval(()=>{document.visibilityState===`visible`&&(Date.now()-e>U9||r())},H9);return()=>{a.forEach(e=>window.removeEventListener(e,n)),document.removeEventListener(`visibilitychange`,i),window.removeEventListener(`focus`,i),window.clearInterval(o)}},[ie,ae,t]);async function se(){let n=d.trim();if(!n||!e||v.has(e.name))return;let r=e.name,i=()=>L.current===r;if(f(``),w(``),H(r,e=>[...e,{id:`${Ht}${Date.now()}`,role:`user`,content:n,timestamp:new Date().toISOString(),mode:p}]),p===`command`){re(r,!0);try{let e=await nn(`/api/sessions/${encodeURIComponent(r)}/run`,{command:n});H(r,t=>[...t,{id:`result-${Date.now()}`,role:`system`,content:String(e.output||``),timestamp:new Date().toISOString(),mode:`command`,exitCode:e.exitCode}])}catch(e){i()&&w(e instanceof Error?e.message:`命令执行失败`)}finally{re(r,!1),t(),i()&&ae()}return}re(r,!0);let a=[],o=Ut;H(r,e=>[...e,{id:Ut,role:`assistant`,content:`[执行过程]`,timestamp:new Date().toISOString(),streamTrace:!0,traceEvents:[],pending:!0,mode:`agent`},{id:Wt,role:`assistant`,content:``,timestamp:new Date().toISOString(),pending:!0,mode:`agent`}]);try{await mn(`/api/sessions/${encodeURIComponent(r)}/agent/stream`,{prompt:n},e=>{e.type===`meta`?(e.userMessageId!==void 0||e.traceMessageId!==void 0)&&(H(r,t=>Kt(t,{userMessageId:e.userMessageId,traceMessageId:e.traceMessageId})),e.traceMessageId!==void 0&&(o=e.traceMessageId)):e.type===`trace`?(e.traceEvent&&a.push(e.traceEvent),H(r,e=>qt(e,o,{traceEvents:a.slice()}))):e.type===`content_delta`?H(r,t=>t.map(t=>t.id===`__streaming__`?{...t,content:e.content}:t)):e.type===`content_chunk`?H(r,t=>t.map(t=>t.id===`__streaming__`?{...t,content:e.reset?``:`${t.content}${e.text}`}:t)):e.type===`result`?H(r,t=>Kt(qt(t,o,{pending:!1}).map(t=>t.id===`__streaming__`?{...t,content:e.output,pending:!1,interrupted:e.interrupted,exitCode:e.exitCode}:t),{replyMessageId:e.replyMessageId})):e.type===`error`&&(i()&&w(e.error),H(r,e=>Yt(e)))})}catch(e){let t=on(e);O.current=D.current,i()&&w(t?`与服务端的实时连接中断,任务仍在容器里继续执行,正在重新同步…`:e instanceof Error?e.message:`发送失败`,t),H(r,e=>Yt(e)),ie(!0)}finally{re(r,!1),t(),i()&&ae()}}async function ce(){if(e)try{await nn(`/api/sessions/${encodeURIComponent(e.name)}/agent/stop`,{})}catch(e){w(e instanceof Error?e.message:`停止失败`)}finally{ie(!0),ae()}}return(0,J.jsxs)(`div`,{className:`flex h-full min-h-0 min-w-0 flex-col`,children:[(0,J.jsxs)(`header`,{className:`flex h-12 shrink-0 items-center gap-2 border-b px-3`,children:[(0,J.jsx)(OX,{}),(0,J.jsx)(Od,{orientation:`vertical`,className:`h-4!`}),(0,J.jsxs)(`div`,{className:`flex shrink-0 items-center gap-1`,children:[(0,J.jsx)(ud,{variant:a===`activity`?`secondary`:`ghost`,size:`sm`,"aria-current":a===`activity`,onClick:()=>ne(`activity`),children:`聊天`}),(0,J.jsx)(ud,{variant:a===`files`?`secondary`:`ghost`,size:`sm`,"aria-current":a===`files`,onClick:()=>ne(`files`),children:`文件`}),(0,J.jsxs)(a9,{open:h,onOpenChange:g,children:[(0,J.jsx)(o9,{render:(0,J.jsx)(ud,{variant:`ghost`,size:`icon-sm`,title:`更多标签页`}),children:(0,J.jsx)(R,{})}),(0,J.jsx)(s9,{align:`start`,className:`w-36 p-1`,children:(0,J.jsx)(`div`,{className:`flex flex-col gap-1`,children:V9.map(e=>(0,J.jsx)(ud,{variant:a===e?`secondary`:`ghost`,size:`sm`,className:`justify-start`,"aria-current":a===e,onClick:()=>{ne(e),g(!1)},children:z9[e]},e))})})]})]}),(0,J.jsx)(Od,{orientation:`vertical`,className:`h-4! shrink-0`}),(0,J.jsxs)(`span`,{className:`flex min-w-0 flex-1 items-center gap-1.5 truncate text-sm font-medium`,children:[(0,J.jsx)(`span`,{className:`truncate`,children:e?`${e.containerRemark||e.containerName} · ${e.agentRemark||e.agentName}`:`选择左侧的容器 / AGENT 开始`}),e?.archived?(0,J.jsx)(xd,{variant:`outline`,className:`shrink-0`,children:`已停止`}):null]})]}),(0,J.jsxs)(`div`,{className:`min-h-0 min-w-0 flex-1 overflow-x-hidden`,children:[i?(0,J.jsxs)(`div`,{className:`flex h-full flex-col items-center justify-center gap-2`,children:[(0,J.jsx)(Sd,{className:`size-6`}),(0,J.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`正在创建 AGENT...`})]}):a===`activity`?l&&!B?(0,J.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,J.jsx)(Sd,{className:`size-6`})}):(0,J.jsx)(yee,{session:e,messages:V,mode:p,onPreviewHtml:(e,t)=>I({title:e,code:t})},e?.name??`none`):null,a===`terminal`?(0,J.jsx)(R7,{session:e}):null,a===`files`?(0,J.jsx)(N1,{activeSession:e,editorStateRef:n,confirmLeaveIfDirty:r,onPreviewHtml:(e,t)=>I({title:e,code:t})}):null,a===`detail`?(0,J.jsx)(See,{detail:N}):null,a===`config`?(0,J.jsx)(xee,{detail:N}):null,a===`check`?(0,J.jsx)(bee,{detail:N}):null]}),a===`activity`&&b?(0,J.jsx)(wd,{variant:`destructive`,className:`mx-3 mb-2 min-w-0`,children:(0,J.jsx)(Td,{className:`break-words`,children:b})}):null,a===`activity`?(0,J.jsx)(Cee,{draft:d,onDraftChange:f,onSend:se,onStop:ce,mode:p,onModeChange:m,disabled:!e||l&&!B,sending:U,session:e,onOpenCliTemplate:()=>A(!0),onOpenModel:()=>M(!0)}):null,(0,J.jsx)(BQ,{open:k,onOpenChange:A,session:e,onSaved:()=>{t(),ae()}}),(0,J.jsx)(L1,{open:j,onOpenChange:M,session:e,onSaved:()=>{t(),ae()}}),(0,J.jsx)(P1,{state:F,onOpenChange:e=>{e||I(null)}})]})}function Tee(){let[e,t]=_.useState([]),[n,r]=_.useState(!0),[i,a]=_.useState(``),o=_.useCallback(async()=>{a(``);try{let e=await tn(`/api/sessions`),n=Array.isArray(e.sessions)?e.sessions:[];return t(n),n}catch(e){return a(e instanceof Error?e.message:`加载会话列表失败`),[]}finally{r(!1)}},[]);return _.useEffect(()=>{queueMicrotask(()=>o())},[o]),{sessions:e,containers:_.useMemo(()=>hn(e),[e]),loading:n,error:i,refresh:o}}function Eee(){let[e,t]=_.useState(null),[n,r]=_.useState(!1),i=_.useCallback((e,n)=>new Promise(r=>{t({fileName:e,save:n,resolve:r})}),[]);function a(e){t(t=>(t?.resolve(e),null))}async function o(){if(!e||n)return;r(!0);let t=await e.save();r(!1),a(t?`proceed`:`cancel`)}return{ask:i,dialog:(0,J.jsx)(dd,{open:e!==null,onOpenChange:e=>{!e&&!n&&a(`cancel`)},children:(0,J.jsxs)(md,{className:`sm:max-w-sm`,children:[(0,J.jsx)(_d,{className:`sr-only`,children:`有未保存的修改`}),(0,J.jsxs)(vd,{className:`text-foreground`,children:[`是否要保存对 `,e?.fileName,` 的更改?`,(0,J.jsx)(`br`,{}),`如果不保存,你的更改将丢失。`]}),(0,J.jsxs)(gd,{children:[(0,J.jsxs)(ud,{disabled:n,onClick:o,children:[n?(0,J.jsx)(Sd,{"data-icon":`inline-start`}):null,`保存`]}),(0,J.jsx)(ud,{variant:`outline`,disabled:n,onClick:()=>a(`proceed`),children:`不保存`}),(0,J.jsx)(ud,{variant:`outline`,disabled:n,onClick:()=>a(`cancel`),children:`取消`})]})]})})}}function Dee({width:e,dragging:t,onPointerDown:n}){let{isMobile:r,state:i}=TX();return r||i===`collapsed`?null:(0,J.jsx)(KX,{onPointerDown:n,dragging:t,className:`absolute inset-y-0 z-20 -ml-1`,style:{left:e}})}function Oee(){let{sessions:e,containers:t,loading:n,error:r,refresh:i}=Tee(),{width:a,dragging:o,onHandlePointerDown:s}=YQ({storageKey:`manyoyo:sidebar-width`,defaultWidth:288,min:224,max:512}),[c,l]=_.useState(null),[u,d]=_.useState(null),f=_.useMemo(()=>e.find(e=>e.name===c)??null,[e,c]),p=_.useRef(null),{ask:m,dialog:h}=Eee(),g=_.useCallback(async()=>{let e=p.current;return!e||await m(e.fileName,e.save)===`proceed`},[m]);function v(e){l(e?e.name:null)}return _.useEffect(()=>{document.querySelector(`meta[name="manyoyo-serve-title"]`)||(document.title=XX(f?.agentRemark||f?.agentName))},[f]),(0,J.jsxs)(EX,{className:`relative h-svh overflow-hidden`,style:{"--sidebar-width":`${a}px`},children:[(0,J.jsx)(GX,{containers:t,loading:n,error:r,activeSessionName:c,onSelectSession:v,onRefresh:i,confirmLeaveIfDirty:g,creatingAgentContainer:u,onCreatingAgentContainerChange:d}),(0,J.jsx)(Dee,{width:a,dragging:o,onPointerDown:s}),(0,J.jsx)(kX,{className:`min-h-0 min-w-0`,children:(0,J.jsx)(wee,{activeSession:f,onAfterSend:i,filesEditorRef:p,confirmLeaveIfDirty:g,creatingAgent:u!==null})}),h]})}var $9=`/shadcn`;function kee(){let[e,t]=_.useState(``),[n,r]=_.useState(``),[i,a]=_.useState(``),[o,s]=_.useState(!1),[c,l]=_.useState(!0);_.useEffect(()=>{let e=!1;return fetch(`/api/sessions`,{headers:{"X-Requested-With":`XMLHttpRequest`}}).then(t=>{if(!e&&t.ok){window.location.href=$9;return}e||l(!1)}).catch(()=>{e||l(!1)}),()=>{e=!0}},[]);async function u(t){if(t.preventDefault(),!o){a(``),s(!0);try{let t=await fetch(`/auth/login`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({username:e.trim(),password:n})}),r=await t.json().catch(()=>({}));if(!t.ok)throw Error(r.error||`登录失败`);window.location.href=$9}catch(e){a(e instanceof Error?e.message:`登录失败`),s(!1)}}}return c?(0,J.jsx)(`div`,{className:`flex min-h-svh items-center justify-center`}):(0,J.jsxs)(`div`,{className:`relative flex min-h-svh items-center justify-center overflow-hidden p-6`,children:[(0,J.jsx)(`div`,{className:`pointer-events-none absolute inset-0 opacity-40 [background-image:linear-gradient(to_right,var(--border)_1px,transparent_1px),linear-gradient(to_bottom,var(--border)_1px,transparent_1px)] [background-size:32px_32px] [mask-image:radial-gradient(ellipse_60%_50%_at_50%_0%,black,transparent)]`,"aria-hidden":!0}),(0,J.jsx)(`div`,{className:`pointer-events-none absolute top-1/4 left-1/2 -z-10 size-72 -translate-x-1/2 -translate-y-1/2 rounded-full bg-primary/10 blur-3xl`,"aria-hidden":!0}),(0,J.jsxs)(`div`,{className:`relative w-full max-w-sm`,children:[(0,J.jsxs)(`div`,{className:`absolute inset-x-0 bottom-full mb-6 flex flex-col items-center gap-1.5 text-center`,children:[(0,J.jsx)(`span`,{className:`font-mono text-xs tracking-[0.2em] text-muted-foreground uppercase`,children:`Agent Sandbox Console`}),(0,J.jsx)(`h1`,{className:`font-mono text-4xl font-semibold tracking-tight text-foreground`,children:`MANYOYO`}),(0,J.jsx)(`p`,{className:`text-sm text-muted-foreground`,children:`AI Agent 容器安全沙箱 · 安全隔离运行`})]}),(0,J.jsxs)(VQ,{className:`w-full gap-0 py-0 shadow-lg`,children:[(0,J.jsxs)(`div`,{className:`flex items-center gap-1.5 border-b px-4 py-2.5`,children:[(0,J.jsx)(`span`,{className:`size-2.5 rounded-full bg-destructive/70`}),(0,J.jsx)(`span`,{className:`size-2.5 rounded-full bg-amber-500/70`}),(0,J.jsx)(`span`,{className:`size-2.5 rounded-full bg-emerald-500/70`})]}),(0,J.jsx)(WQ,{className:`px-6 py-6`,children:(0,J.jsx)(`form`,{onSubmit:u,children:(0,J.jsxs)(jd,{children:[(0,J.jsxs)(Nd,{children:[(0,J.jsx)(Pd,{htmlFor:`login-username`,className:`font-mono text-xs tracking-wide text-muted-foreground uppercase`,children:`用户名`}),(0,J.jsx)(ef,{id:`login-username`,autoFocus:!0,autoComplete:`username`,value:e,onChange:e=>t(e.target.value),onKeyDown:e=>{e.key!==`Enter`||e.nativeEvent.isComposing||e.keyCode===229||(e.preventDefault(),document.getElementById(`login-password`)?.focus())}})]}),(0,J.jsxs)(Nd,{children:[(0,J.jsx)(Pd,{htmlFor:`login-password`,className:`font-mono text-xs tracking-wide text-muted-foreground uppercase`,children:`密码`}),(0,J.jsx)(ef,{id:`login-password`,type:`password`,autoComplete:`current-password`,value:n,onChange:e=>r(e.target.value)})]}),i?(0,J.jsx)(wd,{variant:`destructive`,children:(0,J.jsx)(Td,{children:i})}):null,(0,J.jsxs)(ud,{type:`submit`,size:`lg`,className:`w-full`,disabled:o,children:[o?`登录中...`:`登录`,o?null:(0,J.jsx)(F,{"data-icon":`inline-end`})]})]})})})]})]})]})}var Aee=window.location.pathname===`/shadcn/auth/login`;(0,v.createRoot)(document.getElementById(`root`)).render((0,J.jsx)(_.StrictMode,{children:(0,J.jsx)(eJ,{children:Aee?(0,J.jsx)(kee,{}):(0,J.jsx)(Oee,{})})}));</script>
203
203
  <style rel="stylesheet" crossorigin>/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
204
- @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){:root,:host{--shimmer-angle:20deg}*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:"";--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0;--scroll-fade-t:0px;--scroll-fade-b:0px;--scroll-fade-s:0px;--scroll-fade-e:0px;--scroll-fade-mask:initial;--shimmer-image:initial;--shimmer-text-fill:initial}}}@layer theme{:root,:host{--font-sans:"Geist Variable", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-amber-500:oklch(76.9% .188 70.08);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-zinc-100:oklch(96.7% .001 286.375);--color-zinc-200:oklch(92% .004 286.32);--color-zinc-300:oklch(87.1% .006 286.286);--color-zinc-400:oklch(70.5% .015 286.067);--color-zinc-700:oklch(37% .013 285.805);--color-zinc-800:oklch(27.4% .006 286.033);--color-zinc-900:oklch(21% .006 285.885);--color-zinc-950:oklch(14.1% .005 285.823);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-2xl:42rem;--container-3xl:48rem;--container-4xl:56rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-widest:.1em;--leading-snug:1.375;--leading-normal:1.5;--radius-md:calc(var(--radius) * .8);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--blur-xs:4px;--blur-md:12px;--blur-3xl:64px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:"Geist Variable", sans-serif;--default-mono-font-family:var(--font-mono);--color-ring:var(--ring)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){*{outline-color:color-mix(in oklab, var(--ring) 50%, transparent)}}body{background-color:var(--background);color:var(--foreground)}html{font-family:Geist Variable,sans-serif}html,body{overscroll-behavior:none}.prose table{max-width:100%;display:block;overflow-x:auto}}@layer components;@layer utilities{.\@container\/card-header{container:card-header/inline-size}.\@container\/field-group{container:field-group/inline-size}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:0}.inset-x-0{inset-inline:0}.inset-y-0{inset-block:0}.top-0{top:0}.top-1\/2{top:50%}.top-1\/4{top:25%}.top-2{top:calc(var(--spacing) * 2)}.top-3{top:calc(var(--spacing) * 3)}.top-3\.5{top:calc(var(--spacing) * 3.5)}.right-1{right:var(--spacing)}.right-2{right:calc(var(--spacing) * 2)}.right-3{right:calc(var(--spacing) * 3)}.bottom-0{bottom:0}.bottom-full{bottom:100%}.left-1\/2{left:50%}.isolate{isolation:isolate}.-z-10{z-index:calc(10 * -1)}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.\!container{width:100%!important}@media (width>=40rem){.\!container{max-width:40rem!important}}@media (width>=48rem){.\!container{max-width:48rem!important}}@media (width>=64rem){.\!container{max-width:64rem!important}}@media (width>=80rem){.\!container{max-width:80rem!important}}@media (width>=96rem){.\!container{max-width:96rem!important}}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.m-2{margin:calc(var(--spacing) * 2)}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.-mx-4{margin-inline:calc(var(--spacing) * -4)}.mx-2{margin-inline:calc(var(--spacing) * 2)}.mx-3{margin-inline:calc(var(--spacing) * 3)}.mx-3\.5{margin-inline:calc(var(--spacing) * 3.5)}.mx-auto{margin-inline:auto}.-my-2{margin-block:calc(var(--spacing) * -2)}.my-1{margin-block:var(--spacing)}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);margin-top:1.2em;margin-bottom:1.2em;font-size:1.25em;line-height:1.6}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);font-weight:500;text-decoration:underline}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:decimal}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:disc}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-counters);font-weight:400}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.25em;font-weight:600}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em;font-style:italic;font-weight:500}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:0;margin-bottom:.888889em;font-size:2.25em;font-weight:800;line-height:1.11111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:900}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:2em;margin-bottom:1em;font-size:1.5em;font-weight:700;line-height:1.33333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:800}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.6em;margin-bottom:.6em;font-size:1.25em;font-weight:600;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.5em;margin-bottom:.5em;font-weight:600;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em;display:block}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-kbd);box-shadow:0 0 0 1px var(--tw-prose-kbd-shadows), 0 3px 0 var(--tw-prose-kbd-shadows);padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;border-radius:.3125rem;padding-inline-start:.375em;font-family:inherit;font-size:.875em;font-weight:500}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-size:.875em;font-weight:600}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before,.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);padding-top:.857143em;padding-inline-end:1.14286em;padding-bottom:.857143em;border-radius:.375rem;margin-top:1.71429em;margin-bottom:1.71429em;padding-inline-start:1.14286em;font-size:.875em;font-weight:400;line-height:1.71429;overflow-x:auto}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit;background-color:#0000;border-width:0;border-radius:0;padding:0}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before,.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){table-layout:auto;width:100%;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.71429}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);vertical-align:bottom;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em;font-weight:600}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);margin-top:.857143em;font-size:.875em;line-height:1.42857}.prose{--tw-prose-body:oklch(37.3% .034 259.733);--tw-prose-headings:oklch(21% .034 264.665);--tw-prose-lead:oklch(44.6% .03 256.802);--tw-prose-links:oklch(21% .034 264.665);--tw-prose-bold:oklch(21% .034 264.665);--tw-prose-counters:oklch(55.1% .027 264.364);--tw-prose-bullets:oklch(87.2% .01 258.338);--tw-prose-hr:oklch(92.8% .006 264.531);--tw-prose-quotes:oklch(21% .034 264.665);--tw-prose-quote-borders:oklch(92.8% .006 264.531);--tw-prose-captions:oklch(55.1% .027 264.364);--tw-prose-kbd:oklch(21% .034 264.665);--tw-prose-kbd-shadows:oklab(21% -.00316127 -.0338527/.1);--tw-prose-code:oklch(21% .034 264.665);--tw-prose-pre-code:oklch(92.8% .006 264.531);--tw-prose-pre-bg:oklch(27.8% .033 256.848);--tw-prose-th-borders:oklch(87.2% .01 258.338);--tw-prose-td-borders:oklch(92.8% .006 264.531);--tw-prose-invert-body:oklch(87.2% .01 258.338);--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:oklch(70.7% .022 261.325);--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:oklch(70.7% .022 261.325);--tw-prose-invert-bullets:oklch(44.6% .03 256.802);--tw-prose-invert-hr:oklch(37.3% .034 259.733);--tw-prose-invert-quotes:oklch(96.7% .003 264.542);--tw-prose-invert-quote-borders:oklch(37.3% .034 259.733);--tw-prose-invert-captions:oklch(70.7% .022 261.325);--tw-prose-invert-kbd:#fff;--tw-prose-invert-kbd-shadows:#ffffff1a;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:oklch(87.2% .01 258.338);--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:oklch(44.6% .03 256.802);--tw-prose-invert-td-borders:oklch(37.3% .034 259.733);font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.571429em;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-sm{font-size:.875rem;line-height:1.71429}.prose-sm :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em;margin-bottom:1.14286em}.prose-sm :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.888889em;margin-bottom:.888889em;font-size:1.28571em;line-height:1.55556}.prose-sm :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.33333em;margin-bottom:1.33333em;padding-inline-start:1.11111em}.prose-sm :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:.8em;font-size:2.14286em;line-height:1.2}.prose-sm :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.6em;margin-bottom:.8em;font-size:1.42857em;line-height:1.4}.prose-sm :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.55556em;margin-bottom:.444444em;font-size:1.28571em;line-height:1.55556}.prose-sm :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.42857em;margin-bottom:.571429em;line-height:1.42857}.prose-sm :where(img):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.71429em;margin-bottom:1.71429em}.prose-sm :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-sm :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.71429em;margin-bottom:1.71429em}.prose-sm :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.142857em;padding-inline-end:.357143em;padding-bottom:.142857em;border-radius:.3125rem;padding-inline-start:.357143em;font-size:.857143em}.prose-sm :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.857143em}.prose-sm :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.9em}.prose-sm :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.888889em}.prose-sm :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.666667em;padding-inline-end:1em;padding-bottom:.666667em;border-radius:.25rem;margin-top:1.66667em;margin-bottom:1.66667em;padding-inline-start:1em;font-size:.857143em;line-height:1.66667}.prose-sm :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em;margin-bottom:1.14286em;padding-inline-start:1.57143em}.prose-sm :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.285714em;margin-bottom:.285714em}.prose-sm :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.428571em}.prose-sm :where(.prose-sm>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.571429em;margin-bottom:.571429em}.prose-sm :where(.prose-sm>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em}.prose-sm :where(.prose-sm>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.14286em}.prose-sm :where(.prose-sm>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em}.prose-sm :where(.prose-sm>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.14286em}.prose-sm :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.571429em;margin-bottom:.571429em}.prose-sm :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em;margin-bottom:1.14286em}.prose-sm :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em}.prose-sm :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.285714em;padding-inline-start:1.57143em}.prose-sm :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2.85714em;margin-bottom:2.85714em}.prose-sm :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.857143em;line-height:1.5}.prose-sm :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:1em;padding-bottom:.666667em;padding-inline-start:1em}.prose-sm :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-sm :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-sm :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.666667em;padding-inline-end:1em;padding-bottom:.666667em;padding-inline-start:1em}.prose-sm :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-sm :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-sm :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.71429em;margin-bottom:1.71429em}.prose-sm :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-sm :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.666667em;font-size:.857143em;line-height:1.33333}.prose-sm :where(.prose-sm>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(.prose-sm>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.mt-0{margin-top:0}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-auto{margin-top:auto}.-mb-4{margin-bottom:calc(var(--spacing) * -4)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.-ml-1{margin-left:calc(var(--spacing) * -1)}.ml-4{margin-left:calc(var(--spacing) * 4)}.ml-auto{margin-left:auto}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.field-sizing-content{field-sizing:content}.aspect-square{aspect-ratio:1}.size-1\.5{width:calc(var(--spacing) * 1.5);height:calc(var(--spacing) * 1.5)}.size-2\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.size-3{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-72{width:calc(var(--spacing) * 72);height:calc(var(--spacing) * 72)}.size-full{width:100%;height:100%}.h-4{height:calc(var(--spacing) * 4)}.h-4\!{height:calc(var(--spacing) * 4)!important}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-12{height:calc(var(--spacing) * 12)}.h-24{height:calc(var(--spacing) * 24)}.h-32{height:calc(var(--spacing) * 32)}.h-40{height:calc(var(--spacing) * 40)}.h-72{height:calc(var(--spacing) * 72)}.h-\[80vh\]{height:80vh}.h-\[calc\(100\%-1px\)\]{height:calc(100% - 1px)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-svh{height:100svh}.max-h-\(--available-height\){max-height:var(--available-height)}.max-h-80{max-height:calc(var(--spacing) * 80)}.max-h-\[80vh\]{max-height:80vh}.max-h-\[85vh\]{max-height:85vh}.min-h-0{min-height:0}.min-h-16{min-height:calc(var(--spacing) * 16)}.min-h-20{min-height:calc(var(--spacing) * 20)}.min-h-64{min-height:calc(var(--spacing) * 64)}.min-h-72{min-height:calc(var(--spacing) * 72)}.min-h-svh{min-height:100svh}.w-\(--anchor-width\){width:var(--anchor-width)}.w-\(--sidebar-width\){width:var(--sidebar-width)}.w-2{width:calc(var(--spacing) * 2)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-32{width:calc(var(--spacing) * 32)}.w-36{width:calc(var(--spacing) * 36)}.w-44{width:calc(var(--spacing) * 44)}.w-56{width:calc(var(--spacing) * 56)}.w-72{width:calc(var(--spacing) * 72)}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-max{width:max-content}.w-px{width:1px}.max-w-\(--skeleton-width\){max-width:var(--skeleton-width)}.max-w-\[75\%\]{max-width:75%}.max-w-\[88\%\]{max-width:88%}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.max-w-full{max-width:100%}.max-w-none{max-width:none}.max-w-sm{max-width:var(--container-sm)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:0}.min-w-5{min-width:calc(var(--spacing) * 5)}.min-w-7{min-width:calc(var(--spacing) * 7)}.min-w-8{min-width:calc(var(--spacing) * 8)}.min-w-9{min-width:calc(var(--spacing) * 9)}.min-w-32{min-width:calc(var(--spacing) * 32)}.min-w-36{min-width:calc(var(--spacing) * 36)}.min-w-\[96px\]{min-width:96px}.flex-1{flex:1}.shrink-0{flex-shrink:0}.origin-\(--transform-origin\){transform-origin:var(--transform-origin)}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-x-px{--tw-translate-x:-1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-px{--tw-translate-x:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\[calc\(-50\%-2px\)\]{--tw-translate-y:calc(-50% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}.rotate-45{rotate:45deg}.rotate-90{rotate:90deg}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-col-resize{cursor:col-resize}.cursor-default{cursor:default}.touch-none{touch-action:none}.resize-none{resize:none}.scroll-my-1{scroll-margin-block:var(--spacing)}.scroll-py-1{scroll-padding-block:var(--spacing)}.list-disc{list-style-type:disc}.auto-rows-min{grid-auto-rows:min-content}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-rows-\[auto_1fr\]{grid-template-rows:auto 1fr}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.flex-nowrap{flex-wrap:nowrap}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-start{justify-content:flex-start}.gap-\(--card-spacing\){gap:var(--card-spacing)}.gap-0{gap:0}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-\[--spacing\(var\(--gap\)\)\]{gap:calc(var(--spacing) * var(--gap))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-y-4{row-gap:calc(var(--spacing) * 4)}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}.self-start{align-self:flex-start}.justify-self-end{justify-self:flex-end}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.overscroll-y-contain{overscroll-behavior-y:contain}.rounded{border-radius:.25rem}.rounded-4xl{border-radius:calc(var(--radius) * 2.6)}.rounded-\[2px\]{border-radius:2px}.rounded-\[min\(var\(--radius-md\)\,10px\)\]{border-radius:min(var(--radius-md), 10px)}.rounded-\[min\(var\(--radius-md\)\,12px\)\]{border-radius:min(var(--radius-md), 12px)}.rounded-full{border-radius:2147483647px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) * .8)}.rounded-xl{border-radius:calc(var(--radius) * 1.4)}.rounded-t-xl{border-top-left-radius:calc(var(--radius) * 1.4);border-top-right-radius:calc(var(--radius) * 1.4)}.rounded-b-xl{border-bottom-right-radius:calc(var(--radius) * 1.4);border-bottom-left-radius:calc(var(--radius) * 1.4)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-border{border-color:var(--border)}.border-input{border-color:var(--input)}.border-sidebar-border{border-color:var(--sidebar-border)}.border-transparent{border-color:#0000}.border-zinc-100{border-color:var(--color-zinc-100)}.border-zinc-700{border-color:var(--color-zinc-700)}.border-zinc-800{border-color:var(--color-zinc-800)}.bg-amber-500\/70{background-color:#f99c00b3}@supports (color:color-mix(in lab, red, red)){.bg-amber-500\/70{background-color:color-mix(in oklab, var(--color-amber-500) 70%, transparent)}}.bg-background{background-color:var(--background)}.bg-black\/10{background-color:#0000001a}@supports (color:color-mix(in lab, red, red)){.bg-black\/10{background-color:color-mix(in oklab, var(--color-black) 10%, transparent)}}.bg-black\/45{background-color:#00000073}@supports (color:color-mix(in lab, red, red)){.bg-black\/45{background-color:color-mix(in oklab, var(--color-black) 45%, transparent)}}.bg-border{background-color:var(--border)}.bg-card{background-color:var(--card)}.bg-current{background-color:currentColor}.bg-destructive\/10{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\/10{background-color:color-mix(in oklab, var(--destructive) 10%, transparent)}}.bg-destructive\/70{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\/70{background-color:color-mix(in oklab, var(--destructive) 70%, transparent)}}.bg-emerald-500\/70{background-color:#00bb7fb3}@supports (color:color-mix(in lab, red, red)){.bg-emerald-500\/70{background-color:color-mix(in oklab, var(--color-emerald-500) 70%, transparent)}}.bg-emerald-600{background-color:var(--color-emerald-600)}.bg-foreground,.bg-foreground\/12{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.bg-foreground\/12{background-color:color-mix(in oklab, var(--foreground) 12%, transparent)}}.bg-muted,.bg-muted\/20{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/20{background-color:color-mix(in oklab, var(--muted) 20%, transparent)}}.bg-muted\/30{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/30{background-color:color-mix(in oklab, var(--muted) 30%, transparent)}}.bg-muted\/40{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/40{background-color:color-mix(in oklab, var(--muted) 40%, transparent)}}.bg-muted\/50{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/50{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.bg-muted\/80{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/80{background-color:color-mix(in oklab, var(--muted) 80%, transparent)}}.bg-popover{background-color:var(--popover)}.bg-primary,.bg-primary\/10{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/10{background-color:color-mix(in oklab, var(--primary) 10%, transparent)}}.bg-secondary{background-color:var(--secondary)}.bg-sidebar{background-color:var(--sidebar)}.bg-sidebar-border{background-color:var(--sidebar-border)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-zinc-100{background-color:var(--color-zinc-100)}.bg-zinc-900{background-color:var(--color-zinc-900)}.bg-zinc-950{background-color:var(--color-zinc-950)}.\[background-image\:linear-gradient\(to_right\,var\(--border\)_1px\,transparent_1px\)\,linear-gradient\(to_bottom\,var\(--border\)_1px\,transparent_1px\)\]{background-image:linear-gradient(to right,var(--border) 1px,transparent 1px),linear-gradient(to bottom,var(--border) 1px,transparent 1px)}.\[mask-image\:radial-gradient\(ellipse_60\%_50\%_at_50\%_0\%\,black\,transparent\)\]{-webkit-mask-image:radial-gradient(60% 50% at 50% 0,#000,#0000);mask-image:radial-gradient(60% 50% at 50% 0,#000,#0000)}.\[background-size\:32px_32px\]{background-size:32px 32px}.bg-clip-padding{background-clip:padding-box}.fill-foreground{fill:var(--foreground)}.p-\(--card-spacing\){padding:var(--card-spacing)}.p-0{padding:0}.p-0\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:var(--spacing)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-2\.5{padding:calc(var(--spacing) * 2.5)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-\[3px\]{padding:3px}.px-\(--card-spacing\){padding-inline:var(--card-spacing)}.px-1{padding-inline:var(--spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-\(--card-spacing\){padding-block:var(--card-spacing)}.py-0{padding-block:0}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-6{padding-block:calc(var(--spacing) * 6)}.pt-0{padding-top:0}.pt-1{padding-top:var(--spacing)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pb-1\.5{padding-bottom:calc(var(--spacing) * 1.5)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pl-1{padding-left:var(--spacing)}.pl-1\.5{padding-left:calc(var(--spacing) * 1.5)}.pl-2\.5{padding-left:calc(var(--spacing) * 2.5)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-6{padding-left:calc(var(--spacing) * 6)}.text-center{text-align:center}.text-left{text-align:left}.font-heading{font-family:var(--font-sans)}.font-mono{font-family:var(--font-mono)}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.8rem\]{font-size:.8rem}.leading-none{--tw-leading:1;line-height:1}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.2em\]{--tw-tracking:.2em;letter-spacing:.2em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-balance{text-wrap:balance}.break-words,.wrap-break-word{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.text-background{color:var(--background)}.text-card-foreground{color:var(--card-foreground)}.text-destructive{color:var(--destructive)}.text-foreground,.text-foreground\/60{color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.text-foreground\/60{color:color-mix(in oklab, var(--foreground) 60%, transparent)}}.text-muted-foreground{color:var(--muted-foreground)}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-sidebar-foreground,.text-sidebar-foreground\/70{color:var(--sidebar-foreground)}@supports (color:color-mix(in lab, red, red)){.text-sidebar-foreground\/70{color:color-mix(in oklab, var(--sidebar-foreground) 70%, transparent)}}.text-white{color:var(--color-white)}.text-zinc-200{color:var(--color-zinc-200)}.text-zinc-300{color:var(--color-zinc-300)}.text-zinc-400{color:var(--color-zinc-400)}.text-zinc-900{color:var(--color-zinc-900)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline-offset-4{text-underline-offset:4px}.opacity-25{opacity:.25}.opacity-40{opacity:.4}.opacity-70{opacity:.7}.shadow-\[0_0_0_1px_var\(--sidebar-border\)\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,var(--sidebar-border));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-0{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-foreground\/10{--tw-ring-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.ring-foreground\/10{--tw-ring-color:color-mix(in oklab, var(--foreground) 10%, transparent)}}.ring-sidebar-ring{--tw-ring-color:var(--sidebar-ring)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur-3xl{--tw-blur:blur(var(--blur-3xl));filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.blur-\[2px\]{--tw-blur:blur(2px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[left\,right\,width\]{transition-property:left,right,width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[margin\,opacity\]{transition-property:margin,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\,height\,padding\]{transition-property:width,height,padding;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-linear{--tw-ease:linear;transition-timing-function:linear}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.\[--card-spacing\:--spacing\(4\)\]{--card-spacing:calc(var(--spacing) * 4)}.running{animation-play-state:running}:is(.\*\:w-full>*){width:100%}.group-focus-within\/menu-item\:opacity-100:is(:where(.group\/menu-item):focus-within *){opacity:1}@media (hover:hover){.group-hover\:bg-primary\/60:is(:where(.group):hover *){background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.group-hover\:bg-primary\/60:is(:where(.group):hover *){background-color:color-mix(in oklab, var(--primary) 60%, transparent)}}.group-hover\/menu-item\:opacity-100:is(:where(.group\/menu-item):hover *){opacity:1}}.group-focus\/dropdown-menu-item\:text-accent-foreground:is(:where(.group\/dropdown-menu-item):focus *){color:var(--accent-foreground)}.group-has-data-\[sidebar\=menu-action\]\/menu-item\:pr-8:is(:where(.group\/menu-item):has([data-sidebar=menu-action]) *){padding-right:calc(var(--spacing) * 8)}.group-has-data-horizontal\/field\:text-balance:is(:where(.group\/field):has(:where([data-orientation=horizontal])) *){text-wrap:balance}.group-has-\[\:focus-visible\]\/field-label\:border-transparent:is(:where(.group\/field-label):has(:focus-visible) *){border-color:#0000}.group-has-\[\:focus-visible\]\/field-label\:ring-0:is(:where(.group\/field-label):has(:focus-visible) *){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-has-\[\>svg\]\/alert\:col-start-2:is(:where(.group\/alert):has(>svg) *){grid-column-start:2}.group-data-\[collapsible\=icon\]\:-mt-8:is(:where(.group)[data-collapsible=icon] *){margin-top:calc(var(--spacing) * -8)}.group-data-\[collapsible\=icon\]\:hidden:is(:where(.group)[data-collapsible=icon] *){display:none}.group-data-\[collapsible\=icon\]\:size-8\!:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--spacing) * 8)!important;height:calc(var(--spacing) * 8)!important}.group-data-\[collapsible\=icon\]\:w-\(--sidebar-width-icon\):is(:where(.group)[data-collapsible=icon] *){width:var(--sidebar-width-icon)}.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + (calc(var(--spacing) * 4)))}.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\+2px\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + (calc(var(--spacing) * 4)) + 2px)}.group-data-\[collapsible\=icon\]\:overflow-hidden:is(:where(.group)[data-collapsible=icon] *){overflow:hidden}.group-data-\[collapsible\=icon\]\:p-0\!:is(:where(.group)[data-collapsible=icon] *){padding:0!important}.group-data-\[collapsible\=icon\]\:p-2\!:is(:where(.group)[data-collapsible=icon] *){padding:calc(var(--spacing) * 2)!important}.group-data-\[collapsible\=icon\]\:opacity-0:is(:where(.group)[data-collapsible=icon] *){opacity:0}.group-data-\[collapsible\=offcanvas\]\:w-0:is(:where(.group)[data-collapsible=offcanvas] *){width:0}.group-data-\[collapsible\=offcanvas\]\:translate-x-0:is(:where(.group)[data-collapsible=offcanvas] *){--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.group-data-\[disabled\=true\]\:pointer-events-none:is(:where(.group)[data-disabled=true] *){pointer-events:none}.group-data-\[disabled\=true\]\:opacity-50:is(:where(.group)[data-disabled=true] *),.group-data-\[disabled\=true\]\/field\:opacity-50:is(:where(.group\/field)[data-disabled=true] *){opacity:.5}.group-data-\[side\=left\]\:-right-4:is(:where(.group)[data-side=left] *){right:calc(var(--spacing) * -4)}.group-data-\[side\=left\]\:border-r:is(:where(.group)[data-side=left] *){border-right-style:var(--tw-border-style);border-right-width:1px}.group-data-\[side\=right\]\:left-0:is(:where(.group)[data-side=right] *){left:0}.group-data-\[side\=right\]\:rotate-180:is(:where(.group)[data-side=right] *){rotate:180deg}.group-data-\[side\=right\]\:border-l:is(:where(.group)[data-side=right] *){border-left-style:var(--tw-border-style);border-left-width:1px}.group-data-\[size\=default\]\/switch\:size-4:is(:where(.group\/switch)[data-size=default] *){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.group-data-\[size\=sm\]\/alert-dialog-content\:grid:is(:where(.group\/alert-dialog-content)[data-size=sm] *){display:grid}.group-data-\[size\=sm\]\/alert-dialog-content\:grid-cols-2:is(:where(.group\/alert-dialog-content)[data-size=sm] *){grid-template-columns:repeat(2,minmax(0,1fr))}.group-data-\[size\=sm\]\/card\:text-sm:is(:where(.group\/card)[data-size=sm] *){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.group-data-\[size\=sm\]\/switch\:size-3:is(:where(.group\/switch)[data-size=sm] *){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.group-data-\[spacing\=0\]\/toggle-group\:rounded-none:is(:where(.group\/toggle-group)[data-spacing="0"] *){border-radius:0}.group-data-\[spacing\=0\]\/toggle-group\:px-2:is(:where(.group\/toggle-group)[data-spacing="0"] *){padding-inline:calc(var(--spacing) * 2)}.group-data-\[variant\=floating\]\:rounded-lg:is(:where(.group)[data-variant=floating] *){border-radius:var(--radius)}.group-data-\[variant\=floating\]\:shadow-sm:is(:where(.group)[data-variant=floating] *){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-data-\[variant\=floating\]\:ring-1:is(:where(.group)[data-variant=floating] *){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-data-\[variant\=floating\]\:ring-sidebar-border:is(:where(.group)[data-variant=floating] *){--tw-ring-color:var(--sidebar-border)}.group-data-\[variant\=line\]\/tabs-list\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *){background-color:#0000}.group-data-\[variant\=outline\]\/field-group\:-mb-2:is(:where(.group\/field-group)[data-variant=outline] *){margin-bottom:calc(var(--spacing) * -2)}.group-data-horizontal\/tabs\:h-8:is(:where(.group\/tabs):where([data-orientation=horizontal]) *){height:calc(var(--spacing) * 8)}.group-data-vertical\/tabs\:h-fit:is(:where(.group\/tabs):where([data-orientation=vertical]) *){height:fit-content}.group-data-vertical\/tabs\:w-full:is(:where(.group\/tabs):where([data-orientation=vertical]) *){width:100%}.group-data-vertical\/tabs\:flex-col:is(:where(.group\/tabs):where([data-orientation=vertical]) *){flex-direction:column}.group-data-vertical\/tabs\:justify-start:is(:where(.group\/tabs):where([data-orientation=vertical]) *){justify-content:flex-start}@media (hover:hover){.peer-hover\/menu-button\:text-sidebar-accent-foreground:is(:where(.peer\/menu-button):hover~*){color:var(--sidebar-accent-foreground)}}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.peer-data-\[size\=default\]\/menu-button\:top-1\.5:is(:where(.peer\/menu-button)[data-size=default]~*){top:calc(var(--spacing) * 1.5)}.peer-data-\[size\=lg\]\/menu-button\:top-2\.5:is(:where(.peer\/menu-button)[data-size=lg]~*){top:calc(var(--spacing) * 2.5)}.peer-data-\[size\=sm\]\/menu-button\:top-1:is(:where(.peer\/menu-button)[data-size=sm]~*){top:var(--spacing)}.peer-data-active\/menu-button\:text-sidebar-accent-foreground:is(:is(:where(.peer\/menu-button):where([data-state=active]),:where(.peer\/menu-button):where([data-active]:not([data-active=false])))~*){color:var(--sidebar-accent-foreground)}.file\:inline-flex::file-selector-button{display:inline-flex}.file\:h-6::file-selector-button{height:calc(var(--spacing) * 6)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:var(--foreground)}.placeholder\:text-muted-foreground::placeholder{color:var(--muted-foreground)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-inset-2:after{content:var(--tw-content);inset:calc(var(--spacing) * -2)}.after\:-inset-x-3:after{content:var(--tw-content);inset-inline:calc(var(--spacing) * -3)}.after\:-inset-y-2:after{content:var(--tw-content);inset-block:calc(var(--spacing) * -2)}.after\:inset-y-0:after{content:var(--tw-content);inset-block:0}.after\:start-1\/2:after{content:var(--tw-content);inset-inline-start:50%}.after\:w-\[2px\]:after{content:var(--tw-content);width:2px}.after\:bg-foreground:after{content:var(--tw-content);background-color:var(--foreground)}.after\:opacity-0:after{content:var(--tw-content);opacity:0}.after\:transition-opacity:after{content:var(--tw-content);transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.group-data-\[collapsible\=offcanvas\]\:after\:left-full:is(:where(.group)[data-collapsible=offcanvas] *):after{content:var(--tw-content);left:100%}.group-data-horizontal\/tabs\:after\:inset-x-0:is(:where(.group\/tabs):where([data-orientation=horizontal]) *):after{content:var(--tw-content);inset-inline:0}.group-data-horizontal\/tabs\:after\:bottom-\[-5px\]:is(:where(.group\/tabs):where([data-orientation=horizontal]) *):after{content:var(--tw-content);bottom:-5px}.group-data-horizontal\/tabs\:after\:h-0\.5:is(:where(.group\/tabs):where([data-orientation=horizontal]) *):after{content:var(--tw-content);height:calc(var(--spacing) * .5)}.group-data-vertical\/tabs\:after\:inset-y-0:is(:where(.group\/tabs):where([data-orientation=vertical]) *):after{content:var(--tw-content);inset-block:0}.group-data-vertical\/tabs\:after\:-right-1:is(:where(.group\/tabs):where([data-orientation=vertical]) *):after{content:var(--tw-content);right:calc(var(--spacing) * -1)}.group-data-vertical\/tabs\:after\:w-0\.5:is(:where(.group\/tabs):where([data-orientation=vertical]) *):after{content:var(--tw-content);width:calc(var(--spacing) * .5)}.first\:pt-0:first-child{padding-top:0}.last\:mt-0:last-child{margin-top:0}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.last\:pb-0:last-child{padding-bottom:0}@media (hover:hover){.hover\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]:hover{background-color:color-mix(in oklch,var(--secondary),var(--foreground) 5%)}}.hover\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_18\%\)\]:hover{background-color:var(--sidebar-accent)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_18\%\)\]:hover{background-color:color-mix(in oklch,var(--sidebar-accent),var(--foreground) 18%)}}.hover\:bg-destructive\/20:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/20:hover{background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.hover\:bg-foreground\/8:hover{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-foreground\/8:hover{background-color:color-mix(in oklab, var(--foreground) 8%, transparent)}}.hover\:bg-muted:hover{background-color:var(--muted)}.hover\:bg-primary\/80:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/80:hover{background-color:color-mix(in oklab, var(--primary) 80%, transparent)}}.hover\:bg-sidebar-accent:hover{background-color:var(--sidebar-accent)}.hover\:bg-zinc-100:hover{background-color:var(--color-zinc-100)}.hover\:bg-zinc-800:hover{background-color:var(--color-zinc-800)}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:text-muted-foreground:hover{color:var(--muted-foreground)}.hover\:text-sidebar-accent-foreground:hover{color:var(--sidebar-accent-foreground)}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-\[0_0_0_1px_var\(--sidebar-accent\)\]:hover{--tw-shadow:0 0 0 1px var(--tw-shadow-color,var(--sidebar-accent));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.hover\:group-data-\[collapsible\=offcanvas\]\:bg-sidebar:hover:is(:where(.group)[data-collapsible=offcanvas] *){background-color:var(--sidebar)}.hover\:after\:bg-sidebar-border:hover:after{content:var(--tw-content);background-color:var(--sidebar-border)}}.focus\:z-10:focus{z-index:10}.focus\:bg-accent:focus{background-color:var(--accent)}.focus\:text-accent-foreground:focus,:is(.focus\:\*\*\:text-accent-foreground:focus *),:is(.not-data-\[variant\=destructive\]\:focus\:\*\*\:text-accent-foreground:not([data-variant=destructive]):focus *){color:var(--accent-foreground)}.focus-visible\:z-10:focus-visible{z-index:10}.focus-visible\:border-destructive\/40:focus-visible{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:border-destructive\/40:focus-visible{border-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-3:focus-visible,.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.focus-visible\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-ring:focus-visible{outline-color:var(--ring)}.active\:bg-sidebar-accent:active{background-color:var(--sidebar-accent)}.active\:text-sidebar-accent-foreground:active{color:var(--sidebar-accent-foreground)}.active\:not-aria-\[haspopup\]\:translate-y-px:active:not([aria-haspopup]){--tw-translate-y:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-input\/50:disabled{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.disabled\:bg-input\/50:disabled{background-color:color-mix(in oklab, var(--input) 50%, transparent)}}.disabled\:opacity-50:disabled{opacity:.5}:where([data-side=left]) .in-data-\[side\=left\]\:cursor-w-resize{cursor:w-resize}:where([data-side=right]) .in-data-\[side\=right\]\:cursor-e-resize{cursor:e-resize}:where([data-slot=button-group]) .in-data-\[slot\=button-group\]\:rounded-lg{border-radius:var(--radius)}.has-data-\[icon\=inline-end\]\:pr-1:has([data-icon=inline-end]){padding-right:var(--spacing)}.has-data-\[icon\=inline-end\]\:pr-1\.5:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-end\]\:pr-2:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 2)}.group-data-\[spacing\=0\]\/toggle-group\:has-data-\[icon\=inline-end\]\:pr-1\.5:is(:where(.group\/toggle-group)[data-spacing="0"] *):has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-start\]\:pl-1:has([data-icon=inline-start]){padding-left:var(--spacing)}.has-data-\[icon\=inline-start\]\:pl-1\.5:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-start\]\:pl-2:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 2)}.group-data-\[spacing\=0\]\/toggle-group\:has-data-\[icon\=inline-start\]\:pl-1\.5:is(:where(.group\/toggle-group)[data-spacing="0"] *):has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 1.5)}.has-data-\[slot\=alert-action\]\:relative:has([data-slot=alert-action]){position:relative}.has-data-\[slot\=alert-action\]\:pr-18:has([data-slot=alert-action]){padding-right:calc(var(--spacing) * 18)}.has-data-\[slot\=alert-dialog-media\]\:grid-rows-\[auto_auto_1fr\]:has([data-slot=alert-dialog-media]){grid-template-rows:auto auto 1fr}.has-data-\[slot\=alert-dialog-media\]\:gap-x-4:has([data-slot=alert-dialog-media]){column-gap:calc(var(--spacing) * 4)}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-data-\[slot\=card-description\]\:grid-rows-\[auto_auto\]:has([data-slot=card-description]){grid-template-rows:auto auto}.has-data-\[slot\=card-footer\]\:pb-0:has([data-slot=card-footer]){padding-bottom:0}.has-data-\[slot\=kbd\]\:pr-1\.5:has([data-slot=kbd]){padding-right:calc(var(--spacing) * 1.5)}.has-data-\[variant\=inset\]\:bg-sidebar:has([data-variant=inset]){background-color:var(--sidebar)}.has-data-checked\:border-primary\/30:has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.has-data-checked\:border-primary\/30:has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){border-color:color-mix(in oklab, var(--primary) 30%, transparent)}}.has-data-checked\:bg-primary\/5:has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.has-data-checked\:bg-primary\/5:has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){background-color:color-mix(in oklab, var(--primary) 5%, transparent)}}.has-\[\>\[data-slot\=checkbox-group\]\]\:gap-3:has(>[data-slot=checkbox-group]){gap:calc(var(--spacing) * 3)}.has-\[\>\[data-slot\=field-content\]\]\:items-start:has(>[data-slot=field-content]){align-items:flex-start}.has-\[\>\[data-slot\=field\]\]\:w-full:has(>[data-slot=field]){width:100%}.has-\[\>\[data-slot\=field\]\]\:flex-col:has(>[data-slot=field]){flex-direction:column}.has-\[\>\[data-slot\=field\]\]\:rounded-lg:has(>[data-slot=field]){border-radius:var(--radius)}.has-\[\>\[data-slot\=field\]\]\:border:has(>[data-slot=field]){border-style:var(--tw-border-style);border-width:1px}@media (hover:hover){.has-\[\>\[data-slot\=field\]\]\:not-has-\[\:disabled\,\[data-disabled\]\]\:hover\:bg-muted\/50:has(>[data-slot=field]):not(:has(:is(:disabled,[data-disabled]))):hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.has-\[\>\[data-slot\=field\]\]\:not-has-\[\:disabled\,\[data-disabled\]\]\:hover\:bg-muted\/50:has(>[data-slot=field]):not(:has(:is(:disabled,[data-disabled]))):hover{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}}.has-\[\>\[data-slot\=field\]\]\:has-\[\:focus-visible\]\:border-ring:has(>[data-slot=field]):has(:focus-visible){border-color:var(--ring)}.has-\[\>\[data-slot\=field\]\]\:has-\[\:focus-visible\]\:ring-3:has(>[data-slot=field]):has(:focus-visible){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.has-\[\>\[data-slot\=field\]\]\:has-\[\:focus-visible\]\:ring-ring\/50:has(>[data-slot=field]):has(:focus-visible){--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.has-\[\>\[data-slot\=field\]\]\:has-\[\:focus-visible\]\:ring-ring\/50:has(>[data-slot=field]):has(:focus-visible){--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.has-\[\>\[data-slot\=radio-group\]\]\:gap-3:has(>[data-slot=radio-group]){gap:calc(var(--spacing) * 3)}.has-\[\>img\:first-child\]\:pt-0:has(>img:first-child){padding-top:0}.has-\[\>svg\]\:grid-cols-\[auto_1fr\]:has(>svg){grid-template-columns:auto 1fr}.has-\[\>svg\]\:gap-x-2:has(>svg){column-gap:calc(var(--spacing) * 2)}.aria-disabled\:pointer-events-none[aria-disabled=true]{pointer-events:none}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}.aria-expanded\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_18\%\)\][aria-expanded=true]{background-color:var(--sidebar-accent)}@supports (color:color-mix(in lab, red, red)){.aria-expanded\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_18\%\)\][aria-expanded=true]{background-color:color-mix(in oklch,var(--sidebar-accent),var(--foreground) 18%)}}.aria-expanded\:bg-muted[aria-expanded=true]{background-color:var(--muted)}.aria-expanded\:bg-secondary[aria-expanded=true]{background-color:var(--secondary)}.aria-expanded\:text-foreground[aria-expanded=true]{color:var(--foreground)}.aria-expanded\:text-secondary-foreground[aria-expanded=true]{color:var(--secondary-foreground)}.aria-expanded\:text-sidebar-accent-foreground[aria-expanded=true]{color:var(--sidebar-accent-foreground)}.aria-expanded\:opacity-100[aria-expanded=true]{opacity:1}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\:ring-3[aria-invalid=true]{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.aria-pressed\:bg-muted[aria-pressed=true]{background-color:var(--muted)}.data-ending-style\:opacity-0[data-ending-style]{opacity:0}.data-inset\:pl-7[data-inset]{padding-left:calc(var(--spacing) * 7)}.data-placeholder\:text-muted-foreground[data-placeholder]{color:var(--muted-foreground)}.data-popup-open\:bg-accent[data-popup-open]{background-color:var(--accent)}.data-popup-open\:text-accent-foreground[data-popup-open]{color:var(--accent-foreground)}.data-starting-style\:opacity-0[data-starting-style]{opacity:0}.data-\[align-trigger\=true\]\:animate-none[data-align-trigger=true]{animation:none}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true]{pointer-events:none}.data-\[disabled\=true\]\:opacity-50[data-disabled=true]{opacity:.5}.data-\[invalid\=true\]\:text-destructive[data-invalid=true]{color:var(--destructive)}.data-\[selected\=true\]\:bg-accent[data-selected=true]{background-color:var(--accent)}.data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{color:var(--accent-foreground)}.data-\[side\=bottom\]\:inset-x-0[data-side=bottom]{inset-inline:0}.data-\[side\=bottom\]\:top-1[data-side=bottom]{top:var(--spacing)}.data-\[side\=bottom\]\:bottom-0[data-side=bottom]{bottom:0}.data-\[side\=bottom\]\:h-auto[data-side=bottom]{height:auto}.data-\[side\=bottom\]\:border-t[data-side=bottom]{border-top-style:var(--tw-border-style);border-top-width:1px}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\[side\=bottom\]\:data-ending-style\:translate-y-\[2\.5rem\][data-side=bottom][data-ending-style],.data-\[side\=bottom\]\:data-starting-style\:translate-y-\[2\.5rem\][data-side=bottom][data-starting-style]{--tw-translate-y:2.5rem;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=inline-end\]\:top-1\/2\![data-side=inline-end]{top:50%!important}.data-\[side\=inline-end\]\:-left-1[data-side=inline-end]{left:calc(var(--spacing) * -1)}.data-\[side\=inline-end\]\:-translate-y-1\/2[data-side=inline-end]{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=inline-end\]\:slide-in-from-left-2[data-side=inline-end]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=inline-start\]\:top-1\/2\![data-side=inline-start]{top:50%!important}.data-\[side\=inline-start\]\:-right-1[data-side=inline-start]{right:calc(var(--spacing) * -1)}.data-\[side\=inline-start\]\:-translate-y-1\/2[data-side=inline-start]{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=inline-start\]\:slide-in-from-right-2[data-side=inline-start]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=left\]\:inset-y-0[data-side=left]{inset-block:0}.data-\[side\=left\]\:top-1\/2\![data-side=left]{top:50%!important}.data-\[side\=left\]\:-right-1[data-side=left]{right:calc(var(--spacing) * -1)}.data-\[side\=left\]\:left-0[data-side=left]{left:0}.data-\[side\=left\]\:h-full[data-side=left]{height:100%}.data-\[side\=left\]\:w-3\/4[data-side=left]{width:75%}.data-\[side\=left\]\:-translate-y-1\/2[data-side=left]{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=left\]\:border-r[data-side=left]{border-right-style:var(--tw-border-style);border-right-width:1px}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=left\]\:group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\][data-side=left]:is(:where(.group)[data-collapsible=offcanvas] *){left:calc(var(--sidebar-width) * -1)}.data-\[side\=left\]\:data-ending-style\:translate-x-\[-2\.5rem\][data-side=left][data-ending-style],.data-\[side\=left\]\:data-starting-style\:translate-x-\[-2\.5rem\][data-side=left][data-starting-style]{--tw-translate-x:-2.5rem;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:inset-y-0[data-side=right]{inset-block:0}.data-\[side\=right\]\:top-1\/2\![data-side=right]{top:50%!important}.data-\[side\=right\]\:right-0[data-side=right]{right:0}.data-\[side\=right\]\:-left-1[data-side=right]{left:calc(var(--spacing) * -1)}.data-\[side\=right\]\:h-full[data-side=right]{height:100%}.data-\[side\=right\]\:w-3\/4[data-side=right]{width:75%}.data-\[side\=right\]\:-translate-y-1\/2[data-side=right]{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:border-l[data-side=right]{border-left-style:var(--tw-border-style);border-left-width:1px}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=right\]\:group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\][data-side=right]:is(:where(.group)[data-collapsible=offcanvas] *){right:calc(var(--sidebar-width) * -1)}.data-\[side\=right\]\:data-ending-style\:translate-x-\[2\.5rem\][data-side=right][data-ending-style],.data-\[side\=right\]\:data-starting-style\:translate-x-\[2\.5rem\][data-side=right][data-starting-style]{--tw-translate-x:2.5rem;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=top\]\:inset-x-0[data-side=top]{inset-inline:0}.data-\[side\=top\]\:top-0[data-side=top]{top:0}.data-\[side\=top\]\:-bottom-2\.5[data-side=top]{bottom:calc(var(--spacing) * -2.5)}.data-\[side\=top\]\:h-auto[data-side=top]{height:auto}.data-\[side\=top\]\:border-b[data-side=top]{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\[side\=top\]\:data-ending-style\:translate-y-\[-2\.5rem\][data-side=top][data-ending-style],.data-\[side\=top\]\:data-starting-style\:translate-y-\[-2\.5rem\][data-side=top][data-starting-style]{--tw-translate-y:-2.5rem;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[size\=default\]\:h-8[data-size=default]{height:calc(var(--spacing) * 8)}.data-\[size\=default\]\:h-\[18\.4px\][data-size=default]{height:18.4px}.data-\[size\=default\]\:w-\[32px\][data-size=default]{width:32px}.data-\[size\=default\]\:max-w-xs[data-size=default]{max-width:var(--container-xs)}.data-\[size\=md\]\:text-sm[data-size=md]{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.data-\[size\=sm\]\:h-7[data-size=sm]{height:calc(var(--spacing) * 7)}.data-\[size\=sm\]\:h-\[14px\][data-size=sm]{height:14px}.data-\[size\=sm\]\:w-\[24px\][data-size=sm]{width:24px}.data-\[size\=sm\]\:max-w-xs[data-size=sm]{max-width:var(--container-xs)}.data-\[size\=sm\]\:rounded-\[min\(var\(--radius-md\)\,10px\)\][data-size=sm]{border-radius:min(var(--radius-md), 10px)}.data-\[size\=sm\]\:text-xs[data-size=sm]{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.data-\[size\=sm\]\:\[--card-spacing\:--spacing\(3\)\][data-size=sm]{--card-spacing:calc(var(--spacing) * 3)}.data-\[size\=sm\]\:has-data-\[slot\=card-footer\]\:pb-0[data-size=sm]:has([data-slot=card-footer]){padding-bottom:0}:is(.\*\:data-\[slot\=alert-description\]\:text-destructive\/90>*)[data-slot=alert-description]{color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){:is(.\*\:data-\[slot\=alert-description\]\:text-destructive\/90>*)[data-slot=alert-description]{color:color-mix(in oklab, var(--destructive) 90%, transparent)}}.data-\[slot\=checkbox-group\]\:gap-3[data-slot=checkbox-group]{gap:calc(var(--spacing) * 3)}:is(.\*\:data-\[slot\=field\]\:p-2\.5>*)[data-slot=field]{padding:calc(var(--spacing) * 2.5)}:is(.\*\:data-\[slot\=field-group\]\:gap-4>*)[data-slot=field-group]{gap:calc(var(--spacing) * 4)}:is(.\*\:data-\[slot\=field-label\]\:flex-auto>*)[data-slot=field-label]{flex:auto}:is(.\*\*\:data-\[slot\=kbd\]\:relative *)[data-slot=kbd]{position:relative}:is(.\*\*\:data-\[slot\=kbd\]\:isolate *)[data-slot=kbd]{isolation:isolate}:is(.\*\*\:data-\[slot\=kbd\]\:z-50 *)[data-slot=kbd]{z-index:50}:is(.\*\*\:data-\[slot\=kbd\]\:rounded-sm *)[data-slot=kbd]{border-radius:calc(var(--radius) * .6)}:is(.\*\:data-\[slot\=select-value\]\:line-clamp-1>*)[data-slot=select-value]{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:is(.\*\:data-\[slot\=select-value\]\:flex>*)[data-slot=select-value]{display:flex}:is(.\*\:data-\[slot\=select-value\]\:items-center>*)[data-slot=select-value]{align-items:center}:is(.\*\:data-\[slot\=select-value\]\:gap-1\.5>*)[data-slot=select-value]{gap:calc(var(--spacing) * 1.5)}.group-data-horizontal\/toggle-group\:data-\[spacing\=0\]\:first\:rounded-l-lg:is(:where(.group\/toggle-group):where([data-orientation=horizontal]) *)[data-spacing="0"]:first-child{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius)}.group-data-vertical\/toggle-group\:data-\[spacing\=0\]\:first\:rounded-t-lg:is(:where(.group\/toggle-group):where([data-orientation=vertical]) *)[data-spacing="0"]:first-child{border-top-left-radius:var(--radius);border-top-right-radius:var(--radius)}.group-data-horizontal\/toggle-group\:data-\[spacing\=0\]\:last\:rounded-r-lg:is(:where(.group\/toggle-group):where([data-orientation=horizontal]) *)[data-spacing="0"]:last-child{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}.group-data-vertical\/toggle-group\:data-\[spacing\=0\]\:last\:rounded-b-lg:is(:where(.group\/toggle-group):where([data-orientation=vertical]) *)[data-spacing="0"]:last-child{border-bottom-right-radius:var(--radius);border-bottom-left-radius:var(--radius)}.data-\[state\=delayed-open\]\:animate-in[data-state=delayed-open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=delayed-open\]\:fade-in-0[data-state=delayed-open]{--tw-enter-opacity:0}.data-\[state\=delayed-open\]\:zoom-in-95[data-state=delayed-open]{--tw-enter-scale:.95}.data-\[state\=on\]\:bg-muted[data-state=on]{background-color:var(--muted)}.data-\[variant\=destructive\]\:text-destructive[data-variant=destructive]{color:var(--destructive)}.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:color-mix(in oklab, var(--destructive) 10%, transparent)}}.data-\[variant\=destructive\]\:focus\:text-destructive[data-variant=destructive]:focus{color:var(--destructive)}.data-\[variant\=label\]\:text-sm[data-variant=label]{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.data-\[variant\=legend\]\:text-base[data-variant=legend]{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.data-\[variant\=line\]\:rounded-none[data-variant=line]{border-radius:0}.group-data-horizontal\/toggle-group\:data-\[spacing\=0\]\:data-\[variant\=outline\]\:border-l-0:is(:where(.group\/toggle-group):where([data-orientation=horizontal]) *)[data-spacing="0"][data-variant=outline]{border-left-style:var(--tw-border-style);border-left-width:0}.group-data-vertical\/toggle-group\:data-\[spacing\=0\]\:data-\[variant\=outline\]\:border-t-0:is(:where(.group\/toggle-group):where([data-orientation=vertical]) *)[data-spacing="0"][data-variant=outline]{border-top-style:var(--tw-border-style);border-top-width:0}.group-data-horizontal\/toggle-group\:data-\[spacing\=0\]\:data-\[variant\=outline\]\:first\:border-l:is(:where(.group\/toggle-group):where([data-orientation=horizontal]) *)[data-spacing="0"][data-variant=outline]:first-child{border-left-style:var(--tw-border-style);border-left-width:1px}.group-data-vertical\/toggle-group\:data-\[spacing\=0\]\:data-\[variant\=outline\]\:first\:border-t:is(:where(.group\/toggle-group):where([data-orientation=vertical]) *)[data-spacing="0"][data-variant=outline]:first-child{border-top-style:var(--tw-border-style);border-top-width:1px}.nth-last-2\:-mt-1:nth-last-child(2){margin-top:calc(var(--spacing) * -1)}@supports ((-webkit-backdrop-filter:var(--tw)) or (backdrop-filter:var(--tw))){.supports-backdrop-filter\:backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.supports-backdrop-filter\:backdrop-blur-xs{--tw-backdrop-blur:blur(var(--blur-xs));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}}@media (width>=40rem){.sm\:flex{display:flex}.sm\:w-auto{width:auto}.sm\:max-w-3xl{max-width:var(--container-3xl)}.sm\:max-w-4xl{max-width:var(--container-4xl)}.sm\:max-w-\[75\%\]{max-width:75%}.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:max-w-md{max-width:var(--container-md)}.sm\:max-w-sm{max-width:var(--container-sm)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:justify-between{justify-content:space-between}.sm\:justify-end{justify-content:flex-end}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:row-span-2:is(:where(.group\/alert-dialog-content)[data-size=default] *){grid-row:span 2/span 2}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:place-items-start:is(:where(.group\/alert-dialog-content)[data-size=default] *){place-items:start}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:text-left:is(:where(.group\/alert-dialog-content)[data-size=default] *){text-align:left}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:group-has-data-\[slot\=alert-dialog-media\]\/alert-dialog-content\:col-start-2:is(:where(.group\/alert-dialog-content)[data-size=default] *):is(:where(.group\/alert-dialog-content):has([data-slot=alert-dialog-media]) *){grid-column-start:2}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:has-data-\[slot\=alert-dialog-media\]\:grid-rows-\[auto_1fr\]:is(:where(.group\/alert-dialog-content)[data-size=default] *):has([data-slot=alert-dialog-media]){grid-template-rows:auto 1fr}.data-\[side\=left\]\:sm\:max-w-sm[data-side=left],.data-\[side\=right\]\:sm\:max-w-sm[data-side=right],.data-\[size\=default\]\:sm\:max-w-sm[data-size=default]{max-width:var(--container-sm)}}@media (width>=48rem){.md\:block{display:block}.md\:flex{display:flex}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.md\:text-pretty{text-wrap:pretty}.md\:opacity-0{opacity:0}.md\:peer-data-\[variant\=inset\]\:m-2:is(:where(.peer)[data-variant=inset]~*){margin:calc(var(--spacing) * 2)}.md\:peer-data-\[variant\=inset\]\:ml-0:is(:where(.peer)[data-variant=inset]~*){margin-left:0}.md\:peer-data-\[variant\=inset\]\:rounded-xl:is(:where(.peer)[data-variant=inset]~*){border-radius:calc(var(--radius) * 1.4)}.md\:peer-data-\[variant\=inset\]\:shadow-sm:is(:where(.peer)[data-variant=inset]~*){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.md\:peer-data-\[variant\=inset\]\:peer-data-\[state\=collapsed\]\:ml-2:is(:where(.peer)[data-variant=inset]~*):is(:where(.peer)[data-state=collapsed]~*){margin-left:calc(var(--spacing) * 2)}.md\:after\:hidden:after{content:var(--tw-content);display:none}}@media (width>=64rem){.lg\:max-w-2xl{max-width:var(--container-2xl)}}@container field-group (width>=28rem){.\@md\/field-group\:flex-row{flex-direction:row}.\@md\/field-group\:items-center{align-items:center}:is(.\@md\/field-group\:\*\:w-auto>*){width:auto}.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:items-start:has(>[data-slot=field-content]){align-items:flex-start}:is(.\@md\/field-group\:\*\:data-\[slot\=field-label\]\:flex-auto>*)[data-slot=field-label]{flex:auto}}.ltr\:-translate-x-1\/2:where(:not(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)),[dir=ltr],[dir=ltr] *),.rtl\:-translate-x-1\/2:where(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)),[dir=rtl],[dir=rtl] *){--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.dark\:border-input:is(.dark *){border-color:var(--input)}.dark\:bg-destructive\/20:is(.dark *){background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-destructive\/20:is(.dark *){background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.dark\:bg-input\/30:is(.dark *){background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-input\/30:is(.dark *){background-color:color-mix(in oklab, var(--input) 30%, transparent)}}.dark\:text-muted-foreground:is(.dark *){color:var(--muted-foreground)}.dark\:prose-invert:is(.dark *){--tw-prose-body:var(--tw-prose-invert-body);--tw-prose-headings:var(--tw-prose-invert-headings);--tw-prose-lead:var(--tw-prose-invert-lead);--tw-prose-links:var(--tw-prose-invert-links);--tw-prose-bold:var(--tw-prose-invert-bold);--tw-prose-counters:var(--tw-prose-invert-counters);--tw-prose-bullets:var(--tw-prose-invert-bullets);--tw-prose-hr:var(--tw-prose-invert-hr);--tw-prose-quotes:var(--tw-prose-invert-quotes);--tw-prose-quote-borders:var(--tw-prose-invert-quote-borders);--tw-prose-captions:var(--tw-prose-invert-captions);--tw-prose-kbd:var(--tw-prose-invert-kbd);--tw-prose-kbd-shadows:var(--tw-prose-invert-kbd-shadows);--tw-prose-code:var(--tw-prose-invert-code);--tw-prose-pre-code:var(--tw-prose-invert-pre-code);--tw-prose-pre-bg:var(--tw-prose-invert-pre-bg);--tw-prose-th-borders:var(--tw-prose-invert-th-borders);--tw-prose-td-borders:var(--tw-prose-invert-td-borders)}@media (hover:hover){.dark\:hover\:bg-destructive\/30:is(.dark *):hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-destructive\/30:is(.dark *):hover{background-color:color-mix(in oklab, var(--destructive) 30%, transparent)}}.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--input) 50%, transparent)}}.dark\:hover\:bg-muted\/50:is(.dark *):hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-muted\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.dark\:hover\:text-foreground:is(.dark *):hover{color:var(--foreground)}}.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\:disabled\:bg-input\/80:is(.dark *):disabled{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:disabled\:bg-input\/80:is(.dark *):disabled{background-color:color-mix(in oklab, var(--input) 80%, transparent)}}.dark\:has-data-checked\:border-primary\/20:is(.dark *):has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.dark\:has-data-checked\:border-primary\/20:is(.dark *):has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){border-color:color-mix(in oklab, var(--primary) 20%, transparent)}}.dark\:has-data-checked\:bg-primary\/10:is(.dark *):has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.dark\:has-data-checked\:bg-primary\/10:is(.dark *):has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){background-color:color-mix(in oklab, var(--primary) 10%, transparent)}}.dark\:aria-invalid\:border-destructive\/50:is(.dark *)[aria-invalid=true]{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:aria-invalid\:border-destructive\/50:is(.dark *)[aria-invalid=true]{border-color:color-mix(in oklab, var(--destructive) 50%, transparent)}}.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20:is(.dark *)[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20:is(.dark *)[data-variant=destructive]:focus{background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.prose-p\:my-\[0\.6em\] :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-block:.6em}.prose-p\:leading-\[1\.6\] :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){--tw-leading:1.6;line-height:1.6}.prose-blockquote\:my-\[0\.6em\] :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-block:.6em}.prose-code\:text-sm :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.prose-pre\:my-\[0\.6em\] :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){margin-block:.6em}.prose-pre\:text-sm :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.prose-pre\:text-foreground :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--foreground)}.prose-ol\:my-\[0\.6em\] :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-ul\:my-\[0\.6em\] :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-block:.6em}.prose-li\:my-0 :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-block:0}.prose-table\:my-\[0\.6em\] :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){margin-block:.6em}.data-open\:animate-in:where([data-state=open]),.data-open\:animate-in:where([data-open]:not([data-open=false])){animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-open\:bg-accent:where([data-state=open]),.data-open\:bg-accent:where([data-open]:not([data-open=false])){background-color:var(--accent)}.data-open\:text-accent-foreground:where([data-state=open]),.data-open\:text-accent-foreground:where([data-open]:not([data-open=false])){color:var(--accent-foreground)}.data-open\:fade-in-0:where([data-state=open]),.data-open\:fade-in-0:where([data-open]:not([data-open=false])){--tw-enter-opacity:0}.data-open\:zoom-in-95:where([data-state=open]),.data-open\:zoom-in-95:where([data-open]:not([data-open=false])){--tw-enter-scale:.95}@media (hover:hover){:is(.data-open\:hover\:bg-sidebar-accent:where([data-state=open]),.data-open\:hover\:bg-sidebar-accent:where([data-open]:not([data-open=false]))):hover{background-color:var(--sidebar-accent)}:is(.data-open\:hover\:text-sidebar-accent-foreground:where([data-state=open]),.data-open\:hover\:text-sidebar-accent-foreground:where([data-open]:not([data-open=false]))):hover{color:var(--sidebar-accent-foreground)}}.data-closed\:animate-out:where([data-state=closed]),.data-closed\:animate-out:where([data-closed]:not([data-closed=false])){animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-closed\:overflow-hidden:where([data-state=closed]),.data-closed\:overflow-hidden:where([data-closed]:not([data-closed=false])){overflow:hidden}.data-closed\:fade-out-0:where([data-state=closed]),.data-closed\:fade-out-0:where([data-closed]:not([data-closed=false])){--tw-exit-opacity:0}.data-closed\:zoom-out-95:where([data-state=closed]),.data-closed\:zoom-out-95:where([data-closed]:not([data-closed=false])){--tw-exit-scale:.95}.data-checked\:bg-primary:where([data-state=checked]),.data-checked\:bg-primary:where([data-checked]:not([data-checked=false])){background-color:var(--primary)}.group-data-\[size\=default\]\/switch\:data-checked\:translate-x-\[calc\(100\%-2px\)\]:is(:where(.group\/switch)[data-size=default] *):where([data-state=checked]),.group-data-\[size\=default\]\/switch\:data-checked\:translate-x-\[calc\(100\%-2px\)\]:is(:where(.group\/switch)[data-size=default] *):where([data-checked]:not([data-checked=false])),.group-data-\[size\=sm\]\/switch\:data-checked\:translate-x-\[calc\(100\%-2px\)\]:is(:where(.group\/switch)[data-size=sm] *):where([data-state=checked]),.group-data-\[size\=sm\]\/switch\:data-checked\:translate-x-\[calc\(100\%-2px\)\]:is(:where(.group\/switch)[data-size=sm] *):where([data-checked]:not([data-checked=false])){--tw-translate-x:calc(100% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}.dark\:data-checked\:bg-primary-foreground:is(.dark *):where([data-state=checked]),.dark\:data-checked\:bg-primary-foreground:is(.dark *):where([data-checked]:not([data-checked=false])){background-color:var(--primary-foreground)}.data-unchecked\:bg-input:where([data-state=unchecked]),.data-unchecked\:bg-input:where([data-unchecked]:not([data-unchecked=false])){background-color:var(--input)}.group-data-\[size\=default\]\/switch\:data-unchecked\:translate-x-0:is(:where(.group\/switch)[data-size=default] *):where([data-state=unchecked]),.group-data-\[size\=default\]\/switch\:data-unchecked\:translate-x-0:is(:where(.group\/switch)[data-size=default] *):where([data-unchecked]:not([data-unchecked=false])),.group-data-\[size\=sm\]\/switch\:data-unchecked\:translate-x-0:is(:where(.group\/switch)[data-size=sm] *):where([data-state=unchecked]),.group-data-\[size\=sm\]\/switch\:data-unchecked\:translate-x-0:is(:where(.group\/switch)[data-size=sm] *):where([data-unchecked]:not([data-unchecked=false])){--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.dark\:data-unchecked\:bg-foreground:is(.dark *):where([data-state=unchecked]),.dark\:data-unchecked\:bg-foreground:is(.dark *):where([data-unchecked]:not([data-unchecked=false])){background-color:var(--foreground)}.dark\:data-unchecked\:bg-input\/80:is(.dark *):where([data-state=unchecked]),.dark\:data-unchecked\:bg-input\/80:is(.dark *):where([data-unchecked]:not([data-unchecked=false])){background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:data-unchecked\:bg-input\/80:is(.dark *):where([data-state=unchecked]),.dark\:data-unchecked\:bg-input\/80:is(.dark *):where([data-unchecked]:not([data-unchecked=false])){background-color:color-mix(in oklab, var(--input) 80%, transparent)}}.data-disabled\:pointer-events-none:where([data-disabled=true]),.data-disabled\:pointer-events-none:where([data-disabled]:not([data-disabled=false])){pointer-events:none}.data-disabled\:cursor-not-allowed:where([data-disabled=true]),.data-disabled\:cursor-not-allowed:where([data-disabled]:not([data-disabled=false])){cursor:not-allowed}.data-disabled\:opacity-50:where([data-disabled=true]),.data-disabled\:opacity-50:where([data-disabled]:not([data-disabled=false])){opacity:.5}.data-active\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_8\%\)\]:where([data-state=active]),.data-active\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_8\%\)\]:where([data-active]:not([data-active=false])){background-color:var(--sidebar-accent)}@supports (color:color-mix(in lab, red, red)){.data-active\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_8\%\)\]:where([data-state=active]),.data-active\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_8\%\)\]:where([data-active]:not([data-active=false])){background-color:color-mix(in oklch,var(--sidebar-accent),var(--foreground) 8%)}}.data-active\:bg-background:where([data-state=active]),.data-active\:bg-background:where([data-active]:not([data-active=false])){background-color:var(--background)}.data-active\:bg-sidebar-accent:where([data-state=active]),.data-active\:bg-sidebar-accent:where([data-active]:not([data-active=false])){background-color:var(--sidebar-accent)}.data-active\:font-medium:where([data-state=active]),.data-active\:font-medium:where([data-active]:not([data-active=false])){--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.data-active\:text-foreground:where([data-state=active]),.data-active\:text-foreground:where([data-active]:not([data-active=false])){color:var(--foreground)}.data-active\:text-sidebar-accent-foreground:where([data-state=active]),.data-active\:text-sidebar-accent-foreground:where([data-active]:not([data-active=false])){color:var(--sidebar-accent-foreground)}.group-data-\[variant\=default\]\/tabs-list\:data-active\:shadow-sm:is(:where(.group\/tabs-list)[data-variant=default] *):where([data-state=active]),.group-data-\[variant\=default\]\/tabs-list\:data-active\:shadow-sm:is(:where(.group\/tabs-list)[data-variant=default] *):where([data-active]:not([data-active=false])){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-data-\[variant\=line\]\/tabs-list\:data-active\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-state=active]),.group-data-\[variant\=line\]\/tabs-list\:data-active\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])){background-color:#0000}.group-data-\[variant\=line\]\/tabs-list\:data-active\:shadow-none:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-state=active]),.group-data-\[variant\=line\]\/tabs-list\:data-active\:shadow-none:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])){--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}:is(.group-data-\[variant\=line\]\/tabs-list\:data-active\:after\:opacity-100:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-state=active]),.group-data-\[variant\=line\]\/tabs-list\:data-active\:after\:opacity-100:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false]))):after{content:var(--tw-content);opacity:1}.dark\:data-active\:border-input:is(.dark *):where([data-state=active]),.dark\:data-active\:border-input:is(.dark *):where([data-active]:not([data-active=false])){border-color:var(--input)}.dark\:data-active\:bg-input\/30:is(.dark *):where([data-state=active]),.dark\:data-active\:bg-input\/30:is(.dark *):where([data-active]:not([data-active=false])){background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:data-active\:bg-input\/30:is(.dark *):where([data-state=active]),.dark\:data-active\:bg-input\/30:is(.dark *):where([data-active]:not([data-active=false])){background-color:color-mix(in oklab, var(--input) 30%, transparent)}}.dark\:data-active\:text-foreground:is(.dark *):where([data-state=active]),.dark\:data-active\:text-foreground:is(.dark *):where([data-active]:not([data-active=false])){color:var(--foreground)}.dark\:group-data-\[variant\=line\]\/tabs-list\:data-active\:border-transparent:is(.dark *):is(:where(.group\/tabs-list)[data-variant=line] *):where([data-state=active]),.dark\:group-data-\[variant\=line\]\/tabs-list\:data-active\:border-transparent:is(.dark *):is(:where(.group\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])){border-color:#0000}.dark\:group-data-\[variant\=line\]\/tabs-list\:data-active\:bg-transparent:is(.dark *):is(:where(.group\/tabs-list)[data-variant=line] *):where([data-state=active]),.dark\:group-data-\[variant\=line\]\/tabs-list\:data-active\:bg-transparent:is(.dark *):is(:where(.group\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])){background-color:#0000}.data-horizontal\:h-px:where([data-orientation=horizontal]){height:1px}.data-horizontal\:w-full:where([data-orientation=horizontal]){width:100%}.data-horizontal\:flex-col:where([data-orientation=horizontal]){flex-direction:column}.data-vertical\:w-px:where([data-orientation=vertical]){width:1px}.data-vertical\:flex-col:where([data-orientation=vertical]){flex-direction:column}.data-vertical\:items-stretch:where([data-orientation=vertical]){align-items:stretch}.data-vertical\:self-stretch:where([data-orientation=vertical]){align-self:stretch}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-block:calc(var(--spacing) * 1.5)}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:var(--muted-foreground)}.\[\&_a\]\:underline a{text-decoration-line:underline}.\[\&_a\]\:underline-offset-3 a{text-underline-offset:3px}@media (hover:hover){.\[\&_a\]\:hover\:text-foreground a:hover{color:var(--foreground)}}.\[\&_p\:not\(\:last-child\)\]\:mb-4 p:not(:last-child){margin-bottom:calc(var(--spacing) * 4)}.\[\&_pre\]\:bg-foreground\/10\! pre{background-color:var(--foreground)!important}@supports (color:color-mix(in lab, red, red)){.\[\&_pre\]\:bg-foreground\/10\! pre{background-color:color-mix(in oklab, var(--foreground) 10%, transparent)!important}}.dark\:\[\&_pre\]\:bg-foreground\/15\!:is(.dark *) pre{background-color:var(--foreground)!important}@supports (color:color-mix(in lab, red, red)){.dark\:\[\&_pre\]\:bg-foreground\/15\!:is(.dark *) pre{background-color:color-mix(in oklab, var(--foreground) 15%, transparent)!important}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5 svg:not([class*=size-]){width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_table\]\:block table{display:block}.\[\&_table\]\:\[scrollbar-width\:thin\] table{scrollbar-width:thin}.\[\&_table\]\:overflow-x-auto table{overflow-x:auto}.\[\&_table\:\:-webkit-scrollbar\]\:h-1\.5 table::-webkit-scrollbar{height:calc(var(--spacing) * 1.5)}.\[\&_table\:\:-webkit-scrollbar-thumb\]\:rounded-full table::-webkit-scrollbar-thumb{border-radius:2147483647px}.\[\&_table\:\:-webkit-scrollbar-thumb\]\:bg-foreground\/25 table::-webkit-scrollbar-thumb{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.\[\&_table\:\:-webkit-scrollbar-thumb\]\:bg-foreground\/25 table::-webkit-scrollbar-thumb{background-color:color-mix(in oklab, var(--foreground) 25%, transparent)}}.\[\.border-b\]\:pb-\(--card-spacing\).border-b{padding-bottom:var(--card-spacing)}:is(.\*\:\[a\]\:underline>*):is(a){text-decoration-line:underline}:is(.\*\:\[a\]\:underline-offset-3>*):is(a){text-underline-offset:3px}@media (hover:hover){.\[a\]\:hover\:bg-destructive\/20:is(a):hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.\[a\]\:hover\:bg-destructive\/20:is(a):hover{background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.\[a\]\:hover\:bg-muted:is(a):hover{background-color:var(--muted)}.\[a\]\:hover\:bg-primary\/80:is(a):hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.\[a\]\:hover\:bg-primary\/80:is(a):hover{background-color:color-mix(in oklab, var(--primary) 80%, transparent)}}.\[a\]\:hover\:bg-secondary\/80:is(a):hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.\[a\]\:hover\:bg-secondary\/80:is(a):hover{background-color:color-mix(in oklab, var(--secondary) 80%, transparent)}}.\[a\]\:hover\:text-muted-foreground:is(a):hover{color:var(--muted-foreground)}:is(.\*\:\[a\]\:hover\:text-foreground>*):is(a):hover{color:var(--foreground)}}:is(.\*\:\[img\:first-child\]\:rounded-t-xl>*):is(img:first-child){border-top-left-radius:calc(var(--radius) * 1.4);border-top-right-radius:calc(var(--radius) * 1.4)}:is(.\*\:\[img\:last-child\]\:rounded-b-xl>*):is(img:last-child){border-bottom-right-radius:calc(var(--radius) * 1.4);border-bottom-left-radius:calc(var(--radius) * 1.4)}:is(.\*\:\[span\]\:last\:flex>*):is(span):last-child{display:flex}:is(.\*\:\[span\]\:last\:items-center>*):is(span):last-child{align-items:center}:is(.\*\:\[span\]\:last\:gap-2>*):is(span):last-child{gap:calc(var(--spacing) * 2)}:is(.\*\:\[svg\]\:row-span-2>*):is(svg){grid-row:span 2/span 2}:is(.\*\:\[svg\]\:translate-y-0\.5>*):is(svg){--tw-translate-y:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}:is(.\*\:\[svg\]\:text-current>*):is(svg){color:currentColor}:is(.data-\[variant\=destructive\]\:\*\:\[svg\]\:text-destructive[data-variant=destructive]>*):is(svg){color:var(--destructive)}:is(.\*\:\[svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4>*):is(svg:not([class*=size-])){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:is(.\*\:\[svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-6>*):is(svg:not([class*=size-])){width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.\[\&\>\.sr-only\]\:w-auto>.sr-only{width:auto}:is(.has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content])>[role=checkbox],.has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content]) [role=radio]){margin-top:1px}@container field-group (width>=28rem){:is(.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content])>[role=checkbox],.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content]) [role=radio]){margin-top:1px}}.\[\&\>a\]\:underline>a{text-decoration-line:underline}.\[\&\>a\]\:underline-offset-4>a{text-underline-offset:4px}.\[\&\>a\:hover\]\:text-primary>a:hover{color:var(--primary)}.\[\&\>button\]\:hidden>button{display:none}.\[\&\>span\:last-child\]\:truncate>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.\[\&\>svg\]\:pointer-events-none>svg{pointer-events:none}.\[\&\>svg\]\:size-3\!>svg{width:calc(var(--spacing) * 3)!important;height:calc(var(--spacing) * 3)!important}.\[\&\>svg\]\:size-3\.5>svg{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\[\&\>svg\]\:size-4>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.\[\&\>svg\]\:text-sidebar-accent-foreground>svg{color:var(--sidebar-accent-foreground)}[data-side=left][data-collapsible=offcanvas] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2{right:calc(var(--spacing) * -2)}[data-side=left][data-state=collapsed] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize{cursor:e-resize}[data-side=right][data-collapsible=offcanvas] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2{left:calc(var(--spacing) * -2)}[data-side=right][data-state=collapsed] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize{cursor:w-resize}[data-variant=legend]+.\[\[data-variant\=legend\]\+\&\]\:-mt-1\.5{margin-top:calc(var(--spacing) * -1.5)}.thin-scrollbar{scrollbar-width:thin;scrollbar-color:var(--color-ring) transparent}.thin-scrollbar::-webkit-scrollbar{width:8px;height:8px}.thin-scrollbar::-webkit-scrollbar-track{background:0 0}.thin-scrollbar::-webkit-scrollbar-thumb{background-color:var(--color-ring);border-radius:9999px}.no-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.no-scrollbar::-webkit-scrollbar{display:none}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}@property --scroll-fade-t{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-b{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-s{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-e{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-mask{syntax:"*";inherits:false}@property --shimmer-angle{syntax:"<angle>";inherits:true;initial-value:20deg}@property --shimmer-image{syntax:"*";inherits:false}@property --shimmer-text-fill{syntax:"*";inherits:false}@media (prefers-reduced-motion:reduce){.shimmer{-webkit-text-fill-color:currentColor;background-image:none;animation:none}}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,d09GMgABAAAAABz8ABQAAAAAMhwAAByKAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGoFQG4s2HCg/SFZBUoFIP01WQVI8BmA/U1RBVIE4AIIkL34RCAqZRJM4C2wAMKNCATYCJAOBUAQgBYgaB4N0DAcbTC0jEbac1cqEKIKNgwDUXiL5i8KYyLzhqkzmWW7ncZuy2/P/d1k88ywyU37rEBEaEUVUuqKpv+/MLXedSuVZZIQksz/P6+afe999Iy8vk2xW2GGlFDBuClHbgqN8SxFxrFH/5hHav+bQjglSRQzIcoHQsEIMK4SQRd7wbLN/aIOLbGtlNbjdcbsHKGPFHDouIvpnJMH3+/32nPfQ6NYJEZ8OTUQald+QkAiZED3ln5gO+UL9/+E7+3Z+S2tWwXM8AeAIdoEgBeTyUN34PahEM03x1d4UaUABN9MEYeDZh2/3f/t9q+/undldZM7hoXXtohIKKVkp/818u3uZj+gwqCXz91BNn9LEqlnDM4QEkcQhkRqdUDr2NPdpd44KlPKWI/NdjK6qk5ufwm5S2GPO8RYAFWn2wPqVc8XctaxyZVnhysJUuBpTr8l8f8y7BIJqwfhKViLUfm3/21ZqZkkrpDB7MlYUWasIDW4MV/rr7hhAKFqQtpfD6ML/DsLjISqpkAw5kDx2CALwVRSAzwM4DUAnDwAGgJq8f86vC/lDfCgtgiKaGB0PJnyJcAInCLVE4gTTfjpCx2lCy5kAE2TiXJjjOPVBczTC+3g/P8OH+DjP8rz6X+cHcgAIavrnQ+FIgvC6B6ABIBBK0LwOBP/A+wAAUKkSIAC8EhXI8vNb6sByOO3iabCcjj9yCixXfZfPggUBAJ3vsMsjF88CB4AOBMZIH40rKxsB3Un+iNJ2AIAUCoW5C3HSX8PeHcC/zONPtcPvAxDn/Sa1mBy2ki/1y/MwZcuI/1xJrkl0BrwIjIRgOF2kurjrPY9KbvfHaYW6EZR1HcBKj9u0JC/O15ltXTcPdKj/Mq+URI5yY9AC5Cu0PbPniWmAtfgACKV8tWncWh7umBm141GwNREjPfTLM++Y329UerNBJ533sXOiM9L8Sq9p/p0ozSNz/ZPUK3XXA7Czr4PSAwVrpbqwAxLRrYO/eb7dbQJ3bFOAILxroh1SyP3lZ820TQr23fH0hlexZB5ordhd2n+H2NO/2l/h7+/xCwEP8y1x0xy3tzUe/6btpM364PKrHpAaOqotL+wvQ5enP55/utLW787v+/Vx/mJbb2Z2noQOAK76jLTcqxmfH9UnG+f5HVY8mm/rsDTZvZCysWVfnDdHKrp79++vzurmAQD036heau9hSz8MSCoEo/AUlFTUNLR09EzMLJKlSmeVIVOOXDb5ChQqYodxDwBGMsAegciggDzSgoJACWSDAAhmiSGgFTWoFp6CBDFSKBfLhIAmzJWcCTMxCdPRiMmgGISwyAAahGVAqkfqQYkIsA1g9qAGU0QXUCXZFMTAeoRGPaQNAkCo3Y7Y0U+F5LmsQ44ic1jmI8B2hAIvQJYLFGJ9KARNwEQEIy6OFdFykAWWTFIAHoAxEYMAsBKAKc5lui2AvQMUeLlvwZ1btN06VYJqx24Bl8HmJTqpgygbp762aSskHRjjOVFf6SxWzAqZoFbTuc60yxSF/i5DztNKLmlrvtTLUu+T094vPQNDVlSjPjSgf/AP78Cju/ClTrACwADQ+9u7aW2Dt6IdXMfEHn1vRu/4Bx0P6YeTh7ghYXj8iGZEPVL5cWxSP2mdCvpGzuQGaxaJELkUi0MYBKANqr0BOFjKfzfMoBuvnR273J4IIGRg8IhU8eu9mE4guQmthQb4eTUAwOb81mgHSqOCNAC3gcG+Wf3ahi3wPlgn/ktNJx4CkHmksAI/AAC4a7UDgBUPDUDnM/BPyobvjx2/jADA35O+NyoH0bEqssqL6ux32jUttvZAPRwG82F93EoHUgRUB4bjm0vxR3n1SIKBx7Qazp7ADZuqNc60hS9BV0fevgEYKNGVbZ6SUP+9JawINasqv/QBwuQQGUEmkQ3+wJ/4G//hf7zuW75PushDMkqmyKz1v5IESO92kIhkPFnv9/2xv/bv/tv/++ZqzAfEQ7xk5jeryt355lRJSKJYQ6wTmoY/C8jsHzKzdylRqpzDKmusUwEA8ljJGb83hXRKVioZ1DLxUmlk0cqWJIdOLr08BjZG+cwKWRRJViyFHQKghiE6Mnxr2+HwSLYlvq9FgJqoYKkE1FsCmDTqL0XA1IIGYyHYaDgpqD/pGk0asBfWjMfaWo4mk6mopAVNJ5u/CM2eZ30KpJErvOBJADsAtQFA3gA4C2A/AAACFxwMnYf4ZTyFhCjz+jgMhyUVoyCFZBgdkoscXAqHbgAAzKxqT8hRNmXGS0IqBZYXaLmM6GQKypQIxgTkcn21QsOYMkli4iX/wlPxZIJn2aDIcEhwkp1T0WRlkXgip1XkoIIW9hSMqOLEmkFsn3wPXy/U7cIaL2n6PRZb8fp9BBFfG0CXv9JdS78OkYqTCjD3FREiXyOJICo5LSdyqlG+c6ywAR+0YMOeB8gmCUqJb24ACYWs80Syge+emnb/tJO/63cXUkBErgCNXZbA08f548pTcnm3cSS5Bzv+14uK+SYoYRXH2e1qno6FryMVT284wjr/0yU/fJFnnw2jjT/+M49++WhKCKPkuLERUUGIZjSXfmNWAbcxJ+74dpZ7uhAcfKLh7CBk3oOi/+aCs4o+MDc340T5nl1nWsc0BprwqImbhvBIDrQQxQ4fSYwK2JHDccvB5ExhWTzkGi2X44o4i3Q1nlqvsUvC4k6HWneijQ3UGunqoy4qpARza13YVcPWfXjNCXXVgEcq+IN0VkpQehdSQUR7F4MUAGvqNyLYpeMADQ6y5/OfG8X8Y2YxhdaPNEFZ3ynSDXfI6w4iKmDo6sknXXCdG0bq4A1++VMUuyM88cpi/OVmHwJ5k6t3/OV6BUs36j5ywO8mqvG22ZF4/lgjtvNARCc0+xxAejU4qHH+3tJXh8ihz8eRr+yYXF/XN0/+0WfYs/zptzKQJaeWNr8YKqq0Ugr9+uthYZf2a7WrJrp3IcUPdgBlJfRmtTt1WAs23WFEERVoNm5tnH6G2qKeHVjdvgsNmdiuaym/kY7tHRBSQOVjcY99XfL07DvKtW1di9t0i3fCbJD6/6OJvPv5J6s/uv7UH6ZwYIjuMVXbykGmyVQZtVhfDRUytmlRu73gxfzZ9axK5yJ7xhjd/JrGrYcvNNQvhfsm6vymkbVUSLcoVFoC3GN0O/i1+K8DwnubJ3k0/qGKAfkYzF+3Y8mbXb16m76y0UxBa3sT3uJobycsQNhUsz73l3xG3gdK7mdvfP+N3QPQd6URcI/BdmCoqZ1fm1rTfhG+fu0nsII+HOqf215/vnvMdCDCgZRdW+LBrrRxNc3PlL3zs3LPwMsl4JXXaPWxKa6rZ0ctuPTq0Zf/VFvrxgnSRx5bPNXR0wEJYwoNX9e+rT1TPBNMF/Le1rSH+ZvPgXo4Y8cMiP9aAe1w+0CVm65+fAmUaUWb0gJ5wbTyrMqcCcjODzaUVW1J8+U50vIzvvOoccv9q2UDaxu2Hrp0qf3wN3ceEapQr5WH8rgjw4mYu3kOyzbPjW0kcBXqqZyj6YA08Kj78cD/pISLOE1bV5T1h1P9m8FwdvP3bXD2V0s25fK5vLir0PIRE1oo5kqQ52hp9aaNotqDPn6kVLG8el3eSC1878DYee6df+2sj9hTswey1ybp+5730ETf0aupl/Min/X4Bo5ez3hrwF74RdbAtb6/bjqTVuas5fPdQ2J640Hff/QfQdxFNpPp63Wm+sfAuUeYuR7wX7mMiTSS2UQdHq3ic+Ig8e/nyaMJ9zwfkMlw/eI6NqPAyOV126byUcbns+fhp+BTbWZb/pqKa/v6azYQoEH4QJ5a0FMok7+I3trrP3jfMi/r7BHQf8yExaG/P31amHh6zIQIpuq5QxQSAH9VilcG8ovblm1Mz/jndxReND47v27aJxW5K9//uXqU2zwTUuYZkeP4SLemYCZoBobiZIzjqvighomQ9MHrd5O4bW+JV376t8bk1BpUMd3z4z/B76NG1xHzbtw+o4XJ3/7B+VVCUAWqjQKofnkx/+I3MVf94hmeS6hOEkaN3ukuAV+uC6bfqv6p5IzviToCfPZ8ErvndyYb46rDN92suwm+2/Rxk0bdT7iK8F/+6PXHD/+fuhPHf6v/26/C9xv8nvOzMyRW7PSm1q9+ubh2q/M+/LDllK7kn9f+OgeTQVLe5pEe0wwITTNFN+6NOcwzwlnzpNQnoNfobHgjzOh8E9nvPDny4NaAybYtCLiPCVfN+99X5tNrWkh8Y+jvKfoNDrfJZ5nSrTKEZgi9fkHb3GBN+dX0dUTOWvfh2ubtLannWAtRQ6w79RNN3fMW06r6ZttBpXHYsv1QQznndIfngCvs+qC3ylR1JrPkFzpTfrUXEyi8CwgBgFwIAKvUMlwEwLTM91MGExl0BqTUg/JY7j8EL0R5PSArMqykzfuW3ynuAzZACe4XTgLQAfzYL+fpNybasYofg9194N8HFpe59dM1ALtl0EvP8B5fx2pL0X/AP7PQ+n/4DQzlJJbKzRAABANo+hIOLf9zVh6HTX7pn+4ghOypyE40GR3IE1yy/rr6KUxl9RWqj1rXfqIiyebpsNlv+Sdv0wy9h36ODjMl2z3MbGb31s3qdtZd0e4Ku2DXyT5iP2a93A5O5Nbtf/EK70NTAIeGfBPdeG/CIDBBLACEWv7OHwoMfNRGxuCWmHTGMzx9WugSEokTJ6S0QHQfZ+RYo4X85QNmZyulSy7gAFvJT3CgFr/9ihUjhJFwDP2GGDYzLBt1/dQByJ++81hfgFI/2TwuK4laHHK7WZoQKjI3C1dgKUHFIhJNZBIUU1NT2dG7cA5H2AWS+fLiuXqVjHKdIYwIRSGEOFXSxdtmctKV/+jC+P2VhemxEcRFk/NWbY+cCkeJyVb83EtwbSi32VLkECM8UEM/NBQtrIZzlTERGG67HtM6ND+/uNxMszKI/uNxNczwSqPRNGTDZRBLE+J2Q48v0B5PLQmlz/n30ERGAOD9zZC2WfPDvj4Y4oL2lV9aSpxumNsrHIXdmsALtgBvEmHHs7SJpru6+rt6h8e9Ex4yE+dnh7riYVIzNebxhZvR8rKLlhWhPwVqMXm99fTzziqn84UasEEeURbVaygdMGTLkQTN0yVjGZFZGHiv+uFMixyykZ9YOz8/+DQMRIPbZ7UD7ju9ffBAE+lhCsNBF7RDlPSaVhBSzXq9bDFxuGqmrn9P7QbYrol7DsS6dSkpPF8JLVQ4+mT+NX+gZuo3xzIII4wRxRA38XvdM2ghT8SOZGA86zxpabW5KHlYxNe9sIIexk75oFb7H/Y75w3CCBE2LnCrygveftsm9LAnBSCIYmUxuSqNVDCbYxtIJNI9/HQetX90+1YnT25PBKEDssNf8P6YiKJSCwyk1mQyWrOswb0zrx3YNpE4UauC3X2ymnrzJm5uUYqQLaLz2XsCyoeXW3PMFQH/pGh/IGo6nZImQUgoBCOa6VE6/KFlUejgYyHafBPL+LjFpVYhjFYkwYjCWOVeJzNlgTTJ1v2vf8ljUzfRAm6m4ZZFppprbXUwbuBFbBvCTLqoMDet7Z3//39QPTrc16VVUol7gtDfz87Nzc8/miv7O3ysidUyS8xktSKbV1D8IfPzRIIQFDhE4igIORwuEpscfzqxAbjg89EMovmMIv+Z8jX28tUVB2Xk8GElx+3f31gu7IbjbGTnglFmLs6JbNub12NutIlkbg7ch0iuuyFb4A6uiEoArPaOjk6MPxlU/ag/iJ/02LgvKHHcsj8YRbQ0oWhwei83JqaDktpCh1oKTt2/S92fgklGvd5oSYGdmel/6rO846POmbA9Qy+iQYggzSDRIgSd16MAqHJPBWmoIPB2ulbPBLGuwLFm7ZpVZSvLC5KkhcBi0OebDqfrqBgdlC69YI3TsaYgnR3vdYyz6Y4GkWpwwHrRODXleXAPdne3xZBsZRaVda1y+H1TlUsgtWa9JEFBUD2tNIDvvM7VbvvAsLLaOjKR+XwaC7m9UJxrlHOBQDS0sHAXQpqpD4sNVDNxsJ8VjhZNInHMGAii3JoOdGypOQm1XfxzXf1+eZ2l//prX0A67ENljMdnZ9vbFz5c+OcX/0XbmdZgayj0/vtwRzPq6Pgu1dCwd+8L8NGzclu8tlhtsUgOsY7YBdOFSlsV+AEbmyp9OFBdXf1ddpiRcn3N4qLX+957/m7/77/7++M2bOO9+9dlkkTTZ8/OV8yfcsC/mVOHcniCJffrKEThikaaDoe7uujG/JRCcf9+1VPzbTH0chkuivb76XBNPjOTbzG2t3d2rljxaOSPv/tuUVHR4/ltMRjf23BRypwcZWgNDA4GPAANenMRhrSIsFsJeSgyktautdtpv34afydaPDe4UJq4Bbx0hQh4ZQMsQRS0UOnpOTlV4OvTI9IxWexVr8oJ34Bm+Bql2TQDKuNLS1i5BbYl/LslYj3Wx6dPTj58+K9/zc09Ghkd886HI85ao4cT49MLecubb8JbcoZslpHLaHHh5ajIhia7kw0Mj72ePjg4MrI56HZ39Y4EErD0ge2KnrOSsV5pXrcOqrZtirL+jj5vSFzeJxMiy2Q5W1Zkp71uFWUoo8xu99iTx48G7rbfJItF4w8e3ruTX40QeFdskmmii0vzOgmKEVneXCJxBRkpr5tryZc2VxRZ0/KeBWuNhhOWNZul0eOBtO+iQkeRiReXKcMistEn757yzqDndd9zenJLty/lBHNrth/ykzGMjGUEbFXrO043Z3o6Ejn2T4uyTExYjnOZtIZYygt+B1VkK9amHuWaSr+JSbK3n9ZxUlyvzRoChCQJWkOo2uC77jOA8snz0DE2ezeU3UoAhpbxyrObo9QoClhFZE+jvdl9guTsojeAv8WNqBGp1uz4Xk7x+LFG00urGX5dtjfHHYUZb/1XlS9V2IDnJn9GPFS2/SThIB0AYNbpnjwJSyHXUjhqs53STJKme3ogroklJExHIh4VZT3cG1fl0nYR7C5zKHQ4snHPfjj2bDxcLg+sLy8//IW3kYW6wQqNJouOZA0nChU8W7M83trJ8519C9vw8tDm4GiYN7b3jI8+tpj1ibnZkfbWVp7v6zMJnfcEzb2bgnDvHgxpYmPhJWaGYyLL67Ia9LwozzpBYbcrXnxVJJ0YHnoy+6oLvgBf4pCkHE91rHQGU3LsJdsVzIEDmKvbkKXdG+G4vXvhqCZ2fGrJM6fGRba7p7+hp1tUZp3gf3r8U1cPz/e4FOMoztIrwtHQ+IPhsUnv06ezFjM34X86NvTggScQDCPGHSgcnPOO2t65IEnmJDjmdo/BFGMpiXot/1zQnvYaLJlWmsUQl9sM0gYSudvtA0MpUjCA73atONq7f9cnnDnyudFhd9ejoWHvkpBVSe8+mmNAQTiQIae8hrFrynNkXi7Lqep3V8Fmxj5DsmF8RvEqvhpF49b8+CP3gGjGhKZZnmRpmmBYuzaFnu7CidN0ytoxkpMTsbh9nFM9NzUv7xl6MNAKPuHtGmpZ2l0X5/O5qMRJa5zS5JSdHX388J7GK3Bak4LnT98aWebJbtV/eKOFF1UpGiORYLC1NRa7eTPaEXvv2++2Yzu6GYK7IAT39IS+Q129ev58FYw9M8ratS+AP7228/Eb+FTMlSSY6C8n7gVPOqEyHgFepJ1OHnhepCSel5qz/V2Di0Y0LSq6ukgPffO7ba2wMngo9tIuSGyUVisIVdAETZh/SecEX4a3oIn2encwcFUCrAZptpZFNN8MdMzQxssQTq9RRkNX15U0NBl72IR6Qi4ctYEs4N//Rf1HtZkV9XM5Jy8HHux+YIGRJRvQRONb46vRIVIdHRDeQjO87UITEy0CTpw08VfPY3z+PFzWRHj+BM+LaNWqjof8wecDQJJczjD9/ZiR3p9QdbXfFbwfwrBBkAiioEdZfLBZLUlKJcd95jOJpdBug3D5wllu5VFw8RZ4uEjLVWzFInRIoAJV8emSFI3evq1QxAlanF1CtLOuzodPl4h8zBZBrxzYOAj0crYZR+f9Ijv7uFt67o94Xk/f8roJi0lF46DPS1YfOR05CimvPj0SFgGzAfzY5GxIXJF4nOcziyuqy7LTHN++6+dMonTXhwSc2BBZ48uhWXUsJeKLMSZ5XoE67uvtlnFS3p1bg3FtESwSSWQJ0nWbdbws/PQpU0p3isASMJsltzPqstrKq2lHdWm2djmYzsQUl72uLrywmDTRSK/MFqahBsPzMoamqWYdp9WlpoZ74PZH4gIvSSnl5SmuTj+SBSsII2JvMWCbfweb/cIIuiShNqIwhZbi8w2SJkiYYcJzfUQRU2M20CnKZwJpAQnn9hlKSw0+N0BGru9OTzgtaiI7e+L4317xhHl4YCXD9oXftl8IQBMMcgE+Fcdx3CijaU6X7qSw6HV3qTRMJDwzDtdjdyAQiyPiFjQ0HQgMdHcMYjRmKLR5x8OwRJE0OTlDFM5RyQioZlYiCno2J5NEPcYSZ0hOnp2tkYFExjv1Kp44irSUxWKJCEhdea14WaMvePZ57giGnzzDV2ULeLgUE23FiVPnmKhubXZ84aBQC8cpFhGKzU71vonk9wPR5WY2HlpYTCC0KOoZtUFFSZJcrhHRmApfZKtNpWT2LAgQ4ilG6H7kAkEEwUUFvRUVoXVRr1/0D1ZYEytCkpyZmJwPRWl2cnTapVCpZBQVndYoSlEyVRajxsFgdqZRzSWWi4tTIT7qiEKYygulkWlGMIyZ/+XMawqgySQUtKEMDyAAQJ13//rODz/Yl7BukaMoLwDA+H50PX/8n/oPUouklmWSTA4CwMAAABD4pbGW7XUM/3ejT9wubV2WDWDLn6J7GdhtKA4l7E6HFF2boDazMISQdYSgPCdjx0TQVUK7fh+ochSKs13UT9jzTXZXGJVAmsrLKvL/tHyW19IdJbn8BZmLLTdCbdaTlh/CM7meokzDUNW3vOqMuVovzPrkVjiYeJ2OqKOIaimJeZ0ogJdD8CsrARRd/BECsMI1anvRkCQEemtqHAQKqmUA8PO0MCeETzVhysREKYkeIixxA2j9c2B0S4+SI7aNgwCEcJIOLtaQHl3kgkFryYhVgEzwvGTGoOcsi77FKFnaTpSCoJ1SMfk7paH2c0onRTNZ4XyKMtA5Splo1VEWaRyUDa+IcjAwcC41z3nlVQDbnXPGAWdVu2yTnnbCIS84wpfSUMy5wIGzTsUiJmxyLYaLDpDPLTc4DCxQqvAJy/xyu/qME6EKnRAPW+Fw0xVnYhHHW8qMxxx3+cT6c5gCfGIa15XVJ5zNV+9wBJvVzEY975I1nuFzLR/p46NlxVmXHXYgXwpsP2m+6JhA2O6IyhW3w0X1BhflBEewenZsxlVKlEzHmsfxWrm7222wxVqZ4l0eKxsMrP6kiwZXWpX++YRYHeAjsaAl1Lo4xidTOXQRq1zxRc7ZuLmVzaP6MTrUrlccZHdof4zPuGrceiWncblY9XJ9PizNVvoppX7+FQCy3UYYUVBknc12hwzRiEEs4pAM8UiOBKRASqRC6miiTVJ00ccQY0wxx5LkpCQ1aUmPNRnJTFayk5Pc5MWWfKgoSGGKUhz7turgxSNXj7CTzp4o0a16XjHSPmFCieFTK4yrS/P+z67qX1pmHKWqyqwsVeVmtUNVmSq98hqnXjcpZ/8N2v4bW8wmfRXyXm5V5stKDYc25TQry9QKs3qlcpoqg/IZp0E3e5cm7dOt2lCF0DdQW6X9xVKt06g+cOjK5SP/Zq27X2EoceSldecbSFr0S74GAA==)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--background:oklch(97.5% 0 0);--foreground:oklch(14.5% 0 0);--card:oklch(100% 0 0);--card-foreground:oklch(14.5% 0 0);--popover:oklch(100% 0 0);--popover-foreground:oklch(14.5% 0 0);--primary:oklch(20.5% 0 0);--primary-foreground:oklch(98.5% 0 0);--secondary:oklch(93% 0 0);--secondary-foreground:oklch(20.5% 0 0);--muted:oklch(93% 0 0);--muted-foreground:oklch(55.6% 0 0);--accent:oklch(93% 0 0);--accent-foreground:oklch(20.5% 0 0);--destructive:oklch(57.7% .245 27.325);--border:oklch(92.2% 0 0);--input:oklch(92.2% 0 0);--ring:oklch(70.8% 0 0);--chart-1:oklch(87% 0 0);--chart-2:oklch(55.6% 0 0);--chart-3:oklch(43.9% 0 0);--chart-4:oklch(37.1% 0 0);--chart-5:oklch(26.9% 0 0);--radius:.625rem;--sidebar:oklch(94% 0 0);--sidebar-foreground:oklch(14.5% 0 0);--sidebar-primary:oklch(20.5% 0 0);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(90% 0 0);--sidebar-accent-foreground:oklch(20.5% 0 0);--sidebar-border:oklch(92.2% 0 0);--sidebar-ring:oklch(70.8% 0 0)}.dark{--background:oklch(14.5% 0 0);--foreground:oklch(98.5% 0 0);--card:oklch(20.5% 0 0);--card-foreground:oklch(98.5% 0 0);--popover:oklch(20.5% 0 0);--popover-foreground:oklch(98.5% 0 0);--primary:oklch(92.2% 0 0);--primary-foreground:oklch(20.5% 0 0);--secondary:oklch(26.9% 0 0);--secondary-foreground:oklch(98.5% 0 0);--muted:oklch(26.9% 0 0);--muted-foreground:oklch(70.8% 0 0);--accent:oklch(26.9% 0 0);--accent-foreground:oklch(98.5% 0 0);--destructive:oklch(70.4% .191 22.216);--border:oklch(100% 0 0/.1);--input:oklch(100% 0 0/.15);--ring:oklch(55.6% 0 0);--chart-1:oklch(87% 0 0);--chart-2:oklch(55.6% 0 0);--chart-3:oklch(43.9% 0 0);--chart-4:oklch(37.1% 0 0);--chart-5:oklch(26.9% 0 0);--sidebar:oklch(20.5% 0 0);--sidebar-foreground:oklch(98.5% 0 0);--sidebar-primary:oklch(48.8% .243 264.376);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(34% 0 0);--sidebar-accent-foreground:oklch(98.5% 0 0);--sidebar-border:oklch(100% 0 0/.1);--sidebar-ring:oklch(55.6% 0 0)}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}.xterm{cursor:text;-webkit-user-select:none;user-select:none;position:relative}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{z-index:5;position:absolute;top:0}.xterm .xterm-helper-textarea{opacity:0;z-index:-5;white-space:nowrap;resize:none;border:0;width:0;height:0;margin:0;padding:0;position:absolute;top:0;left:-9999em;overflow:hidden}.xterm .composition-view{color:#fff;white-space:nowrap;z-index:1;background:#000;display:none;position:absolute}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{cursor:default;background-color:#000;position:absolute;inset:0;overflow-y:scroll}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;top:0;left:0}.xterm-char-measure-element{visibility:hidden;line-height:normal;display:inline-block;position:absolute;top:0;left:-9999em}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{z-index:10;color:#0000;pointer-events:none;position:absolute;inset:0}.xterm .xterm-accessibility-tree:not(.debug) ::selection{color:#0000}.xterm .xterm-accessibility-tree{-webkit-user-select:text;user-select:text;white-space:pre;font-family:monospace}.xterm .xterm-accessibility-tree>div{transform-origin:0;width:fit-content}.xterm .live-region{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{-webkit-text-decoration:underline double;text-decoration:underline double}.xterm-underline-3{-webkit-text-decoration:underline wavy;text-decoration:underline wavy}.xterm-underline-4{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.xterm-underline-5{-webkit-text-decoration:underline dashed;text-decoration:underline dashed}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:underline overline}.xterm-overline.xterm-underline-2{-webkit-text-decoration:overline double underline;text-decoration:overline double underline}.xterm-overline.xterm-underline-3{-webkit-text-decoration:overline wavy underline;text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{-webkit-text-decoration:overline dotted underline;text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{-webkit-text-decoration:overline dashed underline;text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;pointer-events:none;position:absolute;top:0;right:0}.xterm-decoration-top{z-index:2;position:relative}.xterm .xterm-scrollable-element>.scrollbar{cursor:default}.xterm .xterm-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.xterm .xterm-scrollable-element>.visible{opacity:1;z-index:11;background:0 0;transition:opacity .1s linear}.xterm .xterm-scrollable-element>.invisible{opacity:0;pointer-events:none}.xterm .xterm-scrollable-element>.invisible.fade{transition:opacity .8s linear}.xterm .xterm-scrollable-element>.shadow{display:none;position:absolute}.xterm .xterm-scrollable-element>.shadow.top{width:100%;height:3px;box-shadow:var(--vscode-scrollbar-shadow,#000) 0 6px 6px -6px inset;display:block;top:0;left:3px}.xterm .xterm-scrollable-element>.shadow.left{width:3px;height:100%;box-shadow:var(--vscode-scrollbar-shadow,#000) 6px 0 6px -6px inset;display:block;top:3px;left:0}.xterm .xterm-scrollable-element>.shadow.top-left-corner{width:3px;height:3px;display:block;top:0;left:0}.xterm .xterm-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow,#000) 6px 0 6px -6px inset}
204
+ @layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){:root,:host{--shimmer-angle:20deg}*,:before,:after,::backdrop{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-space-y-reverse:0;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-duration:initial;--tw-ease:initial;--tw-content:"";--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-animation-delay:0s;--tw-animation-direction:normal;--tw-animation-duration:initial;--tw-animation-fill-mode:none;--tw-animation-iteration-count:1;--tw-enter-blur:0;--tw-enter-opacity:1;--tw-enter-rotate:0;--tw-enter-scale:1;--tw-enter-translate-x:0;--tw-enter-translate-y:0;--tw-exit-blur:0;--tw-exit-opacity:1;--tw-exit-rotate:0;--tw-exit-scale:1;--tw-exit-translate-x:0;--tw-exit-translate-y:0;--scroll-fade-t:0px;--scroll-fade-b:0px;--scroll-fade-s:0px;--scroll-fade-e:0px;--scroll-fade-mask:initial;--shimmer-image:initial;--shimmer-text-fill:initial}}}@layer theme{:root,:host{--font-sans:"Geist Variable", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--color-amber-500:oklch(76.9% .188 70.08);--color-emerald-500:oklch(69.6% .17 162.48);--color-emerald-600:oklch(59.6% .145 163.225);--color-zinc-100:oklch(96.7% .001 286.375);--color-zinc-200:oklch(92% .004 286.32);--color-zinc-300:oklch(87.1% .006 286.286);--color-zinc-400:oklch(70.5% .015 286.067);--color-zinc-700:oklch(37% .013 285.805);--color-zinc-800:oklch(27.4% .006 286.033);--color-zinc-900:oklch(21% .006 285.885);--color-zinc-950:oklch(14.1% .005 285.823);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-xs:20rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-2xl:42rem;--container-4xl:56rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--tracking-tight:-.025em;--tracking-wide:.025em;--tracking-widest:.1em;--leading-snug:1.375;--leading-normal:1.5;--radius-md:calc(var(--radius) * .8);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4, 0, .6, 1) infinite;--blur-xs:4px;--blur-md:12px;--blur-3xl:64px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:"Geist Variable", sans-serif;--default-mono-font-family:var(--font-mono);--color-ring:var(--ring)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*{border-color:var(--border);outline-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){*{outline-color:color-mix(in oklab, var(--ring) 50%, transparent)}}body{background-color:var(--background);color:var(--foreground)}html{font-family:Geist Variable,sans-serif}html,body{overscroll-behavior:none}.prose table{max-width:100%;display:block;overflow-x:auto}}@layer components;@layer utilities{.\@container\/card-header{container:card-header/inline-size}.\@container\/field-group{container:field-group/inline-size}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.inset-0{inset:0}.inset-x-0{inset-inline:0}.inset-y-0{inset-block:0}.top-0{top:0}.top-1\/2{top:50%}.top-1\/4{top:25%}.top-2{top:calc(var(--spacing) * 2)}.top-3{top:calc(var(--spacing) * 3)}.top-3\.5{top:calc(var(--spacing) * 3.5)}.right-1{right:var(--spacing)}.right-2{right:calc(var(--spacing) * 2)}.right-3{right:calc(var(--spacing) * 3)}.bottom-0{bottom:0}.bottom-full{bottom:100%}.left-1\/2{left:50%}.isolate{isolation:isolate}.-z-10{z-index:calc(10 * -1)}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.col-start-2{grid-column-start:2}.row-span-2{grid-row:span 2/span 2}.row-start-1{grid-row-start:1}.\!container{width:100%!important}@media (width>=40rem){.\!container{max-width:40rem!important}}@media (width>=48rem){.\!container{max-width:48rem!important}}@media (width>=64rem){.\!container{max-width:64rem!important}}@media (width>=80rem){.\!container{max-width:80rem!important}}@media (width>=96rem){.\!container{max-width:96rem!important}}.container{width:100%}@media (width>=40rem){.container{max-width:40rem}}@media (width>=48rem){.container{max-width:48rem}}@media (width>=64rem){.container{max-width:64rem}}@media (width>=80rem){.container{max-width:80rem}}@media (width>=96rem){.container{max-width:96rem}}.m-2{margin:calc(var(--spacing) * 2)}.-mx-1{margin-inline:calc(var(--spacing) * -1)}.-mx-4{margin-inline:calc(var(--spacing) * -4)}.mx-2{margin-inline:calc(var(--spacing) * 2)}.mx-3{margin-inline:calc(var(--spacing) * 3)}.mx-3\.5{margin-inline:calc(var(--spacing) * 3.5)}.mx-auto{margin-inline:auto}.-my-2{margin-block:calc(var(--spacing) * -2)}.my-1{margin-block:var(--spacing)}.prose{color:var(--tw-prose-body);max-width:65ch}.prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);margin-top:1.2em;margin-bottom:1.2em;font-size:1.25em;line-height:1.6}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);font-weight:500;text-decoration:underline}.prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:decimal}.prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:disc}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-counters);font-weight:400}.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.25em;font-weight:600}.prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em;font-style:italic;font-weight:500}.prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:0;margin-bottom:.888889em;font-size:2.25em;font-weight:800;line-height:1.11111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:900}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:2em;margin-bottom:1em;font-size:1.5em;font-weight:700;line-height:1.33333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:800}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.6em;margin-bottom:.6em;font-size:1.25em;font-weight:600;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);margin-top:1.5em;margin-bottom:.5em;font-weight:600;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-weight:700}.prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em;display:block}.prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-kbd);box-shadow:0 0 0 1px var(--tw-prose-kbd-shadows), 0 3px 0 var(--tw-prose-kbd-shadows);padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;border-radius:.3125rem;padding-inline-start:.375em;font-family:inherit;font-size:.875em;font-weight:500}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-size:.875em;font-weight:600}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before,.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);padding-top:.857143em;padding-inline-end:1.14286em;padding-bottom:.857143em;border-radius:.375rem;margin-top:1.71429em;margin-bottom:1.71429em;padding-inline-start:1.14286em;font-size:.875em;font-weight:400;line-height:1.71429;overflow-x:auto}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit;background-color:#0000;border-width:0;border-radius:0;padding:0}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before,.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){table-layout:auto;width:100%;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.71429}.prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);vertical-align:bottom;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em;font-weight:600}.prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.prose :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);margin-top:.857143em;font-size:.875em;line-height:1.42857}.prose{--tw-prose-body:oklch(37.3% .034 259.733);--tw-prose-headings:oklch(21% .034 264.665);--tw-prose-lead:oklch(44.6% .03 256.802);--tw-prose-links:oklch(21% .034 264.665);--tw-prose-bold:oklch(21% .034 264.665);--tw-prose-counters:oklch(55.1% .027 264.364);--tw-prose-bullets:oklch(87.2% .01 258.338);--tw-prose-hr:oklch(92.8% .006 264.531);--tw-prose-quotes:oklch(21% .034 264.665);--tw-prose-quote-borders:oklch(92.8% .006 264.531);--tw-prose-captions:oklch(55.1% .027 264.364);--tw-prose-kbd:oklch(21% .034 264.665);--tw-prose-kbd-shadows:oklab(21% -.00316127 -.0338527/.1);--tw-prose-code:oklch(21% .034 264.665);--tw-prose-pre-code:oklch(92.8% .006 264.531);--tw-prose-pre-bg:oklch(27.8% .033 256.848);--tw-prose-th-borders:oklch(87.2% .01 258.338);--tw-prose-td-borders:oklch(92.8% .006 264.531);--tw-prose-invert-body:oklch(87.2% .01 258.338);--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:oklch(70.7% .022 261.325);--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:oklch(70.7% .022 261.325);--tw-prose-invert-bullets:oklch(44.6% .03 256.802);--tw-prose-invert-hr:oklch(37.3% .034 259.733);--tw-prose-invert-quotes:oklch(96.7% .003 264.542);--tw-prose-invert-quote-borders:oklch(37.3% .034 259.733);--tw-prose-invert-captions:oklch(70.7% .022 261.325);--tw-prose-invert-kbd:#fff;--tw-prose-invert-kbd-shadows:#ffffff1a;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:oklch(87.2% .01 258.338);--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:oklch(44.6% .03 256.802);--tw-prose-invert-td-borders:oklch(37.3% .034 259.733);font-size:1rem;line-height:1.75}.prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.prose :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.prose :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.571429em;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em}.prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.prose :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.prose-sm{font-size:.875rem;line-height:1.71429}.prose-sm :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em;margin-bottom:1.14286em}.prose-sm :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.888889em;margin-bottom:.888889em;font-size:1.28571em;line-height:1.55556}.prose-sm :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.33333em;margin-bottom:1.33333em;padding-inline-start:1.11111em}.prose-sm :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:.8em;font-size:2.14286em;line-height:1.2}.prose-sm :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.6em;margin-bottom:.8em;font-size:1.42857em;line-height:1.4}.prose-sm :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.55556em;margin-bottom:.444444em;font-size:1.28571em;line-height:1.55556}.prose-sm :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.42857em;margin-bottom:.571429em;line-height:1.42857}.prose-sm :where(img):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.71429em;margin-bottom:1.71429em}.prose-sm :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-sm :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.71429em;margin-bottom:1.71429em}.prose-sm :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.142857em;padding-inline-end:.357143em;padding-bottom:.142857em;border-radius:.3125rem;padding-inline-start:.357143em;font-size:.857143em}.prose-sm :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.857143em}.prose-sm :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.9em}.prose-sm :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.888889em}.prose-sm :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.666667em;padding-inline-end:1em;padding-bottom:.666667em;border-radius:.25rem;margin-top:1.66667em;margin-bottom:1.66667em;padding-inline-start:1em;font-size:.857143em;line-height:1.66667}.prose-sm :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em;margin-bottom:1.14286em;padding-inline-start:1.57143em}.prose-sm :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.285714em;margin-bottom:.285714em}.prose-sm :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.428571em}.prose-sm :where(.prose-sm>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.571429em;margin-bottom:.571429em}.prose-sm :where(.prose-sm>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em}.prose-sm :where(.prose-sm>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.14286em}.prose-sm :where(.prose-sm>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em}.prose-sm :where(.prose-sm>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.14286em}.prose-sm :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.571429em;margin-bottom:.571429em}.prose-sm :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em;margin-bottom:1.14286em}.prose-sm :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.14286em}.prose-sm :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.285714em;padding-inline-start:1.57143em}.prose-sm :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2.85714em;margin-bottom:2.85714em}.prose-sm :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-sm :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.857143em;line-height:1.5}.prose-sm :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:1em;padding-bottom:.666667em;padding-inline-start:1em}.prose-sm :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-sm :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-sm :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.666667em;padding-inline-end:1em;padding-bottom:.666667em;padding-inline-start:1em}.prose-sm :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.prose-sm :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.prose-sm :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.71429em;margin-bottom:1.71429em}.prose-sm :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.prose-sm :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.666667em;font-size:.857143em;line-height:1.33333}.prose-sm :where(.prose-sm>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(.prose-sm>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.mt-0{margin-top:0}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:var(--spacing)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-auto{margin-top:auto}.-mb-4{margin-bottom:calc(var(--spacing) * -4)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.-ml-1{margin-left:calc(var(--spacing) * -1)}.ml-4{margin-left:calc(var(--spacing) * 4)}.ml-auto{margin-left:auto}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline-flex{display:inline-flex}.field-sizing-content{field-sizing:content}.aspect-square{aspect-ratio:1}.size-1\.5{width:calc(var(--spacing) * 1.5);height:calc(var(--spacing) * 1.5)}.size-2\.5{width:calc(var(--spacing) * 2.5);height:calc(var(--spacing) * 2.5)}.size-3{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.size-3\.5{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.size-4{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.size-5{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}.size-6{width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.size-7{width:calc(var(--spacing) * 7);height:calc(var(--spacing) * 7)}.size-8{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8)}.size-9{width:calc(var(--spacing) * 9);height:calc(var(--spacing) * 9)}.size-10{width:calc(var(--spacing) * 10);height:calc(var(--spacing) * 10)}.size-72{width:calc(var(--spacing) * 72);height:calc(var(--spacing) * 72)}.size-full{width:100%;height:100%}.h-4{height:calc(var(--spacing) * 4)}.h-4\!{height:calc(var(--spacing) * 4)!important}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-12{height:calc(var(--spacing) * 12)}.h-24{height:calc(var(--spacing) * 24)}.h-32{height:calc(var(--spacing) * 32)}.h-40{height:calc(var(--spacing) * 40)}.h-72{height:calc(var(--spacing) * 72)}.h-\[80vh\]{height:80vh}.h-\[calc\(100\%-1px\)\]{height:calc(100% - 1px)}.h-auto{height:auto}.h-full{height:100%}.h-px{height:1px}.h-svh{height:100svh}.max-h-\(--available-height\){max-height:var(--available-height)}.max-h-80{max-height:calc(var(--spacing) * 80)}.max-h-\[40vh\]{max-height:40vh}.max-h-\[80vh\]{max-height:80vh}.max-h-\[85vh\]{max-height:85vh}.min-h-0{min-height:0}.min-h-16{min-height:calc(var(--spacing) * 16)}.min-h-20{min-height:calc(var(--spacing) * 20)}.min-h-64{min-height:calc(var(--spacing) * 64)}.min-h-72{min-height:calc(var(--spacing) * 72)}.min-h-svh{min-height:100svh}.w-\(--anchor-width\){width:var(--anchor-width)}.w-\(--sidebar-width\){width:var(--sidebar-width)}.w-2{width:calc(var(--spacing) * 2)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-20{width:calc(var(--spacing) * 20)}.w-32{width:calc(var(--spacing) * 32)}.w-36{width:calc(var(--spacing) * 36)}.w-44{width:calc(var(--spacing) * 44)}.w-56{width:calc(var(--spacing) * 56)}.w-72{width:calc(var(--spacing) * 72)}.w-auto{width:auto}.w-fit{width:fit-content}.w-full{width:100%}.w-max{width:max-content}.w-px{width:1px}.max-w-\(--skeleton-width\){max-width:var(--skeleton-width)}.max-w-\[75\%\]{max-width:75%}.max-w-\[88\%\]{max-width:88%}.max-w-\[calc\(100\%-2rem\)\]{max-width:calc(100% - 2rem)}.max-w-full{max-width:100%}.max-w-none{max-width:none}.max-w-sm{max-width:var(--container-sm)}.max-w-xs{max-width:var(--container-xs)}.min-w-0{min-width:0}.min-w-5{min-width:calc(var(--spacing) * 5)}.min-w-7{min-width:calc(var(--spacing) * 7)}.min-w-8{min-width:calc(var(--spacing) * 8)}.min-w-9{min-width:calc(var(--spacing) * 9)}.min-w-32{min-width:calc(var(--spacing) * 32)}.min-w-36{min-width:calc(var(--spacing) * 36)}.min-w-\[96px\]{min-width:96px}.flex-1{flex:1}.shrink-0{flex-shrink:0}.origin-\(--transform-origin\){transform-origin:var(--transform-origin)}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-x-px{--tw-translate-x:-1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-x-px{--tw-translate-x:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.translate-y-\[calc\(-50\%-2px\)\]{--tw-translate-y:calc(-50% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}.rotate-45{rotate:45deg}.rotate-90{rotate:90deg}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-col-resize{cursor:col-resize}.cursor-default{cursor:default}.touch-none{touch-action:none}.resize-none{resize:none}.scroll-my-1{scroll-margin-block:var(--spacing)}.scroll-py-1{scroll-padding-block:var(--spacing)}.list-disc{list-style-type:disc}.auto-rows-min{grid-auto-rows:min-content}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-rows-\[auto_1fr\]{grid-template-rows:auto 1fr}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-row{flex-direction:row}.flex-nowrap{flex-wrap:nowrap}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-start{justify-content:flex-start}.gap-\(--card-spacing\){gap:var(--card-spacing)}.gap-0{gap:0}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:var(--spacing)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-2\.5{gap:calc(var(--spacing) * 2.5)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-\[--spacing\(var\(--gap\)\)\]{gap:calc(var(--spacing) * var(--gap))}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(var(--spacing) * var(--tw-space-y-reverse));margin-block-end:calc(var(--spacing) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-y-4{row-gap:calc(var(--spacing) * 4)}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)))}.self-start{align-self:flex-start}.justify-self-end{justify-self:flex-end}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-auto{overflow-y:auto}.overscroll-y-contain{overscroll-behavior-y:contain}.rounded{border-radius:.25rem}.rounded-4xl{border-radius:calc(var(--radius) * 2.6)}.rounded-\[2px\]{border-radius:2px}.rounded-\[min\(var\(--radius-md\)\,10px\)\]{border-radius:min(var(--radius-md), 10px)}.rounded-\[min\(var\(--radius-md\)\,12px\)\]{border-radius:min(var(--radius-md), 12px)}.rounded-full{border-radius:2147483647px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) * .8)}.rounded-xl{border-radius:calc(var(--radius) * 1.4)}.rounded-t-xl{border-top-left-radius:calc(var(--radius) * 1.4);border-top-right-radius:calc(var(--radius) * 1.4)}.rounded-b-xl{border-bottom-right-radius:calc(var(--radius) * 1.4);border-bottom-left-radius:calc(var(--radius) * 1.4)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-border{border-color:var(--border)}.border-input{border-color:var(--input)}.border-sidebar-border{border-color:var(--sidebar-border)}.border-transparent{border-color:#0000}.border-zinc-100{border-color:var(--color-zinc-100)}.border-zinc-700{border-color:var(--color-zinc-700)}.border-zinc-800{border-color:var(--color-zinc-800)}.bg-amber-500\/70{background-color:#f99c00b3}@supports (color:color-mix(in lab, red, red)){.bg-amber-500\/70{background-color:color-mix(in oklab, var(--color-amber-500) 70%, transparent)}}.bg-background{background-color:var(--background)}.bg-black\/10{background-color:#0000001a}@supports (color:color-mix(in lab, red, red)){.bg-black\/10{background-color:color-mix(in oklab, var(--color-black) 10%, transparent)}}.bg-black\/45{background-color:#00000073}@supports (color:color-mix(in lab, red, red)){.bg-black\/45{background-color:color-mix(in oklab, var(--color-black) 45%, transparent)}}.bg-border{background-color:var(--border)}.bg-card{background-color:var(--card)}.bg-current{background-color:currentColor}.bg-destructive\/10{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\/10{background-color:color-mix(in oklab, var(--destructive) 10%, transparent)}}.bg-destructive\/70{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.bg-destructive\/70{background-color:color-mix(in oklab, var(--destructive) 70%, transparent)}}.bg-emerald-500\/70{background-color:#00bb7fb3}@supports (color:color-mix(in lab, red, red)){.bg-emerald-500\/70{background-color:color-mix(in oklab, var(--color-emerald-500) 70%, transparent)}}.bg-emerald-600{background-color:var(--color-emerald-600)}.bg-foreground,.bg-foreground\/12{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.bg-foreground\/12{background-color:color-mix(in oklab, var(--foreground) 12%, transparent)}}.bg-muted,.bg-muted\/20{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/20{background-color:color-mix(in oklab, var(--muted) 20%, transparent)}}.bg-muted\/30{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/30{background-color:color-mix(in oklab, var(--muted) 30%, transparent)}}.bg-muted\/40{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/40{background-color:color-mix(in oklab, var(--muted) 40%, transparent)}}.bg-muted\/50{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/50{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.bg-muted\/80{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.bg-muted\/80{background-color:color-mix(in oklab, var(--muted) 80%, transparent)}}.bg-popover{background-color:var(--popover)}.bg-primary,.bg-primary\/10{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.bg-primary\/10{background-color:color-mix(in oklab, var(--primary) 10%, transparent)}}.bg-secondary{background-color:var(--secondary)}.bg-sidebar{background-color:var(--sidebar)}.bg-sidebar-border{background-color:var(--sidebar-border)}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-zinc-100{background-color:var(--color-zinc-100)}.bg-zinc-900{background-color:var(--color-zinc-900)}.bg-zinc-950{background-color:var(--color-zinc-950)}.\[background-image\:linear-gradient\(to_right\,var\(--border\)_1px\,transparent_1px\)\,linear-gradient\(to_bottom\,var\(--border\)_1px\,transparent_1px\)\]{background-image:linear-gradient(to right,var(--border) 1px,transparent 1px),linear-gradient(to bottom,var(--border) 1px,transparent 1px)}.\[mask-image\:radial-gradient\(ellipse_60\%_50\%_at_50\%_0\%\,black\,transparent\)\]{-webkit-mask-image:radial-gradient(60% 50% at 50% 0,#000,#0000);mask-image:radial-gradient(60% 50% at 50% 0,#000,#0000)}.\[background-size\:32px_32px\]{background-size:32px 32px}.bg-clip-padding{background-clip:padding-box}.fill-foreground{fill:var(--foreground)}.p-\(--card-spacing\){padding:var(--card-spacing)}.p-0{padding:0}.p-0\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:var(--spacing)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-2\.5{padding:calc(var(--spacing) * 2.5)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-6{padding:calc(var(--spacing) * 6)}.p-\[3px\]{padding:3px}.px-\(--card-spacing\){padding-inline:var(--card-spacing)}.px-1{padding-inline:var(--spacing)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-6{padding-inline:calc(var(--spacing) * 6)}.py-\(--card-spacing\){padding-block:var(--card-spacing)}.py-0{padding-block:0}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:var(--spacing)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-6{padding-block:calc(var(--spacing) * 6)}.pt-0{padding-top:0}.pt-1{padding-top:var(--spacing)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-8{padding-right:calc(var(--spacing) * 8)}.pb-1\.5{padding-bottom:calc(var(--spacing) * 1.5)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pl-1{padding-left:var(--spacing)}.pl-1\.5{padding-left:calc(var(--spacing) * 1.5)}.pl-2\.5{padding-left:calc(var(--spacing) * 2.5)}.pl-4{padding-left:calc(var(--spacing) * 4)}.pl-6{padding-left:calc(var(--spacing) * 6)}.text-center{text-align:center}.text-left{text-align:left}.font-heading{font-family:var(--font-sans)}.font-mono{font-family:var(--font-mono)}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[0\.8rem\]{font-size:.8rem}.leading-none{--tw-leading:1;line-height:1}.leading-normal{--tw-leading:var(--leading-normal);line-height:var(--leading-normal)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-normal{--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[0\.2em\]{--tw-tracking:.2em;letter-spacing:.2em}.tracking-tight{--tw-tracking:var(--tracking-tight);letter-spacing:var(--tracking-tight)}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-widest{--tw-tracking:var(--tracking-widest);letter-spacing:var(--tracking-widest)}.text-balance{text-wrap:balance}.break-words,.wrap-break-word{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.text-background{color:var(--background)}.text-card-foreground{color:var(--card-foreground)}.text-destructive{color:var(--destructive)}.text-foreground,.text-foreground\/60{color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.text-foreground\/60{color:color-mix(in oklab, var(--foreground) 60%, transparent)}}.text-muted-foreground{color:var(--muted-foreground)}.text-popover-foreground{color:var(--popover-foreground)}.text-primary{color:var(--primary)}.text-primary-foreground{color:var(--primary-foreground)}.text-secondary-foreground{color:var(--secondary-foreground)}.text-sidebar-foreground,.text-sidebar-foreground\/70{color:var(--sidebar-foreground)}@supports (color:color-mix(in lab, red, red)){.text-sidebar-foreground\/70{color:color-mix(in oklab, var(--sidebar-foreground) 70%, transparent)}}.text-white{color:var(--color-white)}.text-zinc-200{color:var(--color-zinc-200)}.text-zinc-300{color:var(--color-zinc-300)}.text-zinc-400{color:var(--color-zinc-400)}.text-zinc-900{color:var(--color-zinc-900)}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline-offset-4{text-underline-offset:4px}.opacity-25{opacity:.25}.opacity-40{opacity:.4}.opacity-70{opacity:.7}.shadow-\[0_0_0_1px_var\(--sidebar-border\)\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,var(--sidebar-border));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px var(--tw-shadow-color,#0000001a), 0 2px 4px -2px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-none{--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-0{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-1{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.ring-foreground\/10{--tw-ring-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.ring-foreground\/10{--tw-ring-color:color-mix(in oklab, var(--foreground) 10%, transparent)}}.ring-sidebar-ring{--tw-ring-color:var(--sidebar-ring)}.outline-hidden{--tw-outline-style:none;outline-style:none}@media (forced-colors:active){.outline-hidden{outline-offset:2px;outline:2px solid #0000}}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur-3xl{--tw-blur:blur(var(--blur-3xl));filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.blur-\[2px\]{--tw-blur:blur(2px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[left\,right\,width\]{transition-property:left,right,width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[margin\,opacity\]{transition-property:margin,opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\,height\,padding\]{transition-property:width,height,padding;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[width\]{transition-property:width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-opacity{transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-transform{transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-100{--tw-duration:.1s;transition-duration:.1s}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.ease-linear{--tw-ease:linear;transition-timing-function:linear}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.\[--card-spacing\:--spacing\(4\)\]{--card-spacing:calc(var(--spacing) * 4)}.running{animation-play-state:running}:is(.\*\:w-full>*){width:100%}.group-focus-within\/menu-item\:opacity-100:is(:where(.group\/menu-item):focus-within *){opacity:1}@media (hover:hover){.group-hover\:bg-primary\/60:is(:where(.group):hover *){background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.group-hover\:bg-primary\/60:is(:where(.group):hover *){background-color:color-mix(in oklab, var(--primary) 60%, transparent)}}.group-hover\/menu-item\:opacity-100:is(:where(.group\/menu-item):hover *){opacity:1}}.group-focus\/dropdown-menu-item\:text-accent-foreground:is(:where(.group\/dropdown-menu-item):focus *){color:var(--accent-foreground)}.group-has-data-\[sidebar\=menu-action\]\/menu-item\:pr-8:is(:where(.group\/menu-item):has([data-sidebar=menu-action]) *){padding-right:calc(var(--spacing) * 8)}.group-has-data-horizontal\/field\:text-balance:is(:where(.group\/field):has(:where([data-orientation=horizontal])) *){text-wrap:balance}.group-has-\[\:focus-visible\]\/field-label\:border-transparent:is(:where(.group\/field-label):has(:focus-visible) *){border-color:#0000}.group-has-\[\:focus-visible\]\/field-label\:ring-0:is(:where(.group\/field-label):has(:focus-visible) *){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-has-\[\>svg\]\/alert\:col-start-2:is(:where(.group\/alert):has(>svg) *){grid-column-start:2}.group-data-\[collapsible\=icon\]\:-mt-8:is(:where(.group)[data-collapsible=icon] *){margin-top:calc(var(--spacing) * -8)}.group-data-\[collapsible\=icon\]\:hidden:is(:where(.group)[data-collapsible=icon] *){display:none}.group-data-\[collapsible\=icon\]\:size-8\!:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--spacing) * 8)!important;height:calc(var(--spacing) * 8)!important}.group-data-\[collapsible\=icon\]\:w-\(--sidebar-width-icon\):is(:where(.group)[data-collapsible=icon] *){width:var(--sidebar-width-icon)}.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + (calc(var(--spacing) * 4)))}.group-data-\[collapsible\=icon\]\:w-\[calc\(var\(--sidebar-width-icon\)\+\(--spacing\(4\)\)\+2px\)\]:is(:where(.group)[data-collapsible=icon] *){width:calc(var(--sidebar-width-icon) + (calc(var(--spacing) * 4)) + 2px)}.group-data-\[collapsible\=icon\]\:overflow-hidden:is(:where(.group)[data-collapsible=icon] *){overflow:hidden}.group-data-\[collapsible\=icon\]\:p-0\!:is(:where(.group)[data-collapsible=icon] *){padding:0!important}.group-data-\[collapsible\=icon\]\:p-2\!:is(:where(.group)[data-collapsible=icon] *){padding:calc(var(--spacing) * 2)!important}.group-data-\[collapsible\=icon\]\:opacity-0:is(:where(.group)[data-collapsible=icon] *){opacity:0}.group-data-\[collapsible\=offcanvas\]\:w-0:is(:where(.group)[data-collapsible=offcanvas] *){width:0}.group-data-\[collapsible\=offcanvas\]\:translate-x-0:is(:where(.group)[data-collapsible=offcanvas] *){--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.group-data-\[disabled\=true\]\:pointer-events-none:is(:where(.group)[data-disabled=true] *){pointer-events:none}.group-data-\[disabled\=true\]\:opacity-50:is(:where(.group)[data-disabled=true] *),.group-data-\[disabled\=true\]\/field\:opacity-50:is(:where(.group\/field)[data-disabled=true] *){opacity:.5}.group-data-\[side\=left\]\:-right-4:is(:where(.group)[data-side=left] *){right:calc(var(--spacing) * -4)}.group-data-\[side\=left\]\:border-r:is(:where(.group)[data-side=left] *){border-right-style:var(--tw-border-style);border-right-width:1px}.group-data-\[side\=right\]\:left-0:is(:where(.group)[data-side=right] *){left:0}.group-data-\[side\=right\]\:rotate-180:is(:where(.group)[data-side=right] *){rotate:180deg}.group-data-\[side\=right\]\:border-l:is(:where(.group)[data-side=right] *){border-left-style:var(--tw-border-style);border-left-width:1px}.group-data-\[size\=default\]\/switch\:size-4:is(:where(.group\/switch)[data-size=default] *){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.group-data-\[size\=sm\]\/alert-dialog-content\:grid:is(:where(.group\/alert-dialog-content)[data-size=sm] *){display:grid}.group-data-\[size\=sm\]\/alert-dialog-content\:grid-cols-2:is(:where(.group\/alert-dialog-content)[data-size=sm] *){grid-template-columns:repeat(2,minmax(0,1fr))}.group-data-\[size\=sm\]\/card\:text-sm:is(:where(.group\/card)[data-size=sm] *){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.group-data-\[size\=sm\]\/switch\:size-3:is(:where(.group\/switch)[data-size=sm] *){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.group-data-\[spacing\=0\]\/toggle-group\:rounded-none:is(:where(.group\/toggle-group)[data-spacing="0"] *){border-radius:0}.group-data-\[spacing\=0\]\/toggle-group\:px-2:is(:where(.group\/toggle-group)[data-spacing="0"] *){padding-inline:calc(var(--spacing) * 2)}.group-data-\[variant\=floating\]\:rounded-lg:is(:where(.group)[data-variant=floating] *){border-radius:var(--radius)}.group-data-\[variant\=floating\]\:shadow-sm:is(:where(.group)[data-variant=floating] *){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-data-\[variant\=floating\]\:ring-1:is(:where(.group)[data-variant=floating] *){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-data-\[variant\=floating\]\:ring-sidebar-border:is(:where(.group)[data-variant=floating] *){--tw-ring-color:var(--sidebar-border)}.group-data-\[variant\=line\]\/tabs-list\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *){background-color:#0000}.group-data-\[variant\=outline\]\/field-group\:-mb-2:is(:where(.group\/field-group)[data-variant=outline] *){margin-bottom:calc(var(--spacing) * -2)}.group-data-horizontal\/tabs\:h-8:is(:where(.group\/tabs):where([data-orientation=horizontal]) *){height:calc(var(--spacing) * 8)}.group-data-vertical\/tabs\:h-fit:is(:where(.group\/tabs):where([data-orientation=vertical]) *){height:fit-content}.group-data-vertical\/tabs\:w-full:is(:where(.group\/tabs):where([data-orientation=vertical]) *){width:100%}.group-data-vertical\/tabs\:flex-col:is(:where(.group\/tabs):where([data-orientation=vertical]) *){flex-direction:column}.group-data-vertical\/tabs\:justify-start:is(:where(.group\/tabs):where([data-orientation=vertical]) *){justify-content:flex-start}@media (hover:hover){.peer-hover\/menu-button\:text-sidebar-accent-foreground:is(:where(.peer\/menu-button):hover~*){color:var(--sidebar-accent-foreground)}}.peer-disabled\:cursor-not-allowed:is(:where(.peer):disabled~*){cursor:not-allowed}.peer-disabled\:opacity-50:is(:where(.peer):disabled~*){opacity:.5}.peer-data-\[size\=default\]\/menu-button\:top-1\.5:is(:where(.peer\/menu-button)[data-size=default]~*){top:calc(var(--spacing) * 1.5)}.peer-data-\[size\=lg\]\/menu-button\:top-2\.5:is(:where(.peer\/menu-button)[data-size=lg]~*){top:calc(var(--spacing) * 2.5)}.peer-data-\[size\=sm\]\/menu-button\:top-1:is(:where(.peer\/menu-button)[data-size=sm]~*){top:var(--spacing)}.peer-data-active\/menu-button\:text-sidebar-accent-foreground:is(:is(:where(.peer\/menu-button):where([data-state=active]),:where(.peer\/menu-button):where([data-active]:not([data-active=false])))~*){color:var(--sidebar-accent-foreground)}.file\:inline-flex::file-selector-button{display:inline-flex}.file\:h-6::file-selector-button{height:calc(var(--spacing) * 6)}.file\:border-0::file-selector-button{border-style:var(--tw-border-style);border-width:0}.file\:bg-transparent::file-selector-button{background-color:#0000}.file\:text-sm::file-selector-button{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.file\:font-medium::file-selector-button{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.file\:text-foreground::file-selector-button{color:var(--foreground)}.placeholder\:text-muted-foreground::placeholder{color:var(--muted-foreground)}.after\:absolute:after{content:var(--tw-content);position:absolute}.after\:-inset-2:after{content:var(--tw-content);inset:calc(var(--spacing) * -2)}.after\:-inset-x-3:after{content:var(--tw-content);inset-inline:calc(var(--spacing) * -3)}.after\:-inset-y-2:after{content:var(--tw-content);inset-block:calc(var(--spacing) * -2)}.after\:inset-y-0:after{content:var(--tw-content);inset-block:0}.after\:start-1\/2:after{content:var(--tw-content);inset-inline-start:50%}.after\:w-\[2px\]:after{content:var(--tw-content);width:2px}.after\:bg-foreground:after{content:var(--tw-content);background-color:var(--foreground)}.after\:opacity-0:after{content:var(--tw-content);opacity:0}.after\:transition-opacity:after{content:var(--tw-content);transition-property:opacity;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.group-data-\[collapsible\=offcanvas\]\:after\:left-full:is(:where(.group)[data-collapsible=offcanvas] *):after{content:var(--tw-content);left:100%}.group-data-horizontal\/tabs\:after\:inset-x-0:is(:where(.group\/tabs):where([data-orientation=horizontal]) *):after{content:var(--tw-content);inset-inline:0}.group-data-horizontal\/tabs\:after\:bottom-\[-5px\]:is(:where(.group\/tabs):where([data-orientation=horizontal]) *):after{content:var(--tw-content);bottom:-5px}.group-data-horizontal\/tabs\:after\:h-0\.5:is(:where(.group\/tabs):where([data-orientation=horizontal]) *):after{content:var(--tw-content);height:calc(var(--spacing) * .5)}.group-data-vertical\/tabs\:after\:inset-y-0:is(:where(.group\/tabs):where([data-orientation=vertical]) *):after{content:var(--tw-content);inset-block:0}.group-data-vertical\/tabs\:after\:-right-1:is(:where(.group\/tabs):where([data-orientation=vertical]) *):after{content:var(--tw-content);right:calc(var(--spacing) * -1)}.group-data-vertical\/tabs\:after\:w-0\.5:is(:where(.group\/tabs):where([data-orientation=vertical]) *):after{content:var(--tw-content);width:calc(var(--spacing) * .5)}.first\:pt-0:first-child{padding-top:0}.last\:mt-0:last-child{margin-top:0}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.last\:pb-0:last-child{padding-bottom:0}@media (hover:hover){.hover\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]:hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-\[color-mix\(in_oklch\,var\(--secondary\)\,var\(--foreground\)_5\%\)\]:hover{background-color:color-mix(in oklch,var(--secondary),var(--foreground) 5%)}}.hover\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_18\%\)\]:hover{background-color:var(--sidebar-accent)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_18\%\)\]:hover{background-color:color-mix(in oklch,var(--sidebar-accent),var(--foreground) 18%)}}.hover\:bg-destructive\/20:hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-destructive\/20:hover{background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.hover\:bg-foreground\/8:hover{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-foreground\/8:hover{background-color:color-mix(in oklab, var(--foreground) 8%, transparent)}}.hover\:bg-muted:hover{background-color:var(--muted)}.hover\:bg-primary\/80:hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.hover\:bg-primary\/80:hover{background-color:color-mix(in oklab, var(--primary) 80%, transparent)}}.hover\:bg-sidebar-accent:hover{background-color:var(--sidebar-accent)}.hover\:bg-zinc-100:hover{background-color:var(--color-zinc-100)}.hover\:bg-zinc-800:hover{background-color:var(--color-zinc-800)}.hover\:text-foreground:hover{color:var(--foreground)}.hover\:text-muted-foreground:hover{color:var(--muted-foreground)}.hover\:text-sidebar-accent-foreground:hover{color:var(--sidebar-accent-foreground)}.hover\:underline:hover{text-decoration-line:underline}.hover\:shadow-\[0_0_0_1px_var\(--sidebar-accent\)\]:hover{--tw-shadow:0 0 0 1px var(--tw-shadow-color,var(--sidebar-accent));box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.hover\:group-data-\[collapsible\=offcanvas\]\:bg-sidebar:hover:is(:where(.group)[data-collapsible=offcanvas] *){background-color:var(--sidebar)}.hover\:after\:bg-sidebar-border:hover:after{content:var(--tw-content);background-color:var(--sidebar-border)}}.focus\:z-10:focus{z-index:10}.focus\:bg-accent:focus{background-color:var(--accent)}.focus\:text-accent-foreground:focus,:is(.focus\:\*\*\:text-accent-foreground:focus *),:is(.not-data-\[variant\=destructive\]\:focus\:\*\*\:text-accent-foreground:not([data-variant=destructive]):focus *){color:var(--accent-foreground)}.focus-visible\:z-10:focus-visible{z-index:10}.focus-visible\:border-destructive\/40:focus-visible{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:border-destructive\/40:focus-visible{border-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.focus-visible\:border-ring:focus-visible{border-color:var(--ring)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-3:focus-visible,.focus-visible\:ring-\[3px\]:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-destructive\/20:focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.focus-visible\:ring-ring\/50:focus-visible{--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.focus-visible\:outline-1:focus-visible{outline-style:var(--tw-outline-style);outline-width:1px}.focus-visible\:outline-ring:focus-visible{outline-color:var(--ring)}.active\:bg-sidebar-accent:active{background-color:var(--sidebar-accent)}.active\:text-sidebar-accent-foreground:active{color:var(--sidebar-accent-foreground)}.active\:not-aria-\[haspopup\]\:translate-y-px:active:not([aria-haspopup]){--tw-translate-y:1px;translate:var(--tw-translate-x) var(--tw-translate-y)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:bg-input\/50:disabled{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.disabled\:bg-input\/50:disabled{background-color:color-mix(in oklab, var(--input) 50%, transparent)}}.disabled\:opacity-50:disabled{opacity:.5}:where([data-side=left]) .in-data-\[side\=left\]\:cursor-w-resize{cursor:w-resize}:where([data-side=right]) .in-data-\[side\=right\]\:cursor-e-resize{cursor:e-resize}:where([data-slot=button-group]) .in-data-\[slot\=button-group\]\:rounded-lg{border-radius:var(--radius)}.has-data-\[icon\=inline-end\]\:pr-1:has([data-icon=inline-end]){padding-right:var(--spacing)}.has-data-\[icon\=inline-end\]\:pr-1\.5:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-end\]\:pr-2:has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 2)}.group-data-\[spacing\=0\]\/toggle-group\:has-data-\[icon\=inline-end\]\:pr-1\.5:is(:where(.group\/toggle-group)[data-spacing="0"] *):has([data-icon=inline-end]){padding-right:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-start\]\:pl-1:has([data-icon=inline-start]){padding-left:var(--spacing)}.has-data-\[icon\=inline-start\]\:pl-1\.5:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 1.5)}.has-data-\[icon\=inline-start\]\:pl-2:has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 2)}.group-data-\[spacing\=0\]\/toggle-group\:has-data-\[icon\=inline-start\]\:pl-1\.5:is(:where(.group\/toggle-group)[data-spacing="0"] *):has([data-icon=inline-start]){padding-left:calc(var(--spacing) * 1.5)}.has-data-\[slot\=alert-action\]\:relative:has([data-slot=alert-action]){position:relative}.has-data-\[slot\=alert-action\]\:pr-18:has([data-slot=alert-action]){padding-right:calc(var(--spacing) * 18)}.has-data-\[slot\=alert-dialog-media\]\:grid-rows-\[auto_auto_1fr\]:has([data-slot=alert-dialog-media]){grid-template-rows:auto auto 1fr}.has-data-\[slot\=alert-dialog-media\]\:gap-x-4:has([data-slot=alert-dialog-media]){column-gap:calc(var(--spacing) * 4)}.has-data-\[slot\=card-action\]\:grid-cols-\[1fr_auto\]:has([data-slot=card-action]){grid-template-columns:1fr auto}.has-data-\[slot\=card-description\]\:grid-rows-\[auto_auto\]:has([data-slot=card-description]){grid-template-rows:auto auto}.has-data-\[slot\=card-footer\]\:pb-0:has([data-slot=card-footer]){padding-bottom:0}.has-data-\[slot\=kbd\]\:pr-1\.5:has([data-slot=kbd]){padding-right:calc(var(--spacing) * 1.5)}.has-data-\[variant\=inset\]\:bg-sidebar:has([data-variant=inset]){background-color:var(--sidebar)}.has-data-checked\:border-primary\/30:has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.has-data-checked\:border-primary\/30:has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){border-color:color-mix(in oklab, var(--primary) 30%, transparent)}}.has-data-checked\:bg-primary\/5:has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.has-data-checked\:bg-primary\/5:has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){background-color:color-mix(in oklab, var(--primary) 5%, transparent)}}.has-\[\>\[data-slot\=checkbox-group\]\]\:gap-3:has(>[data-slot=checkbox-group]){gap:calc(var(--spacing) * 3)}.has-\[\>\[data-slot\=field-content\]\]\:items-start:has(>[data-slot=field-content]){align-items:flex-start}.has-\[\>\[data-slot\=field\]\]\:w-full:has(>[data-slot=field]){width:100%}.has-\[\>\[data-slot\=field\]\]\:flex-col:has(>[data-slot=field]){flex-direction:column}.has-\[\>\[data-slot\=field\]\]\:rounded-lg:has(>[data-slot=field]){border-radius:var(--radius)}.has-\[\>\[data-slot\=field\]\]\:border:has(>[data-slot=field]){border-style:var(--tw-border-style);border-width:1px}@media (hover:hover){.has-\[\>\[data-slot\=field\]\]\:not-has-\[\:disabled\,\[data-disabled\]\]\:hover\:bg-muted\/50:has(>[data-slot=field]):not(:has(:is(:disabled,[data-disabled]))):hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.has-\[\>\[data-slot\=field\]\]\:not-has-\[\:disabled\,\[data-disabled\]\]\:hover\:bg-muted\/50:has(>[data-slot=field]):not(:has(:is(:disabled,[data-disabled]))):hover{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}}.has-\[\>\[data-slot\=field\]\]\:has-\[\:focus-visible\]\:border-ring:has(>[data-slot=field]):has(:focus-visible){border-color:var(--ring)}.has-\[\>\[data-slot\=field\]\]\:has-\[\:focus-visible\]\:ring-3:has(>[data-slot=field]):has(:focus-visible){--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.has-\[\>\[data-slot\=field\]\]\:has-\[\:focus-visible\]\:ring-ring\/50:has(>[data-slot=field]):has(:focus-visible){--tw-ring-color:var(--ring)}@supports (color:color-mix(in lab, red, red)){.has-\[\>\[data-slot\=field\]\]\:has-\[\:focus-visible\]\:ring-ring\/50:has(>[data-slot=field]):has(:focus-visible){--tw-ring-color:color-mix(in oklab, var(--ring) 50%, transparent)}}.has-\[\>\[data-slot\=radio-group\]\]\:gap-3:has(>[data-slot=radio-group]){gap:calc(var(--spacing) * 3)}.has-\[\>img\:first-child\]\:pt-0:has(>img:first-child){padding-top:0}.has-\[\>svg\]\:grid-cols-\[auto_1fr\]:has(>svg){grid-template-columns:auto 1fr}.has-\[\>svg\]\:gap-x-2:has(>svg){column-gap:calc(var(--spacing) * 2)}.aria-disabled\:pointer-events-none[aria-disabled=true]{pointer-events:none}.aria-disabled\:opacity-50[aria-disabled=true]{opacity:.5}.aria-expanded\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_18\%\)\][aria-expanded=true]{background-color:var(--sidebar-accent)}@supports (color:color-mix(in lab, red, red)){.aria-expanded\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_18\%\)\][aria-expanded=true]{background-color:color-mix(in oklch,var(--sidebar-accent),var(--foreground) 18%)}}.aria-expanded\:bg-muted[aria-expanded=true]{background-color:var(--muted)}.aria-expanded\:bg-secondary[aria-expanded=true]{background-color:var(--secondary)}.aria-expanded\:text-foreground[aria-expanded=true]{color:var(--foreground)}.aria-expanded\:text-secondary-foreground[aria-expanded=true]{color:var(--secondary-foreground)}.aria-expanded\:text-sidebar-accent-foreground[aria-expanded=true]{color:var(--sidebar-accent-foreground)}.aria-expanded\:opacity-100[aria-expanded=true]{opacity:1}.aria-invalid\:border-destructive[aria-invalid=true]{border-color:var(--destructive)}.aria-invalid\:ring-3[aria-invalid=true]{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.aria-invalid\:ring-destructive\/20[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.aria-pressed\:bg-muted[aria-pressed=true]{background-color:var(--muted)}.data-ending-style\:opacity-0[data-ending-style]{opacity:0}.data-inset\:pl-7[data-inset]{padding-left:calc(var(--spacing) * 7)}.data-placeholder\:text-muted-foreground[data-placeholder]{color:var(--muted-foreground)}.data-popup-open\:bg-accent[data-popup-open]{background-color:var(--accent)}.data-popup-open\:text-accent-foreground[data-popup-open]{color:var(--accent-foreground)}.data-starting-style\:opacity-0[data-starting-style]{opacity:0}.data-\[align-trigger\=true\]\:animate-none[data-align-trigger=true]{animation:none}.data-\[disabled\=true\]\:pointer-events-none[data-disabled=true]{pointer-events:none}.data-\[disabled\=true\]\:opacity-50[data-disabled=true]{opacity:.5}.data-\[invalid\=true\]\:text-destructive[data-invalid=true]{color:var(--destructive)}.data-\[selected\=true\]\:bg-accent[data-selected=true]{background-color:var(--accent)}.data-\[selected\=true\]\:text-accent-foreground[data-selected=true]{color:var(--accent-foreground)}.data-\[side\=bottom\]\:inset-x-0[data-side=bottom]{inset-inline:0}.data-\[side\=bottom\]\:top-1[data-side=bottom]{top:var(--spacing)}.data-\[side\=bottom\]\:bottom-0[data-side=bottom]{bottom:0}.data-\[side\=bottom\]\:h-auto[data-side=bottom]{height:auto}.data-\[side\=bottom\]\:border-t[data-side=bottom]{border-top-style:var(--tw-border-style);border-top-width:1px}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y:calc(2*var(--spacing)*-1)}.data-\[side\=bottom\]\:data-ending-style\:translate-y-\[2\.5rem\][data-side=bottom][data-ending-style],.data-\[side\=bottom\]\:data-starting-style\:translate-y-\[2\.5rem\][data-side=bottom][data-starting-style]{--tw-translate-y:2.5rem;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=inline-end\]\:top-1\/2\![data-side=inline-end]{top:50%!important}.data-\[side\=inline-end\]\:-left-1[data-side=inline-end]{left:calc(var(--spacing) * -1)}.data-\[side\=inline-end\]\:-translate-y-1\/2[data-side=inline-end]{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=inline-end\]\:slide-in-from-left-2[data-side=inline-end]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=inline-start\]\:top-1\/2\![data-side=inline-start]{top:50%!important}.data-\[side\=inline-start\]\:-right-1[data-side=inline-start]{right:calc(var(--spacing) * -1)}.data-\[side\=inline-start\]\:-translate-y-1\/2[data-side=inline-start]{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=inline-start\]\:slide-in-from-right-2[data-side=inline-start]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=left\]\:inset-y-0[data-side=left]{inset-block:0}.data-\[side\=left\]\:top-1\/2\![data-side=left]{top:50%!important}.data-\[side\=left\]\:-right-1[data-side=left]{right:calc(var(--spacing) * -1)}.data-\[side\=left\]\:left-0[data-side=left]{left:0}.data-\[side\=left\]\:h-full[data-side=left]{height:100%}.data-\[side\=left\]\:w-3\/4[data-side=left]{width:75%}.data-\[side\=left\]\:-translate-y-1\/2[data-side=left]{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=left\]\:border-r[data-side=left]{border-right-style:var(--tw-border-style);border-right-width:1px}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x:calc(2*var(--spacing))}.data-\[side\=left\]\:group-data-\[collapsible\=offcanvas\]\:left-\[calc\(var\(--sidebar-width\)\*-1\)\][data-side=left]:is(:where(.group)[data-collapsible=offcanvas] *){left:calc(var(--sidebar-width) * -1)}.data-\[side\=left\]\:data-ending-style\:translate-x-\[-2\.5rem\][data-side=left][data-ending-style],.data-\[side\=left\]\:data-starting-style\:translate-x-\[-2\.5rem\][data-side=left][data-starting-style]{--tw-translate-x:-2.5rem;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:inset-y-0[data-side=right]{inset-block:0}.data-\[side\=right\]\:top-1\/2\![data-side=right]{top:50%!important}.data-\[side\=right\]\:right-0[data-side=right]{right:0}.data-\[side\=right\]\:-left-1[data-side=right]{left:calc(var(--spacing) * -1)}.data-\[side\=right\]\:h-full[data-side=right]{height:100%}.data-\[side\=right\]\:w-3\/4[data-side=right]{width:75%}.data-\[side\=right\]\:w-full[data-side=right]{width:100%}.data-\[side\=right\]\:-translate-y-1\/2[data-side=right]{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=right\]\:border-l[data-side=right]{border-left-style:var(--tw-border-style);border-left-width:1px}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x:calc(2*var(--spacing)*-1)}.data-\[side\=right\]\:group-data-\[collapsible\=offcanvas\]\:right-\[calc\(var\(--sidebar-width\)\*-1\)\][data-side=right]:is(:where(.group)[data-collapsible=offcanvas] *){right:calc(var(--sidebar-width) * -1)}.data-\[side\=right\]\:data-ending-style\:translate-x-\[2\.5rem\][data-side=right][data-ending-style],.data-\[side\=right\]\:data-starting-style\:translate-x-\[2\.5rem\][data-side=right][data-starting-style]{--tw-translate-x:2.5rem;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[side\=top\]\:inset-x-0[data-side=top]{inset-inline:0}.data-\[side\=top\]\:top-0[data-side=top]{top:0}.data-\[side\=top\]\:-bottom-2\.5[data-side=top]{bottom:calc(var(--spacing) * -2.5)}.data-\[side\=top\]\:h-auto[data-side=top]{height:auto}.data-\[side\=top\]\:border-b[data-side=top]{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y:calc(2*var(--spacing))}.data-\[side\=top\]\:data-ending-style\:translate-y-\[-2\.5rem\][data-side=top][data-ending-style],.data-\[side\=top\]\:data-starting-style\:translate-y-\[-2\.5rem\][data-side=top][data-starting-style]{--tw-translate-y:-2.5rem;translate:var(--tw-translate-x) var(--tw-translate-y)}.data-\[size\=default\]\:h-8[data-size=default]{height:calc(var(--spacing) * 8)}.data-\[size\=default\]\:h-\[18\.4px\][data-size=default]{height:18.4px}.data-\[size\=default\]\:w-\[32px\][data-size=default]{width:32px}.data-\[size\=default\]\:max-w-xs[data-size=default]{max-width:var(--container-xs)}.data-\[size\=md\]\:text-sm[data-size=md]{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.data-\[size\=sm\]\:h-7[data-size=sm]{height:calc(var(--spacing) * 7)}.data-\[size\=sm\]\:h-\[14px\][data-size=sm]{height:14px}.data-\[size\=sm\]\:w-\[24px\][data-size=sm]{width:24px}.data-\[size\=sm\]\:max-w-xs[data-size=sm]{max-width:var(--container-xs)}.data-\[size\=sm\]\:rounded-\[min\(var\(--radius-md\)\,10px\)\][data-size=sm]{border-radius:min(var(--radius-md), 10px)}.data-\[size\=sm\]\:text-xs[data-size=sm]{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.data-\[size\=sm\]\:\[--card-spacing\:--spacing\(3\)\][data-size=sm]{--card-spacing:calc(var(--spacing) * 3)}.data-\[size\=sm\]\:has-data-\[slot\=card-footer\]\:pb-0[data-size=sm]:has([data-slot=card-footer]){padding-bottom:0}:is(.\*\:data-\[slot\=alert-description\]\:text-destructive\/90>*)[data-slot=alert-description]{color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){:is(.\*\:data-\[slot\=alert-description\]\:text-destructive\/90>*)[data-slot=alert-description]{color:color-mix(in oklab, var(--destructive) 90%, transparent)}}.data-\[slot\=checkbox-group\]\:gap-3[data-slot=checkbox-group]{gap:calc(var(--spacing) * 3)}:is(.\*\:data-\[slot\=field\]\:p-2\.5>*)[data-slot=field]{padding:calc(var(--spacing) * 2.5)}:is(.\*\:data-\[slot\=field-group\]\:gap-4>*)[data-slot=field-group]{gap:calc(var(--spacing) * 4)}:is(.\*\:data-\[slot\=field-label\]\:flex-auto>*)[data-slot=field-label]{flex:auto}:is(.\*\*\:data-\[slot\=kbd\]\:relative *)[data-slot=kbd]{position:relative}:is(.\*\*\:data-\[slot\=kbd\]\:isolate *)[data-slot=kbd]{isolation:isolate}:is(.\*\*\:data-\[slot\=kbd\]\:z-50 *)[data-slot=kbd]{z-index:50}:is(.\*\*\:data-\[slot\=kbd\]\:rounded-sm *)[data-slot=kbd]{border-radius:calc(var(--radius) * .6)}:is(.\*\:data-\[slot\=select-value\]\:line-clamp-1>*)[data-slot=select-value]{-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}:is(.\*\:data-\[slot\=select-value\]\:flex>*)[data-slot=select-value]{display:flex}:is(.\*\:data-\[slot\=select-value\]\:items-center>*)[data-slot=select-value]{align-items:center}:is(.\*\:data-\[slot\=select-value\]\:gap-1\.5>*)[data-slot=select-value]{gap:calc(var(--spacing) * 1.5)}.group-data-horizontal\/toggle-group\:data-\[spacing\=0\]\:first\:rounded-l-lg:is(:where(.group\/toggle-group):where([data-orientation=horizontal]) *)[data-spacing="0"]:first-child{border-top-left-radius:var(--radius);border-bottom-left-radius:var(--radius)}.group-data-vertical\/toggle-group\:data-\[spacing\=0\]\:first\:rounded-t-lg:is(:where(.group\/toggle-group):where([data-orientation=vertical]) *)[data-spacing="0"]:first-child{border-top-left-radius:var(--radius);border-top-right-radius:var(--radius)}.group-data-horizontal\/toggle-group\:data-\[spacing\=0\]\:last\:rounded-r-lg:is(:where(.group\/toggle-group):where([data-orientation=horizontal]) *)[data-spacing="0"]:last-child{border-top-right-radius:var(--radius);border-bottom-right-radius:var(--radius)}.group-data-vertical\/toggle-group\:data-\[spacing\=0\]\:last\:rounded-b-lg:is(:where(.group\/toggle-group):where([data-orientation=vertical]) *)[data-spacing="0"]:last-child{border-bottom-right-radius:var(--radius);border-bottom-left-radius:var(--radius)}.data-\[state\=delayed-open\]\:animate-in[data-state=delayed-open]{animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-\[state\=delayed-open\]\:fade-in-0[data-state=delayed-open]{--tw-enter-opacity:0}.data-\[state\=delayed-open\]\:zoom-in-95[data-state=delayed-open]{--tw-enter-scale:.95}.data-\[state\=on\]\:bg-muted[data-state=on]{background-color:var(--muted)}.data-\[variant\=destructive\]\:text-destructive[data-variant=destructive]{color:var(--destructive)}.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.data-\[variant\=destructive\]\:focus\:bg-destructive\/10[data-variant=destructive]:focus{background-color:color-mix(in oklab, var(--destructive) 10%, transparent)}}.data-\[variant\=destructive\]\:focus\:text-destructive[data-variant=destructive]:focus{color:var(--destructive)}.data-\[variant\=label\]\:text-sm[data-variant=label]{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.data-\[variant\=legend\]\:text-base[data-variant=legend]{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.data-\[variant\=line\]\:rounded-none[data-variant=line]{border-radius:0}.group-data-horizontal\/toggle-group\:data-\[spacing\=0\]\:data-\[variant\=outline\]\:border-l-0:is(:where(.group\/toggle-group):where([data-orientation=horizontal]) *)[data-spacing="0"][data-variant=outline]{border-left-style:var(--tw-border-style);border-left-width:0}.group-data-vertical\/toggle-group\:data-\[spacing\=0\]\:data-\[variant\=outline\]\:border-t-0:is(:where(.group\/toggle-group):where([data-orientation=vertical]) *)[data-spacing="0"][data-variant=outline]{border-top-style:var(--tw-border-style);border-top-width:0}.group-data-horizontal\/toggle-group\:data-\[spacing\=0\]\:data-\[variant\=outline\]\:first\:border-l:is(:where(.group\/toggle-group):where([data-orientation=horizontal]) *)[data-spacing="0"][data-variant=outline]:first-child{border-left-style:var(--tw-border-style);border-left-width:1px}.group-data-vertical\/toggle-group\:data-\[spacing\=0\]\:data-\[variant\=outline\]\:first\:border-t:is(:where(.group\/toggle-group):where([data-orientation=vertical]) *)[data-spacing="0"][data-variant=outline]:first-child{border-top-style:var(--tw-border-style);border-top-width:1px}.nth-last-2\:-mt-1:nth-last-child(2){margin-top:calc(var(--spacing) * -1)}@supports ((-webkit-backdrop-filter:var(--tw)) or (backdrop-filter:var(--tw))){.supports-backdrop-filter\:backdrop-blur-md{--tw-backdrop-blur:blur(var(--blur-md));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}.supports-backdrop-filter\:backdrop-blur-xs{--tw-backdrop-blur:blur(var(--blur-xs));-webkit-backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);backdrop-filter:var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,)}}@media (width>=40rem){.sm\:flex{display:flex}.sm\:w-36{width:calc(var(--spacing) * 36)}.sm\:w-auto{width:auto}.sm\:max-w-4xl{max-width:var(--container-4xl)}.sm\:max-w-\[75\%\]{max-width:75%}.sm\:max-w-lg{max-width:var(--container-lg)}.sm\:max-w-md{max-width:var(--container-md)}.sm\:max-w-sm{max-width:var(--container-sm)}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:justify-between{justify-content:space-between}.sm\:justify-end{justify-content:flex-end}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:row-span-2:is(:where(.group\/alert-dialog-content)[data-size=default] *){grid-row:span 2/span 2}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:place-items-start:is(:where(.group\/alert-dialog-content)[data-size=default] *){place-items:start}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:text-left:is(:where(.group\/alert-dialog-content)[data-size=default] *){text-align:left}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:group-has-data-\[slot\=alert-dialog-media\]\/alert-dialog-content\:col-start-2:is(:where(.group\/alert-dialog-content)[data-size=default] *):is(:where(.group\/alert-dialog-content):has([data-slot=alert-dialog-media]) *){grid-column-start:2}.sm\:group-data-\[size\=default\]\/alert-dialog-content\:has-data-\[slot\=alert-dialog-media\]\:grid-rows-\[auto_1fr\]:is(:where(.group\/alert-dialog-content)[data-size=default] *):has([data-slot=alert-dialog-media]){grid-template-rows:auto 1fr}.data-\[side\=left\]\:sm\:max-w-sm[data-side=left]{max-width:var(--container-sm)}.data-\[side\=right\]\:sm\:w-2\/3[data-side=right]{width:66.6667%}.data-\[side\=right\]\:sm\:max-w-none[data-side=right]{max-width:none}.data-\[side\=right\]\:sm\:max-w-sm[data-side=right],.data-\[size\=default\]\:sm\:max-w-sm[data-size=default]{max-width:var(--container-sm)}}@media (width>=48rem){.md\:block{display:block}.md\:flex{display:flex}.md\:text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.md\:text-pretty{text-wrap:pretty}.md\:opacity-0{opacity:0}.md\:peer-data-\[variant\=inset\]\:m-2:is(:where(.peer)[data-variant=inset]~*){margin:calc(var(--spacing) * 2)}.md\:peer-data-\[variant\=inset\]\:ml-0:is(:where(.peer)[data-variant=inset]~*){margin-left:0}.md\:peer-data-\[variant\=inset\]\:rounded-xl:is(:where(.peer)[data-variant=inset]~*){border-radius:calc(var(--radius) * 1.4)}.md\:peer-data-\[variant\=inset\]\:shadow-sm:is(:where(.peer)[data-variant=inset]~*){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.md\:peer-data-\[variant\=inset\]\:peer-data-\[state\=collapsed\]\:ml-2:is(:where(.peer)[data-variant=inset]~*):is(:where(.peer)[data-state=collapsed]~*){margin-left:calc(var(--spacing) * 2)}.md\:after\:hidden:after{content:var(--tw-content);display:none}}@media (width>=64rem){.lg\:max-w-2xl{max-width:var(--container-2xl)}}@container field-group (width>=28rem){.\@md\/field-group\:flex-row{flex-direction:row}.\@md\/field-group\:items-center{align-items:center}:is(.\@md\/field-group\:\*\:w-auto>*){width:auto}.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:items-start:has(>[data-slot=field-content]){align-items:flex-start}:is(.\@md\/field-group\:\*\:data-\[slot\=field-label\]\:flex-auto>*)[data-slot=field-label]{flex:auto}}.ltr\:-translate-x-1\/2:where(:not(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)),[dir=ltr],[dir=ltr] *),.rtl\:-translate-x-1\/2:where(:is(:lang(ae),:lang(ar),:lang(arc),:lang(bcc),:lang(bqi),:lang(ckb),:lang(dv),:lang(fa),:lang(glk),:lang(he),:lang(ku),:lang(mzn),:lang(nqo),:lang(pnb),:lang(ps),:lang(sd),:lang(ug),:lang(ur),:lang(yi)),[dir=rtl],[dir=rtl] *){--tw-translate-x:calc(calc(1 / 2 * 100%) * -1);translate:var(--tw-translate-x) var(--tw-translate-y)}.dark\:border-input:is(.dark *){border-color:var(--input)}.dark\:bg-destructive\/20:is(.dark *){background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-destructive\/20:is(.dark *){background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.dark\:bg-input\/30:is(.dark *){background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:bg-input\/30:is(.dark *){background-color:color-mix(in oklab, var(--input) 30%, transparent)}}.dark\:text-muted-foreground:is(.dark *){color:var(--muted-foreground)}.dark\:prose-invert:is(.dark *){--tw-prose-body:var(--tw-prose-invert-body);--tw-prose-headings:var(--tw-prose-invert-headings);--tw-prose-lead:var(--tw-prose-invert-lead);--tw-prose-links:var(--tw-prose-invert-links);--tw-prose-bold:var(--tw-prose-invert-bold);--tw-prose-counters:var(--tw-prose-invert-counters);--tw-prose-bullets:var(--tw-prose-invert-bullets);--tw-prose-hr:var(--tw-prose-invert-hr);--tw-prose-quotes:var(--tw-prose-invert-quotes);--tw-prose-quote-borders:var(--tw-prose-invert-quote-borders);--tw-prose-captions:var(--tw-prose-invert-captions);--tw-prose-kbd:var(--tw-prose-invert-kbd);--tw-prose-kbd-shadows:var(--tw-prose-invert-kbd-shadows);--tw-prose-code:var(--tw-prose-invert-code);--tw-prose-pre-code:var(--tw-prose-invert-pre-code);--tw-prose-pre-bg:var(--tw-prose-invert-pre-bg);--tw-prose-th-borders:var(--tw-prose-invert-th-borders);--tw-prose-td-borders:var(--tw-prose-invert-td-borders)}@media (hover:hover){.dark\:hover\:bg-destructive\/30:is(.dark *):hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-destructive\/30:is(.dark *):hover{background-color:color-mix(in oklab, var(--destructive) 30%, transparent)}}.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-input\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--input) 50%, transparent)}}.dark\:hover\:bg-muted\/50:is(.dark *):hover{background-color:var(--muted)}@supports (color:color-mix(in lab, red, red)){.dark\:hover\:bg-muted\/50:is(.dark *):hover{background-color:color-mix(in oklab, var(--muted) 50%, transparent)}}.dark\:hover\:text-foreground:is(.dark *):hover{color:var(--foreground)}}.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:focus-visible\:ring-destructive\/40:is(.dark *):focus-visible{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\:disabled\:bg-input\/80:is(.dark *):disabled{background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:disabled\:bg-input\/80:is(.dark *):disabled{background-color:color-mix(in oklab, var(--input) 80%, transparent)}}.dark\:has-data-checked\:border-primary\/20:is(.dark *):has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){border-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.dark\:has-data-checked\:border-primary\/20:is(.dark *):has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){border-color:color-mix(in oklab, var(--primary) 20%, transparent)}}.dark\:has-data-checked\:bg-primary\/10:is(.dark *):has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.dark\:has-data-checked\:bg-primary\/10:is(.dark *):has(:where([data-state=checked]),:where([data-checked]:not([data-checked=false]))){background-color:color-mix(in oklab, var(--primary) 10%, transparent)}}.dark\:aria-invalid\:border-destructive\/50:is(.dark *)[aria-invalid=true]{border-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:aria-invalid\:border-destructive\/50:is(.dark *)[aria-invalid=true]{border-color:color-mix(in oklab, var(--destructive) 50%, transparent)}}.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:aria-invalid\:ring-destructive\/40:is(.dark *)[aria-invalid=true]{--tw-ring-color:color-mix(in oklab, var(--destructive) 40%, transparent)}}.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20:is(.dark *)[data-variant=destructive]:focus{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.dark\:data-\[variant\=destructive\]\:focus\:bg-destructive\/20:is(.dark *)[data-variant=destructive]:focus{background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.prose-p\:my-\[0\.6em\] :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-block:.6em}.prose-p\:leading-\[1\.6\] :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){--tw-leading:1.6;line-height:1.6}.prose-blockquote\:my-\[0\.6em\] :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-block:.6em}.prose-code\:text-sm :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.prose-code\:font-normal :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal)}.prose-code\:before\:content-none :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before,.prose-code\:after\:content-none :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:var(--tw-content);--tw-content:none;content:none}.prose-pre\:my-\[0\.6em\] :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){margin-block:.6em}.prose-pre\:text-sm :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.prose-pre\:text-foreground :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--foreground)}.prose-ol\:my-\[0\.6em\] :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)),.prose-ul\:my-\[0\.6em\] :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-block:.6em}.prose-li\:my-0 :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-block:0}.prose-table\:my-\[0\.6em\] :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){margin-block:.6em}.data-open\:animate-in:where([data-state=open]),.data-open\:animate-in:where([data-open]:not([data-open=false])){animation:enter var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-open\:bg-accent:where([data-state=open]),.data-open\:bg-accent:where([data-open]:not([data-open=false])){background-color:var(--accent)}.data-open\:text-accent-foreground:where([data-state=open]),.data-open\:text-accent-foreground:where([data-open]:not([data-open=false])){color:var(--accent-foreground)}.data-open\:fade-in-0:where([data-state=open]),.data-open\:fade-in-0:where([data-open]:not([data-open=false])){--tw-enter-opacity:0}.data-open\:zoom-in-95:where([data-state=open]),.data-open\:zoom-in-95:where([data-open]:not([data-open=false])){--tw-enter-scale:.95}@media (hover:hover){:is(.data-open\:hover\:bg-sidebar-accent:where([data-state=open]),.data-open\:hover\:bg-sidebar-accent:where([data-open]:not([data-open=false]))):hover{background-color:var(--sidebar-accent)}:is(.data-open\:hover\:text-sidebar-accent-foreground:where([data-state=open]),.data-open\:hover\:text-sidebar-accent-foreground:where([data-open]:not([data-open=false]))):hover{color:var(--sidebar-accent-foreground)}}.data-closed\:animate-out:where([data-state=closed]),.data-closed\:animate-out:where([data-closed]:not([data-closed=false])){animation:exit var(--tw-animation-duration,var(--tw-duration,.15s))var(--tw-ease,ease)var(--tw-animation-delay,0s)var(--tw-animation-iteration-count,1)var(--tw-animation-direction,normal)var(--tw-animation-fill-mode,none)}.data-closed\:overflow-hidden:where([data-state=closed]),.data-closed\:overflow-hidden:where([data-closed]:not([data-closed=false])){overflow:hidden}.data-closed\:fade-out-0:where([data-state=closed]),.data-closed\:fade-out-0:where([data-closed]:not([data-closed=false])){--tw-exit-opacity:0}.data-closed\:zoom-out-95:where([data-state=closed]),.data-closed\:zoom-out-95:where([data-closed]:not([data-closed=false])){--tw-exit-scale:.95}.data-checked\:bg-primary:where([data-state=checked]),.data-checked\:bg-primary:where([data-checked]:not([data-checked=false])){background-color:var(--primary)}.group-data-\[size\=default\]\/switch\:data-checked\:translate-x-\[calc\(100\%-2px\)\]:is(:where(.group\/switch)[data-size=default] *):where([data-state=checked]),.group-data-\[size\=default\]\/switch\:data-checked\:translate-x-\[calc\(100\%-2px\)\]:is(:where(.group\/switch)[data-size=default] *):where([data-checked]:not([data-checked=false])),.group-data-\[size\=sm\]\/switch\:data-checked\:translate-x-\[calc\(100\%-2px\)\]:is(:where(.group\/switch)[data-size=sm] *):where([data-state=checked]),.group-data-\[size\=sm\]\/switch\:data-checked\:translate-x-\[calc\(100\%-2px\)\]:is(:where(.group\/switch)[data-size=sm] *):where([data-checked]:not([data-checked=false])){--tw-translate-x:calc(100% - 2px);translate:var(--tw-translate-x) var(--tw-translate-y)}.dark\:data-checked\:bg-primary-foreground:is(.dark *):where([data-state=checked]),.dark\:data-checked\:bg-primary-foreground:is(.dark *):where([data-checked]:not([data-checked=false])){background-color:var(--primary-foreground)}.data-unchecked\:bg-input:where([data-state=unchecked]),.data-unchecked\:bg-input:where([data-unchecked]:not([data-unchecked=false])){background-color:var(--input)}.group-data-\[size\=default\]\/switch\:data-unchecked\:translate-x-0:is(:where(.group\/switch)[data-size=default] *):where([data-state=unchecked]),.group-data-\[size\=default\]\/switch\:data-unchecked\:translate-x-0:is(:where(.group\/switch)[data-size=default] *):where([data-unchecked]:not([data-unchecked=false])),.group-data-\[size\=sm\]\/switch\:data-unchecked\:translate-x-0:is(:where(.group\/switch)[data-size=sm] *):where([data-state=unchecked]),.group-data-\[size\=sm\]\/switch\:data-unchecked\:translate-x-0:is(:where(.group\/switch)[data-size=sm] *):where([data-unchecked]:not([data-unchecked=false])){--tw-translate-x:0px;translate:var(--tw-translate-x) var(--tw-translate-y)}.dark\:data-unchecked\:bg-foreground:is(.dark *):where([data-state=unchecked]),.dark\:data-unchecked\:bg-foreground:is(.dark *):where([data-unchecked]:not([data-unchecked=false])){background-color:var(--foreground)}.dark\:data-unchecked\:bg-input\/80:is(.dark *):where([data-state=unchecked]),.dark\:data-unchecked\:bg-input\/80:is(.dark *):where([data-unchecked]:not([data-unchecked=false])){background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:data-unchecked\:bg-input\/80:is(.dark *):where([data-state=unchecked]),.dark\:data-unchecked\:bg-input\/80:is(.dark *):where([data-unchecked]:not([data-unchecked=false])){background-color:color-mix(in oklab, var(--input) 80%, transparent)}}.data-disabled\:pointer-events-none:where([data-disabled=true]),.data-disabled\:pointer-events-none:where([data-disabled]:not([data-disabled=false])){pointer-events:none}.data-disabled\:cursor-not-allowed:where([data-disabled=true]),.data-disabled\:cursor-not-allowed:where([data-disabled]:not([data-disabled=false])){cursor:not-allowed}.data-disabled\:opacity-50:where([data-disabled=true]),.data-disabled\:opacity-50:where([data-disabled]:not([data-disabled=false])){opacity:.5}.data-active\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_8\%\)\]:where([data-state=active]),.data-active\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_8\%\)\]:where([data-active]:not([data-active=false])){background-color:var(--sidebar-accent)}@supports (color:color-mix(in lab, red, red)){.data-active\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_8\%\)\]:where([data-state=active]),.data-active\:bg-\[color-mix\(in_oklch\,var\(--sidebar-accent\)\,var\(--foreground\)_8\%\)\]:where([data-active]:not([data-active=false])){background-color:color-mix(in oklch,var(--sidebar-accent),var(--foreground) 8%)}}.data-active\:bg-background:where([data-state=active]),.data-active\:bg-background:where([data-active]:not([data-active=false])){background-color:var(--background)}.data-active\:bg-sidebar-accent:where([data-state=active]),.data-active\:bg-sidebar-accent:where([data-active]:not([data-active=false])){background-color:var(--sidebar-accent)}.data-active\:font-medium:where([data-state=active]),.data-active\:font-medium:where([data-active]:not([data-active=false])){--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.data-active\:text-foreground:where([data-state=active]),.data-active\:text-foreground:where([data-active]:not([data-active=false])){color:var(--foreground)}.data-active\:text-sidebar-accent-foreground:where([data-state=active]),.data-active\:text-sidebar-accent-foreground:where([data-active]:not([data-active=false])){color:var(--sidebar-accent-foreground)}.group-data-\[variant\=default\]\/tabs-list\:data-active\:shadow-sm:is(:where(.group\/tabs-list)[data-variant=default] *):where([data-state=active]),.group-data-\[variant\=default\]\/tabs-list\:data-active\:shadow-sm:is(:where(.group\/tabs-list)[data-variant=default] *):where([data-active]:not([data-active=false])){--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.group-data-\[variant\=line\]\/tabs-list\:data-active\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-state=active]),.group-data-\[variant\=line\]\/tabs-list\:data-active\:bg-transparent:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])){background-color:#0000}.group-data-\[variant\=line\]\/tabs-list\:data-active\:shadow-none:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-state=active]),.group-data-\[variant\=line\]\/tabs-list\:data-active\:shadow-none:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])){--tw-shadow:0 0 #0000;box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}:is(.group-data-\[variant\=line\]\/tabs-list\:data-active\:after\:opacity-100:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-state=active]),.group-data-\[variant\=line\]\/tabs-list\:data-active\:after\:opacity-100:is(:where(.group\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false]))):after{content:var(--tw-content);opacity:1}.dark\:data-active\:border-input:is(.dark *):where([data-state=active]),.dark\:data-active\:border-input:is(.dark *):where([data-active]:not([data-active=false])){border-color:var(--input)}.dark\:data-active\:bg-input\/30:is(.dark *):where([data-state=active]),.dark\:data-active\:bg-input\/30:is(.dark *):where([data-active]:not([data-active=false])){background-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.dark\:data-active\:bg-input\/30:is(.dark *):where([data-state=active]),.dark\:data-active\:bg-input\/30:is(.dark *):where([data-active]:not([data-active=false])){background-color:color-mix(in oklab, var(--input) 30%, transparent)}}.dark\:data-active\:text-foreground:is(.dark *):where([data-state=active]),.dark\:data-active\:text-foreground:is(.dark *):where([data-active]:not([data-active=false])){color:var(--foreground)}.dark\:group-data-\[variant\=line\]\/tabs-list\:data-active\:border-transparent:is(.dark *):is(:where(.group\/tabs-list)[data-variant=line] *):where([data-state=active]),.dark\:group-data-\[variant\=line\]\/tabs-list\:data-active\:border-transparent:is(.dark *):is(:where(.group\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])){border-color:#0000}.dark\:group-data-\[variant\=line\]\/tabs-list\:data-active\:bg-transparent:is(.dark *):is(:where(.group\/tabs-list)[data-variant=line] *):where([data-state=active]),.dark\:group-data-\[variant\=line\]\/tabs-list\:data-active\:bg-transparent:is(.dark *):is(:where(.group\/tabs-list)[data-variant=line] *):where([data-active]:not([data-active=false])){background-color:#0000}.data-horizontal\:h-px:where([data-orientation=horizontal]){height:1px}.data-horizontal\:w-full:where([data-orientation=horizontal]){width:100%}.data-horizontal\:flex-col:where([data-orientation=horizontal]){flex-direction:column}.data-vertical\:w-px:where([data-orientation=vertical]){width:1px}.data-vertical\:flex-col:where([data-orientation=vertical]){flex-direction:column}.data-vertical\:items-stretch:where([data-orientation=vertical]){align-items:stretch}.data-vertical\:self-stretch:where([data-orientation=vertical]){align-self:stretch}.\[\&_\:not\(pre\)\>code\]\:rounded :not(pre)>code{border-radius:.25rem}.\[\&_\:not\(pre\)\>code\]\:bg-foreground\/10 :not(pre)>code{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.\[\&_\:not\(pre\)\>code\]\:bg-foreground\/10 :not(pre)>code{background-color:color-mix(in oklab, var(--foreground) 10%, transparent)}}.\[\&_\:not\(pre\)\>code\]\:px-1 :not(pre)>code{padding-inline:var(--spacing)}.\[\&_\:not\(pre\)\>code\]\:py-0\.5 :not(pre)>code{padding-block:calc(var(--spacing) * .5)}.dark\:\[\&_\:not\(pre\)\>code\]\:bg-foreground\/15:is(.dark *) :not(pre)>code{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.dark\:\[\&_\:not\(pre\)\>code\]\:bg-foreground\/15:is(.dark *) :not(pre)>code{background-color:color-mix(in oklab, var(--foreground) 15%, transparent)}}.\[\&_\[cmdk-group-heading\]\]\:px-2 [cmdk-group-heading]{padding-inline:calc(var(--spacing) * 2)}.\[\&_\[cmdk-group-heading\]\]\:py-1\.5 [cmdk-group-heading]{padding-block:calc(var(--spacing) * 1.5)}.\[\&_\[cmdk-group-heading\]\]\:text-xs [cmdk-group-heading]{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.\[\&_\[cmdk-group-heading\]\]\:font-medium [cmdk-group-heading]{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.\[\&_\[cmdk-group-heading\]\]\:text-muted-foreground [cmdk-group-heading]{color:var(--muted-foreground)}.\[\&_a\]\:underline a{text-decoration-line:underline}.\[\&_a\]\:underline-offset-3 a{text-underline-offset:3px}@media (hover:hover){.\[\&_a\]\:hover\:text-foreground a:hover{color:var(--foreground)}}.\[\&_p\:not\(\:last-child\)\]\:mb-4 p:not(:last-child){margin-bottom:calc(var(--spacing) * 4)}.\[\&_pre\]\:bg-foreground\/10\! pre{background-color:var(--foreground)!important}@supports (color:color-mix(in lab, red, red)){.\[\&_pre\]\:bg-foreground\/10\! pre{background-color:color-mix(in oklab, var(--foreground) 10%, transparent)!important}}.dark\:\[\&_pre\]\:bg-foreground\/15\!:is(.dark *) pre{background-color:var(--foreground)!important}@supports (color:color-mix(in lab, red, red)){.dark\:\[\&_pre\]\:bg-foreground\/15\!:is(.dark *) pre{background-color:color-mix(in oklab, var(--foreground) 15%, transparent)!important}}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:size-4 svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3 svg:not([class*=size-]){width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-3\.5 svg:not([class*=size-]){width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\[\&_svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4 svg:not([class*=size-]){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&_table\]\:block table{display:block}.\[\&_table\]\:\[scrollbar-width\:thin\] table{scrollbar-width:thin}.\[\&_table\]\:overflow-x-auto table{overflow-x:auto}.\[\&_table\:\:-webkit-scrollbar\]\:h-1\.5 table::-webkit-scrollbar{height:calc(var(--spacing) * 1.5)}.\[\&_table\:\:-webkit-scrollbar-thumb\]\:rounded-full table::-webkit-scrollbar-thumb{border-radius:2147483647px}.\[\&_table\:\:-webkit-scrollbar-thumb\]\:bg-foreground\/25 table::-webkit-scrollbar-thumb{background-color:var(--foreground)}@supports (color:color-mix(in lab, red, red)){.\[\&_table\:\:-webkit-scrollbar-thumb\]\:bg-foreground\/25 table::-webkit-scrollbar-thumb{background-color:color-mix(in oklab, var(--foreground) 25%, transparent)}}.\[\.border-b\]\:pb-\(--card-spacing\).border-b{padding-bottom:var(--card-spacing)}:is(.\*\:\[a\]\:underline>*):is(a){text-decoration-line:underline}:is(.\*\:\[a\]\:underline-offset-3>*):is(a){text-underline-offset:3px}@media (hover:hover){.\[a\]\:hover\:bg-destructive\/20:is(a):hover{background-color:var(--destructive)}@supports (color:color-mix(in lab, red, red)){.\[a\]\:hover\:bg-destructive\/20:is(a):hover{background-color:color-mix(in oklab, var(--destructive) 20%, transparent)}}.\[a\]\:hover\:bg-muted:is(a):hover{background-color:var(--muted)}.\[a\]\:hover\:bg-primary\/80:is(a):hover{background-color:var(--primary)}@supports (color:color-mix(in lab, red, red)){.\[a\]\:hover\:bg-primary\/80:is(a):hover{background-color:color-mix(in oklab, var(--primary) 80%, transparent)}}.\[a\]\:hover\:bg-secondary\/80:is(a):hover{background-color:var(--secondary)}@supports (color:color-mix(in lab, red, red)){.\[a\]\:hover\:bg-secondary\/80:is(a):hover{background-color:color-mix(in oklab, var(--secondary) 80%, transparent)}}.\[a\]\:hover\:text-muted-foreground:is(a):hover{color:var(--muted-foreground)}:is(.\*\:\[a\]\:hover\:text-foreground>*):is(a):hover{color:var(--foreground)}}:is(.\*\:\[img\:first-child\]\:rounded-t-xl>*):is(img:first-child){border-top-left-radius:calc(var(--radius) * 1.4);border-top-right-radius:calc(var(--radius) * 1.4)}:is(.\*\:\[img\:last-child\]\:rounded-b-xl>*):is(img:last-child){border-bottom-right-radius:calc(var(--radius) * 1.4);border-bottom-left-radius:calc(var(--radius) * 1.4)}:is(.\*\:\[span\]\:last\:flex>*):is(span):last-child{display:flex}:is(.\*\:\[span\]\:last\:items-center>*):is(span):last-child{align-items:center}:is(.\*\:\[span\]\:last\:gap-2>*):is(span):last-child{gap:calc(var(--spacing) * 2)}:is(.\*\:\[svg\]\:row-span-2>*):is(svg){grid-row:span 2/span 2}:is(.\*\:\[svg\]\:translate-y-0\.5>*):is(svg){--tw-translate-y:calc(var(--spacing) * .5);translate:var(--tw-translate-x) var(--tw-translate-y)}:is(.\*\:\[svg\]\:text-current>*):is(svg){color:currentColor}:is(.data-\[variant\=destructive\]\:\*\:\[svg\]\:text-destructive[data-variant=destructive]>*):is(svg){color:var(--destructive)}:is(.\*\:\[svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-4>*):is(svg:not([class*=size-])){width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}:is(.\*\:\[svg\:not\(\[class\*\=\'size-\'\]\)\]\:size-6>*):is(svg:not([class*=size-])){width:calc(var(--spacing) * 6);height:calc(var(--spacing) * 6)}.\[\&\>\*\]\:shrink-0>*{flex-shrink:0}.\[\&\>\.sr-only\]\:w-auto>.sr-only{width:auto}:is(.has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content])>[role=checkbox],.has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content]) [role=radio]){margin-top:1px}@container field-group (width>=28rem){:is(.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content])>[role=checkbox],.\@md\/field-group\:has-\[\>\[data-slot\=field-content\]\]\:\[\&\>\[role\=checkbox\]\,\[role\=radio\]\]\:mt-px:has(>[data-slot=field-content]) [role=radio]){margin-top:1px}}.\[\&\>a\]\:underline>a{text-decoration-line:underline}.\[\&\>a\]\:underline-offset-4>a{text-underline-offset:4px}.\[\&\>a\:hover\]\:text-primary>a:hover{color:var(--primary)}.\[\&\>button\]\:hidden>button{display:none}.\[\&\>span\:last-child\]\:truncate>span:last-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.\[\&\>svg\]\:pointer-events-none>svg{pointer-events:none}.\[\&\>svg\]\:size-3\!>svg{width:calc(var(--spacing) * 3)!important;height:calc(var(--spacing) * 3)!important}.\[\&\>svg\]\:size-3\.5>svg{width:calc(var(--spacing) * 3.5);height:calc(var(--spacing) * 3.5)}.\[\&\>svg\]\:size-4>svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}.\[\&\>svg\]\:shrink-0>svg{flex-shrink:0}.\[\&\>svg\]\:text-sidebar-accent-foreground>svg{color:var(--sidebar-accent-foreground)}[data-side=left][data-collapsible=offcanvas] .\[\[data-side\=left\]\[data-collapsible\=offcanvas\]_\&\]\:-right-2{right:calc(var(--spacing) * -2)}[data-side=left][data-state=collapsed] .\[\[data-side\=left\]\[data-state\=collapsed\]_\&\]\:cursor-e-resize{cursor:e-resize}[data-side=right][data-collapsible=offcanvas] .\[\[data-side\=right\]\[data-collapsible\=offcanvas\]_\&\]\:-left-2{left:calc(var(--spacing) * -2)}[data-side=right][data-state=collapsed] .\[\[data-side\=right\]\[data-state\=collapsed\]_\&\]\:cursor-w-resize{cursor:w-resize}[data-variant=legend]+.\[\[data-variant\=legend\]\+\&\]\:-mt-1\.5{margin-top:calc(var(--spacing) * -1.5)}.thin-scrollbar{scrollbar-width:thin;scrollbar-color:var(--color-ring) transparent}.thin-scrollbar::-webkit-scrollbar{width:8px;height:8px}.thin-scrollbar::-webkit-scrollbar-track{background:0 0}.thin-scrollbar::-webkit-scrollbar-thumb{background-color:var(--color-ring);border-radius:9999px}.no-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.no-scrollbar::-webkit-scrollbar{display:none}}@property --tw-animation-delay{syntax:"*";inherits:false;initial-value:0s}@property --tw-animation-direction{syntax:"*";inherits:false;initial-value:normal}@property --tw-animation-duration{syntax:"*";inherits:false}@property --tw-animation-fill-mode{syntax:"*";inherits:false;initial-value:none}@property --tw-animation-iteration-count{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-enter-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-enter-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-blur{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-opacity{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-rotate{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-scale{syntax:"*";inherits:false;initial-value:1}@property --tw-exit-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-exit-translate-y{syntax:"*";inherits:false;initial-value:0}@property --scroll-fade-t{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-b{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-s{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-e{syntax:"<length-percentage>";inherits:false;initial-value:0}@property --scroll-fade-mask{syntax:"*";inherits:false}@property --shimmer-angle{syntax:"<angle>";inherits:true;initial-value:20deg}@property --shimmer-image{syntax:"*";inherits:false}@property --shimmer-text-fill{syntax:"*";inherits:false}@media (prefers-reduced-motion:reduce){.shimmer{-webkit-text-fill-color:currentColor;background-image:none;animation:none}}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,d09GMgABAAAAAHLYABQAAAABAQgAAHJiAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGoYFG4GfHhyHTD9IVkFSh1s/TVZBUjwGYD9TVEFUgTgAhRAvfhEICvZo3iMLhEIAMIGoaAE2AiQDiQAEIAWIGgeLSQwHGyLxFWxXY6CewOalNZfPMyrYrmbcDkTU+r1qNsKGjQMg3hwT/X9SUhlDE9iTFqA63e4PtWQjlBo5goYcMo0ZqbViQ0jvqjjmPNf7mgM3sj6o9UXp+5FQOzPJbOE3Jx5hd/ytpmpjm0pYR9BzruG68ZnXxBVYEMSHMTAwnWpYTZ0wG3f74drkjkO9/6wik1904hQkUpdYDWmJLZFY0pNBEcb7IndF19PSj1kEuE38iIQcX4SK1qgisnr6gFERPc4+OgJHpJCEZJaAxtzpl8/CAc8Rzfk/exe9hCSEEEII4fAAIZilNJgFLUVSVAJFvJRHwV/VaP29R8UpddoiNaXiVOXz+nnW8vzTuOd/7TP3wUxgI76kJCdlOHSryZ2cIZquptBglVCzlLbxtmnUViK7SXY3ySbepI23Th21In7G/T/8PXD3nBn2TjlRgXtD5X9y8/sLj1BKDapUxtT7bcyW//zF1njpmb9ZiFmfWWVarEkKASLEBdHC8/y9O39WtzE54I1pQBMnULgfMHXC/yed9r1BDQhtGTCKA5+y+w8Yu+u5KTKSj4v2ymuaz5wFYG/AcWQSNAC4Gc+jnNqMoTBjlTBQYlhwJCcyUAFAfd3JRQxiCQASnZhHqyFanw2SSW3yoCX0NbQNST3t3wtitjLDMjrC5AKDqIA84tpO+X06q19d3aKW2DLteMgws7s+RPtdEF0YdkmaA4IIKEPg+LL735x+fyVLjuNAgT8DDtDyE8VJ5/zdX+xoswDARzSdN21KaWKzLNlCv34uhbKnT9eI6JKKPh395+QWaAu0BXoHtIXfybyEh3836/8kJIGEQAIRQoAECxKklEmpQGl9rGsus5371L9E9JqP7HZnzdqZmk8LlCIJoX/k9iCCRPK2rIWh3PYL4J+AWGsmndQZSiFWlgOPgZDfTBA9mlsoDTKxz8xQv/38r2Up7Xf/esMojtKulKeklnaUQvEVkpgOEEUkKHYzvaO5v32jkPtSnpPkmC+vzpmFSM1ChCEkZmZqQ1ED6jKABowZGnBonv//5Ts7529ae2sUMo7ILxzFmpQ23KS7P9QiUaXLCBVnQXUjMR6jHCDqZv81T3ETF1IgRjKJJB6jsPi8Nst2/GZ9wAogFg0Avz5FhfaXZNmjGdM4u2Ovj9m5AFmWtePzAVIVIKiqtCnTXV2t97qtAh1g0Vb5e1PN9j8EYcVLSyr9y//yvwzHWjacAi9Url26i4tdgNhdENICJO8Wq7QAeeeF4gdFn0BS8hHgRVKekUNMdEofIH3zSZ2sZTgfpHMIoWhCyJ2L0k2fq9pFpXFRea4oO5eRnseb+MCsd5v0rcACzGRv+jFSDL5rR3UVmRIi8/WOe9fUUvNIKU12j6zTMTxCIATCUNraqc9r6/omVq3JfU/2LaGEQYYiEoJIENcL3e/m91MrGjK6RrIPCSoSZQkEqSUm9d3XvQOzYiqtAy27c6EL4OPV3wvhCgBLAZ8AzmKjCObOihAGadQMEAWeVGgw8LQnvyyX5FkeJYJ28yAgeri/vhBImAZti/nf7CJ/usjUXBR6sFgmIo65HKSrbQ4BKwHpaBFUHkZoocuC6HIR7791yCyoIEMB/BLgHMA+wHoIUIDAf9gqBByCQYDnn/XrBzD/O7gICECv+OSXH37/oxc+evGj73/+zW8/+S7Nt6adaVIcEx+U7pSelL/zy7u/PqQt6yn9Gv16/Q79PmPOWDSWjWtMN06aaXPeituIHbfn7AXnJudW53bnbuce5wkX2Q/3V/eUffvB6n58v7hfqtjHOxW5EqykKn2V/ip22DscHG5Vhaq3qla1GjZ5dC1Qk2tKLX1gO3rcQbj+ZWvailucozRIw7SfrtelQ7VRa8jMn4WzT9yE5t35SjPZzLZaEi/Iwl88tn2+T5fb7by+OWCaZMNsXY/r43dlQ+1sjtJRY7XFBSme08lAz4WnUReneIGXOMMFFljhyCK8gjyMhSQjmEbIU9AY6dIlzShlFtN87E/81J/5mU/FzUQrmAVZIISPrxB7yUZST5pJO+mG4zAN52EWFiFTllKqQqwTO/ahfXvSnPT76VC5AUU87a+nfHZt3pxPrrOsJLgEIcDFG7lwf2tccvQTuBYACKDzvG7ablGymjetVNpiyi2hbMcNBVFKqMABAATg70VLW0wZVxVWAlmAUF5kCADnUQEOHqWahWkqYG7/a8tRdlwUmQBWZ9ZXlID43IrcYhBflFmlBSsU8E4Z40S9e97iwlsrtCDreF0gubh4fx8QAIKGLg4FvSio1PWEALOnvaKu9ATayqQSofhoeBACBg15iBU0JAs2hAJXV9fgIWBYNwJheiOAUHhFAhVH1sydmDMy41JSr+zsJRlVf6gY0JA2lkFDCGCjSKFiq/nDeGjwYmALWEcAt6sWsHlgRNWqVvw98jV9EDt/t6dJ4t38UWbZvNuC7zRW2/yOyRe4u3cTvMM85eBusFEccQn2k0cMrF+2bUoEc0Q0Cw35AJgLWuBptqK8NQxQJ79YEpIozULEpYRlx2qsRXMKCGV3QHai2S0OIuvP79huwNbY9k24R9KWqqkMEM061+nLuWQQ+Rm4LD/yqVz8plpK2c6Z7My6LEnXwN+csfSmq6E/Tg+OOoqCRcRH5wXQj76iMnJzL3liryh+gbvj6VbX2GODvYalBhta1eus2XcVyYCpygCPfQYhdpwFmPobyf0m0Q5fQFD2zTkYvxXNiI3Q6YbYubiiP79YtvIZGNag1Yzfw25N44dILrWOE/tGy07v+I7wtizXnozyygvx+XZSeGAY+aRs0Ynvt7pxlYldax4X5FlrG9ti3nrGhgxcWjSWT2mo37fRC6+vHq3cNEk9rWHcOUZi63kT9BnlQEKXX/YbzbHSkOe8du6C6aWTzdruMYlJOzhSYteOXvh3LrehC91O2A2R54sy2nJASFgckLmLiZqYZHoE3M551aqGndjctE57MNyLwb1Fawgyk8FeSauiw2xI7LQqYOaw6Z1QRvjO43xSsKfTaX7INVZ2SiQVWHJy2iTsVALOnv/6TlGOyNy6hNlwLTD8Z9ycKHdGvXW/3b5E9MBzDHoV/OxCnfqhwdWAu359A+AywAnAXsBaq50rhdh2RcwWcvtzgVIXcoBSbLaysi1L6dmTBP/S85VPLebSYKs6Pdh8tH4QvB3sApaqm6yJIDhz8B/rPhVTBf+52l19taC8+esGK1ZEoSUvixIU5WYbbDIvQuRKw/9mq7csbalqSiGGo9NBI48FCUopaNIXEhoXw138VzY86FYMucw285OptCEtqlyLWwukwGQNP5O8LzB3y32AUdjLUjRZWp8ZW3M1fb/czl606sIua1m64BrEsuEoidz0rjJA6/IGmTQqxkk7fH3Gr5oz3YEwT9v+jOhj/q2133BJDQg0R9WGeBLX2G5AGRFtAoRoh4eXaZdFhSI8JbHRocrBuzirxt9kXBVQZgiWpkGf2mu0uvMCjh20D/ssaczOzCZ4VW+wD2fc9SKmUyGkqbP4YC6k2goCp+MzAo4Lt32RWJiAqP8DqEaho3qyn6Cb5TR6pUKILZNAaqj1XJA6yOmhUhwRMWT/hP2vjGHAR9fML4cNG0kSCOZtzH9sYwB+KPe/rvdAE5itjuNwyb+ubUQWFj7flxVrSSYVGN0t27wtF3uCy9FcHWW++jEY8Fb5lvXJbbqUDLX3/P46HusWhwuM1t7424JxnZFwTe4341jYJbKJe7VN+OQ4Jvvq8wSXRAucgEN/t2pvr1+CcroGRq7VSUKnMU+X6l7dL6xitWr7GYTKP6m5P7l5KF5dF+wOx9ewPAD9HCw2sOG4j2pvMdD6jhG7HHhaL2xagjYzwTotcqvkJ5hDAdUYnuVhr/Viuo/do6cRrmptPFKBNc+qbXqeJepuWNYf37sd/2RMAItyJmV62GDjqh0u1dTW4h60pdVyb+75Qcor8mV2FXn8faldbosJTJT5mEPQnen8qeMs7Fa6QfdjHgvg1ZbHNP/kLDhG+RVeN1Oo5629XL4z6JZrDcegt5o+kt+0Soh7jL5r+7snuE7qZQtVm8uXM5Yh6un2HIx5OILHs9/GYu3QG/4xyE6redq069CpS7cevY474aRThgwbc94Fl113x133PfTIE89MeOO9KX/52z/+9Z8ffgoKwhAOiO6NALH/0e4smmndCW4eEWojYu3EUAfR00n4ugium4j0EF29Up+TRF+LmCEiyGlCcZbQDRPPJuAsmYbzZBLeJTPwPpmHj+US/2IEvgJJwtdkAr4hSZglEzBHELhI4nCJIDAv450Wx2EdZAq2SAoae3cABn8/NmbzNmdTttNmbLftuDoLerDH7Al73o4VU/AReWkAeznOOzpOGVOudsJO2pJm8vvqQhLCOEAtNSsjFCALMYBEU7dN+t1EY0R0oU5vIHWXObUdi5iq5Jpy/yp/CP1kTiVMt1wNzk8JkaMAEsgkAkRAQ2p2MD0UIAcqQKKrQ7ffnHGIERzuOgX9IgW0juXZQhGNRwuKe+gic9yPXG8HnOveYhkz36GCHrPiUCqrrpXW1i4aGqTYfSSUUH9gBtKvyk+pu6yjTW3bG7mshTEtVemEZSuCOo0CAyrDMKI1/N1QvnRc0NB8USn7tLRhrnrOmL8lk0oK0dFBZ5TBRXOdn0+yBP95o+fIhLiAtksPzdS6ngKbOdKRcZmnXOdaHXcuF2j68D4nj1iMgyapoQOvujO41Gxdjk5O4mR/Z2Qn7khkO8bvbqTKZU156rI2+lxl+DILdOdJ+TftWubGm6e1rpd3FQhqjgGdgcRLpSlo5lPDkdaypvbK206RbLwXO2et96Qd0U+QuC8k6RqKkXFzVsToa/MioW4uDcF1nZgYhbCo9bcs11Glipm3bVy58p42vIziqHNqZLDuD6rbS5o5jwQkQm4R97iMCvIOBCzUGkxI4f0zRt+f8ESIvRjTkyn/+FGovyoydZ9vAx+OeFVm+H5A9diI46htvsJK/eRpygPEPKK2VGtvSKCjvOotlMsI1J0jozpfaZ37G19ya1wj+1xJjaafAJwT1kdVKsy6jg/J9kAXSjiDbr7BKFxz5jJpajawGoorCce5f2bOCq8YGNnbAz0q2c+rla3hEdQqXGU0tT3Ztwm1QHMsY051861utJY5Mnm17QovFnTmRVCHDp1RJciOzlVYyxbtRxB4RdI+K3R2DsmqhDepv0jNkvAK6Iww4BIujfT7HqtA99av+RBeN+odHZqnxW5gRwlL4xGqr22Z2eBpcp7jLcwAbDBGo+soapNJg++5l9mH5xLD4jbaaZGCUq+9pMp3G7YvlzeaOYKLgISPfISwRysrsj4F1z73hyxzNABOjYken+yiDj5YnurFBWI02F61pRuf0GAESga1QgdeC0upyUWMIrjhRw2QJZyXIfA0ptobkw/rYsYcX2kUjwEuzm0WBic6iuXz3vWYmBie0oALBc5RjNgLvhkIHwR7bDyeNDNekUmpWYvLAhzF+3hK6Lj2uGcmk3xxKqCuIYOBTYBL7VZljrMl8p7zOVk/xwVWEhKq7M0Rj5Tel6LwJDESWGES4DhXsC1+FVAbSaj3L5YiYuohdJalyYWRS07cIAEG9hnMZz2OxSHSaP87LZU6f9f0aGWMa4bwrVk1gxNBWeg9bmN+yLkthL/EiGh01n5HXZr4BUbVHpvtpDivtb40D//FHIqTYeDRZnMQs2xsKx7nYsQwhcExKWEnHDPejyPWp6HL1ei7nqQFVYuLNh4jInTm85tVr9X6xjq/rC/ZV2X0aPWQ/pbxUWr0ES8d4ODau2d9dcU17qmaBR141Z3ABZDgCKDrKT1LeEfCuxAfTjObB5+mlyZ45t8xkItazLxzb/7mdbGWjTFhm/WsT9cQ+njXJMje1a8GCE4F8FgAZkLFeG/6bBZjXhjq4qdrKnQuSk9eMdNKf9BtRfW/M5loPAgG7UicUls1J7OMDi+afUcjOJ0pedfOIz5S3DOXfKO1m4xk7N+4zZ6cdEYEtcBQOsFLXyiXmv5Nz0OGfbo5MUc4VnBQowsij+KnrMWkZNFkvOusfaHBKbpunmwXdJrLpkcGf9yXDles6xbjeQQF1hlurdgl/j+3OY8axbkuvTuld6G7c04VO2ZZ3cUF1Do6kWDT5iuhBNAxV6/u0jWtNXfocZqjcT3iPqyGWmJ54bpRFea3ZEQfkq0b9ybqq3dhZfBRriuhMcVKeLslCzR0ur93Vnrw4I1+snvs5del/7W/UR7bMaetU2x1BpB4/0n4mio8RmjjAKNWMebaC3kMvb9K6+vKnAufB296rlBc20KnBxosjW2IHn1F9Fy5oXtne4400lGrcODR2ncPGVgzqBU68NKskC18ZqlkDbR4odZ2CAfw6wi/1QB66Yd4wujb7PsJ1IzXORoe4ntOucz1Du8I3dJDnzVw6c4Z9tk7eub/tJWiozCOfK1gZ6SwfsX+a/vOuVI+AGIa81fNFK5VXodjdWtmPf2tUX+dhcq/zsQ08PW1oS14YKVBxi2toT20Od79BFjrq1eNpBLWQrqPeArURFYg42gE6sWvMB5de03hyvBfOj7/ls39qYeB8N/zcSvBzYMWhtZfn7o5598XqtJvt9DNqsr/kOiFKB19/eBQIgvg598LTeotJ9Hb/DVH9tpbC6QWe38Esgn0DOU/XpyT/oS8VKJX1SFExdaHcwcHUlK8T4t+fKtecx03pNvwPlO1BcamFzrvskWuTy93xz0rPJhe7ZEJa7xpG73/+iZTwWEzzO83mp035rQLOdOgj8JyaowooDWqzXCqGsyWUafJAsN1r53gcp1sM+p9klurkweeuivfY3eyfgQIgIeoCsENS7wxmClUglY2icpp6+Cg2joC/sMVBY11BVQ6LmNb6rfwKq/cs8zt2gH8rjpQzzOfZBU1dPW/5VrWxVrH3O89kOWZJ+qcc0qF87RL4rKrKqd9z6NLXHMJc6yPjWJTN4r/iFM80GJXBbThkmpLAzsdvRBGFUPFPVpvniab7M2SLcapxx5FaEnrZUCaZT3MQVRtNgvYWg0k18KL6P9HJECYaAgEhIUNp0MHwsGB4xJA9OnDCRlBJIyJSJlgIZlBzNnC2ZFD7NnDKSggDhzgHDnicOKGwZ0HNk+edHnxpsOHDyGlABSBAiFBomDU1PiiRcPEmAlJkkIgVSpEQ0PfLOmoMuTDFChAVagQUqQIplgxqhIlMKVKIVpaXGUq0VWpxlSjhp5a9ZgaNDDQaA6+Zs245moh1aqV2DzzOGjTxkW7ds46dJDr1MlOly5i3bo56dHDVq9eCsedwHPSKYaGDOE57TQjZ51laswYa+edZ+mCC2QuusjEJZeQLrvM3g03OLrjLp577jF3330WHnjA3EMPWXjkEYnHHjP2xBMSTz1l7JkJZt54w8p779mYMsXVX8GBgImFMNAwMdERCDpY2Hh06MBxcBjj0kMnIGBDnz6CkBGMhDEmKSkOEyaESGYw5mzgbNmis2NHSq6Jq/XoXs3EwY3BM39UIfuqGhgFzcWgiIURoBZFeqj4chNBGAQYMVzgZqSpYeYUNRExJ2HGnRsHCi6c2ZPQJy59J2QVuwW66Sr6WSYsWJajQ5YT0C+Z3CUTGskUyZQ1W3Jm32NBFAIBS3PJc/Lpl9ef1lEzNlu2/L0WFYokQviYCFw8uvj02FJwpJaqWKMz/yt2CeP+UBwe8G3MHzcCOfa/aWi7j8AoRr5AV2r7wdG8jJQ/PuqGiMnbywX1UYPgJESoMOEiRIoSLUOmLNly5MqTr0jJiNnMpo0jbiPiXQS3gXADAAAAALCycXuyAAd6084t/bMQBdCVSxPImfy/+o4SBP9vxzGOjcLxeRKpZEnKfBr3fkMeS/8/l8Y0DXNwOEUNMSJapbeBuTaGBPvrfNX8F/m+w1GFvvWGIBJStvslHC1we9zllP1+KZcOiQycKY7yI9pRcRHLf6/vxOz7aOjZYUzyxtTjlJECmJOzVi7+nTjz5tJyqDtLW1YKFcci5VUouKgwPxP64zCWgGYh8bWYS6pLKyD8sm4GgVfhwNc7/zJwMdFR4NGt2lyWTh6iMovRt+dXRuxpjsC77nnGZvultSrlL+Sdh4YNsELBgMBNtjVL0gbwh1CQRHgIz2EuewHfJJhXcdUPL1H05KtwQhwMx2B+OMrTkTABqjZ3vV44gRBzjGZD1xKrcaOqJVZN68fPBOw8dSsi+/O0zsEgv1oOaPj+FBogrBBwCB+ikLgLYZdX2AA4SMr57kZ/wGv7q1UPqILzwveeEYIiKUx/x4jt6PcjxlJnCpqQiWgsTIUsJxFTBPEEyWyiTBQXP9UCPVNCNLSKMxybrSMwzkVMKgsDOWlIUzsovbwHFWZRikzTE8Tq5GLULQhPoKWgAdlYSdbwVsywW5tA4xPbGkBJEg0zyR/jT7Ma5DyAHHdhufErrwpJI+75thxcNMb8EJP13tJLMDsiqPyhPPlzLg9y87iYwE1PZ6np8IfxCBscGsbK8uYIMWttiGj5xywAlwsgJqV/Bh/uAsqj0xYh1PJge9nCWUvEhjwm+Kz+mTLDQHREQzjY0pMolZMqFTQyaClUKlc/+DvPJDdbmSSFEqQplkC9Pld0GILjaqKa9yLZMGAeBhgFSH4ICTc3RSBQQh8SKWoABtzAWmUTDEEOtvrCQkxwvJKnUVmqGdoaAihyNL/nDGJBJwhMML9ZhFI0SeegVh1d8eI+S+drmUqJDXiG7oqaruSr/a6YppEp4ssQAp4LDrgWsA2w/A/+nvHNzLvAae7Nh+14xMJHDT+h62lHn9f/Dux8D65+CCOflfHncPSr/0v3ZxwBzwEC8JZdHTXRbe56zHt44Aj+9Phx51/df6NOD4/YRnVj2NjQueyFJVfMV/uvtV+zXgtcZ35QdUN6S3/LeAu/rRznjgvHpeO6O+DTsLtVd/l3hXc9d4P3Ku/p7ssfFH8FP3Q+an4UfeJ90v+08Dv2s2vPGp9xn41NMH+onmiccE5MPi/8uexl9UvpS/lL02vpa/1rw2vza+i1+3XP69E38AjOD8/GtHu1N3670fjWf+bNW82Hzc/++7D9uHO/89KF8Yv5/YmLN14Sq6XqyctTV45due7KXVfFg56DE9eI9DUNf6PUmLpx1e2+drk9pCf0Qf3+e+GPBh4ClpNRDgwGoG+e5T/32vxv8/0Xf6/S/ohuJ+vGjqN1sAsAPHxeftXaYA0wfwErM6g4HW5h0EcCpYLcBRXk7iQBXB5fvafgHF/G5GlwuyPu8jG75oiASBhCLuTjH///ArQtziGBlwFkYkYBNiOgtfZ8gOUIwHbYtbcXVCEA9I9mMeK+rwIkOU+hEmQoUacNAuBkckC6YirnNkxX/hzbEcsiIM9yG2Y76VbMTdJ150tWLCyydXG13XFBsFgDPaRCerlXYyulmr7STiFRSDjw0mynn+bIyficymhqoSqCU3Ambr5ZQIpJKWlGWpEupDcZSO5cNTNdvLp0wP/pwGaOvG20uzgSdxLgDWecokeKSMmFO5NeXVcY/yGc9InA/2fSkHn+j3kA/33fMQDfP97lnlRZsoGzbz6pYkeZc4AoAdd5agqADzFo9V4eCO92AbcmfeO0Z875MxR4Y8J1N4z5ywmXHXfeSaf85D8/nPUaQmDRwSWgT8iAhJQJkilzduwpOHDkxJ0HT1583HbBeI7BtWRQChQkRBi1aDFiJUmlMUuaDAWKFCuhVaZKtRq1Gtz01a1EYNAZ//N/k6Z88y5LvDfXo0ThQ67iUwA+tS+G/OKtkVzNHi0e22mHXYbRYCgYqOiY2PTw6OIzImJIjMOMNQuWbFj5h4wbZy5ceZMrpTKNL3/T+QkQLEq4CJFmipdghlDpcmTKkifbv3JVKjdbhTqF6tnKz1zE44GH7rjnvrsQYDEMIsBEdCEJctSXvvbyzWFnMeESO0WhCuw0RepFnzMUi492lhL6V8A5SrXOvnaeZBfCLtBM7RzYRVqoF4tdsgl1Z9F5cL65Rf1nDyw8F1h+JMCwEqhXAaDB+riX8HIz6UgSoaq86q6GxqUyATQaHhsLoGk6alKN1cjE1a2cukzw42JQ02px9aXmOnHy0evjUSUjqj52pav6VMUaFpIWr0O5HGXSUTP19KTUNW/is9SXsU6qkSSboV1kcHkiAgqi61MbEUY1JmNiyPPNsbG2WeXOTZJ/xo2goIleZCB0BVqtjrvZqsCl82v22TVlGu9yyCPII0vMYgfcrH337LZTKVImpwPRer2U+1XgI1dSmJ1CczXN4jivNxEhQj/2I54yfroPzYnNxm5na40dwxAw3iAFXs8ZwnJprelWCtPQH9M+s7lPcs+qalZJcnZRLgbpjEUSGbc52qXdlkmUabPZA21JpapONB7sksg+KnQf32eV4R8VX/veHaFDawevYZvzSQWExSavMyAAH/PAgGYvpdnPmRkS/KZOq0ZmSeXzLuggInw4JuKiv7nl34tZKZZR5MJv5OY/t6yWJH8XoBIuxX46dLNzeqZ9VRdUE37Kv96EhodUx6sFxi/MPqXYR96p1+K54zvWVzrrNPSy5zDWs1IcT5ApACPWgGUu32461R+iAl9qzbAOrfWVm4IpqzJ2KXTKr0YvMxObqPnzrFXNNYI83vp2aOQZQx4EEn72bVDlB6J8kISMZsrOiuW3XD2DseyYTg8vIyWpwlfxrO6yBI56hU5ymu8vH2UhDCD51v2TTyX7CVsDnTi4Vd1seWMtj4ppLvhAGu+/K8SWyXkWB/PIDLJ385M9jOsCaEDaAOlSe67WDiL3k6XofjdwGGeGsxq5zU3s+MYnrUTx+jH3JNjm33j9Fwa7YnBd4Z4qF59A/bK50uObRo3iz19umCA/Q5PkVojOdMyfnqL0sIRTDXrL4liNfLmhyD5S9dKM3yrsUbGRQUetYlsHnPApFwUtTEwYzbJ/DZjBzOmBNtGA7Mfk6GvPl10Q64EYgRCS5tiuyyZQ5HKnt/e5l3Pylkq1Pitwzbn4UD78IX0/VuSR8t3XwdE2MyRPHt9U5rPM4/cGw2z8Y8ivlHTmIWruSJL0rT/hVPb9mdPZo+VQkM1lJLKsbxhosyluIO+fiMKJfUd20ByUB62e+68hC5fr1Ur2Wq3vLG90nI/zstRLoJxJ2eJy8LGb5QHJ/zD2XPECErA3XxiZ3+0NIwkbltlZM/k7XcsQjecnUb2VVjLKR9gx5bnACGRoSRdoG5bVT2qIwJGSKXcfTdnmuPogxlR7seLDLPfV7z/fGh5kdVFlFtavaJz8ymNW5h37lVsDbAuZqNJZe2tnTa9yK70SNGt6eQleF9lPNFvbhOzjcZT+9O1WtX/ycSmhSJJikFmKyq3qfK9cftx7hayCwGO+w8AAptjDQBA1vNJxSkh56V8whCwDAsFOV96PglHmO/oX/nzRTwO1jMs/7IKLqd85J11Hd/14sitY0F1Hm1iG6irDu6Pu+5sS0XuVYt2qvxejAdSYnmX5Z3FfOfMv2cPUfe+LFYlu2Eq3k322+6BosLemdZwWvFryufuM0iMtFB89InssR301eXGVe6VuNeUua55CfXP6TJhQ7oEFy73dnDn/Uo3tO4MMrdZyjq26zCua4wup6/PGROa0kFAzPB+jGK1Mr+NcuIptUK2PxIWyQonKxTvvmT3nslPvm3pcaRGrVhGU6rtc7S3P8OmEBjyH3/A0YD++MkCn5Davzx1HZdpUrX9vrTMuc5rmT4L7IJ5KciK+78vYmwc31duK7WFkkJowROhC9BeRGzaXJfarVXNy+Zoz9goYSJ+Lix+NRRxMqHkSlkXfJ9yPoCGpTftLf01+lCIfhgX3u6vgQphBNhBq93bToX9astcbjc57axnt2anlUi8VDCSXKLY5FNWGCCuYU8p9vDtCe1mjAR+kLRKNTX/RWbPzzEnSt+yKR30TGyE6yUPCTHsLOVRi+AvQl8bAnRnclobOwT8LyhmPdxMTKYGa9I8fMLjV9WSSCDVnIB9LNPRsM/uLU+WaWCZ3nBipfZ2RJJnYWqsmDMJScpBNbcOA6i7JFMf3tMP2oLAX9+2T9O6dhGTMds87JpK4Dza8N6qRNv85fzmdL9p3yH414qIEzrYQqc5eYbLK/D+Vkq+ZR6tVjyssr01uaqqz1OAVymIYImnaJ+2ja7DCvdx6NDYp0+V8g+EtU+32dZPPKcE14+7qQspnPNt+8sNdmACFuaq6k6J5jvw04cER/59B9TLmC4XqTb9KiTQVDiTCRhWOPJk9/2gLks52cP0e17n4Szu3u8ur03ixnMZa5YSyyltT2+lASYoAuY00pm0m55HFwYCXPd0KI08NQ8a2rJZadc0f1nlamoVszs0snxGUl1/aHNJh0jixwlQfpD6pT3W+iFV6ZUStlqZC+OWONOdmKiCN1bO6OUf/HlGMoiE+8ozfxlfLdCLkQs6qTKtgJzmbgQ7DAoMzox63o8O6VXvZE22L/NTKuLk6sSLmDuiM44v34Dpz0wh7DEvUVZ3FGIMoRiAW7VDY5JyTRTWMuc2wWqeS3AgizXTroQ32otkQJ4aBXF5XFueRYnEW353E4ebC6zi9LRnHVCLuZ982iCcxUcA+spGBpQXsMyuWtmZhShrIdnvxtbrz2lwuhqz3h87fzu75mWVVy9a5Rb9Kw+azqOw5yfue0zneMPxjowE21YVZHa0D2nq1MUzpUIvuy706K8JfaTkVhUiB/pzhPHlO4afibeqqgzVVx8T8maKZf5tfXHlx7i7nuxud5Rvf4+wBwf2tqhmnBb8uPBQljS9MRoFg2ZnbCfaf9XH6X6mEI28ssvVeDcjQMaCZudK8IpIU8SwYV8aI5LqI7hXdY2e8o5hap1YTRmyG7iO8WoWaUrp/D4qZ8Z1B8vDoKHlkZ3J8zfZf9MvCjGJHdyCEZlDN6nBYsyqDoJ3prkJPmFHodIwuNwPNzFdbnx3c0b/r8Kbe+I0rVmzc1C1KjJcn+Qud+zkaF/11OGHri23vseBja+LWHEsDhczU9jh+pK/PcXRHRso3ZkB7CqEQoxAN+SPuFCla63J3rE47SFNELYnPfcsjyZoZj50+FYDHhCA6409+7vS+ZL/CLHPWHr+jgM2E00b1EAgNMECsLQCh9k7/O/tGt8dEyoQxQ6axa6BCxt/dc9MdSf33gNN3bEG1mKmJ7LNs3epavcGpvBtW3MTStKFh/8zqYDIFypnpXUHX4dFR15FdyemMKBq3+uGSKO3Fc4hqVTisWp1DcYwVjrO+inmgjJnd2ek4MjCIX/GVlqUm9dn0QRr/2Rhn/NWT8Hgqs37wSS+ZtctX017ZmhxOEllcusZLy1Zn7EAzc3+yXZxGdYkhGflEecETFIUgELXzngBV++mz7hgIhlO0+yw9Ntm2OJNxJr/df/K+WlCtY8mdlrwdCcfRbA4/ujM7k0Nz2NFcwvIYJAkMlmyuFJzJtEQdyTni5R5SuiZDbFaaUIOkQ07GBTQzRY4+mbYLFrfhllZ3EMJ1DKjsvYDuWV2h8R1WxT+gCMhgdMH4KyCa6VlisPYzbCFGqgOjOBqppQZiN/3gt6XL3eVdEqFNoVeHe6QYMaSF0nPNIUZYCGMcBewyypp+I0m8NFiR07eRMqMpPCQG5yse0Tz66xFIYnqmTOYJ9zv+mE/rDEATn6yamBRUgDNpD7L3s2lgBL4/ajcuJneRiU89Ptn9vZzdDzDfJF91573aMNCQ80v8XTrvRFOIgqvzvx/L+6tDz+hgM6gPLqsZot+Ph5iNNHjM8nQ5UJR0+ZknmwOMkEl14XTSnGJ8JBrO9I2kvyy9wqzAxQsXsGfEst3dfpLFxhQ4n2dt4x5rTN7cZGkHT1lk2m5TiyBn0+GTIsB0KKr6+aHgHKZjcSSQHhocqtk7YfQk2nnYIZTNQyT1xyoGRMa86bPWiH5Eu5ymtct6UczSY8YnJ1SzJp+mfBY5LD4bopVbx8L/Qy0ZTqdNZyBw4F+g8ol7Z5HOGfqHOF6usqYR1TKfTxR8cnAScfVEoq4cJLGI2AGjnh1EOwCrAO9HdMtpWresH8UNMaHOPR1grMfUSsydi0ahY5Ol21oQTesSYx2ggGVJIYplPh8p+sVjUQTagvfoGSdGhkNiLtlh7mgK6o1NAbOow+rJRSOeHvBJZ5Wkb1XXyGr91hXe+NwyLDZ/nZNa1nIwfnEBNmDQjZKUbiQ0g6mCIhPe5OOtWre1lMSoaMxFhTDMHfH58MwE0gIu/GNog3WI3U7jROP3LOWBs7gpDkSHNKkcg+WpAOPFNwyhTo3WL/BK5EgO0o46nJqRDASrg7I6mvqf0SOYFeFFqDsGYuewCVQosjpjHg8RAzEztM3uA/+31Ao1hJQf1vlog0uJqc0uF64HVCldCvKX4621N5osaL71czv+gVzPqx9+77t7jnlPXs8OTINB0QZ5Fh1ZCBaK8PSZcM3a8ELvFciMb/E7FiAXVjyNNLVpXCJeyOyjEbvKruIkG2CxgTbYJKSOk2QhHQYiwcaH+iTBDQIDoeCG1b7n0ZJKuJRvIJx4kVWADYgT+RTFGNaPYB+tW16wkxg1ISopVzGI3v+4Om/xS1qN3kCmXOIVTxRRVEQKrHV5a04z9n9uic52dqKuRQS3sgMQ1BJAWlvqRf3X0xRf40q4OqJCiopcGpI3+snOz1X+KlZYqgADq1VKRANLLsHXhqjBrOX0vNNrkLVOUI7YGNULX8pbTJx/28G/tSUAQb3CGRHNAwAxpfjsDSPzEdiollMyvvPxNhXgFWCJ9uyQF2CsOmd1/yNPv3UshBV5BXVCWy7cZQ2K2114gFF9QCvXRJprzeinLnaAJxRiwxSIuYYourvkUGIg7UF9fms+2B+WSL3K2Lq+KTNlJmmDWdjrZGnbyDajxaToOGFU2uzQNcC3o5B1Dp3Pvt0UiYvO4g44+C+Qsd6Yjza6lHaNyUbZ9HQptW6GaQ5ZwZ0hXc3DJ3ddwzaceMx6y46vOB6+28uPRye7aHzP/sEBDv9gvpqXmD678WxqYPZfixK7P97zMcjsxw31BxNNDX+fG/3d8RXu+p/Q715RgIwmRi34oeOTH8DB2kn5vVb7Ec1gRXNeQ/1Nm2/2ekJtsmNWZEXR9PwF+kUXC8obmhoTg19prWs5VZ6S/ZMlpV5wvVYdiVGUlAhXJE4qz2kWHJe7nBDYnpTS2xJE71/uff71UPcpicKZ/hUh9PDICHpkRdgfYMWiUf1wie/3RpP7tmjaVtOw0UCKWtEt+T8ZwfHifbie96PJFp0BeodoamKgRzX/5HMWltf+3xHhdy2whRgF2U3LRrGsTBk1KFsIGsG4cWkiy99CAzlzYtVgfiDIYJiDKkTkqr4hDumEXGpabfJIDCqr2ma1KgZDjPnkkkSvPStS+XSwh6KKS/3z01kChePjErDpkUIi8XX0bjAh+Ij/v3k08GA6+iXGEB5iLPPrEUeAdki5downl5ACRlS0Y0eCqZFx39rRcq6tz6gbtNlMg4sNoJ1JDdu129PB+ofNY70wGc9Gy/HQ3OOHfJJS+2c9WLaln2LLrD06bT9GmIaH9TavNRgkJRwbwm0XO7itNomE67AJwfODui+GLxMpj9A3iGB6ZEZxYwrsmc6JDrjT4oqkHCVlf8MjYbU6kJZaLBmpKqCGMed7ZZEl4ZTLAneOdzi9ZNSMGD14KOjFjUjUTERhm1ojs+hQxKqTaWxqUMANDvrLoPCcF67Lk2M7QB9SDWftFkuPQT+EE6bhIb0tNOxW7EmF6h4waXMGk1WCcYQ2mYTrtLVKJRYhxyGRcu0ID7Qy3aMh4+GREeOR0bDbQ0cbDo+OcEJur4/et6UnYf+wT9/+6e4Z+0AhvZE+V/x73CrsD+7xaT8iEjSwUqherf/DM7d9L1nWtzmLP13k7YItkMf2OW8tx2KSX90EVecfcN/N3nbPvR2JuXPhn97Bvr5YjO612SSuvD6rrq3dZkVF9tbwL5LFZpa4wMSi/3wPo/C9OHCubnuL77QeWMPCt/e+orT1PFQm1lWzpciloBU1axGDVKx8ecOTx8uHtHBQ63rykPRblT2f01Xf4Gmt0dTU19RUfb3IpLDscgTSaU23Osw4N+tcmlSUEZyGwy/KDl81flZ6K8PP7NXuBDu1Xla5+VKAy2rZwCELWurZzxmMvvvEe+OC5OmBaqPOoTY5LeCwVkXWucX/4kI2fdr4yamSSObmHwPJkKF2sbSXPK6ltHWrelgTFrBbG4xrFS0PGv64xnYwKwzGqx0W155QbG9xwyqVGu62BuONXMsHjopH2Uca3tUJzxl/5yqNfgMGHbHlWVBHmUqVQjGkUG6PAB5z2wvjcy8k0gfrG8BFO1hxh0nMIoB8MTNAcaBjrUx9JHVPgLi3mmndjDT/F/8rPiU9OM2BtzAs/0PnANVQrZCfy4zs/3C+PRcqp03Z9Z+xXFHEgBOOubYQgwGZ0n0aDErIVBG98KnRY0teV+S+lj1H3/TYEtX1bjnqmnj04WPnVpCOObnZHyd11r7RYnSwkTxYZ67SIpNK2LdCAqenzFN9fwnUC/dKkC2EsHAPeDfvjH0muuECy/Gu6X/tHOY6XA6sB0pHo5Q4oG9gwVLA7jbpIG/H3CGuEyCTXcTHszw8MP3e14973nU0f/pJ8fRPjMUgecBhNFbfeEF3lP198wgMI2Q47vS2Lv+2Kb7p2+V2Xufqi1QTxCxYoIg6IM8XeefNMxxReWCIPAIEj7wRMg8SyJWifT7vi7pCuuI8AXIWoaZC+ShoDCIGLkQvWA++dxBwSpe6FevBmo+Fs+rTtZGHWCB1ZLf+Mfy+Lf/Y2fGx9ar9Nmh1vGeOoQSgOll2hAoy5kcZ84MUF4DyJDPXKf7uwXO7MqVSoRxSKPQUfxYx68Hpfo+vPnEpwpImpabFsb7y+xi6WtkyrL3KeitFnEnELgA1qEXKB8qNo3+k/YcWZ0xHJ5YeghOLjwYifxigOpZ4UZXocPvzUxK/+hYd1S5wKxH5QMxsVuCi/Q/TohjzfYattHKyWqbpi3Va1mz0T3g2qTIz8u2BTnTtuoCYMlf+/KmFzk9ZkYKW3CJh+zuNkSK52AJwbmY8ERHVWPUQOnCF0eiK+t0KjM1FOjRImJQfekeS551bwB76B52Xdr6ZIg2kDKnKe+Zr2t7SIYV16sWBz3SG7HE2/zhX8MAWEEgtWbEmbDRqwjkx+tNMTAO6FBiZkKRITcF+xiqL2iySdFc2mtsJJlLs4QW4bffxm3fNHWRohGPQh3kqR9rHWGGTaBov/lVgAtvLXKWhVkc7/4FdSxtFrQo4ymlUdfS2NFXjpdy6fz1fKXzDagR+V+DcoM5Nqzc4Xer16fQGdaRr/S5Z73KqN6D1HFKXaSOJtpxeL4oqdotOl20jUoUU4hkduohC1mU0ymLwrZMSXIlF78r37RJYrL0nsLmPWkjOfeHziZiQYpQAGJ7XZAlxXJDQaEQhKSHYo1uw66NbuNkc1yoTOp2yO64xm7s0iNsPYqJL2wYLk1pzR2tj3a/ORhM6Jhp/TGZ8o0JwtcEFGDOrYqopU+USk7Kf7nRMHzvG9axTi7hxbXyeiMD51a0hAqG1vV1os/FbqZUvtBnWUhNYSzGH29jc3MjlsADv+/bnPvcfQWQgSkWPsukklSRv3Bhwk2X83hqH5UfwflS3jO4IX70+TqVqkzZdrY5rtaLodbWbfI2Fe3WIxxu6yrW+Ggc/fvVY08SGDbWN6ze01Qa5nayVanZK7TX/vgRJaCm+tB6jJvSWXoYlwEiKbARbLUGrxS1N7/tsPGVkeVzMt8q1qmBGYncOqM3JVUEGJoDsbDnkMEgXfUGY2Ev8FRltKyHVG4MDYvA0E+5VOhOCjW43f5Mr2auETWmNJVVsDjGYZh+lhUOO9jUed/uaEA4bA5EiS4RRgKL9PYZTt/DdC7AND4cfXoABT89ifcI0v6xmBO+eYSKNamUwLtM74mIZOZic83fUsY27+hzH4KtXng8/Emrr//8jATBzBzFDjOwlZghZ87fkiv97PCYeV4wR80lgff/tx93pwcFMbypnk2SAjgurtK6ulJXs2dCzVZj9O+Itt9FLuYtvr3sm9PbniLU84cybRfDRhBQkDvBBhr+Bs3reIC4UnCboYCD93y39H6rzGAW1LymiPba0lvv27t2b9cRH5DsC8Av0bBj/0y1gvXKyqZexp+unwqbAmdIAf9jn94cQ1Bfy+3xhxCDYqnTfKpAdoKf7wOkDyO6/ugUf7CONHkqFYkiUkhffsS9uX68fPunKRIYUCp5/kAfYpRLBhF8SG1zQ7gutikGrgJ0P0kBICq331lvx5ML7ewwOhw0Oi0ALPdNs/geJtwCzgE6TNcq7O6G7dLL0ixtQMstYhUU6ZmmuTF6D86s7iu6YhWVatpxvBK3D9kI7WOrSy14q5ZZWFf1rrbY1v1L8EtesDrTuDwfDYOOX4nUHzds/rBG/WKb3qvhExNyQ9x1P8noVrJpqtwceWCYncgSYe+NnOiQkWDf4cnOB84cNX72yiwCswgsIMCsE/Odg1p4NK9qzYHV7OmxYyoQ/Av3JdeAMt4QDbWkWTuJzFoBOqUfwimUz3NrBDwnXngVd7emwYAkTVgUN2hPg3p7181J7+s8bS5g/p0HJEgLNz5iaDA5mzLnrkq49C463p8OZtFdgwqUbe/S3wd18DvyWOCkSQzrRVulE/dKJDiZeK0dXE6VfOAJe0sPKTAv0fDqZsynYVwcWOJxICnL49ydhuu6V3teH1RS5PejlDrOB4goMMwqEDQXWCM8u/JHcYd6m5CcwnOEQXpTmcJJPZJgzQgTtI2hEeAjm663EtFJ2xlJh2Z6U6dLF+rKafDeTXqpRV5vUFtBxqnXoaUYdBtRZRHZ5l7gk5S9hoHYk8zWZNFrnatPe07X9sXDa/3Y6mtP5q9PVne7ZTs//ud4RN59lN/j/OZV75F65T+6XB+RBHMLzZiCv0nQCpj20l/bRfjpAB+kQBsxO+S136Y8YqJ3L8Ojk/P1ZIvfJSBoeOr4KYBbfhmO6sY4B8wnGTgMXZ4+QnEtFXAL4c2Z/2QNcX6LF7gnbHpJ522sG9Frkt7b21AigV/+pg89NfcYN80IHYhJBLNIhDnEF/zc99+59DI03sfimH3z5Et7tlMJvXY36gacB/o8A5M7qcbtbeLKRh97CO2rnjguw70/Jyox792UUDS/0VZxceE0jfcpCfvrB4+uCknek4OT5/GpA3ySXm3v0G3MMVKJcOE0jPTPjgR9RyKk4uVMuK52e/gayaxfknUWQcflgujEnp3B/9VMC2Nx2KnYL8t7JEYSdxvuoxoj59N9qfIqADXsAB/ArYh4IHww105ABhPGUjDwsE5r7eqxLlSgf1I7RKCWp5SW1JFJiTvm5HnlZP7njbxT2+zIbO46hBLk1o8mIHBfAw7s/C3AxS+vZPPbEpsSb6uwItmE4sYzYsYzlsCo4Z/zTZL0xw60IAF+njZcA1wWAQhBFNzgvQOITm8PleaezlKBiWfWWGXkHQQLaFdD8AOWNZSgEUVSZ0QCJTzThvPW3miCtU90K5M+MOfkm/10Wmi7OpIcZPf1ykHEw2z9lfQrRRauVx42btiPX73DMzguvb58jBmQmT997W4vMT1LIMuFNGJZXrtKnr1iJXBrhFmvMA0/Fi+p4qWbzxarZqnNksD9F3d+ntBjw/2/HRQDkBIBZrLkLkiBbhRYLjWTBZLPucoNHPGdF2WZE0eaBbM+hDAcPX6kyKb8K1co6UP31qYaNTTFqts2zhbTH28MhPZQPx7tF9+qFfapv6iv6tn6sPzZ9LGr1rM+2vo1+yP/52MEYO2aN9QIh/hesjt+JvwqPwoXk7cQriXcQM4k8Yod129/BSmTls6pZ8+zv27+w/2q/Zy9NWJMz9mfIH8VnJvGpOccTHc93vNbxbp0knTydKp3R6UXnPZwlaX3p99xfsv/OfjJTmKFm9FR0OUlPLXxl4a/mf5z/Z/7j/IMUk7LS75b8TnFmNr4acz9X+sVsm5kq+9/qq/n18u/2apzIxbg8V+ZOVNxYcW/FkxWvVvxK/Qf1n9f/XP9//bOFwkJ9QemAldMrHZWBymTlUOWyyk2VSys3VO6owqvKqpqrJFXmqtVVG6reVgdXZ6qfqqHWtNbsq1lbs7nmZM39mu+1tNqmWmktXOuuXVH7RO3/64LqvHXL6p6se1D3ru7vemZ9VT2/XlOP10fql9Y/XP+xwa/B3zDYsLRha8PhhvMNzxu+sUQsHsvI8rEmWDtZO1hjrOeNRONfFwUv6mua37SlmdIsah5u3tC8rHlr82ALvWWw5Tu2L/sAe5T9iP2Jw+LYOTHOUs6DnIOc71yC28Tdw93Lvcp9zv3Ko/CqeFJeiDfNO8+7wyf41XwvP8lfzF/F38Pv4/fzB/hn+Ff49/mv+N8EdDMYgtV5gAFUQLAI8EUDaq51CpAgAAQiAMRUv/RyxL+2cyUmwq7OhEJga3IHGnfsvT33Wcey8Xmu4CGd/pcHcHnx7P3RFm8rQIIVICAiAJw6gHcdKAhhZP8RfWd5kCO7sdZ3Hy2N0LH2d6elLFmBMErhHY8bLwRPfdS8i+xHnoIUHBlYU/XzR+66a4Y/LTMXbxm/A3+Xxi8UVuWVlXf3siYU2jIeeOB06gAIj7sQuhxY2LeAzfhrtzBPK90oH8mOrwm/Pf/mNfDkg//+7xGpBcel4zEzSh4INJdIAidIZTStoEUXoLegdDBCoA6UtZGBSsmJUtKMincx1cQhuog92ivQ07NFPnN9f2nY7nDixEScH0DPiygTI+sxC7fZp55aB1zTRqYBoWhWGVSMilFggQedo0WsbxyeS97SsoUBaSRve79mqZUFyw+5xnLG2Fl4Xl+44Nod7zwn6CC5uGrrrq5BxSjYL+d4SiQG5nCbocgSvtONxGD5Au5tqVf30oynjavM7D72SEYGmhFtWsj/oqo2W89tQr0iwfKXj7/GjoCfRENpEqdMkE53igMahKUwMBUl41iSMv1zvtfTLXsGdBcF7+oYMN84qLInVpJSov0DrNen9N8qC2yHfjy4Gbq9WVujlxGweVwYhZ4C1BYKgM9FXuD0QWGvy/+IC8uZvay3eP96cOS3WdpjrilwGQaLj+P6NZq8+zwyEor1ZsQemYFf8sPwlNIHmn+u4H91Aa/Ee2XAzuy6676VLvJ33GH/QEwByILq2i7ffux/N218U+cwXANXevv7LY+1ABrbI6rBr87VaxmVp5K27LbnVGq1H9/xBJUVK6wR3WpB8LjGvCPxOE2q2w820jkfh80d75KQZW1Uzp3ed3TREgH2WkrPiOUjsvPo0p29NB3RyOjt/EEmM2Epo3b8AQ4MEzL0bg2JU+lwE+qDEILPHJ9S0Fjg0ulTvN0SWlMgBCFeQcnHBe9saupcZVgPvLkZqGsYHZkIysQgTEyKRX6dEqyce3aZ1vrlNrOg+AXs3FCcmyt7lD+pO+CAm6a4jYC50JBZQHowihMKnzzq4EUp5F1ORLhYZyJmREJMSgC3Gh8CpR8XZR8ajRb4kgkSCXSNiqMcc+BRautJ5TNnPP82Kfd1FtnPUxB/6C+hvRNRutR/ouRIkZIO4TISVlbvUwYf+MyEI8xNLMHf3N/PBIoG/y4wDan66YQG89tHU/5f7jcL3M/QMXTY850PKIBLcsGagFKlVOf91M7e3kZAWCowCwPqk3XQj8PwIZAO6nEd+rr/5AVuaem9lYCkcvwiWFsrYnTTbX6v8ZNPOv/v3DGHTPba4ZulvYSTI6EfwIEH2QN5rnTPUncVCtDQ4FyA8dlF/u4zTx9Rl68HCuG7sau5suwyNI58PAnjUm/k7UxaiDWFFiyReUq2QueLFG2ys0qermigELINTKc2TQkhmInWfPA2bSeqFNGChnI38P0kRDCm/n3WopS3MjAKa62X8Ye/22t4O4NQ6YC3AqEfCzc3/1z0qOG1ezN97e5zyEgw1qUIcafepVagq+zkNny95mMEioRwq3RrheXEZNtUvGB+2+PR9QPuQ5kZEWVy0E6RlCy1OB+sug1NojsWCInp6xPiFwrLYibz7l62PM4FM9FDExa3NLlpHmzncuhS8tsVU/W7ElEz9g57IvGhzEwd9vGTg1DS+NWFW3pFQRXoMaKbArSMKaDjf/sxS8i+hq0pZ0TYMRov2AxtVu4N3Ucl/QVkpAyYfQ+kK4V12z8n+3Qlh5bqxbY5EgZiQANUu/qhp0Z9e+763uBsgLlazp/4uiTE1oH9sre3zBB5JVh8MmM575cgK2WBGSzbZ8PHmzU2Hky9xDVaLKbHduG8UVgebSZRlSus57r/HNh7vep5rOCxlRtkKabDNsxjm6JzrDAbfPOKSMaoSDo1uFm6uc1H63aykAti9ozjw+XERohXsvw8Mtmm2976gA8NZYPCEcVj3WxAijiySah+KvgwWmlk048JG1Y+NQhzIlhN5tCjciwRk0WbCoUCOTUwwrW6Ao0u49B9kcowKHn8mp4be4cGFKBkFAlmsaq49UNjr2DWefKdYVZY0fNIoA5syOMEDZa+CGMwinYK93VV3Pi1/Vyd5+i5Rd6MC8gqrHUjJ10qIaJtyVBuLStHaStsKYElpx0OntGOe+tdfWUFE4hyYByBDDNEWWl+APnmRsmvEVsHoelCCyNoyeq6FKP0YpVAgqscJCZEp03gfrhfMBw3jWMfbhVlX66EQwVoLJRMgMvRoLUrX31j0AkrMaiDSk2xdIFmgkN6kGvq6pEcc6m6wLyGwFF9lye9thHoqtvwKdpcldiW02yknZwoU06qOxLUgW3PGqHMyTv8aCsg7VRpyk2dtwZbqbEkVMTccmQc51ukYELTQ3tu1D8JXxNhsXwPOyAapq/Os+39mUztnPJdfmZ3/aoUDvl4ijpEsJfbARiKMBZIGzA/6OAvgILRe/aDcXLWYXxbMCFRmYoAqMc1Q0Qfr2341F+1qO6ZqGPGehXJ2xt2kpAA2z8TfUURWz/m16lW7u7DD6eEty3igvPHFceY1MEss8CKdCtTE3mXMxEp1jsRW2QJlERDg6CN/Dt43FIeFI+0//vAsPfIofuLQI9mbfUFfhOkaVMf+affP+us0gdT3lXgOvQvc/uXFm8uxYr7YNbNMvvXysqK94Ex4uwjItva9a7OE4L0WUxYn/hv77l7s8GLOuegwwE2+Bw6oA5Nu7v8uoXpDzvxDn6bXRPLgLnN0uLK4b+nYZce9ceEvuksVwkCaC3OPESHwj7QsXdnJgOiHNZhCtYlnkG5sa7B3PSerD+k3WExQoC4+En47LJmxLYfhgGE3Pk1X60CW+mG+Hzlt/GLd20CD0uP5J6UW3hPFwBvCxfH+UIcWYpECLLTnQuaqlvzeBhHl051v4Xc3Dsn4CEkCVzwIg228/C8FkdjD4dmk0DO1hCbI9t1OJyIKM1/vMBbmxMCPQlBE6fz6EMdubH/+siVg/76aDBwo1GPx6XK9kSdw8rSc+WFxqby0x8lBVZgJ8fBRFhK7t+C6B0xVERnr+zOyaDzzQrngvEP9fUKWOSJy7Dbz017xTYL1FYcwo9SqLuUCUkxvwnZVqLCaGczHddLFDJXYuE34ffcVWH4PedSQquN2LN8IR5Z8upIbErZnvaW+Q5VT5hIBoIUjfcqdtT0dbrT62u9HSCuPxl/vWpnt2DMSIKWqWLo2sL9fFgCFrebsQSGT9MNv9pgWZwfVrLaJuHwK+rVD4Ma1yq2PGwN3BtAA4OOV7Bm4WQheWhEbindEJkbdjfGOoPFNEKf9hmigS89pNbZxqG6y1Jugmg6GtJJ1kR7h+i4/VzcSl5duB7AZIqQXBNVPfiao52OCGdPZydyAMePBVCe54Wvu7lTGzBhXNRYPOOJlX7U6IDLaUHrx+VOS5owChMVu/drhWIRQQZTolVZ4EIE2YosE2ghkcUuUu7kzRgtTNM56TiZLkkuFDTgBS9EQLVWQHdv8IbCOae+6w/5fB7SBSE91e2LZLipTvqL1lYwYhWLdjzElM0SLFEYil/1oWlxAN2kYabIEgzBsLc1qWpfK6v2lXNRvXbJxo4L3qAUBr3IlmoGcIDjbKl3OrqXF/NgM15HabUWDbcUDzTyUUMpXJdKXK6vKiNJ3w3EYRrVL6X9GnAjGXOoVCxYmmx0LWStmAlnFcVrm4SAgf3lCrhx1SDvXOIxHg4jpOIXhEU+A8FLNWgShyoPCgaHyotpbhfNB2RwXKIDsFbWPAe2YmHHCdhWViRhbBjfQUVi3ZBubJHOSmQ4aUIpHUKUcanOZPEk73RKSYrO95NtINeaBoQb4HZmObeWxXZzyTZzY0UQQok5NF6w/EwSsBGSDkbYUaE5ETRJFJhrjUYnyoLaWuEE5t8VETgje90xYbFRVTZ9LSvb199qOq9F5/smqECAQzas6Ka/oWjHAhjn4LPO8SZuBjikX7CZ1AD6EIFBpNDYMSO9muk8I1cOiFPAF7/IrWz/gWd73Vl8RBNhzNueNxyXykUL88WvlMK+3O0PlG27de72u4Tm4i40tbQ122Fe8F4z1neFP7/SU90Il6qLj/tV9184WI2Vbwc40wBsjS0CPqHEjhCGzjAuj32AvMtr4Sj2QlgFuZMYiKBUKq/CA78DYN0E34qrVbhN08lDdf+AFCDITR44jngq8rJwIl6QNcgmxQH0YPMqEscJ67/WyALLS8WPzONhAMaU4PAkcUa90vRK7t5ENNptnVNHFvhJOqPqP427fQX+dKnzTxyAu4V3B3DctGmC4KuS0aatUCwhJeJROLe9CsctNVJc7re9AgX1gYEOBZVUFg8XrdFrb8U5I/OTCjCOaZnI5oyTwnsRFZID5drbegQ9TsV5w++IwUL7HGRND16Z2cHJrH+YyTBpit4xjf5OatJ7VcKaI0YLh6pEErcCdaZWISKUbq95XRJB9jhn4Yekz24dy2T7GtBtDu2cd1jEWek9zbdXl8joYquBDp+Xeb0TkWHGBt+y6EDDoU0rt8IQDNtwoK9wd7h1IwdITRMaraWKKGlx41WvnX8cX9jRvQCxvArfAFwiI9OwEa86FzIcbE7o/rtGQBjiUDt4WAt1l9pDXNB+9RhK+dgEAqjaoM0Bi8vT4CXwQcgTu9erNpqL4m3gOf0xn+uNqGV2PYSuKCGcUbAT5vnpwOu2C4Yy4fLoAuI7ZlRCeDBXIzajcou5hd3S79T3WTAJvY8MKepWRcRceTDbfTMaC8RD+CWCCKTFxeqY4Zpkv270UrEmk+RYKdSIs3qFwppsJFFkht614tmRBc6aJI3a1wSZkiwEroNb9KOr6U8TdaIi6I16uV5t6JZAEZolFsMOcDRenLf5nkoB52/VK9pIb9YZuRWpdmtG/mFvS1oEhzeGSfv223aPrquvOXGnE7Mi+sH+YrlYONJbBn1IrOhstozWCSw/NeFvBLjGVURY4VnKHxSUJbUqg+HGv1Q6X/YbVWlqWan01CTGIQU9MNoJJ/EyK0ui5m9wQSUcdBB78ofG1uttcne0uP3XCLO+ODRuGuvTIzNPgEHOEuoOE/pJ8umC/83BVvdU365vaFNgbbkD8tADg85k0rAgJTRj+Sw+NtU9J1U0MP8F01gzugdCm90Txa4X64p2wuOMJYf9ZQQTxqxGcRijXYtWP5qoPn2c6YhOYGOFAT9Noe5SLhSMuRAi7gwXRAPucRuiEDSuCNo8gFzegO/ACbiCO2f0xAFBcBZHc81leEeuYkSx2O60IFgd14pa/MJr1M8vMcu9ETbU3qOS18pFcCFuhG0kgEK7w52vq++FgkGvx4G7qh6GUd5g0Of313Te2kY7qYAt52ItM6XMh1I0k1EJUdERyQfRefTqAW10WWMASG1rTEGQKFpoj6YkiTh2e2apL0UZqRdkzhgI2w3P0UO7Al1Fnj8P3o9hMiw+lXJI1AW283l0ZpYMpUok8iX1/M4auu7YLTn8Kh+q2l5JHfe9KawV5EwTZnzV4+0twpufgkXZ5dM+0kdNWu2Z0gI4CVPc+c1MhuGcaEYld0rFF36V4flFt+l13WAKDV/CxbLGv6PrDGwVq4uXLmeTG1uFPrBeENdgfsu/DVPTbK8JiuoKnlmapuof8PnW29H9zcRYAGnInYCheNzSqeefOXhKK/XVYpcHrR76zRV1qAEIgzJDwegpokRSSrnMsBVDRRSr5iXnuMm1J+HBsPho9GHUHwnHgsFI0N9CkRMl+K7UD/VXszZX53wS3AF3co+dGZjxj3aVzmpCSmHabU/zWVosNOPG671Yk+JQFbnLy7yRhgkpO01WHoZZAl92a4LH7QhFXGED5UYi71vGTBlruuWxZnJs1CkZ+3ynheMsoUTQtLKYj9wxeEN3/HoT11PHIlA+VD50XTcXA15yGMIEV9JwJcKbl6lj+ZIoZI3H0oyZytOdMBCKyJyT1gNuglusJZOUojwVqHK+UGE52jl6ZBzZLRuv82mxC2v1ytTClQmZLo6uFJumZiG3HVUzTThX9upoCbc63TxmvrVcJ53HD929kurz+1MTq+QeDyFJXVGh8vUul63N7cSHjvEajfpSP/48jCKzzIvMcVnTyKg3JemgjfkSWsL1i/n/9jzxnHNcpUi2exS5zMkIMoYhyOACSWh/L+vNklgnwzlbQLnoDiudKemcygVBkjCqY/A9lckt4L2z5AdaDQnI5PoMoE+w0g76ylP8q1cZnwvsOPDqM8KprKNEOWvkpL8t+ztXF0T29fE2cWHDlxK+YBprUarZfZKvc3uQCI2Kp92nA4/AzkUcwBd214cKxWJ+FaJXcgAFzPseWPhtKbZ7GfY0OHMfWIr7DNS3q8ESThPqbwTB2bBvxjSA/+EkC2qK2Jowc1AmmhucCXDN0rr9QltHs1568MmWt/9chmjDt2DH1waD3x2eSYYMzWBe/kmeKW7nJ9VLUOTQgo9Bh8hS0BH8MzLyK7MH53k8CPqZzBDqS0SIDd69BRCF5JDyYH/P6ACt2k6z5cI+TgAZKHlsOMaZ94Vayt2S7Pe8HIfX9g7B7reTnRQCPHfFUsnvZ1Baz0+tQ+xyrg2BL1thuLYWKiSHV0ePadV9Bi7+5VXk/buhcDLIv1NX3cAWujIy3/O9JPZMQLoEArx1Ds5dge4HcydmYAsQIm428JELnHoyE5h7choLxG0bsA93Bv9cjWx7H34Hjy/6F9wH986KpipaQu3Qhe3q7hYcTWKW2IZUmVqtLlteDNaG2uS2EvlWbYupQY0kYZoyr1bj8gQrxfEGbBKBQY5G6YeIcS45zNV8veYcsPmCRomy4qV1GaW+GEllAKTa6Z4g7u3VtFzEL4sMw7rcUQ5FXsvmHRVoZbCI5FBOc20hpUxgqi2Wc2EwinMTsUJBEKCuaiTmOnDtkIfuSrrvR73KOlsSs2o7wNNZbXdjDUoaVzWUoHJkvySdIzstYMyURIm3Rz1iM5IJDvM2gYO6UmiogIwRBYE5TKBoow2HA/s6IFr0oAs0c2wXrpJzeC4C5R8Lfezj9V7ASjxfAleygAIMOlvzThexyIu2uoTkmUEbrDTFwm1GY0IdPB2gfyczOR2mNzR4ihM2o+iW6DQcyg7bilYiPYpYf59qRFe6r007epC/ukLoIIJiQMPkeFg92IlsuvktC9Z+XF/wgrc81lqpwqHOmUNgOS8Wq4dp5YMxxjNtO6Hf//wY6H9i//kdX9sjBNoKkzBZuatCn5DdKC0/5LApUUokRaE4g1nIZnX7yl4IBZfXN6mDitTG7qbmQfghi+Ko4zACWJC7e3sbu4YBh9V6Wcrc0Ubf3ZkbNVINaWWZ0ogztnRpCUG/cbkvl/T73FC5v73p/t4T1E4UGaLMmQL5+SFjuAPu4B5Llhy1g+nH5hVV2qXvF3orxaVwecgsrrhhVVeQE4bRfC63kJFx65DFOQjbQTxCm3hsqqM1G2Fd9sjCXFolwaUxmAyPjVGc35HUxbj9L6HhKp8OgNkGR53CtfRvxthqV3/Aw0jSbZOLKMCgkTGtquXjEKSdrX6Nkni2v7t5E16rM25kOw1rRcMLiwmuB7CIdUKBHJD6IRQd4okripRb9Wy1BWDPFwu8AvMetP76HhnwnX9p3rNbQb0Bt/8f5HAlupKPRW6RWu3g6rA/aF9+0pa38ATy2ML2sFJVsYNMp5HdhkNSmJJXVw94CiSjnNwATZ9KCoVlivcttrGw5k8WUbrTau9IG6P4sY2DlVjuKv+l+oc8OO35P0HLQb83hyt6GmyBDGqerhMSgbN9uKiX799nNvn2YyVtwwghIl1a1jRzj/NaczwbRNj9KTRNNf2Ga20ixkpklbObdVU04Y6ESUoiVHEbc+kAluHrRm2tS6YwlQ3NM+HXylIoudoiDDNRedSLMnAjLkzs5dDjZVJxfGLfJ8TGoP9a0aWem/1uyqLtHxyBIdqUCGYpPTYfmwi6mAj0fQmMLeA8bls0rS0ypdNSf83P23jMd4WWGr7xDX9rLX+BAXmlN9gqA5BBmlH7NOflT/lztKnVakCfiw9yvbdQOMX5kXZ8ojc0vnhW/HB44JpAADQb4SHmAcLf/+JIOQl4Gp4++rTCZIVGMMh9MLS0VpRdOKFpGZ4wdlO1y2EvoGZHfdvq7myYrlJ/ECxCC+DI4kxJGs+QrmLMQhw6BxRmolqvu1ocXJ7lHOfI7mlwAqTL0NPyIsQhnk/DgrLb+an0AOmm6a5BksKlXhN7n7k+jR1SL4Tb+RPJmRwgRaxpDWKlbbzLtjATWhbWUZRbB6+/ah+6kIOs9p2o8hgrpRNc9r403ArOVt2rBzfCN3y+Bbnvt9KpSMQVgyyxXJbZzFaNK9VKutfKNpkGfKas7qdMTpK4KyKSPhUF/S/qW5eqbpLCFwWxZXtrGkycBvVO5dNH0oPqj/uMSdeGKglNUTMuJYN6pHi8zJCLRV37YKyJa7SrYrqEHAzJlNjTkj0TkuJ7mJrwSbNGmqgP80NaDODTn45RNr9yiSvh9qC/3j0NrwL9jmhEbo4pTf3zlIPF4+XwYNPGm+g0YI2Fm8lNjpnIdMdbkVODk00Madn4Ij98/NB8ARMoBayxdDN/mqQcx3IIRTJCiFHp44gVd/dbhz0mdrIbQMk/z0zk1U+/YcqsGb5HD47Tf27p06MJIIB9PUBJpyAomQ6HQcUywY/VBi9WA1QsGMpYDlB3yfZKHUABfTAEuzrBQGA2xmhAj5EItGOUA5dj5KE+KjuB7UWFiPWtqICZCMTZ9RsFwTVwrVsf7MddqeoBAqPCmjtuQNtdI6PsoEwYfVtujbVWcxgRRqD9G01Mq5MGOH6rYOXYYOxEEYXnp3B84EFwet+bKuBDFV1Uo54eCfGUR6ltgwUsG0qOxAUatWYQ4HAZSnMeTVCia6IY4ZZwGJjAt32Qdf7udGG2nKKSWBn9Y6ObAg54pdPMQgE4Fx6QxdY6qI/opwRtePYsvqvscTYKpmojl/wHf30RWXD3Me1LcPGEchk8DX1QrKRpGw2bh3XaOBSogi0ipuqqnDN1BLYWUJzY7CITgjuQa4fdencvfv00BeyvueRjswPibIBFnFogHtj7TsepdTBgRJkQjSsYTFjrknDYddcQZNc52HPQXt1xEHijVoQIHw4+xB4VuzaE0nJ02YDuZmFMuG0D5nzHf7WZyTe1Axh6g/FK2cLXGEB3A82jZDllIAKtn5btydIfVchRIMmLDSHi0GLsSzZDjWCJQwQrT/lwMeU3djDfrrhwWmrqDJ1eMmlC0l4PvjNpRS0UVBUkjMvZsOSlSbIoZzwCr9UkDpu8baS0jzape3Aj3NjIEUrN4lLDhHSJxYAxwbleDqnnvsrCZeNlyxSPQlszMhE6mIKdIamiGtbLgqzzD/qXsbIqZRiGzu7wqMxYMfR9qUt2YdJ+yOMJeZ28VjCtabreiQbGwGa1VuaOAKORRLddVZHAtE0n1PGwmSfCD6NtuzgOYIpm0nHAgtuPkQbrHUeqTTgJ5D5Ih7ByATYKu5f3D8SQF9nOkoA/gPHLdzAMI7ztXEcwXzP6naZCRJWH7NC07X6ZEIO0Ba+FlAAxUW0KboPfiXKOQ0laNI5EFNAhRZDRRp+myl4EoWqFshqwfEsl7dEyuUIJs+BtmQy3vYYkFmxof3+1UiOebySOxcouxNAFwDUCWspoiuD5wnTSU2jH1qmGGZZxcFs6d1ipxbzB8X6CdWDMgzCtBMWtL7UuhwGF+aZnOy2ao6C1aKAUIKIp+VglXi5S61wwruXzqlo4QjojE8/rx7r7TGdsADZDn/Daej2XPXoQkiwaEEh9JxyOtzg97PYDBAh2ygGq7A2HBZWyrvIcxgwEjs4LxqknHLhFiW40gmW3b64o+pRcDojG6fqcKZezfIGQe5OgDe5zKPOUh+XxoqnbpnGZ+g1mOuhiq8738s6gY1td+tokHsxI0LJdFoB0xTtLHpeFhJttcxA2agihY75ZK6pSAjeq6jFJcLTE1q1ajPv9w1iZ6C3hfonFcqHkCty4xFHipqRkzITsuIGl9BFAmJB4ZwgwApiVHkh9jraqcDo+J0EoTXWeLbrdQsk4mQkCOMzaUWsLnlkzEQDiJxIjKHQX5EEorKuZISDE5gyizzyyzT899SSQT7836jSQhYVOM3eR0/1MAPX4OOmwkjFGRwveO1B+r72HZHQrMWj6tfOdMpSo2tt1YIz5+UdADrvyFK5AFWTDH5Z6j58OYHvyaNGmAkXfew4eC8j/dwwEENNxYeEkBzbhXRuWTObnGIAHcESt8xahobIY6UWB5Lb43AUOJ26wzw3jXVsd93WnTYsbfbiuSJQHgHmOiWJhZnnbGFFJH5Y2inYjj0Uf+KBd+O32+wiA00pE9vlO+WOCckQBY088Wcehi1ZcI4o59YcerVjMcjCvqOMa+w7lchVfB7uNepeLDoVCybjN+3ThisTR9TrNSdJx+uEzKRyDSTT18BxZshvNTmt7uXhskSrS8JKLE3l8O2MicRKDQzmFjziya9IPOSKPxXkkji1e3y/53MwtLnyY3Jgui4LM18lu1FsfuCtxpSZomP1u6loxq1MfF/bejAClSeM9PekIh8mDc+zrhyM0jPVWCoW524/XuYo1d9fVflyMBd6yOyWCOsznrE/b/VB+clBX8/ljx3h2Mu7sTUVetm3HK5xWJVvwlK9SH6LcjCiX0w3balY4T9w5/U2Pl6LDsfqGsP4F8Txs6p60Xq7CkSHyk6GokOW0Ws3tE7TR81dG8+obITemHz4T7Aat6HOwP3vR4OveS1CREUESxTfxVt9fXrrws+d/EyjCSvHSpehNwK7QlfJxXajqIYz0ClfFSeV1C4694W3HYsLi16eLA1WsAkC15CTM73NtzK/vfvrZbS1jQJqC7nBctRrOHumEK+X7Y9uh1enKvVYO2TVltrcwudbpPIY86MFYsRDcrMylD/F1XKwwX1SDgx2GQZ65GwCyKrNlwGCHhuy2uconLRf0ua/PDbdjLaB0h8cI+BPO7y5KI+BJ/K0SKneZwXpyiyPgKP7CrR2Xls+trJxDef7+++cLBxvgIuEPi1Byoamwu1LA+ltjnMqZbi/ML0Nngnd/Mj8FzmCuqHLYaepe5YSbYCoB60B1Hr4SyILYQw8eUw7kh+GWFqWnAZ50c7wxC4ARYKQ1693nmyU/otyyH9B3QECCi3iEtDw69b546xR+LE5ZoQXwP+MDhVx/rKsQ8QN3uQ2DZi1i9xTSzyIj+Kk4BB1go1pgJfHt/xwWyuoz/ji0w31N4AmAK+DKwpx3bV4sWWKjxC9TNAVXEEXhU5sdLHAyGOcgq6LPt6aobot5rHIZcmQNhVAbHJxewaLo3NtZ5X52R6km3Sgb7USjwyQkHFNXuvnUH5DN9LIDk7Y6mvJrazZWlnaYfT73+FOvW02JF0gFhaFyObBNsVm8hCBkXiyMsav4KX+pcriZ1dSsbhiVNxQf8EmihTHnCC3NSJHHcu+kGJ7nM0VZXRUZHIxQwpS6XWIoqyudOc37q/3Urzsejca7NzpDbE779NNDBReBFnhRJ7unH38iCYqyZEHXv8g3Q9sGR71xnE9fJS5sZZX6OcRuvtkDbGvUf54PAIHcHZiV7IC+thUp3378DIBJxhZO9E7barp6r/TOAl8tKgIB9gXhDfhroZYc43prO4UaDUsQQskisjNS5H8hBz9++Kab3i2cwl+K07J8Fck5tRSe9obdryRut3vfhX34Dfz1n84XS3Fg7ncvEl3/+on/tHQkZSA38rtH8EsH2jutbqNnH+E/gAEmE9C+DM5x1MLBJXA8/7Fm0HIJFZSTrXA8/EPwQWSX7EIm7je/qi0HAUuI39yQwlfeXZPbmT/fbQYz+x/p0N7Z2b0eqCoJQeWEaw1IEWYMvmlVr/AXnQEa6OsGZaj5h4Mu4C1urAexz8wZf6da3aloaXNxI6iVq/gWp1NbMtEQRBCnt3PKTlWK+K/ufgh/L8QSglghEU5bQ6nnZwK+q0gXwC9kN3tAek9rzgdwg7u+v6TsFE4DiTxE49GNab9Z6OoGakO4VxXYTR68wsDyytOorCehMS8IzXUVFkAzg+kPwHoZj38D/72PbLMLviSBNNcGx2gP6WEgqfy00m8C/XgqlUAU/KFMO/Ksz31afuqp6WxPMILDxYHVQEmDZTwZzF0YG7RFGiD8B/r3wXCrdl12FNsoAvqe8gStZHcmlU0mQjSwSk49oaxqLJ05glCaua10vldawbVIBJqnd9ZbBrVKFyagBAzPpkRUAKGJXASZDBWAKY5Xei0fCbJpRcsHyeFFl3Kch7e/U2zxF2pdqmUfogaukegXFe1QabtYXbs0R07v4FoohD4xQKFRA11dA0m7JGwckWT3reuSJQhZNVGWiSZjkk8K+OGKHrcgB+z9X0bgDrALQwx06UhciYZDPIVLdxf7jhoiuIXyu92T8d6oCIiJGmXKd1mrASUrmGaNhOq4Ls8bSihgFPEWzFvIJacpSkEIxtmcpxVXAtM2R/nZrNeoxeQ+A2JMrxNm3Qy8DL/mujPxUKoue52UkvSkjh80LOVHSJ3HyxQ2M/znaLyNUHMZk4TzNpE4PaFyvjAGKBIZGkmBAq+HJ6L4pq6WB6dPVk48/b7bjMZeGnyYFFvPkjE9LcmuIm5/+KqSd9n4OOsieEnakzAaRrfRkrSATrAS1ukFC2bp+EIUrDuJF4AOsLreSCRokpX/71fXmHSIN2KXtmIdFh5wehPMAdznh7sJYUSgsZyJonU8rh3zJGt9aluIhiE1Gq+H8LsfVl4Qkat7r68lxUF5wG7L6zWx3Tc2cKDYJpuFGLbxN2Yd0Xn9sw+2ftchaywxnl5DFPgZX237Nm8AW1V31xP5VE4KG+Enjh/+FP6Mv8pawNlOSRiUvaclHoOmUdzMBzABmpf5CcvMpuwiruxDZL/KM7x36hOPxE6TRHSYWG3uUnhD2oSQjCAEnYn38y+3zTKNGwlYQXvXtnB8uN0CUs1pKexln2dOS4KYc221rjiMpkOf6qq+HHiRL0x01ROyKXV32iFi2jXqGMje60YmvHoS2B2KTiZfMn3r3tAdDqQkAbnE1oUzPT1pErMvzL9JCyG3Ovzxxj4ZiLM2cMgwpMasdtuXf57Eh3kaOJEVeZnZbRsd1mupzR06/7qk+yqs8g5icUaFj1rzKNHhpSfG1dc636+TMDno17dBZABYRBJGJYowtUwCrCcEgRkGKPUGXb29XWHqIRwPMQRKPSvhRvnVFvX6SfXErw237QfFitTudpLdPlyMCzR0GmpJ4POhrBXU0sFdWwWCxTBEMSJ2XIRI0lSXqXQZ3mp/0nl+6vLAE0tDGc6Vg2LK6IebhUKMUMVeITdyMHofAYoXELCBcdl0ImmWRS3P88zSpQpE7PSirBf1MCyzHtFHMl+vv1o+TSnGBBGNIYRXk7mJ07TlF3ufNgdIKLOoK449J2TpMrHl3TLG036/CycDm88wwMy650wsh8NeS6Ykk1Lr3PTcBxdVg0EAztYBLlRHWSy0W/P6aS/n7FlCU8LSAU3SvsswniBFPDXrOyB3bshquAdhOqvAY4IFTlBsj7UmOtZosiJVBK7XpiiVzCjVzeyglpdabqIH1ZQPJDhWhGrS9CDiOwIAo7pbbwzkJF9112qEEhKyjdPfO+eggCOXwmfg+++ItM9TO60n+GdyyeRNvlnn+dPjEPpSHxDNpfgAPngZ5yENREdPRoFjyiqWa1iRqmz6Vt1RbEIGklcoZMMia40K67oYzhaIsCoGVbYPigwxLl28VoXQg4lSNB2QhjHz2JSWYuFh6I/F/AnXT3ZJtQVpYdffz9XasuazAE7JCXWc1v9Zgh1oLHpwQmrvJABm1DBmcDNN29fwK7gXjtUc+/+AT2JQBofkADNEJ3FaLg2TeKFL4QQcfcWm3L9MjdPhQ7eptyQii6KUTfEGsUYa063l3W85zq0aJcdTVdW03+xw2kmrpayDCJWaHVcr2C5Wjuo9OyZkmYHlOIJafs8J5D5EkNDxDiOsmn+m+1vBMe0ayvL8yv4+IcTly/aEum9MOzkJ4S8dXD1hau+W2e2EAdbaxlf1Z4+6YO77KdBR/Cb0MFrCJQSZ1VMnhIIPO1x3nNDLOsyCM2bv6rSlWWE4lmNcbKttzVJ/F5l1O1SV3rwGlssQfFy5MUUteo4jtXQcXsMj8ISPDdm9Qgetduyj7ZISyOVQZ/yjbcNIukG2VuNSWKWuWgarW+A6qPVazvbz6jVbqVvf3HM4iqGlHEkch7PUl5mcKgjRqExZqb7URUhke8ZJmZO3+7BW4LXV4kmS+M3sb6qj3VAhYzg/ikWhUjCuPd5GOVU+Meysbxb6nc1xvUaroSJllszzTCxdcT+NNvI6SjIRkXgySEZnt8BN1/UARzH6tYEY5T+qIDDiM08NlmDihSit+YfPpgSsRjyYUdB/TDSxeAXqaFJJN9gt5BoIRxghkMaVx4FN00ddDhOxFwwHQaBwDPuc7ffXR90RwGyyvUW8aG4X2u0lL7wVCoZMYyAEplFxT9+uk7lN6h0H0p89zhcFA05sPLuG1iH7t1UPVHhHKFHd0D4RpRtKUOAh6CxR5dvuViCZqRyU5iDIg/C4Fo9DlUvfI4y25/P8pu4VQIvBOiWua3oJniSTi/rirvjwzs7G2adTpbJsuMCuRpXCCfI7bfpa7eo4sxjsR5BcqnOYJIHeuDSfoHx7qWuEoP2hXNKrzNG34uTFdvGpcmXL40vHsdlchzDEN5azxpH4UTVy1vS72cXwF1fC39BuLEXxWk9a9VvaK4dzQfWwMjSnv6lNuZg+JgJIm3uU1lqW63zpyvfdr+Lu3cCGiJ4tFtyV5Ii2v5CR00QM9ZmlbUok4BcSEHiJB58u2D9HAx334GP+Ng0zMDedQS9GO77lAo58qwiG3yRauYSxs8ilW2I3d0eAqbRQ9Su5sjB+6IrrLHpKkgpgwZzOpqDZeq8h8vUd4sqVhjW4EgPKdR3dBH/dPsaumoYreXkBIPGk88/GQC8uKunrw661FEEZyNVkNKBym7fBnMaY6T8dZpNtgM3PW0XOAgIncVAUikZ5xYeU71mIRTcus7egZyUYY0IB8ZbsvSZ9sbBy+zzKl7hf917qvoQtuPFLzk1RcgMFYbxVtxCLc+/fvnKBufNJIPt7I4AxgPltGiHt6PSnpongfwNozbZhRbUT9jKQ/U6wGiygJA1A8xujoOQtTxQeP4DY0ZwXWN4wQ8LP4TxUjH2NGecydxLN8+iJbDvmh8+d64NHT0eVtsHCq3kjXV2nItTHOnienzIYlkU7GGN+HnNxHU8/KtFCTCqR1OUshIrIFdglKmpMx7O/6jiTMd1QW5h+S8hdmA+heSbbL68r/pnt1ilbgm1di376NKpYpJa2MqCoJOzgSXjI3bof+o0nM2oPU6oR4oUqUVj6yT1P9Lvn1ivPuwJ65e/eesc94jtuvenKJm76QPz3nZgWHQyKNBplqC8GOx3i+8Nw/DRiR3Vr77gBR3IlXK2LrsZEZ/kR8+NTbFDDILwOpoL5HHeDRgx7ggKJm8H4ERwPumAcBLvKw7q8beoYiJtIHjfOMGjuNJtWaA59frpgNfcn4qnglbgoZ/VF1J31auiyAykT9LX7dlx3qA9KS2y5yz/ua1mefxLv8RLENE+qwXg0rqNO07cvCVXKMeuQCVB44ZkWHZ8yBcSLklJi+Q75a64u/XHw5APqYbCPmR06xkUuBQyUh/TIqhdN7shDpQxqFuDMf7+EgjQgE66xdxkP5UsNfqqxTuT2Tm3x7Gl8sMEdVA8Q+fE5ffHJnwWaQn2SENuuuMkpqmY/FG0OHMle8WCTPzigjAiCEPSdpE7zu4rHJbXuCRaaUJ4kZJG01/OI9E4FNMzYU8Ie2mbNczMB3B2rOxB5yNlznrjeAeEI0B5ySKm3Ot7C5+M5TRtNnjazbWcmZalO5MDzDxs2dDXi+qY0CTgU/ZSMDZsCZn1XFsO6xFs3nYfaA/RBn3i0Z/m15FVmmvGxrKqKU6FhmJaF4yI6YllOEMQmDM9jsoUz1DbZCaeBmb6O6YrgE2sVNXSrHhdOCqufpHhfY/b2En8uSXS/dF0cDETiXlAQbLmjyBKP0b25Y58BPXER0pAuVFchSgQRIjgumlkNc2gFH50TS7Tym6KrtrR/0Q3umrxYNuyQVBLcii7KGoZt6nIhsazxhKXD6biGAbwT4eHYV0CbddBA4w0OdMIfqYYnXKImtbe8TtdZnmiiJU1bLBMlzQiwhMikZPVIWZQ/PbB6MzawBSsVUeDMsvlrQvJQ3j5Ot007xIx/twxD6zswno3mcDgxQ/Og3dv/O4FeuHtrlJPcaUeEGjL89RpB5H4mcvOaiPr9Lf0OdaVAanuPiiplXvcIxGG1374YmWzT2jSIqnFk+Ed7bfOyRny5BZ8H81f/cOAnMa4OLMUgA1/F4AONGP7ACjDVfSDazM2FMhCIiWYSQ8hw3/cYKNEVdOUWgQDfPWP51/jWU7n63yyOvwHgl2ceb19c+K/5b6XntDzHrJkBdBgABP31sOacVpX+e6hFVeMK5ycJWa3j0UfOevSi1S7hdup3NPVX7FsH0CglSK0JIIxTHnT+khRD+mkXA+UUTs0ggKxGU6jUBo6oXy/Wj9hLA1W2emD0w/gaxkb9eq/Go2Swax9Rzj2AoGG4VaXBLdX0eFCRSMoaebatBIknppo1QDxMi+FUll6UFWfLg4gxSY1QjNRjDw61FYXyU4GKmpgUSG2A/JllCfXHhXPtpJ0IVp5GFfNyFVGSzXjU9NGxqhphc7lJheFQhngo/C61A2XNROvWh/DIYmTZosvSB3FOi11VjLJyfZWPtCoQW8oGQWmQBURJKIQL5DCFY+IUYXVTp3Qh842R04lEGg6RZMsVwvK8JQ2pmxRZif7uWWRJPUTQOBMu6/E3mJXMOQ3fYYzcYO8S58mXxAbN6dLlLbc5o1gOyCOePYHdWz+e6FNkGeu1lC4ntuQq+nTrVWHfHT72ZLlpB9ptKhoYrpS1mFeO/UwX36X0kZch1olgDU4pi/2hvdDmcbunW483LUFWCepZ4tGUTY34jNaMJvuQu0mWKJnHAI1+yXI5ierTdYeQHb7sUwWyYpD4fr4kziVxdmUlFqx8JkV/tbmWc9hjfwL2Yzcer+72+aQ1TyGfIvCwFDkB/zWucIGA86nDk4YKGZuWf9WGZIFDAyYAb5U4VQhRPIXhFKZwjrmhKMQZBFX2gSbb1nC4R70JApgffyWAEW+ljyBWEEq+MoD0TYkgvFGGCN2oEVt7AjKquwmSwDaqjBHZraTw9CkTJFoVCUODMkUgT5nBl6DMkXJXFhDkyhIhIawk8V2sIQBXKFMqk1aYKt22RKFsIXK5smDt+Sdk1hQnI3kbpE5thUxwWXqYHGKkPApjcxxvO0sVIsrHliIKOU+rVupHSjhytvkKKMZ4rMf8CGrsEpugwJ7Uxs6ZcmXhrDH6y1Xy5sBllnM9nDe3aVU1VxNcebCi+PQK+eo2Ti6b6kbbCokRFaaw3JKcWg725MhxN+RDJexDaZwAkWacNUZmD5WZAPOd9SpWLiU5c5RWV+TKc66OsMExXlumqGCyL1r9VLfElK1CI00vaw/nUyi4dbUsCtkvxRYHNSut22RKJLGP29hrAzM+0vQGZ3+w8wG2O58ojMmyS7bdFrFkJYe1t2RynXPBRTZs2ZG75LIrrrIP3l+dn57H2TXX5btpsT32cvGRK7ee7PCtKAp8vHjzse9NW0yh56L0xaU2ChKsTIh3QpU3on22sH7ifPMdVWrUJh+qRYWBaD3guV7qxKnXqEmDTebYJ94nCWZI1G2mJM1a/GKuZClSaXxw1KzMhSGnk4D1+sIEvR75VPqz82FGJCEQC7GRzhZj/WtXV756CtRXqIEiDRVrpERjpZpIaqqZ5lpoqZXWHDfpT98j00Zb7ZRrr0IHHcHjpLMuuqKLy5jUDhRbmNnsrE46aPimx013ePY7wB8LW5oMvlSGjTjokAGH/aHfSadQEfHQUy+9McfUpUOvHr+aFx+VpHujzQn0TKPdChyffTGIZMrEUpm28sOIr9NVCQmLiGrRqk27mLgOnbokJFkgwHx3PXLPfY9TM2oOlBhJT6QLxgd7xGI5JJaJJfN7RP1DyX7a45hLtkllKpaUw/My8Yxom9R6543Fx5aeR/TJYGTuofT7jWXmDA2m756xyWzm7Z7uxffcvdYV354Jfo32TNk735xd7e12DfYMzny9+sJ2zwuWCmEWBGHmB4lAVgBhLwv7FwuwQ31pC5YCHBRAAhDcHAgAIKk95Y6RilXieKJYDGuiUk/Ge3JEFVFlVOWq5XtB4qbcklP32SR+z/ecmD4hC1n70ILKKLdyL4G95M4h0yd/JxCIrhvh4IA7C/c7mOtTjcaqnyj01bCUh+1qnSV3zm4du3P2bdjJP3guwdzukfexk+PD8yP2N5i98J4Qq7Gsav6xIo9fyA4kPKlkMxLuolJPGV8Gmj/W05+6m0telBsa6ttNYpBjC1NDY3tHXHVbkKr8ETJ1oVS0gv9gq+1iSywHTbIO9GwYeTXv/u5eynYA)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--background:oklch(97.5% 0 0);--foreground:oklch(14.5% 0 0);--card:oklch(100% 0 0);--card-foreground:oklch(14.5% 0 0);--popover:oklch(100% 0 0);--popover-foreground:oklch(14.5% 0 0);--primary:oklch(20.5% 0 0);--primary-foreground:oklch(98.5% 0 0);--secondary:oklch(93% 0 0);--secondary-foreground:oklch(20.5% 0 0);--muted:oklch(93% 0 0);--muted-foreground:oklch(55.6% 0 0);--accent:oklch(93% 0 0);--accent-foreground:oklch(20.5% 0 0);--destructive:oklch(57.7% .245 27.325);--border:oklch(92.2% 0 0);--input:oklch(92.2% 0 0);--ring:oklch(70.8% 0 0);--chart-1:oklch(87% 0 0);--chart-2:oklch(55.6% 0 0);--chart-3:oklch(43.9% 0 0);--chart-4:oklch(37.1% 0 0);--chart-5:oklch(26.9% 0 0);--radius:.625rem;--sidebar:oklch(94% 0 0);--sidebar-foreground:oklch(14.5% 0 0);--sidebar-primary:oklch(20.5% 0 0);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(90% 0 0);--sidebar-accent-foreground:oklch(20.5% 0 0);--sidebar-border:oklch(92.2% 0 0);--sidebar-ring:oklch(70.8% 0 0)}.dark{--background:oklch(14.5% 0 0);--foreground:oklch(98.5% 0 0);--card:oklch(20.5% 0 0);--card-foreground:oklch(98.5% 0 0);--popover:oklch(20.5% 0 0);--popover-foreground:oklch(98.5% 0 0);--primary:oklch(92.2% 0 0);--primary-foreground:oklch(20.5% 0 0);--secondary:oklch(26.9% 0 0);--secondary-foreground:oklch(98.5% 0 0);--muted:oklch(26.9% 0 0);--muted-foreground:oklch(70.8% 0 0);--accent:oklch(26.9% 0 0);--accent-foreground:oklch(98.5% 0 0);--destructive:oklch(70.4% .191 22.216);--border:oklch(100% 0 0/.1);--input:oklch(100% 0 0/.15);--ring:oklch(55.6% 0 0);--chart-1:oklch(87% 0 0);--chart-2:oklch(55.6% 0 0);--chart-3:oklch(43.9% 0 0);--chart-4:oklch(37.1% 0 0);--chart-5:oklch(26.9% 0 0);--sidebar:oklch(20.5% 0 0);--sidebar-foreground:oklch(98.5% 0 0);--sidebar-primary:oklch(48.8% .243 264.376);--sidebar-primary-foreground:oklch(98.5% 0 0);--sidebar-accent:oklch(34% 0 0);--sidebar-accent-foreground:oklch(98.5% 0 0);--sidebar-border:oklch(100% 0 0/.1);--sidebar-ring:oklch(55.6% 0 0)}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}@keyframes enter{0%{opacity:var(--tw-enter-opacity,1);transform:translate3d(var(--tw-enter-translate-x,0),var(--tw-enter-translate-y,0),0)scale3d(var(--tw-enter-scale,1),var(--tw-enter-scale,1),var(--tw-enter-scale,1))rotate(var(--tw-enter-rotate,0));filter:blur(var(--tw-enter-blur,0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity,1);transform:translate3d(var(--tw-exit-translate-x,0),var(--tw-exit-translate-y,0),0)scale3d(var(--tw-exit-scale,1),var(--tw-exit-scale,1),var(--tw-exit-scale,1))rotate(var(--tw-exit-rotate,0));filter:blur(var(--tw-exit-blur,0))}}.xterm{cursor:text;-webkit-user-select:none;user-select:none;position:relative}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{z-index:5;position:absolute;top:0}.xterm .xterm-helper-textarea{opacity:0;z-index:-5;white-space:nowrap;resize:none;border:0;width:0;height:0;margin:0;padding:0;position:absolute;top:0;left:-9999em;overflow:hidden}.xterm .composition-view{color:#fff;white-space:nowrap;z-index:1;background:#000;display:none;position:absolute}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{cursor:default;background-color:#000;position:absolute;inset:0;overflow-y:scroll}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{position:absolute;top:0;left:0}.xterm-char-measure-element{visibility:hidden;line-height:normal;display:inline-block;position:absolute;top:0;left:-9999em}.xterm.enable-mouse-events{cursor:default}.xterm.xterm-cursor-pointer,.xterm .xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{z-index:10;color:#0000;pointer-events:none;position:absolute;inset:0}.xterm .xterm-accessibility-tree:not(.debug) ::selection{color:#0000}.xterm .xterm-accessibility-tree{-webkit-user-select:text;user-select:text;white-space:pre;font-family:monospace}.xterm .xterm-accessibility-tree>div{transform-origin:0;width:fit-content}.xterm .live-region{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{-webkit-text-decoration:underline double;text-decoration:underline double}.xterm-underline-3{-webkit-text-decoration:underline wavy;text-decoration:underline wavy}.xterm-underline-4{-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.xterm-underline-5{-webkit-text-decoration:underline dashed;text-decoration:underline dashed}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:underline overline}.xterm-overline.xterm-underline-2{-webkit-text-decoration:overline double underline;text-decoration:overline double underline}.xterm-overline.xterm-underline-3{-webkit-text-decoration:overline wavy underline;text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{-webkit-text-decoration:overline dotted underline;text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{-webkit-text-decoration:overline dashed underline;text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{z-index:6;position:absolute}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{z-index:8;pointer-events:none;position:absolute;top:0;right:0}.xterm-decoration-top{z-index:2;position:relative}.xterm .xterm-scrollable-element>.scrollbar{cursor:default}.xterm .xterm-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.xterm .xterm-scrollable-element>.visible{opacity:1;z-index:11;background:0 0;transition:opacity .1s linear}.xterm .xterm-scrollable-element>.invisible{opacity:0;pointer-events:none}.xterm .xterm-scrollable-element>.invisible.fade{transition:opacity .8s linear}.xterm .xterm-scrollable-element>.shadow{display:none;position:absolute}.xterm .xterm-scrollable-element>.shadow.top{width:100%;height:3px;box-shadow:var(--vscode-scrollbar-shadow,#000) 0 6px 6px -6px inset;display:block;top:0;left:3px}.xterm .xterm-scrollable-element>.shadow.left{width:3px;height:100%;box-shadow:var(--vscode-scrollbar-shadow,#000) 6px 0 6px -6px inset;display:block;top:3px;left:0}.xterm .xterm-scrollable-element>.shadow.top-left-corner{width:3px;height:3px;display:block;top:0;left:0}.xterm .xterm-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow,#000) 6px 0 6px -6px inset}
205
205
  /*$vite$:1*/</style>
206
206
  </head>
207
207
  <body>