conductor-oss 0.27.3 → 0.28.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -3
- package/dist/commands/start.d.ts.map +1 -1
- package/dist/commands/start.js +3 -1
- package/dist/commands/start.js.map +1 -1
- package/package.json +5 -5
- package/web/.next/standalone/packages/web/.next/BUILD_ID +1 -1
- package/web/.next/standalone/packages/web/.next/app-path-routes-manifest.json +5 -5
- package/web/.next/standalone/packages/web/.next/build-manifest.json +3 -3
- package/web/.next/standalone/packages/web/.next/prerender-manifest.json +3 -3
- package/web/.next/standalone/packages/web/.next/react-loadable-manifest.json +7 -7
- package/web/.next/standalone/packages/web/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_global-error.html +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_global-error.rsc +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_not-found/page.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/access/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/agents/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/app-update/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/attachments/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/boards/comments/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/boards/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/bridges/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/config/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/context-files/open/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/context-files/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/events/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/executor/health/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/filesystem/directory/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/filesystem/pick-directory/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/github/repos/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/github/webhook/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/health/boards/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/health/sessions/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/notifications/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/preferences/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/repositories/[id]/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/repositories/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/actions/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/archive/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/checks/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/diff/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/feed/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/feedback/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/files/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/interrupt/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/keys/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/kill/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/output/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/output/stream/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/restore/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/snapshot/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/token/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/ttyd/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/[id]/terminal/ttyd/ws/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/sessions/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/skills/activate/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/skills/catalog/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/skills/deactivate/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/skills/install/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/skills/installed/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/skills/session-active/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/skills/uninstall/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/spawn/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/workspaces/branches/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/api/workspaces/route.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/bridge/connect/page.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/bridge/connect/page.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/bridge/connect/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/page.js +2 -2
- package/web/.next/standalone/packages/web/.next/server/app/page.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/sessions/[id]/page.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/sessions/[id]/page.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/sessions/[id]/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/settings/bridge/page.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/settings/bridge/page.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/settings/bridge/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/sign-in/[[...sign-in]]/page.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/sign-in/[[...sign-in]]/page.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/sign-in/[[...sign-in]]/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/sign-in/hosted/page.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/sign-in/hosted/page.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/sign-in/hosted/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/sign-in/sso-callback/page.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/sign-in/sso-callback/page.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/sign-in/sso-callback/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/unlock/page.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/unlock/page.js.nft.json +1 -1
- package/web/.next/standalone/packages/web/.next/server/app/unlock/page_client-reference-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/app-paths-manifest.json +5 -5
- package/web/.next/standalone/packages/web/.next/server/chunks/3261.js +1 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/3855.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/3990.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/5164.js +3 -3
- package/web/.next/standalone/packages/web/.next/server/chunks/5458.js +1 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/7023.js +1 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/9455.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/middleware-build-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/middleware-react-loadable-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/pages/500.html +1 -1
- package/web/.next/standalone/packages/web/.next/server/server-reference-manifest.js +1 -1
- package/web/.next/standalone/packages/web/.next/server/server-reference-manifest.json +1 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/1874.b6ef53ba217d7178.js +1 -0
- package/web/.next/standalone/packages/web/.next/static/chunks/3607.44b82c3be1ac4dcd.js +1 -0
- package/web/.next/standalone/packages/web/.next/static/chunks/4292-8de0ee8c2ff2f474.js +1 -0
- package/web/.next/standalone/packages/web/.next/static/chunks/{4443.3f82873df09aef1c.js → 4443.7c4d4e8f86da6c05.js} +1 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/4997-af3ab1850eb7e4bc.js +1 -0
- package/web/.next/standalone/packages/web/.next/static/chunks/7214.58dc0634fa574457.js +1 -0
- package/web/.next/standalone/packages/web/.next/static/chunks/{7220-ffe4a8688e5bfc0b.js → 7220-17bf448355a103d6.js} +1 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/app/layout-f98ea33f60204f4e.js +1 -0
- package/web/.next/standalone/packages/web/.next/static/chunks/app/page-e7a808e7e90ab1cd.js +1 -0
- package/web/.next/standalone/packages/web/.next/static/chunks/app/sessions/[id]/page-10393b4b99815667.js +1 -0
- package/web/.next/{static/chunks/webpack-05b293441d3dcff4.js → standalone/packages/web/.next/static/chunks/webpack-68bd134a3f3f2d39.js} +1 -1
- package/web/.next/standalone/packages/web/.next/static/css/5a16b86740cce395.css +3 -0
- package/web/.next/static/chunks/1874.b6ef53ba217d7178.js +1 -0
- package/web/.next/static/chunks/3607.44b82c3be1ac4dcd.js +1 -0
- package/web/.next/static/chunks/4292-8de0ee8c2ff2f474.js +1 -0
- package/web/.next/static/chunks/{4443.3f82873df09aef1c.js → 4443.7c4d4e8f86da6c05.js} +1 -1
- package/web/.next/static/chunks/4997-af3ab1850eb7e4bc.js +1 -0
- package/web/.next/static/chunks/7214.58dc0634fa574457.js +1 -0
- package/web/.next/static/chunks/{7220-ffe4a8688e5bfc0b.js → 7220-17bf448355a103d6.js} +1 -1
- package/web/.next/static/chunks/app/layout-f98ea33f60204f4e.js +1 -0
- package/web/.next/static/chunks/app/page-e7a808e7e90ab1cd.js +1 -0
- package/web/.next/static/chunks/app/sessions/[id]/page-10393b4b99815667.js +1 -0
- package/web/.next/{standalone/packages/web/.next/static/chunks/webpack-05b293441d3dcff4.js → static/chunks/webpack-68bd134a3f3f2d39.js} +1 -1
- package/web/.next/static/css/5a16b86740cce395.css +3 -0
- package/web/.next/standalone/packages/web/.next/server/chunks/101.js +0 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/7164.js +0 -1
- package/web/.next/standalone/packages/web/.next/server/chunks/8116.js +0 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/1399.dd0fc6368e5b9dbc.js +0 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/1874.4cbce11be5d46d0e.js +0 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/2452-70f8a3ac1c83e765.js +0 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/5849-716c45aaa70be03c.js +0 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/9637.e9b5b6c2f348ed6b.js +0 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/app/layout-3d34660513c2076a.js +0 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/app/page-12c36f63a2bc9ad4.js +0 -1
- package/web/.next/standalone/packages/web/.next/static/chunks/app/sessions/[id]/page-e8435c9903296038.js +0 -1
- package/web/.next/standalone/packages/web/.next/static/css/059b70372b80caf9.css +0 -3
- package/web/.next/static/chunks/1399.dd0fc6368e5b9dbc.js +0 -1
- package/web/.next/static/chunks/1874.4cbce11be5d46d0e.js +0 -1
- package/web/.next/static/chunks/2452-70f8a3ac1c83e765.js +0 -1
- package/web/.next/static/chunks/5849-716c45aaa70be03c.js +0 -1
- package/web/.next/static/chunks/9637.e9b5b6c2f348ed6b.js +0 -1
- package/web/.next/static/chunks/app/layout-3d34660513c2076a.js +0 -1
- package/web/.next/static/chunks/app/page-12c36f63a2bc9ad4.js +0 -1
- package/web/.next/static/chunks/app/sessions/[id]/page-e8435c9903296038.js +0 -1
- package/web/.next/static/css/059b70372b80caf9.css +0 -3
- /package/web/.next/standalone/packages/web/.next/static/{O1PP_5i0XDD8kg_ZHd7qA → Zd-90H-cOqJllLM8DFHp0}/_buildManifest.js +0 -0
- /package/web/.next/standalone/packages/web/.next/static/{O1PP_5i0XDD8kg_ZHd7qA → Zd-90H-cOqJllLM8DFHp0}/_ssgManifest.js +0 -0
- /package/web/.next/static/{O1PP_5i0XDD8kg_ZHd7qA → Zd-90H-cOqJllLM8DFHp0}/_buildManifest.js +0 -0
- /package/web/.next/static/{O1PP_5i0XDD8kg_ZHd7qA → Zd-90H-cOqJllLM8DFHp0}/_ssgManifest.js +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[8974],{5739:(e,t,a)=>{"use strict";function n(e){return e.trim().toLowerCase().replace(/[_\s]+/g,"-")}a.d(t,{q:()=>n})},6542:(e,t,a)=>{"use strict";a.d(t,{default:()=>eC});var n=a(54568),l=a(42925),s=a(79748),r=a(7620),i=a(40448),o=a(76196),d=a(52353),c=a(20487),p=a(50549),u=a(57917),m=a(21048),h=a(55341),x=a(30824),g=a(34737),f=a(20670),b=a(58299),v=a(84736),w=a(7086),j=a(54299),k=a(34041),y=a(34309),C=a(63253),A=a(20732),N=a(36645),S=a(45894),I=a(5739),M=a(33866),P=a(35821),E=a(95106),O=a(53649),L=a(86011),U=a(31404),B=a(10926);let $=new Map,T=new Map;function G(e){let t=T.get(e);return t||(t={agents:[],loading:!0,lastFetchedAt:0,inFlight:null,retryTimeout:null},T.set(e,t)),t}function q(e){let t=$.get(e);return t||(t=new Set,$.set(e,t)),t}function F(e){for(let t of q(e))t()}function R(e){let t=G(e);return t.agents.length>0&&Date.now()-t.lastFetchedAt<3e4}function H(e,t){let a=G(e);null===a.retryTimeout&&(a.retryTimeout=window.setTimeout(()=>{G(e).retryTimeout=null,D(e,t,!0)},1e4))}async function D(e,t,a=!1){let n=G(e);if(!a&&R(e)){n.loading&&(n.loading=!1,F(e));return}return n.inFlight||(n.loading=!0,F(e),n.inFlight=(async()=>{try{var a;let l=await fetch((0,U.S)("/api/agents",t),{cache:"no-store"});if(!l.ok)throw Error(`Failed to fetch agents: ${l.status}`);let s=(a=await l.json(),Array.isArray(a)?a:a&&"object"==typeof a&&"agents"in a&&Array.isArray(a.agents)?a.agents:[]);s.length>0?(n.agents=s,n.lastFetchedAt=Date.now(),null!==n.retryTimeout&&(window.clearTimeout(n.retryTimeout),n.retryTimeout=null)):H(e,t)}catch{H(e,t)}finally{n.loading=!1,n.inFlight=null,F(e)}})()),n.inFlight}var _=a(46012),W=a(862),V=a(84169),Z=a(39702),z=a(86181),K=a(90124);function Q(e){return e&&"object"==typeof e?e:null}async function J({files:e,projectId:t,taskRef:a,bridgeId:n,preferAbsolute:l=!0}){if(!e.length)return[];let s=t.trim();if(!s)throw Error("Project id is required to upload attachments");let r=new FormData;r.append("projectId",s);let i=a?.trim();for(let t of(i&&r.append("taskRef",i),e))r.append("files",t);let o=await fetch((0,U.S)("/api/attachments",n),{method:"POST",body:r}),d=await o.json().catch(()=>null);if(!o.ok){let t=1===e.length?e[0]?.name??"attachment":`${e.length} attachments`;throw Error(d?.error??`Failed to upload ${t}`)}let c=(Array.isArray(d?.files)?d.files:d?[d]:[]).map(e=>(function(e,t){let a=Q(e);if(!a)return null;let n=Q(a.attachment);for(let e of t?[a.absolutePath,a.path,a.filePath,n?.absolutePath,n?.path,n?.filePath]:[a.path,a.absolutePath,a.filePath,n?.path,n?.absolutePath,n?.filePath])if("string"==typeof e&&e.trim().length>0)return e.trim();return null})(e,l)).filter(e=>!!e);if(0===c.length)throw Error("Attachment upload succeeded but did not return a usable file path");return c}var X=a(15115);function Y(e){return e.map(e=>(0,B.C0)(e)).filter(e=>null!==e)}var ee=a(67506),et=a(51164),ea=a(73927);let en="claude-code";function el(e){let t=e?.trim();return t&&t.length>0?t:null}let es=(0,l.default)(()=>Promise.all([a.e(2452),a.e(1399)]).then(a.bind(a,42452)).then(e=>e.SessionDetail),{loadableGenerated:{webpack:()=>[42452]},loading:()=>(0,n.jsx)("div",{className:"flex h-full items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:"Loading session..."})}),er=(0,l.default)(()=>Promise.all([a.e(9450),a.e(9167)]).then(a.bind(a,29450)).then(e=>e.WorkspaceSidebarPanel),{loadableGenerated:{webpack:()=>[29450]},loading:()=>(0,n.jsx)("div",{className:"flex h-full items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:"Loading workspace panel..."})}),ei=(0,l.default)(()=>a.e(1081).then(a.bind(a,11081)).then(e=>e.WorkspaceOverview),{loadableGenerated:{webpack:()=>[11081]},loading:()=>(0,n.jsx)("div",{className:"flex h-full items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:"Loading workspace..."})}),eo=(0,l.default)(()=>a.e(1265).then(a.bind(a,71265)).then(e=>e.WorkspaceKanban),{loadableGenerated:{webpack:()=>[71265]},loading:()=>(0,n.jsx)("div",{className:"flex h-full items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:"Loading board..."})}),ed=(0,l.default)(()=>Promise.all([a.e(3470),a.e(524),a.e(474)]).then(a.bind(a,90474)).then(e=>e.NewWorkspaceDialog),{loadableGenerated:{webpack:()=>[90474]},loading:()=>null}),ec=(0,l.default)(()=>Promise.all([a.e(3470),a.e(524),a.e(474)]).then(a.bind(a,90474)).then(e=>e.SettingsDialog),{loadableGenerated:{webpack:()=>[90474]},loading:()=>null});function ep(e){let t=(0,M.h7)(e);return t?.label?t.label:e.split(/[-_\s]+/g).filter(Boolean).map(e=>e[0]?.toUpperCase()+e.slice(1)).join(" ")}function eu(e){return e.issueId?.trim()||e.taskRef?.trim()||e.id}function em(e){let[t]=e.split(" - ");return(t??e).trim()}function eh(e){return!e||"object"!=typeof e||Array.isArray(e)?{}:{...e}}function ex(e,t){let a=eh(e),n=eh(a.notifications),l=n.soundFile,s="string"==typeof a.codingAgent&&a.codingAgent.trim().length>0?a.codingAgent.trim():t,r="string"==typeof a.ide&&a.ide.trim().length>0?a.ide.trim():"vscode",i="string"==typeof a.markdownEditor&&a.markdownEditor.trim().length>0?a.markdownEditor.trim():"obsidian",o="string"==typeof a.markdownEditorPath?a.markdownEditorPath.trim():"";return{onboardingAcknowledged:!0===a.onboardingAcknowledged,codingAgent:s,ide:r,markdownEditor:i,markdownEditorPath:o,modelAccess:(0,et.v)(a.modelAccess),notifications:{soundEnabled:!1!==n.soundEnabled,soundFile:null===l?null:"string"==typeof l&&l.trim().length>0?l.trim():"abstract-sound-4"}}}function eg(e,t){return t[(0,I.q)(e)]??null}function ef(e){if(!e)return[];let t=[],a=new Set;for(let n of Object.values(e.modelsByAccess))if(Array.isArray(n))for(let e of n)!e?.id||a.has(e.id)||(a.add(e.id),t.push(e));return t}function eb(e,t,a){let n=eg(e,a),l=(0,o.Tk)(e,t),s=(0,ea.V3)(n,l),r=(0,o.d8)(e,t),i=[],d=new Set;for(let e of[...s,...r,...ef(n)])!e?.id||d.has(e.id)||(d.add(e.id),i.push(e));return i}function ev(e,t,a,n){let l=eg(e,a),s=(0,o.Tk)(e,t),r=(0,ea.a3)(l,n,s),i=(0,o.u6)(e,t),d=[],c=new Set;for(let e of[...r,...i])!e?.id||c.has(e.id)||(c.add(e.id),d.push(e));return d}function ew(e,t,a,n){let l=eg(e,a),s=(0,o.Tk)(e,t);return(0,ea.Z9)(l,n,s)??(0,o.DZ)(e,t)??""}function ej(e,t,a,n,l){let s,r,i=n?.trim()??"",d=l?.trim().toLowerCase()??"",c=eb(e,t,a),p=(s=eg(e,a),r=(0,o.Tk)(e,t),(0,ea.NN)(s,r)??(0,o.O$)(e,t)??ef(s)[0]?.id??""),u=n=>{let l=ev(e,t,a,n);return d.length>0&&l.some(e=>e.id===d)?d:ew(e,t,a,n)};return i.length>0?c.some(e=>e.id===i)?{catalogModel:i,customModel:"",reasoningEffort:u(i)}:{catalogModel:p,customModel:i,reasoningEffort:u(i)}:{catalogModel:p,customModel:"",reasoningEffort:u(p)}}function ek(e){let t=e.customModel.trim();if(t.length>0)return t;let a=e.catalogModel.trim();return a.length>0?a:void 0}function ey(e){let t=e.reasoningEffort.trim().toLowerCase();return t.length>0?t:void 0}function eC({requiresPairedDeviceScope:e=!1}){let t=(0,s.useRouter)(),a=(0,s.usePathname)(),l=(0,s.useSearchParams)(),i=(0,r.useMemo)(()=>el(l.get("project")),[l]),o=(0,r.useMemo)(()=>el(l.get("session")),[l]),d=(0,r.useMemo)(()=>"board"===l.get("view")?"board":"chat",[l]),c=(0,r.useMemo)(()=>el(l.get("bridge")),[l]),p=(0,r.useMemo)(()=>{let e=l.get("tab");return null===e||"terminal"===e||"overview"!==e&&"preview"!==e&&"chat"!==e&&"diff"!==e},[l]),[u,m]=(0,r.useState)(c??""),h=(0,B.C0)(u),x=(0,r.useMemo)(()=>(0,B.DW)(o)?.bridgeId??null,[o]),g=c??x,f=h??x,[v,w]=(0,r.useState)([]),[j,k]=(0,r.useState)("loading"),y=(0,ee.y)(),C=(0,r.useMemo)(()=>v.filter(e=>e.connected),[v]),A=(0,r.useMemo)(()=>C.map(e=>e.bridgeId),[C]),N=(0,r.useMemo)(()=>(function({requiresPairedDeviceScope:e,effectiveBridgeId:t,connectedBridgeIds:a,bridgeInventoryStatus:n}){if(!e)return!1;let l=(0,B.C0)(t);return!!l&&("loading"===n||"ready"===n&&!Y(a).includes(l))})({requiresPairedDeviceScope:e,effectiveBridgeId:f,connectedBridgeIds:A,bridgeInventoryStatus:j}),[j,A,f,e]),S=(0,r.useMemo)(()=>(function({requiresPairedDeviceScope:e,effectiveBridgeId:t,connectedBridgeIds:a,bridgeInventoryStatus:n}){if(!e)return!0;let l=(0,B.C0)(t);return!!l&&"ready"===n&&Y(a).includes(l)})({requiresPairedDeviceScope:e,effectiveBridgeId:f,connectedBridgeIds:A,bridgeInventoryStatus:j}),[j,A,f,e]),{projects:$,loading:T,error:F,refresh:H}=(0,O.U)(f,{enabled:S}),{agents:K}=function(e,t){let a=t?.enabled??!0,n=(0,B.C0)(e)??"local",[l,s]=(0,r.useState)({agents:[],loading:a});return(0,r.useEffect)(()=>{if(!a)return void s({agents:[],loading:!1});let t=()=>{let e;return s({agents:(e=G(n)).agents,loading:e.loading})};q(n).add(t),t(),D(n,e);let l=()=>{R(n)||D(n,e,!0)},r=()=>{"visible"!==document.visibilityState||R(n)||D(n,e,!0)};return window.addEventListener("focus",l),document.addEventListener("visibilitychange",r),()=>{q(n).delete(t),window.removeEventListener("focus",l),document.removeEventListener("visibilitychange",r)}},[e,a,n]),a?l:{agents:[],loading:!1}}(f,{enabled:S}),{mobileSidebarOpen:Q,desktopSidebarOpen:J,toggleSidebar:ea,closeSidebarOnMobile:eu,syncSidebarForViewport:em}=(0,_.T)({initialDesktopOpen:!1}),eh=Q||J,eg=!o||eh,{sessions:ef,loading:eb,error:ev,refresh:ew}=(0,E.t)(i,{enabled:eg&&S,bridgeId:f}),[eN,eS]=(0,r.useState)(""),[eI,eM]=(0,r.useState)(""),[eP,eE]=(0,r.useState)({catalogModel:"",customModel:"",reasoningEffort:""}),[eO,eL]=(0,r.useState)(!1),[eU,eB]=(0,r.useState)(null),[e$,eT]=(0,r.useState)(!1),[eG,eq]=(0,r.useState)(!1),[eF,eR]=(0,r.useState)(null),[eH,eD]=(0,r.useState)(null),[e_,eW]=(0,r.useState)(!0),[eV,eZ]=(0,r.useState)(!1),[ez,eK]=(0,r.useState)(null),[eQ,eJ]=(0,r.useState)(!1),[eX,eY]=(0,r.useState)(!1),[e0,e1]=(0,r.useState)(()=>o?[o]:[]),[e4,e2]=(0,r.useState)(!1);(0,r.useEffect)(()=>{let e="function"==typeof window.matchMedia?window.matchMedia("(pointer: coarse)"):null,t=()=>{e2((0,z.k$)())};return t(),window.addEventListener("resize",t),e?.addEventListener?.("change",t),()=>{window.removeEventListener("resize",t),e?.removeEventListener?.("change",t)}},[]),(0,r.useEffect)(()=>{if(!y){w([]),k("ready"),e&&t.replace("/bridge/connect");return}let a=!1,n=N?4e3:15e3;async function l(){try{let e=await fetch("/api/bridge/devices",{cache:"no-store"});if(!e.ok)throw Error(`Failed to fetch bridges: ${e.status}`);let t=await e.json().catch(()=>null);a||(w((0,X.oH)(t?.devices).map(e=>({bridgeId:e.device_id,hostname:e.last_status?.hostname??e.hostname,os:`${e.last_status?.os??`${e.os}/${e.arch}`}${(0,X.wj)(e.last_status?.version)}`,capabilities:[],connected:e.connected,status:e.connected?"connected":"offline",connectedAt:"",lastSeenAt:""}))),k("ready"))}catch{a||(w([]),k("error"))}}l();let s=window.setInterval(()=>{l()},n);return()=>{a=!0,window.clearInterval(s)}},[y,N,e,t]),(0,r.useEffect)(()=>{let t=function({requiresPairedDeviceScope:e,requestedBridgeId:t,selectedBridgeId:a,connectedBridgeIds:n}){let l=(0,B.C0)(t),s=(0,B.C0)(a),r=Y(n);return e?l||(0===r.length?"":s&&r.includes(s)?s:r[0]??""):s&&r.includes(s)?s:""}({requiresPairedDeviceScope:e,requestedBridgeId:g,selectedBridgeId:u,connectedBridgeIds:A});t!==u&&m(t)},[A,g,e,u]),(0,r.useEffect)(()=>{!e||f||"ready"!==j||C.length>0||t.replace("/bridge/connect")},[j,C.length,f,e,t]),(0,r.useEffect)(()=>{m(c??"")},[c]);let e5=!!o&&p&&e4,e3=(0,r.useMemo)(()=>new Map(ef.map(e=>[e.id,e])),[ef]),{session:e6,loading:e9,error:e7}=(0,P.w)(o,null,{enabled:!!o&&S,bridgeId:f}),e8=eU??F??ev??e7??ez,te=(0,r.useMemo)(()=>{let e=new Map;for(let t of ef){let a=e.get(t.projectId);a?a.push(t):e.set(t.projectId,[t])}return e},[ef]),tt=(0,r.useCallback)((e,n="push")=>{let s=new URLSearchParams(l.toString()),r=(e,t)=>{let a="string"==typeof t?t.trim():"";a.length>0?s.set(e,a):s.delete(e)};"projectId"in e&&r("project",e.projectId),"sessionId"in e&&r("session",e.sessionId),"workspaceView"in e&&("board"===e.workspaceView?s.set("view","board"):s.delete("view")),"tab"in e&&(e.tab&&"chat"!==e.tab?s.set("tab",e.tab):s.delete("tab")),"bridgeId"in e&&r("bridge",e.bridgeId),s.has("project")||s.delete("view"),s.has("session")||s.delete("tab");let i=s.toString(),o=i.length>0?`${a}?${i}`:a;"replace"===n?t.replace(o,{scroll:!1}):t.push(o,{scroll:!1})},[a,t,l]);(0,r.useEffect)(()=>{let e=(0,B.C0)(u);(c??null)!==e&&tt({bridgeId:e},"replace")},[c,tt,u]),(0,r.useEffect)(()=>{if(!T&&!F){if(0===$.length){null!==i&&tt({projectId:null,workspaceView:null},"replace");return}null===i||$.some(e=>e.id===i)||tt({projectId:o?null:$[0]?.id??null,workspaceView:o?null:d},"replace")}},[F,T,tt,$,i,o,d]),(0,r.useEffect)(()=>{if(o){if(eg){if(eb||ev)return;ef.some(e=>e.id===o)||tt({sessionId:null,tab:null},"replace");return}!e9&&(e6||tt({sessionId:null,tab:null},"replace"))}},[ef,tt,eg,o,e9,e6,ev,eb]),(0,r.useEffect)(()=>{o?e1(e=>[o,...e.filter(e=>e!==o)].slice(0,1)):e1([])},[o]),(0,r.useEffect)(()=>{o&&eg&&!eb&&!ev&&e1(e=>e.filter(e=>e===o||e3.has(e)))},[eg,o,e3,ev,eb]);let ta=(0,r.useMemo)(()=>e6,[e6]),tn=(0,r.useMemo)(()=>$.find(e=>e.id===i)??null,[$,i]),tl=(0,r.useMemo)(()=>i?te.get(i)??[]:[],[i,te]),ts=(0,r.useMemo)(()=>ta?[ta.projectId,ta.branch].filter(Boolean).join(" \xb7 "):tn?[tn.id,tn.defaultBranch||"main"].filter(Boolean).join(" \xb7 "):"All Projects",[tn,ta]),tr=(0,r.useMemo)(()=>f?v.find(e=>e.bridgeId===f)??null:null,[v,f]),ti=tr?`Device \xb7 ${tr.hostname}`:N?"Device \xb7 Reconnecting":e?"Scope \xb7 Paired device required":"Scope \xb7 Local backend",to=tr?`Showing projects and sessions from ${tr.hostname}.`:N?"Waiting for the selected laptop to reconnect before loading dashboard data.":e?"Hosted dashboard access must target a connected laptop.":"Showing projects and sessions from the local backend because no paired laptop is selected.",td=tr?"border-[rgba(24,197,143,0.35)] bg-[rgba(24,197,143,0.12)] text-[var(--vk-green)]":N?"border-[rgba(255,180,92,0.28)] bg-[rgba(255,180,92,0.10)] text-[var(--vk-orange)]":e?"border-[rgba(255,143,122,0.24)] bg-[rgba(255,143,122,0.08)] text-[var(--vk-red)]":"border-[var(--vk-border)] bg-[var(--vk-bg-main)] text-[var(--vk-text-muted)]",tc=(0,r.useMemo)(()=>{let e=Array.isArray(K)?K:[],t=new Set;for(let e of M.pN)t.add(e.name);for(let a of e)a.name&&t.add(a.name);for(let e of $)e.agent&&t.add(e.agent);return eH?.codingAgent&&t.add(eH.codingAgent),eI&&t.add(eI),0===t.size&&t.add(eH?.codingAgent||en),[...t]},[K,eH?.codingAgent,$,eI]),tp=(0,r.useMemo)(()=>{let e={};for(let t of M.pN)e[(0,I.q)(t.name)]={name:t.name,ready:!1,installed:!1,configured:!1,homepage:t.homepage,description:t.description,installHint:t.installHint??null,installUrl:t.installUrl??t.homepage??null,setupUrl:t.setupUrl??t.homepage??null};for(let t of Array.isArray(K)?K:[]){if(!t.name)continue;let a=(0,I.q)(t.name),n=(0,M.h7)(t.name);e[(0,I.q)(t.name)]={name:n?.name??t.name,ready:!0===t.ready,installed:!1!==t.installed,configured:!0===t.configured,homepage:"string"==typeof t.homepage?t.homepage:n?.homepage??e[a]?.homepage??null,description:"string"==typeof t.description?t.description:n?.description??e[a]?.description??null,installHint:"string"==typeof t.installHint?t.installHint:n?.installHint??e[a]?.installHint??null,installUrl:"string"==typeof t.installUrl?t.installUrl:n?.installUrl??e[a]?.installUrl??null,setupUrl:"string"==typeof t.setupUrl?t.setupUrl:n?.setupUrl??e[a]?.setupUrl??null}}return e},[K]),tu=(0,r.useMemo)(()=>{let e={};for(let t of Array.isArray(K)?K:[])t.name&&t.runtimeModelCatalog&&(e[(0,I.q)(t.name)]=t.runtimeModelCatalog);return e},[K]),tm=(0,r.useCallback)(e=>{let t=tp[(0,I.q)(e)],a=(0,M.h7)(e),n=t?.installed?t?.setupUrl??a?.setupUrl??t?.homepage??a?.homepage:t?.installUrl??a?.installUrl??t?.setupUrl??a?.setupUrl??t?.homepage??a?.homepage;n&&window.open(n,"_blank","noopener,noreferrer")},[tp]);async function th(t,a){eZ(!0),eK(null);try{if(e&&!f)throw Error("Pair or reconnect a laptop before saving preferences.");let n=await fetch((0,U.S)("/api/preferences",f),{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}),l=await n.json().catch(()=>null);if(!n.ok)throw Error(l?.error??l?.reason??`Failed to save preferences: ${n.status}`);let s=ex(l?.preferences,t.codingAgent||en);return eD(s),eM(s.codingAgent),a?.closeDialog!==!1&&eJ(!1),!0}catch(e){return eK(e instanceof Error?e.message:"Failed to save preferences"),!1}finally{eZ(!1)}}(0,r.useEffect)(()=>{let e=!1;return async function(){if(!S){e||(eD(null),eK(null),eW(!1));return}eW(!0);try{let t=await fetch((0,U.S)("/api/preferences",f)),a=await t.json().catch(()=>null);if(!t.ok)throw Error(a?.error??a?.reason??`Failed to load preferences: ${t.status}`);if(e)return;let n=ex(a?.preferences,en);eD(n),eK(null)}catch(t){if(e)return;eD(ex(null,en)),eK(t instanceof Error?t.message:"Failed to load preferences")}finally{e||eW(!1)}}(),()=>{e=!0}},[f,S]),(0,r.useEffect)(()=>{eH&&(eI||eM(eH.codingAgent))},[eH,eI]),(0,r.useEffect)(()=>{if(!e_){if(!eH||e&&!f)return void eJ(!1);eH.onboardingAcknowledged||eJ(!0)}},[f,eH,e_,e]),(0,r.useEffect)(()=>{if(0!==tc.length&&(!eI||!tc.includes(eI))){let e=eH?.codingAgent||en;eM(tc.includes(e)?e:tc[0]??en)}},[tc,eH?.codingAgent,eI]),(0,r.useEffect)(()=>{let e=eI||tn?.agent||eH?.codingAgent||en,t=tn&&(0,I.q)(tn.agent)===(0,I.q)(e)?tn.agentModel:null,a=tn&&(0,I.q)(tn.agent)===(0,I.q)(e)?tn.agentReasoningEffort:null;eE(ej(e,eH?.modelAccess??(0,et.v)(null),tu,t,a))},[eH?.modelAccess,eH?.codingAgent,tu,eI,tn]);let tx=(0,r.useCallback)(()=>{e&&!f?eB("Pair or reconnect a laptop before adding a workspace."):(eR(null),eB(null),eT(!0),em())},[f,e,em]);(0,r.useEffect)(()=>{eX&&!eQ&&(eY(!1),tx())},[eX,eQ]);let tg=(0,r.useCallback)(async t=>{let a=eN.trim(),n=ek(eP),l=ey(eP),s=t?.bridgeId??f??null;if(e&&!s)return eB("Pair or reconnect a laptop before launching an agent session."),!1;let r=t?.projectId??i??$[0]?.id;if(!r)return eB("No project is configured in conductor.yaml"),!1;let o=eI||en,d=tp[(0,I.q)(o)]??null;if(d&&!d.ready)return eB(d.installed?`${ep(o)} is not ready yet. Finish setup or authentication and try again.`:`${ep(o)} is not installed on this machine yet. Open setup and try again.`),tm(o),!1;eL(!0),eB(null);try{let e=await fetch((0,U.S)("/api/sessions",s),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({projectId:r,prompt:a,...t?.issueId?.trim()?{issueId:t.issueId.trim()}:{},agent:o,...t?.branch?{branch:t.branch}:{},...t?.baseBranch?{baseBranch:t.baseBranch}:{},..."boolean"==typeof t?.useWorktree?{useWorktree:t.useWorktree}:{},...t?.permissionMode?{permissionMode:t.permissionMode}:{},...n?{model:n}:{},...l?{reasoningEffort:l}:{},...t?.attachments&&t.attachments.length>0?{attachments:t.attachments}:{}})}),i=await e.json().catch(()=>null);if(!e.ok)throw Error(i?.error??`Failed to create workspace: ${e.status}`);if(!i?.session?.id)throw Error("Session created but response is missing session id");return eS(""),em(),await ew(),tt({projectId:r,sessionId:i.session.id,tab:"terminal",bridgeId:s},"push"),!0}catch(e){return eB(e instanceof Error?e.message:"Failed to create workspace"),!1}finally{eL(!1)}},[tp,eP,tt,tm,$,eN,ew,eI,f,i,e,em]),tf=(0,r.useCallback)(async e=>{let t=await fetch(`/api/sessions/${encodeURIComponent(e)}/archive`,{method:"POST"}),a=await t.json().catch(()=>null);if(404===t.status&&(t=await fetch(`/api/sessions/${encodeURIComponent(e)}/actions`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"archive"})}),a=await t.json().catch(()=>null)),!t.ok)throw Error(a?.error??`Failed to archive session: ${t.status}`);o===e&&tt({projectId:null,sessionId:null,workspaceView:null,tab:null},"replace"),await ew()},[tt,ew,o]),tb=(0,r.useCallback)(async t=>{if(e&&!f)return void eR("Pair or reconnect a laptop before adding a workspace.");eq(!0),eR(null);try{let e=await fetch((0,U.S)("/api/workspaces",f),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}),a=await e.json().catch(()=>null);if(!e.ok)throw Error(a?.error??`Failed to add workspace: ${e.status}`);let n=a?.project?.id;if(!n)throw Error("Workspace created but response is missing project id");await H(),eS(""),em(),eT(!1),tt({projectId:n,sessionId:null,workspaceView:"chat",tab:null,bridgeId:f??null},"push")}catch(e){eR(e instanceof Error?e.message:"Failed to add workspace")}finally{eq(!1)}},[f,tt,H,e,em]),tv=!e_&&!!eH&&(!e||!!f)&&!eH.onboardingAcknowledged,tw=eH??ex(null,eI||en),tj=eI||tw.codingAgent||en,tk=i??e6?.projectId??null;(0,L.Q)({enabled:!e_,projectId:tk,preferences:tw.notifications,bridgeId:f});let ty=(0,r.useCallback)(e=>{tt({projectId:e,sessionId:null,workspaceView:e?d:null,tab:null},"push"),eM(eH?.codingAgent||en),eu()},[eu,tt,eH?.codingAgent,d]),tC=(0,r.useCallback)((e,t)=>{let a=e3.get(e)??null;tt({projectId:a?.projectId??i??null,sessionId:e,tab:t?.tab??"terminal"},"push"),eu()},[eu,tt,i,e3]),tA=(0,r.useCallback)(()=>{e&&!f?t.push("/bridge/connect"):eJ(!0)},[f,e,t]),tN=(0,r.useCallback)(()=>{eG||eT(!1)},[eG]),tS=(0,r.useCallback)(()=>{eV||tv||(eJ(!1),eK(null))},[tv,eV]),tI=(0,r.useCallback)(async e=>{let t=encodeURIComponent(e),a=await fetch((0,U.S)(`/api/repositories/${t}`,f),{method:"DELETE"});(404===a.status||405===a.status)&&(a=await fetch((0,U.S)(`/api/repositories?id=${t}`,f),{method:"DELETE"}));let n=await a.json().catch(()=>null);if(!a.ok)throw Error(n?.error??`Failed to unlink project (${a.status})`);await H()},[f,H]),tM=(0,r.useMemo)(()=>eh?(0,n.jsx)(er,{projects:$,selectedProjectId:i,onSelectProject:ty,onUnlinkProject:tI,sessions:ef,selectedSessionId:o,onSelectSession:tC,onArchiveSession:tf,onCreateWorkspace:tx}):null,[ef,tf,ty,tC,tI,tx,$,i,o,eh]),tP=(0,r.useMemo)(()=>"board"===d?(0,n.jsx)(eo,{projectId:i,bridgeId:f,defaultAgent:tj,agentOptions:tc,projectSessions:tl}):(0,n.jsx)(eA,{prompt:eN,setPrompt:eS,selectedAgent:tj,setSelectedAgent:eM,agentStates:tp,modelSelection:eP,setModelSelection:eE,modelAccess:tw.modelAccess,runtimeModelCatalogs:tu,agentOptions:tc,projects:$,bridges:v,selectedBridgeId:u,setSelectedBridgeId:m,requiresPairedDeviceScope:e,selectedProjectId:i,onSelectProject:ty,projectLabel:i??"All projects",hasProject:$.length>0,creating:eO,error:e8,onOpenAddWorkspace:tx,onOpenAgentSetup:tm,onCreate:tg}),[tc,tp,v,eO,tg,eP,tm,tx,$,tl,eN,tj,tw.modelAccess,e,tu,u,i,eS,e8,d]),tE=(0,r.useMemo)(()=>tn?(0,n.jsxs)("div",{className:"flex min-h-0 flex-1 flex-col overflow-hidden",children:[(0,n.jsx)("div",{className:"border-b border-[var(--vk-border)] bg-[var(--vk-bg-panel)]/70 px-3 py-3 sm:px-4",children:(0,n.jsxs)("div",{className:"flex flex-col gap-3 sm:flex-row sm:items-center sm:justify-between",children:[(0,n.jsxs)("div",{className:"min-w-0",children:[(0,n.jsx)("p",{className:"text-[11px] uppercase tracking-[0.12em] text-[var(--vk-text-muted)]",children:"Project Workspace"}),(0,n.jsxs)("p",{className:"mt-1 truncate text-[14px] text-[var(--vk-text-strong)]",children:[tn.id," \xb7 ",tn.defaultBranch||"main"]})]}),(0,n.jsxs)("div",{className:"inline-flex w-fit rounded-[6px] border border-[var(--vk-border)] p-1",children:[(0,n.jsx)("button",{type:"button",onClick:()=>tt({projectId:tn.id,workspaceView:"chat"},"replace"),className:`min-h-[32px] rounded-[4px] px-3 text-[13px] ${"chat"===d?"bg-[var(--vk-bg-active)] text-[var(--vk-text-strong)]":"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]"}`,children:"CLI launchpad"}),(0,n.jsx)("button",{type:"button",onClick:()=>tt({projectId:tn.id,workspaceView:"board"},"replace"),className:`min-h-[32px] rounded-[4px] px-3 text-[13px] ${"board"===d?"bg-[var(--vk-bg-active)] text-[var(--vk-text-strong)]":"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]"}`,children:"Board view"})]})]})}),(0,n.jsx)("div",{className:"min-h-0 flex-1 overflow-hidden",children:tP})]}):tP,[tt,tn,tP,d]),tO=(0,r.useMemo)(()=>N?(0,n.jsx)("div",{className:"flex h-full min-h-0 flex-1 items-center justify-center bg-[var(--vk-bg-main)] px-4",children:(0,n.jsxs)("div",{className:"w-full max-w-md rounded-[12px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-5 py-5 text-center shadow-[0_18px_50px_rgba(0,0,0,0.18)]",children:[(0,n.jsx)("div",{className:"mx-auto flex h-11 w-11 items-center justify-center rounded-full border border-[rgba(255,180,92,0.28)] bg-[rgba(255,180,92,0.10)] text-[var(--vk-orange)]",children:(0,n.jsx)(b.A,{className:"h-5 w-5 animate-spin"})}),(0,n.jsx)("h2",{className:"mt-4 text-[18px] font-medium text-[var(--vk-text-strong)]",children:"Reconnecting paired laptop"}),(0,n.jsx)("p",{className:"mt-2 text-[14px] leading-6 text-[var(--vk-text-muted)]",children:"Waiting for the selected laptop to report online before loading its projects and sessions."})]})}):o?(0,n.jsx)("div",{className:"relative min-h-0 h-full min-w-0 flex-1 overflow-hidden",children:e0.map(e=>{let t=e===o,a=t?ta:e3.get(e)??null;return(0,n.jsx)("div",{"aria-hidden":!t,className:t?"relative h-full min-w-0":"pointer-events-none absolute inset-0 overflow-hidden invisible",children:(0,n.jsx)(es,{sessionId:e,initialSession:a,bridgeId:f,active:t,immersiveMobileMode:t&&e5,onOpenSidebar:ea})},e)})}):null!==i?(0,n.jsx)("div",{className:"min-h-0 flex-1 overflow-hidden",children:tE}):(0,n.jsx)("div",{className:"flex h-full min-h-0 w-full flex-1 overflow-hidden",children:(0,n.jsx)(ei,{projects:$,sessions:ef,onCreateWorkspace:tx,onSelectSession:tC})}),[ef,e0,tE,ta,o,tC,tx,$,i,e3,N,ea]);return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)(W.G,{mobileSidebarOpen:Q,desktopSidebarOpen:J,onToggleSidebar:ea,hideMobileSidebarToggle:e5,sidebar:tM,children:[e5?null:(0,n.jsx)(V.V,{title:ts,onOpenPreferences:tA,rightContent:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("span",{className:`inline-flex items-center rounded-full border px-2.5 py-1 text-[12px] font-medium ${td}`,title:to,children:ti}),(0,n.jsx)(Z.J,{})]})}),(0,n.jsx)("div",{className:`flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden ${e5?"bg-[#060404]":""}`,children:tO})]}),e$?(0,n.jsx)(ed,{open:e$,onClose:tN,onCreate:tb,creating:eG,error:eF,defaultAgent:tj,agentOptions:tc,modelAccess:tw.modelAccess,runtimeModelCatalogs:tu,bridgeId:f}):null,eQ||tv?(0,n.jsx)(ec,{open:eQ,mode:tv?"onboarding":"settings",creating:eV,error:ez,current:tw,projectCount:$.length,agentOptions:tc,agentStates:tp,runtimeModelCatalogs:tu,onRepositoriesChanged:H,onOnboardingComplete:({needsProject:e})=>{e&&eY(!0)},onOpenAgentSetup:tm,onClose:tS,onSave:th,bridgeId:f}):null]})}p.A,u.A,m.A,h.A,x.A,g.A,f.A,f.A,u.A,[{id:"vscode",label:"VS Code"},{id:"vscode-insiders",label:"VS Code Insiders"},{id:"cursor",label:"Cursor"},{id:"windsurf",label:"Windsurf"},{id:"intellij-idea",label:"IntelliJ IDEA"},{id:"zed",label:"Zed"},{id:"xcode",label:"Xcode"},{id:"antigravity",label:"Antigravity"},{id:"custom",label:"Custom"}].filter(e=>"custom"!==e.id),p.A,d.mWn,c.$$9,d.i4$,p.A;let eA=(0,r.memo)(function({prompt:e,setPrompt:t,selectedAgent:a,setSelectedAgent:l,agentStates:s,modelSelection:o,setModelSelection:d,modelAccess:c,runtimeModelCatalogs:p,agentOptions:u,projects:m,bridges:h,selectedBridgeId:x,setSelectedBridgeId:P,requiresPairedDeviceScope:E,selectedProjectId:O,onSelectProject:L,projectLabel:B,hasProject:$,creating:T,error:G,onOpenAddWorkspace:q,onOpenAgentSetup:F,onCreate:R}){let H=(0,r.useMemo)(()=>{let e=new Map(M.BO.map((e,t)=>[e,t]));return[...u].sort((t,a)=>{let n=e.get((0,I.q)(t))??Number.MAX_SAFE_INTEGER,l=e.get((0,I.q)(a))??Number.MAX_SAFE_INTEGER;return n!==l?n-l:ep(t).localeCompare(ep(a))})},[u]),D=ep(a),_=s[(0,I.q)(a)]??null,W=(0,r.useMemo)(()=>[...m].sort((e,t)=>e.id.localeCompare(t.id)),[m]),V=O??W[0]?.id??null,Z=(0,r.useMemo)(()=>W.find(e=>e.id===V)??null,[V,W]),z=(0,r.useMemo)(()=>h.filter(e=>e.connected),[h]),Q=(0,r.useMemo)(()=>!x||z.some(e=>e.bridgeId===x),[z,x]),[X,Y]=(0,r.useState)([]),[ee,et]=(0,r.useState)(!1),[ea,en]=(0,r.useState)(""),[el,es]=(0,r.useState)(""),[er,ei]=(0,r.useState)([]),[eo,ed]=(0,r.useState)(!1),[ec,eh]=(0,r.useState)(!1),[ex,eg]=(0,r.useState)(!1),[ef,eC]=(0,r.useState)(!1),[eA,eN]=(0,r.useState)("default"),[eS,eI]=(0,r.useState)([]),[eM,eP]=(0,r.useState)(!1),[eE,eO]=(0,r.useState)(null);(0,r.useEffect)(()=>{if(!Z){Y([]),en(""),et(!1);return}Y([]),en(Z.defaultBranch.trim()||"main"),et(!1)},[Z]),(0,r.useEffect)(()=>{if(!V){ei([]),es(""),ed(!1);return}ei([]),es(""),ed(!1)},[V]);let eL=(0,r.useCallback)(async()=>{if(!Z)return;let e=Z.defaultBranch.trim()||"main";if(!Z.path?.trim()){Y([e]),en(t=>t.trim().length>0?t:e);return}et(!0);try{let t=new URLSearchParams({path:Z.path}),a=await fetch((0,U.S)(`/api/workspaces/branches?${t.toString()}`,x)),n=await a.json().catch(()=>null),l=Array.isArray(n?.branches)?n.branches.filter(e=>"string"==typeof e&&e.trim().length>0):[],s="string"==typeof n?.defaultBranch&&n.defaultBranch.trim().length>0?n.defaultBranch.trim():e,r=l.length>0?l:[s];Y(r),en(e=>e.trim().length>0&&r.includes(e)?e:s)}catch{Y([e]),en(e)}finally{et(!1)}},[x,Z]),eU=(0,r.useCallback)(async()=>{if(V){ed(!0);try{let e=await fetch((0,U.S)(`/api/boards?projectId=${encodeURIComponent(V)}`,x)),t=await e.json().catch(()=>null);if(!e.ok)throw Error(t?.error??`Failed to load tasks: ${e.status}`);let a=(Array.isArray(t?.columns)?t.columns:[]).flatMap(e=>Array.isArray(e.tasks)?e.tasks:[]),n=new Set,l=a.filter(e=>{let t=eu(e);return!(!t||n.has(t))&&(n.add(t),!0)});ei(l),es(e=>l.some(t=>eu(t)===e)?e:"")}catch{ei([]),es("")}finally{ed(!1)}}},[V,x]);(0,r.useEffect)(()=>{!ex||ee||X.length>0||eL()},[ee,ex,X.length,eL]),(0,r.useEffect)(()=>{!ec||eo||er.length>0||eU()},[er.length,eU,eo,ec]);let eB=(0,r.useMemo)(()=>eb(a,c,p),[c,p,a]),e$=(0,r.useMemo)(()=>er.find(e=>eu(e)===el)??null,[er,el]),eT=ek(o)??"",eG=(0,r.useMemo)(()=>{let e=new Set,t=[],n=eT.trim();for(let a of eB)e.has(a.id)||(e.add(a.id),t.push(a));return n&&!e.has(n)&&(e.add(n),t.unshift({id:n,label:function(e,t){let a=t.trim(),n=(0,I.q)(e);if(!a)return a;if("claude-code"===n){let e=a.toLowerCase();if("opus"===e)return"Claude Opus";if("sonnet"===e)return"Claude Sonnet";if("haiku"===e)return"Claude Haiku";let t=e.match(/^claude-(sonnet|opus|haiku)-(\d+)-(\d+)(?:-\d{8})?$/);if(t){let e=t[1];return`Claude ${e[0]?.toUpperCase()+e.slice(1)} ${t[2]}.${t[3]}`}}return a.split(/[-_]+/g).filter(Boolean).map(e=>"gpt"===e.toLowerCase()?"GPT":/^\d+(?:\.\d+)?$/.test(e)?e:e[0]?.toUpperCase()+e.slice(1)).join("-")}(a,n),description:"Current selected model.",access:[]})),t},[eB,a,eT]),eq=(0,r.useMemo)(()=>!_||_.ready||eT?eT?eG.find(e=>e.id===eT)?.label??eT:"Default":"Setup required",[eG,_,eT]),eF=(0,r.useMemo)(()=>ev(a,c,p,eT),[c,p,a,eT]),eR=ey(o)??"",eH=(0,r.useMemo)(()=>{let e=eF.find(e=>e.id===eR);return e?e.label:eR||(eF[0]?.label??"Default")},[eF,eR]),eD="z-50 min-w-[240px] max-w-[calc(100vw-32px)] rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] p-2 shadow-[0_18px_50px_rgba(0,0,0,0.35)] sm:max-w-none",e_=`${eD} max-h-[min(360px,50vh)] overflow-y-auto`,eW="flex min-h-[44px] cursor-default items-center gap-2 rounded-[3px] px-3 py-2 text-[14px] leading-[21px] text-[var(--vk-text-normal)] outline-none hover:bg-[var(--vk-bg-hover)] focus:bg-[var(--vk-bg-hover)] sm:min-h-[36px]",eV=[{id:"default",label:"Default",icon:f.A},{id:"auto",label:"Auto",icon:v.A},{id:"ask",label:"Ask",icon:w.A},{id:"plan",label:"Plan",icon:j.A}],eZ=eV.find(e=>e.id===eA)??eV[0],ez="launchpad-attachment-input",eK=T||eM,eQ=e=>{let t=e.repo?.trim();if(t){let e=t.split("/").filter(Boolean),a=e[e.length-1]?.replace(/\.git$/i,"");if(a)return a}return e.id},eJ=Z?eQ(Z):null,eX=Z?`${eJ} \xb7 ${ea||Z.defaultBranch||"main"}`:$?B:"Select project",eY=e$?.taskRef?.trim()||e$?.issueId?.trim()||e$?.id||"Link task",e0=e$?em(e$.text):"Choose a task, bug, or issue from this project's board",e1=Z?.id??V??null,e4=(0,r.useCallback)(e=>{let t=Array.from(e.currentTarget.files??[]);if(e.currentTarget.value="",!t.length)return;let a=new Set(eS.map(e=>`${e.name}:${e.size}:${e.lastModified}`)),n=t.filter(e=>!a.has(`${e.name}:${e.size}:${e.lastModified}`));n.length>0&&eI(e=>[...e,...n]),eO(null)},[eS]),e2=(0,r.useCallback)(e=>{eI(t=>t.filter((t,a)=>a!==e))},[]),e5=(0,r.useCallback)(async()=>{let e;if(eO(null),!e1||!Z)return R({projectId:e1??void 0,...ef?{baseBranch:ea||Z?.defaultBranch||void 0}:{branch:ea||Z?.defaultBranch||void 0},issueId:el.trim()||void 0,bridgeId:x||void 0,useWorktree:ef,permissionMode:eA});eP(!0),eO(null);try{eS.length>0&&(e=await J({files:eS,projectId:Z.id,taskRef:el.trim()||void 0,bridgeId:x||void 0}))}catch(e){return eO(e instanceof Error?e.message:"Failed to upload attachment"),!1}finally{eP(!1)}let t=await R({projectId:e1??void 0,...ef?{baseBranch:ea||Z.defaultBranch||void 0}:{branch:ea||Z.defaultBranch||void 0},issueId:el.trim()||void 0,bridgeId:x||void 0,useWorktree:ef,permissionMode:eA,...e&&e.length>0?{attachments:e}:{}});return t&&(eI([]),eO(null)),t},[el,e1,R,eA,ea,Z,Z?.defaultBranch,x,eS,ef]);return(0,r.useEffect)(()=>{eI([]),eO(null)},[e1]),(0,n.jsx)("section",{className:"flex h-full min-h-0 items-start justify-center overflow-auto bg-[var(--vk-bg-main)] px-3 py-4 sm:items-center sm:px-6 sm:py-6",children:(0,n.jsxs)("div",{className:"w-full max-w-[768px]",children:[(0,n.jsx)("h1",{className:"pb-4 text-center text-[30px] font-medium leading-[34px] tracking-[-0.7px] text-[var(--vk-text-strong)] sm:text-[36px] sm:leading-[40px] sm:tracking-[-0.9px]",children:"What would you like to work on?"}),x?null:(0,n.jsxs)("div",{className:"mb-4 flex items-start gap-2 rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-3 py-2 text-[12px] leading-[18px] text-[var(--vk-text-muted)]",children:[(0,n.jsx)(g.A,{className:"mt-0.5 h-[14px] w-[14px] shrink-0"}),(0,n.jsx)("span",{children:E?"Pair or reconnect a laptop to browse workspaces and launch coding agents from the web dashboard.":"Showing projects and sessions from the local backend. Pair a laptop and select it here to browse that device instead."})]}),(0,n.jsxs)("div",{className:"mx-auto w-full rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] p-px",children:[(0,n.jsxs)("div",{className:"flex flex-wrap items-center gap-2 border-b border-[var(--vk-border)] px-2 pb-[9px] pt-2",children:[(0,n.jsx)(K.N,{seed:{label:a},className:"h-[25px] w-[25px] border-none bg-transparent"}),(0,n.jsxs)(i.bL,{children:[(0,n.jsx)(i.l9,{asChild:!0,children:(0,n.jsxs)("button",{type:"button",className:"inline-flex h-[31px] max-w-[70vw] items-center rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-[9px] py-[5px] text-[14px] leading-[21px] text-[var(--vk-text-normal)] outline-none hover:bg-[var(--vk-bg-hover)] data-[state=open]:bg-[var(--vk-bg-hover)] sm:max-w-none","aria-label":"Select agent",children:[(0,n.jsx)("span",{className:"truncate pr-1",children:D}),(0,n.jsx)(k.A,{className:"h-3 w-3 text-[var(--vk-text-muted)]"})]})}),(0,n.jsx)(i.ZL,{children:(0,n.jsxs)(i.UC,{align:"start",sideOffset:6,className:e_,children:[(0,n.jsx)("p",{className:"px-3 pb-1 text-[14px] font-semibold leading-[21px] text-[var(--vk-text-muted)]",children:"Agents"}),H.map(e=>{let t=e===a,r=s[(0,I.q)(e)]??null;return(0,n.jsxs)(i.q7,{onSelect:()=>l(e),className:eW,children:[(0,n.jsx)(K.N,{seed:{label:e},className:"h-6 w-6 border-none bg-transparent"}),(0,n.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,n.jsx)("div",{children:ep(e)}),r?.ready?null:(0,n.jsx)("div",{className:"truncate text-[12px] leading-[16px] text-[var(--vk-text-muted)]",children:r?.installed?"Setup required":"Not installed"})]}),(0,n.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:t?(0,n.jsx)(y.A,{className:"h-4 w-4"}):null})]},e)})]})})]}),(0,n.jsxs)(i.bL,{onOpenChange:eh,children:[(0,n.jsx)(i.l9,{asChild:!0,children:(0,n.jsxs)("button",{type:"button",disabled:!V,className:"ml-auto flex h-[31px] min-w-[220px] items-center rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-[9px] py-[5px] text-left disabled:cursor-not-allowed disabled:opacity-50 sm:ml-0 sm:w-[286px]","aria-label":"Link task",children:[(0,n.jsx)("span",{className:"pr-2 text-[12px] uppercase tracking-[0.08em] text-[var(--vk-text-muted)]",children:"Task"}),(0,n.jsx)("span",{className:"min-w-0 flex-1 truncate text-[14px] leading-[21px] text-[var(--vk-text-normal)]",children:eY}),(0,n.jsx)(k.A,{className:"h-3 w-3 text-[var(--vk-text-muted)]"})]})}),(0,n.jsx)(i.ZL,{children:(0,n.jsxs)(i.UC,{align:"end",side:"bottom",sideOffset:6,className:e_,children:[(0,n.jsx)("p",{className:"px-3 pb-1 text-[14px] font-semibold leading-[21px] text-[var(--vk-text-muted)]",children:"Link task"}),(0,n.jsx)("p",{className:"px-3 pb-2 text-[12px] leading-[16px] text-[var(--text-faint)]",children:e0}),(0,n.jsxs)(i.q7,{onSelect:()=>es(""),className:eW,children:[(0,n.jsx)("span",{children:"No linked task"}),(0,n.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:el?null:(0,n.jsx)(y.A,{className:"h-4 w-4"})})]}),eo?(0,n.jsx)("div",{className:"px-3 py-2 text-[12px] leading-[18px] text-[var(--vk-text-muted)]",children:"Loading board tasks..."}):er.length>0?er.map(e=>{let t=eu(e),a=em(e.text),l=[e.type,e.priority].filter(Boolean).join(" \xb7 ");return(0,n.jsxs)(i.q7,{onSelect:()=>es(t),className:`${eW} min-w-[320px] items-start`,children:[(0,n.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,n.jsx)("div",{className:"truncate",children:e.taskRef?.trim()||a}),(0,n.jsxs)("div",{className:"truncate text-[12px] leading-[16px] text-[var(--text-faint)]",children:[e.taskRef?.trim()?a:t,l?` \xb7 ${l}`:""]})]}),(0,n.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:el===t?(0,n.jsx)(y.A,{className:"h-4 w-4"}):null})]},t)}):(0,n.jsx)("div",{className:"px-3 py-2 text-[12px] leading-[18px] text-[var(--vk-text-muted)]",children:"No existing tasks were found for this project."})]})})]})]}),(0,n.jsx)("div",{className:"rounded-[3.5px]",children:(0,n.jsxs)("div",{className:"flex flex-col gap-3 p-2",children:[(0,n.jsxs)("div",{className:"relative w-full",children:[(0,n.jsx)("textarea",{value:e,onChange:e=>t(e.target.value),placeholder:"Optional launch prompt. Leave empty to open the native CLI.",rows:1,className:"min-h-[24px] w-full resize-none bg-transparent pr-16 text-[16px] leading-[24px] text-[var(--vk-text-normal)] outline-none placeholder:text-[var(--vk-text-muted)]"}),(0,n.jsxs)("label",{htmlFor:ez,className:`absolute right-[18px] top-0 inline-flex h-[24px] w-[24px] items-center justify-center rounded-[4px] ${e1?"text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]":"cursor-not-allowed opacity-50"}`,children:[(0,n.jsx)("input",{id:ez,type:"file",accept:"*/*",multiple:!0,onChange:e4,disabled:!e1||eK,className:"hidden"}),(0,n.jsx)(C.A,{className:"h-[14px] w-[14px]"})]}),(0,n.jsx)("button",{type:"button","aria-label":"Preview",className:"absolute right-0 top-0 inline-flex h-[24px] w-[24px] items-center justify-center rounded-[4px] text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]",children:(0,n.jsx)(A.A,{className:"h-[14px] w-[14px]"})})]}),eS.length>0?(0,n.jsx)("div",{className:"flex flex-wrap gap-1.5",children:eS.map((e,t)=>(0,n.jsxs)("span",{className:"inline-flex max-w-full items-center gap-1 rounded-[999px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-2 py-1 text-[11px] text-[var(--vk-text-muted)]",children:[(0,n.jsx)("span",{className:"max-w-[160px] truncate",title:e.name,children:e.name}),(0,n.jsx)("button",{type:"button","aria-label":`Remove attachment ${e.name}`,onClick:()=>e2(t),className:"inline-flex h-[14px] w-[14px] items-center justify-center rounded-full text-[var(--vk-text-muted)] hover:bg-[var(--vk-bg-hover)]",children:(0,n.jsx)(N.A,{className:"h-3 w-3"})})]},`${e.name}-${e.size}-${e.lastModified}-${t}`))}):null,(0,n.jsxs)("div",{className:"flex flex-col gap-3 sm:flex-row sm:items-end sm:justify-between",children:[(0,n.jsxs)("div",{className:"flex min-w-0 flex-1 flex-wrap items-center gap-x-1 gap-y-2",children:[(0,n.jsxs)(i.bL,{children:[(0,n.jsx)(i.l9,{asChild:!0,children:(0,n.jsx)("button",{type:"button",className:"inline-flex h-[29px] w-[29px] items-center justify-center rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]","aria-label":"Select workspace or project",children:(0,n.jsx)(f.A,{className:"h-[15px] w-[15px]"})})}),(0,n.jsx)(i.ZL,{children:(0,n.jsxs)(i.UC,{align:"start",sideOffset:6,className:e_,children:[(0,n.jsx)("p",{className:"px-3 pb-1 text-[14px] font-semibold leading-[21px] text-[var(--vk-text-muted)]",children:"Projects"}),W.map(e=>{let t=eQ(e),a=e.id!==t?e.id:e.path?.trim()||e.repo?.trim()||null;return(0,n.jsxs)(i.q7,{onSelect:()=>L(e.id),className:`${eW} min-w-[280px] items-start`,children:[(0,n.jsxs)("div",{className:"min-w-0 flex-1",children:[(0,n.jsx)("div",{className:"truncate",children:t}),a?(0,n.jsx)("div",{className:"truncate text-[12px] leading-[16px] text-[var(--text-faint)]",children:a}):null]}),(0,n.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:e.id===V?(0,n.jsx)(y.A,{className:"h-4 w-4"}):null})]},e.id)}),(0,n.jsx)(i.wv,{className:"my-1 h-px bg-[var(--vk-border)]"}),(0,n.jsxs)(i.q7,{onSelect:q,className:eW,children:[(0,n.jsx)(S.A,{className:"h-4 w-4"}),(0,n.jsx)("span",{children:"Add Workspace"})]})]})})]}),eF.length>0?(0,n.jsxs)(i.bL,{children:[(0,n.jsx)(i.l9,{asChild:!0,children:(0,n.jsxs)("button",{type:"button","aria-label":"Select reasoning effort",className:"inline-flex h-[29px] items-center gap-[4px] rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-[9px] py-[5px] text-[14px] leading-[21px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:cursor-not-allowed disabled:opacity-60",children:[(0,n.jsx)("span",{children:eH}),(0,n.jsx)(k.A,{className:"h-[10px] w-[10px] text-[var(--vk-text-muted)]"})]})}),(0,n.jsx)(i.ZL,{children:(0,n.jsxs)(i.UC,{align:"start",sideOffset:6,className:eD,children:[(0,n.jsx)("p",{className:"px-3 pb-1 text-[14px] font-semibold leading-[21px] text-[var(--vk-text-muted)]",children:"Reasoning"}),eF.map(e=>(0,n.jsxs)(i.q7,{onSelect:()=>d({...o,reasoningEffort:e.id}),className:eW,children:[(0,n.jsx)("span",{children:e.label}),(0,n.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:eR===e.id?(0,n.jsx)(y.A,{className:"h-4 w-4"}):null})]},e.id))]})})]}):null,(0,n.jsxs)(i.bL,{children:[(0,n.jsx)(i.l9,{asChild:!0,children:(0,n.jsxs)("button",{type:"button",className:"inline-flex h-[29px] items-center gap-[4px] rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-[9px] py-[5px] text-[14px] leading-[21px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)] disabled:cursor-not-allowed disabled:opacity-60",children:[(0,n.jsx)("span",{children:eq}),(0,n.jsx)(k.A,{className:"h-[10px] w-[10px] text-[var(--vk-text-muted)]"})]})}),(0,n.jsx)(i.ZL,{children:(0,n.jsxs)(i.UC,{align:"start",sideOffset:6,className:eD,children:[(0,n.jsx)("p",{className:"px-3 pb-1 text-[14px] font-semibold leading-[21px] text-[var(--vk-text-muted)]",children:"Model"}),(0,n.jsxs)(i.q7,{onSelect:()=>d(ej(a,c,p,Z?.agentModel,Z?.agentReasoningEffort)),className:eW,children:[(0,n.jsx)("span",{children:"Default"}),(0,n.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:eT?null:(0,n.jsx)(y.A,{className:"h-4 w-4"})})]}),eG.map(e=>(0,n.jsxs)(i.q7,{onSelect:()=>{var t;let n;return n=ev(a,c,p,t=e.id),void d({catalogModel:t,customModel:"",reasoningEffort:n.some(e=>e.id===o.reasoningEffort)?o.reasoningEffort:ew(a,c,p,t)})},className:eW,children:[(0,n.jsx)("span",{children:e.label}),(0,n.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:eT===e.id?(0,n.jsx)(y.A,{className:"h-4 w-4"}):null})]},e.id)),0===eG.length?(0,n.jsx)("div",{className:"px-3 py-2 text-[12px] leading-[18px] text-[var(--vk-text-muted)]",children:"Models will appear here after the selected agent is installed and its runtime catalog is detected."}):null,_&&!_.ready?(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)(i.wv,{className:"my-1 h-px bg-[var(--vk-border)]"}),(0,n.jsx)("button",{type:"button",onClick:()=>F(a),className:"flex w-full items-center rounded-[3px] px-3 py-2 text-left text-[13px] text-[var(--vk-orange)] transition hover:bg-[var(--vk-bg-hover)]",children:_.installed?"Open setup":"Open install guide"})]}):null]})})]}),(0,n.jsxs)(i.bL,{children:[(0,n.jsx)(i.l9,{asChild:!0,children:(0,n.jsxs)("button",{type:"button",className:"inline-flex h-[29px] items-center gap-[4px] rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-[9px] py-[5px] text-[14px] leading-[21px] text-[var(--vk-text-normal)] hover:bg-[var(--vk-bg-hover)]",children:[(0,n.jsx)("span",{children:eZ.label}),(0,n.jsx)(k.A,{className:"h-[10px] w-[10px] text-[var(--vk-text-muted)]"})]})}),(0,n.jsx)(i.ZL,{children:(0,n.jsxs)(i.UC,{align:"start",sideOffset:6,className:eD,children:[(0,n.jsx)("p",{className:"px-3 pb-1 text-[14px] font-semibold leading-[21px] text-[var(--vk-text-muted)]",children:"Permissions"}),eV.map(({id:e,label:t,icon:a})=>(0,n.jsxs)(i.q7,{onSelect:()=>eN(e),className:eW,children:[(0,n.jsx)(a,{className:"h-4 w-4"}),(0,n.jsx)("span",{children:t}),(0,n.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:eA===e?(0,n.jsx)(y.A,{className:"h-4 w-4"}):null})]},e))]})})]}),z.length>0?(0,n.jsxs)("label",{className:"inline-flex h-[29px] max-w-[260px] items-center gap-[6px] rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-[9px] py-[5px] text-[14px] leading-[21px] text-[var(--vk-text-normal)]",children:[(0,n.jsx)(g.A,{className:"h-[14px] w-[14px] text-[var(--vk-text-muted)]"}),(0,n.jsxs)("select",{value:x,onChange:e=>P(e.target.value),className:"min-w-0 flex-1 bg-transparent text-[14px] text-[var(--vk-text-normal)] outline-none",children:[E?null:(0,n.jsx)("option",{value:"",children:"Local backend"}),z.map(e=>(0,n.jsxs)("option",{value:e.bridgeId,children:[e.hostname," \xb7 ",e.os]},e.bridgeId))]})]}):(0,n.jsxs)("div",{className:"inline-flex h-[29px] items-center gap-[6px] rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] px-[9px] py-[5px] text-[14px] leading-[21px] text-[var(--vk-text-muted)]",children:[(0,n.jsx)(g.A,{className:"h-[14px] w-[14px]"}),(0,n.jsx)("span",{children:x&&!Q?"Waiting for selected device":E?"No device connected":"Local backend"})]}),(0,n.jsxs)(i.bL,{onOpenChange:eg,children:[(0,n.jsx)(i.l9,{asChild:!0,children:(0,n.jsx)("button",{type:"button",disabled:!Z,className:"inline-flex min-h-[29px] max-w-[320px] items-center justify-center truncate text-[14px] leading-[21px] text-[var(--vk-text-normal)] hover:text-[var(--vk-text-strong)] disabled:cursor-not-allowed disabled:opacity-50",children:eX})}),(0,n.jsx)(i.ZL,{children:(0,n.jsxs)(i.UC,{align:"start",side:"bottom",sideOffset:6,avoidCollisions:!1,className:e_,children:[(0,n.jsx)("p",{className:"px-3 pb-1 text-[14px] font-semibold leading-[21px] text-[var(--vk-text-muted)]",children:"Branch"}),eJ?(0,n.jsx)("p",{className:"px-3 pb-2 text-[12px] leading-[16px] text-[var(--text-faint)]",children:eJ}):null,ee?(0,n.jsx)("div",{className:"px-3 py-2 text-[14px] leading-[21px] text-[var(--vk-text-muted)]",children:"Loading branches..."}):X.map(e=>(0,n.jsxs)(i.q7,{onSelect:()=>en(e),className:eW,children:[(0,n.jsx)("span",{children:e}),(0,n.jsx)("span",{className:"ml-auto inline-flex h-4 w-4 items-center justify-center text-[var(--vk-text-strong)]",children:ea===e?(0,n.jsx)(y.A,{className:"h-4 w-4"}):null})]},e))]})})]})]}),(0,n.jsx)("div",{className:"flex w-full justify-end sm:w-auto",children:(0,n.jsx)("button",{type:"button",onClick:e5,disabled:eK||!V,className:"inline-flex min-h-[29px] items-center justify-center rounded-[3px] bg-[var(--vk-bg-hover)] px-[8px] py-[6.5px] text-[16px] leading-[16px] text-[var(--vk-text-strong)] transition-colors hover:bg-[var(--vk-bg-active)] disabled:cursor-not-allowed disabled:opacity-50",children:eK?(0,n.jsx)(b.A,{className:"h-4 w-4 animate-spin"}):"Launch"})})]}),_&&!_.ready?(0,n.jsx)("div",{className:"rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-3 py-2 text-[13px] text-[var(--vk-text-normal)]",children:(0,n.jsxs)("div",{className:"flex flex-col gap-2 sm:flex-row sm:items-center sm:justify-between",children:[(0,n.jsxs)("div",{className:"min-w-0",children:[(0,n.jsxs)("p",{className:"text-[13px] text-[var(--vk-text-strong)]",children:[D," is not ready on this machine."]}),(0,n.jsx)("p",{className:"pt-0.5 text-[12px] text-[var(--vk-text-muted)]",children:_.installed?"Finish login or local setup to load models and start streaming sessions.":"Install the CLI first, then its models and authentication state will appear here."})]}),(0,n.jsx)("button",{type:"button",onClick:()=>F(a),className:"inline-flex h-[29px] items-center justify-center rounded-[3px] border border-[var(--vk-border)] px-3 text-[12px] text-[var(--vk-orange)] hover:bg-[var(--vk-bg-hover)]",children:_.installed?"Open setup":"Open install"})]})}):null,(0,n.jsxs)("label",{className:"flex items-start gap-2 rounded-[4px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-2 py-2 text-[13px] text-[var(--vk-text-normal)]",children:[(0,n.jsx)("input",{type:"checkbox",checked:ef,onChange:e=>eC(e.target.checked),className:"mt-0.5 h-4 w-4 rounded border border-[var(--vk-border)] bg-transparent accent-[var(--vk-orange)]"}),(0,n.jsxs)("span",{children:["Use worktree isolation",(0,n.jsx)("span",{className:"block text-[11px] text-[var(--vk-text-muted)]",children:"If unchecked, the session runs directly on the selected branch in the local repo."})]})]})]})})]}),G&&(0,n.jsx)("p",{className:"pt-2 text-[12px] text-[var(--status-error)]",children:G}),eE&&(0,n.jsx)("p",{className:"pt-2 text-[12px] text-[var(--status-error)]",children:eE})]})})})},12529:(e,t,a)=>{Promise.resolve().then(a.bind(a,6542))},33866:(e,t,a)=>{"use strict";a.d(t,{BO:()=>s,h7:()=>i,pN:()=>l});var n=a(5739);let l=[{name:"codex",label:"Codex",description:"OpenAI Codex CLI",homepage:"https://github.com/openai/codex",iconUrl:"https://cdn.jsdelivr.net/npm/simple-icons@latest/icons/openai.svg",installHint:"npm install -g @openai/codex",installUrl:"https://github.com/openai/codex",setupUrl:"https://chatgpt.com/codex"},{name:"gemini",label:"Gemini",description:"Google Gemini CLI",homepage:"https://ai.google.dev/gemini-api/docs",iconUrl:"https://cdn.jsdelivr.net/npm/simple-icons@latest/icons/googlegemini.svg",installHint:"npm install -g @google/gemini-cli",installUrl:"https://ai.google.dev/gemini-api/docs",setupUrl:"https://aistudio.google.com/"},{name:"qwen-code",label:"Qwen Code",description:"Qwen Code CLI",homepage:"https://qwenlm.github.io/announcements/",iconUrl:null,installHint:"npm install -g @qwen-code/qwen-code@latest",installUrl:"https://qwenlm.github.io/announcements/",setupUrl:"https://chat.qwen.ai/"},{name:"droid",label:"Droid",description:"Factory Droid CLI",homepage:"https://github.com/Factory-AI/factory",iconUrl:"https://raw.githubusercontent.com/Factory-AI/factory/main/docs/images/droid_logo_cli.png",installHint:"npm install -g @factory/cli",installUrl:"https://github.com/Factory-AI/factory"},{name:"claude-code",label:"Claude Code",description:"Claude Code CLI",homepage:"https://www.anthropic.com/claude",iconUrl:"https://cdn.jsdelivr.net/npm/simple-icons@latest/icons/claude.svg",installHint:"npm install -g @anthropic-ai/claude-code",installUrl:"https://www.anthropic.com/claude-code",setupUrl:"https://claude.ai/"},{name:"amp",label:"Amp",description:"Amp Code CLI",homepage:"https://www.ampcode.com",iconUrl:"https://ampcode.com/amp-mark-color.svg",installHint:"npm install -g @sourcegraph/amp",installUrl:"https://www.ampcode.com"},{name:"opencode",label:"OpenCode",description:"OpenCode CLI",homepage:"https://opencode.ai",iconUrl:null,installHint:"npm install -g opencode-ai",installUrl:"https://opencode.ai"},{name:"github-copilot",label:"GitHub Copilot",description:"GitHub Copilot CLI",homepage:"https://docs.github.com/copilot/how-tos/copilot-cli",iconUrl:"https://cdn.jsdelivr.net/npm/simple-icons@latest/icons/githubcopilot.svg",installHint:"npm install -g @github/copilot",installUrl:"https://docs.github.com/copilot/how-tos/copilot-cli",setupUrl:"https://github.com/settings/copilot"},{name:"cursor-cli",label:"Cursor Agent",description:"Cursor Agent CLI",homepage:"https://www.cursor.com",iconUrl:"https://cdn.jsdelivr.net/npm/simple-icons@latest/icons/cursor.svg",installHint:"npm install -g cursor-agent"},{name:"ccr",label:"CCR",description:"Claude Code Router",homepage:"https://www.npmjs.com/package/@musistudio/claude-code-router",iconUrl:"https://cdn.jsdelivr.net/npm/simple-icons@latest/icons/claude.svg",installHint:"npm install -g @musistudio/claude-code-router",installUrl:"https://www.npmjs.com/package/@musistudio/claude-code-router"}],s=l.map(e=>e.name),r=new Map(l.map(e=>[(0,n.q)(e.name),e]));function i(e){return r.get((0,n.q)(e))??null}},51164:(e,t,a)=>{"use strict";a.d(t,{v:()=>c});var n=a(76196);let l=["pro","max","api"],s=["chatgpt","api"],r=["default"],i=["oauth","api"],o=["oauth","api"];function d(e,t,a){return"string"==typeof e&&t.includes(e)?e:a}function c(e){let t=!e||"object"!=typeof e||Array.isArray(e)?{}:{...e},a=(0,n.Zp)();return{amp:d(t.amp,r,a.amp),claudeCode:d(t.claudeCode,l,a.claudeCode),codex:d(t.codex,s,a.codex),cursorCli:d(t.cursorCli,r,a.cursorCli),droid:d(t.droid,r,a.droid),gemini:d(t.gemini,i,a.gemini),githubCopilot:d(t.githubCopilot,r,a.githubCopilot),opencode:d(t.opencode,r,a.opencode),qwenCode:d(t.qwenCode,o,a.qwenCode),ccr:d(t.ccr,r,a.ccr)}}},73927:(e,t,a)=>{"use strict";function n(e,t){return e&&t?e.modelsByAccess[t]??[]:[]}function l(e,t){return e&&t?e.defaultModelByAccess[t]??null:null}function s(e,t,a){if(!e)return[];let n=t?.trim();return n&&e.reasoningOptionsByModel?.[n]?.length?e.reasoningOptionsByModel[n]??[]:a?e.reasoningOptionsByAccess?.[a]??[]:[]}function r(e,t,a){if(!e)return null;let n=t?.trim();return n&&e.defaultReasoningByModel?.[n]?e.defaultReasoningByModel[n]??null:a?e.defaultReasoningByAccess?.[a]??null:null}a.d(t,{NN:()=>l,V3:()=>n,Z9:()=>r,a3:()=>s})},76196:(e,t,a)=>{"use strict";a.d(t,{DZ:()=>b,O$:()=>g,Tk:()=>h,Zp:()=>p,Zz:()=>u,d8:()=>x,u6:()=>f,yM:()=>m}),[...new Set(["killed","terminated","done","cleanup","errored","merged"])];let n=["amp","claude-code","codex","cursor-cli","droid","gemini","github-copilot","opencode","qwen-code","ccr"],l={amp:"default",claudeCode:"pro",codex:"chatgpt",cursorCli:"default",droid:"default",gemini:"oauth",githubCopilot:"default",opencode:"default",qwenCode:"oauth",ccr:"default"},s={amp:{agent:"amp",label:"Amp",accessKey:"amp",defaultAccess:"default",accessOptions:[{id:"default",label:"Local CLI",description:"Use the locally installed Amp CLI catalog and custom override support."}]},"claude-code":{agent:"claude-code",label:"Claude Code",accessKey:"claudeCode",defaultAccess:"pro",accessOptions:[{id:"pro",label:"Claude Pro",description:"Shows the current Sonnet models that Claude Code documents for Pro usage."},{id:"max",label:"Claude Max",description:"Unlocks both Sonnet and Opus model choices in Claude Code."},{id:"api",label:"Anthropic API",description:"Use direct Anthropic API credentials instead of a Claude subscription."}]},codex:{agent:"codex",label:"Codex",accessKey:"codex",defaultAccess:"chatgpt",accessOptions:[{id:"chatgpt",label:"ChatGPT Plan",description:"Use the ChatGPT-backed Codex login flow for paid ChatGPT workspaces."},{id:"api",label:"OpenAI API",description:"Use direct OpenAI API credentials when Codex is pointed at the API."}]},"cursor-cli":{agent:"cursor-cli",label:"Cursor Agent",accessKey:"cursorCli",defaultAccess:"default",accessOptions:[{id:"default",label:"Local CLI",description:"Use the locally installed Cursor Agent catalog and custom override support."}]},droid:{agent:"droid",label:"Droid",accessKey:"droid",defaultAccess:"default",accessOptions:[{id:"default",label:"Local CLI",description:"Use the locally installed Droid catalog and custom override support."}]},gemini:{agent:"gemini",label:"Gemini",accessKey:"gemini",defaultAccess:"oauth",accessOptions:[{id:"oauth",label:"Google Login",description:"Use the built-in Google account flow that Gemini CLI ships with."},{id:"api",label:"Gemini API",description:"Use a Gemini API key or Vertex AI project for broader model control."}]},"github-copilot":{agent:"github-copilot",label:"GitHub Copilot",accessKey:"githubCopilot",defaultAccess:"default",accessOptions:[{id:"default",label:"Local CLI",description:"Use the locally installed Copilot CLI catalog and custom override support."}]},opencode:{agent:"opencode",label:"OpenCode",accessKey:"opencode",defaultAccess:"default",accessOptions:[{id:"default",label:"Local CLI",description:"Use the locally installed OpenCode catalog and custom override support."}]},"qwen-code":{agent:"qwen-code",label:"Qwen Code",accessKey:"qwenCode",defaultAccess:"oauth",accessOptions:[{id:"oauth",label:"Qwen OAuth",description:"Use Qwen Code's built-in browser login and bundled provider defaults."},{id:"api",label:"DashScope / Custom API",description:"Use DashScope or another OpenAI-compatible endpoint configured for Qwen Code."}]},ccr:{agent:"ccr",label:"CCR",accessKey:"ccr",defaultAccess:"default",accessOptions:[{id:"default",label:"Local CLI",description:"Use the locally installed Claude Code Router catalog and custom override support."}]}},r=[{id:"low",label:"Low",description:"Fast responses with lighter reasoning."},{id:"medium",label:"Medium",description:"Balanced speed and reasoning depth for everyday tasks."},{id:"high",label:"High",description:"Deeper reasoning for more complex tasks."}],i=[...r,{id:"xhigh",label:"Extra High",description:"Maximum reasoning depth for the hardest tasks."}];function o(e,t,a,n=function(e){return e.trim().split(/[-_]+/g).filter(Boolean).map(e=>"gpt"===e.toLowerCase()?"GPT":e[0]?.toUpperCase()+e.slice(1)).join(" ")}(e)){return{id:e,label:n,description:t,access:a}}let d={amp:{modelsByAccess:{default:[o("free","Amp Free mode prioritizes lower-cost execution.",["default"],"Amp Free"),o("rush","Amp Rush mode prioritizes faster turnaround.",["default"],"Amp Rush"),o("smart","Amp Smart mode balances quality, speed, and tool choice.",["default"],"Amp Smart"),o("deep","Amp Deep mode enables the highest-capability reasoning path.",["default"],"Amp Deep")]},defaultModelByAccess:{default:"smart"}},"claude-code":{modelsByAccess:{pro:[o("claude-sonnet-4-6","Balanced Claude Code model for day-to-day coding tasks.",["pro","max","api"],"Claude Sonnet 4.6"),o("claude-haiku-4-5","Fast Claude model for lightweight tasks.",["pro","max","api"],"Claude Haiku 4.5")],max:[o("claude-sonnet-4-6","Balanced Claude Code model for day-to-day coding tasks.",["pro","max","api"],"Claude Sonnet 4.6"),o("claude-opus-4-6","Highest-capability Claude Code model for deeper reasoning.",["max","api"],"Claude Opus 4.6"),o("claude-haiku-4-5","Fast Claude model for lightweight tasks.",["pro","max","api"],"Claude Haiku 4.5")],api:[o("claude-sonnet-4-6","Balanced Claude Code model for day-to-day coding tasks.",["pro","max","api"],"Claude Sonnet 4.6"),o("claude-opus-4-6","Highest-capability Claude Code model for deeper reasoning.",["max","api"],"Claude Opus 4.6"),o("claude-haiku-4-5","Fast Claude model for lightweight tasks.",["pro","max","api"],"Claude Haiku 4.5")]},defaultModelByAccess:{pro:"claude-sonnet-4-6",max:"claude-opus-4-6",api:"claude-sonnet-4-6"},reasoningOptionsByAccess:{pro:r,max:r,api:r},defaultReasoningByAccess:{pro:"medium",max:"high",api:"medium"}},codex:{modelsByAccess:{chatgpt:[o("gpt-5.4","Latest frontier coding model exposed by Codex.",["chatgpt","api"],"GPT-5.4"),o("gpt-5.4-mini","Smaller GPT-5.4 variant for faster or lower-cost coding tasks.",["chatgpt","api"],"GPT-5.4-Mini"),o("gpt-5.3-codex","Balanced Codex coding model.",["chatgpt","api"],"GPT-5.3-Codex"),o("gpt-5.3-codex-spark","Fast Codex model optimized for rapid iteration.",["chatgpt"],"GPT-5.3-Codex-Spark"),o("gpt-5.2-codex","Previous generation Codex coding model.",["chatgpt","api"],"GPT-5.2-Codex"),o("gpt-5.2","Previous frontier model for professional work with configurable reasoning effort.",["chatgpt","api"],"GPT-5.2"),o("gpt-5.1-codex-max","High-capability legacy Codex model.",["chatgpt","api"],"GPT-5.1-Codex-Max"),o("gpt-5.1-codex-mini","Smaller Codex model for quick tasks.",["chatgpt","api"],"GPT-5.1-Codex-Mini")],api:[o("gpt-5.4","Latest frontier coding model exposed by Codex.",["chatgpt","api"],"GPT-5.4"),o("gpt-5.4-mini","Smaller GPT-5.4 variant for faster or lower-cost coding tasks.",["chatgpt","api"],"GPT-5.4-Mini"),o("gpt-5.3-codex","Balanced Codex coding model.",["chatgpt","api"],"GPT-5.3-Codex"),o("gpt-5.2-codex","Previous generation Codex coding model.",["chatgpt","api"],"GPT-5.2-Codex"),o("gpt-5.2","Previous frontier model for professional work with configurable reasoning effort.",["chatgpt","api"],"GPT-5.2"),o("gpt-5.1-codex-max","High-capability legacy Codex model.",["chatgpt","api"],"GPT-5.1-Codex-Max"),o("gpt-5.1-codex-mini","Smaller Codex model for quick tasks.",["chatgpt","api"],"GPT-5.1-Codex-Mini")]},defaultModelByAccess:{chatgpt:"gpt-5.4",api:"gpt-5.4"},reasoningOptionsByAccess:{chatgpt:i,api:i},defaultReasoningByAccess:{chatgpt:"high",api:"high"}},"cursor-cli":{modelsByAccess:{default:[o("gpt-5","Cursor Agent's GPT-5 preset alias.",["default"],"GPT-5"),o("sonnet-4","Cursor Agent's Sonnet preset alias.",["default"],"Sonnet 4"),o("opus","Cursor Agent's Opus preset alias.",["default"],"Opus")]},defaultModelByAccess:{default:"gpt-5"}},droid:{modelsByAccess:{default:[]},defaultModelByAccess:{}},gemini:{modelsByAccess:{oauth:[o("gemini-3.1-pro-preview","High-capability Gemini model discovered in local Gemini sessions.",["oauth","api"],"Gemini 3.1 Pro Preview"),o("gemini-3-flash-preview","Fast Gemini model discovered in local Gemini sessions.",["oauth","api"],"Gemini 3 Flash Preview")],api:[o("gemini-3.1-pro-preview","High-capability Gemini model discovered in local Gemini sessions.",["oauth","api"],"Gemini 3.1 Pro Preview"),o("gemini-3-flash-preview","Fast Gemini model discovered in local Gemini sessions.",["oauth","api"],"Gemini 3 Flash Preview")]},defaultModelByAccess:{oauth:"gemini-3.1-pro-preview",api:"gemini-3.1-pro-preview"}},"github-copilot":{modelsByAccess:{default:[]},defaultModelByAccess:{}},opencode:{modelsByAccess:{default:[]},defaultModelByAccess:{}},"qwen-code":{modelsByAccess:{oauth:[o("coder-model","Model discovered in the local Qwen Code installation.",["oauth","api"],"Coder Model")],api:[o("coder-model","Model discovered in the local Qwen Code installation.",["oauth","api"],"Coder Model")]},defaultModelByAccess:{oauth:"coder-model",api:"coder-model"}},ccr:{modelsByAccess:{default:[o("claude-sonnet-4-6","Balanced Claude model exposed through Claude Code Router.",["default"],"Claude Sonnet 4.6"),o("claude-opus-4-6","Highest-capability Claude model exposed through Claude Code Router.",["default"],"Claude Opus 4.6"),o("claude-haiku-4-5","Fast Claude model exposed through Claude Code Router.",["default"],"Claude Haiku 4.5")]},defaultModelByAccess:{default:"claude-sonnet-4-6"},reasoningOptionsByAccess:{default:r},defaultReasoningByAccess:{default:"medium"}}};function c(e){let t=e.trim().toLowerCase().replace(/[_\s]+/g,"-");return n.includes(t)?t:null}function p(){return{...l}}function u(e){return null!==c(e)}function m(e){let t=c(e);return t?s[t]:null}function h(e,t){let a=m(e);if(!a)return null;let n=t?.[a.accessKey];return"string"==typeof n&&a.accessOptions.some(e=>e.id===n)?n:a.defaultAccess}function x(e,t){let a=c(e);if(!a)return[];let n=h(a,t);if(!n)return[];let l=d[a],s=l.modelsByAccess[n]??[];if(s.length>0)return[...s];let r=[],i=new Set;for(let e of Object.values(l.modelsByAccess))if(Array.isArray(e))for(let t of e)i.has(t.id)||(i.add(t.id),r.push(t));return r}function g(e,t){let a=c(e);if(!a)return null;let n=h(a,t);return n?d[a].defaultModelByAccess[n]??null:null}function f(e,t){let a=c(e);if(!a)return[];let n=h(a,t);return n?d[a].reasoningOptionsByAccess?.[n]??[]:[]}function b(e,t){let a=c(e);if(!a)return null;let n=h(a,t);return n?d[a].defaultReasoningByAccess?.[n]??null:null}}},e=>{e.O(0,[3036,691,3357,5587,1455,1257,2355,7720,59,587,1968,7358],()=>e(e.s=12529)),_N_E=e.O()}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[824],{69755:(e,n,t)=>{Promise.resolve().then(t.bind(t,98835))},98835:(e,n,t)=>{"use strict";t.d(n,{default:()=>j});var i=t(54568),s=t(7620),o=t(79748),r=t(46012),a=t(862),d=t(84169),l=t(39702),c=t(29450),u=t(42452),h=t(86181),p=t(53649),b=t(86011),m=t(59207),f=t(35821),S=t(95106),g=t(10926);function j({requiresPairedDeviceScope:e=!1}){let n=(0,o.useParams)(),t=(0,o.useRouter)(),v=(0,o.useSearchParams)(),w=(0,s.useMemo)(()=>(0,g.DW)(n.id)?.bridgeId??null,[n.id]),I=!e||!!w,{session:x}=(0,f.w)(n.id,null,{bridgeId:w,enabled:I}),k=x?.bridgeId??w,{projects:E}=(0,p.U)(k,{enabled:!e||!!k}),{preferences:P,loading:C}=(0,m.g)(k,{enabled:!e||!!k}),{mobileSidebarOpen:M,desktopSidebarOpen:O,toggleSidebar:N,closeSidebarOnMobile:$}=(0,r.T)({initialDesktopOpen:!1}),y=M||O,{sessions:L,refresh:R}=(0,S.t)(void 0,{enabled:y&&(!e||!!k),bridgeId:k}),[T,U]=(0,s.useState)(null),[_,D]=(0,s.useState)(!1),W=(0,s.useMemo)(()=>{let e=v.get("tab");return null===e||"terminal"===e},[v])&&_,z=x?.projectId??null;(0,b.Q)({enabled:!C&&null!==z,projectId:z,preferences:P?.notifications??null,bridgeId:k});let J=(0,s.useMemo)(()=>x?[x.projectId,x.branch].filter(Boolean).join(" \xb7 "):T||"Session",[x,T]),A=(0,s.useMemo)(()=>(function(e){let n=(0,g.C0)(e);if(!n)return"/";let t=new URLSearchParams;return t.set("bridge",n),`/?${t.toString()}`})(k),[k]);async function B(e){let i=await fetch(`/api/sessions/${encodeURIComponent(e)}/archive`,{method:"POST"}),s=await i.json().catch(()=>null);if(404===i.status&&(i=await fetch(`/api/sessions/${encodeURIComponent(e)}/actions`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({action:"archive"})}),s=await i.json().catch(()=>null)),!i.ok)throw Error(s?.error??`Failed to archive session: ${i.status}`);e===n.id?t.replace(A):await R()}return((0,s.useEffect)(()=>{x?.projectId?U(x.projectId):!T&&E.length>0&&U(E[0]?.id??null)},[x?.projectId,E,T]),(0,s.useEffect)(()=>{let e="function"==typeof window.matchMedia?window.matchMedia("(pointer: coarse)"):null,n=()=>{D((0,h.k$)())};return n(),window.addEventListener("resize",n),e?.addEventListener?.("change",n),()=>{window.removeEventListener("resize",n),e?.removeEventListener?.("change",n)}},[]),n.id)?(0,i.jsxs)(a.G,{mobileSidebarOpen:M,desktopSidebarOpen:O,onToggleSidebar:N,hideMobileSidebarToggle:W,sidebar:y?(0,i.jsx)(c.WorkspaceSidebarPanel,{projects:E,selectedProjectId:T,onSelectProject:e=>{null===e?t.push(A):U(e)},sessions:L,selectedSessionId:n.id,onSelectSession:(e,n)=>{let i=new URLSearchParams;i.set("tab",n?.tab??"terminal"),t.push(`/sessions/${encodeURIComponent(e)}?${i.toString()}`),$()},onArchiveSession:B,onCreateWorkspace:()=>{t.push(A)}}):null,children:[W?null:(0,i.jsx)(d.V,{title:J,rightContent:(0,i.jsx)(l.J,{})}),(0,i.jsx)("div",{className:`flex min-h-0 min-w-0 flex-1 flex-col overflow-hidden ${W?"bg-[#060404]":""}`,children:(0,i.jsx)(u.SessionDetail,{sessionId:n.id,initialSession:x,bridgeId:k,immersiveMobileMode:W,onOpenSidebar:N},n.id)})]}):(0,i.jsx)("div",{className:"flex h-dvh min-h-[100dvh] items-center justify-center",children:(0,i.jsx)("span",{className:"text-[13px] text-[var(--text-muted)]",children:"No session ID provided"})})}}},e=>{e.O(0,[3357,5587,1455,1257,5849,7720,59,2452,9450,587,1968,7358],()=>e(e.s=69755)),_N_E=e.O()}]);
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
@font-face{font-family:Tomorrow;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/2d411165791def1a-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Tomorrow;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/241edd36d2933bcd-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Tomorrow Fallback;src:local("Arial");ascent-override:93.46%;descent-override:18.69%;line-gap-override:0.00%;size-adjust:107.00%}.__className_086f30{font-family:Tomorrow,Tomorrow Fallback;font-weight:700;font-style:normal}.__variable_086f30{--font-tomorrow:"Tomorrow","Tomorrow Fallback"}@font-face{font-family:Orbitron;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/9a4ee768fed045da-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Orbitron;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/9a4ee768fed045da-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Orbitron Fallback;src:local("Arial");ascent-override:81.50%;descent-override:19.59%;line-gap-override:0.00%;size-adjust:124.05%}.__className_be41e9{font-family:Orbitron,Orbitron Fallback;font-style:normal}.__variable_be41e9{--font-brand-display:"Orbitron","Orbitron Fallback"}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/edc640959b0c7826-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ac0e76ddaeeb7981-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/64d784ea54a4acde-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/ff71da380fbe67dd-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/6d831b18ae5b01dc-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/558ca1a6aa3cb55e-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:JetBrains Mono Fallback;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_6d24ac{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.__variable_6d24ac{--font-mono:"JetBrains Mono","JetBrains Mono Fallback"}@font-face{font-family:GeistSans;src:url(/_next/static/media/27834908180db20f-s.p.woff2) format("woff2");font-display:swap;font-weight:100 900}@font-face{font-family:GeistSans Fallback;src:local("Arial");ascent-override:94.56%;descent-override:27.76%;line-gap-override:0.00%;size-adjust:106.28%}.__className_245d8d{font-family:GeistSans,GeistSans Fallback}.__variable_245d8d{--font-geist-sans:"GeistSans","GeistSans Fallback"}
|
|
2
|
-
|
|
3
|
-
/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1;--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-pan-x:initial;--tw-pan-y:initial;--tw-pinch-zoom:initial;--tw-scroll-snap-strictness:proximity;--tw-space-y-reverse:0;--tw-border-style:solid;--tw-leading:initial;--tw-font-weight:initial;--tw-tracking:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial;--tw-ease:initial}}}@layer theme{:host,:root{--font-sans:var(--font-geist-sans);--font-mono:var(--font-geist-mono);--color-red-100:oklch(93.6% .032 17.717);--color-red-200:oklch(88.5% .062 18.334);--color-red-400:oklch(70.4% .191 22.216);--color-red-500:oklch(63.7% .237 25.331);--color-orange-500:oklch(70.5% .213 47.604);--color-amber-100:oklch(96.2% .059 95.617);--color-amber-300:oklch(87.9% .169 91.605);--color-amber-400:oklch(82.8% .189 84.429);--color-amber-500:oklch(76.9% .188 70.08);--color-emerald-100:oklch(95% .052 163.051);--color-emerald-400:oklch(76.5% .177 163.223);--color-blue-400:oklch(70.7% .165 254.624);--color-blue-500:oklch(62.3% .214 259.815);--color-rose-300:oklch(81% .117 11.638);--color-rose-400:oklch(71.2% .194 13.428);--color-gray-400:oklch(70.7% .022 261.325);--color-gray-500:oklch(55.1% .027 264.364);--color-black:#000;--color-white:#fff;--spacing:.25rem;--container-sm:24rem;--container-md:28rem;--container-lg:32rem;--container-2xl:42rem;--container-3xl:48rem;--container-5xl:64rem;--container-6xl:72rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-lg:1.125rem;--text-lg--line-height:calc(1.75 / 1.125);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--text-2xl:1.5rem;--text-2xl--line-height:calc(2 / 1.5);--text-3xl:1.875rem;--text-3xl--line-height:calc(2.25 / 1.875);--text-4xl:2.25rem;--text-4xl--line-height:calc(2.5 / 2.25);--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--tracking-wide:.025em;--tracking-wider:.05em;--leading-snug:1.375;--leading-relaxed:1.625;--radius-xs:3px;--radius-sm:3px;--radius-md:4px;--radius-lg:6px;--radius-xl:.75rem;--radius-2xl:1rem;--ease-in-out:cubic-bezier(.4,0,.2,1);--animate-spin:spin 1s linear infinite;--animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1) infinite;--blur-sm:8px;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer clerk,components;@layer utilities{.pointer-events-auto{pointer-events:auto}.pointer-events-none{pointer-events:none}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.inset-0{inset:calc(var(--spacing) * 0)}.inset-\[2px\]{inset:2px}.inset-x-0{inset-inline:calc(var(--spacing) * 0)}.inset-y-0{inset-block:calc(var(--spacing) * 0)}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.top-0{top:calc(var(--spacing) * 0)}.top-1\/2{top:50%}.top-2{top:calc(var(--spacing) * 2)}.right-0{right:calc(var(--spacing) * 0)}.right-2{right:calc(var(--spacing) * 2)}.right-3{right:calc(var(--spacing) * 3)}.right-\[18px\]{right:18px}.bottom-0{bottom:calc(var(--spacing) * 0)}.bottom-3{bottom:calc(var(--spacing) * 3)}.left-0{left:calc(var(--spacing) * 0)}.left-2{left:calc(var(--spacing) * 2)}.left-3{left:calc(var(--spacing) * 3)}.left-\[var\(--workspace-sidebar-width\)\]{left:var(--workspace-sidebar-width)}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[5\]{z-index:5}.z-\[70\]{z-index:70}.z-\[75\]{z-index:75}.z-\[80\]{z-index:80}.z-\[85\]{z-index:85}.z-\[90\]{z-index:90}.z-\[95\]{z-index:95}.z-\[120\]{z-index:120}.-mx-0\.5{margin-inline:calc(var(--spacing) * -.5)}.mx-auto{margin-inline:auto}.my-1{margin-block:calc(var(--spacing) * 1)}.my-2{margin-block:calc(var(--spacing) * 2)}.mt-0\.5{margin-top:calc(var(--spacing) * .5)}.mt-1{margin-top:calc(var(--spacing) * 1)}.mt-1\.5{margin-top:calc(var(--spacing) * 1.5)}.mt-2{margin-top:calc(var(--spacing) * 2)}.mt-3{margin-top:calc(var(--spacing) * 3)}.mt-4{margin-top:calc(var(--spacing) * 4)}.mt-5{margin-top:calc(var(--spacing) * 5)}.mt-6{margin-top:calc(var(--spacing) * 6)}.mt-8{margin-top:calc(var(--spacing) * 8)}.mt-10{margin-top:calc(var(--spacing) * 10)}.mt-auto{margin-top:auto}.mr-1{margin-right:calc(var(--spacing) * 1)}.mr-1\.5{margin-right:calc(var(--spacing) * 1.5)}.mr-2{margin-right:calc(var(--spacing) * 2)}.mb-1{margin-bottom:calc(var(--spacing) * 1)}.mb-1\.5{margin-bottom:calc(var(--spacing) * 1.5)}.mb-2{margin-bottom:calc(var(--spacing) * 2)}.mb-3{margin-bottom:calc(var(--spacing) * 3)}.mb-4{margin-bottom:calc(var(--spacing) * 4)}.mb-6{margin-bottom:calc(var(--spacing) * 6)}.ml-1{margin-left:calc(var(--spacing) * 1)}.ml-1\.5{margin-left:calc(var(--spacing) * 1.5)}.ml-2{margin-left:calc(var(--spacing) * 2)}.ml-auto{margin-left:auto}.line-clamp-2{-webkit-line-clamp:2}.line-clamp-2,.line-clamp-3{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.h-1{height:calc(var(--spacing) * 1)}.h-1\.5{height:calc(var(--spacing) * 1.5)}.h-2{height:calc(var(--spacing) * 2)}.h-2\.5{height:calc(var(--spacing) * 2.5)}.h-3{height:calc(var(--spacing) * 3)}.h-3\.5{height:calc(var(--spacing) * 3.5)}.h-4{height:calc(var(--spacing) * 4)}.h-5{height:calc(var(--spacing) * 5)}.h-6{height:calc(var(--spacing) * 6)}.h-7{height:calc(var(--spacing) * 7)}.h-8{height:calc(var(--spacing) * 8)}.h-9{height:calc(var(--spacing) * 9)}.h-10{height:calc(var(--spacing) * 10)}.h-11{height:calc(var(--spacing) * 11)}.h-14{height:calc(var(--spacing) * 14)}.h-16{height:calc(var(--spacing) * 16)}.h-20{height:calc(var(--spacing) * 20)}.h-32{height:calc(var(--spacing) * 32)}.h-64{height:calc(var(--spacing) * 64)}.h-\[3px\]{height:3px}.h-\[6px\]{height:6px}.h-\[10px\]{height:10px}.h-\[14px\]{height:14px}.h-\[15px\]{height:15px}.h-\[16px\]{height:16px}.h-\[18px\]{height:18px}.h-\[20px\]{height:20px}.h-\[22px\]{height:22px}.h-\[24px\]{height:24px}.h-\[25px\]{height:25px}.h-\[28px\]{height:28px}.h-\[29px\]{height:29px}.h-\[31px\]{height:31px}.h-\[33px\]{height:33px}.h-\[38px\]{height:38px}.h-\[56vh\]{height:56vh}.h-\[100dvh\]{height:100dvh}.h-\[180px\]{height:180px}.h-\[200px\]{height:200px}.h-auto{height:auto}.h-dvh{height:100dvh}.h-full{height:100%}.h-px{height:1px}.max-h-32{max-height:calc(var(--spacing) * 32)}.max-h-\[60vh\]{max-height:60vh}.max-h-\[92vh\]{max-height:92vh}.max-h-\[100dvh\]{max-height:100dvh}.max-h-\[260px\]{max-height:260px}.max-h-\[280px\]{max-height:280px}.max-h-\[320px\]{max-height:320px}.max-h-\[620px\]{max-height:620px}.max-h-\[calc\(100dvh-1\.5rem\)\]{max-height:calc(100dvh - 1.5rem)}.max-h-\[min\(42dvh\,340px\)\]{max-height:min(42dvh,340px)}.max-h-\[min\(360px\,50vh\)\]{max-height:min(360px,50vh)}.max-h-full{max-height:100%}.min-h-0{min-height:calc(var(--spacing) * 0)}.min-h-11{min-height:calc(var(--spacing) * 11)}.min-h-12{min-height:calc(var(--spacing) * 12)}.min-h-\[24px\]{min-height:24px}.min-h-\[29px\]{min-height:29px}.min-h-\[32px\]{min-height:32px}.min-h-\[34px\]{min-height:34px}.min-h-\[38px\]{min-height:38px}.min-h-\[40px\]{min-height:40px}.min-h-\[42px\]{min-height:42px}.min-h-\[44px\]{min-height:44px}.min-h-\[100dvh\]{min-height:100dvh}.min-h-\[180px\]{min-height:180px}.min-h-\[200px\]{min-height:200px}.min-h-\[240px\]{min-height:240px}.min-h-\[360px\]{min-height:360px}.min-h-\[420px\]{min-height:420px}.min-h-\[560px\]{min-height:560px}.min-h-dvh{min-height:100dvh}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.w-1\.5{width:calc(var(--spacing) * 1.5)}.w-2{width:calc(var(--spacing) * 2)}.w-2\.5{width:calc(var(--spacing) * 2.5)}.w-3{width:calc(var(--spacing) * 3)}.w-3\.5{width:calc(var(--spacing) * 3.5)}.w-4{width:calc(var(--spacing) * 4)}.w-5{width:calc(var(--spacing) * 5)}.w-6{width:calc(var(--spacing) * 6)}.w-7{width:calc(var(--spacing) * 7)}.w-8{width:calc(var(--spacing) * 8)}.w-9{width:calc(var(--spacing) * 9)}.w-10{width:calc(var(--spacing) * 10)}.w-11{width:calc(var(--spacing) * 11)}.w-14{width:calc(var(--spacing) * 14)}.w-16{width:calc(var(--spacing) * 16)}.w-20{width:calc(var(--spacing) * 20)}.w-\[6px\]{width:6px}.w-\[10px\]{width:10px}.w-\[14px\]{width:14px}.w-\[15px\]{width:15px}.w-\[16px\]{width:16px}.w-\[18px\]{width:18px}.w-\[22px\]{width:22px}.w-\[24px\]{width:24px}.w-\[25px\]{width:25px}.w-\[29px\]{width:29px}.w-\[85vw\]{width:85vw}.w-\[168px\]{width:168px}.w-\[320px\]{width:320px}.w-\[min\(calc\(100vw-1\.5rem\)\,24rem\)\]{width:min(100vw - 1.5rem,24rem)}.w-fit{width:fit-content}.w-full{width:100%}.w-px{width:1px}.max-w-2xl{max-width:var(--container-2xl)}.max-w-3xl{max-width:var(--container-3xl)}.max-w-5xl{max-width:var(--container-5xl)}.max-w-6xl{max-width:var(--container-6xl)}.max-w-\[14ch\]{max-width:14ch}.max-w-\[40vw\]{max-width:40vw}.max-w-\[70vw\]{max-width:70vw}.max-w-\[160px\]{max-width:160px}.max-w-\[180px\]{max-width:180px}.max-w-\[220px\]{max-width:220px}.max-w-\[260px\]{max-width:260px}.max-w-\[320px\]{max-width:320px}.max-w-\[380px\]{max-width:380px}.max-w-\[560px\]{max-width:560px}.max-w-\[760px\]{max-width:760px}.max-w-\[768px\]{max-width:768px}.max-w-\[880px\]{max-width:880px}.max-w-\[1200px\]{max-width:1200px}.max-w-\[calc\(100vw-2rem\)\]{max-width:calc(100vw - 2rem)}.max-w-\[calc\(100vw-32px\)\]{max-width:calc(100vw - 32px)}.max-w-full{max-width:100%}.max-w-lg{max-width:var(--container-lg)}.max-w-md{max-width:var(--container-md)}.max-w-none{max-width:none}.max-w-sm{max-width:var(--container-sm)}.min-w-0{min-width:calc(var(--spacing) * 0)}.min-w-\[28px\]{min-width:28px}.min-w-\[120px\]{min-width:120px}.min-w-\[220px\]{min-width:220px}.min-w-\[240px\]{min-width:240px}.min-w-\[280px\]{min-width:280px}.min-w-\[320px\]{min-width:320px}.min-w-\[480px\]{min-width:480px}.min-w-full{min-width:100%}.flex-1{flex:1}.flex-shrink-0,.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x:calc(calc(1 / 2 * 100%) * -1)}.-translate-x-1\/2,.-translate-x-full{translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-x-full{--tw-translate-x:-100%}.translate-x-0{--tw-translate-x:calc(var(--spacing) * 0)}.-translate-y-1\/2,.translate-x-0{translate:var(--tw-translate-x) var(--tw-translate-y)}.-translate-y-1\/2{--tw-translate-y:calc(calc(1 / 2 * 100%) * -1)}.scale-125{--tw-scale-x:125%;--tw-scale-y:125%;--tw-scale-z:125%;scale:var(--tw-scale-x) var(--tw-scale-y)}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.animate-\[activity-pulse_2s_ease-in-out_infinite\]{animation:activity-pulse 2s ease-in-out infinite}.animate-\[slide-up_0\.15s_ease\]{animation:slide-up .15s}.animate-pulse{animation:var(--animate-pulse)}.animate-spin{animation:var(--animate-spin)}.cursor-col-resize{cursor:col-resize}.cursor-crosshair{cursor:crosshair}.cursor-default{cursor:default}.cursor-not-allowed{cursor:not-allowed}.cursor-pointer{cursor:pointer}.cursor-wait{cursor:wait}.touch-pan-x{--tw-pan-x:pan-x}.touch-pan-x,.touch-pan-y{touch-action:var(--tw-pan-x,) var(--tw-pan-y,) var(--tw-pinch-zoom,)}.touch-pan-y{--tw-pan-y:pan-y}.touch-none{touch-action:none}.resize{resize:both}.resize-none{resize:none}.snap-x{scroll-snap-type:x var(--tw-scroll-snap-strictness)}.snap-center{scroll-snap-align:center}.snap-start{scroll-snap-align:start}.list-none{list-style-type:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-\[2\.5rem_minmax\(0\,1fr\)_2\.5rem_minmax\(0\,1fr\)\]{grid-template-columns:2.5rem minmax(0,1fr) 2.5rem minmax(0,1fr)}.grid-cols-\[2rem_2rem_1rem_minmax\(0\,1fr\)\]{grid-template-columns:2rem 2rem 1rem minmax(0,1fr)}.grid-rows-\[minmax\(10rem\,14rem\)_minmax\(0\,1fr\)\]{grid-template-rows:minmax(10rem,14rem) minmax(0,1fr)}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.items-stretch{align-items:stretch}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.gap-0{gap:calc(var(--spacing) * 0)}.gap-0\.5{gap:calc(var(--spacing) * .5)}.gap-1{gap:calc(var(--spacing) * 1)}.gap-1\.5{gap:calc(var(--spacing) * 1.5)}.gap-2{gap:calc(var(--spacing) * 2)}.gap-3{gap:calc(var(--spacing) * 3)}.gap-4{gap:calc(var(--spacing) * 4)}.gap-5{gap:calc(var(--spacing) * 5)}.gap-6{gap:calc(var(--spacing) * 6)}.gap-8{gap:calc(var(--spacing) * 8)}.gap-\[4px\]{gap:4px}.gap-\[6px\]{gap:6px}:where(.space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-1\.5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1.5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1.5) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-2>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 2) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 2) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-3>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 3) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 3) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-4>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 4) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 4) * calc(1 - var(--tw-space-y-reverse)))}:where(.space-y-5>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 5) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 5) * calc(1 - var(--tw-space-y-reverse)))}.gap-x-0{column-gap:calc(var(--spacing) * 0)}.gap-x-1{column-gap:calc(var(--spacing) * 1)}.gap-x-2{column-gap:calc(var(--spacing) * 2)}.gap-x-3{column-gap:calc(var(--spacing) * 3)}.gap-x-4{column-gap:calc(var(--spacing) * 4)}.gap-y-1{row-gap:calc(var(--spacing) * 1)}.gap-y-1\.5{row-gap:calc(var(--spacing) * 1.5)}.gap-y-2{row-gap:calc(var(--spacing) * 2)}.self-start{align-self:flex-start}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overscroll-contain{overscroll-behavior:contain}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:var(--radius-2xl)}.rounded-\[0\.2rem\]{border-radius:.2rem}.rounded-\[2px\]{border-radius:2px}.rounded-\[3\.5px\]{border-radius:3.5px}.rounded-\[3px\]{border-radius:3px}.rounded-\[4px\]{border-radius:4px}.rounded-\[6px\]{border-radius:6px}.rounded-\[7px\]{border-radius:7px}.rounded-\[8px\]{border-radius:8px}.rounded-\[10px\]{border-radius:10px}.rounded-\[12px\]{border-radius:12px}.rounded-\[14px\]{border-radius:14px}.rounded-\[16px\]{border-radius:16px}.rounded-\[18px\]{border-radius:18px}.rounded-\[20px\]{border-radius:20px}.rounded-\[24px\]{border-radius:24px}.rounded-\[999px\]{border-radius:999px}.rounded-\[inherit\]{border-radius:inherit}.rounded-\[var\(--radius-lg\)\]{border-radius:var(--radius-lg)}.rounded-\[var\(--radius-md\)\]{border-radius:var(--radius-md)}.rounded-\[var\(--radius-sm\)\]{border-radius:var(--radius-sm)}.rounded-\[var\(--radius-xs\)\]{border-radius:var(--radius-xs)}.rounded-full{border-radius:3.40282e+38px}.rounded-lg{border-radius:var(--radius-lg)}.rounded-md{border-radius:var(--radius-md)}.rounded-none{border-radius:0}.rounded-xl{border-radius:var(--radius-xl)}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-2{border-style:var(--tw-border-style);border-width:2px}.border-x-0{border-inline-style:var(--tw-border-style);border-inline-width:0}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-0{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.border-l-2{border-left-style:var(--tw-border-style);border-left-width:2px}.border-dashed{--tw-border-style:dashed;border-style:dashed}.border-none{--tw-border-style:none;border-style:none}.border-\[color\:color-mix\(in_srgb\,var\(--status-error\)_45\%\,transparent\)\]{border-color:var(--status-error)}@supports (color:color-mix(in lab,red,red)){.border-\[color\:color-mix\(in_srgb\,var\(--status-error\)_45\%\,transparent\)\]{border-color:color-mix(in srgb,var(--status-error) 45%,transparent)}}.border-\[color\:color-mix\(in_srgb\,var\(--vk-green\)_35\%\,transparent\)\]{border-color:var(--vk-green)}@supports (color:color-mix(in lab,red,red)){.border-\[color\:color-mix\(in_srgb\,var\(--vk-green\)_35\%\,transparent\)\]{border-color:color-mix(in srgb,var(--vk-green) 35%,transparent)}}.border-\[color\:color-mix\(in_srgb\,var\(--vk-orange\)_28\%\,transparent\)\]{border-color:var(--vk-orange)}@supports (color:color-mix(in lab,red,red)){.border-\[color\:color-mix\(in_srgb\,var\(--vk-orange\)_28\%\,transparent\)\]{border-color:color-mix(in srgb,var(--vk-orange) 28%,transparent)}}.border-\[color\:color-mix\(in_srgb\,var\(--vk-orange\)_34\%\,transparent\)\]{border-color:var(--vk-orange)}@supports (color:color-mix(in lab,red,red)){.border-\[color\:color-mix\(in_srgb\,var\(--vk-orange\)_34\%\,transparent\)\]{border-color:color-mix(in srgb,var(--vk-orange) 34%,transparent)}}.border-\[color\:color-mix\(in_srgb\,var\(--vk-red\)_28\%\,transparent\)\]{border-color:var(--vk-red)}@supports (color:color-mix(in lab,red,red)){.border-\[color\:color-mix\(in_srgb\,var\(--vk-red\)_28\%\,transparent\)\]{border-color:color-mix(in srgb,var(--vk-red) 28%,transparent)}}.border-\[color\:color-mix\(in_srgb\,var\(--vk-red\)_30\%\,transparent\)\]{border-color:var(--vk-red)}@supports (color:color-mix(in lab,red,red)){.border-\[color\:color-mix\(in_srgb\,var\(--vk-red\)_30\%\,transparent\)\]{border-color:color-mix(in srgb,var(--vk-red) 30%,transparent)}}.border-\[color\:color-mix\(in_srgb\,var\(--vk-red\)_35\%\,transparent\)\]{border-color:var(--vk-red)}@supports (color:color-mix(in lab,red,red)){.border-\[color\:color-mix\(in_srgb\,var\(--vk-red\)_35\%\,transparent\)\]{border-color:color-mix(in srgb,var(--vk-red) 35%,transparent)}}.border-\[color\:color-mix\(in_srgb\,var\(--vk-red\)_45\%\,transparent\)\]{border-color:var(--vk-red)}@supports (color:color-mix(in lab,red,red)){.border-\[color\:color-mix\(in_srgb\,var\(--vk-red\)_45\%\,transparent\)\]{border-color:color-mix(in srgb,var(--vk-red) 45%,transparent)}}.border-\[color\:color-mix\(in_srgb\,var\(--vk-red\)_55\%\,transparent\)\]{border-color:var(--vk-red)}@supports (color:color-mix(in lab,red,red)){.border-\[color\:color-mix\(in_srgb\,var\(--vk-red\)_55\%\,transparent\)\]{border-color:color-mix(in srgb,var(--vk-red) 55%,transparent)}}.border-\[color\:color-mix\(in_srgb\,var\(--vk-red\)_55\%\,var\(--vk-border\)\)\]{border-color:var(--vk-red)}@supports (color:color-mix(in lab,red,red)){.border-\[color\:color-mix\(in_srgb\,var\(--vk-red\)_55\%\,var\(--vk-border\)\)\]{border-color:color-mix(in srgb,var(--vk-red) 55%,var(--vk-border))}}.border-\[rgba\(24\,197\,143\,0\.32\)\]{border-color:#18c58f52}.border-\[rgba\(24\,197\,143\,0\.35\)\]{border-color:#18c58f59}.border-\[rgba\(60\,131\,246\,0\.35\)\]{border-color:#3c83f659}.border-\[rgba\(84\,176\,79\,0\.35\)\]{border-color:#54b04f59}.border-\[rgba\(108\,168\,255\,0\.35\)\]{border-color:#6ca8ff59}.border-\[rgba\(143\,143\,143\,0\.35\)\]{border-color:#8f8f8f59}.border-\[rgba\(210\,81\,81\,0\.35\)\]{border-color:#d2515159}.border-\[rgba\(210\,160\,59\,0\.35\)\]{border-color:#d2a03b59}.border-\[rgba\(234\,122\,42\,0\.28\)\]{border-color:#ea7a2a47}.border-\[rgba\(239\,68\,68\,0\.3\)\]{border-color:#ef44444d}.border-\[rgba\(255\,143\,122\,0\.24\)\]{border-color:#ff8f7a3d}.border-\[rgba\(255\,143\,122\,0\.25\)\]{border-color:#ff8f7a40}.border-\[rgba\(255\,180\,92\,0\.28\)\]{border-color:#ffb45c47}.border-\[rgba\(255\,255\,255\,0\.05\)\]{border-color:#ffffff0d}.border-\[rgba\(255\,255\,255\,0\.08\)\]{border-color:#ffffff14}.border-\[transparent\]{border-color:#0000}.border-\[var\(--border-soft\)\]{border-color:var(--border-soft)}.border-\[var\(--border-strong\)\]{border-color:var(--border-strong)}.border-\[var\(--color-accent\)\]{border-color:var(--color-accent)}.border-\[var\(--color-border-default\)\]{border-color:var(--color-border-default)}.border-\[var\(--color-border-subtle\)\]{border-color:var(--color-border-subtle)}.border-\[var\(--status-error\)\]\/30{border-color:var(--status-error)}@supports (color:color-mix(in lab,red,red)){.border-\[var\(--status-error\)\]\/30{border-color:color-mix(in oklab,var(--status-error) 30%,transparent)}}.border-\[var\(--vk-border\)\]{border-color:var(--vk-border)}.border-\[var\(--vk-orange\)\]{border-color:var(--vk-orange)}.border-\[var\(--vk-red\)\],.border-\[var\(--vk-red\)\]\/35{border-color:var(--vk-red)}@supports (color:color-mix(in lab,red,red)){.border-\[var\(--vk-red\)\]\/35{border-color:color-mix(in oklab,var(--vk-red) 35%,transparent)}}.border-\[var\(--vk-red\)\]\/40{border-color:var(--vk-red)}@supports (color:color-mix(in lab,red,red)){.border-\[var\(--vk-red\)\]\/40{border-color:color-mix(in oklab,var(--vk-red) 40%,transparent)}}.border-amber-400\/30{border-color:#fcbb004d}@supports (color:color-mix(in lab,red,red)){.border-amber-400\/30{border-color:color-mix(in oklab,var(--color-amber-400) 30%,transparent)}}.border-amber-500\/20{border-color:#f99c0033}@supports (color:color-mix(in lab,red,red)){.border-amber-500\/20{border-color:color-mix(in oklab,var(--color-amber-500) 20%,transparent)}}.border-emerald-400\/35{border-color:#00d29459}@supports (color:color-mix(in lab,red,red)){.border-emerald-400\/35{border-color:color-mix(in oklab,var(--color-emerald-400) 35%,transparent)}}.border-red-400\/35{border-color:#ff656859}@supports (color:color-mix(in lab,red,red)){.border-red-400\/35{border-color:color-mix(in oklab,var(--color-red-400) 35%,transparent)}}.border-red-500\/40{border-color:#fb2c3666}@supports (color:color-mix(in lab,red,red)){.border-red-500\/40{border-color:color-mix(in oklab,var(--color-red-500) 40%,transparent)}}.border-transparent{border-color:#0000}.border-white\/6{border-color:#ffffff0f}@supports (color:color-mix(in lab,red,red)){.border-white\/6{border-color:color-mix(in oklab,var(--color-white) 6%,transparent)}}.border-white\/8{border-color:#ffffff14}@supports (color:color-mix(in lab,red,red)){.border-white\/8{border-color:color-mix(in oklab,var(--color-white) 8%,transparent)}}.border-white\/10{border-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.border-white\/10{border-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}.border-white\/12{border-color:#ffffff1f}@supports (color:color-mix(in lab,red,red)){.border-white\/12{border-color:color-mix(in oklab,var(--color-white) 12%,transparent)}}.border-t-transparent{border-top-color:#0000}.border-l-\[var\(--status-working\)\]{border-left-color:var(--status-working)}.border-l-transparent{border-left-color:#0000}.bg-\[\#0c0808\]{background-color:#0c0808}.bg-\[\#0d0908\]{background-color:#0d0908}.bg-\[\#1c1a19\]{background-color:#1c1a19}.bg-\[\#3c83f6\]{background-color:#3c83f6}.bg-\[\#111\]{background-color:#111}.bg-\[\#060404\]{background-color:#060404}.bg-\[\#060404\]\/84{background-color:oklab(11.1012% .00545438 .00177752/.84)}.bg-\[\#101010\]{background-color:#101010}.bg-\[\#141010\]\/92{background-color:oklab(17.8024% .00638092 .00204849/.92)}.bg-\[\#161212\]{background-color:#161212}.bg-\[\#201818\]{background-color:#201818}.bg-\[color\:\#292929\]{background-color:#292929}.bg-\[color\:color-mix\(in_srgb\,var\(--border-strong\)_75\%\,transparent\)\]{background-color:var(--border-strong)}@supports (color:color-mix(in lab,red,red)){.bg-\[color\:color-mix\(in_srgb\,var\(--border-strong\)_75\%\,transparent\)\]{background-color:color-mix(in srgb,var(--border-strong) 75%,transparent)}}.bg-\[color\:color-mix\(in_srgb\,var\(--status-error\)_10\%\,transparent\)\]{background-color:var(--status-error)}@supports (color:color-mix(in lab,red,red)){.bg-\[color\:color-mix\(in_srgb\,var\(--status-error\)_10\%\,transparent\)\]{background-color:color-mix(in srgb,var(--status-error) 10%,transparent)}}.bg-\[color\:color-mix\(in_srgb\,var\(--vk-bg-panel\)_86\%\,transparent\)\]{background-color:var(--vk-bg-panel)}@supports (color:color-mix(in lab,red,red)){.bg-\[color\:color-mix\(in_srgb\,var\(--vk-bg-panel\)_86\%\,transparent\)\]{background-color:color-mix(in srgb,var(--vk-bg-panel) 86%,transparent)}}.bg-\[color\:color-mix\(in_srgb\,var\(--vk-bg-panel\)_88\%\,transparent\)\]{background-color:var(--vk-bg-panel)}@supports (color:color-mix(in lab,red,red)){.bg-\[color\:color-mix\(in_srgb\,var\(--vk-bg-panel\)_88\%\,transparent\)\]{background-color:color-mix(in srgb,var(--vk-bg-panel) 88%,transparent)}}.bg-\[color\:color-mix\(in_srgb\,var\(--vk-bg-panel\)_92\%\,transparent\)\]{background-color:var(--vk-bg-panel)}@supports (color:color-mix(in lab,red,red)){.bg-\[color\:color-mix\(in_srgb\,var\(--vk-bg-panel\)_92\%\,transparent\)\]{background-color:color-mix(in srgb,var(--vk-bg-panel) 92%,transparent)}}.bg-\[color\:color-mix\(in_srgb\,var\(--vk-bg-panel\)_94\%\,black_6\%\)\]{background-color:var(--vk-bg-panel)}@supports (color:color-mix(in lab,red,red)){.bg-\[color\:color-mix\(in_srgb\,var\(--vk-bg-panel\)_94\%\,black_6\%\)\]{background-color:color-mix(in srgb,var(--vk-bg-panel) 94%,black 6%)}}.bg-\[color\:color-mix\(in_srgb\,var\(--vk-green\)_10\%\,transparent\)\]{background-color:var(--vk-green)}@supports (color:color-mix(in lab,red,red)){.bg-\[color\:color-mix\(in_srgb\,var\(--vk-green\)_10\%\,transparent\)\]{background-color:color-mix(in srgb,var(--vk-green) 10%,transparent)}}.bg-\[color\:color-mix\(in_srgb\,var\(--vk-orange\)_10\%\,transparent\)\]{background-color:var(--vk-orange)}@supports (color:color-mix(in lab,red,red)){.bg-\[color\:color-mix\(in_srgb\,var\(--vk-orange\)_10\%\,transparent\)\]{background-color:color-mix(in srgb,var(--vk-orange) 10%,transparent)}}.bg-\[color\:color-mix\(in_srgb\,var\(--vk-orange\)_12\%\,transparent\)\]{background-color:var(--vk-orange)}@supports (color:color-mix(in lab,red,red)){.bg-\[color\:color-mix\(in_srgb\,var\(--vk-orange\)_12\%\,transparent\)\]{background-color:color-mix(in srgb,var(--vk-orange) 12%,transparent)}}.bg-\[color\:color-mix\(in_srgb\,var\(--vk-orange\)_18\%\,transparent\)\]{background-color:var(--vk-orange)}@supports (color:color-mix(in lab,red,red)){.bg-\[color\:color-mix\(in_srgb\,var\(--vk-orange\)_18\%\,transparent\)\]{background-color:color-mix(in srgb,var(--vk-orange) 18%,transparent)}}.bg-\[color\:color-mix\(in_srgb\,var\(--vk-red\)_10\%\,transparent\)\]{background-color:var(--vk-red)}@supports (color:color-mix(in lab,red,red)){.bg-\[color\:color-mix\(in_srgb\,var\(--vk-red\)_10\%\,transparent\)\]{background-color:color-mix(in srgb,var(--vk-red) 10%,transparent)}}.bg-\[color\:color-mix\(in_srgb\,var\(--vk-red\)_12\%\,transparent\)\]{background-color:var(--vk-red)}@supports (color:color-mix(in lab,red,red)){.bg-\[color\:color-mix\(in_srgb\,var\(--vk-red\)_12\%\,transparent\)\]{background-color:color-mix(in srgb,var(--vk-red) 12%,transparent)}}.bg-\[color\:color-mix\(in_srgb\,var\(--vk-red\)_18\%\,transparent\)\]{background-color:var(--vk-red)}@supports (color:color-mix(in lab,red,red)){.bg-\[color\:color-mix\(in_srgb\,var\(--vk-red\)_18\%\,transparent\)\]{background-color:color-mix(in srgb,var(--vk-red) 18%,transparent)}}.bg-\[color\:color-mix\(in_srgb\,var\(--vk-text-muted\)_36\%\,transparent\)\]{background-color:var(--vk-text-muted)}@supports (color:color-mix(in lab,red,red)){.bg-\[color\:color-mix\(in_srgb\,var\(--vk-text-muted\)_36\%\,transparent\)\]{background-color:color-mix(in srgb,var(--vk-text-muted) 36%,transparent)}}.bg-\[rgba\(0\,0\,0\,0\.08\)\]{background-color:#00000014}.bg-\[rgba\(0\,0\,0\,0\.12\)\]{background-color:#0000001f}.bg-\[rgba\(0\,0\,0\,0\.14\)\]{background-color:#00000024}.bg-\[rgba\(0\,0\,0\,0\.18\)\]{background-color:#0000002e}.bg-\[rgba\(15\,15\,15\,0\.52\)\]{background-color:#0f0f0f85}.bg-\[rgba\(15\,15\,15\,0\.72\)\]{background-color:#0f0f0fb8}.bg-\[rgba\(23\,25\,30\,0\.96\)\]{background-color:#17191ef5}.bg-\[rgba\(24\,197\,143\,0\.08\)\]{background-color:#18c58f14}.bg-\[rgba\(24\,197\,143\,0\.12\)\]{background-color:#18c58f1f}.bg-\[rgba\(28\,28\,28\,0\.8\)\]{background-color:#1c1c1ccc}.bg-\[rgba\(60\,131\,246\,0\.12\)\]{background-color:#3c83f61f}.bg-\[rgba\(80\,80\,80\,0\.18\)\]{background-color:#5050502e}.bg-\[rgba\(84\,176\,79\,0\.08\)\]{background-color:#54b04f14}.bg-\[rgba\(84\,176\,79\,0\.12\)\]{background-color:#54b04f1f}.bg-\[rgba\(108\,168\,255\,0\.08\)\]{background-color:#6ca8ff14}.bg-\[rgba\(143\,143\,143\,0\.10\)\]{background-color:#8f8f8f1a}.bg-\[rgba\(163\,113\,247\,0\.15\)\]{background-color:#a371f726}.bg-\[rgba\(210\,81\,81\,0\.08\)\]{background-color:#d2515114}.bg-\[rgba\(210\,81\,81\,0\.12\)\]{background-color:#d251511f}.bg-\[rgba\(210\,160\,59\,0\.08\)\]{background-color:#d2a03b14}.bg-\[rgba\(234\,122\,42\,0\.1\)\]{background-color:#ea7a2a1a}.bg-\[rgba\(234\,122\,42\,0\.06\)\]{background-color:#ea7a2a0f}.bg-\[rgba\(234\,122\,42\,0\.08\)\]{background-color:#ea7a2a14}.bg-\[rgba\(234\,122\,42\,0\.12\)\]{background-color:#ea7a2a1f}.bg-\[rgba\(245\,158\,11\,0\.1\)\]{background-color:#f59e0b1a}.bg-\[rgba\(255\,143\,122\,0\.08\)\]{background-color:#ff8f7a14}.bg-\[rgba\(255\,180\,92\,0\.10\)\]{background-color:#ffb45c1a}.bg-\[rgba\(255\,255\,255\,0\.1\)\]{background-color:#ffffff1a}.bg-\[rgba\(255\,255\,255\,0\.02\)\]{background-color:#ffffff05}.bg-\[rgba\(255\,255\,255\,0\.03\)\]{background-color:#ffffff08}.bg-\[rgba\(255\,255\,255\,0\.05\)\]{background-color:#ffffff0d}.bg-\[rgba\(255\,255\,255\,0\.06\)\]{background-color:#ffffff0f}.bg-\[rgba\(255\,255\,255\,0\.08\)\]{background-color:#ffffff14}.bg-\[var\(--bg-canvas\)\]{background-color:var(--bg-canvas)}.bg-\[var\(--bg-muted\)\]{background-color:var(--bg-muted)}.bg-\[var\(--bg-panel\)\]{background-color:var(--bg-panel)}.bg-\[var\(--bg-shell\)\]{background-color:var(--bg-shell)}.bg-\[var\(--border-soft\)\]{background-color:var(--border-soft)}.bg-\[var\(--color-accent\)\]{background-color:var(--color-accent)}.bg-\[var\(--color-accent-subtle\)\]{background-color:var(--color-accent-subtle)}.bg-\[var\(--color-bg-base\)\]{background-color:var(--color-bg-base)}.bg-\[var\(--color-bg-elevated\)\]{background-color:var(--color-bg-elevated)}.bg-\[var\(--status-error\)\]{background-color:var(--status-error)}.bg-\[var\(--status-idle\)\]{background-color:var(--status-idle)}.bg-\[var\(--status-ready\)\]{background-color:var(--status-ready)}.bg-\[var\(--status-working\)\]{background-color:var(--status-working)}.bg-\[var\(--vk-bg-active\)\]{background-color:var(--vk-bg-active)}.bg-\[var\(--vk-bg-hover\)\]{background-color:var(--vk-bg-hover)}.bg-\[var\(--vk-bg-main\)\]{background-color:var(--vk-bg-main)}.bg-\[var\(--vk-bg-panel\)\],.bg-\[var\(--vk-bg-panel\)\]\/70{background-color:var(--vk-bg-panel)}@supports (color:color-mix(in lab,red,red)){.bg-\[var\(--vk-bg-panel\)\]\/70{background-color:color-mix(in oklab,var(--vk-bg-panel) 70%,transparent)}}.bg-\[var\(--vk-bg-surface\)\]{background-color:var(--vk-bg-surface)}.bg-\[var\(--vk-border\)\]{background-color:var(--vk-border)}.bg-\[var\(--vk-green\)\]{background-color:var(--vk-green)}.bg-\[var\(--vk-orange\)\],.bg-\[var\(--vk-orange\)\]\/10{background-color:var(--vk-orange)}@supports (color:color-mix(in lab,red,red)){.bg-\[var\(--vk-orange\)\]\/10{background-color:color-mix(in oklab,var(--vk-orange) 10%,transparent)}}.bg-\[var\(--vk-orange\)\]\/12{background-color:var(--vk-orange)}@supports (color:color-mix(in lab,red,red)){.bg-\[var\(--vk-orange\)\]\/12{background-color:color-mix(in oklab,var(--vk-orange) 12%,transparent)}}.bg-\[var\(--vk-red\)\],.bg-\[var\(--vk-red\)\]\/10{background-color:var(--vk-red)}@supports (color:color-mix(in lab,red,red)){.bg-\[var\(--vk-red\)\]\/10{background-color:color-mix(in oklab,var(--vk-red) 10%,transparent)}}.bg-\[var\(--vk-text-muted\)\]{background-color:var(--vk-text-muted)}.bg-amber-400{background-color:var(--color-amber-400)}.bg-amber-400\/10{background-color:#fcbb001a}@supports (color:color-mix(in lab,red,red)){.bg-amber-400\/10{background-color:color-mix(in oklab,var(--color-amber-400) 10%,transparent)}}.bg-amber-500\/8{background-color:#f99c0014}@supports (color:color-mix(in lab,red,red)){.bg-amber-500\/8{background-color:color-mix(in oklab,var(--color-amber-500) 8%,transparent)}}.bg-black\/45{background-color:#00000073}@supports (color:color-mix(in lab,red,red)){.bg-black\/45{background-color:color-mix(in oklab,var(--color-black) 45%,transparent)}}.bg-black\/60{background-color:#0009}@supports (color:color-mix(in lab,red,red)){.bg-black\/60{background-color:color-mix(in oklab,var(--color-black) 60%,transparent)}}.bg-black\/65{background-color:#000000a6}@supports (color:color-mix(in lab,red,red)){.bg-black\/65{background-color:color-mix(in oklab,var(--color-black) 65%,transparent)}}.bg-black\/70{background-color:#000000b3}@supports (color:color-mix(in lab,red,red)){.bg-black\/70{background-color:color-mix(in oklab,var(--color-black) 70%,transparent)}}.bg-blue-400{background-color:var(--color-blue-400)}.bg-blue-500\/10{background-color:#3080ff1a}@supports (color:color-mix(in lab,red,red)){.bg-blue-500\/10{background-color:color-mix(in oklab,var(--color-blue-500) 10%,transparent)}}.bg-emerald-400{background-color:var(--color-emerald-400)}.bg-emerald-400\/10{background-color:#00d2941a}@supports (color:color-mix(in lab,red,red)){.bg-emerald-400\/10{background-color:color-mix(in oklab,var(--color-emerald-400) 10%,transparent)}}.bg-gray-400{background-color:var(--color-gray-400)}.bg-gray-500{background-color:var(--color-gray-500)}.bg-orange-500{background-color:var(--color-orange-500)}.bg-red-400{background-color:var(--color-red-400)}.bg-red-400\/10{background-color:#ff65681a}@supports (color:color-mix(in lab,red,red)){.bg-red-400\/10{background-color:color-mix(in oklab,var(--color-red-400) 10%,transparent)}}.bg-red-500\/10{background-color:#fb2c361a}@supports (color:color-mix(in lab,red,red)){.bg-red-500\/10{background-color:color-mix(in oklab,var(--color-red-500) 10%,transparent)}}.bg-transparent{background-color:#0000}.bg-white{background-color:var(--color-white)}.bg-white\/4{background-color:#ffffff0a}@supports (color:color-mix(in lab,red,red)){.bg-white\/4{background-color:color-mix(in oklab,var(--color-white) 4%,transparent)}}.bg-white\/90{background-color:#ffffffe6}@supports (color:color-mix(in lab,red,red)){.bg-white\/90{background-color:color-mix(in oklab,var(--color-white) 90%,transparent)}}.bg-\[linear-gradient\(135deg\,color-mix\(in_srgb\,var\(--bg-panel\)_88\%\,transparent\)\,color-mix\(in_srgb\,var\(--bg-surface\)_76\%\,transparent\)\)\]{background-image:linear-gradient(135deg,var(--bg-panel),var(--bg-surface))}@supports (color:color-mix(in lab,red,red)){.bg-\[linear-gradient\(135deg\,color-mix\(in_srgb\,var\(--bg-panel\)_88\%\,transparent\)\,color-mix\(in_srgb\,var\(--bg-surface\)_76\%\,transparent\)\)\]{background-image:linear-gradient(135deg,color-mix(in srgb,var(--bg-panel) 88%,transparent),color-mix(in srgb,var(--bg-surface) 76%,transparent))}}.bg-\[linear-gradient\(180deg\,rgba\(255\,255\,255\,0\.03\)\,rgba\(255\,255\,255\,0\)\)\]{background-image:linear-gradient(#ffffff08,#fff0)}.bg-\[linear-gradient\(180deg\,rgba\(255\,255\,255\,0\.05\)\,rgba\(255\,255\,255\,0\.02\)\)\]{background-image:linear-gradient(#ffffff0d,#ffffff05)}.object-contain{object-fit:contain}.object-cover{object-fit:cover}.p-0{padding:calc(var(--spacing) * 0)}.p-0\.5{padding:calc(var(--spacing) * .5)}.p-1{padding:calc(var(--spacing) * 1)}.p-1\.5{padding:calc(var(--spacing) * 1.5)}.p-2{padding:calc(var(--spacing) * 2)}.p-3{padding:calc(var(--spacing) * 3)}.p-4{padding:calc(var(--spacing) * 4)}.p-5{padding:calc(var(--spacing) * 5)}.p-6{padding:calc(var(--spacing) * 6)}.p-8{padding:calc(var(--spacing) * 8)}.p-\[1px\],.p-px{padding:1px}.px-0{padding-inline:calc(var(--spacing) * 0)}.px-0\.5{padding-inline:calc(var(--spacing) * .5)}.px-1{padding-inline:calc(var(--spacing) * 1)}.px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.px-2{padding-inline:calc(var(--spacing) * 2)}.px-2\.5{padding-inline:calc(var(--spacing) * 2.5)}.px-3{padding-inline:calc(var(--spacing) * 3)}.px-3\.5{padding-inline:calc(var(--spacing) * 3.5)}.px-4{padding-inline:calc(var(--spacing) * 4)}.px-5{padding-inline:calc(var(--spacing) * 5)}.px-6{padding-inline:calc(var(--spacing) * 6)}.px-\[8px\]{padding-inline:8px}.px-\[9px\]{padding-inline:9px}.py-0{padding-block:calc(var(--spacing) * 0)}.py-0\.5{padding-block:calc(var(--spacing) * .5)}.py-1{padding-block:calc(var(--spacing) * 1)}.py-1\.5{padding-block:calc(var(--spacing) * 1.5)}.py-2{padding-block:calc(var(--spacing) * 2)}.py-2\.5{padding-block:calc(var(--spacing) * 2.5)}.py-3{padding-block:calc(var(--spacing) * 3)}.py-4{padding-block:calc(var(--spacing) * 4)}.py-5{padding-block:calc(var(--spacing) * 5)}.py-6{padding-block:calc(var(--spacing) * 6)}.py-7{padding-block:calc(var(--spacing) * 7)}.py-8{padding-block:calc(var(--spacing) * 8)}.py-9{padding-block:calc(var(--spacing) * 9)}.py-10{padding-block:calc(var(--spacing) * 10)}.py-12{padding-block:calc(var(--spacing) * 12)}.py-24{padding-block:calc(var(--spacing) * 24)}.py-\[5px\]{padding-block:5px}.py-\[6\.5px\]{padding-block:6.5px}.\[padding-top\:env\(safe-area-inset-top\)\]{padding-top:env(safe-area-inset-top)}.pt-0{padding-top:calc(var(--spacing) * 0)}.pt-0\.5{padding-top:calc(var(--spacing) * .5)}.pt-1{padding-top:calc(var(--spacing) * 1)}.pt-1\.5{padding-top:calc(var(--spacing) * 1.5)}.pt-2{padding-top:calc(var(--spacing) * 2)}.pt-3{padding-top:calc(var(--spacing) * 3)}.pt-4{padding-top:calc(var(--spacing) * 4)}.pr-1{padding-right:calc(var(--spacing) * 1)}.pr-2{padding-right:calc(var(--spacing) * 2)}.pr-3{padding-right:calc(var(--spacing) * 3)}.pr-16{padding-right:calc(var(--spacing) * 16)}.pr-\[env\(safe-area-inset-right\)\]{padding-right:env(safe-area-inset-right)}.\[padding-bottom\:env\(safe-area-inset-bottom\)\]{padding-bottom:env(safe-area-inset-bottom)}.pb-0{padding-bottom:calc(var(--spacing) * 0)}.pb-1{padding-bottom:calc(var(--spacing) * 1)}.pb-1\.5{padding-bottom:calc(var(--spacing) * 1.5)}.pb-2{padding-bottom:calc(var(--spacing) * 2)}.pb-2\.5{padding-bottom:calc(var(--spacing) * 2.5)}.pb-3{padding-bottom:calc(var(--spacing) * 3)}.pb-4{padding-bottom:calc(var(--spacing) * 4)}.pb-6{padding-bottom:calc(var(--spacing) * 6)}.pb-\[9px\]{padding-bottom:9px}.pb-\[calc\(0\.75rem\+env\(safe-area-inset-bottom\)\)\]{padding-bottom:calc(.75rem + env(safe-area-inset-bottom))}.pl-7{padding-left:calc(var(--spacing) * 7)}.pl-10{padding-left:calc(var(--spacing) * 10)}.pl-14{padding-left:calc(var(--spacing) * 14)}.pl-\[env\(safe-area-inset-left\)\]{padding-left:env(safe-area-inset-left)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.align-top{vertical-align:top}.font-mono{font-family:var(--font-mono)}.font-sans{font-family:var(--font-sans)}.text-2xl{font-size:var(--text-2xl);line-height:var(--tw-leading,var(--text-2xl--line-height))}.text-3xl{font-size:var(--text-3xl);line-height:var(--tw-leading,var(--text-3xl--line-height))}.text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.text-base{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.text-sm{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.text-xl{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}.text-xs{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height))}.text-\[9px\]{font-size:9px}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[14px\]{font-size:14px}.text-\[15px\]{font-size:15px}.text-\[16px\]{font-size:16px}.text-\[17px\]{font-size:17px}.text-\[18px\]{font-size:18px}.text-\[20px\]{font-size:20px}.text-\[22px\]{font-size:22px}.text-\[24px\]{font-size:24px}.text-\[26px\]{font-size:26px}.text-\[30px\]{font-size:30px}.leading-4{--tw-leading:calc(var(--spacing) * 4);line-height:calc(var(--spacing) * 4)}.leading-5{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.leading-6{--tw-leading:calc(var(--spacing) * 6);line-height:calc(var(--spacing) * 6)}.leading-7{--tw-leading:calc(var(--spacing) * 7);line-height:calc(var(--spacing) * 7)}.leading-\[1\.02\]{--tw-leading:1.02;line-height:1.02}.leading-\[1\.05\]{--tw-leading:1.05;line-height:1.05}.leading-\[16px\]{--tw-leading:16px;line-height:16px}.leading-\[17px\]{--tw-leading:17px;line-height:17px}.leading-\[18px\]{--tw-leading:18px;line-height:18px}.leading-\[20px\]{--tw-leading:20px;line-height:20px}.leading-\[21px\]{--tw-leading:21px;line-height:21px}.leading-\[22px\]{--tw-leading:22px;line-height:22px}.leading-\[24px\]{--tw-leading:24px;line-height:24px}.leading-\[26px\]{--tw-leading:26px;line-height:26px}.leading-\[34px\]{--tw-leading:34px;line-height:34px}.leading-none{--tw-leading:1;line-height:1}.leading-relaxed{--tw-leading:var(--leading-relaxed);line-height:var(--leading-relaxed)}.leading-snug{--tw-leading:var(--leading-snug);line-height:var(--leading-snug)}.font-bold{--tw-font-weight:var(--font-weight-bold);font-weight:var(--font-weight-bold)}.font-medium{--tw-font-weight:var(--font-weight-medium);font-weight:var(--font-weight-medium)}.font-semibold{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.tracking-\[-0\.02em\]{--tw-tracking:-.02em;letter-spacing:-.02em}.tracking-\[-0\.03em\]{--tw-tracking:-.03em;letter-spacing:-.03em}.tracking-\[-0\.04em\]{--tw-tracking:-.04em;letter-spacing:-.04em}.tracking-\[-0\.05em\]{--tw-tracking:-.05em;letter-spacing:-.05em}.tracking-\[-0\.7px\]{--tw-tracking:-.7px;letter-spacing:-.7px}.tracking-\[0\.01em\]{--tw-tracking:.01em;letter-spacing:.01em}.tracking-\[0\.02em\]{--tw-tracking:.02em;letter-spacing:.02em}.tracking-\[0\.08em\]{--tw-tracking:.08em;letter-spacing:.08em}.tracking-\[0\.12em\]{--tw-tracking:.12em;letter-spacing:.12em}.tracking-\[0\.14em\]{--tw-tracking:.14em;letter-spacing:.14em}.tracking-\[0\.16em\]{--tw-tracking:.16em;letter-spacing:.16em}.tracking-\[0\.18em\]{--tw-tracking:.18em;letter-spacing:.18em}.tracking-\[0\.22em\]{--tw-tracking:.22em;letter-spacing:.22em}.tracking-\[0\.24em\]{--tw-tracking:.24em;letter-spacing:.24em}.tracking-\[0\.32em\]{--tw-tracking:.32em;letter-spacing:.32em}.tracking-wide{--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide)}.tracking-wider{--tw-tracking:var(--tracking-wider);letter-spacing:var(--tracking-wider)}.break-words{overflow-wrap:break-word}.break-all{word-break:break-all}.whitespace-nowrap{white-space:nowrap}.whitespace-pre{white-space:pre}.whitespace-pre-wrap{white-space:pre-wrap}.text-\[\#4e87f3\]{color:#4e87f3}.text-\[\#8b5cf6\]{color:#8b5cf6}.text-\[\#8db8ff\]{color:#8db8ff}.text-\[\#8e847d\]{color:#8e847d}.text-\[\#18c58f\]{color:#18c58f}.text-\[\#22a3f5\]{color:#22a3f5}.text-\[\#111111\]{color:#111}.text-\[\#a79c94\]{color:#a79c94}.text-\[\#c9c0b7\]{color:#c9c0b7}.text-\[\#d7c6b7\]{color:#d7c6b7}.text-\[\#efe8e1\]{color:#efe8e1}.text-\[\#f3efea\]{color:#f3efea}.text-\[\#f26d6d\]{color:#f26d6d}.text-\[\#ff8f7a\]{color:#ff8f7a}.text-\[\#ffb39e\]{color:#ffb39e}.text-\[\#ffd089\]{color:#ffd089}.text-\[var\(--accent\)\]{color:var(--accent)}.text-\[var\(--color-accent\)\]{color:var(--color-accent)}.text-\[var\(--color-accent-violet\)\]{color:var(--color-accent-violet)}.text-\[var\(--color-status-attention\)\]{color:var(--color-status-attention)}.text-\[var\(--color-status-error\)\]{color:var(--color-status-error)}.text-\[var\(--color-text-muted\)\]{color:var(--color-text-muted)}.text-\[var\(--color-text-primary\)\]{color:var(--color-text-primary)}.text-\[var\(--color-text-secondary\)\]{color:var(--color-text-secondary)}.text-\[var\(--color-text-tertiary\)\]{color:var(--color-text-tertiary)}.text-\[var\(--status-attention\)\]{color:var(--status-attention)}.text-\[var\(--status-error\)\]{color:var(--status-error)}.text-\[var\(--status-ready\)\]{color:var(--status-ready)}.text-\[var\(--status-working\)\]{color:var(--status-working)}.text-\[var\(--text-faint\)\]{color:var(--text-faint)}.text-\[var\(--text-muted\)\]{color:var(--text-muted)}.text-\[var\(--text-normal\)\]{color:var(--text-normal)}.text-\[var\(--text-strong\)\]{color:var(--text-strong)}.text-\[var\(--vk-green\)\]{color:var(--vk-green)}.text-\[var\(--vk-orange\)\]{color:var(--vk-orange)}.text-\[var\(--vk-red\)\]{color:var(--vk-red)}.text-\[var\(--vk-text-faint\)\]{color:var(--vk-text-faint)}.text-\[var\(--vk-text-muted\)\]{color:var(--vk-text-muted)}.text-\[var\(--vk-text-normal\)\]{color:var(--vk-text-normal)}.text-\[var\(--vk-text-strong\)\]{color:var(--vk-text-strong)}.text-amber-100{color:var(--color-amber-100)}.text-amber-300{color:var(--color-amber-300)}.text-amber-400\/70{color:#fcbb00b3}@supports (color:color-mix(in lab,red,red)){.text-amber-400\/70{color:color-mix(in oklab,var(--color-amber-400) 70%,transparent)}}.text-black{color:var(--color-black)}.text-current\/70{color:currentColor}@supports (color:color-mix(in lab,red,red)){.text-current\/70{color:color-mix(in oklab,currentcolor 70%,transparent)}}.text-emerald-100{color:var(--color-emerald-100)}.text-emerald-400{color:var(--color-emerald-400)}.text-red-100{color:var(--color-red-100)}.text-red-200{color:var(--color-red-200)}.text-red-400{color:var(--color-red-400)}.text-rose-300{color:var(--color-rose-300)}.text-rose-400{color:var(--color-rose-400)}.text-white{color:var(--color-white)}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.underline-offset-2{text-underline-offset:2px}.underline-offset-4{text-underline-offset:4px}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.placeholder-\[var\(--color-text-muted\)\]::placeholder{color:var(--color-text-muted)}.accent-\[var\(--vk-orange\)\]{accent-color:var(--vk-orange)}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-100{opacity:1}.shadow-\[0_0_0_1px_rgba\(0\,0\,0\,0\.2\)\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,#0003)}.shadow-\[0_0_0_1px_rgba\(0\,0\,0\,0\.2\)\],.shadow-\[0_0_0_1px_rgba\(0\,0\,0\,0\.5\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_0_0_1px_rgba\(0\,0\,0\,0\.5\)\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,#00000080)}.shadow-\[0_0_0_1px_rgba\(0\,0\,0\,0\.25\)\]{--tw-shadow:0 0 0 1px var(--tw-shadow-color,#00000040)}.shadow-\[0_0_0_1px_rgba\(0\,0\,0\,0\.25\)\],.shadow-\[0_10px_24px_rgba\(0\,0\,0\,0\.24\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_10px_24px_rgba\(0\,0\,0\,0\.24\)\]{--tw-shadow:0 10px 24px var(--tw-shadow-color,#0000003d)}.shadow-\[0_10px_24px_rgba\(0\,0\,0\,0\.28\)\]{--tw-shadow:0 10px 24px var(--tw-shadow-color,#00000047)}.shadow-\[0_10px_24px_rgba\(0\,0\,0\,0\.28\)\],.shadow-\[0_10px_30px_rgba\(0\,0\,0\,0\.28\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_10px_30px_rgba\(0\,0\,0\,0\.28\)\]{--tw-shadow:0 10px 30px var(--tw-shadow-color,#00000047)}.shadow-\[0_16px_40px_rgba\(0\,0\,0\,0\.35\)\]{--tw-shadow:0 16px 40px var(--tw-shadow-color,#00000059)}.shadow-\[0_16px_40px_rgba\(0\,0\,0\,0\.35\)\],.shadow-\[0_18px_36px_rgba\(0\,0\,0\,0\.2\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_18px_36px_rgba\(0\,0\,0\,0\.2\)\]{--tw-shadow:0 18px 36px var(--tw-shadow-color,#0003)}.shadow-\[0_18px_36px_rgba\(0\,0\,0\,0\.28\)\]{--tw-shadow:0 18px 36px var(--tw-shadow-color,#00000047)}.shadow-\[0_18px_36px_rgba\(0\,0\,0\,0\.28\)\],.shadow-\[0_18px_40px_rgba\(0\,0\,0\,0\.24\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_18px_40px_rgba\(0\,0\,0\,0\.24\)\]{--tw-shadow:0 18px 40px var(--tw-shadow-color,#0000003d)}.shadow-\[0_18px_40px_rgba\(0\,0\,0\,0\.28\)\]{--tw-shadow:0 18px 40px var(--tw-shadow-color,#00000047)}.shadow-\[0_18px_40px_rgba\(0\,0\,0\,0\.28\)\],.shadow-\[0_18px_50px_rgba\(0\,0\,0\,0\.18\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_18px_50px_rgba\(0\,0\,0\,0\.18\)\]{--tw-shadow:0 18px 50px var(--tw-shadow-color,#0000002e)}.shadow-\[0_18px_50px_rgba\(0\,0\,0\,0\.35\)\]{--tw-shadow:0 18px 50px var(--tw-shadow-color,#00000059)}.shadow-\[0_18px_50px_rgba\(0\,0\,0\,0\.35\)\],.shadow-\[0_18px_50px_rgba\(0\,0\,0\,0\.45\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_18px_50px_rgba\(0\,0\,0\,0\.45\)\]{--tw-shadow:0 18px 50px var(--tw-shadow-color,#00000073)}.shadow-\[0_20px_44px_rgba\(0\,0\,0\,0\.42\)\]{--tw-shadow:0 20px 44px var(--tw-shadow-color,#0000006b)}.shadow-\[0_20px_44px_rgba\(0\,0\,0\,0\.42\)\],.shadow-\[0_22px_48px_rgba\(0\,0\,0\,0\.34\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_22px_48px_rgba\(0\,0\,0\,0\.34\)\]{--tw-shadow:0 22px 48px var(--tw-shadow-color,#00000057)}.shadow-\[0_24px_48px_rgba\(0\,0\,0\,0\.34\)\]{--tw-shadow:0 24px 48px var(--tw-shadow-color,#00000057)}.shadow-\[0_24px_48px_rgba\(0\,0\,0\,0\.34\)\],.shadow-\[0_24px_80px_rgba\(0\,0\,0\,0\.55\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_24px_80px_rgba\(0\,0\,0\,0\.55\)\]{--tw-shadow:0 24px 80px var(--tw-shadow-color,#0000008c)}.shadow-\[0_28px_80px_rgba\(0\,0\,0\,0\.4\)\]{--tw-shadow:0 28px 80px var(--tw-shadow-color,#0006)}.shadow-\[0_28px_80px_rgba\(0\,0\,0\,0\.45\)\],.shadow-\[0_28px_80px_rgba\(0\,0\,0\,0\.4\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[0_28px_80px_rgba\(0\,0\,0\,0\.45\)\]{--tw-shadow:0 28px 80px var(--tw-shadow-color,#00000073)}.shadow-\[0_28px_90px_rgba\(0\,0\,0\,0\.55\)\]{--tw-shadow:0 28px 90px var(--tw-shadow-color,#0000008c)}.shadow-\[0_28px_90px_rgba\(0\,0\,0\,0\.55\)\],.shadow-\[var\(--shadow-soft\)\]{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.shadow-\[var\(--shadow-soft\)\]{--tw-shadow:var(--shadow-soft)}.shadow-none{--tw-shadow:0 0 #0000}.ring,.shadow-none{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.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{--tw-backdrop-blur:blur(8px)}.backdrop-blur,.backdrop-blur-sm{-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,)}.backdrop-blur-sm{--tw-backdrop-blur:blur(var(--blur-sm))}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-\[transform\,width\]{transition-property:transform,width;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.duration-150{--tw-duration:.15s;transition-duration:.15s}.duration-200{--tw-duration:.2s;transition-duration:.2s}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;user-select:none}.\[contain-intrinsic-size\:82px\]{contain-intrinsic-size:82px}.\[contain-intrinsic-size\:92px\]{contain-intrinsic-size:92px}.\[contain-intrinsic-size\:104px\]{contain-intrinsic-size:104px}.\[contain-intrinsic-size\:240px\]{contain-intrinsic-size:240px}.\[content-visibility\:auto\]{content-visibility:auto}.\[scrollbar-width\:none\]{scrollbar-width:none}@media (hover:hover){.group-hover\:opacity-100:is(:where(.group):hover *){opacity:1}}.marker\:hidden ::marker{display:none}.marker\:hidden::marker{display:none}.marker\:hidden ::-webkit-details-marker,.marker\:hidden::-webkit-details-marker{display:none}.placeholder\:text-\[\#7d746e\]::placeholder{color:#7d746e}.placeholder\:text-\[var\(--text-faint\)\]::placeholder{color:var(--text-faint)}.placeholder\:text-\[var\(--vk-text-muted\)\]::placeholder{color:var(--vk-text-muted)}.first\:border-t-0:first-child{border-top-style:var(--tw-border-style);border-top-width:0}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media (hover:hover){.hover\:border-\[var\(--color-border-strong\)\]:hover{border-color:var(--color-border-strong)}.hover\:border-\[var\(--vk-border\)\]:hover{border-color:var(--vk-border)}.hover\:bg-\[\#201818\]:hover{background-color:#201818}.hover\:bg-\[\#f4f4f5\]:hover{background-color:#f4f4f5}.hover\:bg-\[color\:color-mix\(in_srgb\,var\(--vk-red\)_24\%\,transparent\)\]:hover{background-color:var(--vk-red)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-\[color\:color-mix\(in_srgb\,var\(--vk-red\)_24\%\,transparent\)\]:hover{background-color:color-mix(in srgb,var(--vk-red) 24%,transparent)}}.hover\:bg-\[rgba\(239\,68\,68\,0\.08\)\]:hover{background-color:#ef444414}.hover\:bg-\[rgba\(255\,255\,255\,0\.06\)\]:hover{background-color:#ffffff0f}.hover\:bg-\[var\(--bg-panel-2\)\]:hover{background-color:var(--bg-panel-2)}.hover\:bg-\[var\(--border-strong\)\]:hover{background-color:var(--border-strong)}.hover\:bg-\[var\(--color-accent-subtle\)\]:hover{background-color:var(--color-accent-subtle)}.hover\:bg-\[var\(--vk-bg-active\)\]:hover{background-color:var(--vk-bg-active)}.hover\:bg-\[var\(--vk-bg-hover\)\]:hover{background-color:var(--vk-bg-hover)}.hover\:bg-\[var\(--vk-bg-panel\)\]:hover{background-color:var(--vk-bg-panel)}.hover\:bg-\[var\(--vk-border\)\]:hover{background-color:var(--vk-border)}.hover\:bg-\[var\(--vk-red\)\]\/10:hover{background-color:var(--vk-red)}@supports (color:color-mix(in lab,red,red)){.hover\:bg-\[var\(--vk-red\)\]\/10:hover{background-color:color-mix(in oklab,var(--vk-red) 10%,transparent)}}.hover\:bg-transparent:hover{background-color:#0000}.hover\:bg-white\/3:hover{background-color:#ffffff08}@supports (color:color-mix(in lab,red,red)){.hover\:bg-white\/3:hover{background-color:color-mix(in oklab,var(--color-white) 3%,transparent)}}.hover\:bg-white\/4:hover{background-color:#ffffff0a}@supports (color:color-mix(in lab,red,red)){.hover\:bg-white\/4:hover{background-color:color-mix(in oklab,var(--color-white) 4%,transparent)}}.hover\:bg-white\/6:hover{background-color:#ffffff0f}@supports (color:color-mix(in lab,red,red)){.hover\:bg-white\/6:hover{background-color:color-mix(in oklab,var(--color-white) 6%,transparent)}}.hover\:bg-\[linear-gradient\(135deg\,color-mix\(in_srgb\,var\(--bg-panel\)_96\%\,transparent\)\,color-mix\(in_srgb\,var\(--bg-surface\)_88\%\,transparent\)\)\]:hover{background-image:linear-gradient(135deg,var(--bg-panel),var(--bg-surface))}@supports (color:color-mix(in lab,red,red)){.hover\:bg-\[linear-gradient\(135deg\,color-mix\(in_srgb\,var\(--bg-panel\)_96\%\,transparent\)\,color-mix\(in_srgb\,var\(--bg-surface\)_88\%\,transparent\)\)\]:hover{background-image:linear-gradient(135deg,color-mix(in srgb,var(--bg-panel) 96%,transparent),color-mix(in srgb,var(--bg-surface) 88%,transparent))}}.hover\:text-\[\#c9c0b7\]:hover{color:#c9c0b7}.hover\:text-\[\#fff8f2\]:hover{color:#fff8f2}.hover\:text-\[var\(--accent-hover\)\]:hover{color:var(--accent-hover)}.hover\:text-\[var\(--color-text-primary\)\]:hover{color:var(--color-text-primary)}.hover\:text-\[var\(--text-strong\)\]:hover{color:var(--text-strong)}.hover\:text-\[var\(--vk-red\)\]:hover{color:var(--vk-red)}.hover\:text-\[var\(--vk-text-normal\)\]:hover{color:var(--vk-text-normal)}.hover\:text-\[var\(--vk-text-strong\)\]:hover{color:var(--vk-text-strong)}.hover\:no-underline:hover{text-decoration-line:none}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-80:hover{opacity:.8}.hover\:opacity-90:hover{opacity:.9}}.focus\:border-\[var\(--color-accent\)\]:focus{border-color:var(--color-accent)}.focus\:border-\[var\(--vk-orange\)\]:focus{border-color:var(--vk-orange)}.focus\:border-white\/20:focus{border-color:#fff3}@supports (color:color-mix(in lab,red,red)){.focus\:border-white\/20:focus{border-color:color-mix(in oklab,var(--color-white) 20%,transparent)}}.focus\:bg-\[rgba\(255\,255\,255\,0\.06\)\]:focus{background-color:#ffffff0f}.focus\:bg-\[var\(--vk-bg-hover\)\]:focus{background-color:var(--vk-bg-hover)}.focus-visible\:opacity-100:focus-visible{opacity:1}.focus-visible\:ring-1:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-\[var\(--vk-orange\)\]:focus-visible{--tw-ring-color:var(--vk-orange)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color)}.focus-visible\:ring-offset-\[\#111\]:focus-visible{--tw-ring-offset-color:#111}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.active\:bg-white\/6:active{background-color:#ffffff0f}@supports (color:color-mix(in lab,red,red)){.active\:bg-white\/6:active{background-color:color-mix(in oklab,var(--color-white) 6%,transparent)}}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-40:disabled{opacity:.4}.disabled\:opacity-45:disabled{opacity:.45}.disabled\:opacity-50:disabled{opacity:.5}.disabled\:opacity-60:disabled{opacity:.6}.data-\[state\=active\]\:bg-\[var\(--vk-bg-active\)\][data-state=active]{background-color:var(--vk-bg-active)}.data-\[state\=active\]\:text-\[var\(--vk-text-normal\)\][data-state=active]{color:var(--vk-text-normal)}.data-\[state\=inactive\]\:pointer-events-none[data-state=inactive]{pointer-events:none}.data-\[state\=inactive\]\:invisible[data-state=inactive]{visibility:hidden}.data-\[state\=inactive\]\:absolute[data-state=inactive]{position:absolute}.data-\[state\=inactive\]\:inset-0[data-state=inactive]{inset:calc(var(--spacing) * 0)}.data-\[state\=inactive\]\:opacity-0[data-state=inactive]{opacity:0}.data-\[state\=open\]\:bg-\[var\(--vk-bg-hover\)\][data-state=open]{background-color:var(--vk-bg-hover)}@media (min-width:40rem){.sm\:top-3{top:calc(var(--spacing) * 3)}.sm\:right-3{right:calc(var(--spacing) * 3)}.sm\:right-4{right:calc(var(--spacing) * 4)}.sm\:bottom-4{bottom:calc(var(--spacing) * 4)}.sm\:mx-0{margin-inline:calc(var(--spacing) * 0)}.sm\:ml-0{margin-left:calc(var(--spacing) * 0)}.sm\:ml-auto{margin-left:auto}.sm\:block{display:block}.sm\:hidden{display:none}.sm\:inline{display:inline}.sm\:inline-flex{display:inline-flex}.sm\:h-6{height:calc(var(--spacing) * 6)}.sm\:h-7{height:calc(var(--spacing) * 7)}.sm\:h-8{height:calc(var(--spacing) * 8)}.sm\:h-9{height:calc(var(--spacing) * 9)}.sm\:h-14{height:calc(var(--spacing) * 14)}.sm\:h-\[30px\]{height:30px}.sm\:h-\[31px\]{height:31px}.sm\:h-\[72vh\]{height:72vh}.sm\:h-\[260px\]{height:260px}.sm\:h-\[300px\]{height:300px}.sm\:h-\[min\(92vh\,760px\)\]{height:min(92vh,760px)}.sm\:h-auto{height:auto}.sm\:max-h-\[760px\]{max-height:760px}.sm\:max-h-\[calc\(100dvh-1\.5rem\)\]{max-height:calc(100dvh - 1.5rem)}.sm\:max-h-\[calc\(100dvh-3rem\)\]{max-height:calc(100dvh - 3rem)}.sm\:min-h-0{min-height:calc(var(--spacing) * 0)}.sm\:min-h-\[36px\]{min-height:36px}.sm\:min-h-\[220px\]{min-height:220px}.sm\:min-h-\[360px\]{min-height:360px}.sm\:w-6{width:calc(var(--spacing) * 6)}.sm\:w-7{width:calc(var(--spacing) * 7)}.sm\:w-8{width:calc(var(--spacing) * 8)}.sm\:w-9{width:calc(var(--spacing) * 9)}.sm\:w-\[220px\]{width:220px}.sm\:w-\[224px\]{width:224px}.sm\:w-\[240px\]{width:240px}.sm\:w-\[286px\]{width:286px}.sm\:w-\[320px\]{width:320px}.sm\:w-\[min\(90vw\,var\(--workspace-sidebar-width\)\)\]{width:min(90vw,var(--workspace-sidebar-width))}.sm\:w-auto{width:auto}.sm\:w-fit{width:fit-content}.sm\:w-full{width:100%}.sm\:max-w-\[28rem\]{max-width:28rem}.sm\:max-w-\[560px\]{max-width:560px}.sm\:max-w-\[860px\]{max-width:860px}.sm\:max-w-\[980px\]{max-width:980px}.sm\:max-w-\[1120px\]{max-width:1120px}.sm\:max-w-none{max-width:none}.sm\:min-w-\[200px\]{min-width:200px}.sm\:min-w-\[220px\]{min-width:220px}.sm\:min-w-\[280px\]{min-width:280px}.sm\:min-w-\[720px\]{min-width:720px}.sm\:flex-none{flex:none}.sm\:snap-none{scroll-snap-type:none}.sm\:snap-align-none{scroll-snap-align:none}.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:grid-cols-\[4rem_4rem_1\.5rem_minmax\(0\,1fr\)\]{grid-template-columns:4rem 4rem 1.5rem minmax(0,1fr)}.sm\:grid-cols-\[4rem_minmax\(0\,1fr\)_4rem_minmax\(0\,1fr\)\]{grid-template-columns:4rem minmax(0,1fr) 4rem minmax(0,1fr)}.sm\:grid-rows-\[minmax\(14rem\,18rem\)_minmax\(0\,1fr\)\]{grid-template-rows:minmax(14rem,18rem) minmax(0,1fr)}.sm\:flex-row{flex-direction:row}.sm\:flex-nowrap{flex-wrap:nowrap}.sm\:items-center{align-items:center}.sm\:items-end{align-items:flex-end}.sm\:items-start{align-items:flex-start}.sm\:justify-between{justify-content:space-between}.sm\:justify-end{justify-content:flex-end}.sm\:gap-2{gap:calc(var(--spacing) * 2)}.sm\:gap-3{gap:calc(var(--spacing) * 3)}:where(.sm\:space-y-1>:not(:last-child)){--tw-space-y-reverse:0;margin-block-start:calc(calc(var(--spacing) * 1) * var(--tw-space-y-reverse));margin-block-end:calc(calc(var(--spacing) * 1) * calc(1 - var(--tw-space-y-reverse)))}.sm\:overflow-auto{overflow:auto}.sm\:overflow-hidden{overflow:hidden}.sm\:rounded-\[6px\]{border-radius:6px}.sm\:rounded-\[10px\]{border-radius:10px}.sm\:border{border-style:var(--tw-border-style);border-width:1px}.sm\:border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.sm\:border-b-0{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.sm\:p-3{padding:calc(var(--spacing) * 3)}.sm\:p-4{padding:calc(var(--spacing) * 4)}.sm\:p-7{padding:calc(var(--spacing) * 7)}.sm\:p-8{padding:calc(var(--spacing) * 8)}.sm\:px-2{padding-inline:calc(var(--spacing) * 2)}.sm\:px-3{padding-inline:calc(var(--spacing) * 3)}.sm\:px-4{padding-inline:calc(var(--spacing) * 4)}.sm\:px-5{padding-inline:calc(var(--spacing) * 5)}.sm\:px-6{padding-inline:calc(var(--spacing) * 6)}.sm\:px-8{padding-inline:calc(var(--spacing) * 8)}.sm\:px-10{padding-inline:calc(var(--spacing) * 10)}.sm\:py-0{padding-block:calc(var(--spacing) * 0)}.sm\:py-3{padding-block:calc(var(--spacing) * 3)}.sm\:py-4{padding-block:calc(var(--spacing) * 4)}.sm\:py-5{padding-block:calc(var(--spacing) * 5)}.sm\:py-6{padding-block:calc(var(--spacing) * 6)}.sm\:py-10{padding-block:calc(var(--spacing) * 10)}.sm\:py-12{padding-block:calc(var(--spacing) * 12)}.sm\:py-16{padding-block:calc(var(--spacing) * 16)}.sm\:pt-3\.5{padding-top:calc(var(--spacing) * 3.5)}.sm\:pr-5{padding-right:calc(var(--spacing) * 5)}.sm\:pl-5{padding-left:calc(var(--spacing) * 5)}.sm\:text-center{text-align:center}.sm\:text-4xl{font-size:var(--text-4xl);line-height:var(--tw-leading,var(--text-4xl--line-height))}.sm\:text-lg{font-size:var(--text-lg);line-height:var(--tw-leading,var(--text-lg--line-height))}.sm\:text-\[12px\]{font-size:12px}.sm\:text-\[13px\]{font-size:13px}.sm\:text-\[14px\]{font-size:14px}.sm\:text-\[15px\]{font-size:15px}.sm\:text-\[27px\]{font-size:27px}.sm\:text-\[30px\]{font-size:30px}.sm\:text-\[36px\]{font-size:36px}.sm\:text-\[44px\]{font-size:44px}.sm\:leading-\[19px\]{--tw-leading:19px;line-height:19px}.sm\:leading-\[27px\]{--tw-leading:27px;line-height:27px}.sm\:leading-\[40px\]{--tw-leading:40px;line-height:40px}.sm\:tracking-\[-0\.9px\]{--tw-tracking:-.9px;letter-spacing:-.9px}}@media (min-width:48rem){.md\:col-span-2{grid-column:span 2/span 2}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:64rem){.lg\:relative{position:relative}.lg\:left-auto{left:auto}.lg\:col-span-2{grid-column:span 2/span 2}.lg\:block{display:block}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:inline{display:inline}.lg\:inline-flex{display:inline-flex}.lg\:w-0{width:calc(var(--spacing) * 0)}.lg\:w-\[var\(--workspace-sidebar-width\)\]{width:var(--workspace-sidebar-width)}.lg\:w-auto{width:auto}.lg\:max-w-\[320px\]{max-width:320px}.lg\:translate-x-0{--tw-translate-x:calc(var(--spacing) * 0);translate:var(--tw-translate-x) var(--tw-translate-y)}.lg\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.lg\:grid-cols-\[320px_minmax\(0\,1fr\)\]{grid-template-columns:320px minmax(0,1fr)}.lg\:grid-cols-\[minmax\(0\,1\.08fr\)_minmax\(0\,0\.92fr\)\]{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr)}.lg\:grid-cols-\[minmax\(0\,1\.45fr\)_minmax\(290px\,0\.95fr\)\]{grid-template-columns:minmax(0,1.45fr) minmax(290px,.95fr)}.lg\:grid-cols-\[minmax\(0\,1fr\)_320px\]{grid-template-columns:minmax(0,1fr) 320px}.lg\:grid-cols-\[minmax\(0\,1fr\)_400px\]{grid-template-columns:minmax(0,1fr) 400px}.lg\:grid-rows-1{grid-template-rows:repeat(1,minmax(0,1fr))}.lg\:flex-row{flex-direction:row}.lg\:items-center{align-items:center}.lg\:items-end{align-items:flex-end}.lg\:items-start{align-items:flex-start}.lg\:justify-between{justify-content:space-between}.lg\:justify-end{justify-content:flex-end}.lg\:justify-start{justify-content:flex-start}.lg\:gap-2{gap:calc(var(--spacing) * 2)}.lg\:overflow-hidden{overflow:hidden}.lg\:overflow-y-auto{overflow-y:auto}.lg\:rounded-\[14px\]{border-radius:14px}.lg\:border{border-style:var(--tw-border-style);border-width:1px}.lg\:border-r{border-right-style:var(--tw-border-style);border-right-width:1px}.lg\:border-r-0{border-right-style:var(--tw-border-style);border-right-width:0}.lg\:border-b-0{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.lg\:border-white\/8{border-color:#ffffff14}@supports (color:color-mix(in lab,red,red)){.lg\:border-white\/8{border-color:color-mix(in oklab,var(--color-white) 8%,transparent)}}.lg\:border-white\/10{border-color:#ffffff1a}@supports (color:color-mix(in lab,red,red)){.lg\:border-white\/10{border-color:color-mix(in oklab,var(--color-white) 10%,transparent)}}.lg\:p-3{padding:calc(var(--spacing) * 3)}.lg\:px-1\.5{padding-inline:calc(var(--spacing) * 1.5)}.lg\:px-3{padding-inline:calc(var(--spacing) * 3)}.lg\:pt-3{padding-top:calc(var(--spacing) * 3)}.lg\:pr-2{padding-right:calc(var(--spacing) * 2)}.lg\:pb-0{padding-bottom:calc(var(--spacing) * 0)}.lg\:pb-1{padding-bottom:calc(var(--spacing) * 1)}.lg\:shadow-\[inset_0_1px_0_rgba\(255\,255\,255\,0\.04\)\]{--tw-shadow:inset 0 1px 0 var(--tw-shadow-color,#ffffff0a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}}@media (min-width:80rem){.xl\:col-span-1{grid-column:span 1/span 1}.xl\:h-\[360px\]{height:360px}.xl\:w-auto{width:auto}.xl\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.xl\:grid-cols-\[220px_minmax\(0\,1fr\)\]{grid-template-columns:220px minmax(0,1fr)}.xl\:flex-row{flex-direction:row}.xl\:items-start{align-items:flex-start}.xl\:justify-between{justify-content:space-between}.xl\:justify-end{justify-content:flex-end}}.\[\&_\.shiki\]\:\!bg-transparent .shiki{background-color:#0000!important}.\[\&_\.shiki\]\:p-0 .shiki{padding:calc(var(--spacing) * 0)}.\[\&_\.xterm\]\:h-full .xterm{height:100%}.\[\&_\.xterm\]\:w-full .xterm{width:100%}.\[\&_\.xterm\]\:px-1 .xterm{padding-inline:calc(var(--spacing) * 1)}.\[\&_\.xterm-screen\]\:h-full .xterm-screen{height:100%}.\[\&_\.xterm-screen\]\:w-full .xterm-screen{width:100%}.\[\&_\.xterm-scrollable-element\]\:overscroll-contain .xterm-scrollable-element{overscroll-behavior:contain}.\[\&_\.xterm-scrollable-element\]\:\[-webkit-overflow-scrolling\:touch\] .xterm-scrollable-element{-webkit-overflow-scrolling:touch}.\[\&_\.xterm-viewport\]\:overflow-y-auto .xterm-viewport{overflow-y:auto}.\[\&_\.xterm-viewport\]\:overscroll-contain .xterm-viewport{overscroll-behavior:contain}.\[\&_\.xterm-viewport\]\:\[-webkit-overflow-scrolling\:touch\] .xterm-viewport{-webkit-overflow-scrolling:touch}.\[\&_code\]\:text-\[11px\] code{font-size:11px}.\[\&_code\]\:leading-5 code{--tw-leading:calc(var(--spacing) * 5);line-height:calc(var(--spacing) * 5)}.\[\&_pre\]\:\!bg-transparent pre{background-color:#0000!important}.\[\&_pre\]\:\!p-0 pre{padding:calc(var(--spacing) * 0)!important}.\[\&\:\:-webkit-scrollbar\]\:hidden::-webkit-scrollbar{display:none}.\[\&\[hidden\]\]\:block[hidden]{display:block}}:root{color-scheme:dark;--vk-bg-outer:#09090b;--vk-bg-main:#18181b;--vk-bg-panel:#111113;--vk-bg-hover:#27272a;--vk-bg-active:#3f3f46;--vk-border:#3f3f46;--vk-text-strong:#fafafa;--vk-text-normal:#d4d4d8;--vk-text-muted:#a1a1aa;--vk-orange:#a1a1aa;--vk-green:#54b04f;--vk-red:#d25151;--bg-canvas:var(--vk-bg-outer);--bg-shell:var(--vk-bg-main);--bg-surface:var(--vk-bg-main);--bg-panel:var(--vk-bg-panel);--bg-panel-2:var(--vk-bg-hover);--bg-muted:var(--vk-bg-active);--border-soft:var(--vk-border);--border-strong:#52525b;--text-strong:var(--vk-text-strong);--text-normal:var(--vk-text-normal);--text-muted:var(--vk-text-muted);--text-faint:#71717a;--text-inverse:#111;--accent:var(--vk-orange);--accent-hover:#d4d4d8;--accent-soft:var(--vk-orange)}@supports (color:color-mix(in lab,red,red)){:root{--accent-soft:color-mix(in srgb,var(--vk-orange) 18%,transparent)}}:root{--status-working:#6ca8ff;--status-ready:var(--vk-green);--status-attention:#d2a03b;--status-review:var(--vk-orange);--status-error:var(--vk-red);--status-idle:#a1a1aa;--shadow-card:none;--shadow-soft:none;--color-bg-base:var(--bg-canvas);--color-bg-surface:var(--bg-surface);--color-bg-elevated:var(--bg-panel);--color-bg-subtle:var(--bg-panel-2);--color-bg-secondary:var(--bg-muted);--color-border-subtle:var(--border-soft);--color-border-default:var(--border-soft);--color-border-strong:var(--border-strong);--color-text-primary:var(--text-strong);--color-text-secondary:var(--text-normal);--color-text-tertiary:var(--text-muted);--color-text-muted:var(--text-faint);--color-text-inverse:var(--text-inverse);--color-accent:var(--accent);--color-accent-hover:var(--accent-hover);--color-accent-subtle:var(--accent-soft);--color-status-working:var(--status-working);--color-status-ready:var(--status-ready);--color-status-attention:var(--status-attention);--color-status-error:var(--status-error);--color-status-idle:var(--status-idle);--color-status-done:var(--status-idle);--color-sidebar-bg:var(--bg-panel);--color-sidebar-border:var(--border-soft);--color-sidebar-hover:var(--vk-bg-hover);--color-sidebar-active:var(--accent-soft);--color-card-bg:var(--bg-panel);--color-card-bg-hover:var(--bg-panel-2);--color-card-border:var(--border-soft);--color-card-shadow:#0000}.light{color-scheme:dark}*{border-color:var(--border-soft)}body,html{min-height:100%}body{font-family:var(--font-sans),system-ui,sans-serif;color:var(--text-strong);background:linear-gradient(90deg,#09090b,#18181b);font-size:16px;line-height:1.4}.font-brand-display,.font-brand-header{font-family:var(--font-brand-display),var(--font-tomorrow),sans-serif}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover)}::selection{background:var(--accent-soft)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#3f3f46;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:#52525b}.surface-card,.surface-panel{border:1px solid var(--border-soft);background:var(--bg-panel)}@keyframes pulse-ring{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--status-working) 40%,transparent)}70%,to{box-shadow:0 0 0 8px #0000}}@keyframes run-dot{0%,80%,to{opacity:.3;transform:scale(.72)}40%{opacity:1;transform:scale(1)}}.attention-glow{animation:pulse-ring 1.8s ease-out infinite}@media (max-width:767px){input,select,textarea{font-size:16px!important}}@media (pointer:coarse){.overflow-auto,.overflow-x-auto,.overflow-y-auto{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}}body,html{overflow-x:hidden}.conductor-auth-form .cl-formButtonPrimary{color:var(--text-strong)!important;font-weight:700!important}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-pan-x{syntax:"*";inherits:false}@property --tw-pan-y{syntax:"*";inherits:false}@property --tw-pinch-zoom{syntax:"*";inherits:false}@property --tw-scroll-snap-strictness{syntax:"*";inherits:false;initial-value:proximity}@property --tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(1turn)}}@keyframes pulse{50%{opacity:.5}}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1399],{5881:(e,a,t)=>{t.d(a,{A:()=>r});let r=(0,t(13454).A)("dollar-sign",[["line",{x1:"12",x2:"12",y1:"2",y2:"22",key:"7eqyqh"}],["path",{d:"M17 5H9.5a3.5 3.5 0 0 0 0 7h5a3.5 3.5 0 0 1 0 7H6",key:"1b0p4s"}]])},7920:(e,a,t)=>{t.d(a,{A:()=>r});let r=(0,t(13454).A)("layout-dashboard",[["rect",{width:"7",height:"9",x:"3",y:"3",rx:"1",key:"10lvy0"}],["rect",{width:"7",height:"5",x:"14",y:"3",rx:"1",key:"16une8"}],["rect",{width:"7",height:"9",x:"14",y:"12",rx:"1",key:"1hutg5"}],["rect",{width:"7",height:"5",x:"3",y:"16",rx:"1",key:"ldoo1y"}]])},23555:(e,a,t)=>{t.d(a,{A:()=>r});let r=(0,t(13454).A)("search",[["path",{d:"m21 21-4.34-4.34",key:"14j7rj"}],["circle",{cx:"11",cy:"11",r:"8",key:"4ej97u"}]])},26083:(e,a,t)=>{t.d(a,{A:()=>r});let r=(0,t(13454).A)("external-link",[["path",{d:"M15 3h6v6",key:"1q9fwt"}],["path",{d:"M10 14 21 3",key:"gplh6r"}],["path",{d:"M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6",key:"a6xqqp"}]])},26463:(e,a,t)=>{t.d(a,{A:()=>r});let r=(0,t(13454).A)("folder",[["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]])},35131:(e,a,t)=>{t.d(a,{B8:()=>z,UC:()=>D,bL:()=>V,l9:()=>R});var r=t(7620),l=t(37188),i=t(55556),n=t(92119),d=t(98386),o=t(59947),h=t(22130),y=t(3198),c=t(30586),s=t(54568),u="Tabs",[k,p]=(0,i.A)(u,[n.RG]),x=(0,n.RG)(),[f,v]=k(u),A=r.forwardRef((e,a)=>{let{__scopeTabs:t,value:r,onValueChange:l,defaultValue:i,orientation:n="horizontal",dir:d,activationMode:k="automatic",...p}=e,x=(0,h.jH)(d),[v,A]=(0,y.i)({prop:r,onChange:l,defaultProp:i??"",caller:u});return(0,s.jsx)(f,{scope:t,baseId:(0,c.B)(),value:v,onValueChange:A,orientation:n,dir:x,activationMode:k,children:(0,s.jsx)(o.sG.div,{dir:x,"data-orientation":n,...p,ref:a})})});A.displayName=u;var b="TabsList",g=r.forwardRef((e,a)=>{let{__scopeTabs:t,loop:r=!0,...l}=e,i=v(b,t),d=x(t);return(0,s.jsx)(n.bL,{asChild:!0,...d,orientation:i.orientation,dir:i.dir,loop:r,children:(0,s.jsx)(o.sG.div,{role:"tablist","aria-orientation":i.orientation,...l,ref:a})})});g.displayName=b;var m="TabsTrigger",w=r.forwardRef((e,a)=>{let{__scopeTabs:t,value:r,disabled:i=!1,...d}=e,h=v(m,t),y=x(t),c=q(h.baseId,r),u=C(h.baseId,r),k=r===h.value;return(0,s.jsx)(n.q7,{asChild:!0,...y,focusable:!i,active:k,children:(0,s.jsx)(o.sG.button,{type:"button",role:"tab","aria-selected":k,"aria-controls":u,"data-state":k?"active":"inactive","data-disabled":i?"":void 0,disabled:i,id:c,...d,ref:a,onMouseDown:(0,l.mK)(e.onMouseDown,e=>{i||0!==e.button||!1!==e.ctrlKey?e.preventDefault():h.onValueChange(r)}),onKeyDown:(0,l.mK)(e.onKeyDown,e=>{[" ","Enter"].includes(e.key)&&h.onValueChange(r)}),onFocus:(0,l.mK)(e.onFocus,()=>{let e="manual"!==h.activationMode;k||i||!e||h.onValueChange(r)})})})});w.displayName=m;var M="TabsContent",j=r.forwardRef((e,a)=>{let{__scopeTabs:t,value:l,forceMount:i,children:n,...h}=e,y=v(M,t),c=q(y.baseId,l),u=C(y.baseId,l),k=l===y.value,p=r.useRef(k);return r.useEffect(()=>{let e=requestAnimationFrame(()=>p.current=!1);return()=>cancelAnimationFrame(e)},[]),(0,s.jsx)(d.C,{present:i||k,children:({present:t})=>(0,s.jsx)(o.sG.div,{"data-state":k?"active":"inactive","data-orientation":y.orientation,role:"tabpanel","aria-labelledby":c,hidden:!t,id:u,tabIndex:0,...h,ref:a,style:{...e.style,animationDuration:p.current?"0s":void 0},children:t&&n})})});function q(e,a){return`${e}-trigger-${a}`}function C(e,a){return`${e}-content-${a}`}j.displayName=M;var V=A,z=g,R=w,D=j},46548:(e,a,t)=>{t.d(a,{A:()=>r});let r=(0,t(13454).A)("sparkles",[["path",{d:"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z",key:"1s2grr"}],["path",{d:"M20 2v4",key:"1rf3ol"}],["path",{d:"M22 4h-4",key:"gwowj6"}],["circle",{cx:"4",cy:"20",r:"2",key:"6kqj1y"}]])},56050:(e,a,t)=>{t.d(a,{A:()=>r});let r=(0,t(13454).A)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]])},58588:(e,a,t)=>{t.d(a,{A:()=>r});let r=(0,t(13454).A)("git-branch",[["path",{d:"M15 6a9 9 0 0 0-9 9V3",key:"1cii5b"}],["circle",{cx:"18",cy:"6",r:"3",key:"1h7g24"}],["circle",{cx:"6",cy:"18",r:"3",key:"fqmcym"}]])},69863:(e,a,t)=>{t.d(a,{A:()=>r});let r=(0,t(13454).A)("square-terminal",[["path",{d:"m7 11 2-2-2-2",key:"1lz0vl"}],["path",{d:"M11 13h4",key:"1p7l4v"}],["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}]])},76265:(e,a,t)=>{t.d(a,{A:()=>r});let r=(0,t(13454).A)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]])},96249:(e,a,t)=>{t.d(a,{A:()=>r});let r=(0,t(13454).A)("file",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}]])},97380:(e,a,t)=>{t.d(a,{A:()=>r});let r=(0,t(13454).A)("globe",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M12 2a14.5 14.5 0 0 0 0 20 14.5 14.5 0 0 0 0-20",key:"13o1zl"}],["path",{d:"M2 12h20",key:"9i4pu4"}]])},99844:(e,a,t)=>{t.d(a,{A:()=>r});let r=(0,t(13454).A)("timer",[["line",{x1:"10",x2:"14",y1:"2",y2:"2",key:"14vaq8"}],["line",{x1:"12",x2:"15",y1:"14",y2:"11",key:"17fdiu"}],["circle",{cx:"12",cy:"14",r:"8",key:"1e1u0o"}]])}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1874],{2939:(e,a,t)=>{t.d(a,{A:()=>s});let s=(0,t(13454).A)("file-text",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]])},81874:(e,a,t)=>{t.r(a),t.d(a,{SessionSkills:()=>R});var s=t(54568),r=t(7620),l=t(2939),i=t(13454);let n=(0,i.A)("presentation",[["path",{d:"M2 3h20",key:"91anmk"}],["path",{d:"M21 3v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V3",key:"2k9sn8"}],["path",{d:"m7 21 5-5 5 5",key:"bip4we"}]]),d=(0,i.A)("table-2",[["path",{d:"M9 3H5a2 2 0 0 0-2 2v4m6-6h10a2 2 0 0 1 2 2v4M9 3v18m0 0h10a2 2 0 0 0 2-2V9M9 21H5a2 2 0 0 1-2-2V9m0 0h18",key:"gugj83"}]]),c=(0,i.A)("users-round",[["path",{d:"M18 21a8 8 0 0 0-16 0",key:"3ypg7q"}],["circle",{cx:"10",cy:"8",r:"5",key:"o932ke"}],["path",{d:"M22 20c0-3.37-2-6.5-4-8a5 5 0 0 0-.45-8.3",key:"10s06x"}]]),o=(0,i.A)("palette",[["path",{d:"M12 22a1 1 0 0 1 0-20 10 9 0 0 1 10 9 5 5 0 0 1-5 5h-2.25a1.75 1.75 0 0 0-1.4 2.8l.3.4a1.75 1.75 0 0 1-1.4 2.8z",key:"e79jfc"}],["circle",{cx:"13.5",cy:"6.5",r:".5",fill:"currentColor",key:"1okk4w"}],["circle",{cx:"17.5",cy:"10.5",r:".5",fill:"currentColor",key:"f64h9f"}],["circle",{cx:"6.5",cy:"12.5",r:".5",fill:"currentColor",key:"qy21gx"}],["circle",{cx:"8.5",cy:"7.5",r:".5",fill:"currentColor",key:"fotxhn"}]]),x=(0,i.A)("image",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}]]);var h=t(46548);let m=(0,i.A)("layout-grid",[["rect",{width:"7",height:"7",x:"3",y:"3",rx:"1",key:"1g98yp"}],["rect",{width:"7",height:"7",x:"14",y:"3",rx:"1",key:"6d4xhi"}],["rect",{width:"7",height:"7",x:"14",y:"14",rx:"1",key:"nxv5o0"}],["rect",{width:"7",height:"7",x:"3",y:"14",rx:"1",key:"1bb6yr"}]]),p=(0,i.A)("rocket",[["path",{d:"M12 15v5s3.03-.55 4-2c1.08-1.62 0-5 0-5",key:"qeys4"}],["path",{d:"M4.5 16.5c-1.5 1.26-2 5-2 5s3.74-.5 5-2c.71-.84.7-2.13-.09-2.91a2.18 2.18 0 0 0-2.91-.09",key:"u4xsad"}],["path",{d:"M9 12a22 22 0 0 1 2-3.95A12.88 12.88 0 0 1 22 2c0 2.72-.78 7.5-6 11a22.4 22.4 0 0 1-4 2z",key:"676m9"}],["path",{d:"M9 12H4s.55-3.03 2-4c1.62-1.08 5 .05 5 .05",key:"92ym6u"}]]),v=(0,i.A)("bug",[["path",{d:"M12 20v-9",key:"1qisl0"}],["path",{d:"M14 7a4 4 0 0 1 4 4v3a6 6 0 0 1-12 0v-3a4 4 0 0 1 4-4z",key:"uouzyp"}],["path",{d:"M14.12 3.88 16 2",key:"qol33r"}],["path",{d:"M21 21a4 4 0 0 0-3.81-4",key:"1b0z45"}],["path",{d:"M21 5a4 4 0 0 1-3.55 3.97",key:"5cxbf6"}],["path",{d:"M22 13h-4",key:"1jl80f"}],["path",{d:"M3 21a4 4 0 0 1 3.81-4",key:"1fjd4g"}],["path",{d:"M3 5a4 4 0 0 0 3.55 3.97",key:"1d7oge"}],["path",{d:"M6 13H2",key:"82j7cp"}],["path",{d:"m8 2 1.88 1.88",key:"fmnt4t"}],["path",{d:"M9 7.13V6a3 3 0 1 1 6 0v1.13",key:"1vgav8"}]]);var k=t(23555);let u=(0,i.A)("workflow",[["rect",{width:"8",height:"8",x:"3",y:"3",rx:"2",key:"by2w9f"}],["path",{d:"M7 11v4a2 2 0 0 0 2 2h4",key:"xkn7yn"}],["rect",{width:"8",height:"8",x:"13",y:"13",rx:"2",key:"1cgmvn"}]]),f=(0,i.A)("wand-sparkles",[["path",{d:"m21.64 3.64-1.28-1.28a1.21 1.21 0 0 0-1.72 0L2.36 18.64a1.21 1.21 0 0 0 0 1.72l1.28 1.28a1.2 1.2 0 0 0 1.72 0L21.64 5.36a1.2 1.2 0 0 0 0-1.72",key:"ul74o6"}],["path",{d:"m14 7 3 3",key:"1r5n42"}],["path",{d:"M5 6v4",key:"ilb8ba"}],["path",{d:"M19 14v4",key:"blhpug"}],["path",{d:"M10 2v2",key:"7u0qdc"}],["path",{d:"M7 8H3",key:"zfb6yr"}],["path",{d:"M21 16h-4",key:"1cnmox"}],["path",{d:"M11 3H9",key:"1obp7u"}]]),y=(0,i.A)("video",[["path",{d:"m16 13 5.223 3.482a.5.5 0 0 0 .777-.416V7.87a.5.5 0 0 0-.752-.432L16 10.5",key:"ftymec"}],["rect",{x:"2",y:"6",width:"14",height:"12",rx:"2",key:"158x01"}]]),g=(0,i.A)("megaphone",[["path",{d:"M11 6a13 13 0 0 0 8.4-2.8A1 1 0 0 1 21 4v12a1 1 0 0 1-1.6.8A13 13 0 0 0 11 14H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2z",key:"q8bfy3"}],["path",{d:"M6 14a12 12 0 0 0 2.4 7.2 2 2 0 0 0 3.2-2.4A8 8 0 0 1 10 14",key:"1853fq"}],["path",{d:"M8 6v8",key:"15ugcq"}]]);var b=t(97380);let w=(0,i.A)("book-open",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]]),j=(0,i.A)("notebook-pen",[["path",{d:"M13.4 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-7.4",key:"re6nr2"}],["path",{d:"M2 6h4",key:"aawbzj"}],["path",{d:"M2 10h4",key:"l0bgd4"}],["path",{d:"M2 14h4",key:"1gsvsf"}],["path",{d:"M2 18h4",key:"1bu2t1"}],["path",{d:"M21.378 5.626a1 1 0 1 0-3.004-3.004l-5.01 5.012a2 2 0 0 0-.506.854l-.837 2.87a.5.5 0 0 0 .62.62l2.87-.837a2 2 0 0 0 .854-.506z",key:"pqwjuv"}]]),N=(0,i.A)("cpu",[["path",{d:"M12 20v2",key:"1lh1kg"}],["path",{d:"M12 2v2",key:"tus03m"}],["path",{d:"M17 20v2",key:"1rnc9c"}],["path",{d:"M17 2v2",key:"11trls"}],["path",{d:"M2 12h2",key:"1t8f8n"}],["path",{d:"M2 17h2",key:"7oei6x"}],["path",{d:"M2 7h2",key:"asdhe0"}],["path",{d:"M20 12h2",key:"1q8mjw"}],["path",{d:"M20 17h2",key:"1fpfkl"}],["path",{d:"M20 7h2",key:"1o8tra"}],["path",{d:"M7 20v2",key:"4gnj0m"}],["path",{d:"M7 2v2",key:"1i4yhu"}],["rect",{x:"4",y:"4",width:"16",height:"16",rx:"2",key:"1vbyd7"}],["rect",{x:"8",y:"8",width:"8",height:"8",rx:"1",key:"z9xiuo"}]]);var M=t(58299),A=t(22061),C=t(87242),S=t(63322),z=t(31404),E=t(90986),I=t(76081),$=t(40443);let q={FileText:l.A,Presentation:n,Table2:d,UsersRound:c,Palette:o,Image:x,Sparkles:h.A,LayoutGrid:m,Rocket:p,Bug:v,Search:k.A,Workflow:u,Wand2:f,Video:y,Megaphone:g,Globe:b.A,BookOpen:w,NotebookPen:j},H=[l.A,w,b.A,m,o,k.A,h.A,f,u,j,c];async function U(e){let a=await e,t=await a.json().catch(()=>null);if(!a.ok)throw Error(function(e,a){if(e&&"object"==typeof e){if("string"==typeof e.error&&e.error.trim().length>0)return e.error;if("string"==typeof e.reason&&e.reason.trim().length>0)return e.reason}return`Request failed (${a})`}(t,a.status));return t}function L(e,a){return e instanceof Error?e.message:a}function R({session:e,sessionId:a,active:t}){let l=e.bridgeId??null,i=e.metadata.agent?.trim()||e.metadata.executor?.trim()||e.metadata.runtimeAgent?.trim()||"",n=e.metadata.workspacePath?.trim()||null,d="claude-code"===i,[c,o]=(0,r.useState)(""),[x,m]=(0,r.useState)(n?"workspace":"user"),[p,v]=(0,r.useState)([]),[u,f]=(0,r.useState)({}),[y,g]=(0,r.useState)([]),[b,w]=(0,r.useState)([]),[j,V]=(0,r.useState)(!0),[P,W]=(0,r.useState)(null),[_,D]=(0,r.useState)(null),F=(0,r.useCallback)(async(e={})=>{let{clearToast:s=!0}=e;if(t){V(!0),s&&D(null);try{let[e,t,s]=await Promise.allSettled([U(fetch("/api/skills/catalog",{cache:"no-store"})),U(fetch((0,z.S)(`/api/skills/installed?agent=${encodeURIComponent(i||"claude-code")}${n?`&workspacePath=${encodeURIComponent(n)}`:""}`,l),{cache:"no-store"})),U(fetch((0,z.S)(`/api/skills/session-active?sessionId=${encodeURIComponent(a)}`,l),{cache:"no-store"}))]),r=[];if("fulfilled"===e.status?v(Array.isArray(e.value.skills)?e.value.skills:[]):r.push(L(e.reason,"Failed to load skills catalog")),"fulfilled"===t.status){let e=Object.fromEntries((t.value.skills??[]).map(e=>[e.skillId,e]));f(e),w(t.value.customSkills??[])}else r.push(L(t.reason,"Failed to load installed skills"));"fulfilled"===s.status?g(s.value.skillIds??[]):r.push(L(s.reason,"Failed to load active session skills")),r.length>0&&D({kind:"error",message:r[0]})}catch(e){D({kind:"error",message:e instanceof Error?e.message:"Failed to load skills"})}finally{V(!1)}}},[t,i,l,a,n]);(0,r.useEffect)(()=>{F()},[F]);let T=(0,r.useMemo)(()=>{let e=c.trim().toLowerCase();return p.filter(a=>0===e.length||a.name.toLowerCase().includes(e)||a.summary.toLowerCase().includes(e)||a.category.toLowerCase().includes(e))},[p,c]),O=(0,r.useCallback)(async(e,t)=>{W(e.id),D(null);try{let s="activate"===t||"deactivate"===t?{sessionId:a,skillId:e.id}:{skillId:e.id,agent:i||"claude-code",scope:x,workspacePath:n,sessionId:a},r=await fetch((0,z.S)("install"===t?"/api/skills/install":"activate"===t?"/api/skills/activate":"deactivate"===t?"/api/skills/deactivate":"/api/skills/uninstall",l),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify(s)}),d=await r.json().catch(()=>({}));if(!r.ok)throw Error(d.error||"Skill action failed");let c={install:`${e.name} installed and activated for this session.`,activate:`${e.name} is active for this session.`,deactivate:`${e.name} is no longer active for this session.`,uninstall:`${e.name} was removed from ${x} scope.`};D({kind:"success",message:c[t]}),await F({clearToast:!1})}catch(e){D({kind:"error",message:e instanceof Error?e.message:"Skill action failed"})}finally{W(null)}},[i,l,F,x,a,n]),Z=j&&0===p.length,B=j&&p.length>0,G=c.trim().length>0;return(0,s.jsx)("div",{className:"flex h-full min-h-0 min-w-0 flex-col overflow-hidden",children:(0,s.jsx)("div",{className:"min-h-0 min-w-0 flex-1 overflow-y-auto overscroll-contain pb-4 touch-pan-y lg:overflow-hidden lg:pb-0",children:(0,s.jsxs)("div",{className:"flex min-h-full min-w-0 flex-col gap-3",children:[(0,s.jsx)($.Zp,{className:"min-w-0",children:(0,s.jsxs)($.aR,{className:"flex flex-col items-stretch gap-3",children:[(0,s.jsxs)("div",{className:"flex min-w-0 flex-col gap-3 lg:flex-row lg:items-start lg:justify-between",children:[(0,s.jsxs)("div",{className:"min-w-0 space-y-1.5",children:[(0,s.jsx)("h2",{className:"text-[15px] font-semibold text-[var(--vk-text-normal)]",children:"Skills"}),(0,s.jsx)("p",{className:"text-[13px] text-[var(--vk-text-muted)]",children:"Install Claude-style skills from the curated catalog on the paired device, detect what is already installed, and mark a skill as active for this session."})]}),(0,s.jsxs)("div",{className:"flex min-w-0 flex-col gap-2 text-[12px] text-[var(--vk-text-muted)] lg:items-end",children:[(0,s.jsxs)("div",{className:"flex min-w-0 items-center gap-2",children:[(0,s.jsx)(N,{className:"h-3.5 w-3.5 shrink-0"}),(0,s.jsxs)("span",{className:"min-w-0",children:["Agent: ",(0,s.jsx)("span",{className:"font-medium text-[var(--vk-text-normal)] break-words",children:i||"unknown"})]})]}),(0,s.jsxs)("div",{className:"min-w-0",children:["Device: ",(0,s.jsx)("span",{className:"font-medium text-[var(--vk-text-normal)] break-words",children:l??"local"})]}),(0,s.jsxs)("div",{className:"min-w-0 break-words",children:["Workspace: ",(0,s.jsx)("span",{className:"font-medium text-[var(--vk-text-normal)] break-words",children:n??"Unavailable"})]})]})]}),(0,s.jsxs)("div",{className:"flex min-w-0 flex-col gap-2 lg:flex-row lg:items-center lg:justify-between",children:[(0,s.jsxs)("label",{className:"flex w-full items-center gap-2 rounded-[14px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-3 py-2 text-[12px] text-[var(--vk-text-muted)]",children:[(0,s.jsx)(k.A,{className:"h-3.5 w-3.5 shrink-0"}),(0,s.jsx)("input",{value:c,onChange:e=>o(e.target.value),placeholder:"Search skills",className:"min-w-0 flex-1 bg-transparent text-[13px] text-[var(--vk-text-normal)] outline-none placeholder:text-[var(--vk-text-muted)]"})]}),(0,s.jsxs)("label",{className:"flex w-full items-center justify-between gap-2 text-[12px] text-[var(--vk-text-muted)] lg:w-auto lg:justify-start",children:[(0,s.jsx)("span",{className:"shrink-0",children:"Install scope"}),(0,s.jsxs)("select",{value:x,onChange:e=>m(e.target.value),className:"min-w-0 w-full rounded-[12px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-3 py-2 text-[13px] text-[var(--vk-text-normal)] lg:w-auto",children:[(0,s.jsx)("option",{value:"user",children:"User, ~/.claude/skills"}),(0,s.jsx)("option",{value:"workspace",disabled:!n,children:"Workspace, .claude/skills"})]})]})]}),d?null:(0,s.jsxs)("div",{className:"rounded-[14px] border border-amber-400/30 bg-amber-400/10 px-3 py-2 text-[12px] text-amber-100",children:["This first release installs Claude Code skills only. Current session agent is ",(0,s.jsx)("span",{className:"font-semibold",children:i||"unknown"}),"."]}),_?(0,s.jsx)("div",{className:`rounded-[14px] border px-3 py-2 text-[12px] ${"error"===_.kind?"border-red-400/35 bg-red-400/10 text-red-100":"border-emerald-400/35 bg-emerald-400/10 text-emerald-100"}`,children:_.message}):null,B?(0,s.jsx)("div",{className:"rounded-[14px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-3 py-2 text-[12px] text-[var(--vk-text-muted)]",children:"Refreshing skills..."}):null]})}),(0,s.jsxs)("div",{className:"grid min-h-0 min-w-0 flex-1 gap-3 lg:grid-cols-[minmax(0,1fr)_320px] lg:overflow-hidden",children:[(0,s.jsx)("div",{className:"min-h-0 min-w-0 rounded-[18px] border border-[var(--vk-border)] bg-[var(--vk-bg-surface)] p-3 lg:overflow-y-auto",children:(0,s.jsx)("div",{className:"space-y-3 lg:pr-2",children:Z?(0,s.jsxs)("div",{className:"flex min-h-[180px] items-center justify-center text-[13px] text-[var(--vk-text-muted)] sm:min-h-[220px]",children:[(0,s.jsx)(M.A,{className:"mr-2 h-4 w-4 animate-spin"})," Loading skills..."]}):0===T.length?(0,s.jsx)("div",{className:"flex min-h-[180px] items-center justify-center text-[13px] text-[var(--vk-text-muted)] sm:min-h-[220px]",children:G?"No matching skills found.":"No skills available."}):T.map(e=>{var a;let t,r=u[e.id],l=!!(r?.installedUser||r?.installedWorkspace),n=y.includes(e.id),c=P===e.id,o=!e.compatibleAgents.includes(i||"claude-code"),x=(a=e.icon,(t=a?.trim())&&q[t]?q[t]:h.A);return(0,s.jsxs)($.Zp,{className:"min-w-0 border-[var(--vk-border)] bg-[var(--vk-bg-main)]",children:[(0,s.jsxs)($.aR,{className:"flex flex-col items-stretch gap-3",children:[(0,s.jsxs)("div",{className:"flex min-w-0 flex-col gap-3 xl:flex-row xl:items-start xl:justify-between",children:[(0,s.jsxs)("div",{className:"flex min-w-0 gap-3",children:[(0,s.jsx)("div",{className:"flex h-10 w-10 shrink-0 items-center justify-center rounded-[14px] border border-[var(--vk-border)] bg-[var(--vk-bg-surface)] text-[var(--vk-text-normal)]",children:(0,s.jsx)(x,{className:"h-4 w-4"})}),(0,s.jsxs)("div",{className:"min-w-0 space-y-1.5",children:[(0,s.jsxs)("div",{className:"flex min-w-0 flex-wrap items-center gap-2",children:[(0,s.jsx)("h3",{className:"min-w-0 text-[14px] font-semibold text-[var(--vk-text-normal)]",children:e.name}),e.verified?(0,s.jsx)(E.E,{children:"Verified"}):(0,s.jsx)(E.E,{variant:"outline",children:"Community"}),(0,s.jsx)(E.E,{variant:"outline",children:e.category}),l?(0,s.jsx)(E.E,{variant:"outline",children:"Installed"}):null,n?(0,s.jsx)(E.E,{variant:"outline",children:"Active now"}):null,o?(0,s.jsx)(E.E,{variant:"outline",children:"Unsupported"}):null]}),(0,s.jsx)("p",{className:"text-[13px] text-[var(--vk-text-muted)]",children:e.summary})]})]}),(0,s.jsx)("div",{className:"flex w-full flex-wrap items-center gap-2 xl:w-auto xl:justify-end",children:(0,s.jsxs)("a",{href:e.docsUrl,target:"_blank",rel:"noopener noreferrer",className:"inline-flex items-center gap-1 text-[12px] text-[var(--vk-text-muted)] hover:text-[var(--vk-text-normal)]",children:["Docs ",(0,s.jsx)(A.A,{className:"h-3 w-3"})]})})]}),(0,s.jsx)("div",{className:"flex flex-wrap gap-2 text-[12px] text-[var(--vk-text-muted)]",children:e.compatibleAgents.map(e=>(0,s.jsx)(E.E,{variant:"outline",children:e},e))})]}),(0,s.jsxs)($.Wu,{className:"space-y-3",children:[r?.installPaths?.length?(0,s.jsxs)("div",{className:"rounded-[12px] border border-[var(--vk-border)] bg-[var(--vk-bg-surface)] px-3 py-2 text-[12px] text-[var(--vk-text-muted)] break-words",children:["Installed at: ",r.installPaths.join(" • ")]}):null,(0,s.jsxs)("div",{className:"flex flex-wrap gap-2",children:[l?n?(0,s.jsxs)(I.$,{type:"button",variant:"outline",size:"sm",disabled:c,onClick:()=>void O(e,"deactivate"),children:[c?(0,s.jsx)(M.A,{className:"mr-1 h-3.5 w-3.5 animate-spin"}):(0,s.jsx)(C.A,{className:"mr-1 h-3.5 w-3.5"})," Deactivate"]}):(0,s.jsxs)(I.$,{type:"button",size:"sm",disabled:c||o,onClick:()=>void O(e,"activate"),children:[c?(0,s.jsx)(M.A,{className:"mr-1 h-3.5 w-3.5 animate-spin"}):(0,s.jsx)(S.A,{className:"mr-1 h-3.5 w-3.5"})," Use in session"]}):(0,s.jsxs)(I.$,{type:"button",size:"sm",disabled:c||o||!d,onClick:()=>void O(e,"install"),children:[c?(0,s.jsx)(M.A,{className:"mr-1 h-3.5 w-3.5 animate-spin"}):(0,s.jsx)(S.A,{className:"mr-1 h-3.5 w-3.5"})," Install and use"]}),l?(0,s.jsxs)(I.$,{type:"button",variant:"outline",size:"sm",disabled:c,onClick:()=>void O(e,"uninstall"),children:[c?(0,s.jsx)(M.A,{className:"mr-1 h-3.5 w-3.5 animate-spin"}):null," Uninstall"]}):null]})]})]},e.id)})})}),(0,s.jsxs)($.Zp,{className:"min-h-0 min-w-0 border-[var(--vk-border)] bg-[var(--vk-bg-surface)] lg:overflow-y-auto",children:[(0,s.jsxs)($.aR,{className:"flex-col items-start gap-1.5",children:[(0,s.jsx)("h3",{className:"text-[14px] font-semibold text-[var(--vk-text-normal)]",children:"Detected custom skills"}),(0,s.jsx)("p",{className:"text-[13px] text-[var(--vk-text-muted)]",children:"Extra skill folders already present on the paired machine that do not match the curated catalog."})]}),(0,s.jsx)($.Wu,{className:"space-y-2 text-[13px] text-[var(--vk-text-muted)]",children:0===b.length?(0,s.jsx)("p",{children:"No custom skill folders detected."}):b.map(e=>{let a=function(e){if(0===e.trim().length)return h.A;let a=0;for(let t of e)a=(a<<5)-a+t.charCodeAt(0)|0;return H[Math.abs(a)%H.length]??h.A}(e.name);return(0,s.jsxs)("div",{className:"flex items-start gap-3 rounded-[12px] border border-[var(--vk-border)] bg-[var(--vk-bg-main)] px-3 py-2 break-words",children:[(0,s.jsx)("div",{className:"flex h-8 w-8 shrink-0 items-center justify-center rounded-[12px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] text-[var(--vk-text-muted)]",children:(0,s.jsx)(a,{className:"h-3.5 w-3.5"})}),(0,s.jsxs)("div",{className:"min-w-0",children:[(0,s.jsx)("div",{className:"font-medium text-[var(--vk-text-normal)]",children:e.name}),(0,s.jsxs)("div",{className:"text-[12px] text-[var(--vk-text-muted)] break-words",children:["Detected from ",e.source]})]})]},e.id)})})]})]})]})})})}},90986:(e,a,t)=>{t.d(a,{E:()=>i});var s=t(54568),r=t(46916);let l={default:"border-[var(--vk-border)] bg-[var(--vk-bg-panel)] text-[var(--vk-text-muted)]",success:"border-transparent bg-transparent text-[var(--vk-green)]",warning:"border-transparent bg-transparent text-[var(--vk-orange)]",error:"border-transparent bg-transparent text-[var(--vk-red)]",info:"border-transparent bg-transparent text-[var(--vk-text-muted)]",outline:"border-[var(--vk-border)] bg-transparent text-[var(--vk-text-muted)]"};function i({variant:e="default",className:a,children:t}){return(0,s.jsx)("span",{className:(0,r.cn)("inline-flex items-center gap-1 rounded-[3px] border px-1.5 py-0.5 text-[11px] leading-none",l[e],a),children:t})}}}]);
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[2452],{40443:(e,t,s)=>{s.d(t,{Wu:()=>r,Zp:()=>i,aR:()=>l});var a=s(54568),n=s(46916);let i=(0,s(7620).forwardRef)(({className:e,...t},s)=>(0,a.jsx)("div",{ref:s,className:(0,n.cn)("surface-card rounded-[var(--radius-md)] border",e),...t}));function l({className:e,...t}){return(0,a.jsx)("div",{className:(0,n.cn)("flex items-center gap-2 border-b border-[var(--vk-border)] px-3 py-2",e),...t})}function r({className:e,...t}){return(0,a.jsx)("div",{className:(0,n.cn)("px-3 py-2",e),...t})}i.displayName="Card"},42452:(e,t,s)=>{s.r(t),s.d(t,{SessionDetail:()=>ed});var a=s(54568),n=s(42925),i=s(7620),l=s(79748),r=s(7920),c=s(69863),o=s(97380),d=s(46548),x=s(90466),u=s(35131),m=s(46916);let h=u.bL,p=(0,i.forwardRef)(({className:e,...t},s)=>(0,a.jsx)(u.B8,{ref:s,className:(0,m.cn)("inline-flex max-w-full items-center gap-0.5 overflow-x-auto rounded-[3px] border border-[var(--vk-border)] bg-[var(--vk-bg-panel)] p-0.5 whitespace-nowrap touch-pan-x [scrollbar-width:none] [&::-webkit-scrollbar]:hidden",e),...t}));p.displayName="TabsList";let f=(0,i.forwardRef)(({className:e,...t},s)=>(0,a.jsx)(u.l9,{ref:s,className:(0,m.cn)("inline-flex min-h-[34px] shrink-0 items-center gap-1.5 rounded-[3px] px-2.5 py-1.5 text-[12px] text-[var(--vk-text-muted)]","data-[state=active]:bg-[var(--vk-bg-active)] data-[state=active]:text-[var(--vk-text-normal)]","hover:text-[var(--vk-text-normal)]","focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-[var(--vk-orange)]",e),...t}));f.displayName="TabsTrigger";let v=(0,i.forwardRef)(({className:e,...t},s)=>(0,a.jsx)(u.UC,{ref:s,className:(0,m.cn)("focus-visible:outline-none",e),...t}));v.displayName="TabsContent";var g=s(40443),b=s(76081),j=s(35821),w=s(34309),k=s(59706),N=s(34041),y=s(76265),S=s(45894),C=s(26463),$=s(96249),A=s(58299),I=s(56050),E=s(23555),_=s(60527),F=s(58588),M=s(99844),R=s(5881),L=s(90124);let D=(0,n.default)(()=>s.e(4535).then(s.bind(s,74535)).then(e=>e.SessionDiff),{loadableGenerated:{webpack:()=>[74535]},loading:()=>(0,a.jsx)("div",{className:"flex h-32 items-center justify-center text-[12px] text-[var(--vk-text-muted)]",children:"Loading changes…"}),ssr:!1});function q({text:e}){let[t,s]=(0,i.useState)(!1);async function n(){try{await navigator.clipboard.writeText(e),s(!0),window.setTimeout(()=>s(!1),1400)}catch{}}return(0,a.jsxs)("button",{type:"button",onClick:()=>void n(),className:"inline-flex max-w-[180px] items-center gap-1 font-mono text-[11px] text-[var(--vk-text-muted)] transition-colors hover:text-[var(--vk-text-normal)]",children:[(0,a.jsx)("span",{className:"truncate",children:e}),t?(0,a.jsx)(w.A,{className:"h-3 w-3 shrink-0 text-emerald-400"}):(0,a.jsx)(k.A,{className:"h-3 w-3 shrink-0 opacity-50"})]})}function P(e,t){let s=e.metadata[t];return"string"==typeof s&&s.trim().length>0?s:void 0}function T(e){if(!e)return null;let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:null}function U({node:e,depth:t,selectedPath:s,expandedDirs:n,onToggleDir:i,onSelectFile:l}){let r=n.has(e.path),c=e.path===s,o=8+16*t;return e.isDir?(0,a.jsxs)(a.Fragment,{children:[(0,a.jsxs)("button",{type:"button",onClick:()=>i(e.path),className:"flex w-full items-center gap-1.5 py-1.5 text-left text-[12px] text-[var(--vk-text-muted)] hover:bg-white/4 active:bg-white/6",style:{paddingLeft:o},children:[r?(0,a.jsx)(N.A,{className:"h-3 w-3 shrink-0 opacity-50"}):(0,a.jsx)(y.A,{className:"h-3 w-3 shrink-0 opacity-50"}),r?(0,a.jsx)(S.A,{className:"h-3.5 w-3.5 shrink-0 text-amber-400/70"}):(0,a.jsx)(C.A,{className:"h-3.5 w-3.5 shrink-0 text-amber-400/70"}),(0,a.jsx)("span",{className:"truncate",children:e.name})]}),r?e.children.map(e=>(0,a.jsx)(U,{node:e,depth:t+1,selectedPath:s,expandedDirs:n,onToggleDir:i,onSelectFile:l},e.path)):null]}):(0,a.jsxs)("button",{type:"button",onClick:()=>l(e.path),className:`flex w-full items-center gap-1.5 py-1.5 pr-2 text-left text-[12px] transition-colors ${c?"bg-blue-500/10 text-[var(--vk-text-strong)]":"text-[var(--vk-text-normal)] hover:bg-white/4"}`,style:{paddingLeft:o+16},children:[(0,a.jsx)($.A,{className:"h-3.5 w-3.5 shrink-0 text-[var(--vk-text-muted)]"}),(0,a.jsx)("span",{className:"truncate",children:e.name})]})}let O={js:"javascript",jsx:"jsx",ts:"typescript",tsx:"tsx",mjs:"javascript",cjs:"javascript",mts:"typescript",cts:"typescript",html:"html",htm:"html",css:"css",scss:"scss",sass:"sass",less:"less",vue:"vue",svelte:"svelte",astro:"astro",json:"json",jsonc:"jsonc",json5:"json5",yaml:"yaml",yml:"yaml",toml:"toml",ini:"ini",xml:"xml",svg:"xml",plist:"xml",csv:"csv",tsv:"csv",md:"markdown",mdx:"mdx",tex:"latex",rst:"rst",rs:"rust",go:"go",c:"c",h:"c",cpp:"cpp",cc:"cpp",cxx:"cpp",hpp:"cpp",hh:"cpp",cs:"csharp",java:"java",kt:"kotlin",kts:"kotlin",scala:"scala",swift:"swift",m:"objective-c",mm:"objective-cpp",zig:"zig",nim:"nim",v:"v",d:"d",py:"python",pyi:"python",rb:"ruby",php:"php",pl:"perl",pm:"perl",lua:"lua",r:"r",R:"r",jl:"julia",ex:"elixir",exs:"elixir",erl:"erlang",hrl:"erlang",hs:"haskell",lhs:"haskell",clj:"clojure",cljs:"clojure",ml:"ocaml",mli:"ocaml",fs:"fsharp",fsx:"fsharp",sh:"bash",bash:"bash",zsh:"bash",fish:"fish",ps1:"powershell",psm1:"powershell",bat:"bat",cmd:"bat",dockerfile:"dockerfile",containerfile:"dockerfile",tf:"hcl",hcl:"hcl",nix:"nix",sql:"sql",graphql:"graphql",gql:"graphql",prisma:"prisma",proto:"protobuf",thrift:"thrift",makefile:"makefile",cmake:"cmake",asm:"asm",s:"asm",diff:"diff",patch:"diff",log:"log",txt:"plaintext",env:"dotenv",lock:"json"},z={makefile:"makefile",Makefile:"makefile",dockerfile:"dockerfile",Dockerfile:"dockerfile",containerfile:"dockerfile",Containerfile:"dockerfile",gemfile:"ruby",Gemfile:"ruby",rakefile:"ruby",Rakefile:"ruby",cmakelists:"cmake",CMakeLists:"cmake",".gitignore":"gitignore",".dockerignore":"gitignore",".editorconfig":"ini",".prettierrc":"json",".eslintrc":"json",".babelrc":"json",".env":"dotenv",".env.local":"dotenv",".env.production":"dotenv","tsconfig.json":"jsonc","jsconfig.json":"jsonc"},W=new Set(["png","jpg","jpeg","gif","webp","svg","ico","bmp","avif"]);function B(e){let t=e.split("/").pop()??"",s=t.lastIndexOf(".");return s>=0?t.slice(s+1).toLowerCase():""}function Z({code:e,lang:t}){let[n,l]=(0,i.useState)(null),r=(0,i.useRef)(e),c=(0,i.useRef)(t);if((0,i.useEffect)(()=>{r.current=e,c.current=t;let a=!1;return(async()=>{try{let{codeToHtml:n}=await s.e(2228).then(s.bind(s,42228));if(a)return;let i=await n(e,{lang:t,theme:"github-dark-default"});a||r.current!==e||c.current!==t||l(i)}catch{if(a)return;try{let{codeToHtml:t}=await s.e(2228).then(s.bind(s,42228));if(a)return;let n=await t(e,{lang:"plaintext",theme:"github-dark-default"});a||l(n)}catch{a||l(null)}}})(),()=>{a=!0}},[e,t]),!n){let t=e.split("\n"),s=String(t.length).length;return(0,a.jsx)("div",{className:"inline-block min-w-full align-top",children:(0,a.jsx)("table",{className:"min-w-full border-collapse font-mono text-[11px] leading-5",children:(0,a.jsx)("tbody",{children:t.map((e,t)=>(0,a.jsxs)("tr",{className:"hover:bg-white/3",children:[(0,a.jsx)("td",{className:"select-none whitespace-nowrap border-r border-white/6 px-2 text-right text-[var(--vk-text-muted)] opacity-40",style:{minWidth:`${s+2}ch`},children:t+1}),(0,a.jsx)("td",{className:"whitespace-pre px-3 text-[var(--vk-text-normal)]",children:e||"\xa0"})]},t))})})})}return(0,a.jsx)("div",{className:"shiki-viewer inline-block min-w-full align-top [&_.shiki]:!bg-transparent [&_.shiki]:p-0 [&_code]:text-[11px] [&_code]:leading-5 [&_pre]:!bg-transparent [&_pre]:!p-0",dangerouslySetInnerHTML:{__html:n}})}function G({sessionId:e,filePath:t}){let[s,n]=(0,i.useState)(null),[l,r]=(0,i.useState)(!0),[c,o]=(0,i.useState)(null),[d,x]=(0,i.useState)(!1),[u,m]=(0,i.useState)(!1),[h,p]=(0,i.useState)(0);if((0,i.useEffect)(()=>{let s=!1;r(!0),o(null),n(null),x(!1),m(!1),p(0);let a=new URLSearchParams({path:t});return fetch(`/api/sessions/${encodeURIComponent(e)}/files?${a.toString()}`,{cache:"no-store"}).then(async e=>{if(!e.ok)throw Error(`Failed to load file (${e.status})`);return e.json()}).then(e=>{s||(e.binary?x(!0):n("string"==typeof e.content?e.content:""),m(!!e.truncated),p("number"==typeof e.size?e.size:0))}).catch(e=>{s||o(e instanceof Error?e.message:"Failed to load file")}).finally(()=>{s||r(!1)}),()=>{s=!0}},[e,t]),l)return(0,a.jsxs)("div",{className:"flex h-full items-center justify-center gap-2 text-[12px] text-[var(--vk-text-muted)]",children:[(0,a.jsx)(A.A,{className:"h-4 w-4 animate-spin"}),"Loading…"]});if(c)return(0,a.jsx)("div",{className:"flex h-full items-center justify-center px-4 text-center text-[12px] text-red-400",children:c});if(d&&W.has(B(t))){let s=new URLSearchParams({path:t,raw:"1"}),n=`/api/sessions/${encodeURIComponent(e)}/files?${s.toString()}`;return(0,a.jsxs)("div",{className:"flex h-full flex-col items-center justify-center gap-3 p-4",children:[(0,a.jsx)("img",{src:n,alt:t,className:"max-h-[60vh] max-w-full rounded-md object-contain"}),(0,a.jsxs)("span",{className:"text-[11px] text-[var(--vk-text-muted)]",children:[t.split("/").pop(),h>0?` \xb7 ${J(h)}`:""]})]})}if(d){let e=B(t);return(0,a.jsxs)("div",{className:"flex h-full flex-col items-center justify-center gap-2 px-4 text-center",children:[(0,a.jsx)("div",{className:"rounded-lg bg-white/4 p-4",children:(0,a.jsx)($.A,{className:"mx-auto h-8 w-8 text-[var(--vk-text-muted)]"})}),(0,a.jsxs)("p",{className:"text-[12px] text-[var(--vk-text-muted)]",children:["Binary file",e?` (.${e})`:""," — preview not available"]}),h>0?(0,a.jsx)("p",{className:"text-[11px] text-[var(--vk-text-muted)] opacity-60",children:J(h)}):null]})}let f=function(e){let t=e.split("/").pop()??"";if(z[t])return z[t];let s=t.lastIndexOf(".");if(s>=0){let e=t.slice(s+1).toLowerCase();if(O[e])return O[e]}return"plaintext"}(t);return(0,a.jsxs)("div",{className:"flex h-full min-h-0 min-w-0 flex-col",children:[u?(0,a.jsxs)("div",{className:"shrink-0 border-b border-amber-500/20 bg-amber-500/8 px-3 py-1 text-[11px] text-amber-300",children:["File truncated",h>0?` (${J(h)} total)`:""]}):null,(0,a.jsx)("div",{className:"min-h-0 min-w-0 flex-1 overflow-auto overscroll-contain touch-pan-x touch-pan-y py-2",children:(0,a.jsx)(Z,{code:s??"",lang:f})})]})}function J(e){return e<1024?`${e} B`:e<1048576?`${(e/1024).toFixed(1)} KB`:`${(e/1048576).toFixed(1)} MB`}function V({sessionId:e,active:t}){let[s,n]=(0,i.useState)([]),[l,r]=(0,i.useState)(!0),[c,o]=(0,i.useState)(null),[d,x]=(0,i.useState)(!1),[u,m]=(0,i.useState)(""),[h,p]=(0,i.useState)(null),[f,v]=(0,i.useState)(new Set),g=(0,i.useRef)(!0),b=(0,i.useCallback)(async()=>{try{r(!0);let t=await fetch(`/api/sessions/${encodeURIComponent(e)}/files`,{cache:"no-store"});if(!t.ok)throw Error(`Failed to load files (${t.status})`);let s=await t.json();if(!g.current)return;n(s.files??[]),x(!!s.truncated),o(null)}catch(e){if(!g.current)return;o(e instanceof Error?e.message:"Failed to load files")}finally{g.current&&r(!1)}},[e]);(0,i.useEffect)(()=>(g.current=!0,t&&b(),()=>{g.current=!1}),[t,b]);let j=(0,i.useMemo)(()=>(function(e){let t={name:"",path:"",children:[],isDir:!0};for(let s of e){let e=s.split("/"),a=t,n="";for(let t=0;t<e.length;t++){let s=e[t];n=n?`${n}/${s}`:s;let i=t===e.length-1,l=a.children.find(e=>e.name===s);l||(l={name:s,path:n,children:[],isDir:!i},a.children.push(l)),a=l}}return function e(t){for(let s of(t.sort((e,t)=>e.isDir!==t.isDir?e.isDir?-1:1:e.name.localeCompare(t.name,void 0,{sensitivity:"base"})),t))s.children.length>0&&e(s.children);return t}(t.children)})(s),[s]),w=(0,i.useMemo)(()=>(function(e,t){if(!t)return e;let s=t.toLowerCase();return function e(t){let a=[];for(let n of t)(function e(t){return!!(t.name.toLowerCase().includes(s)||t.path.toLowerCase().includes(s))||t.children.some(e)})(n)&&(n.isDir?a.push({...n,children:e(n.children)}):a.push(n));return a}(e)})(j,u.trim()),[j,u]);(0,i.useEffect)(()=>{if(u.trim()){let e=new Set;!function t(s){for(let a of s)a.isDir&&(e.add(a.path),t(a.children))}(w),v(e)}},[w,u]);let k=(0,i.useCallback)(e=>{v(t=>{let s=new Set(t);return s.has(e)?s.delete(e):s.add(e),s})},[]),N=(0,i.useCallback)(e=>{p(e)},[]),y=(0,i.useCallback)(()=>{p(null)},[]);if(l&&0===s.length)return(0,a.jsxs)("div",{className:"flex h-full items-center justify-center gap-2 text-[12px] text-[var(--vk-text-muted)]",children:[(0,a.jsx)(A.A,{className:"h-4 w-4 animate-spin"}),"Loading workspace files…"]});if(c)return(0,a.jsxs)("div",{className:"flex h-full flex-col items-center justify-center gap-2 p-4 text-center",children:[(0,a.jsx)("p",{className:"text-[12px] text-red-400",children:c}),(0,a.jsx)("button",{type:"button",onClick:()=>void b(),className:"text-[11px] text-[var(--vk-text-muted)] underline hover:text-[var(--vk-text-normal)]",children:"Retry"})]});let S=h?(0,a.jsxs)("div",{className:"flex h-full min-h-0 min-w-0 flex-col lg:hidden",children:[(0,a.jsxs)("div",{className:"flex shrink-0 items-center gap-2 border-b border-white/8 px-2 py-2",children:[(0,a.jsx)("button",{type:"button",onClick:y,className:"inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-md text-[var(--vk-text-muted)] hover:bg-white/6","aria-label":"Back to file list",children:(0,a.jsx)(I.A,{className:"h-4 w-4"})}),(0,a.jsx)($.A,{className:"h-3.5 w-3.5 shrink-0 text-[var(--vk-text-muted)]"}),(0,a.jsx)("span",{className:"truncate font-mono text-[11px] text-[var(--vk-text-strong)]",children:h})]}),(0,a.jsx)("div",{className:"min-h-0 min-w-0 flex-1 overflow-hidden",children:(0,a.jsx)(G,{sessionId:e,filePath:h})})]}):null;return(0,a.jsxs)("div",{className:"flex h-full min-h-0 flex-col overflow-y-auto overscroll-contain lg:overflow-hidden",children:[S,(0,a.jsxs)("div",{className:`flex shrink-0 items-center gap-2 border-b border-white/8 px-2 py-1.5 ${h?"hidden lg:flex":""}`,children:[(0,a.jsxs)("div",{className:"flex min-w-0 flex-1 items-center gap-1.5 rounded-md bg-white/4 px-2 py-1.5",children:[(0,a.jsx)(E.A,{className:"h-3.5 w-3.5 shrink-0 text-[var(--vk-text-muted)]"}),(0,a.jsx)("input",{type:"text",value:u,onChange:e=>m(e.target.value),placeholder:"Search files…",className:"min-w-0 flex-1 bg-transparent text-[12px] text-[var(--vk-text-normal)] outline-none placeholder:text-[var(--vk-text-muted)]"})]}),(0,a.jsx)("button",{type:"button",onClick:()=>void b(),disabled:l,className:"inline-flex h-7 w-7 shrink-0 items-center justify-center rounded-md text-[var(--vk-text-muted)] hover:bg-white/6 disabled:opacity-50","aria-label":"Refresh files",children:(0,a.jsx)(_.A,{className:`h-3.5 w-3.5 ${l?"animate-spin":""}`})})]}),d?(0,a.jsx)("div",{className:`shrink-0 border-b border-amber-500/20 bg-amber-500/8 px-3 py-1.5 text-[11px] text-amber-300 ${h?"hidden lg:block":""}`,children:"File list truncated (4000 file limit)"}):null,(0,a.jsxs)("div",{className:`min-h-0 flex-1 lg:flex lg:flex-row ${h?"hidden lg:flex":"flex flex-col"}`,children:[(0,a.jsx)("div",{className:"min-h-0 flex-1 overflow-y-auto overscroll-contain py-1 lg:max-w-[320px] lg:border-r lg:border-white/8",children:0===w.length?(0,a.jsx)("div",{className:"px-3 py-6 text-center text-[12px] text-[var(--vk-text-muted)]",children:u?"No files match your search.":"No files in workspace."}):w.map(e=>(0,a.jsx)(U,{node:e,depth:0,selectedPath:h,expandedDirs:f,onToggleDir:k,onSelectFile:N},e.path))}),(0,a.jsx)("div",{className:"hidden min-h-0 min-w-0 flex-1 lg:block",children:h?(0,a.jsxs)("div",{className:"flex h-full min-h-0 min-w-0 flex-col",children:[(0,a.jsxs)("div",{className:"flex shrink-0 items-center gap-2 border-b border-white/8 px-3 py-2",children:[(0,a.jsx)($.A,{className:"h-3.5 w-3.5 shrink-0 text-[var(--vk-text-muted)]"}),(0,a.jsx)("span",{className:"truncate font-mono text-[11px] text-[var(--vk-text-strong)]",children:h})]}),(0,a.jsx)("div",{className:"min-h-0 min-w-0 flex-1 overflow-hidden",children:(0,a.jsx)(G,{sessionId:e,filePath:h})})]}):(0,a.jsx)("div",{className:"flex h-full items-center justify-center text-[12px] text-[var(--vk-text-muted)]",children:"Select a file to view its contents"})})]})]})}function H({session:e,sessionId:t,active:s}){let[n,l]=(0,i.useState)("changes"),r=(0,i.useMemo)(()=>P(e,"task")??P(e,"prompt")??("string"==typeof e.task?e.task:"")??("string"==typeof e.prompt?e.prompt:""),[e]),c=(0,i.useMemo)(()=>P(e,"agent")??("string"==typeof e.agent?e.agent:""),[e]),o=(0,i.useMemo)(()=>(function(e,t){if(!e||!t)return"";let s=new Date(e).getTime(),a=new Date(t).getTime();if(!Number.isFinite(s)||!Number.isFinite(a)||a<s)return"";let n=Math.floor((a-s)/6e4);if(n<1)return"<1m";if(n<60)return`${n}m`;let i=Math.floor(n/60);return`${i}h ${n%60}m`})(P(e,"startedAt")??e.startedAt,P(e,"finishedAt")??e.finishedAt),[e]),d=(0,i.useMemo)(()=>(function(e){if("number"==typeof e.cost)return e.cost;let t=e.metadata.cost;if("string"!=typeof t)return 0;try{let e=JSON.parse(t),s="number"==typeof e.estimatedCostUsd?e.estimatedCostUsd:0,a="number"==typeof e.totalUSD?e.totalUSD:0;return s??a}catch{return 0}})(e),[e]),x=(0,i.useMemo)(()=>T(P(e,"queuePosition")),[e]),u=(0,i.useMemo)(()=>T(P(e,"queueDepth")),[e]),m=(0,i.useMemo)(()=>P(e,"recoveryState")??"",[e]),h=(0,i.useMemo)(()=>"queued"===e.status?x?`Waiting in queue at position ${x}${u?` of ${u}`:""}.`:"Waiting in the launch queue.":"requeued_after_restart"===m?"Session recovered after backend restart and requeued.":"reattach_pending"===m?"Recovering terminal runtime after backend restart.":"detached_runtime"===m?"Backend restarted while agent may still be running.":"resume_required"===m?"Session recovered after restart. Send a message to resume.":"",[u,x,m,e.status]);return(0,a.jsxs)("div",{className:"flex h-full min-h-0 flex-col overflow-y-auto overscroll-contain lg:overflow-hidden",children:[h?(0,a.jsx)("div",{className:"shrink-0 border-b border-amber-500/20 bg-amber-500/8 px-3 py-2",children:(0,a.jsx)("p",{className:"text-[12px] leading-snug text-amber-300",children:h})}):null,r?(0,a.jsx)("div",{className:"shrink-0 border-b border-white/8 px-3 py-2.5",children:(0,a.jsx)("p",{className:"line-clamp-3 whitespace-pre-wrap text-[13px] leading-relaxed text-[var(--vk-text-normal)]",children:r})}):null,(0,a.jsxs)("div",{className:"flex shrink-0 flex-wrap items-center gap-x-4 gap-y-1 border-b border-white/8 px-3 py-2 text-[11px] text-[var(--vk-text-muted)]",children:[c?(0,a.jsxs)("span",{className:"flex items-center gap-1.5",children:[(0,a.jsx)(L.N,{seed:{label:c},className:"h-4 w-4"}),(0,a.jsx)("span",{children:c})]}):null,e.branch?(0,a.jsxs)("span",{className:"flex items-center gap-1",children:[(0,a.jsx)(F.A,{className:"h-3 w-3 shrink-0"}),(0,a.jsx)(q,{text:e.branch})]}):null,o?(0,a.jsxs)("span",{className:"flex items-center gap-1",children:[(0,a.jsx)(M.A,{className:"h-3 w-3 shrink-0"}),(0,a.jsx)("span",{children:o})]}):null,d>0?(0,a.jsxs)("span",{className:"flex items-center gap-1",children:[(0,a.jsx)(R.A,{className:"h-3 w-3 shrink-0"}),(0,a.jsxs)("span",{children:["$",d.toFixed(3)]})]}):null]}),(0,a.jsxs)("div",{className:"flex shrink-0 items-center gap-0 border-b border-white/8 px-2",children:[(0,a.jsx)("button",{type:"button",onClick:()=>l("changes"),className:`px-3 py-2 text-[12px] font-medium transition-colors ${"changes"===n?"border-b-2 border-[var(--vk-orange)] text-[var(--vk-text-strong)]":"border-b-2 border-transparent text-[var(--vk-text-muted)] hover:text-[var(--vk-text-normal)]"}`,children:"Changes"}),(0,a.jsx)("button",{type:"button",onClick:()=>l("files"),className:`px-3 py-2 text-[12px] font-medium transition-colors ${"files"===n?"border-b-2 border-[var(--vk-orange)] text-[var(--vk-text-strong)]":"border-b-2 border-transparent text-[var(--vk-text-muted)] hover:text-[var(--vk-text-normal)]"}`,children:"Files"})]}),(0,a.jsx)("div",{className:"min-h-0 min-w-0 flex-1 overflow-y-auto overscroll-contain",children:"changes"===n?(0,a.jsx)(D,{sessionId:t,active:s},t):(0,a.jsx)(V,{sessionId:t,active:s&&"files"===n})})]})}var K=s(40448),Q=s(50549),X=s(26083),Y=s(31404),ee=s(59207);let et="block h-5 w-5 shrink-0 object-contain",es=[{id:"finder",label:"Finder"},{id:"cursor",label:"Cursor"},{id:"antigravity",label:"Antigravity"},{id:"windsurf",label:"Windsurf"},{id:"zed",label:"Zed"},{id:"xcode",label:"Xcode"},{id:"vscode",label:"VS Code"},{id:"vscode-insiders",label:"VS Code Insiders"},{id:"intellij-idea",label:"IntelliJ IDEA"},{id:"custom",label:"Custom"}],ea={finder:{kind:"image",imageSrc:"/icons/ide/finder.svg",className:et},vscode:{kind:"image",imageSrc:"/icons/ide/vscode-dark.svg",className:et},"vscode-insiders":{kind:"image",imageSrc:"/icons/ide/vscode-insiders.svg",className:et},cursor:{kind:"image",imageSrc:"/icons/ide/cursor-dark.svg",className:et},windsurf:{kind:"image",imageSrc:"/icons/ide/windsurf-dark.svg",className:et},"intellij-idea":{kind:"image",imageSrc:"/icons/ide/intellij.svg",className:et},zed:{kind:"image",imageSrc:"/icons/ide/zed-dark.svg",className:et},xcode:{kind:"image",imageSrc:"/icons/ide/xcode.svg",className:et},antigravity:{kind:"image",imageSrc:"/icons/ide/antigravity-dark.svg",className:et},custom:{kind:"icon",className:`${et} text-[var(--vk-text-muted)]`}};function en({editorId:e,label:t}){let s=ea[e];return s?"icon"===s.kind?(0,a.jsx)(Q.A,{className:s?.className??`${et} text-[var(--vk-text-muted)]`}):(0,a.jsx)("img",{src:s.imageSrc,alt:`${t} logo`,className:s.className}):(0,a.jsx)(Q.A,{className:`${et} text-[var(--vk-text-muted)]`})}function ei({projectId:e,bridgeId:t}){let{preferences:s}=(0,ee.g)(t),[n,l]=(0,i.useState)(null),r=(0,i.useMemo)(()=>{var e;return e=s?.ide??"vscode",es.find(t=>t.id===e)??{id:e,label:e}},[s?.ide]);async function c(s){if(e&&!n){l(s);try{let a=await fetch((0,Y.S)(`/api/projects/${encodeURIComponent(e)}/open`,t),{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({ide:s})}),n=await a.json().catch(()=>null);if(!a.ok)throw Error(n?.error??`Failed to open project (${a.status})`)}catch(e){window.alert(e instanceof Error?e.message:"Failed to open project")}finally{l(null)}}}return(0,a.jsxs)(K.bL,{children:[(0,a.jsx)(K.l9,{asChild:!0,children:(0,a.jsxs)("button",{type:"button",disabled:!e||null!==n,className:"inline-flex h-9 items-center gap-2 rounded-[6px] border border-[rgba(255,255,255,0.08)] bg-[rgba(255,255,255,0.03)] px-3 text-[13px] text-[var(--vk-text-normal)] transition hover:bg-[rgba(255,255,255,0.06)] disabled:cursor-not-allowed disabled:opacity-60","aria-label":"Open project in code editor",title:e?`Open project in ${r.label}`:"No project selected",children:[n?(0,a.jsx)(A.A,{className:"h-4 w-4 animate-spin text-[var(--vk-text-muted)]"}):(0,a.jsx)(X.A,{className:"h-4 w-4 text-[var(--vk-text-muted)]"}),(0,a.jsx)("span",{className:"hidden font-medium sm:inline",children:"Open"}),(0,a.jsx)(N.A,{className:"h-3.5 w-3.5 text-[var(--vk-text-muted)]"})]})}),(0,a.jsx)(K.ZL,{children:(0,a.jsx)(K.UC,{align:"end",sideOffset:8,className:"z-50 min-w-[240px] rounded-[8px] border border-[rgba(255,255,255,0.08)] bg-[#1c1a19] p-2 shadow-[0_18px_50px_rgba(0,0,0,0.45)]",children:es.map(e=>(0,a.jsxs)(K.q7,{onSelect:()=>void c(e.id),className:"flex min-h-[44px] cursor-default items-center gap-3 rounded-[6px] px-3 py-2 text-[14px] text-[#f3efea] outline-none transition hover:bg-[rgba(255,255,255,0.06)] focus:bg-[rgba(255,255,255,0.06)]",children:[(0,a.jsx)(en,{editorId:e.id,label:e.label}),(0,a.jsx)("span",{className:"flex-1",children:e.label}),r.id===e.id?(0,a.jsx)(w.A,{className:"h-4 w-4 text-[var(--vk-text-muted)]"}):null]},e.id))})})]})}let el=(0,n.default)(()=>s.e(3954).then(s.bind(s,83954)).then(e=>e.SessionTerminal),{loadableGenerated:{webpack:()=>[83954]},loading:()=>(0,a.jsx)("div",{className:"flex h-full min-h-[240px] items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:"Loading terminal..."})}),er=(0,n.default)(()=>Promise.all([s.e(307),s.e(4089)]).then(s.bind(s,54089)).then(e=>e.SessionPreview),{loadableGenerated:{webpack:()=>[54089]},loading:()=>(0,a.jsx)("div",{className:"flex h-full min-h-[240px] items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:"Loading preview..."})}),ec=(0,n.default)(()=>s.e(1874).then(s.bind(s,81874)).then(e=>e.SessionSkills),{loadableGenerated:{webpack:()=>[81874]},loading:()=>(0,a.jsx)("div",{className:"flex h-full min-h-[240px] items-center justify-center text-[13px] text-[var(--vk-text-muted)]",children:"Loading skills..."})});function eo(e){return"overview"===e||"terminal"===e||"preview"===e||"skills"===e?e:"terminal"}function ed({sessionId:e,initialSession:t=null,bridgeId:s=null,immersiveMobileMode:n=!1,active:u=!0,onOpenSidebar:m}){let w=(0,l.usePathname)(),k=(0,l.useRouter)(),N=(0,l.useSearchParams)(),{session:y,loading:S,error:C}=(0,j.w)(e,t,{enabled:u,bridgeId:s}),$=(0,i.useRef)(0),A=(0,i.useRef)(!1),[I,E]=(0,i.useState)(null),_=(0,i.useMemo)(()=>eo(N.get("tab")),[N]),F=(0,i.useCallback)(e=>{let t=eo(e),s=new URLSearchParams(N.toString());"terminal"===t?s.delete("tab"):s.set("tab",t);let a=s.toString(),n=a.length>0?`${w}?${a}`:w;k.replace(n,{scroll:!1})},[w,k,N]),M=(0,i.useCallback)(e=>{$.current+=1,E({nonce:$.current,...e})},[]);(0,i.useEffect)(()=>{A.current=!1,$.current=0,E(null)},[e]);let R=(0,i.useCallback)(e=>{e&&u&&"terminal"===_&&!A.current&&(A.current=!0,F("preview"))},[u,_,F]);if(S)return(0,a.jsx)("div",{className:"flex h-full items-center justify-center p-6",children:(0,a.jsx)(g.Zp,{className:"w-full max-w-md",children:(0,a.jsx)(g.Wu,{className:"py-7 text-center text-[13px] text-[var(--text-muted)]",children:"Loading session workspace..."})})});if(C)return(0,a.jsx)("div",{className:"flex h-full items-center justify-center p-6",children:(0,a.jsx)(g.Zp,{className:"w-full max-w-md border-[color:color-mix(in_srgb,var(--status-error)_45%,transparent)]",children:(0,a.jsx)(g.Wu,{className:"py-7 text-center text-[13px] text-[var(--status-error)]",children:C})})});if(!y)return(0,a.jsx)("div",{className:"flex h-full items-center justify-center p-6",children:(0,a.jsx)(g.Zp,{className:"w-full max-w-md",children:(0,a.jsx)(g.Wu,{className:"py-7 text-center text-[13px] text-[var(--text-muted)]",children:"Session not found"})})});let L="string"==typeof y.status?y.status:"unknown",D=function(e){switch(e){case"needs_input":return"needs input";case"working":return"working";case"running":return"running";case"spawning":return"spawning";case"queued":return"queued";default:return e.replace(/[_-]+/g," ")}}(L),q=function(e){switch(e){case"working":case"running":return"bg-amber-400";case"needs_input":return"bg-blue-400";case"spawning":case"queued":default:return"bg-gray-400";case"done":return"bg-emerald-400";case"errored":return"bg-red-400";case"stuck":return"bg-orange-500";case"terminated":case"killed":return"bg-gray-500"}}(L),P="working"===L||"running"===L||"spawning"===L||"queued"===L||"needs_input"===L,T="queued"!==L&&"spawning"!==L,U=u&&n&&"terminal"===_,O=u&&"preview"===_,z="min-h-[38px] gap-1.5 px-2.5 text-[12px] sm:min-h-0 sm:px-3",W=(0,a.jsxs)(p,{className:"flex w-full overflow-x-auto sm:w-fit sm:inline-flex",children:[(0,a.jsxs)(f,{value:"overview",className:z,children:[(0,a.jsx)(r.A,{className:"h-3.5 w-3.5"}),"Overview"]}),(0,a.jsxs)(f,{value:"terminal",className:z,children:[(0,a.jsx)(c.A,{className:"h-3.5 w-3.5"}),"Terminal"]}),(0,a.jsxs)(f,{value:"preview",className:z,children:[(0,a.jsx)(o.A,{className:"h-3.5 w-3.5"}),"Preview"]}),(0,a.jsxs)(f,{value:"skills",className:z,children:[(0,a.jsx)(d.A,{className:"h-3.5 w-3.5"}),"Skills"]})]});return(0,a.jsx)("div",{className:`flex h-full min-h-0 min-w-0 w-full flex-col ${U?"overflow-hidden bg-[#060404]":"overflow-y-auto overscroll-contain lg:overflow-hidden"}`,children:(0,a.jsxs)(h,{value:_,onValueChange:F,className:U?"flex min-h-0 min-w-0 w-full flex-1 flex-col gap-0 p-0":"flex min-h-0 min-w-0 w-full flex-1 flex-col gap-1 p-1 lg:gap-2 lg:p-3",children:[U?(0,a.jsxs)("div",{className:"flex shrink-0 flex-col border-b border-white/10 bg-[#0d0908]",children:[(0,a.jsxs)("div",{className:"flex h-10 items-center gap-2 px-2",children:[m?(0,a.jsx)(b.$,{type:"button",variant:"ghost",size:"icon",className:"h-8 w-8 shrink-0 text-[#8e847d] hover:text-[#c9c0b7]",onClick:m,"aria-label":"Open workspace panel",children:(0,a.jsx)(x.A,{className:"h-4 w-4"})}):null,(0,a.jsxs)("div",{className:"flex min-w-0 flex-1 items-center gap-1.5",children:[(0,a.jsx)("span",{className:`inline-block h-2 w-2 shrink-0 rounded-full ${q}${P?" animate-pulse":""}`}),(0,a.jsx)("span",{className:"text-[12px] font-medium text-[#efe8e1]",children:D}),(0,a.jsxs)("span",{className:"font-mono text-[10px] text-[#8e847d]",children:["\xb7 ",e.slice(0,7)]})]}),T?(0,a.jsx)(ei,{projectId:y.projectId,bridgeId:y.bridgeId??null}):null]}),(0,a.jsx)("div",{className:"px-1.5 pb-1.5",children:W})]}):(0,a.jsxs)("div",{className:"flex min-w-0 flex-wrap items-center gap-x-2 gap-y-1.5 sm:flex-nowrap",children:[W,(0,a.jsxs)("div",{className:"flex w-full items-center justify-between gap-2 sm:ml-auto sm:w-auto sm:justify-end",children:[(0,a.jsxs)("div",{className:"flex items-center gap-1.5",children:[(0,a.jsx)("span",{className:`inline-block h-2 w-2 shrink-0 rounded-full ${q}${P?" animate-pulse":""}`}),(0,a.jsx)("span",{className:"text-[11px] text-[var(--vk-text-muted)]",children:D}),(0,a.jsxs)("span",{className:"hidden font-mono text-[10px] text-[var(--vk-text-muted)] sm:inline",children:["\xb7 ",e.slice(0,7)]})]}),T?(0,a.jsx)(ei,{projectId:y.projectId,bridgeId:y.bridgeId??null}):null]})]}),(0,a.jsxs)("div",{className:"relative min-h-0 min-w-0 flex-1 overflow-hidden",children:[(0,a.jsx)(v,{value:"overview",className:"min-h-0 h-full min-w-0 w-full overflow-hidden focus-visible:outline-none [&[hidden]]:block data-[state=inactive]:pointer-events-none data-[state=inactive]:absolute data-[state=inactive]:inset-0 data-[state=inactive]:invisible data-[state=inactive]:opacity-0",children:(0,a.jsx)(H,{session:y,sessionId:e,active:u&&"overview"===_})}),(0,a.jsx)(v,{value:"terminal",forceMount:!0,className:U?"flex min-h-0 h-full min-w-0 w-full flex-col overflow-hidden bg-[#060404] focus-visible:outline-none [&[hidden]]:block data-[state=inactive]:pointer-events-none data-[state=inactive]:absolute data-[state=inactive]:inset-0 data-[state=inactive]:invisible data-[state=inactive]:opacity-0":"flex min-h-0 h-full min-w-0 flex-col w-full overflow-hidden bg-transparent focus-visible:outline-none [&[hidden]]:block data-[state=inactive]:pointer-events-none data-[state=inactive]:absolute data-[state=inactive]:inset-0 data-[state=inactive]:invisible data-[state=inactive]:opacity-0",children:(0,a.jsx)(el,{sessionId:e,projectId:y.projectId,bridgeId:y.bridgeId??null,sessionState:L,runtimeMode:y.metadata.runtimeMode?.trim()??null,pendingInsert:I,immersiveMobileMode:U})}),(0,a.jsx)(v,{value:"preview",className:"min-h-0 h-full min-w-0 w-full overflow-hidden focus-visible:outline-none [&[hidden]]:block data-[state=inactive]:pointer-events-none data-[state=inactive]:absolute data-[state=inactive]:inset-0 data-[state=inactive]:invisible data-[state=inactive]:opacity-0",children:O?(0,a.jsx)(er,{sessionId:e,active:O,onQueueTerminalInsert:M,onConnectionChange:R},e):null}),(0,a.jsx)(v,{value:"skills",className:"min-h-0 h-full min-w-0 w-full overflow-hidden focus-visible:outline-none [&[hidden]]:block data-[state=inactive]:pointer-events-none data-[state=inactive]:absolute data-[state=inactive]:inset-0 data-[state=inactive]:invisible data-[state=inactive]:opacity-0",children:(0,a.jsx)(ec,{session:y,sessionId:e,active:u&&"skills"===_})})]})]},e)})}},59207:(e,t,s)=>{s.d(t,{g:()=>l});var a=s(7620),n=s(31404);function i(e){return!e||"object"!=typeof e||Array.isArray(e)?{}:{...e}}function l(e,t){let s=t?.enabled??!0,[l,r]=(0,a.useState)(null),[c,o]=(0,a.useState)(s),[d,x]=(0,a.useState)(null),u=(0,a.useCallback)(async()=>{if(!s){r(null),x(null),o(!1);return}try{var t;let s,a,l,c=await fetch((0,n.S)("/api/preferences",e)),o=await c.json().catch(()=>null);if(!c.ok)throw Error(o?.error??o?.reason??`Failed to load preferences: ${c.status}`);r((t=o?.preferences,s=i(t),l=(a=i(s.notifications)).soundFile,{onboardingAcknowledged:!0===s.onboardingAcknowledged,codingAgent:"string"==typeof s.codingAgent&&s.codingAgent.trim().length>0?s.codingAgent.trim():"claude-code",ide:"string"==typeof s.ide&&s.ide.trim().length>0?s.ide.trim():"vscode",markdownEditor:"string"==typeof s.markdownEditor&&s.markdownEditor.trim().length>0?s.markdownEditor.trim():"obsidian",markdownEditorPath:"string"==typeof s.markdownEditorPath?s.markdownEditorPath.trim():"",notifications:{soundEnabled:!1!==a.soundEnabled,soundFile:null===l?null:"string"==typeof l&&l.trim().length>0?l.trim():"abstract-sound-4"}})),x(null)}catch(e){r(null),x(e instanceof Error?e.message:"Failed to load preferences")}finally{o(!1)}},[e,s]);return(0,a.useEffect)(()=>{s&&u()},[s,u]),{preferences:s?l:null,loading:!!s&&c,error:s?d:null,refresh:u}}}}]);
|