@tom2012/cc-web 1.5.37 → 1.5.39

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (30) hide show
  1. package/README.md +5 -1
  2. package/backend/dist/index.d.ts.map +1 -1
  3. package/backend/dist/index.js +104 -0
  4. package/backend/dist/index.js.map +1 -1
  5. package/backend/dist/session-manager.d.ts +3 -1
  6. package/backend/dist/session-manager.d.ts.map +1 -1
  7. package/backend/dist/session-manager.js +7 -3
  8. package/backend/dist/session-manager.js.map +1 -1
  9. package/backend/dist/terminal-manager.d.ts +5 -1
  10. package/backend/dist/terminal-manager.d.ts.map +1 -1
  11. package/backend/dist/terminal-manager.js +13 -2
  12. package/backend/dist/terminal-manager.js.map +1 -1
  13. package/frontend/dist/assets/ChatView-DHceYEQu.js +16 -0
  14. package/frontend/dist/assets/GraphPreview-N3E2cIAz.js +22 -0
  15. package/frontend/dist/assets/OfficePreview-DU2Hm9q8.js +13 -0
  16. package/frontend/dist/assets/ProjectPage-9CEnUXvW.css +32 -0
  17. package/frontend/dist/assets/ProjectPage-tQtkCa-F.js +169 -0
  18. package/frontend/dist/assets/SettingsPage-BOkP1J2E.js +36 -0
  19. package/frontend/dist/assets/SkillHubPage-BCEiOqrp.js +11 -0
  20. package/frontend/dist/assets/chevron-down-3Iee9LeQ.js +6 -0
  21. package/frontend/dist/assets/index-BoRMSxCU.css +1 -0
  22. package/frontend/dist/assets/{index-CeSIZyhn.js → index-DosNEafF.js} +1 -1
  23. package/frontend/dist/assets/index-HZqCo2f1.js +270 -0
  24. package/frontend/dist/assets/{jszip.min-BEfuE5vH.js → jszip.min-rijCkWTm.js} +1 -1
  25. package/frontend/dist/assets/select-CyT5wy3n.js +11 -0
  26. package/frontend/dist/assets/user-DWfPqhZs.js +11 -0
  27. package/frontend/dist/index.html +2 -2
  28. package/package.json +1 -1
  29. package/frontend/dist/assets/index-BJy7DPYK.css +0 -32
  30. package/frontend/dist/assets/index-D_eyHtwF.js +0 -554
@@ -0,0 +1,36 @@
1
+ import{c as R,r,j as e,Y as ce,a0 as L,a1 as A,a4 as le,$ as Be,W as ie,at as Ge,a2 as ze,e as Q,au as He,D as Ke,y as Ve,z as $e,B as Ue,H as Xe,K as I,L as P,I as z,J as Ye,av as se,aw as q,ax as qe,ay as Ze,az as Je,ag as de,aA as Qe,l as ue,aB as We,ae as et,af as tt,v as st,A as at,o as nt,X as rt,aC as ot,aD as ct,aE as lt,aF as it,aG as dt,aH as ut,aI as ae}from"./index-HZqCo2f1.js";import{k as mt,u as me,d as xe,e as he,f as fe,g as pe,j as H,S as xt,b as ht}from"./select-CyT5wy3n.js";import"./chevron-down-3Iee9LeQ.js";/**
2
+ * @license lucide-react v0.309.0 - ISC
3
+ *
4
+ * This source code is licensed under the ISC license.
5
+ * See the LICENSE file in the root directory of this source tree.
6
+ */const ft=R("AlertTriangle",[["path",{d:"m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3Z",key:"c3ski4"}],["path",{d:"M12 9v4",key:"juzpu7"}],["path",{d:"M12 17h.01",key:"p32p05"}]]);/**
7
+ * @license lucide-react v0.309.0 - ISC
8
+ *
9
+ * This source code is licensed under the ISC license.
10
+ * See the LICENSE file in the root directory of this source tree.
11
+ */const pt=R("CheckCircle2",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m9 12 2 2 4-4",key:"dzmm74"}]]);/**
12
+ * @license lucide-react v0.309.0 - ISC
13
+ *
14
+ * This source code is licensed under the ISC license.
15
+ * See the LICENSE file in the root directory of this source tree.
16
+ */const gt=R("Clock",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["polyline",{points:"12 6 12 12 16 14",key:"68esgv"}]]);/**
17
+ * @license lucide-react v0.309.0 - ISC
18
+ *
19
+ * This source code is licensed under the ISC license.
20
+ * See the LICENSE file in the root directory of this source tree.
21
+ */const Z=R("Cloud",[["path",{d:"M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z",key:"p7xjir"}]]);/**
22
+ * @license lucide-react v0.309.0 - ISC
23
+ *
24
+ * This source code is licensed under the ISC license.
25
+ * See the LICENSE file in the root directory of this source tree.
26
+ */const ne=R("HardDrive",[["line",{x1:"22",x2:"2",y1:"12",y2:"12",key:"1y58io"}],["path",{d:"M5.45 5.11 2 12v6a2 2 0 0 0 2 2h16a2 2 0 0 0 2-2v-6l-3.45-6.89A2 2 0 0 0 16.76 4H7.24a2 2 0 0 0-1.79 1.11z",key:"oot6mr"}],["line",{x1:"6",x2:"6.01",y1:"16",y2:"16",key:"sgf278"}],["line",{x1:"10",x2:"10.01",y1:"16",y2:"16",key:"1l4acy"}]]);/**
27
+ * @license lucide-react v0.309.0 - ISC
28
+ *
29
+ * This source code is licensed under the ISC license.
30
+ * See the LICENSE file in the root directory of this source tree.
31
+ */const vt=R("Settings2",[["path",{d:"M20 7h-9",key:"3s1dr2"}],["path",{d:"M14 17H5",key:"gfn3mx"}],["circle",{cx:"17",cy:"17",r:"3",key:"18b49y"}],["circle",{cx:"7",cy:"7",r:"3",key:"dfmy0x"}]]);/**
32
+ * @license lucide-react v0.309.0 - ISC
33
+ *
34
+ * This source code is licensed under the ISC license.
35
+ * See the LICENSE file in the root directory of this source tree.
36
+ */const yt=R("XCircle",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"m15 9-6 6",key:"1uzhvr"}],["path",{d:"m9 9 6 6",key:"z0biqf"}]]);var Y="rovingFocusGroup.onEntryFocus",jt={bubbles:!1,cancelable:!0},B="RovingFocusGroup",[J,ge,bt]=mt(B),[Nt,ve]=le(B,[bt]),[wt,Ct]=Nt(B),ye=r.forwardRef((t,n)=>e.jsx(J.Provider,{scope:t.__scopeRovingFocusGroup,children:e.jsx(J.Slot,{scope:t.__scopeRovingFocusGroup,children:e.jsx(St,{...t,ref:n})})}));ye.displayName=B;var St=r.forwardRef((t,n)=>{const{__scopeRovingFocusGroup:s,orientation:a,loop:i=!1,dir:x,currentTabStopId:l,defaultCurrentTabStopId:m,onCurrentTabStopIdChange:p,onEntryFocus:y,preventScrollOnEntryFocus:d=!1,...u}=t,g=r.useRef(null),T=Be(n,g),k=me(x),[w,h]=ie({prop:l,defaultProp:m??null,onChange:p,caller:B}),[b,C]=r.useState(!1),v=Ge(y),f=ge(s),D=r.useRef(!1),[M,_]=r.useState(0);return r.useEffect(()=>{const j=g.current;if(j)return j.addEventListener(Y,v),()=>j.removeEventListener(Y,v)},[v]),e.jsx(wt,{scope:s,orientation:a,dir:k,loop:i,currentTabStopId:w,onItemFocus:r.useCallback(j=>h(j),[h]),onItemShiftTab:r.useCallback(()=>C(!0),[]),onFocusableItemAdd:r.useCallback(()=>_(j=>j+1),[]),onFocusableItemRemove:r.useCallback(()=>_(j=>j-1),[]),children:e.jsx(L.div,{tabIndex:b||M===0?-1:0,"data-orientation":a,...u,ref:T,style:{outline:"none",...t.style},onMouseDown:A(t.onMouseDown,()=>{D.current=!0}),onFocus:A(t.onFocus,j=>{const c=!D.current;if(j.target===j.currentTarget&&c&&!b){const S=new CustomEvent(Y,jt);if(j.currentTarget.dispatchEvent(S),!S.defaultPrevented){const F=f().filter(E=>E.focusable),G=F.find(E=>E.active),U=F.find(E=>E.id===w),X=[G,U,...F].filter(Boolean).map(E=>E.ref.current);Ne(X,d)}}D.current=!1}),onBlur:A(t.onBlur,()=>C(!1))})})}),je="RovingFocusGroupItem",be=r.forwardRef((t,n)=>{const{__scopeRovingFocusGroup:s,focusable:a=!0,active:i=!1,tabStopId:x,children:l,...m}=t,p=ce(),y=x||p,d=Ct(je,s),u=d.currentTabStopId===y,g=ge(s),{onFocusableItemAdd:T,onFocusableItemRemove:k,currentTabStopId:w}=d;return r.useEffect(()=>{if(a)return T(),()=>k()},[a,T,k]),e.jsx(J.ItemSlot,{scope:s,id:y,focusable:a,active:i,children:e.jsx(L.span,{tabIndex:u?0:-1,"data-orientation":d.orientation,...m,ref:n,onMouseDown:A(t.onMouseDown,h=>{a?d.onItemFocus(y):h.preventDefault()}),onFocus:A(t.onFocus,()=>d.onItemFocus(y)),onKeyDown:A(t.onKeyDown,h=>{if(h.key==="Tab"&&h.shiftKey){d.onItemShiftTab();return}if(h.target!==h.currentTarget)return;const b=kt(h,d.orientation,d.dir);if(b!==void 0){if(h.metaKey||h.ctrlKey||h.altKey||h.shiftKey)return;h.preventDefault();let v=g().filter(f=>f.focusable).map(f=>f.ref.current);if(b==="last")v.reverse();else if(b==="prev"||b==="next"){b==="prev"&&v.reverse();const f=v.indexOf(h.currentTarget);v=d.loop?Dt(v,f+1):v.slice(f+1)}setTimeout(()=>Ne(v))}}),children:typeof l=="function"?l({isCurrentTabStop:u,hasTabStop:w!=null}):l})})});be.displayName=je;var Tt={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function It(t,n){return n!=="rtl"?t:t==="ArrowLeft"?"ArrowRight":t==="ArrowRight"?"ArrowLeft":t}function kt(t,n,s){const a=It(t.key,s);if(!(n==="vertical"&&["ArrowLeft","ArrowRight"].includes(a))&&!(n==="horizontal"&&["ArrowUp","ArrowDown"].includes(a)))return Tt[a]}function Ne(t,n=!1){const s=document.activeElement;for(const a of t)if(a===s||(a.focus({preventScroll:n}),document.activeElement!==s))return}function Dt(t,n){return t.map((s,a)=>t[(n+a)%t.length])}var Et=ye,At=be,$="Tabs",[Ft]=le($,[ve]),we=ve(),[Rt,W]=Ft($),Ce=r.forwardRef((t,n)=>{const{__scopeTabs:s,value:a,onValueChange:i,defaultValue:x,orientation:l="horizontal",dir:m,activationMode:p="automatic",...y}=t,d=me(m),[u,g]=ie({prop:a,onChange:i,defaultProp:x??"",caller:$});return e.jsx(Rt,{scope:s,baseId:ce(),value:u,onValueChange:g,orientation:l,dir:d,activationMode:p,children:e.jsx(L.div,{dir:d,"data-orientation":l,...y,ref:n})})});Ce.displayName=$;var Se="TabsList",Te=r.forwardRef((t,n)=>{const{__scopeTabs:s,loop:a=!0,...i}=t,x=W(Se,s),l=we(s);return e.jsx(Et,{asChild:!0,...l,orientation:x.orientation,dir:x.dir,loop:a,children:e.jsx(L.div,{role:"tablist","aria-orientation":x.orientation,...i,ref:n})})});Te.displayName=Se;var Ie="TabsTrigger",ke=r.forwardRef((t,n)=>{const{__scopeTabs:s,value:a,disabled:i=!1,...x}=t,l=W(Ie,s),m=we(s),p=Ae(l.baseId,a),y=Fe(l.baseId,a),d=a===l.value;return e.jsx(At,{asChild:!0,...m,focusable:!i,active:d,children:e.jsx(L.button,{type:"button",role:"tab","aria-selected":d,"aria-controls":y,"data-state":d?"active":"inactive","data-disabled":i?"":void 0,disabled:i,id:p,...x,ref:n,onMouseDown:A(t.onMouseDown,u=>{!i&&u.button===0&&u.ctrlKey===!1?l.onValueChange(a):u.preventDefault()}),onKeyDown:A(t.onKeyDown,u=>{[" ","Enter"].includes(u.key)&&l.onValueChange(a)}),onFocus:A(t.onFocus,()=>{const u=l.activationMode!=="manual";!d&&!i&&u&&l.onValueChange(a)})})})});ke.displayName=Ie;var De="TabsContent",Ee=r.forwardRef((t,n)=>{const{__scopeTabs:s,value:a,forceMount:i,children:x,...l}=t,m=W(De,s),p=Ae(m.baseId,a),y=Fe(m.baseId,a),d=a===m.value,u=r.useRef(d);return r.useEffect(()=>{const g=requestAnimationFrame(()=>u.current=!1);return()=>cancelAnimationFrame(g)},[]),e.jsx(ze,{present:i||d,children:({present:g})=>e.jsx(L.div,{"data-state":d?"active":"inactive","data-orientation":m.orientation,role:"tabpanel","aria-labelledby":p,hidden:!g,id:y,tabIndex:0,...l,ref:n,style:{...t.style,animationDuration:u.current?"0s":void 0},children:g&&x})})});Ee.displayName=De;function Ae(t,n){return`${t}-trigger-${n}`}function Fe(t,n){return`${t}-content-${n}`}var _t=Ce,Re=Te,_e=ke,Pe=Ee;const Pt=_t,Le=r.forwardRef(({className:t,...n},s)=>e.jsx(Re,{ref:s,className:Q("inline-flex h-10 items-center justify-center rounded-md bg-muted p-1 text-muted-foreground",t),...n}));Le.displayName=Re.displayName;const K=r.forwardRef(({className:t,...n},s)=>e.jsx(_e,{ref:s,className:Q("inline-flex items-center justify-center whitespace-nowrap rounded-sm px-3 py-1.5 text-sm font-medium ring-offset-background transition-all focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 data-[state=active]:bg-background data-[state=active]:text-foreground data-[state=active]:shadow-sm",t),...n}));K.displayName=_e.displayName;const V=r.forwardRef(({className:t,...n},s)=>e.jsx(Pe,{ref:s,className:Q("mt-2 ring-offset-background focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-ring focus-visible:ring-offset-2",t),...n}));V.displayName=Pe.displayName;const re={"google-drive":"Google Drive",onedrive:"OneDrive",dropbox:"Dropbox"};function Lt({open:t,onOpenChange:n,onAdded:s}){const[a,i]=r.useState([]),[x,l]=r.useState(!1),[m,p]=r.useState(null),[y,d]=r.useState(""),[u,g]=r.useState(""),[T,k]=r.useState(""),[w,h]=r.useState(""),[b,C]=r.useState(!1),[v,f]=r.useState(null);r.useEffect(()=>{t&&He().then(c=>i(c.available)).catch(()=>i([]))},[t]);const D=()=>{l(!1),p(null),d(""),g(""),k(""),h(""),C(!1),f(null)},M=async c=>{p(c),f(null);try{const{id:S}=await se({type:c,label:re[c]||c}),{url:F}=await q(S);window.open(F,"_blank"),D(),n(!1),s()}catch(S){f(S instanceof Error?S.message:"添加失败"),p(null)}},_=async()=>{if(!y||!u||!T||!w){f("请填写所有字段");return}C(!0),f(null);try{const{id:c}=await se({type:y,label:u,clientId:T,clientSecret:w}),{url:S}=await q(c);window.open(S,"_blank"),D(),n(!1),s()}catch(c){f(c instanceof Error?c.message:"添加失败")}finally{C(!1)}},j=a.length>0;return e.jsx(Ke,{open:t,onOpenChange:c=>{n(c),c||D()},children:e.jsxs(Ve,{className:"sm:max-w-md",children:[e.jsxs($e,{children:[e.jsxs(Ue,{className:"flex items-center gap-2",children:[e.jsx(Z,{className:"h-5 w-5"}),"添加云盘账号"]}),e.jsx(Xe,{children:x?"手动填写 OAuth 凭据连接云盘":"选择云盘类型,点击后跳转登录授权"})]}),x?e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"space-y-4 py-2",children:[e.jsxs("div",{className:"space-y-2",children:[e.jsx(P,{children:"云盘类型"}),e.jsxs(xe,{value:y,onValueChange:d,children:[e.jsx(he,{children:e.jsx(fe,{placeholder:"选择云盘类型"})}),e.jsxs(pe,{children:[e.jsx(H,{value:"google-drive",children:"Google Drive"}),e.jsx(H,{value:"onedrive",children:"OneDrive"}),e.jsx(H,{value:"dropbox",children:"Dropbox"})]})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(P,{children:"显示名称"}),e.jsx(z,{placeholder:"例如:我的 Google Drive",value:u,onChange:c=>g(c.target.value)})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(P,{children:"Client ID"}),e.jsx(z,{placeholder:"OAuth Client ID",value:T,onChange:c=>k(c.target.value)})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(P,{children:"Client Secret"}),e.jsx(z,{type:"password",placeholder:"OAuth Client Secret",value:w,onChange:c=>h(c.target.value)})]}),v&&e.jsx("p",{className:"text-sm text-destructive",children:v})]}),e.jsxs(Ye,{children:[e.jsx(I,{variant:"outline",onClick:()=>{l(!1),f(null)},children:"返回"}),e.jsx(I,{onClick:_,disabled:b,children:b?"添加中...":"添加并授权"})]})]}):e.jsxs("div",{className:"space-y-3 py-2",children:[j?e.jsx(e.Fragment,{children:a.map(c=>e.jsx(I,{variant:"outline",className:"w-full justify-start gap-3 h-12 text-base",onClick:()=>void M(c),disabled:m!==null,children:m===c?"连接中...":`连接 ${re[c]||c}`},c))}):e.jsx("p",{className:"text-sm text-muted-foreground text-center py-4",children:"暂无内置 OAuth 凭据,请使用手动模式添加"}),v&&e.jsx("p",{className:"text-sm text-destructive",children:v}),e.jsx("div",{className:"pt-2 border-t border-border",children:e.jsxs("button",{onClick:()=>{l(!0),f(null)},className:"flex items-center gap-1.5 text-xs text-muted-foreground hover:text-foreground transition-colors",children:[e.jsx(vt,{className:"h-3.5 w-3.5"}),"手动填写 OAuth 凭据"]})})]})]})})}const Mt={"google-drive":"Google Drive",onedrive:"OneDrive",dropbox:"Dropbox"};function Ot({type:t}){switch(t){case"google-drive":return e.jsx(ne,{className:"h-5 w-5 text-blue-500"});case"onedrive":return e.jsx(Z,{className:"h-5 w-5 text-sky-500"});case"dropbox":return e.jsx(ne,{className:"h-5 w-5 text-indigo-500"});default:return e.jsx(Z,{className:"h-5 w-5"})}}function Bt({provider:t,onDelete:n,onReauth:s}){var l;const[a,i]=r.useState(!1),x=()=>{a?(n(t.id),i(!1)):(i(!0),setTimeout(()=>i(!1),3e3))};return e.jsxs(qe,{children:[e.jsx(Ze,{className:"pb-3",children:e.jsxs("div",{className:"flex items-start justify-between",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx(Ot,{type:t.type}),e.jsxs("div",{children:[e.jsx(Je,{className:"text-base",children:t.label}),e.jsx("p",{className:"text-sm text-muted-foreground",children:Mt[t.type]||t.type})]})]}),e.jsx(de,{variant:t.authorized?"default":"destructive",className:t.authorized?"bg-green-600 hover:bg-green-700":"",children:t.authorized?"已授权":"未授权"})]})}),e.jsxs(Qe,{children:[t.authorized&&((l=t.tokens)==null?void 0:l.expiry)&&e.jsxs("p",{className:"text-xs text-muted-foreground mb-3",children:["授权到期:",new Date(t.tokens.expiry).toLocaleDateString("zh-CN")]}),e.jsxs("div",{className:"flex gap-2",children:[e.jsxs(I,{variant:"outline",size:"sm",onClick:()=>s(t.id),children:[e.jsx(ue,{className:"h-3.5 w-3.5 mr-1"}),"重新授权"]}),e.jsxs(I,{variant:a?"destructive":"outline",size:"sm",onClick:x,children:[e.jsx(We,{className:"h-3.5 w-3.5 mr-1"}),a?"确认删除?":"删除"]})]})]})]})}const Gt={success:{label:"成功",icon:pt,className:"bg-green-600 hover:bg-green-700"},failed:{label:"失败",icon:yt,className:"bg-red-600 hover:bg-red-700"},partial:{label:"部分完成",icon:ft,className:"bg-yellow-600 hover:bg-yellow-700"}};function zt(t,n){const s=new Date(n).getTime()-new Date(t).getTime();if(s<1e3)return`${s}ms`;const a=Math.floor(s/1e3);if(a<60)return`${a}秒`;const i=Math.floor(a/60),x=a%60;return`${i}分${x}秒`}function Ht(t){return new Date(t).toLocaleString("zh-CN",{month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"})}function Kt({history:t}){const n=t.slice(0,20);return n.length===0?e.jsxs("div",{className:"flex flex-col items-center justify-center py-12 text-muted-foreground",children:[e.jsx(gt,{className:"h-10 w-10 mb-3 opacity-50"}),e.jsx("p",{className:"text-sm",children:"暂无备份记录"})]}):e.jsx("div",{className:"overflow-x-auto",children:e.jsxs("table",{className:"w-full text-sm",children:[e.jsx("thead",{children:e.jsxs("tr",{className:"border-b",children:[e.jsx("th",{className:"text-left py-3 px-2 font-medium text-muted-foreground",children:"时间"}),e.jsx("th",{className:"text-left py-3 px-2 font-medium text-muted-foreground",children:"项目"}),e.jsx("th",{className:"text-left py-3 px-2 font-medium text-muted-foreground",children:"云盘"}),e.jsx("th",{className:"text-left py-3 px-2 font-medium text-muted-foreground",children:"状态"}),e.jsx("th",{className:"text-left py-3 px-2 font-medium text-muted-foreground",children:"文件数"}),e.jsx("th",{className:"text-left py-3 px-2 font-medium text-muted-foreground",children:"耗时"})]})}),e.jsx("tbody",{children:n.map(s=>{const a=Gt[s.status],i=a.icon;return e.jsxs("tr",{className:"border-b last:border-0 hover:bg-muted/50",children:[e.jsx("td",{className:"py-2.5 px-2 whitespace-nowrap",children:Ht(s.startTime)}),e.jsx("td",{className:"py-2.5 px-2",children:s.projectName}),e.jsx("td",{className:"py-2.5 px-2",children:s.providerLabel}),e.jsxs("td",{className:"py-2.5 px-2",children:[e.jsxs(de,{className:a.className,children:[e.jsx(i,{className:"h-3 w-3 mr-1"}),a.label]}),s.error&&e.jsx("p",{className:"text-xs text-destructive mt-1",children:s.error})]}),e.jsxs("td",{className:"py-2.5 px-2 whitespace-nowrap",children:[s.filesUploaded,"/",s.filesTotal]}),e.jsx("td",{className:"py-2.5 px-2 whitespace-nowrap",children:zt(s.startTime,s.endTime)})]},s.id)})})]})})}const oe=["node_modules",".git","dist","build","*.log",".DS_Store","*.tmp",".venv","__pycache__",".env"],Vt=[{value:"30",label:"30分钟"},{value:"60",label:"1小时"},{value:"360",label:"6小时"},{value:"720",label:"12小时"},{value:"1440",label:"24小时"}];function Yt(){const t=et(),[n,s]=r.useState([]),[a,i]=r.useState(!0),[x,l]=r.useState(!1),[m,p]=r.useState({enabled:!1,intervalMinutes:60}),[y,d]=r.useState(!0),[u,g]=r.useState([]),[T,k]=r.useState(!0),[w,h]=r.useState(""),[b,C]=r.useState(!1),[v,f]=r.useState(!1),[D,M]=r.useState([]),[_,j]=r.useState(!0),c=async()=>{try{const o=await ot();s(o)}catch{}finally{i(!1)}},S=async()=>{try{const o=await ct();p(o)}catch{}finally{d(!1)}},F=async()=>{try{const o=await lt();g(o.length>0?o:oe)}catch{g(oe)}finally{k(!1)}},G=async()=>{try{const o=await it();M(o)}catch{}finally{j(!1)}};r.useEffect(()=>{c(),S(),F(),G()},[]);const U=async o=>{try{await dt(o),s(N=>N.filter(O=>O.id!==o))}catch{}},ee=async o=>{try{const{url:N}=await q(o);window.open(N,"_blank")}catch{}},X=async o=>{const N={...m,enabled:o};p(N);try{await ae({enabled:o})}catch{p(m)}},E=async o=>{const N=parseInt(o,10),O={...m,intervalMinutes:N};p(O);try{await ae({intervalMinutes:N})}catch{p(m)}},te=()=>{const o=w.trim();!o||u.includes(o)||(g(N=>[...N,o]),h(""),C(!0))},Me=o=>{g(N=>N.filter(O=>O!==o)),C(!0)},Oe=async()=>{f(!0);try{await ut(u),C(!1)}catch{}finally{f(!1)}};return e.jsx("div",{className:"min-h-screen bg-background",children:e.jsxs("div",{className:"max-w-4xl mx-auto p-6",children:[e.jsxs("div",{className:"flex items-center gap-3 mb-6",children:[e.jsxs(I,{variant:"ghost",size:"sm",onClick:()=>t("/"),children:[e.jsx(tt,{className:"h-4 w-4 mr-1"}),"返回"]}),e.jsx("h1",{className:"text-2xl font-bold",children:"设置"})]}),e.jsxs(Pt,{defaultValue:"providers",children:[e.jsxs(Le,{className:"mb-4",children:[e.jsx(K,{value:"providers",children:"云盘账号"}),e.jsx(K,{value:"strategy",children:"备份策略"}),e.jsx(K,{value:"history",children:"备份记录"})]}),e.jsxs(V,{value:"providers",children:[e.jsxs("div",{className:"space-y-4",children:[e.jsx("div",{className:"flex justify-end",children:e.jsxs(I,{onClick:()=>l(!0),children:[e.jsx(st,{className:"h-4 w-4 mr-1"}),"添加云盘"]})}),a?e.jsx("p",{className:"text-sm text-muted-foreground text-center py-8",children:"加载中..."}):n.length===0?e.jsx("p",{className:"text-sm text-muted-foreground text-center py-12",children:"暂无云盘账号,点击上方按钮添加"}):e.jsx("div",{className:"grid gap-4 sm:grid-cols-2",children:n.map(o=>e.jsx(Bt,{provider:o,onDelete:U,onReauth:ee},o.id))})]}),e.jsx(Lt,{open:x,onOpenChange:l,onAdded:()=>void c()})]}),e.jsx(V,{value:"strategy",children:e.jsxs("div",{className:"space-y-8",children:[e.jsxs("div",{className:"space-y-4",children:[e.jsx("h3",{className:"text-lg font-medium",children:"排除规则"}),e.jsx("p",{className:"text-sm text-muted-foreground",children:"匹配这些模式的文件和目录将不会被备份"}),T?e.jsx("p",{className:"text-sm text-muted-foreground",children:"加载中..."}):e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"flex flex-wrap gap-2",children:e.jsx(at,{children:u.map(o=>e.jsxs(nt.span,{layout:!0,initial:{opacity:0,scale:.8},animate:{opacity:1,scale:1},exit:{opacity:0,scale:.8},transition:{duration:.2},className:"inline-flex items-center gap-1 rounded-md bg-muted px-2.5 py-1 text-sm",children:[o,e.jsx("button",{onClick:()=>Me(o),className:"ml-0.5 rounded-sm hover:bg-muted-foreground/20 p-0.5",children:e.jsx(rt,{className:"h-3 w-3"})})]},o))})}),e.jsxs("div",{className:"flex gap-2",children:[e.jsx(z,{placeholder:"输入排除模式,例如 *.log",value:w,onChange:o=>h(o.target.value),onKeyDown:o=>{o.key==="Enter"&&te()},className:"max-w-xs"}),e.jsx(I,{variant:"outline",size:"sm",onClick:te,children:"添加"})]}),b&&e.jsxs(I,{onClick:Oe,disabled:v,children:[e.jsx(xt,{className:"h-4 w-4 mr-1"}),v?"保存中...":"保存"]})]})]}),e.jsxs("div",{className:"space-y-4",children:[e.jsx("h3",{className:"text-lg font-medium",children:"定时备份"}),y?e.jsx("p",{className:"text-sm text-muted-foreground",children:"加载中..."}):e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[e.jsx(ht,{checked:m.enabled,onCheckedChange:X}),e.jsx(P,{children:m.enabled?"已开启":"已关闭"})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx(P,{children:"备份间隔"}),e.jsxs(xe,{value:String(m.intervalMinutes),onValueChange:E,children:[e.jsx(he,{className:"w-48",children:e.jsx(fe,{})}),e.jsx(pe,{children:Vt.map(o=>e.jsx(H,{value:o.value,children:o.label},o.value))})]})]})]})]})]})}),e.jsx(V,{value:"history",children:e.jsxs("div",{className:"space-y-4",children:[e.jsx("div",{className:"flex justify-end",children:e.jsxs(I,{variant:"outline",size:"sm",onClick:()=>{j(!0),G()},children:[e.jsx(ue,{className:"h-4 w-4 mr-1"}),"刷新"]})}),_?e.jsx("p",{className:"text-sm text-muted-foreground text-center py-8",children:"加载中..."}):e.jsx(Kt,{history:D})]})})]})]})})}export{Yt as SettingsPage};
@@ -0,0 +1,11 @@
1
+ import{c as C,ae as q,r,aM as z,j as e,K as S,af as P,I as U,e as g,o as p,G as F,A as G,aN as O,t as B}from"./index-HZqCo2f1.js";import{U as K,D as _}from"./user-DWfPqhZs.js";import{C as R}from"./chevron-down-3Iee9LeQ.js";/**
2
+ * @license lucide-react v0.309.0 - ISC
3
+ *
4
+ * This source code is licensed under the ISC license.
5
+ * See the LICENSE file in the root directory of this source tree.
6
+ */const Z=C("Search",[["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}],["path",{d:"m21 21-4.3-4.3",key:"1qie3q"}]]);/**
7
+ * @license lucide-react v0.309.0 - ISC
8
+ *
9
+ * This source code is licensed under the ISC license.
10
+ * See the LICENSE file in the root directory of this source tree.
11
+ */const $=C("Tag",[["path",{d:"M12 2H2v10l9.29 9.29c.94.94 2.48.94 3.42 0l6.58-6.58c.94-.94.94-2.48 0-3.42L12 2Z",key:"14b2ls"}],["path",{d:"M7 7h.01",key:"7u93v4"}]]);function W(){const I=q(),[o,f]=r.useState([]),[x,E]=r.useState(!0),[i,L]=r.useState(null),[c,D]=r.useState(""),[d,h]=r.useState(null),[H,M]=r.useState(null),[j,N]=r.useState(null),[w,k]=r.useState(new Set);r.useEffect(()=>{z().then(f).catch(t=>L(t instanceof Error?t.message:"Failed to load SkillHub")).finally(()=>E(!1))},[]);const b=r.useMemo(()=>{const t=new Set;return o.forEach(a=>{var s;return(s=a.tags)==null?void 0:s.forEach(n=>t.add(n))}),Array.from(t).sort()},[o]),A=r.useMemo(()=>o.some(t=>!t.tags||t.tags.length===0),[o]),y=r.useMemo(()=>{let t=o;if(d==="__untagged__"?t=t.filter(a=>!a.tags||a.tags.length===0):d&&(t=t.filter(a=>{var s;return(s=a.tags)==null?void 0:s.includes(d)})),c.trim()){const a=c.toLowerCase();t=t.filter(s=>{var n;return s.label.toLowerCase().includes(a)||s.description.toLowerCase().includes(a)||s.command.toLowerCase().includes(a)||s.author.toLowerCase().includes(a)||((n=s.tags)==null?void 0:n.some(m=>m.toLowerCase().includes(a)))})}return t},[o,c,d]),T=async(t,a)=>{if(a.stopPropagation(),!(j||w.has(t.id))){N(t.id);try{await O(t.id),k(s=>new Set(s).add(t.id)),f(s=>s.map(n=>n.id===t.id?{...n,downloads:(n.downloads||0)+1}:n))}catch(s){B.error(s instanceof Error?s.message:"Download failed")}finally{N(null)}}};return e.jsxs("div",{className:"min-h-screen bg-background",children:[e.jsx("header",{className:"border-b sticky top-0 bg-background z-10",children:e.jsxs("div",{className:"max-w-4xl mx-auto px-4 h-14 flex items-center gap-4",children:[e.jsxs(S,{variant:"ghost",size:"sm",onClick:()=>I("/"),children:[e.jsx(P,{className:"h-4 w-4 mr-1"}),"返回"]}),e.jsx("h1",{className:"font-semibold text-lg",children:"SkillHub"}),e.jsx("div",{className:"flex-1"}),e.jsxs("div",{className:"relative w-64",children:[e.jsx(Z,{className:"absolute left-2.5 top-1/2 -translate-y-1/2 h-4 w-4 text-muted-foreground"}),e.jsx(U,{placeholder:"搜索命令...",value:c,onChange:t=>D(t.target.value),className:"pl-8 h-9"})]})]})}),e.jsxs("main",{className:"max-w-4xl mx-auto px-4 py-6",children:[b.length>0&&e.jsxs("div",{className:"flex flex-wrap gap-2 mb-6",children:[e.jsx("button",{className:g("px-3 py-1 rounded-full text-xs font-medium transition-colors",d===null?"bg-primary text-primary-foreground":"bg-muted text-muted-foreground hover:bg-accent"),onClick:()=>h(null),children:"全部"}),b.map(t=>e.jsx("button",{className:g("px-3 py-1 rounded-full text-xs font-medium transition-colors",d===t?"bg-primary text-primary-foreground":"bg-muted text-muted-foreground hover:bg-accent"),onClick:()=>h(d===t?null:t),children:t},t)),A&&e.jsx("button",{className:g("px-3 py-1 rounded-full text-xs font-medium transition-colors",d==="__untagged__"?"bg-primary text-primary-foreground":"bg-muted text-muted-foreground hover:bg-accent"),onClick:()=>h(d==="__untagged__"?null:"__untagged__"),children:"无标签"})]}),x&&e.jsx("div",{className:"text-center text-muted-foreground py-20",children:"加载中..."}),i&&e.jsx("div",{className:"text-center text-destructive py-20",children:i}),!x&&!i&&o.length===0&&e.jsxs("div",{className:"text-center text-muted-foreground py-20",children:[e.jsx("p",{className:"text-lg mb-2",children:"SkillHub 还没有命令"}),e.jsx("p",{className:"text-sm",children:"在快捷命令面板中点击分享按钮来提交第一个命令吧!"})]}),!x&&!i&&o.length>0&&y.length===0&&e.jsx("div",{className:"text-center text-muted-foreground py-20",children:"没有匹配的命令"}),e.jsx("div",{className:"space-y-3",children:y.map((t,a)=>{var v;const s=H===t.id,n=w.has(t.id),m=j===t.id,u=t.parentId?o.find(l=>l.id===t.parentId):void 0;return e.jsxs(p.div,{layout:!0,initial:{opacity:0,y:12},animate:{opacity:1,y:0},transition:{duration:.25,delay:a*.03,ease:"easeOut"},className:"rounded-lg border bg-card p-4 cursor-pointer hover:border-muted-foreground/30 transition-colors",onClick:()=>M(s?null:t.id),children:[e.jsxs("div",{className:"flex items-start justify-between gap-4",children:[e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx("h3",{className:"font-medium text-sm truncate",children:t.label}),(v=t.tags)==null?void 0:v.map(l=>e.jsxs("span",{className:"inline-flex items-center gap-0.5 px-2 py-0.5 rounded-full text-xs bg-muted text-muted-foreground",children:[e.jsx($,{className:"h-2.5 w-2.5"}),l]},l))]}),u&&e.jsxs("div",{className:"flex items-center gap-1 mt-1",children:[e.jsx(F,{className:"h-3 w-3 text-muted-foreground"}),e.jsxs("span",{className:"text-xs text-muted-foreground",children:["继承: ",u.label]})]}),t.description&&e.jsx("p",{className:"text-xs text-muted-foreground mt-1 truncate",children:t.description}),e.jsxs("div",{className:"flex items-center gap-3 mt-2 text-xs text-muted-foreground",children:[e.jsxs("span",{className:"flex items-center gap-1",children:[e.jsx(K,{className:"h-3 w-3"}),t.author]}),e.jsxs("span",{className:"flex items-center gap-1",children:[e.jsx(_,{className:"h-3 w-3"}),t.downloads||0]}),e.jsx("span",{children:t.createdAt})]})]}),e.jsxs("div",{className:"flex items-center gap-2 flex-shrink-0",children:[e.jsxs(S,{size:"sm",variant:n?"outline":"default",disabled:m||n,onClick:l=>T(t,l),title:u?`将同时下载继承的「${u.label}」`:void 0,children:[e.jsx(_,{className:"h-3.5 w-3.5 mr-1"}),n?"已下载":m?"下载中...":"下载"]}),e.jsx(p.span,{animate:{rotate:s?180:0},transition:{duration:.2},children:e.jsx(R,{className:"h-4 w-4 text-muted-foreground"})})]})]}),e.jsx(G,{children:s&&e.jsx(p.div,{initial:{height:0,opacity:0},animate:{height:"auto",opacity:1},exit:{height:0,opacity:0},transition:{duration:.2,ease:"easeInOut"},className:"overflow-hidden",children:e.jsx("div",{className:"mt-3 pt-3 border-t",children:e.jsx("pre",{className:"text-xs font-mono bg-muted rounded p-3 whitespace-pre-wrap break-words max-h-64 overflow-y-auto",children:t.command})})})})]},t.id)})})]})]})}export{W as SkillHubPage};
@@ -0,0 +1,6 @@
1
+ import{c as o}from"./index-HZqCo2f1.js";/**
2
+ * @license lucide-react v0.309.0 - ISC
3
+ *
4
+ * This source code is licensed under the ISC license.
5
+ * See the LICENSE file in the root directory of this source tree.
6
+ */const n=o("ChevronDown",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]]);export{n as C};
@@ -0,0 +1 @@
1
+ *,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}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;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}:root{--background: 0 0% 100%;--foreground: 240 10% 3.9%;--card: 0 0% 100%;--card-foreground: 240 10% 3.9%;--popover: 0 0% 100%;--popover-foreground: 240 10% 3.9%;--primary: 240 5.9% 10%;--primary-foreground: 0 0% 98%;--secondary: 240 4.8% 95.9%;--secondary-foreground: 240 5.9% 10%;--muted: 240 4.8% 95.9%;--muted-foreground: 240 3.8% 46.1%;--accent: 240 4.8% 95.9%;--accent-foreground: 240 5.9% 10%;--destructive: 0 84.2% 60.2%;--destructive-foreground: 0 0% 98%;--border: 240 5.9% 90%;--input: 240 5.9% 90%;--ring: 240 5.9% 10%;--radius: .5rem;--chart-1: 12 76% 61%;--chart-2: 173 58% 39%;--chart-3: 197 37% 24%;--chart-4: 43 74% 66%;--chart-5: 27 87% 67%}.dark{--background: 240 10% 3.9%;--foreground: 0 0% 98%;--card: 240 10% 3.9%;--card-foreground: 0 0% 98%;--popover: 240 10% 3.9%;--popover-foreground: 0 0% 98%;--primary: 0 0% 98%;--primary-foreground: 240 5.9% 10%;--secondary: 240 3.7% 15.9%;--secondary-foreground: 0 0% 98%;--muted: 240 3.7% 15.9%;--muted-foreground: 240 5% 64.9%;--accent: 240 3.7% 15.9%;--accent-foreground: 0 0% 98%;--destructive: 0 62.8% 30.6%;--destructive-foreground: 0 0% 98%;--border: 240 3.7% 15.9%;--input: 240 3.7% 15.9%;--ring: 240 4.9% 83.9%;--chart-1: 220 70% 50%;--chart-2: 160 60% 45%;--chart-3: 30 80% 55%;--chart-4: 280 65% 60%;--chart-5: 340 75% 55%}*{border-color:hsl(var(--border))}body{background-color:hsl(var(--background));color:hsl(var(--foreground))}.container{width:100%;margin-right:auto;margin-left:auto;padding-right:2rem;padding-left:2rem}@media (min-width: 1400px){.container{max-width:1400px}}.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);font-size:1.25em;line-height:1.6;margin-top:1.2em;margin-bottom:1.2em}.prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);text-decoration:underline;font-weight:500}.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] *)){color:inherit}.prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.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] *)){list-style-type:decimal;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.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] *)){list-style-type:disc;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{font-weight:400;color:var(--tw-prose-counters)}.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);font-weight:600;margin-top:1.25em}.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] *)){font-weight:500;font-style:italic;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}.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);font-weight:800;font-size:2.25em;margin-top:0;margin-bottom:.8888889em;line-height:1.1111111}.prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:900;color:inherit}.prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:700;font-size:1.5em;margin-top:2em;margin-bottom:1em;line-height:1.3333333}.prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:800;color:inherit}.prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;font-size:1.25em;margin-top:1.6em;margin-bottom:.6em;line-height:1.6}.prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.5em;margin-bottom:.5em;line-height:1.5}.prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.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] *)){display:block;margin-top:2em;margin-bottom:2em}.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] *)){font-weight:500;font-family:inherit;color:var(--tw-prose-kbd);box-shadow:0 0 0 1px var(--tw-prose-kbd-shadows),0 3px 0 var(--tw-prose-kbd-shadows);font-size:.875em;border-radius:.3125rem;padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;padding-inline-start:.375em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-weight:600;font-size:.875em}.prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:"`"}.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] *)){color:inherit}.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] *)){color:inherit}.prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.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);overflow-x:auto;font-weight:400;font-size:.875em;line-height:1.7142857;margin-top:1.7142857em;margin-bottom:1.7142857em;border-radius:.375rem;padding-top:.8571429em;padding-inline-end:1.1428571em;padding-bottom:.8571429em;padding-inline-start:1.1428571em}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:transparent;border-width:0;border-radius:0;padding:0;font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}.prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none}.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] *)){width:100%;table-layout:auto;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.7142857}.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);font-weight:600;vertical-align:bottom;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.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);font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.prose{--tw-prose-body: #374151;--tw-prose-headings: #111827;--tw-prose-lead: #4b5563;--tw-prose-links: #111827;--tw-prose-bold: #111827;--tw-prose-counters: #6b7280;--tw-prose-bullets: #d1d5db;--tw-prose-hr: #e5e7eb;--tw-prose-quotes: #111827;--tw-prose-quote-borders: #e5e7eb;--tw-prose-captions: #6b7280;--tw-prose-kbd: #111827;--tw-prose-kbd-shadows: rgb(17 24 39 / 10%);--tw-prose-code: #111827;--tw-prose-pre-code: #e5e7eb;--tw-prose-pre-bg: #1f2937;--tw-prose-th-borders: #d1d5db;--tw-prose-td-borders: #e5e7eb;--tw-prose-invert-body: #d1d5db;--tw-prose-invert-headings: #fff;--tw-prose-invert-lead: #9ca3af;--tw-prose-invert-links: #fff;--tw-prose-invert-bold: #fff;--tw-prose-invert-counters: #9ca3af;--tw-prose-invert-bullets: #4b5563;--tw-prose-invert-hr: #374151;--tw-prose-invert-quotes: #f3f4f6;--tw-prose-invert-quote-borders: #374151;--tw-prose-invert-captions: #9ca3af;--tw-prose-invert-kbd: #fff;--tw-prose-invert-kbd-shadows: rgb(255 255 255 / 10%);--tw-prose-invert-code: #fff;--tw-prose-invert-pre-code: #d1d5db;--tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);--tw-prose-invert-th-borders: #4b5563;--tw-prose-invert-td-borders: #374151;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] *)){padding-inline-start:.375em}.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] *)){margin-top:0}.prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.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:.5714286em;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.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.7142857}.prose-sm :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em;margin-bottom:1.1428571em}.prose-sm :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.2857143em;line-height:1.5555556;margin-top:.8888889em;margin-bottom:.8888889em}.prose-sm :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.3333333em;margin-bottom:1.3333333em;padding-inline-start:1.1111111em}.prose-sm :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:2.1428571em;margin-top:0;margin-bottom:.8em;line-height:1.2}.prose-sm :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.4285714em;margin-top:1.6em;margin-bottom:.8em;line-height:1.4}.prose-sm :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:1.2857143em;margin-top:1.5555556em;margin-bottom:.4444444em;line-height:1.5555556}.prose-sm :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.4285714em;margin-bottom:.5714286em;line-height:1.4285714}.prose-sm :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7142857em;margin-bottom:1.7142857em}.prose-sm :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.7142857em;margin-bottom:1.7142857em}.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.7142857em;margin-bottom:1.7142857em}.prose-sm :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;border-radius:.3125rem;padding-top:.1428571em;padding-inline-end:.3571429em;padding-bottom:.1428571em;padding-inline-start:.3571429em}.prose-sm :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em}.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:.8888889em}.prose-sm :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){font-size:.8571429em;line-height:1.6666667;margin-top:1.6666667em;margin-bottom:1.6666667em;border-radius:.25rem;padding-top:.6666667em;padding-inline-end:1em;padding-bottom:.6666667em;padding-inline-start:1em}.prose-sm :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em;margin-bottom:1.1428571em;padding-inline-start:1.5714286em}.prose-sm :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em;margin-bottom:1.1428571em;padding-inline-start:1.5714286em}.prose-sm :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.2857143em;margin-bottom:.2857143em}.prose-sm :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4285714em}.prose-sm :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.4285714em}.prose-sm :where(.prose-sm>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5714286em;margin-bottom:.5714286em}.prose-sm :where(.prose-sm>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(.prose-sm>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.1428571em}.prose-sm :where(.prose-sm>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(.prose-sm>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.1428571em}.prose-sm :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5714286em;margin-bottom:.5714286em}.prose-sm :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em;margin-bottom:1.1428571em}.prose-sm :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.1428571em}.prose-sm :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.2857143em;padding-inline-start:1.5714286em}.prose-sm :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2.8571429em;margin-bottom:2.8571429em}.prose-sm :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.prose-sm :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.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:.8571429em;line-height:1.5}.prose-sm :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:1em;padding-bottom:.6666667em;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:.6666667em;padding-inline-end:1em;padding-bottom:.6666667em;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.7142857em;margin-bottom:1.7142857em}.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] *)){font-size:.8571429em;line-height:1.3333333;margin-top:.6666667em}.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}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.left-2{left:.5rem}.left-2\.5{left:.625rem}.left-\[50\%\]{left:50%}.right-0{right:0}.right-1\.5{right:.375rem}.right-2\.5{right:.625rem}.right-4{right:1rem}.top-0{top:0}.top-1\.5{top:.375rem}.top-1\/2{top:50%}.top-2\.5{top:.625rem}.top-4{top:1rem}.top-\[50\%\]{top:50%}.z-10{z-index:10}.z-50{z-index:50}.-mx-1{margin-left:-.25rem;margin-right:-.25rem}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-top:.25rem;margin-bottom:.25rem}.-mb-px{margin-bottom:-1px}.mb-2{margin-bottom:.5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.ml-0\.5{margin-left:.125rem}.ml-1{margin-left:.25rem}.ml-2{margin-left:.5rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mr-1\.5{margin-right:.375rem}.mr-2{margin-right:.5rem}.mr-auto{margin-right:auto}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-10{margin-top:2.5rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-11{height:2.75rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-2{height:.5rem}.h-2\.5{height:.625rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-64{height:16rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[1px\]{height:1px}.h-\[24px\]{height:24px}.h-\[80vh\]{height:80vh}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-full{height:100%}.h-px{height:1px}.h-screen{height:100vh}.max-h-40{max-height:10rem}.max-h-64{max-height:16rem}.max-h-96{max-height:24rem}.max-h-\[80vh\]{max-height:80vh}.max-h-\[85vh\]{max-height:85vh}.max-h-full{max-height:100%}.min-h-0{min-height:0px}.min-h-\[200px\]{min-height:200px}.min-h-\[80px\]{min-height:80px}.min-h-screen{min-height:100vh}.w-1\.5{width:.375rem}.w-10{width:2.5rem}.w-12{width:3rem}.w-2{width:.5rem}.w-2\.5{width:.625rem}.w-20{width:5rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-4{width:1rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-64{width:16rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-\[1px\]{width:1px}.w-\[300px\]{width:300px}.w-\[44px\]{width:44px}.w-\[600px\]{width:600px}.w-\[72vw\]{width:72vw}.w-full{width:100%}.w-screen{width:100vw}.min-w-0{min-width:0px}.min-w-\[140px\]{min-width:140px}.min-w-\[36px\]{min-width:36px}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.max-w-4xl{max-width:56rem}.max-w-6xl{max-width:72rem}.max-w-\[85\%\]{max-width:85%}.max-w-\[90vw\]{max-width:90vw}.max-w-full{max-width:100%}.max-w-lg{max-width:32rem}.max-w-none{max-width:none}.max-w-sm{max-width:24rem}.max-w-xs{max-width:20rem}.flex-1{flex:1 1 0%}.flex-shrink-0,.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-\[-50\%\]{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\[-50\%\]{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-default{cursor:default}.cursor-grab{cursor:grab}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-none{resize:none}.resize{resize:both}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-row-reverse{flex-direction:row-reverse}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.375rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.375rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.space-y-8>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2rem * var(--tw-space-y-reverse))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-\[inherit\]{border-radius:inherit}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:var(--radius)}.rounded-md{border-radius:calc(var(--radius) - 2px)}.rounded-none{border-radius:0}.rounded-sm{border-radius:calc(var(--radius) - 4px)}.rounded-t{border-top-left-radius:.25rem;border-top-right-radius:.25rem}.border{border-width:1px}.border-0{border-width:0px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-0{border-bottom-width:0px}.border-b-2{border-bottom-width:2px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-blue-500{--tw-border-opacity: 1;border-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.border-blue-500\/20{border-color:#3b82f633}.border-blue-500\/30{border-color:#3b82f64d}.border-blue-500\/50{border-color:#3b82f680}.border-border{border-color:hsl(var(--border))}.border-destructive{border-color:hsl(var(--destructive))}.border-green-500\/20{border-color:#22c55e33}.border-input{border-color:hsl(var(--input))}.border-primary{border-color:hsl(var(--primary))}.border-transparent{border-color:transparent}.border-yellow-500\/20{border-color:#eab30833}.border-l-transparent{border-left-color:transparent}.border-t-transparent{border-top-color:transparent}.bg-accent\/30{background-color:hsl(var(--accent) / .3)}.bg-background{background-color:hsl(var(--background))}.bg-black\/60{background-color:#0009}.bg-black\/80{background-color:#000c}.bg-blue-100{--tw-bg-opacity: 1;background-color:rgb(219 234 254 / var(--tw-bg-opacity, 1))}.bg-blue-500\/20{background-color:#3b82f633}.bg-blue-600{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.bg-blue-600\/20{background-color:#2563eb33}.bg-border{background-color:hsl(var(--border))}.bg-card{background-color:hsl(var(--card))}.bg-destructive{background-color:hsl(var(--destructive))}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity, 1))}.bg-green-500\/10{background-color:#22c55e1a}.bg-green-600{--tw-bg-opacity: 1;background-color:rgb(22 163 74 / var(--tw-bg-opacity, 1))}.bg-muted{background-color:hsl(var(--muted))}.bg-muted-foreground{background-color:hsl(var(--muted-foreground))}.bg-muted\/20{background-color:hsl(var(--muted) / .2)}.bg-muted\/30{background-color:hsl(var(--muted) / .3)}.bg-muted\/50{background-color:hsl(var(--muted) / .5)}.bg-popover{background-color:hsl(var(--popover))}.bg-primary{background-color:hsl(var(--primary))}.bg-primary\/40{background-color:hsl(var(--primary) / .4)}.bg-primary\/5{background-color:hsl(var(--primary) / .05)}.bg-red-600{--tw-bg-opacity: 1;background-color:rgb(220 38 38 / var(--tw-bg-opacity, 1))}.bg-secondary{background-color:hsl(var(--secondary))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-yellow-400{--tw-bg-opacity: 1;background-color:rgb(250 204 21 / var(--tw-bg-opacity, 1))}.bg-yellow-500\/10{background-color:#eab3081a}.bg-yellow-600{--tw-bg-opacity: 1;background-color:rgb(202 138 4 / var(--tw-bg-opacity, 1))}.bg-zinc-400{--tw-bg-opacity: 1;background-color:rgb(161 161 170 / var(--tw-bg-opacity, 1))}.fill-foreground{fill:hsl(var(--foreground))}.fill-muted-foreground\/60{fill:hsl(var(--muted-foreground) / .6)}.stroke-muted-foreground\/40{stroke:hsl(var(--muted-foreground) / .4)}.object-contain{-o-object-fit:contain;object-fit:contain}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-\[1px\]{padding:1px}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.py-\[3px\]{padding-top:3px;padding-bottom:3px}.pb-0\.5{padding-bottom:.125rem}.pb-1{padding-bottom:.25rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pl-8{padding-left:2rem}.pr-10{padding-right:2.5rem}.pr-14{padding-right:3.5rem}.pr-2{padding-right:.5rem}.pr-6{padding-right:1.5rem}.pt-0{padding-top:0}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.text-left{text-align:left}.text-center{text-align:center}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[10px\]{font-size:10px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-tight{letter-spacing:-.025em}.tracking-wider{letter-spacing:.05em}.text-blue-100{--tw-text-opacity: 1;color:rgb(219 234 254 / var(--tw-text-opacity, 1))}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.text-blue-900{--tw-text-opacity: 1;color:rgb(30 58 138 / var(--tw-text-opacity, 1))}.text-card-foreground{color:hsl(var(--card-foreground))}.text-destructive{color:hsl(var(--destructive))}.text-destructive-foreground{color:hsl(var(--destructive-foreground))}.text-foreground{color:hsl(var(--foreground))}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity, 1))}.text-green-600{--tw-text-opacity: 1;color:rgb(22 163 74 / var(--tw-text-opacity, 1))}.text-indigo-500{--tw-text-opacity: 1;color:rgb(99 102 241 / var(--tw-text-opacity, 1))}.text-muted-foreground{color:hsl(var(--muted-foreground))}.text-muted-foreground\/50{color:hsl(var(--muted-foreground) / .5)}.text-muted-foreground\/70{color:hsl(var(--muted-foreground) / .7)}.text-orange-400{--tw-text-opacity: 1;color:rgb(251 146 60 / var(--tw-text-opacity, 1))}.text-popover-foreground{color:hsl(var(--popover-foreground))}.text-primary{color:hsl(var(--primary))}.text-primary-foreground{color:hsl(var(--primary-foreground))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-secondary-foreground{color:hsl(var(--secondary-foreground))}.text-sky-500{--tw-text-opacity: 1;color:rgb(14 165 233 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.text-yellow-400{--tw-text-opacity: 1;color:rgb(250 204 21 / var(--tw-text-opacity, 1))}.text-yellow-500{--tw-text-opacity: 1;color:rgb(234 179 8 / var(--tw-text-opacity, 1))}.text-yellow-600{--tw-text-opacity: 1;color:rgb(202 138 4 / var(--tw-text-opacity, 1))}.underline-offset-4{text-underline-offset:4px}.accent-primary{accent-color:hsl(var(--primary))}.opacity-0{opacity:0}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-none{--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.outline{outline-style:solid}.ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-1{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.ring-inset{--tw-ring-inset: inset}.ring-accent{--tw-ring-color: hsl(var(--accent))}.ring-offset-background{--tw-ring-offset-color: hsl(var(--background))}.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)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-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)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}@keyframes gradient-spin{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.card-active-glow{background:linear-gradient(270deg,#3b82f6,#8b5cf6,#ec4899,#f59e0b,#10b981,#3b82f6);background-size:400% 400%;animation:gradient-spin 2.5s ease infinite;padding:2px;border-radius:calc(var(--radius) + 2px)}.card-active-glow>*{background:linear-gradient(270deg,#dbeafe,#ede9fe,#fce7f3,#fef3c7,#d1fae5,#dbeafe);background-size:400% 400%;animation:gradient-spin 2.5s ease infinite}.dark .card-active-glow>*{background:linear-gradient(270deg,#1e293b,#1e1b4b,#2d1b3d,#2d2305,#0d2818,#1e293b);background-size:400% 400%;animation:gradient-spin 2.5s ease infinite}.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)}.file\:border-0::file-selector-button{border-width:0px}.file\:bg-transparent::file-selector-button{background-color:transparent}.file\:text-sm::file-selector-button{font-size:.875rem;line-height:1.25rem}.file\:font-medium::file-selector-button{font-weight:500}.placeholder\:text-muted-foreground::-moz-placeholder{color:hsl(var(--muted-foreground))}.placeholder\:text-muted-foreground::placeholder{color:hsl(var(--muted-foreground))}.last\:border-0:last-child{border-width:0px}.hover\:border-muted-foreground\/30:hover{border-color:hsl(var(--muted-foreground) / .3)}.hover\:border-transparent:hover{border-color:transparent}.hover\:border-zinc-400:hover{--tw-border-opacity: 1;border-color:rgb(161 161 170 / var(--tw-border-opacity, 1))}.hover\:bg-accent:hover{background-color:hsl(var(--accent))}.hover\:bg-blue-500:hover{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.hover\:bg-destructive\/10:hover{background-color:hsl(var(--destructive) / .1)}.hover\:bg-destructive\/80:hover{background-color:hsl(var(--destructive) / .8)}.hover\:bg-destructive\/90:hover{background-color:hsl(var(--destructive) / .9)}.hover\:bg-green-700:hover{--tw-bg-opacity: 1;background-color:rgb(21 128 61 / var(--tw-bg-opacity, 1))}.hover\:bg-muted:hover{background-color:hsl(var(--muted))}.hover\:bg-muted-foreground\/20:hover{background-color:hsl(var(--muted-foreground) / .2)}.hover\:bg-muted\/50:hover{background-color:hsl(var(--muted) / .5)}.hover\:bg-primary\/80:hover{background-color:hsl(var(--primary) / .8)}.hover\:bg-primary\/90:hover{background-color:hsl(var(--primary) / .9)}.hover\:bg-red-700:hover{--tw-bg-opacity: 1;background-color:rgb(185 28 28 / var(--tw-bg-opacity, 1))}.hover\:bg-secondary\/80:hover{background-color:hsl(var(--secondary) / .8)}.hover\:bg-yellow-700:hover{--tw-bg-opacity: 1;background-color:rgb(161 98 7 / var(--tw-bg-opacity, 1))}.hover\:text-accent-foreground:hover{color:hsl(var(--accent-foreground))}.hover\:text-blue-400:hover{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity, 1))}.hover\:text-destructive:hover{color:hsl(var(--destructive))}.hover\:text-foreground:hover{color:hsl(var(--foreground))}.hover\:text-green-400:hover{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity, 1))}.hover\:text-red-400:hover{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-100:hover{opacity:1}.hover\:opacity-80:hover{opacity:.8}.hover\:shadow-md:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.focus\:border-border:focus{border-color:hsl(var(--border))}.focus\:bg-accent:focus{background-color:hsl(var(--accent))}.focus\:text-accent-foreground:focus{color:hsl(var(--accent-foreground))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-ring:focus{--tw-ring-color: hsl(var(--ring))}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-ring:focus-visible{--tw-ring-color: hsl(var(--ring))}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.focus-visible\:ring-offset-background:focus-visible{--tw-ring-offset-color: hsl(var(--background))}.active\:cursor-grabbing:active{cursor:grabbing}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:opacity-100{opacity:1}.peer:disabled~.peer-disabled\:cursor-not-allowed{cursor:not-allowed}.peer:disabled~.peer-disabled\:opacity-70{opacity:.7}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=left\]\:-translate-x-1[data-side=left]{--tw-translate-x: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x: .25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=top\]\:-translate-y-1[data-side=top]{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=checked\]\:translate-x-5[data-state=checked]{--tw-translate-x: 1.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked]{--tw-translate-x: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=active\]\:bg-background[data-state=active]{background-color:hsl(var(--background))}.data-\[state\=checked\]\:bg-primary[data-state=checked]{background-color:hsl(var(--primary))}.data-\[state\=open\]\:bg-accent[data-state=open]{background-color:hsl(var(--accent))}.data-\[state\=unchecked\]\:bg-input[data-state=unchecked]{background-color:hsl(var(--input))}.data-\[state\=active\]\:text-foreground[data-state=active]{color:hsl(var(--foreground))}.data-\[state\=open\]\:text-muted-foreground[data-state=open]{color:hsl(var(--muted-foreground))}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[state\=active\]\:shadow-sm[data-state=active]{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.prose-code\:text-foreground :is(:where(code):not(:where([class~=not-prose],[class~=not-prose] *))){color:hsl(var(--foreground))}.prose-pre\:border :is(:where(pre):not(:where([class~=not-prose],[class~=not-prose] *))){border-width:1px}.prose-pre\:border-border :is(:where(pre):not(:where([class~=not-prose],[class~=not-prose] *))){border-color:hsl(var(--border))}.prose-pre\:bg-muted :is(:where(pre):not(:where([class~=not-prose],[class~=not-prose] *))){background-color:hsl(var(--muted))}.dark\:bg-blue-600:is(.dark *){--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.dark\:text-blue-100:is(.dark *){--tw-text-opacity: 1;color:rgb(219 234 254 / var(--tw-text-opacity, 1))}.dark\:text-white:is(.dark *){--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}@media (min-width: 640px){.sm\:inline{display:inline}.sm\:max-w-2xl{max-width:42rem}.sm\:max-w-lg{max-width:32rem}.sm\:max-w-md{max-width:28rem}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:flex-row{flex-direction:row}.sm\:justify-end{justify-content:flex-end}.sm\:justify-between{justify-content:space-between}.sm\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:rounded-lg{border-radius:var(--radius)}.sm\:text-left{text-align:left}}@media (min-width: 1024px){.lg\:block{display:block}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.\[\&\>span\]\:line-clamp-1>span{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}
@@ -1,4 +1,4 @@
1
- import{g as Nl,c as re}from"./index-D_eyHtwF.js";import{a as Rl}from"./jszip.min-BEfuE5vH.js";function kl(e,n){for(var t=0;t<n.length;t++){const i=n[t];if(typeof i!="string"&&!Array.isArray(i)){for(const r in i)if(r!=="default"&&!(r in e)){const a=Object.getOwnPropertyDescriptor(i,r);a&&Object.defineProperty(e,r,a.get?a:{enumerable:!0,get:()=>i[r]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}var Ye={},aa="1.13.8",_c=typeof self=="object"&&self.self===self&&self||typeof global=="object"&&global.global===global&&global||Function("return this")()||{},ni=Array.prototype,ca=Object.prototype,Ec=typeof Symbol<"u"?Symbol.prototype:null,Ol=ni.push,Et=ni.slice,ft=ca.toString,Il=ca.hasOwnProperty,Uu=typeof ArrayBuffer<"u",Ll=typeof DataView<"u",Ml=Array.isArray,wc=Object.keys,Fc=Object.create,Ac=Uu&&ArrayBuffer.isView,ql=isNaN,Pl=isFinite,Tu=!{toString:null}.propertyIsEnumerable("toString"),Cc=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"],Xl=Math.pow(2,53)-1;function Re(e,n){return n=n==null?e.length-1:+n,function(){for(var t=Math.max(arguments.length-n,0),i=Array(t),r=0;r<t;r++)i[r]=arguments[r+n];switch(n){case 0:return e.call(this,i);case 1:return e.call(this,arguments[0],i);case 2:return e.call(this,arguments[0],arguments[1],i)}var a=Array(n+1);for(r=0;r<n;r++)a[r]=arguments[r];return a[n]=i,e.apply(this,a)}}function _n(e){var n=typeof e;return n==="function"||n==="object"&&!!e}function _u(e){return e===null}function oa(e){return e===void 0}function ua(e){return e===!0||e===!1||ft.call(e)==="[object Boolean]"}function Eu(e){return!!(e&&e.nodeType===1)}function We(e){var n="[object "+e+"]";return function(t){return ft.call(t)===n}}const ti=We("String"),sa=We("Number"),wu=We("Date"),Fu=We("RegExp"),Au=We("Error"),da=We("Symbol"),la=We("ArrayBuffer");var Cu=We("Function"),jl=_c.document&&_c.document.childNodes;typeof/./!="function"&&typeof Int8Array!="object"&&typeof jl!="function"&&(Cu=function(e){return typeof e=="function"||!1});const Be=Cu,Bu=We("Object");var Wu=Ll&&(!/\[native code\]/.test(String(DataView))||Bu(new DataView(new ArrayBuffer(8)))),fa=typeof Map<"u"&&Bu(new Map),Vl=We("DataView");function Hl(e){return e!=null&&Be(e.getInt8)&&la(e.buffer)}const ht=Wu?Hl:Vl,En=Ml||We("Array");function wn(e,n){return e!=null&&Il.call(e,n)}var Jr=We("Arguments");(function(){Jr(arguments)||(Jr=function(e){return wn(e,"callee")})})();const ii=Jr;function Su(e){return!da(e)&&Pl(e)&&!isNaN(parseFloat(e))}function ha(e){return sa(e)&&ql(e)}function ga(e){return function(){return e}}function Nu(e){return function(n){var t=e(n);return typeof t=="number"&&t>=0&&t<=Xl}}function Ru(e){return function(n){return n==null?void 0:n[e]}}const jt=Ru("byteLength"),$l=Nu(jt);var zl=/\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/;function Gl(e){return Ac?Ac(e)&&!ht(e):$l(e)&&zl.test(ft.call(e))}const pa=Uu?Gl:ga(!1),Ce=Ru("length");function Ql(e){for(var n={},t=e.length,i=0;i<t;++i)n[e[i]]=!0;return{contains:function(r){return n[r]===!0},push:function(r){return n[r]=!0,e.push(r)}}}function ku(e,n){n=Ql(n);var t=Cc.length,i=e.constructor,r=Be(i)&&i.prototype||ca,a="constructor";for(wn(e,a)&&!n.contains(a)&&n.push(a);t--;)a=Cc[t],a in e&&e[a]!==r[a]&&!n.contains(a)&&n.push(a)}function ye(e){if(!_n(e))return[];if(wc)return wc(e);var n=[];for(var t in e)wn(e,t)&&n.push(t);return Tu&&ku(e,n),n}function Ou(e){if(e==null)return!0;var n=Ce(e);return typeof n=="number"&&(En(e)||ti(e)||ii(e))?n===0:Ce(ye(e))===0}function ma(e,n){var t=ye(n),i=t.length;if(e==null)return!i;for(var r=Object(e),a=0;a<i;a++){var c=t[a];if(n[c]!==r[c]||!(c in r))return!1}return!0}function ce(e){if(e instanceof ce)return e;if(!(this instanceof ce))return new ce(e);this._wrapped=e}ce.VERSION=aa;ce.prototype.value=function(){return this._wrapped};ce.prototype.valueOf=ce.prototype.toJSON=ce.prototype.value;ce.prototype.toString=function(){return String(this._wrapped)};function Bc(e){return new Uint8Array(e.buffer||e,e.byteOffset||0,jt(e))}var Wc="[object DataView]";function Iu(e,n){for(var t=[{a:e,b:n}],i=[],r=[];t.length;){var a=t.pop();if(a===!0){i.pop(),r.pop();continue}if(e=a.a,n=a.b,e===n){if(e!==0||1/e===1/n)continue;return!1}if(e==null||n==null)return!1;if(e!==e){if(n!==n)continue;return!1}var c=typeof e;if(c!=="function"&&c!=="object"&&typeof n!="object")return!1;e instanceof ce&&(e=e._wrapped),n instanceof ce&&(n=n._wrapped);var u=ft.call(e);if(u!==ft.call(n))return!1;if(Wu&&u=="[object Object]"&&ht(e)){if(!ht(n))return!1;u=Wc}switch(u){case"[object RegExp]":case"[object String]":if(""+e==""+n)continue;return!1;case"[object Number]":t.push({a:+e,b:+n});continue;case"[object Date]":case"[object Boolean]":if(+e==+n)continue;return!1;case"[object Symbol]":if(Ec.valueOf.call(e)===Ec.valueOf.call(n))continue;return!1;case"[object ArrayBuffer]":case Wc:t.push({a:Bc(e),b:Bc(n)});continue}var o=u==="[object Array]";if(!o&&pa(e)){var s=jt(e);if(s!==jt(n))return!1;if(e.buffer===n.buffer&&e.byteOffset===n.byteOffset)continue;o=!0}if(!o){if(typeof e!="object"||typeof n!="object")return!1;var d=e.constructor,h=n.constructor;if(d!==h&&!(Be(d)&&d instanceof d&&Be(h)&&h instanceof h)&&"constructor"in e&&"constructor"in n)return!1}for(var g=i.length;g--;)if(i[g]===e){if(r[g]===n)break;return!1}if(!(g>=0))if(i.push(e),r.push(n),t.push(!0),o){if(g=e.length,g!==n.length)return!1;for(;g--;)t.push({a:e[g],b:n[g]})}else{var y=ye(e),D;if(g=y.length,ye(n).length!==g)return!1;for(;g--;){if(D=y[g],!wn(n,D))return!1;t.push({a:e[D],b:n[D]})}}}return!0}function nt(e){if(!_n(e))return[];var n=[];for(var t in e)n.push(t);return Tu&&ku(e,n),n}function ba(e){var n=Ce(e);return function(t){if(t==null)return!1;var i=nt(t);if(Ce(i))return!1;for(var r=0;r<n;r++)if(!Be(t[e[r]]))return!1;return e!==qu||!Be(t[Da])}}var Da="forEach",Lu="has",ya=["clear","delete"],Mu=["get",Lu,"set"],Yl=ya.concat(Da,Mu),qu=ya.concat(Mu),Kl=["add"].concat(ya,Da,Lu);const Pu=fa?ba(Yl):We("Map"),Xu=fa?ba(qu):We("WeakMap"),ju=fa?ba(Kl):We("Set"),Vu=We("WeakSet");function On(e){for(var n=ye(e),t=n.length,i=Array(t),r=0;r<t;r++)i[r]=e[n[r]];return i}function Hu(e){for(var n=ye(e),t=n.length,i=Array(t),r=0;r<t;r++)i[r]=[n[r],e[n[r]]];return i}function va(e){for(var n={},t=ye(e),i=0,r=t.length;i<r;i++)n[e[t[i]]]=t[i];return n}function gt(e){var n=[];for(var t in e)Be(e[t])&&n.push(t);return n.sort()}function xa(e,n){return function(t){var i=arguments.length;if(n&&(t=Object(t)),i<2||t==null)return t;for(var r=1;r<i;r++)for(var a=arguments[r],c=e(a),u=c.length,o=0;o<u;o++){var s=c[o];(!n||t[s]===void 0)&&(t[s]=a[s])}return t}}const Ua=xa(nt),Gn=xa(ye),Ta=xa(nt,!0);function Zl(){return function(){}}function $u(e){if(!_n(e))return{};if(Fc)return Fc(e);var n=Zl();n.prototype=e;var t=new n;return n.prototype=null,t}function zu(e,n){var t=$u(e);return n&&Gn(t,n),t}function Gu(e){return _n(e)?En(e)?e.slice():Ua({},e):e}function Qu(e,n){return n(e),e}function _a(e){return En(e)?e:[e]}ce.toPath=_a;function wt(e){return ce.toPath(e)}function Ea(e,n){for(var t=n.length,i=0;i<t;i++){if(e==null)return;e=e[n[i]]}return t?e:void 0}function wa(e,n,t){var i=Ea(e,wt(n));return oa(i)?t:i}function Yu(e,n){n=wt(n);for(var t=n.length,i=0;i<t;i++){var r=n[i];if(!wn(e,r))return!1;e=e[r]}return!!t}function ri(e){return e}function Sn(e){return e=Gn({},e),function(n){return ma(n,e)}}function ai(e){return e=wt(e),function(n){return Ea(n,e)}}function Ft(e,n,t){if(n===void 0)return e;switch(t??3){case 1:return function(i){return e.call(n,i)};case 3:return function(i,r,a){return e.call(n,i,r,a)};case 4:return function(i,r,a,c){return e.call(n,i,r,a,c)}}return function(){return e.apply(n,arguments)}}function Ku(e,n,t){return e==null?ri:Be(e)?Ft(e,n,t):_n(e)&&!En(e)?Sn(e):ai(e)}function ci(e,n){return Ku(e,n,1/0)}ce.iteratee=ci;function Le(e,n,t){return ce.iteratee!==ci?ce.iteratee(e,n):Ku(e,n,t)}function Zu(e,n,t){n=Le(n,t);for(var i=ye(e),r=i.length,a={},c=0;c<r;c++){var u=i[c];a[u]=n(e[u],u,e)}return a}function Fa(){}function Ju(e){return e==null?Fa:function(n){return wa(e,n)}}function es(e,n,t){var i=Array(Math.max(0,e));n=Ft(n,t,1);for(var r=0;r<e;r++)i[r]=n(r);return i}function Vt(e,n){return n==null&&(n=e,e=0),e+Math.floor(Math.random()*(n-e+1))}const Qn=Date.now||function(){return new Date().getTime()};function ns(e){var n=function(a){return e[a]},t="(?:"+ye(e).join("|")+")",i=RegExp(t),r=RegExp(t,"g");return function(a){return a=a==null?"":""+a,i.test(a)?a.replace(r,n):a}}const ts={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;"},is=ns(ts),Jl=va(ts),rs=ns(Jl),as=ce.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var ji=/(.)^/,ef={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},nf=/\\|'|\r|\n|\u2028|\u2029/g;function tf(e){return"\\"+ef[e]}var rf=/^\s*(\w|\$)+\s*$/;function cs(e,n,t){!n&&t&&(n=t),n=Ta({},n,ce.templateSettings);var i=RegExp([(n.escape||ji).source,(n.interpolate||ji).source,(n.evaluate||ji).source].join("|")+"|$","g"),r=0,a="__p+='";e.replace(i,function(s,d,h,g,y){return a+=e.slice(r,y).replace(nf,tf),r=y+s.length,d?a+=`'+
1
+ import{aO as Nl,a as re}from"./index-HZqCo2f1.js";import{a as Rl}from"./jszip.min-rijCkWTm.js";function kl(e,n){for(var t=0;t<n.length;t++){const i=n[t];if(typeof i!="string"&&!Array.isArray(i)){for(const r in i)if(r!=="default"&&!(r in e)){const a=Object.getOwnPropertyDescriptor(i,r);a&&Object.defineProperty(e,r,a.get?a:{enumerable:!0,get:()=>i[r]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}var Ye={},aa="1.13.8",_c=typeof self=="object"&&self.self===self&&self||typeof global=="object"&&global.global===global&&global||Function("return this")()||{},ni=Array.prototype,ca=Object.prototype,Ec=typeof Symbol<"u"?Symbol.prototype:null,Ol=ni.push,Et=ni.slice,ft=ca.toString,Il=ca.hasOwnProperty,Uu=typeof ArrayBuffer<"u",Ll=typeof DataView<"u",Ml=Array.isArray,wc=Object.keys,Fc=Object.create,Ac=Uu&&ArrayBuffer.isView,ql=isNaN,Pl=isFinite,Tu=!{toString:null}.propertyIsEnumerable("toString"),Cc=["valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"],Xl=Math.pow(2,53)-1;function Re(e,n){return n=n==null?e.length-1:+n,function(){for(var t=Math.max(arguments.length-n,0),i=Array(t),r=0;r<t;r++)i[r]=arguments[r+n];switch(n){case 0:return e.call(this,i);case 1:return e.call(this,arguments[0],i);case 2:return e.call(this,arguments[0],arguments[1],i)}var a=Array(n+1);for(r=0;r<n;r++)a[r]=arguments[r];return a[n]=i,e.apply(this,a)}}function _n(e){var n=typeof e;return n==="function"||n==="object"&&!!e}function _u(e){return e===null}function oa(e){return e===void 0}function ua(e){return e===!0||e===!1||ft.call(e)==="[object Boolean]"}function Eu(e){return!!(e&&e.nodeType===1)}function We(e){var n="[object "+e+"]";return function(t){return ft.call(t)===n}}const ti=We("String"),sa=We("Number"),wu=We("Date"),Fu=We("RegExp"),Au=We("Error"),da=We("Symbol"),la=We("ArrayBuffer");var Cu=We("Function"),jl=_c.document&&_c.document.childNodes;typeof/./!="function"&&typeof Int8Array!="object"&&typeof jl!="function"&&(Cu=function(e){return typeof e=="function"||!1});const Be=Cu,Bu=We("Object");var Wu=Ll&&(!/\[native code\]/.test(String(DataView))||Bu(new DataView(new ArrayBuffer(8)))),fa=typeof Map<"u"&&Bu(new Map),Vl=We("DataView");function Hl(e){return e!=null&&Be(e.getInt8)&&la(e.buffer)}const ht=Wu?Hl:Vl,En=Ml||We("Array");function wn(e,n){return e!=null&&Il.call(e,n)}var Jr=We("Arguments");(function(){Jr(arguments)||(Jr=function(e){return wn(e,"callee")})})();const ii=Jr;function Su(e){return!da(e)&&Pl(e)&&!isNaN(parseFloat(e))}function ha(e){return sa(e)&&ql(e)}function ga(e){return function(){return e}}function Nu(e){return function(n){var t=e(n);return typeof t=="number"&&t>=0&&t<=Xl}}function Ru(e){return function(n){return n==null?void 0:n[e]}}const jt=Ru("byteLength"),$l=Nu(jt);var zl=/\[object ((I|Ui)nt(8|16|32)|Float(32|64)|Uint8Clamped|Big(I|Ui)nt64)Array\]/;function Gl(e){return Ac?Ac(e)&&!ht(e):$l(e)&&zl.test(ft.call(e))}const pa=Uu?Gl:ga(!1),Ce=Ru("length");function Ql(e){for(var n={},t=e.length,i=0;i<t;++i)n[e[i]]=!0;return{contains:function(r){return n[r]===!0},push:function(r){return n[r]=!0,e.push(r)}}}function ku(e,n){n=Ql(n);var t=Cc.length,i=e.constructor,r=Be(i)&&i.prototype||ca,a="constructor";for(wn(e,a)&&!n.contains(a)&&n.push(a);t--;)a=Cc[t],a in e&&e[a]!==r[a]&&!n.contains(a)&&n.push(a)}function ye(e){if(!_n(e))return[];if(wc)return wc(e);var n=[];for(var t in e)wn(e,t)&&n.push(t);return Tu&&ku(e,n),n}function Ou(e){if(e==null)return!0;var n=Ce(e);return typeof n=="number"&&(En(e)||ti(e)||ii(e))?n===0:Ce(ye(e))===0}function ma(e,n){var t=ye(n),i=t.length;if(e==null)return!i;for(var r=Object(e),a=0;a<i;a++){var c=t[a];if(n[c]!==r[c]||!(c in r))return!1}return!0}function ce(e){if(e instanceof ce)return e;if(!(this instanceof ce))return new ce(e);this._wrapped=e}ce.VERSION=aa;ce.prototype.value=function(){return this._wrapped};ce.prototype.valueOf=ce.prototype.toJSON=ce.prototype.value;ce.prototype.toString=function(){return String(this._wrapped)};function Bc(e){return new Uint8Array(e.buffer||e,e.byteOffset||0,jt(e))}var Wc="[object DataView]";function Iu(e,n){for(var t=[{a:e,b:n}],i=[],r=[];t.length;){var a=t.pop();if(a===!0){i.pop(),r.pop();continue}if(e=a.a,n=a.b,e===n){if(e!==0||1/e===1/n)continue;return!1}if(e==null||n==null)return!1;if(e!==e){if(n!==n)continue;return!1}var c=typeof e;if(c!=="function"&&c!=="object"&&typeof n!="object")return!1;e instanceof ce&&(e=e._wrapped),n instanceof ce&&(n=n._wrapped);var u=ft.call(e);if(u!==ft.call(n))return!1;if(Wu&&u=="[object Object]"&&ht(e)){if(!ht(n))return!1;u=Wc}switch(u){case"[object RegExp]":case"[object String]":if(""+e==""+n)continue;return!1;case"[object Number]":t.push({a:+e,b:+n});continue;case"[object Date]":case"[object Boolean]":if(+e==+n)continue;return!1;case"[object Symbol]":if(Ec.valueOf.call(e)===Ec.valueOf.call(n))continue;return!1;case"[object ArrayBuffer]":case Wc:t.push({a:Bc(e),b:Bc(n)});continue}var o=u==="[object Array]";if(!o&&pa(e)){var s=jt(e);if(s!==jt(n))return!1;if(e.buffer===n.buffer&&e.byteOffset===n.byteOffset)continue;o=!0}if(!o){if(typeof e!="object"||typeof n!="object")return!1;var d=e.constructor,h=n.constructor;if(d!==h&&!(Be(d)&&d instanceof d&&Be(h)&&h instanceof h)&&"constructor"in e&&"constructor"in n)return!1}for(var g=i.length;g--;)if(i[g]===e){if(r[g]===n)break;return!1}if(!(g>=0))if(i.push(e),r.push(n),t.push(!0),o){if(g=e.length,g!==n.length)return!1;for(;g--;)t.push({a:e[g],b:n[g]})}else{var y=ye(e),D;if(g=y.length,ye(n).length!==g)return!1;for(;g--;){if(D=y[g],!wn(n,D))return!1;t.push({a:e[D],b:n[D]})}}}return!0}function nt(e){if(!_n(e))return[];var n=[];for(var t in e)n.push(t);return Tu&&ku(e,n),n}function ba(e){var n=Ce(e);return function(t){if(t==null)return!1;var i=nt(t);if(Ce(i))return!1;for(var r=0;r<n;r++)if(!Be(t[e[r]]))return!1;return e!==qu||!Be(t[Da])}}var Da="forEach",Lu="has",ya=["clear","delete"],Mu=["get",Lu,"set"],Yl=ya.concat(Da,Mu),qu=ya.concat(Mu),Kl=["add"].concat(ya,Da,Lu);const Pu=fa?ba(Yl):We("Map"),Xu=fa?ba(qu):We("WeakMap"),ju=fa?ba(Kl):We("Set"),Vu=We("WeakSet");function On(e){for(var n=ye(e),t=n.length,i=Array(t),r=0;r<t;r++)i[r]=e[n[r]];return i}function Hu(e){for(var n=ye(e),t=n.length,i=Array(t),r=0;r<t;r++)i[r]=[n[r],e[n[r]]];return i}function va(e){for(var n={},t=ye(e),i=0,r=t.length;i<r;i++)n[e[t[i]]]=t[i];return n}function gt(e){var n=[];for(var t in e)Be(e[t])&&n.push(t);return n.sort()}function xa(e,n){return function(t){var i=arguments.length;if(n&&(t=Object(t)),i<2||t==null)return t;for(var r=1;r<i;r++)for(var a=arguments[r],c=e(a),u=c.length,o=0;o<u;o++){var s=c[o];(!n||t[s]===void 0)&&(t[s]=a[s])}return t}}const Ua=xa(nt),Gn=xa(ye),Ta=xa(nt,!0);function Zl(){return function(){}}function $u(e){if(!_n(e))return{};if(Fc)return Fc(e);var n=Zl();n.prototype=e;var t=new n;return n.prototype=null,t}function zu(e,n){var t=$u(e);return n&&Gn(t,n),t}function Gu(e){return _n(e)?En(e)?e.slice():Ua({},e):e}function Qu(e,n){return n(e),e}function _a(e){return En(e)?e:[e]}ce.toPath=_a;function wt(e){return ce.toPath(e)}function Ea(e,n){for(var t=n.length,i=0;i<t;i++){if(e==null)return;e=e[n[i]]}return t?e:void 0}function wa(e,n,t){var i=Ea(e,wt(n));return oa(i)?t:i}function Yu(e,n){n=wt(n);for(var t=n.length,i=0;i<t;i++){var r=n[i];if(!wn(e,r))return!1;e=e[r]}return!!t}function ri(e){return e}function Sn(e){return e=Gn({},e),function(n){return ma(n,e)}}function ai(e){return e=wt(e),function(n){return Ea(n,e)}}function Ft(e,n,t){if(n===void 0)return e;switch(t??3){case 1:return function(i){return e.call(n,i)};case 3:return function(i,r,a){return e.call(n,i,r,a)};case 4:return function(i,r,a,c){return e.call(n,i,r,a,c)}}return function(){return e.apply(n,arguments)}}function Ku(e,n,t){return e==null?ri:Be(e)?Ft(e,n,t):_n(e)&&!En(e)?Sn(e):ai(e)}function ci(e,n){return Ku(e,n,1/0)}ce.iteratee=ci;function Le(e,n,t){return ce.iteratee!==ci?ce.iteratee(e,n):Ku(e,n,t)}function Zu(e,n,t){n=Le(n,t);for(var i=ye(e),r=i.length,a={},c=0;c<r;c++){var u=i[c];a[u]=n(e[u],u,e)}return a}function Fa(){}function Ju(e){return e==null?Fa:function(n){return wa(e,n)}}function es(e,n,t){var i=Array(Math.max(0,e));n=Ft(n,t,1);for(var r=0;r<e;r++)i[r]=n(r);return i}function Vt(e,n){return n==null&&(n=e,e=0),e+Math.floor(Math.random()*(n-e+1))}const Qn=Date.now||function(){return new Date().getTime()};function ns(e){var n=function(a){return e[a]},t="(?:"+ye(e).join("|")+")",i=RegExp(t),r=RegExp(t,"g");return function(a){return a=a==null?"":""+a,i.test(a)?a.replace(r,n):a}}const ts={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#x27;","`":"&#x60;"},is=ns(ts),Jl=va(ts),rs=ns(Jl),as=ce.templateSettings={evaluate:/<%([\s\S]+?)%>/g,interpolate:/<%=([\s\S]+?)%>/g,escape:/<%-([\s\S]+?)%>/g};var ji=/(.)^/,ef={"'":"'","\\":"\\","\r":"r","\n":"n","\u2028":"u2028","\u2029":"u2029"},nf=/\\|'|\r|\n|\u2028|\u2029/g;function tf(e){return"\\"+ef[e]}var rf=/^\s*(\w|\$)+\s*$/;function cs(e,n,t){!n&&t&&(n=t),n=Ta({},n,ce.templateSettings);var i=RegExp([(n.escape||ji).source,(n.interpolate||ji).source,(n.evaluate||ji).source].join("|")+"|$","g"),r=0,a="__p+='";e.replace(i,function(s,d,h,g,y){return a+=e.slice(r,y).replace(nf,tf),r=y+s.length,d?a+=`'+
2
2
  ((__t=(`+d+`))==null?'':_.escape(__t))+
3
3
  '`:h?a+=`'+
4
4
  ((__t=(`+h+`))==null?'':__t)+