fuli-context 0.12.3 → 0.12.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (82) hide show
  1. package/README.zh-CN.md +1 -1
  2. package/dist/web/assets/{AboutPage-Dized8Uz.js → AboutPage-DKsgqteA.js} +1 -1
  3. package/dist/web/assets/{AgentConversations-Ccy41mEA.js → AgentConversations-BnFsfRj3.js} +1 -1
  4. package/dist/web/assets/{AgentHand-UzVhbKUC.js → AgentHand-B5lezlek.js} +1 -1
  5. package/dist/web/assets/{AgentName-DJpvkub2.js → AgentName-C-V41xs0.js} +1 -1
  6. package/dist/web/assets/AgentProfilePage-DjgqtOdz.js +1 -0
  7. package/dist/web/assets/AgentsDirectoryPage-IgN5QEdW.js +1 -0
  8. package/dist/web/assets/{AgentsDirectoryPage-Cv-vxw2C.css → AgentsDirectoryPage-kc3EgeGO.css} +1 -1
  9. package/dist/web/assets/{ConnectionsPage-uXcabab_.js → ConnectionsPage-CXtNiTEF.js} +1 -1
  10. package/dist/web/assets/EmployeeRecruitDialog-o6eyMw2g.js +1 -0
  11. package/dist/web/assets/EmployeeWorkbenchPage-4EnGLauW.js +3 -0
  12. package/dist/web/assets/{KnowledgeEditDialog-HmiqLC-Y.js → KnowledgeEditDialog-BlBd6Xql.js} +1 -1
  13. package/dist/web/assets/{KnowledgeInspector-Cj2yK4Qh.js → KnowledgeInspector-Dl7SAgaY.js} +1 -1
  14. package/dist/web/assets/{KnowledgeOrganizerPage-DT3BROZm.js → KnowledgeOrganizerPage-CpH4x6UA.js} +1 -1
  15. package/dist/web/assets/KnowledgePage-C-gFr7ln.js +1 -0
  16. package/dist/web/assets/{KnowledgeWorkspace-DA_dqVRG.js → KnowledgeWorkspace-4q_HfXas.js} +1 -1
  17. package/dist/web/assets/{NotFoundPage-x_Yd59mm.js → NotFoundPage-DtmfJSGx.js} +1 -1
  18. package/dist/web/assets/{OverviewPage-3eZjQ26v.js → OverviewPage-C1zw_8_6.js} +1 -1
  19. package/dist/web/assets/PersonalProfilePage-B0_zIINs.css +1 -0
  20. package/dist/web/assets/{PersonalProfilePage-CDQk096L.js → PersonalProfilePage-tQyS7qsa.js} +1 -1
  21. package/dist/web/assets/PersonalProjectsPage-Cgd_bjeK.js +1 -0
  22. package/dist/web/assets/{ProjectAgentFirstTask-BkRJ0zwO.js → ProjectAgentFirstTask-Caf7c6F_.js} +1 -1
  23. package/dist/web/assets/{ProjectAgentsPage-BuNNqSEy.js → ProjectAgentsPage-BOGkN5ZN.js} +1 -1
  24. package/dist/web/assets/{ProjectScopePicker-CiDxM2Yx.js → ProjectScopePicker-NyqcG6Iz.js} +1 -1
  25. package/dist/web/assets/{PublicProjectsPage-ByOT559r.js → PublicProjectsPage-CYwQLZmy.js} +1 -1
  26. package/dist/web/assets/{ReviewPage-C0Vdr9uq.js → ReviewPage-EyuAtIOq.js} +1 -1
  27. package/dist/web/assets/{RoundtablesPage-L3ShEWS3.js → RoundtablesPage-JVBXsJrs.js} +1 -1
  28. package/dist/web/assets/SettingsPage-BARo0Ds0.css +1 -0
  29. package/dist/web/assets/SettingsPage-Dfi7kl9c.js +1 -0
  30. package/dist/web/assets/{SharedJefaReportPage-Bg6lIk3E.js → SharedJefaReportPage-DFy5Ty7o.js} +1 -1
  31. package/dist/web/assets/{UiButton-x8hiHNRM.js → UiButton-neeym_gA.js} +1 -1
  32. package/dist/web/assets/{UiDialog-mjletK0y.js → UiDialog-BFVoqFnc.js} +1 -1
  33. package/dist/web/assets/{UiDisclosure-_IxeiexW.js → UiDisclosure-B-T7BmB5.js} +1 -1
  34. package/dist/web/assets/{UiSegmented-WFfz9Evl.js → UiSegmented-D_kyRKDw.js} +1 -1
  35. package/dist/web/assets/{UiSelect-K29jnV-1.js → UiSelect-DDyct4mf.js} +1 -1
  36. package/dist/web/assets/{WritingTastePage-DCULB-d2.js → WritingTastePage-BPRq6kJ6.js} +1 -1
  37. package/dist/web/assets/{agent-pins-DS4mNsNt.js → agent-pins-6LRHTMF6.js} +1 -1
  38. package/dist/web/assets/agent-profile-UgNiXgpU.css +1 -0
  39. package/dist/web/assets/{attention-store-CA5y8j1R.js → attention-store-BGHyzWfv.js} +1 -1
  40. package/dist/web/assets/avatars-z6ANYG_r.js +1 -0
  41. package/dist/web/assets/{catalog-D0VEfOAV.js → catalog-kb-cA8t6.js} +1 -1
  42. package/dist/web/assets/{client-DnwnUBQV.js → client-DodUFQDp.js} +1 -1
  43. package/dist/web/assets/{console-Cw7TzOSC.js → console-C2Lfifq-.js} +1 -1
  44. package/dist/web/assets/{conversation-launcher-settings-Yc13viwr.js → conversation-launcher-settings-CowfVz7l.js} +1 -1
  45. package/dist/web/assets/{i18n-oJFlt8hW.js → i18n-B4Fp9Oa5.js} +1 -1
  46. package/dist/web/assets/{identity-DSGS4CZc.js → identity-DG_za-J7.js} +1 -1
  47. package/dist/web/assets/index-DsExj49_.css +1 -0
  48. package/dist/web/assets/index-RxlM8aQV.js +5 -0
  49. package/dist/web/assets/{judgment-types-DR931cZ7.js → judgment-types-DRqrjStd.js} +1 -1
  50. package/dist/web/assets/{model-BJ-UF4cs.js → model-C0eHDNsF.js} +1 -1
  51. package/dist/web/assets/{personal-profile-graph-SOK0BR0w.js → personal-profile-graph-CHY3WYhi.js} +1 -1
  52. package/dist/web/assets/project-team-api-Dfm8C4B8.js +1 -0
  53. package/dist/web/assets/{shared-report-CiX64ZiD.js → shared-report-8JFvD9TZ.js} +1 -1
  54. package/dist/web/assets/tonborg-avatar-DyxAdTD6.webp +0 -0
  55. package/dist/web/assets/{useAgentRoster-B84mzZIg.js → useAgentRoster-QDbOwtLj.js} +1 -1
  56. package/dist/web/assets/{useApi-CROJJdhE-7gt0QyQ5.js → useApi-CROJJdhE-IuC5qwny.js} +1 -1
  57. package/dist/web/assets/{vue-router-CCvPGaLD.js → vue-router-nZMhR3dI.js} +1 -1
  58. package/dist/web/index.html +16 -15
  59. package/graph-provider/fuli_graph/system_agents.py +27 -3
  60. package/graph-provider/pyproject.toml +1 -1
  61. package/npm-shrinkwrap.json +2 -2
  62. package/package.json +1 -1
  63. package/src/employees/catalog/tonborg.json +1 -1
  64. package/src/http/api-router.js +28 -1
  65. package/src/local-runtime/lifecycle.js +1 -0
  66. package/src/setup/graph-runtime.js +1 -1
  67. package/src/system/settings-apply-worker.js +6 -0
  68. package/src/system/settings-apply.js +116 -0
  69. package/src/system/system-service.js +25 -5
  70. package/dist/web/assets/AgentProfilePage-CFViQ8kj.js +0 -1
  71. package/dist/web/assets/AgentsDirectoryPage-CBFTg_IE.js +0 -1
  72. package/dist/web/assets/EmployeeRecruitDialog-D8Hvhc-M.js +0 -1
  73. package/dist/web/assets/EmployeeWorkbenchPage-TBl_HNj6.js +0 -3
  74. package/dist/web/assets/KnowledgePage-C4J4VueL.js +0 -1
  75. package/dist/web/assets/PersonalProfilePage-DrMDAAdy.css +0 -1
  76. package/dist/web/assets/PersonalProjectsPage-CJxp4Wyz.js +0 -1
  77. package/dist/web/assets/SettingsPage-BE8pWbI6.css +0 -1
  78. package/dist/web/assets/SettingsPage-McYuinGz.js +0 -1
  79. package/dist/web/assets/agent-profile-Bh3MJGvb.css +0 -1
  80. package/dist/web/assets/index-BfHCcUL2.css +0 -1
  81. package/dist/web/assets/index-DuxXKFrR.js +0 -5
  82. package/dist/web/assets/project-team-api-C_0qJk_B.js +0 -1
@@ -1 +0,0 @@
1
- import{B as e,C as t,E as n,H as r,I as i,P as a,Q as o,S as s,T as c,a as l,b as u,g as d,it as ee,ot as f,rt as p,v as m,w as h,x as g,y as _}from"./i18n-oJFlt8hW.js";import{a as te,s as ne}from"./client-DnwnUBQV.js";import{t as v}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as y}from"./UiButton-x8hiHNRM.js";import{t as b}from"./vue-router-CCvPGaLD.js";import{t as re}from"./UiDialog-mjletK0y.js";import{t as x}from"./UiSelect-K29jnV-1.js";import{n as ie}from"./paths-CDREouhi.js";import{a as ae,o as oe,r as se,s as ce}from"./catalog-D0VEfOAV.js";import{t as le}from"./ProjectScopePicker-CiDxM2Yx.js";var S={jefa:`/assets/jefa-avatar-Dew42td5.webp`,bole:`/assets/bole-avatar-CVIr-bU_.webp`};function C(e){return S[e]}var ue={key:1,role:`alert`,class:`ui-dialog__error employee-message`},de={key:2,class:`ui-muted`},fe={class:`employee-profile`},pe={class:`employee-avatar`,"aria-hidden":`true`},me=[`src`],he={class:`ui-meta`},ge={key:2,class:`employee-scope`},_e=[`aria-label`],ve=[`data-scope`,`aria-checked`,`tabindex`,`disabled`,`onClick`],ye={class:`ui-meta`,role:`status`},be={key:3,class:`ui-meta`},xe={key:4,class:`ui-meta`},Se={key:5,class:`ui-meta`},Ce=[`aria-label`],we={class:`employee-title-controls`},Te={class:`ui-meta`},Ee={class:`employee-title-example`},De={class:`ui-meta`},Oe=[`aria-label`],ke={class:`ui-meta`},Ae={key:8,class:`ui-dialog__error`,role:`alert`},je={key:10,class:`employee-success`,role:`status`},w=v(n({__name:`EmployeeRecruitDialog`,props:{open:{type:Boolean},personalSpaceId:{},projects:{},defaultProjectId:{},defaultProjectIds:{},templateId:{}},emits:[`close`,`recruited`],setup(n,{emit:v}){let S=n,w=v,T=o([]),E=o([]),D=o(`selected`),O=o([]),k=o(`auto`),A=o(`emoji`),Me=o(``),j=o(``),M=o(!1),N=o(!1),P=o(``),F=o(!1),I=o(``),L=o(null),R=o([]),z=o(``),B=m(()=>S.templateId?R.value:R.value.filter(e=>!e.fixed)),V=m(()=>S.templateId?B.value.find(e=>e.id===S.templateId):B.value.find(e=>e.id===P.value)??B.value[0]),Ne=m({get:()=>V.value?.id??``,set:e=>{P.value=e}}),Pe=m(()=>V.value?.agentId?l(`employees.manageProjectsTitle`,{name:V.value.name}):l(`employees.recruit`)),H=m(()=>S.projects.filter(e=>e.profile.lifecycle!==`archived`).map(e=>({id:e.project_id,name:e.profile.name}))),U=m(()=>V.value?.management!==void 0),W=m({get:()=>D.value===`all`?H.value.filter(e=>!O.value.includes(e.id)).map(e=>e.id):T.value,set:e=>{if(D.value===`all`){let t=new Set(H.value.map(e=>e.id));O.value=[...O.value.filter(e=>!t.has(e)),...H.value.filter(t=>!e.includes(t.id)).map(e=>e.id)]}else T.value=e}}),G=m(()=>({mode:D.value,projectIds:D.value===`selected`?[...T.value].sort():[],excludedProjectIds:D.value===`all`?[...O.value].sort():[],titleMode:k.value,titleStyle:A.value})),Fe=m(()=>[`auto`,`suggest`,`off`].map(e=>({value:e,label:l(`employees.titles.${e}`)}))),Ie=m(()=>[`emoji`,`text`].map(e=>({value:e,label:l(`employees.titles.${e}`)}))),K=m(()=>new Set(E.value)),Le=m(()=>[...K.value].filter(e=>!W.value.includes(e))),Re=m(()=>!!(V.value?.agentStatus&&V.value.agentStatus!==`active`)),q=m(()=>V.value?.agentStatus===`active`&&(U.value?JSON.stringify(G.value)===Me.value&&(D.value===`all`||T.value.length===K.value.size&&T.value.every(e=>K.value.has(e))):T.value.length===K.value.size&&T.value.every(e=>K.value.has(e)))),ze=m(()=>F.value?l(`employees.recruiting`):Re.value?l(`employees.rehire`,{name:V.value?.name??``}):q.value||V.value?.agentId?l(`employees.assign`):l(`employees.recruitName`,{name:V.value?.name??``})),J=m(()=>V.value&&W.value.length?`/employees/${encodeURIComponent(V.value.id)}?project=${encodeURIComponent(W.value[0])}`:``),Y=0;e([()=>S.open,()=>S.personalSpaceId,()=>S.templateId],([e])=>{Y+=1,e&&Z(!0)},{immediate:!0}),e(P,()=>{S.open&&!M.value&&X(!0)}),e(G,()=>{I.value=N.value?I.value:``,L.value=null},{flush:`sync`});function X(e=!1){let t=new Set(H.value.map(e=>e.id));E.value=[...new Set((V.value?.assignments??[]).filter(e=>e.status===`active`&&t.has(e.personalProjectId)).map(e=>e.personalProjectId))];let n=e&&!V.value?.agentId?S.defaultProjectIds??(S.defaultProjectId?[S.defaultProjectId]:[]):[];T.value=[...new Set([...E.value,...n.filter(e=>t.has(e))])];let r=V.value?.management;D.value=r?.mode??`selected`,O.value=[...r?.excludedProjectIds??[]],k.value=r?.titleMode??`auto`,A.value=r?.titleStyle??`emoji`,r?.mode===`selected`&&V.value?.agentId&&(T.value=r.projectIds.filter(e=>t.has(e))),r?.mode===`all`&&V.value?.agentId&&(E.value=[...W.value]),Me.value=JSON.stringify(G.value),j.value=V.value?.assignmentsVersion??``,N.value=!1,I.value=``,L.value=null}async function Z(e=!1){let t=++Y;M.value=!0,R.value=[],z.value=``;try{let n=await oe(S.personalSpaceId);if(t!==Y||!S.open)return;R.value=n,X(e)}catch(e){t===Y&&S.open&&(R.value=[],z.value=se(e))}finally{t===Y&&(M.value=!1)}}function Q(){F.value||w(`close`)}async function Be(){if(!V.value||V.value.identityConflict||!S.personalSpaceId||F.value||M.value||N.value||!j.value||q.value)return;F.value=!0,I.value=``;let e=V.value.id;try{let t=await te(`/api/employee-templates/${encodeURIComponent(e)}/recruit`,{personalSpaceId:S.personalSpaceId,...U.value?{management:G.value}:{personalProjectIds:[...T.value]},replaceAssignments:!0,expectedAssignmentsVersion:j.value,...Re.value?{reactivate:!0}:{}});await ce(S.personalSpaceId),R.value=[...ae.value],X(),L.value=t,w(`recruited`,t)}catch(e){I.value=se(e);try{let t=JSON.parse(e instanceof Error?e.message:``);N.value=t.code===`assignment_scope_conflict`||t.code===`assignment_update_incomplete`}catch{}}finally{F.value=!1}}function $(e){e===`selected`&&(T.value=[...W.value]),D.value=e}function Ve(e){if(!(F.value||M.value||N.value)&&[`ArrowLeft`,`ArrowRight`,`Home`,`End`].includes(e.key)){e.preventDefault();let t=e.key===`Home`?`all`:e.key===`End`||D.value===`all`?`selected`:`all`;$(t),e.currentTarget.querySelector(`[data-scope="${t}"]`)?.focus()}}return(e,o)=>(a(),u(re,{open:n.open,class:`employee-recruit-dialog`,title:Pe.value,busy:F.value,form:``,onClose:Q,onSubmit:Be},t({default:r(()=>[M.value&&!B.value.length?(a(),u(ne,{key:0,variant:`compact`,label:p(l)(`employees.loading`)},null,8,[`label`])):z.value?(a(),s(`div`,ue,[_(`p`,null,f(z.value),1),c(y,{size:`sm`,onClick:o[0]||=e=>Z(!0)},{default:r(()=>[h(f(p(l)(`employees.retry`)),1)]),_:1})])):V.value?(a(),s(d,{key:3},[B.value.length>1&&!S.templateId?(a(),u(x,{key:0,modelValue:Ne.value,"onUpdate:modelValue":o[1]||=e=>Ne.value=e,field:``,"control-id":`employee-template`,label:p(l)(`employees.choose`),options:B.value.map(e=>({value:e.id,label:e.name,meta:e.role})),disabled:F.value||M.value},null,8,[`modelValue`,`label`,`options`,`disabled`])):g(``,!0),_(`div`,fe,[_(`span`,pe,[p(C)(V.value.id)?(a(),s(`img`,{key:0,src:p(C)(V.value.id),alt:``},null,8,me)):(a(),s(d,{key:1},[h(f(V.value.name.slice(0,1)),1)],64))]),_(`div`,null,[_(`h3`,null,[h(f(V.value.name)+` `,1),_(`span`,null,f(V.value.role),1)]),_(`p`,null,f(V.value.description),1),_(`p`,he,f(V.value.capabilities.join(` · `)),1)])]),M.value?(a(),u(ne,{key:1,variant:`compact`,label:p(l)(`employees.loadingScope`)},null,8,[`label`])):g(``,!0),U.value?(a(),s(`div`,ge,[_(`div`,{class:`ui-segmented`,role:`radiogroup`,"aria-label":p(l)(`employees.scope.rule`),onKeydown:Ve},[(a(),s(d,null,i([`all`,`selected`],e=>_(`button`,{key:e,type:`button`,role:`radio`,"data-scope":e,"aria-checked":D.value===e,tabindex:D.value===e?0:-1,disabled:F.value||M.value||N.value,onClick:t=>$(e)},f(p(l)(`employees.scope.${e===`all`?`continuousAll`:`onlySelected`}`)),9,ve)),64))],40,_e),_(`p`,ye,f(D.value===`all`?p(l)(`employees.scope.allHint`,{name:V.value.name}):p(l)(`employees.scope.selectedHint`)),1)])):g(``,!0),c(le,{modelValue:W.value,"onUpdate:modelValue":o[2]||=e=>W.value=e,projects:H.value,inline:``,hint:D.value===`all`?p(l)(`employees.scope.excludeHint`):void 0,disabled:F.value||M.value||N.value},null,8,[`modelValue`,`projects`,`hint`,`disabled`]),D.value===`all`&&O.value.length?(a(),s(`p`,be,f(p(l)(`employees.scope.excludedCount`,{count:O.value.length})),1)):g(``,!0),H.value.length?g(``,!0):(a(),s(`p`,xe,[h(f(p(l)(`employees.noProjects`))+` `,1),c(p(b),{to:p(ie)(n.personalSpaceId,`directory`),onClick:Q},{default:r(()=>[h(f(p(l)(`employees.createProject`)),1)]),_:1},8,[`to`])])),Le.value.length&&!L.value?(a(),s(`p`,Se,f(p(l)(`employees.scopeRemoved`,{count:Le.value.length})),1)):g(``,!0),U.value&&V.value.permissions.includes(`session.title`)?(a(),s(`section`,{key:6,class:`employee-title-settings`,"aria-label":p(l)(`employees.titles.heading`)},[_(`h3`,null,f(p(l)(`employees.titles.heading`)),1),_(`div`,we,[c(x,{modelValue:k.value,"onUpdate:modelValue":o[3]||=e=>k.value=e,field:``,"control-id":`employee-title-mode`,label:p(l)(`employees.titles.mode`),options:Fe.value,disabled:F.value||M.value||N.value},null,8,[`modelValue`,`label`,`options`,`disabled`]),c(x,{modelValue:A.value,"onUpdate:modelValue":o[4]||=e=>A.value=e,field:``,"control-id":`employee-title-style`,label:p(l)(`employees.titles.style`),options:Ie.value,disabled:F.value||M.value||N.value||k.value===`off`},null,8,[`modelValue`,`label`,`options`,`disabled`])]),_(`p`,Te,[h(f(p(l)(`employees.titles.example`))+` `,1),_(`span`,Ee,`【P1|`+f(A.value===`emoji`?`🔧 `:``)+`FIX|`+f(p(l)(`employees.titles.exampleTask`))+`】`,1)]),_(`p`,De,f(p(l)(`employees.titles.boundary`)),1)],8,Ce)):g(``,!0),_(`section`,{class:`employee-permissions`,"aria-label":p(l)(`employees.permissions`)},[_(`strong`,null,f(p(l)(`employees.permissions`)),1),_(`ul`,null,[(a(!0),s(d,null,i(V.value.permissions,e=>(a(),s(`li`,{key:e},f(e===`board.read`?p(l)(`employees.boardRead`):e===`board.write`?p(l)(`employees.boardWrite`):e===`session.title`?p(l)(`employees.titles.heading`):e),1))),128))]),_(`p`,ke,f(p(l)(`employees.noExecutor`)),1)],8,Oe),V.value.runtime?(a(),s(`p`,{key:7,class:ee([`employee-runtime`,{"is-warning":V.value.runtimeStatus!==`ready`}])},f(V.value.runtimeStatus===`ready`?p(l)(`employees.hostReady`):p(l)(`employees.installRequired`)),3)):g(``,!0),I.value||V.value.identityConflict?(a(),s(`p`,Ae,f(I.value||p(l)(`employees.errors.identity_conflict`)),1)):g(``,!0),N.value?(a(),u(y,{key:9,size:`sm`,disabled:M.value,onClick:o[5]||=e=>Z()},{default:r(()=>[h(f(p(l)(`employees.reloadScope`)),1)]),_:1},8,[`disabled`])):g(``,!0),L.value?(a(),s(`div`,je,[_(`strong`,null,f(p(l)(`employees.scopeSaved`)),1),_(`p`,null,f(D.value===`all`?p(l)(`employees.scope.successAll`,{count:W.value.length}):W.value.length?p(l)(`employees.successMultiple`,{count:W.value.length}):p(l)(`employees.successUnassigned`)),1)])):g(``,!0)],64)):(a(),s(`p`,de,f(p(l)(`employees.noTemplates`)),1))]),_:2},[V.value&&!z.value?{name:`footer`,fn:r(()=>[c(y,{variant:`ghost`,disabled:F.value,onClick:Q},{default:r(()=>[h(f(p(l)(`employees.cancel`)),1)]),_:1},8,[`disabled`]),q.value&&J.value&&!F.value&&!M.value&&!N.value&&V.value.runtimeStatus===`ready`?(a(),u(p(b),{key:0,class:`ui-button ui-button--primary`,to:J.value,onClick:Q},{default:r(()=>[h(f(p(l)(`employees.open`)),1)]),_:1},8,[`to`])):(a(),u(y,{key:1,variant:`primary`,type:`submit`,busy:F.value,"busy-label":ze.value,disabled:M.value||N.value||!j.value||q.value||V.value.identityConflict||!n.personalSpaceId},{default:r(()=>[h(f(ze.value),1)]),_:1},8,[`busy`,`busy-label`,`disabled`]))]),key:`0`}:void 0]),1032,[`open`,`title`,`busy`]))}}),[[`__scopeId`,`data-v-4e6fb0a1`]]);export{C as n,w as t};
@@ -1,3 +0,0 @@
1
- import{B as e,E as t,H as n,I as r,P as i,Q as a,S as o,T as s,U as c,a as l,b as u,f as d,g as f,h as p,it as m,m as h,ot as g,rt as _,v,w as y,x as b,y as x}from"./i18n-oJFlt8hW.js";import{t as S}from"./console-Cw7TzOSC.js";import{a as C,i as w,r as T,s as E}from"./client-DnwnUBQV.js";import{t as D}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as O}from"./UiButton-x8hiHNRM.js";import{h as k,m as A}from"./useApi-CROJJdhE-7gt0QyQ5.js";import{t as j}from"./vue-router-CCvPGaLD.js";import{t as M}from"./UiDialog-mjletK0y.js";import{t as N}from"./UiSelect-K29jnV-1.js";import{t as P}from"./AgentHand-UzVhbKUC.js";import{i as F,n as I}from"./profile-model-BQO4zNs9.js";import{t as L}from"./AgentName-DJpvkub2.js";import{a as ee,n as R,r as z,s as B,t as V}from"./catalog-D0VEfOAV.js";import{t as H}from"./ProjectScopePicker-CiDxM2Yx.js";import{n as te,t as ne}from"./EmployeeRecruitDialog-D8Hvhc-M.js";import{i as re,r as ie,t as U}from"./shared-report-CiX64ZiD.js";import{t as ae}from"./UiSegmented-WFfz9Evl.js";import{l as oe,n as W,o as G,s as K,u as q}from"./judgment-types-DR931cZ7.js";var se=[`aria-busy`],ce={key:0,class:`bole-alert`,role:`alert`},J={class:`bole-header`},Y={class:`bole-heading`},X={id:`bole-overview-title`},le=[`aria-label`],ue=[`aria-pressed`],de={"data-testid":`people-total`},Z=[`aria-pressed`],fe=[`aria-label`],pe={"data-testid":`people-working`},me=[`disabled`],he={class:`bole-controls`},ge={class:`bole-filters`},_e=[`aria-label`,`placeholder`],ve=[`aria-label`],ye=[`aria-pressed`],Q=[`aria-pressed`,`onClick`],be={key:1,class:`bole-result-count`,role:`status`},xe=[`aria-label`],Se={key:1,"aria-labelledby":`bole-work-title`},Ce={key:0,class:`bole-empty`,role:`status`},we={key:1,class:`ui-card bole-agent-list`},Te={class:`bole-table-heading`,"aria-hidden":`true`},Ee={class:`bole-agent-identity`},De={class:`bole-agent-mark`,"aria-hidden":`true`},Oe=[`src`],ke={class:`bole-agent-work`},Ae=[`data-status`],je={key:1,class:`is-idle`},Me={class:`bole-agent-projects`},Ne={key:0},Pe={key:1},Fe={key:2,class:`ui-empty bole-empty`},Ie={key:2,"aria-labelledby":`bole-history-title`},Le={key:0,class:`ui-card bole-timeline`},Re={class:`bole-recruitment-identity`},ze={class:`bole-recruitment-reason`},Be=[`datetime`],Ve={key:1,class:`ui-empty bole-empty`},He=`__bole_unassigned__`,Ue=200,We=D(t({__name:`BolePeoplePanel`,props:{personalSpaceId:{},projects:{}},setup(t){let n=t,p=A(),m=a([]),h=a([]),S=a([]),C=a(!1),w=a(!1),D=a(`people`),O=a(``),k=a(``),j=a(`all`),M=v(()=>[{value:`all`,label:l(`employees.bole.allWork`)},{value:`working`,label:l(`employees.bole.workingNow`)},{value:`idle`,label:l(`employees.bole.withoutTask`)}]),N=a(null),I=a(null),ee=v(()=>h.value.length>=Ue),R=0,z=new Set([`awaiting_recruitment`,`queued`,`running`,`paused`,`awaiting_review`,`blocked`]),B=v(()=>new Map(n.projects.map(e=>[e.project_id,e.profile.name]))),V=v(()=>m.value.filter(e=>e.status===`active`)),ne=v(()=>h.value.filter(e=>z.has(e.status))),re=v(()=>new Set(oe.value.filter(e=>e.task).map(e=>e.id))),ie=v(()=>new Set(V.value.flatMap(e=>e.projectIds).filter(Boolean))),U=v(()=>{let e=[`coordinator`,`durable`,`hr`,`temporary`],t=new Map;for(let e of V.value)t.set(e.type,(t.get(e.type)??0)+1);return[...t.entries()].sort(([t],[n])=>at(e,t)-at(e,n)).map(([e,t])=>({type:e,count:t,label:ot(e)}))}),oe=v(()=>V.value.map(e=>({...e,task:e.workStatus?z.has(e.workStatus)&&e.currentTaskId?h.value.find(t=>t.id===e.currentTaskId)??{id:e.currentTaskId,title:e.currentTaskId,status:e.workStatus,projectId:``,agentIds:[e.id],updatedAt:``}:void 0:ne.value.filter(t=>t.agentIds.includes(e.id)).sort((e,t)=>t.updatedAt.localeCompare(e.updatedAt))[0]}))),W=v(()=>[...S.value].sort((e,t)=>t.createdAt.localeCompare(e.createdAt))),G=v(()=>[...new Set([...n.projects.map(e=>e.project_id),...m.value.flatMap(e=>e.projectIds),...h.value.map(e=>e.projectId),...S.value.map(e=>e.projectId)].filter(Boolean))].map(e=>({id:e,name:B.value.get(e)??e})).sort((e,t)=>e.name.localeCompare(t.name)).concat({id:He,name:l(`employees.bole.noProject`)})),K=v({get:()=>N.value??G.value.map(e=>e.id),set:e=>{N.value=e.length===G.value.length?null:e}}),q=v(()=>oe.value.filter(e=>{let t=[...e.projectIds,...e.task?.projectId?[e.task.projectId]:[]];return Ke(t)&&(!k.value||e.type===k.value)&&(j.value===`all`||(j.value===`working`?!!e.task:!e.task))&&qe([e.name,e.responsibility,...e.searchTerms,e.task?.title??``,...t.map(lt)])}).sort((e,t)=>Number(!!t.task)-Number(!!e.task)||e.name.localeCompare(t.name))),We=v(()=>W.value.filter(e=>Ke(e.projectId?[e.projectId]:[])&&(!k.value||e.positionKind===k.value)&&qe([...Je(e.agentId),e.reason,e.workKind,lt(e.projectId)]))),Ge=v(()=>O.value||k.value||N.value!==null||D.value===`people`&&j.value!==`all`);function Ke(e){return N.value===null||(e.length?e:[He]).some(e=>N.value?.includes(e))}function qe(e){return F(e.join(` `),O.value)}function Je(e){let t=m.value.find(t=>t.id===e);return t?[t.name,t.responsibility,...t.searchTerms]:[e]}function Ye(){O.value=``,k.value=``,j.value=`all`,N.value=null}function Xe(e){return te(e.replace(/^employee\./,``))}e([D,O,k,j,N],()=>{I.value&&(I.value.scrollTop=0)}),e([()=>n.personalSpaceId,()=>p.query.q],([e,t],[n])=>{e===n?O.value=typeof t==`string`?t:``:(Ye(),n===void 0&&(O.value=typeof t==`string`?t:``),Ze())},{immediate:!0});async function Ze(){let e=++R;if(m.value=[],h.value=[],S.value=[],w.value=!1,!n.personalSpaceId){C.value=!1;return}C.value=!0;let t=new URLSearchParams({personalSpaceId:n.personalSpaceId}),r=await Promise.allSettled([T(`/api/project-agents?${t}`),T(`/api/project-agent-tasks?${t}&limit=${Ue}`),T(`/api/project-agent-recruitments?${t}`)]);e===R&&(r[0].status===`fulfilled`&&(m.value=$e(r[0].value,`agents`).map(tt).filter(it)),r[1].status===`fulfilled`&&(h.value=$e(r[1].value,`tasks`).map(nt).filter(it)),r[2].status===`fulfilled`&&(S.value=$e(r[2].value,`recruitments`).map(rt).filter(it)),w.value=r.some(e=>e.status===`rejected`),C.value=!1)}function Qe(e){return e&&typeof e==`object`&&!Array.isArray(e)?e:{}}function $e(e,t){if(Array.isArray(e))return e;let n=Qe(e),r=n[t]??n.items;return Array.isArray(r)?r:[]}function $(e,t,n=t){let r=e[t]??e[n];return typeof r==`string`?r:``}function et(e){return Array.isArray(e)?e:[]}function tt(e){let t=Qe(e),n=Qe(t.profile),r=$(t,`agentId`,`agent_id`);if(!r)return null;let i=et(t.assignments).flatMap(e=>{let t=Qe(e),n=$(t,`status`),r=$(t,`personalProjectId`,`personal_project_id`);return n===`active`&&r?[r]:[]}),a=$(t,`personalProjectId`,`personal_project_id`);return{id:r,name:$(n,`displayName`,`display_name`)||$(n,`name`)||r,emoji:$(n,`occupationEmoji`,`occupation_emoji`)||`✦`,responsibility:$(n,`responsibility`),searchTerms:[$(n,`name`),...et(n.capabilities),...et(n.workKinds??n.work_kinds)].filter(e=>typeof e==`string`),type:$(n,`agentType`,`agent_type`)||`other`,status:$(n,`status`)||`active`,projectIds:[...new Set([...i,...a?[a]:[]])],currentTaskId:$(t,`currentTaskId`,`current_task_id`),workStatus:$(t,`workStatus`,`work_status`)}}function nt(e){let t=Qe(e),n=$(t,`taskId`,`task_id`);if(!n)return null;let r=[$(t,`ownerAgentId`,`owner_agent_id`),$(t,`leadAgentId`,`lead_agent_id`)],i=et(t.participants).flatMap(e=>{let t=Qe(e),n=$(t,`status`);return n&&!z.has(n)?[]:[$(t,`agentId`,`agent_id`)]});return{id:n,title:$(t,`title`)||n,status:$(t,`status`)||`queued`,projectId:$(t,`personalProjectId`,`personal_project_id`),agentIds:[...new Set([...r,...i].filter(Boolean))],updatedAt:$(t,`updatedAt`,`updated_at`)||$(t,`createdAt`,`created_at`)}}function rt(e){let t=Qe(e),n=$(t,`recruitmentId`,`recruitment_id`);return n?{id:n,agentId:$(t,`recruitedAgentId`,`recruited_agent_id`)||$(t,`proposedAgentId`,`proposed_agent_id`),projectId:$(t,`personalProjectId`,`personal_project_id`),workKind:$(t,`workKind`,`work_kind`),positionKind:$(t,`positionKind`,`position_kind`),reason:$(t,`reason`)||$(t,`reasonCode`,`reason_code`),status:$(t,`status`),createdAt:$(t,`createdAt`,`created_at`)}:null}function it(e){return e!==null}function at(e,t){let n=e.indexOf(t);return n<0?e.length:n}function ot(e){return[`coordinator`,`durable`,`hr`,`temporary`].includes(e)?l(`employees.bole.types.${e}`):l(`employees.bole.types.other`)}function st(e){return[`awaiting_recruitment`,`queued`,`running`,`paused`,`failed`,`awaiting_review`,`blocked`].includes(e)?l(`employees.bole.status.${e}`):e}function ct(e){return m.value.find(t=>t.id===e)?.name??e}function lt(e){return B.value.get(e)??l(`employees.bole.noProject`)}function ut(e){if(!e)return l(`employees.bole.unknownTime`);let t=new Date(e);return Number.isNaN(t.getTime())?e:new Intl.DateTimeFormat(void 0,{dateStyle:`medium`,timeStyle:`short`}).format(t)}return(e,n)=>(i(),o(`div`,{class:`bole-panel`,"aria-busy":C.value},[w.value?(i(),o(`div`,ce,[x(`span`,null,g(_(l)(`employees.bole.partialError`)),1),x(`button`,{class:`quiet-button`,type:`button`,onClick:Ze},g(_(l)(`employees.retry`)),1)])):b(``,!0),x(`header`,J,[x(`div`,Y,[x(`h2`,X,g(_(l)(`employees.bole.title`)),1),x(`nav`,{class:`bole-views`,"aria-label":_(l)(`employees.bole.viewLabel`)},[x(`button`,{id:`bole-work-title`,type:`button`,"aria-pressed":D.value===`people`,onClick:n[0]||=e=>D.value=`people`},[y(g(_(l)(`employees.bole.currentWork`))+` `,1),x(`span`,de,g(C.value?`—`:V.value.length),1)],8,ue),x(`button`,{id:`bole-history-title`,type:`button`,"aria-pressed":D.value===`history`,onClick:n[1]||=e=>D.value=`history`},[y(g(_(l)(`employees.bole.recruitmentHistory`))+` `,1),x(`span`,null,g(C.value?`—`:S.value.length),1)],8,Z)],8,le)]),x(`dl`,{class:`bole-summary`,"aria-label":_(l)(`employees.bole.overview`)},[x(`div`,pe,[x(`dt`,null,g(_(l)(`employees.bole.workingNow`)),1),x(`dd`,null,g(C.value?`—`:re.value.size),1)]),x(`div`,null,[x(`dt`,null,g(_(l)(`employees.bole.coveredProjects`)),1),x(`dd`,null,g(C.value?`—`:ie.value.size),1)])],8,fe),x(`button`,{class:`quiet-button bole-refresh`,type:`button`,disabled:C.value,onClick:Ze},g(_(l)(`common.actions.refresh`)),9,me)]),x(`div`,he,[x(`div`,ge,[c(x(`input`,{"onUpdate:modelValue":n[2]||=e=>O.value=e,type:`search`,class:`bole-search`,"aria-label":_(l)(`employees.bole.search`),placeholder:_(l)(`employees.bole.search`)},null,8,_e),[[d,O.value]]),s(H,{modelValue:K.value,"onUpdate:modelValue":n[3]||=e=>K.value=e,projects:G.value,label:_(l)(`employees.allProjects.projectFilter`),"all-label":_(l)(`employees.bole.allProjects`),"empty-label":_(l)(`employees.filterEmpty`),compact:``,hint:``},null,8,[`modelValue`,`projects`,`label`,`all-label`,`empty-label`]),D.value===`people`?(i(),u(ae,{key:0,modelValue:j.value,"onUpdate:modelValue":n[4]||=e=>j.value=e,label:_(l)(`employees.bole.workFilter`),options:M.value},null,8,[`modelValue`,`label`,`options`])):b(``,!0)]),x(`div`,{class:`bole-role-filters`,role:`group`,"aria-label":_(l)(`employees.bole.distribution`)},[x(`button`,{type:`button`,"aria-pressed":!k.value,onClick:n[5]||=e=>k.value=``},g(_(l)(`employees.bole.allRoles`)),9,ye),(i(!0),o(f,null,r(U.value,e=>(i(),o(`button`,{key:e.type,type:`button`,"aria-pressed":k.value===e.type,onClick:t=>k.value=k.value===e.type?``:e.type},[y(g(e.label)+` `,1),x(`span`,null,g(e.count),1)],8,Q))),128)),Ge.value?(i(),o(`button`,{key:0,class:`quiet-button bole-clear`,type:`button`,onClick:Ye},g(_(l)(`employees.bole.clearFilters`)),1)):b(``,!0),Ge.value&&!C.value?(i(),o(`span`,be,g(_(l)(`employees.bole.resultCount`,{count:D.value===`people`?q.value.length:We.value.length})),1)):b(``,!0)],8,ve)]),x(`div`,{ref_key:`scrollRegion`,ref:I,class:`bole-content`,tabindex:`0`,role:`region`,"aria-label":_(l)(D.value===`people`?`employees.bole.currentWork`:`employees.bole.recruitmentHistory`)},[C.value?(i(),u(E,{key:0,variant:`compact`,label:_(l)(`employees.bole.loading`)},null,8,[`label`])):D.value===`people`?(i(),o(`section`,Se,[ee.value?(i(),o(`p`,Ce,g(_(l)(`employees.bole.taskLimit`)),1)):b(``,!0),q.value.length?(i(),o(`div`,we,[x(`div`,Te,[x(`span`,null,g(_(l)(`projectAgents.title`)),1),x(`span`,null,g(_(l)(`employees.bole.taskColumn`)),1),x(`span`,null,g(_(l)(`employees.bole.projectsColumn`)),1)]),(i(!0),o(f,null,r(q.value,e=>(i(),o(`article`,{key:e.id,class:`bole-agent-row`},[x(`div`,Ee,[x(`span`,De,[Xe(e.id)?(i(),o(`img`,{key:0,src:Xe(e.id),alt:``},null,8,Oe)):(i(),o(f,{key:1},[y(g(e.emoji),1)],64))]),x(`div`,null,[x(`strong`,null,[s(L,{"space-id":t.personalSpaceId,"agent-id":e.id,name:e.name},null,8,[`space-id`,`agent-id`,`name`])]),s(P,{"agent-id":e.id},null,8,[`agent-id`]),x(`small`,null,g(e.responsibility||ot(e.type)),1)])]),x(`div`,ke,[e.task?(i(),o(f,{key:0},[x(`span`,{class:`ui-badge bole-status`,"data-status":e.task.status},g(st(e.task.status)),9,Ae),x(`p`,null,g(e.task.title),1)],64)):(i(),o(`p`,je,g(_(l)(`employees.bole.idle`)),1))]),x(`div`,Me,[e.projectIds.length?(i(),o(f,{key:0},[(i(!0),o(f,null,r(e.projectIds.slice(0,2),e=>(i(),o(`span`,{key:e},g(lt(e)),1))),128)),e.projectIds.length>2?(i(),o(`details`,Ne,[x(`summary`,null,g(_(l)(`employees.bole.moreProjects`,{count:e.projectIds.length-2})),1),(i(!0),o(f,null,r(e.projectIds.slice(2),e=>(i(),o(`span`,{key:e},g(lt(e)),1))),128))])):b(``,!0)],64)):(i(),o(`span`,Pe,g(e.task?.projectId?lt(e.task.projectId):_(l)(`employees.bole.noProject`)),1))])]))),128))])):(i(),o(`p`,Fe,g(_(l)(Ge.value?`employees.bole.noMatch`:`employees.bole.noAgents`)),1))])):(i(),o(`section`,Ie,[We.value.length?(i(),o(`ol`,Le,[(i(!0),o(f,null,r(We.value,e=>(i(),o(`li`,{key:e.id},[x(`div`,Re,[x(`strong`,null,[s(L,{"space-id":t.personalSpaceId,"agent-id":e.agentId,name:ct(e.agentId)},null,8,[`space-id`,`agent-id`,`name`])]),x(`small`,null,g(ot(e.positionKind))+` · `+g(lt(e.projectId)),1)]),x(`div`,ze,[x(`p`,null,g(e.reason),1),x(`small`,null,g(e.workKind||e.status),1)]),x(`time`,{datetime:e.createdAt},g(ut(e.createdAt)),9,Be)]))),128))])):(i(),o(`p`,Ve,g(_(l)(Ge.value?`employees.bole.noMatch`:`employees.bole.noRecruitments`)),1))]))],8,xe)],8,se))}}),[[`__scopeId`,`data-v-5c62fca6`]]),Ge={key:1,class:`ui-dialog__error employee-dialog-error`,role:`alert`},Ke={class:`ui-field`},qe=[`readonly`,`disabled`],Je={key:0,class:`ui-meta`},Ye={class:`ui-field`},Xe=[`readonly`,`disabled`],Ze={class:`ui-field`},Qe=[`readonly`,`disabled`],$e={class:`ui-field`},$=[`readonly`,`disabled`],et=t({__name:`EmployeeTaskDialog`,props:{open:{type:Boolean},item:{},projects:{},defaultProjectId:{},personalSpaceId:{},canWrite:{type:Boolean}},emits:[`close`,`saved`],setup(t,{emit:r}){let p=t,m=r,h=a(!1),S=a(!1),w=a(``),T=a(null),D=a(``),k=a(``),A=a(``),j=a(`medium`),P=a(``),F=a(``),I=0,L={signature:``,id:``},ee=v(()=>p.canWrite&&!S.value&&!w.value&&!!D.value&&k.value.trim().length>=2),R=v(()=>p.projects.map(e=>({value:e.id,label:e.name}))),B=v(()=>[`critical`,`high`,`medium`,`low`].map(e=>({value:e,label:l(`employees.task.priorities.${e}`)})));e([()=>p.open,()=>p.item,()=>p.personalSpaceId],()=>{H()},{immediate:!0});async function V(e,t){return C(`/api/employee-templates/jefa/call`,{personalSpaceId:p.personalSpaceId,personalProjectId:D.value,tool:e,arguments:t})}async function H(){let e=++I;if(p.open&&(w.value=``,T.value=null,L={signature:``,id:``},D.value=p.item?.projectId??p.defaultProjectId??``,k.value=``,A.value=``,j.value=`medium`,P.value=``,F.value=``,S.value=!!p.item,p.item))try{let t=await V(`get_task`,{workItemId:p.item.id});if(e!==I)return;if(t.item.id!==p.item.id||t.item.projectId!==D.value||!t.item.updatedAt)throw Error(l(`employees.loadError`));T.value=t.item,k.value=t.item.title,A.value=t.item.summary??``,j.value=t.item.priority??`medium`,P.value=t.item.acceptanceCriteria?.join(`
2
- `)??``,F.value=t.item.tags?.join(`, `)??``}catch(t){e===I&&(w.value=z(t))}finally{e===I&&(S.value=!1)}}async function te(){if(!ee.value||h.value)return;h.value=!0;let e={title:k.value.trim(),summary:A.value.trim()||k.value.trim(),priority:j.value,acceptanceCriteria:P.value.split(`
3
- `).map(e=>e.trim()).filter(Boolean),tags:F.value.split(/[,,]/).map(e=>e.trim()).filter(Boolean)},t=JSON.stringify([D.value,T.value?.updatedAt,e]);L.signature!==t&&(L={signature:t,id:`board-edit-${crypto.randomUUID()}`});try{T.value?await V(`update_tasks`,{requestId:L.id,updates:[{id:T.value.id,expectedUpdatedAt:T.value.updatedAt,...e}]}):await V(`create_tasks`,{messageId:L.id,tasks:[e]}),m(`saved`),m(`close`)}catch(e){w.value=z(e)}finally{h.value=!1}}function ne(){h.value||m(`close`)}return(e,r)=>(i(),u(M,{open:t.open,class:`employee-dialog`,title:_(l)(t.item?`employees.task.detail`:`employees.task.create`),busy:h.value,form:``,onClose:ne,onSubmit:te},{footer:n(()=>[s(O,{disabled:h.value,onClick:ne},{default:n(()=>[y(g(_(l)(`employees.close`)),1)]),_:1},8,[`disabled`]),t.canWrite?(i(),u(O,{key:0,variant:`primary`,type:`submit`,disabled:!ee.value,busy:h.value,"busy-label":_(l)(`employees.task.saving`)},{default:n(()=>[y(g(_(l)(`employees.task.save`)),1)]),_:1},8,[`disabled`,`busy`,`busy-label`])):b(``,!0)]),default:n(()=>[S.value?(i(),u(E,{key:0,variant:`compact`,label:_(l)(`employees.loadingTask`)},null,8,[`label`])):b(``,!0),w.value?(i(),o(`div`,Ge,[x(`p`,null,g(w.value),1),s(O,{size:`sm`,disabled:h.value,onClick:H},{default:n(()=>[y(g(_(l)(`employees.task.reload`)),1)]),_:1},8,[`disabled`])])):b(``,!0),S.value?b(``,!0):(i(),o(f,{key:2},[s(N,{modelValue:D.value,"onUpdate:modelValue":r[0]||=e=>D.value=e,field:``,label:_(l)(`employees.task.project`),placeholder:_(l)(`employees.task.chooseProject`),options:R.value,disabled:!!t.item||h.value||!t.canWrite,required:``},null,8,[`modelValue`,`label`,`placeholder`,`options`,`disabled`]),x(`label`,Ke,[y(g(_(l)(`employees.task.title`)),1),c(x(`input`,{"onUpdate:modelValue":r[1]||=e=>k.value=e,autofocus:``,minlength:`2`,maxlength:`180`,required:``,readonly:!t.canWrite,disabled:h.value},null,8,qe),[[d,k.value]])]),T.value?(i(),o(`p`,Je,g(_(l)(`employees.allProjects.status.${T.value.status}`)),1)):b(``,!0),x(`label`,Ye,[y(g(_(l)(`employees.task.summary`)),1),c(x(`textarea`,{"onUpdate:modelValue":r[2]||=e=>A.value=e,rows:`4`,maxlength:`2000`,readonly:!t.canWrite,disabled:h.value},null,8,Xe),[[d,A.value]])]),s(N,{modelValue:j.value,"onUpdate:modelValue":r[3]||=e=>j.value=e,field:``,label:_(l)(`employees.task.priority`),options:B.value,disabled:!t.canWrite||h.value},null,8,[`modelValue`,`label`,`options`,`disabled`]),x(`label`,Ze,[y(g(_(l)(`employees.task.criteria`)),1),c(x(`textarea`,{"onUpdate:modelValue":r[4]||=e=>P.value=e,rows:`3`,readonly:!t.canWrite,disabled:h.value},null,8,Qe),[[d,P.value]])]),x(`label`,$e,[y(g(_(l)(`employees.task.tags`)),1),c(x(`input`,{"onUpdate:modelValue":r[5]||=e=>F.value=e,readonly:!t.canWrite,disabled:h.value},null,8,$),[[d,F.value]])])],64))]),_:1},8,[`open`,`title`,`busy`]))}}),tt=[`disabled`],nt={key:1,class:`employee-share-preview`,role:`status`},rt={key:2,class:`employee-share-empty`},it={key:3,class:`ui-dialog__error employee-dialog-error`,role:`alert`},at={key:4,class:`employee-share-result`},ot={class:`ui-field`},st=[`value`,`aria-label`],ct=[`href`],lt={key:5,class:`ui-meta`},ut={key:6,class:`employee-share-active`},dt={class:`employee-dialog-count`},ft=D(t({__name:`EmployeeShareDialog`,props:{open:{type:Boolean},projects:{}},emits:[`close`],setup(t,{emit:c}){let d=t,p=c,m=a([]),h=a({}),S=a({}),C=a(!1),D=a(!1),k=a(null),A=a(``),j=a(``),N=a(``),P=a(!1),F=0,I=v(()=>d.projects.filter(e=>h.value[e.id]?.publicShareEnabled)),L=v(()=>m.value.every(e=>S.value[e]!==void 0)?m.value.reduce((e,t)=>e+S.value[t],0):null),ee=[`localhost`,`127.0.0.1`,`[::1]`].includes(window.location.hostname);e([()=>d.open,()=>JSON.stringify(d.projects.map(e=>e.id))],()=>{d.open?B():++F},{immediate:!0}),e(m,()=>{N.value=``,P.value=!1});function R(e){return`/employee-workspaces/jefa/${encodeURIComponent(e)}/api`}async function B(e=!1){let t=++F;e||(m.value=[]),h.value={},S.value={},j.value=``,N.value=``,C.value=!0;let n=await Promise.allSettled(d.projects.map(async e=>{let t=(await T(`${R(e.id)}/snapshot`)).snapshot.projects.find(t=>t.id===e.id);if(!t)throw Error(l(`employees.loadError`));let n=null,r=!1;if(t.publicShareEnabled&&t.publicShareSlug)try{n=(await U({id:e.id,slug:t.publicShareSlug})).items.length}catch{r=!0}return{state:t,count:n,previewFailed:r}}));if(t===F){for(let e of n)e.status===`fulfilled`&&(h.value[e.value.state.id]=e.value.state,e.value.count!==null&&(S.value[e.value.state.id]=e.value.count));n.some(e=>e.status===`rejected`||e.value.previewFailed)&&(j.value=l(`employees.share.loadFailed`)),C.value=!1}}async function V(){if(!m.value.length||D.value||C.value||L.value===0)return;D.value=!0,k.value=`generate`,A.value=``,j.value=``,N.value=``,P.value=!1;let e=F,t=m.value.filter(e=>d.projects.some(t=>t.id===e));try{let n=await Promise.allSettled(t.map(async t=>{if(!h.value[t])throw Error(l(`employees.share.loadFailed`));let n=h.value[t];if(!n.publicShareEnabled||!n.publicShareSlug){if(n=(await w(`/employee-workspaces/jefa/${encodeURIComponent(t)}/api/projects/${encodeURIComponent(t)}/sharing`,{publicShareEnabled:!0,acceptsPublicRequests:!1})).project,n.id!==t||!n.publicShareEnabled||!n.publicShareSlug)throw Error(l(`employees.loadError`));if(e!==F)throw Error(l(`employees.share.loadFailed`));h.value[t]=n}let r=(await U({id:t,slug:n.publicShareSlug})).items.length;if(e!==F)throw Error(l(`employees.share.loadFailed`));return S.value[t]=r,{id:t,slug:n.publicShareSlug}}));if(e!==F)return;if(n.some(e=>e.status===`rejected`))throw Error(l(`employees.share.partial`));if(t.every(e=>S.value[e]===0))throw Error(l(`employees.shareContent.emptySelection`));N.value=ie(n.flatMap(e=>e.status===`fulfilled`?[e.value]:[]),window.location.origin)}catch(t){e===F&&(j.value=z(t))}finally{D.value=!1,k.value=null,A.value=``}}async function te(e){if(!D.value){D.value=!0,k.value=`revoke`,A.value=e,j.value=``,N.value=``,P.value=!1;try{let t=await w(`/employee-workspaces/jefa/${encodeURIComponent(e)}/api/projects/${encodeURIComponent(e)}/sharing`,{publicShareEnabled:!1,acceptsPublicRequests:!1});if(t.project.id!==e||t.project.publicShareEnabled)throw Error(l(`employees.loadError`));h.value[e]=t.project,delete S.value[e]}catch(e){j.value=z(e)}finally{D.value=!1,k.value=null,A.value=``}}}async function ne(){try{await navigator.clipboard.writeText(N.value),P.value=!0}catch{j.value=l(`employees.share.copyFailed`)}}function re(){D.value||p(`close`)}return(e,a)=>(i(),u(M,{open:t.open,class:`employee-dialog employee-share-dialog`,title:_(l)(`employees.share.title`),description:_(l)(`employees.share.disclosure`),busy:D.value,onClose:re},{footer:n(()=>[x(`span`,dt,g(_(l)(`employees.scope.count`,{selected:m.value.length,total:t.projects.length})),1),s(O,{variant:`primary`,disabled:!m.value.length||D.value||C.value||L.value===0,busy:k.value===`generate`,"busy-label":_(l)(`employees.share.generating`),onClick:V},{default:n(()=>[y(g(_(l)(`employees.share.generate`)),1)]),_:1},8,[`disabled`,`busy`,`busy-label`])]),default:n(()=>[C.value?(i(),u(E,{key:0,variant:`compact`,label:_(l)(`employees.loadingShare`)},null,8,[`label`])):b(``,!0),x(`fieldset`,{disabled:D.value||C.value},[s(H,{modelValue:m.value,"onUpdate:modelValue":a[0]||=e=>m.value=e,projects:t.projects,disabled:D.value||C.value,inline:``,label:_(l)(`employees.share.projects`),hint:_(l)(`employees.share.scopeHint`)},null,8,[`modelValue`,`projects`,`disabled`,`label`,`hint`])],8,tt),m.value.length&&!C.value?(i(),o(`p`,nt,[y(g(L.value===null?_(l)(`employees.shareContent.verifyContent`):_(l)(`employees.shareContent.publicCount`,{count:L.value}))+` `,1),s(O,{size:`sm`,variant:`ghost`,disabled:D.value||C.value,onClick:a[1]||=e=>B(!0)},{default:n(()=>[y(g(_(l)(`common.actions.refresh`)),1)]),_:1},8,[`disabled`])])):b(``,!0),m.value.length&&!C.value&&L.value===0?(i(),o(`p`,rt,g(_(l)(`employees.shareContent.emptySelection`)),1)):b(``,!0),j.value?(i(),o(`div`,it,[x(`p`,null,g(j.value),1),D.value?b(``,!0):(i(),u(O,{key:0,size:`sm`,onClick:a[2]||=e=>B(!0)},{default:n(()=>[y(g(_(l)(`employees.retry`)),1)]),_:1}))])):b(``,!0),N.value?(i(),o(`div`,at,[x(`label`,ot,[y(g(_(l)(`employees.share.link`)),1),x(`input`,{value:N.value,readonly:``,"aria-label":_(l)(`employees.share.link`),onFocus:a[3]||=e=>e.target.select()},null,40,st)]),x(`div`,null,[s(O,{size:`sm`,onClick:ne},{default:n(()=>[y(g(_(l)(P.value?`employees.share.copied`:`employees.share.copy`)),1)]),_:1}),x(`a`,{href:N.value,target:`_blank`,rel:`noreferrer`},g(_(l)(`employees.share.preview`)),9,ct)])])):b(``,!0),_(ee)?(i(),o(`p`,lt,g(_(l)(`employees.share.local`)),1)):b(``,!0),I.value.length?(i(),o(`section`,ut,[x(`h3`,null,g(_(l)(`employees.share.active`)),1),(i(!0),o(f,null,r(I.value,e=>(i(),o(`div`,{key:e.id},[x(`span`,null,g(e.name),1),s(O,{size:`sm`,variant:`ghost`,disabled:D.value,busy:k.value===`revoke`&&A.value===e.id,"busy-label":_(l)(`employees.share.revoking`),onClick:t=>te(e.id)},{default:n(()=>[y(g(_(l)(`employees.share.revoke`)),1)]),_:1},8,[`disabled`,`busy`,`busy-label`,`onClick`])]))),128))])):b(``,!0)]),_:1},8,[`open`,`title`,`description`,`busy`]))}}),[[`__scopeId`,`data-v-50bf5065`]]);function pt(e){return`fuli:jefa:project-filter:v1:${encodeURIComponent(e)}`}function mt(t){let n=A(),r=k(),i=a(null),o=a(!1),s=a(!1),c=!1,l=``,u=!0;e([t.enabled,t.spaceId],([e,t])=>{let n=e?t:``;if(n!==l&&(u=!l||!n,l=n,i.value=null,c=!1,o.value=!1,s.value=!1,l))try{let e=localStorage.getItem(pt(l));if(!e)return;let t=JSON.parse(e);t&&typeof t==`object`&&`version`in t&&t.version===1&&`projectIds`in t&&Array.isArray(t.projectIds)&&t.projectIds.every(e=>typeof e==`string`&&e.length>0&&e===e.trim())&&(i.value=[...new Set(t.projectIds)],c=!0)}catch(e){s.value=!(e instanceof SyntaxError)}},{immediate:!0,flush:`sync`});function d(){if(l)try{let e=pt(l);i.value===null?localStorage.removeItem(e):localStorage.setItem(e,JSON.stringify({version:1,projectIds:i.value})),s.value=!1}catch{s.value=!0}}function f(){let e=n.query.project;return[...new Set((Array.isArray(e)?e:[e]).filter(e=>typeof e==`string`&&!!e))]}function p(){return[n.query.empty].flat().includes(`1`)}function m(e){return!e.length&&!p()||e.length===1&&[`all`,`__all__`].includes(e[0])}let h=v(()=>t.projectIds.value.filter(e=>i.value===null||i.value.includes(e)));function g(){if(!t.enabled.value||!l||!t.ready.value||!c)return;let e=h.value,a=f(),o=i.value===null||e.length>0&&e.length===t.projectIds.value.length;o&&n.query.project===`all`&&n.query.empty===void 0||i.value!==null&&!m(a)&&a.length===e.length&&a.every(t=>e.includes(t))&&(e.length>0||n.query.empty===`1`)||r.replace({query:{...n.query,project:o?`all`:e.length?e:``,empty:o||e.length?void 0:`1`}})}e([t.enabled,t.spaceId,t.ready,t.projectIds,()=>n.query.project,()=>n.query.empty],()=>{if(!(!t.enabled.value||!l||!t.ready.value)){if(!c){let e=f(),n=!u||m(e);if(o.value=!n&&e.some(e=>!t.projectIds.value.includes(e)),o.value)return;i.value=n?null:[...new Set(e)],c=!0,n||d()}g()}},{immediate:!0});let _=v({get:()=>h.value,set:e=>{if(!t.enabled.value||!l||!t.ready.value)return;let n=i.value?.filter(e=>!t.projectIds.value.includes(e))??[];i.value=[...new Set([...n,...e.filter(e=>t.projectIds.value.includes(e))])],c=!0,o.value=!1,d(),g()}});function y(){i.value=null,c=!0,o.value=!1,d(),g()}return{selection:_,reset:y,invalidScope:o,storageUnavailable:s}}var ht=[`aria-label`],gt={class:`judgment-workbench-heading`},_t={class:`judgment-workbench-actions`},vt=[`disabled`],yt=[`disabled`],bt={key:2,class:`judgment-workbench-error`,role:`alert`},xt=[`disabled`],St={key:3,class:`judgment-workbench-error`,role:`alert`},Ct=[`aria-label`],wt=[`aria-pressed`],Tt=[`aria-pressed`],Et={key:4,class:`judgment-workbench-empty`},Dt={key:5,class:`judgment-record-list`},Ot={class:`judgment-record-heading`},kt={class:`judgment-record-kind`},At={class:`judgment-record-summary`},jt={class:`judgment-record-meta`},Mt={key:0},Nt={key:1},Pt={key:2},Ft={key:0,class:`judgment-record-evidence`},It={key:1,class:`judgment-record-details`,"data-judgment-details":``},Lt={class:`judgment-record-detail-list`},Rt={key:0},zt={key:1},Bt={key:0,class:`judgment-record-detail-block`},Vt={key:0},Ht={key:1,class:`judgment-record-detail-block`},Ut={key:2,class:`judgment-record-detail-block`},Wt=[`aria-label`],Gt={class:`judgment-feedback-editor`,"data-feedback-editor":``},Kt={"data-feedback-toggle":``},qt={class:`judgment-feedback-editor-row`},Jt=[`for`],Yt=[`id`,`onUpdate:modelValue`,`disabled`,`onInput`,`onKeydown`],Xt=[`aria-label`,`title`,`disabled`,`onClick`],Zt={class:`judgment-feedback-actions`},Qt=[`aria-label`,`aria-pressed`,`title`,`disabled`,`onClick`],$t={class:`visually-hidden`},en=[`aria-label`,`aria-pressed`,`title`,`disabled`,`onClick`],tn={class:`visually-hidden`},nn=D(t({__name:`JudgmentWorkbench`,props:{personalSpaceId:{}},setup(t){let n=t,s=a([]),l=a(!1),y=a(``),S=a(``),C=a(`human`),w=a(!1),T=a(null),D=a({}),O=a(new Set),k=0,A=0,j=0,M=0,N=v(()=>[...C.value===`human`?s.value.filter(W):s.value].sort((e,t)=>t.createdAt.localeCompare(e.createdAt))),P=v(()=>l.value||w.value);e(()=>n.personalSpaceId,e=>{k+=1,j+=1,M+=1,s.value=[],D.value={},O.value=new Set,y.value=``,S.value=``,w.value=!1,T.value=null,L(e)},{immediate:!0});function F(e,t){return n.personalSpaceId===e&&k===t}function I(e){let t={};for(let n of e)t[n.id]=O.value.has(n.id)?D.value[n.id]??``:n.feedback?.reason??``;s.value=e,D.value=t}async function L(e){let t=typeof e==`string`?e:n.personalSpaceId,r=k,i=++A;if(y.value=``,!t||!F(t,r)){l.value=!1;return}l.value=!0;try{let e=await G(t);F(t,r)&&i===A&&I(Array.isArray(e.records)?e.records:[])}catch(e){F(t,r)&&i===A&&(y.value=e instanceof Error?e.message:q(`workbench.loadError`))}finally{F(t,r)&&i===A&&(l.value=!1)}}async function ee(){if(!n.personalSpaceId||w.value)return;let e=n.personalSpaceId,t=k,r=++j;w.value=!0,S.value=``;try{let n=await K(e,void 0,10);if(!F(e,t)||r!==j)return;let i=new Map(s.value.map(e=>[e.id,e]));for(let e of n.records??[])i.set(e.id,e);I([...i.values()])}catch(n){F(e,t)&&r===j&&(S.value=n instanceof Error?n.message:q(`workbench.reviewError`))}finally{F(e,t)&&r===j&&(w.value=!1)}}function R(e){return e&&typeof e==`object`&&`status`in e&&typeof e.status==`number`?e.status:null}function z(e){return(D.value[e.id]??e.feedback?.reason??``).trim().slice(0,1e3)}function B(e){let t=new Set(O.value);t.add(e),O.value=t}function V(e){let t=s.value.findIndex(t=>t.id===e.id);t>=0&&s.value.splice(t,1,e);let n=new Set(O.value);n.delete(e.id),O.value=n,D.value={...D.value,[e.id]:e.feedback?.reason??``}}async function H(e,t){if(T.value)return;let r=n.personalSpaceId,i=k,a=++M;if(!(!r||!F(r,i))){T.value=e.id,y.value=``;try{let n=await oe(r,e.id,t,z(e),e.feedback.revision);F(r,i)&&a===M&&V(n)}catch(e){if(!F(r,i)||a!==M)return;R(e)===409?(await L(r),F(r,i)&&(y.value=q(`workbench.feedbackConflict`))):y.value=e instanceof Error?e.message:q(`workbench.reviewError`)}finally{F(r,i)&&a===M&&(T.value=null)}}}function te(e,t){H(e,e.feedback.vote===t?null:t)}function ne(e){H(e,e.feedback.vote)}function re(e){return!e||Number.isNaN(Date.parse(e))?q(`workbench.timeUnknown`):new Date(e).toLocaleString()}function ie(e){return q(`workbench.outcome.${e}`)}function U(e){return q(`workbench.executionStatus.${e}`)}function ae(e){return q(`workbench.kind.${e}`)}function se(e){return e.policy?[e.policy.mode?q(`mode.${e.policy.mode}`):``,e.policy.quality?q(`quality.${e.policy.quality}`):``,e.policy.client?q(`client.${e.policy.client}`):``].filter(Boolean).join(` · `):`—`}function ce(e){return e===`codex`||e===`claude_code`?q(`client.${e}`):e||``}function J(e){return[ce(e.client),e.model||``].filter(Boolean).join(` · `)}function Y(e){return e.selection?[e.selection.executorId,e.selection.model,ce(e.selection.client)].filter(Boolean).join(` · `):``}function X(e,t=4e3){if(typeof e==`string`)return e.slice(0,t);if(e==null)return``;try{let n=JSON.stringify(e,null,2);return typeof n==`string`?n.slice(0,t):``}catch{return q(`workbench.detailsUnavailable`)}}function le(e){let t=e.execution?.receipt;if(!t||typeof t!=`object`)return``;let n=t.reason;return typeof n==`string`?n:``}function ue(e){return!!(e.sessionId||e.error||e.execution?.receipt||e.feedbackHistory?.length||e.executionHistory?.length)}return(e,t)=>(i(),o(`section`,{class:`judgment-workbench`,"aria-label":_(q)(`workbench.aria`)},[x(`header`,gt,[x(`div`,null,[x(`h2`,null,g(_(q)(`workbench.title`)),1),x(`p`,null,g(_(q)(`workbench.subtitle`)),1)]),x(`div`,_t,[w.value?(i(),u(E,{key:0,variant:`inline`,label:_(q)(`workbench.reviewing`)},null,8,[`label`])):b(``,!0),x(`button`,{class:`quiet-button`,type:`button`,disabled:P.value,onClick:L},g(_(q)(`workbench.refresh`)),9,vt),x(`button`,{class:`ui-button ui-button--primary`,type:`button`,"data-action":`review`,disabled:P.value||!n.personalSpaceId,onClick:ee},g(_(q)(`workbench.review`)),9,yt)])]),l.value&&!s.value.length?(i(),u(E,{key:0,variant:`compact`,label:_(q)(`workbench.loading`)},null,8,[`label`])):l.value?(i(),u(E,{key:1,variant:`inline`,label:_(q)(`workbench.loading`)},null,8,[`label`])):b(``,!0),y.value?(i(),o(`div`,bt,[x(`span`,null,g(y.value),1),x(`button`,{class:`quiet-button`,type:`button`,disabled:P.value,onClick:L},g(_(q)(`workbench.retry`)),9,xt)])):b(``,!0),S.value?(i(),o(`div`,St,g(S.value),1)):b(``,!0),x(`div`,{class:`judgment-filter`,role:`group`,"aria-label":_(q)(`workbench.title`)},[x(`button`,{type:`button`,"data-filter":`human`,"aria-pressed":C.value===`human`,onClick:t[0]||=e=>C.value=`human`},g(_(q)(`workbench.human`)),9,wt),x(`button`,{type:`button`,"data-filter":`all`,"aria-pressed":C.value===`all`,onClick:t[1]||=e=>C.value=`all`},g(_(q)(`workbench.all`)),9,Tt)],8,Ct),!l.value&&!y.value&&!N.value.length?(i(),o(`div`,Et,g(_(q)(C.value===`human`?`workbench.emptyHuman`:`workbench.empty`)),1)):(i(),o(`div`,Dt,[(i(!0),o(f,null,r(N.value,e=>(i(),o(`article`,{key:e.id,"data-decision-card":``,class:m([`judgment-record-card`,{"is-human-needed":_(W)(e)}])},[x(`header`,Ot,[x(`div`,null,[x(`span`,kt,g(ae(e.kind)),1),x(`h3`,null,g(e.title||e.objective||ae(e.kind)),1)]),x(`span`,{class:m([`judgment-outcome`,`is-${e.outcome}`])},g(ie(e.outcome)),3)]),x(`p`,At,g(e.summary),1),x(`dl`,jt,[x(`div`,null,[x(`dt`,null,g(_(q)(`workbench.execution`)),1),x(`dd`,null,g(U(e.execution.status)),1)]),x(`div`,null,[x(`dt`,null,g(_(q)(`workbench.policy`)),1),x(`dd`,null,g(se(e)),1)]),e.client||e.model?(i(),o(`div`,Mt,[x(`dt`,null,g(_(q)(`workbench.source`)),1),x(`dd`,null,g(J(e)),1)])):b(``,!0),e.disposition?(i(),o(`div`,Nt,[x(`dt`,null,g(_(q)(`workbench.disposition`)),1),x(`dd`,null,g(_(q)(`workbench.actions.${e.disposition}`)),1)])):b(``,!0),e.selection?(i(),o(`div`,Pt,[x(`dt`,null,g(_(q)(`workbench.selection`)),1),x(`dd`,null,g(Y(e)),1)])):b(``,!0),x(`div`,null,[t[2]||=x(`dt`,null,null,-1),x(`dd`,null,g(re(e.createdAt)),1)])]),e.evidence.length?(i(),o(`section`,Ft,[x(`h4`,null,g(_(q)(`workbench.evidence`)),1),x(`ul`,null,[(i(!0),o(f,null,r(e.evidence,e=>(i(),o(`li`,{key:e},g(e),1))),128))])])):b(``,!0),ue(e)?(i(),o(`details`,It,[x(`summary`,null,g(_(q)(`workbench.details`)),1),x(`dl`,Lt,[e.sessionId?(i(),o(`div`,Rt,[x(`dt`,null,g(_(q)(`workbench.session`)),1),x(`dd`,null,[x(`code`,null,g(e.sessionId),1)])])):b(``,!0),e.error?(i(),o(`div`,zt,[x(`dt`,null,g(_(q)(`workbench.recordError`)),1),x(`dd`,null,g(X(e.error,1e3)),1)])):b(``,!0)]),e.execution.receipt?(i(),o(`section`,Bt,[x(`h4`,null,g(_(q)(`workbench.receipt`)),1),le(e)?(i(),o(`p`,Vt,g(le(e)),1)):b(``,!0),x(`pre`,null,g(X(e.execution.receipt,3e3)),1)])):b(``,!0),e.feedbackHistory?.length?(i(),o(`section`,Ht,[x(`h4`,null,g(_(q)(`workbench.feedbackHistory`)),1),(i(!0),o(f,null,r(e.feedbackHistory.slice(-5),(e,t)=>(i(),o(`pre`,{key:`${t}-${X(e,200)}`},g(X(e,1200)),1))),128))])):b(``,!0),e.executionHistory?.length?(i(),o(`section`,Ut,[x(`h4`,null,g(_(q)(`workbench.executionHistory`)),1),(i(!0),o(f,null,r(e.executionHistory.slice(-5),(e,t)=>(i(),o(`pre`,{key:`${t}-${X(e,200)}`},g(X(e,1200)),1))),128))])):b(``,!0)])):b(``,!0),x(`section`,{class:`judgment-record-feedback`,"aria-label":_(q)(`workbench.feedback`)},[x(`details`,Gt,[x(`summary`,Kt,g(D.value[e.id]?_(q)(`workbench.feedbackReasonSaved`):_(q)(`workbench.feedbackReasonAdd`)),1),x(`div`,qt,[x(`label`,{class:`visually-hidden`,for:`judgment-feedback-${e.id}`},g(_(q)(`workbench.feedbackReason`)),9,Jt),c(x(`textarea`,{id:`judgment-feedback-${e.id}`,"onUpdate:modelValue":t=>D.value[e.id]=t,"data-feedback-reason":``,rows:`2`,maxlength:`1000`,disabled:T.value===e.id,onInput:t=>B(e.id),onKeydown:h(p(t=>ne(e),[`exact`,`prevent`]),[`enter`])},null,40,Yt),[[d,D.value[e.id]]]),x(`button`,{class:`judgment-save-reason`,type:`button`,"data-save-reason":``,"aria-label":_(q)(`workbench.saveReason`),title:_(q)(`workbench.saveReason`),disabled:T.value===e.id,onClick:t=>ne(e)},[...t[3]||=[x(`span`,{"aria-hidden":`true`},`✓`,-1)]],8,Xt)])]),x(`div`,Zt,[x(`button`,{type:`button`,"data-feedback":`up`,"aria-label":_(q)(`workbench.feedbackUp`),"aria-pressed":e.feedback.vote===`up`,title:_(q)(`workbench.feedbackUp`),disabled:T.value===e.id,onClick:t=>te(e,`up`)},[t[4]||=x(`span`,{"aria-hidden":`true`},`👍`,-1),x(`span`,$t,g(_(q)(`workbench.feedbackUp`)),1)],8,Qt),x(`button`,{type:`button`,"data-feedback":`down`,"aria-label":_(q)(`workbench.feedbackDown`),"aria-pressed":e.feedback.vote===`down`,title:_(q)(`workbench.feedbackDown`),disabled:T.value===e.id,onClick:t=>te(e,`down`)},[t[5]||=x(`span`,{"aria-hidden":`true`},`👎`,-1),x(`span`,tn,g(_(q)(`workbench.feedbackDown`)),1)],8,en),T.value===e.id?(i(),u(E,{key:0,"data-feedback-saving":``,variant:`inline`,label:_(q)(`workbench.feedbackSaving`)},null,8,[`label`])):b(``,!0)])],8,Wt)],2))),128))]))],8,ht))}}),[[`__scopeId`,`data-v-2cae6841`]]),rn=[`aria-label`],an={class:`employee-workbench-toolbar`},on={class:`employee-workbench-identity`},sn={class:`employee-workbench-mark`,"aria-hidden":`true`},cn=[`src`],ln=[`aria-label`,`title`],un={class:`employee-workbench-actions`},dn=[`disabled`],fn={key:4,class:`employee-workbench-state`,role:`alert`},pn={key:5,class:`employee-workbench-state`},mn={key:8,class:`employee-workbench-state`},hn={key:9,class:`employee-workbench-state`},gn={key:11,class:`employee-workbench-state`},_n=[`src`,`title`],vn=`all`,yn=D(t({__name:`EmployeeWorkbenchPage`,setup(t){let r=A(),c=k(),d=S(),p=a(``),m=a(null),h=a([]),D=a([]),O=a([]),M=a([]),N=a(``),P=a(``),F=a(!1),L=a(!1),H=a(!1),ie=a(!1),U=a(!1),ae=a(!1),oe=a(null),W=v(()=>d.activePersonalSpace?.id??``),G=v(()=>String(r.params.templateId??``)),K=v(()=>ee.value.find(e=>e.id===G.value)),q=v(()=>{let e=K.value?.workbench;return e?.kind===`native`?e.view??null:null}),se=v(()=>q.value===`people`),ce=v(()=>q.value===`judgment`),J=v(()=>se.value||ce.value),Y=v(()=>G.value===`jefa`),X=v(()=>!d.state&&(d.runtimeStatus===`idle`||d.runtimeStatus===`loading`)||!L.value||F.value),le=v(()=>d.state?R.value||!L.value?l(`employees.loading`):l(`employees.loadingBoard`):l(`common.status.loadingConsole`)),ue=v(()=>!d.state&&d.runtimeStatus===`error`?d.feedback?.message||l(`employees.loadError`):``),de=v(()=>ue.value||V.value||(Y.value&&pe.invalidScope.value?l(`employees.invalidScope`):P.value)),Z=v(()=>K.value?.managedProjects===void 0?(K.value?.assignments??[]).filter(e=>e.status===`active`).map(e=>({value:e.personalProjectId,label:d.state?.personalProjects?.find(t=>t.project_id===e.personalProjectId)?.profile.name??e.personalProjectId})):K.value.managedProjects.map(e=>({value:e.id,label:e.name}))),fe=v(()=>JSON.stringify([...new Set(Z.value.map(e=>e.value))].sort()));e(W,e=>{L.value=!1,B(e)},{immediate:!0});let pe=mt({enabled:Y,spaceId:W,projectIds:v(()=>Z.value.map(e=>e.value)),ready:v(()=>!R.value&&!V.value&&!!K.value)}),me=v({get:()=>{if(Y.value)return pe.selection.value;let e=new Set(O.value);return Z.value.filter(t=>!e.has(t.value)).map(e=>e.value)},set:e=>{if(Y.value){pe.selection.value=e;return}let t=new Set(Z.value.map(e=>e.value)),n=new Set(e);O.value=[...O.value.filter(e=>!t.has(e)),...Z.value.filter(e=>!n.has(e.value)).map(e=>e.value)]}}),he=v(()=>{let e=new Set(me.value);return h.value.filter(t=>e.has(t.project.id))}),ge=v(()=>{let e=new Set(me.value);return D.value.filter(t=>e.has(t)).length}),_e=v(()=>K.value?.runtimeStatus===`ready`&&K.value.permissions.includes(`board.read`)&&Z.value.length>0),ve=v(()=>_e.value?[{value:vn,label:l(`employees.allProjects.option`),meta:l(`employees.allProjects.optionMeta`,{count:Z.value.length})},...Z.value]:Z.value),ye=0;e([G,W],()=>{O.value=[],ae.value=!1,U.value=!1,oe.value=null}),e([ve,()=>r.query.project,()=>r.query.empty,G,J],()=>{if(J.value){if(++ye,p.value=``,F.value=!1,P.value=``,r.query.project!==void 0){let{project:e,...t}=r.query;c.replace({query:t})}return}if(Y.value){p.value=Z.value.length?vn:``;return}let e=typeof r.query.project==`string`?r.query.project:``,t=ve.value;p.value=e||(t.some(e=>e.value===p.value)?p.value:t[0]?.value??``),!e&&p.value&&c.replace({query:{...r.query,project:p.value}})},{immediate:!0}),e([G,p,W,_e,L],()=>{!J.value&&L.value&&Q()},{immediate:!0}),e(R,e=>{if(!e){if(!L.value){L.value=!0;return}H.value&&(H.value=!1,Q())}},{immediate:!0}),e(pe.invalidScope,e=>{!e&&Y.value&&L.value&&Q()}),e(fe,(e,t)=>{e===t||!L.value||J.value||Q()});async function Q(){let e=++ye;if(m.value=null,h.value=[],D.value=[],N.value=``,P.value=``,J.value||!K.value||!p.value||!W.value){F.value=!1;return}if(Y.value&&!_e.value){F.value=!1;return}if(Y.value&&pe.invalidScope.value){F.value=!1;return}if(R.value){H.value=!0,F.value=!0;return}H.value=!1;let t=G.value,n=p.value;F.value=!0;try{if(n===vn&&_e.value){let n=await Promise.all(Z.value.map(async e=>{try{let n=await C(`/api/employee-templates/${encodeURIComponent(t)}/call`,{personalSpaceId:W.value,personalProjectId:e.value,tool:`read_board`,arguments:{limit:100}}),r=Array.isArray(n.items)?n.items.filter(Te).filter(t=>t.projectId===e.value):[],i=n.truncated;if(t===`jefa`&&i)try{let t=await T(`/employee-workspaces/jefa/${encodeURIComponent(e.value)}/api/snapshot`);if(!Array.isArray(t.snapshot.workItems))throw Error(`Invalid board snapshot`);r=t.snapshot.workItems.filter(Te).filter(t=>t.projectId===e.value),i=!1}catch{}return{ok:!0,board:{...n,truncated:i,project:{id:e.value,name:e.label},items:r}}}catch(t){return{ok:!1,cause:t,projectId:e.value}}}));if(e!==ye)return;h.value=n.filter(e=>e.ok).map(e=>e.board),D.value=n.flatMap(e=>e.ok?[]:[e.projectId]),!h.value.length&&D.value.length&&(P.value=z(n.find(e=>!e.ok)?.cause));return}let r=await T(`/api/employee-templates/${encodeURIComponent(t)}/workspace?${new URLSearchParams({personalSpaceId:W.value,personalProjectId:n})}`),i=`/employee-workspaces/${encodeURIComponent(t)}/${encodeURIComponent(n)}/`;if(r.workbenchUrl!==i)throw Error(l(`employees.loadError`));e===ye&&(m.value=r)}catch(t){e===ye&&(P.value=z(t))}finally{e===ye&&(F.value=!1)}}function be(e=null){oe.value=e,ae.value=!0}function xe(e){return`${e.projectId}:${e.id}`}function Se(e,t,n){h.value=h.value.map(r=>r.project.id===e?{...r,items:r.items.map(e=>e.id===t?n:e)}:r)}function Ce(){return`aggregate-board-move-${globalThis.crypto?.randomUUID?.()??`${Date.now()}-${Math.random().toString(36).slice(2)}`}`}async function we(e,t){if(e.status===t)return;let n=xe(e);if(M.value.includes(n))return;let r=`${G.value}:${W.value}`,i={...e,status:t};N.value=``,M.value=[...M.value,n],Se(e.projectId,e.id,i);try{let n;if(G.value===`jefa`&&t===`done`)n=(await w(`/employee-workspaces/${encodeURIComponent(G.value)}/${encodeURIComponent(e.projectId)}/api/work-items/${encodeURIComponent(e.id)}/status`,{status:t})).workItem;else{if(!e.updatedAt)throw Error(l(`employees.allProjects.refreshRequired`));n=(await C(`/api/employee-templates/${encodeURIComponent(G.value)}/call`,{personalSpaceId:W.value,personalProjectId:e.projectId,tool:`update_tasks`,arguments:{requestId:Ce(),updates:[{id:e.id,expectedUpdatedAt:e.updatedAt,status:t}]}})).updatedWorkItems?.find(t=>t.id===e.id)}if(`${G.value}:${W.value}`!==r)return;if(!n||!Te(n)||n.projectId!==e.projectId||n.id!==e.id||!n.updatedAt)throw Error(l(`employees.allProjects.refreshRequired`));Se(e.projectId,e.id,n)}catch(t){if(`${G.value}:${W.value}`!==r)return;Se(e.projectId,e.id,e),N.value=l(`employees.allProjects.moveFailed`,{error:z(t)})}finally{M.value=M.value.filter(e=>e!==n)}}function Te(e){if(!e||typeof e!=`object`)return!1;let t=e;return typeof t.id==`string`&&typeof t.projectId==`string`&&typeof t.title==`string`&&[`planned`,`active`,`blocked`,`review`,`done`].includes(t.status??``)}async function Ee(){if(!d.state){await d.refresh();return}await B(W.value),V.value||await Q()}async function De(){if(Y.value){await c.replace({query:{...r.query,project:vn,empty:void 0}}),await Q();return}let e=p.value===vn&&_e.value?vn:Z.value.find(e=>e.value===p.value)?.value??ve.value[0]?.value;await c.replace({query:e?{project:e}:{}}),await Q()}return(e,t)=>(i(),o(`section`,{class:`employee-workbench-view`,"aria-label":K.value?.name??_(l)(`employees.workbench`)},[x(`header`,an,[x(`div`,on,[x(`span`,sn,[_(te)(G.value)?(i(),o(`img`,{key:0,src:_(te)(G.value),alt:``},null,8,cn)):(i(),o(f,{key:1},[y(g(K.value?.name.slice(0,1)??`A`),1)],64))]),x(`h1`,null,[y(g(K.value?.name??_(l)(`employees.workbench`))+` `,1),x(`span`,null,g(K.value?.role),1)]),Y.value&&_e.value?(i(),o(`button`,{key:0,class:`employee-share-button`,type:`button`,"aria-label":_(l)(`employees.share.title`),title:_(l)(`employees.share.title`),onClick:t[0]||=e=>U.value=!0},[...t[8]||=[x(`svg`,{width:`19`,height:`19`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.7`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"aria-hidden":`true`},[x(`path`,{d:`M14 3h7v7m0-7-9 9M10 5H5a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-5`}),x(`path`,{d:`M7 16v-3m4 3v-1`})],-1)]],8,ln)):b(``,!0)]),x(`div`,un,[J.value&&K.value?.agentId&&W.value?(i(),u(_(j),{key:0,class:`employee-native-link`,to:_(I)(W.value,K.value.agentId),title:_(l)(`agentProfiles.profile`)},{default:n(()=>[y(g(_(l)(`agentProfiles.profile`)),1)]),_:1},8,[`to`,`title`])):b(``,!0),K.value&&!J.value?(i(),o(`button`,{key:1,class:`employee-manage-projects`,type:`button`,disabled:!W.value,onClick:t[1]||=e=>ie.value=!0},[t[9]||=x(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.6`,"stroke-linecap":`round`,"aria-hidden":`true`},[x(`path`,{d:`M4 7h9m4 0h3M4 17h3m4 0h9`}),x(`circle`,{cx:`15`,cy:`7`,r:`2`}),x(`circle`,{cx:`9`,cy:`17`,r:`2`})],-1),y(` `+g(_(l)(`employees.manageProjects`)),1)],8,dn)):b(``,!0)])]),J.value?b(``,!0):(i(),u(ne,{key:0,open:ie.value,"personal-space-id":W.value,projects:_(d).state?.personalProjects??[],"template-id":G.value,onClose:t[2]||=e=>ie.value=!1,onRecruited:De},null,8,[`open`,`personal-space-id`,`projects`,`template-id`])),Y.value?(i(),u(et,{key:1,open:ae.value,item:oe.value,projects:Z.value.map(e=>({id:e.value,name:e.label})),"default-project-id":me.value.length===1?me.value[0]:void 0,"personal-space-id":W.value,"can-write":K.value?.permissions.includes(`board.write`)??!1,onClose:t[3]||=e=>ae.value=!1,onSaved:Q},null,8,[`open`,`item`,`projects`,`default-project-id`,`personal-space-id`,`can-write`])):b(``,!0),Y.value?(i(),u(ft,{key:2,open:U.value,projects:Z.value.map(e=>({id:e.value,name:e.label})),onClose:t[4]||=e=>U.value=!1},null,8,[`open`,`projects`])):b(``,!0),X.value?(i(),u(E,{key:3,label:le.value},null,8,[`label`])):de.value?(i(),o(`div`,fn,[x(`p`,null,g(de.value),1),x(`button`,{class:`quiet-button`,type:`button`,onClick:Ee},g(_(l)(`employees.retry`)),1)])):K.value?se.value?(i(),u(We,{key:6,"personal-space-id":W.value,projects:_(d).state?.personalProjects??[]},null,8,[`personal-space-id`,`projects`])):ce.value?(i(),u(nn,{key:7,"personal-space-id":W.value},null,8,[`personal-space-id`])):Y.value&&K.value.runtimeStatus!==`ready`?(i(),o(`div`,mn,[x(`p`,null,g(_(l)(`employees.installRequired`)),1),x(`small`,null,g(_(l)(`employees.installHelp`)),1)])):p.value?p.value===vn&&_e.value?(i(),u(re,{key:10,"visible-project-ids":me.value,"onUpdate:visibleProjectIds":t[6]||=e=>me.value=e,boards:he.value,projects:Z.value.map(e=>({id:e.value,name:e.label})),"failed-projects":ge.value,"can-move-tasks":K.value.permissions.includes(`board.write`),"moving-item-keys":M.value,"action-error":N.value,"resettable-filter":Y.value,"filter-storage-unavailable":_(pe).storageUnavailable.value,onResetProjectFilter:_(pe).reset,onMoveTask:we,onSelectTask:be,onCreateTask:t[7]||=e=>be(),onRetry:Q},null,8,[`visible-project-ids`,`boards`,`projects`,`failed-projects`,`can-move-tasks`,`moving-item-keys`,`action-error`,`resettable-filter`,`filter-storage-unavailable`,`onResetProjectFilter`])):m.value&&m.value.runtimeStatus!==`ready`?(i(),o(`div`,gn,[x(`p`,null,g(_(l)(`employees.installRequired`)),1),x(`small`,null,g(_(l)(`employees.installHelp`)),1)])):m.value?(i(),o(`iframe`,{key:m.value.workbenchUrl,src:m.value.workbenchUrl,title:`${m.value.name} · ${m.value.project.name}`,class:`employee-workbench-frame`},null,8,_n)):b(``,!0):(i(),o(`div`,hn,[x(`h2`,null,g(_(l)(`employees.emptyWorkbench`)),1),x(`p`,null,g(_(l)(`employees.manageHint`)),1),x(`button`,{class:`quiet-button`,type:`button`,onClick:t[5]||=e=>ie.value=!0},g(_(l)(`employees.manageProjects`)),1)])):(i(),o(`div`,pn,[x(`p`,null,g(_(l)(`employees.unavailable`)),1),s(_(j),{to:`/project-agents`},{default:n(()=>[y(g(_(l)(`employees.backToAgents`)),1)]),_:1})]))],8,rn))}}),[[`__scopeId`,`data-v-a8213486`]]);export{yn as default};
@@ -1 +0,0 @@
1
- import{E as e,P as t,b as n}from"./i18n-oJFlt8hW.js";import{t as r}from"./KnowledgeWorkspace-DA_dqVRG.js";var i=e({__name:`KnowledgePage`,setup(e){return(e,i)=>(t(),n(r))}});export{i as default};
@@ -1 +0,0 @@
1
- .conflict-inputs[data-v-57134f7d]{border:0;gap:12px;min-width:0;margin:0;padding:0;display:grid}.conflict-pair-context[data-v-57134f7d]{flex-wrap:wrap;gap:8px;display:flex}.conflict-pair-context span[data-v-57134f7d]{color:var(--color-muted);background:var(--color-surface-subtle);border-radius:999px;padding:4px 10px;font-size:12px}.conflict-pair-context strong[data-v-57134f7d]{color:var(--color-ink);margin-left:6px;font-weight:600}.conflict-comparison[data-v-57134f7d]{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.conflict-side[data-v-57134f7d]{border:1px solid var(--color-border);border-radius:var(--radius-card);align-content:start;gap:8px;min-width:0;padding:16px;display:grid}.conflict-side-left[data-v-57134f7d]{background:var(--color-surface-subtle)}.conflict-side-heading[data-v-57134f7d]{color:var(--color-muted);justify-content:space-between;gap:12px;font-size:12px;display:flex}.conflict-side h3[data-v-57134f7d],.conflict-side p[data-v-57134f7d]{margin:0}.conflict-side h3[data-v-57134f7d]{font-size:14px;font-weight:600}.conflict-side p[data-v-57134f7d]{white-space:pre-wrap;min-height:48px;font-size:13px;line-height:1.6}.conflict-side small[data-v-57134f7d]{color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.conflict-side .ui-button[data-v-57134f7d]{justify-self:start}.conflict-difference[data-v-57134f7d]{border:1px solid var(--color-border);border-radius:var(--radius-control);grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:12px 14px;display:grid}.conflict-difference>div[data-v-57134f7d]{align-content:start;gap:6px;min-width:0;display:grid}.conflict-difference span[data-v-57134f7d]{color:var(--color-muted);font-size:12px;font-weight:600}.conflict-difference p[data-v-57134f7d]{flex-wrap:wrap;gap:5px;margin:0;font-size:12px;display:flex}.conflict-difference b[data-v-57134f7d]{background:var(--color-surface-subtle);border-radius:5px;padding:2px 7px;font-weight:500}.conflict-resolution-options[data-v-57134f7d]{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.conflict-resolution-options>button[data-v-57134f7d]{border:1px solid var(--color-border);border-radius:var(--radius-control);min-height:80px;color:var(--color-ink);background:var(--color-surface);text-align:left;cursor:pointer;transition:border-color var(--motion-fast), background-color var(--motion-fast);align-content:start;gap:4px;padding:12px;display:grid;position:relative}.conflict-resolution-options>button[data-v-57134f7d]:hover:not(:disabled){border-color:var(--color-border-strong)}.conflict-resolution-options>button[aria-pressed=true][data-v-57134f7d]{border-color:var(--color-accent);background:var(--color-accent-soft)}.conflict-resolution-options>button[data-v-57134f7d]:disabled{opacity:.5;cursor:not-allowed}.conflict-resolution-options strong[data-v-57134f7d]{font-size:13px}.conflict-resolution-options span[data-v-57134f7d]{color:var(--color-muted);font-size:12px;line-height:1.45}.conflict-resolution-options em[data-v-57134f7d]{color:var(--color-accent);background:var(--color-surface);border-radius:999px;padding:1px 6px;font-size:11px;font-style:normal;position:absolute;top:8px;right:8px}.conflict-resolution-detail[data-v-57134f7d],.conflict-impact-preview[data-v-57134f7d]{border:1px solid var(--color-border);border-radius:var(--radius-control);gap:10px;padding:12px 14px;display:grid}.conflict-inline-options[data-v-57134f7d]{color:var(--color-muted);align-items:center;gap:10px;font-size:12px;display:flex}.conflict-impact-preview span[data-v-57134f7d]{color:var(--color-warning);font-size:12px;font-weight:600}.conflict-impact-preview p[data-v-57134f7d]{margin:0;font-size:13px;line-height:1.55}.conflict-footer-note[data-v-57134f7d]{color:var(--color-muted);margin-right:auto;font-size:12px}@media (width<=900px){.conflict-comparison[data-v-57134f7d],.conflict-difference[data-v-57134f7d]{grid-template-columns:1fr}.conflict-resolution-options[data-v-57134f7d]{grid-template-columns:repeat(2,minmax(0,1fr))}}.writing-taste-milestone[data-v-9f3e6330]{border:1px solid var(--color-border);border-radius:var(--radius-card);color:var(--color-ink);background:var(--color-surface);transition:border-color var(--motion-fast);grid-template-columns:auto 120px auto 1fr;align-items:center;gap:14px;margin-bottom:18px;padding:10px 14px;font-size:13px;text-decoration:none;display:grid}.writing-taste-milestone[data-v-9f3e6330]:hover{border-color:var(--color-border-strong)}.writing-taste-milestone strong[data-v-9f3e6330]{font-weight:600}.writing-taste-milestone small[data-v-9f3e6330]{color:var(--color-muted);font-variant-numeric:tabular-nums;font-size:12px}.writing-taste-milestone__progress[data-v-9f3e6330]{background:var(--color-surface-subtle);border-radius:2px;height:4px;overflow:hidden}.writing-taste-milestone__progress i[data-v-9f3e6330]{background:var(--color-accent);transform-origin:0;height:100%;display:block}.writing-taste-milestone__action[data-v-9f3e6330]{color:var(--color-accent);justify-self:end;font-size:13px;font-weight:550}.status-preview_ready[data-v-9f3e6330],.status-active[data-v-9f3e6330]{border-color:var(--color-accent-line);background:var(--color-accent-soft)}@media (width<=720px){.writing-taste-milestone[data-v-9f3e6330]{grid-template-columns:1fr auto}.writing-taste-milestone__progress[data-v-9f3e6330],.writing-taste-milestone small[data-v-9f3e6330]{grid-column:1/-1}}.preference-conflict-alert[data-v-1a3c54ed]{border:1px solid var(--color-border);background:var(--color-surface);border-radius:11px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;margin-top:12px;padding:12px 14px;display:grid;box-shadow:0 7px 20px #3142380d}.preference-conflict-alert-icon[data-v-1a3c54ed]{background:var(--color-muted);width:30px;height:30px;color:var(--color-surface);border-radius:50%;place-items:center;font-size:16px;font-weight:800;display:grid}.preference-conflict-alert>div[data-v-1a3c54ed]:nth-child(2){gap:2px;display:grid}.preference-conflict-alert span[data-v-1a3c54ed]{color:var(--color-muted);letter-spacing:.08em;text-transform:uppercase;font-size:12px;font-weight:800}.preference-conflict-alert h2[data-v-1a3c54ed],.preference-conflict-alert p[data-v-1a3c54ed]{margin:0}.preference-conflict-alert h2[data-v-1a3c54ed]{color:var(--color-ink);font-size:14px}.preference-conflict-alert p[data-v-1a3c54ed]{color:var(--color-muted);font-size:12px;line-height:1.5}.preference-conflict-workbench[data-v-1a3c54ed]{flex:1;min-height:0;padding:18px 0 4px;overflow:auto}.preference-conflict-workbench>header[data-v-1a3c54ed]{justify-content:space-between;align-items:flex-end;gap:24px;padding:0 2px 14px;display:flex}.preference-conflict-workbench h2[data-v-1a3c54ed],.preference-conflict-workbench p[data-v-1a3c54ed]{margin:0}.preference-conflict-workbench h2[data-v-1a3c54ed]{color:var(--color-ink);font-size:17px}.preference-conflict-workbench>header>p[data-v-1a3c54ed]{max-width:520px;color:var(--color-muted);text-align:right;font-size:12px;line-height:1.55}.preference-conflict-list[data-v-1a3c54ed]{gap:12px;display:grid}.preference-conflict-card[data-v-1a3c54ed]{border:1px solid var(--color-border);background:var(--color-surface);border-radius:11px;gap:12px;padding:15px;display:grid;box-shadow:0 7px 20px #2d3d340a}.preference-conflict-card-heading[data-v-1a3c54ed],.preference-conflict-card footer[data-v-1a3c54ed]{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.preference-conflict-card-heading>div[data-v-1a3c54ed]{gap:3px;display:grid}.preference-conflict-card-heading>div[data-v-1a3c54ed]:last-child{justify-items:end}.preference-conflict-card-heading span[data-v-1a3c54ed],.preference-conflict-card footer span[data-v-1a3c54ed]{color:var(--color-muted);text-transform:uppercase;font-size:12px;font-weight:700}.preference-conflict-card-heading h3[data-v-1a3c54ed]{color:var(--color-ink);margin:0;font-size:14px}.preference-conflict-card-heading strong[data-v-1a3c54ed]{color:var(--color-muted);font-size:12px}.preference-conflict-pair[data-v-1a3c54ed]{grid-template-columns:minmax(0,1fr) 26px minmax(0,1fr);align-items:stretch;gap:8px;display:grid}.preference-conflict-pair>section[data-v-1a3c54ed]{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);align-content:start;gap:6px;min-width:0;padding:12px;display:grid}.preference-conflict-pair>section[data-v-1a3c54ed]:first-child,.preference-conflict-pair>section[data-v-1a3c54ed]:last-child{border-color:var(--color-border);background:var(--color-surface)}.preference-conflict-pair span[data-v-1a3c54ed],.preference-conflict-pair small[data-v-1a3c54ed]{color:var(--color-muted);font-size:12px}.preference-conflict-pair strong[data-v-1a3c54ed]{color:var(--color-ink);font-size:12px}.preference-conflict-pair p[data-v-1a3c54ed]{color:var(--color-ink);font-size:12px;line-height:1.55}.preference-conflict-pair>i[data-v-1a3c54ed]{color:var(--color-muted);text-align:center;align-self:center;font-size:14px;font-style:normal}.preference-conflict-card footer[data-v-1a3c54ed]{border-top:1px solid var(--color-border);padding-top:11px}.preference-conflict-card footer>div[data-v-1a3c54ed]{gap:4px;display:grid}.preference-conflict-card footer p[data-v-1a3c54ed],.preference-conflict-card footer small[data-v-1a3c54ed]{color:var(--color-muted);font-size:12px}.preference-conflict-card footer button[data-v-1a3c54ed]{flex:none}.preference-conflict-card footer .preference-conflict-actions[data-v-1a3c54ed]{justify-content:flex-end;align-items:center;gap:8px;display:flex}.preference-conflict-card footer .preference-conflict-actions .secondary-action[data-v-1a3c54ed]{color:var(--color-muted);background:var(--color-surface-subtle)}.personal-profile-row.ai-resolved-conflict[data-v-1a3c54ed]{border-color:var(--color-border-strong);background:var(--color-surface)}.personal-profile-row.ai-resolved-conflict .personal-profile-origin strong[data-v-1a3c54ed]{color:var(--color-ink)}.personal-profile-inspector[data-v-1a3c54ed] .inspector-classification.state-pending,.personal-profile-inspector[data-v-1a3c54ed] .inspector-classification.state-needs_review{border-color:var(--color-warning-soft);background:var(--color-warning-soft)}.personal-profile-inspector[data-v-1a3c54ed] .inspector-classification.state-pending strong,.personal-profile-inspector[data-v-1a3c54ed] .inspector-classification.state-needs_review strong{color:var(--color-warning)}@media (width<=860px){.preference-conflict-alert[data-v-1a3c54ed]{grid-template-columns:auto minmax(0,1fr)}.preference-conflict-alert>button[data-v-1a3c54ed]{grid-column:1/-1}.preference-conflict-workbench>header[data-v-1a3c54ed],.preference-conflict-card-heading[data-v-1a3c54ed],.preference-conflict-card footer[data-v-1a3c54ed]{flex-direction:column;align-items:stretch}.preference-conflict-workbench>header>p[data-v-1a3c54ed]{text-align:left}.preference-conflict-card-heading>div[data-v-1a3c54ed]:last-child{justify-items:start}.preference-conflict-pair[data-v-1a3c54ed]{grid-template-columns:1fr}.preference-conflict-card footer .preference-conflict-actions[data-v-1a3c54ed]{flex-wrap:wrap;justify-content:flex-start}}
@@ -1 +0,0 @@
1
- import{E as e,P as t,b as n}from"./i18n-oJFlt8hW.js";import{t as r}from"./KnowledgeWorkspace-DA_dqVRG.js";var i=e({__name:`PersonalProjectsPage`,setup(e){return(e,i)=>(t(),n(r,{"personal-projects-only":``}))}});export{i as default};
@@ -1 +0,0 @@
1
- .judgment-policy-panel[data-v-98f9e2c8]{gap:18px;display:grid}.judgment-panel-heading[data-v-98f9e2c8]{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.judgment-panel-heading h3[data-v-98f9e2c8]{color:var(--color-ink);margin:0;font-size:16px}.judgment-panel-heading p[data-v-98f9e2c8]{color:var(--color-muted);margin:6px 0 0;font-size:13px;line-height:1.55}.judgment-project-field[data-v-98f9e2c8]{grid-template-columns:minmax(130px,.45fr) minmax(180px,1fr) auto;align-items:center;gap:10px;display:grid}.judgment-project-field label[data-v-98f9e2c8],.judgment-progressive-fields label>span[data-v-98f9e2c8]{color:var(--color-muted);font-size:12px}.judgment-project-field select[data-v-98f9e2c8],.judgment-progressive-fields select[data-v-98f9e2c8]{min-height:var(--control-height);border:1px solid var(--color-control-border);border-radius:var(--radius-control);color:var(--color-ink);background:var(--color-surface);font:inherit;padding:7px 10px}.judgment-project-field small[data-v-98f9e2c8]{color:var(--color-muted);white-space:nowrap;font-size:12px}.judgment-project-field small.is-inherited[data-v-98f9e2c8]{color:var(--color-accent)}.judgment-policy-fields[data-v-98f9e2c8]{border:0;gap:10px;min-width:0;padding:0;display:grid}.judgment-policy-fields legend[data-v-98f9e2c8]{color:var(--color-muted);margin-bottom:2px;font-size:12px}.judgment-mode-option[data-v-98f9e2c8]{border:1px solid var(--color-border);border-radius:var(--radius-control);cursor:pointer;align-items:flex-start;gap:10px;padding:12px 14px;display:flex}.judgment-mode-option.is-selected[data-v-98f9e2c8]{border-color:var(--color-accent);background:var(--color-accent-soft)}.judgment-mode-option input[data-v-98f9e2c8]{accent-color:var(--color-accent);margin-top:3px}.judgment-mode-option span[data-v-98f9e2c8]{gap:3px;display:grid}.judgment-mode-option strong[data-v-98f9e2c8]{color:var(--color-ink);font-size:13px}.judgment-mode-option small[data-v-98f9e2c8]{color:var(--color-muted);font-size:12px;line-height:1.5}.judgment-progressive-fields[data-v-98f9e2c8]{border-left:2px solid var(--color-accent);background:var(--color-surface-subtle);grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:3px;padding:12px;display:grid}.judgment-progressive-fields label[data-v-98f9e2c8]{gap:6px;display:grid}.judgment-policy-actions[data-v-98f9e2c8]{flex-wrap:wrap;align-items:center;gap:10px;margin-top:4px;display:flex}.judgment-policy-saved[data-v-98f9e2c8]{color:var(--color-muted);font-size:12px}.judgment-policy-error[data-v-98f9e2c8]{border-radius:var(--radius-control);color:var(--color-danger);background:var(--color-danger-soft);justify-content:space-between;align-items:center;gap:14px;padding:10px 12px;font-size:13px;display:flex}.judgment-policy-empty[data-v-98f9e2c8]{color:var(--color-muted);font-size:13px}@media (width<=640px){.judgment-project-field[data-v-98f9e2c8]{grid-template-columns:1fr;align-items:stretch}.judgment-progressive-fields[data-v-98f9e2c8]{grid-template-columns:1fr}}.connection-settings p[data-v-a09270ee]{color:var(--color-muted);margin:12px 0;font-size:13px;line-height:1.6}.connection-toolbar[data-v-a09270ee]{align-items:center;gap:12px;margin:16px 0 10px;display:flex}.connection-toolbar[data-v-a09270ee] .ui-select{flex:1;min-width:0;max-width:300px}.connection-copy[data-v-a09270ee]{flex:0 0 40px;width:40px;height:40px;padding:9px}.connection-copy svg[data-v-a09270ee]{width:20px;height:20px}textarea[data-v-a09270ee]{box-sizing:border-box;resize:vertical;width:100%;min-width:0;font:12px/1.65 var(--font-mono,monospace);overflow-wrap:anywhere;display:block}.connection-settings a[data-v-a09270ee]{font-size:13px}.peer-settings p[data-v-c2b7fda7],.peer-settings small[data-v-c2b7fda7]{color:var(--color-muted);font-size:13px;line-height:1.6}.peer-settings p[data-v-c2b7fda7]{margin:12px 0}.peer-alert[data-v-c2b7fda7],.peer-actions[data-v-c2b7fda7],.peer-identity[data-v-c2b7fda7],.peer-fields[data-v-c2b7fda7],.peer-share-title[data-v-c2b7fda7],.peer-devices li[data-v-c2b7fda7]{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.peer-block[data-v-c2b7fda7]{gap:12px;min-width:0;margin:16px 0;display:grid}.peer-block h4[data-v-c2b7fda7]{font-size:13px;font-weight:650}.peer-fields[data-v-c2b7fda7]{align-items:end}.peer-fields[data-v-c2b7fda7] .ui-select{flex:180px;min-width:0}.peer-identity[data-v-c2b7fda7]{margin:12px 0}.peer-identity div[data-v-c2b7fda7]{flex:160px;min-width:0}.peer-identity dt[data-v-c2b7fda7]{color:var(--color-muted);font-size:12px}.peer-identity dd[data-v-c2b7fda7],.peer-identity code[data-v-c2b7fda7],.peer-identity strong[data-v-c2b7fda7],.peer-identity p[data-v-c2b7fda7]{overflow-wrap:anywhere}.peer-identity dd[data-v-c2b7fda7]{font-family:var(--font-mono);font-size:13px}.peer-settings label[data-v-c2b7fda7]{min-width:0;color:var(--color-muted);gap:6px;font-size:12px;display:grid}.peer-settings input[type=text][data-v-c2b7fda7],.peer-settings textarea[data-v-c2b7fda7]{box-sizing:border-box;overflow-wrap:anywhere;width:100%;min-width:0}.peer-settings textarea[data-v-c2b7fda7]{resize:vertical;font:12px/1.65 var(--font-mono)}.peer-shares[data-v-c2b7fda7],.peer-devices[data-v-c2b7fda7]{gap:16px;margin:0;padding:0;list-style:none;display:grid}.peer-shares li[data-v-c2b7fda7],.peer-devices li[data-v-c2b7fda7]{border-top:1px solid var(--color-border);min-width:0;padding:12px 0}.peer-share-title[data-v-c2b7fda7]{align-items:flex-start;gap:8px;display:flex}.peer-share-title strong[data-v-c2b7fda7]{overflow-wrap:anywhere;color:var(--color-ink);font-size:14px}.peer-shares fieldset[data-v-c2b7fda7]{border:0;flex-wrap:wrap;gap:12px 16px;padding:0;display:flex}.peer-shares fieldset label[data-v-c2b7fda7]{align-items:center;gap:6px;display:flex}.peer-devices li[data-v-c2b7fda7]{justify-content:space-between}.peer-devices strong[data-v-c2b7fda7],.peer-devices small[data-v-c2b7fda7]{overflow-wrap:anywhere;display:block}.peer-note[data-v-c2b7fda7]{color:var(--color-warning)}.settings-fields[data-v-36cbe773]{border:0;min-width:0;margin:0;padding:0;display:contents}.settings-view[data-v-36cbe773]{background:var(--color-bg);padding-top:24px}.settings-content[data-v-36cbe773]{width:min(var(--page-max), 100%);gap:18px;margin:0 auto;display:grid}.settings-form[data-v-36cbe773]{align-items:start;gap:18px;display:grid}@media (width>=1440px){.settings-form[data-v-36cbe773]{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-form>.settings-error[data-v-36cbe773]{grid-column:1/-1}}.settings-card[data-v-36cbe773]{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);padding:26px}.section-heading[data-v-36cbe773]{justify-content:space-between;align-items:center;gap:18px;margin-bottom:22px;display:flex}.settings-card h3[data-v-36cbe773]{color:var(--color-ink);font-size:16px}.section-heading p[data-v-36cbe773]{color:var(--color-muted);margin-top:5px;font-size:12px}.resource-totals[data-v-36cbe773]{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.resource-totals article[data-v-36cbe773]{border:1px solid var(--color-border);background:var(--color-surface);border-radius:10px;align-content:center;gap:7px;min-height:126px;padding:20px 22px;display:grid}.resource-totals span[data-v-36cbe773]{color:var(--color-muted);font-size:12px}.resource-totals strong[data-v-36cbe773]{color:var(--color-ink);letter-spacing:-.04em;font-size:clamp(25px,3vw,34px)}.resource-totals small[data-v-36cbe773]{color:var(--color-muted);font-size:12px}.resource-breakdowns[data-v-36cbe773]{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:26px;display:grid}.resource-group[data-v-36cbe773]{gap:13px;display:grid}.resource-group h4[data-v-36cbe773],.port-section h4[data-v-36cbe773]{color:var(--color-ink);font-size:12px}.resource-row[data-v-36cbe773]{gap:6px;display:grid}.resource-row>div[data-v-36cbe773]{color:var(--color-muted);justify-content:space-between;gap:12px;font-size:12px;display:flex}.resource-row strong[data-v-36cbe773]{color:var(--color-ink);font-weight:650}.resource-row i[data-v-36cbe773]{background:var(--color-surface-subtle);border-radius:999px;height:5px;overflow:hidden}.resource-row b[data-v-36cbe773]{border-radius:inherit;background:var(--color-muted);height:100%;display:block}.resource-group:last-child .resource-row b[data-v-36cbe773]{background:var(--color-muted)}.resource-notes[data-v-36cbe773]{color:var(--color-muted);flex-wrap:wrap;gap:8px 18px;margin-top:22px;font-size:12px;display:flex}.restart-chip[data-v-36cbe773]{border:1px solid var(--color-warning);color:var(--color-warning);background:var(--color-warning-soft);border-radius:999px;padding:5px 9px;font-size:12px;font-weight:700}.port-section[data-v-36cbe773]{gap:13px;display:grid}.port-section+.port-section[data-v-36cbe773]{border-top:1px solid var(--color-border);margin-top:25px;padding-top:22px}.development-section>div[data-v-36cbe773]{align-items:center;gap:9px;display:flex}.development-section>div>span[data-v-36cbe773]{color:var(--color-warning);background:var(--color-warning-soft);border-radius:999px;padding:4px 8px;font-size:12px;font-weight:700}.development-section>p[data-v-36cbe773]{color:var(--color-muted);font-size:12px}.port-grid[data-v-36cbe773]{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.port-grid label[data-v-36cbe773]{color:var(--color-muted);gap:7px;font-size:12px;display:grid}.port-grid input[data-v-36cbe773]{width:100%}.port-grid small[data-v-36cbe773]{color:var(--color-muted);font-size:12px}.behavior-card>h3[data-v-36cbe773],.conversation-launcher-card>h3[data-v-36cbe773]{margin-bottom:14px}.conversation-launcher-list[data-v-36cbe773]{display:grid}.conversation-launcher-row[data-v-36cbe773]{border-top:1px solid var(--color-border);padding:16px 0}.conversation-launcher-row[data-v-36cbe773]:first-child{border-top:0}.conversation-launcher-heading[data-v-36cbe773]{justify-content:space-between;align-items:center;gap:20px;min-height:34px;display:flex}.conversation-launcher-heading>span[data-v-36cbe773]{gap:4px;display:grid}.conversation-launcher-heading strong[data-v-36cbe773]{color:var(--color-ink);font-size:12px}.conversation-launcher-heading small[data-v-36cbe773]{color:var(--color-muted);font-size:12px}.conversation-launcher-switch[data-v-36cbe773]{color:var(--color-muted);align-items:center;gap:9px;font-size:12px;display:flex}.conversation-launcher-switch input[role=switch][data-v-36cbe773]{margin:0}.conversation-launcher-note[data-v-36cbe773]{max-width:760px;color:var(--color-muted);margin-top:9px;font-size:12px;line-height:1.45;display:block}.conversation-launcher-fields[data-v-36cbe773]{grid-template-columns:minmax(150px,.7fr) minmax(160px,.8fr) minmax(280px,1.5fr);align-items:start;gap:12px;margin-top:14px;display:grid}.conversation-launcher-fields>label[data-v-36cbe773]{min-width:0;color:var(--color-muted);grid-template-rows:18px 40px;align-content:start;gap:7px;font-size:12px;display:grid}.conversation-launcher-fields>label>span[data-v-36cbe773]{text-overflow:ellipsis;white-space:nowrap;min-width:0;line-height:18px;display:block;overflow:hidden}.conversation-launcher-fields code[data-v-36cbe773]{color:var(--color-muted);font-size:12px}.conversation-launcher-fields[data-v-36cbe773] .launcher-select{width:100%;min-width:0;height:40px}.conversation-launcher-fields input[data-v-36cbe773]{width:100%}.setting-list[data-v-36cbe773]{display:grid}.setting-row[data-v-36cbe773]{border-top:1px solid var(--color-border);cursor:pointer;justify-content:space-between;align-items:center;gap:24px;min-height:64px;display:flex}.setting-row[data-v-36cbe773]:first-child{border-top:0}.setting-row>span[data-v-36cbe773]{gap:4px;display:grid}.setting-row strong[data-v-36cbe773]{color:var(--color-ink);font-size:14px}.setting-row small[data-v-36cbe773]{color:var(--color-muted);font-size:12px}.setting-row input[role=switch][data-v-36cbe773],.conversation-launcher-switch input[role=switch][data-v-36cbe773]{appearance:none;background:var(--color-muted);cursor:pointer;border:0;border-radius:999px;flex:none;width:38px;height:21px;margin:0;padding:0;transition:background .18s;position:relative}.setting-row input[role=switch][data-v-36cbe773]:after,.conversation-launcher-switch input[role=switch][data-v-36cbe773]:after{content:"";box-sizing:border-box;background:var(--color-surface);border-radius:50%;width:17px;height:17px;transition:transform .18s;position:absolute;top:50%;left:2px;transform:translateY(-50%);box-shadow:0 0 4px #0000002e}.setting-row input[role=switch][data-v-36cbe773]:checked,.conversation-launcher-switch input[role=switch][data-v-36cbe773]:checked{background:var(--color-accent)}.setting-row input[role=switch][data-v-36cbe773]:checked:after,.conversation-launcher-switch input[role=switch][data-v-36cbe773]:checked:after{transform:translate(17px,-50%)}.select-row .settings-select[data-v-36cbe773]{width:180px;min-width:0}.settings-top-status[data-v-36cbe773]{color:var(--color-muted);flex-wrap:wrap;align-items:center;gap:6px 16px;padding:0 4px 2px;font-size:12px;display:flex}.settings-top-status strong[data-v-36cbe773]{color:var(--color-muted);font-weight:700}.settings-error[data-v-36cbe773]{border-radius:var(--radius-control);color:var(--color-danger);background:var(--color-surface);padding:11px 13px;font-size:12px}@media (width<=900px){.port-grid[data-v-36cbe773],.conversation-launcher-fields[data-v-36cbe773]{grid-template-columns:repeat(2,minmax(0,1fr))}.conversation-launcher-template[data-v-36cbe773]{grid-column:1/-1}}@media (width<=680px){.settings-card[data-v-36cbe773]{padding:20px}.resource-totals[data-v-36cbe773],.resource-breakdowns[data-v-36cbe773],.port-grid[data-v-36cbe773],.conversation-launcher-fields[data-v-36cbe773]{grid-template-columns:1fr}.conversation-launcher-template[data-v-36cbe773]{grid-column:auto}.select-row[data-v-36cbe773]{flex-direction:column;align-items:flex-start;padding:14px 0}.select-row .settings-select[data-v-36cbe773]{width:100%}}
@@ -1 +0,0 @@
1
- import{B as e,E as t,H as n,I as r,M as i,N as a,P as o,Q as s,S as c,T as l,U as u,X as d,a as f,at as p,b as m,d as h,f as g,g as _,h as v,i as y,it as b,l as x,n as S,ot as C,r as w,rt as T,u as E,v as D,w as O,x as k,y as A}from"./i18n-oJFlt8hW.js";import{t as j}from"./console-Cw7TzOSC.js";import{a as M,o as N,r as P,s as F,t as I}from"./client-DnwnUBQV.js";import{t as L}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as R}from"./UiButton-x8hiHNRM.js";import{t as z}from"./UiSelect-K29jnV-1.js";import{t as B}from"./UiDisclosure-_IxeiexW.js";import{a as V,c as H,i as U,r as W,t as G,u as K}from"./judgment-types-DR931cZ7.js";import{i as ee,n as te,s as q,t as J}from"./conversation-launcher-settings-Yc13viwr.js";var Y=[`aria-label`],X={class:`judgment-panel-heading`},ne={key:1,class:`judgment-policy-empty`},re={key:0,class:`judgment-project-field`},ie={for:`judgment-project-select`},ae=[`disabled`],oe=[`value`],se={key:1,class:`judgment-policy-error`,role:`alert`},Z=[`disabled`],ce=[`disabled`],le=[`onUpdate:modelValue`,`value`],Q={key:0,class:`judgment-progressive-fields`},ue=[`value`],de=[`value`],fe={class:`judgment-policy-actions`},pe=[`disabled`],me=[`title`,`disabled`],he=[`disabled`],ge={key:3,class:`judgment-policy-saved`,role:`status`},_e={key:3,class:`judgment-policy-error`,role:`alert`},ve=L(t({__name:`JudgmentPolicyPanel`,props:{personalSpaceId:{},projects:{default:()=>[]}},setup(t){let n=t,i=s(``),a=s(null),l=s({...G}),d=s(!1),f=s(!1),p=s(``),g=s(``),v=s(!1),y=s(null),x=0,S=D(()=>[{id:``,name:K(`settings.global`)},...n.projects.filter(e=>e.id)]),w=D(()=>i.value||null),O=D(()=>!!(w.value&&a.value&&!a.value.inherited)),j=D(()=>d.value||f.value),M=D(()=>!!(a.value&&!p.value&&!f.value)),N=D(()=>!w.value||!a.value?``:a.value.inherited?K(`settings.inherited`):K(`settings.override`));e(()=>n.projects,e=>{i.value&&!e.some(e=>e.id===i.value)&&(i.value=``)},{deep:!0}),e([()=>n.personalSpaceId,i],()=>{P()},{immediate:!0});async function P(){let e=++x;if(a.value=null,y.value=null,l.value={...G},f.value=!1,v.value=!1,p.value=``,g.value=``,!n.personalSpaceId){d.value=!1;return}d.value=!0;try{let t=await V(n.personalSpaceId,w.value);if(e!==x)return;a.value=W(t),l.value=U(a.value)}catch(t){e===x&&(p.value=t instanceof Error?t.message:K(`settings.loadError`))}finally{e===x&&(d.value=!1)}}function I(e){return e&&typeof e==`object`&&`status`in e&&typeof e.status==`number`?e.status:null}async function L(e,t=!1){if(!a.value||!M.value)return;f.value=!0,v.value=!1,g.value=``;let r=x,i=a.value.inherited?null:U(a.value);try{let o=await H(n.personalSpaceId,w.value,e,a.value.revision);if(r!==x)return;a.value=W(o),l.value=U(a.value),v.value=!0,y.value=t?null:{policy:i}}catch(e){if(r!==x)return;if(I(e)===409){let e=x+1;await P(),x===e&&(g.value=K(`settings.conflictError`))}else g.value=e instanceof Error?e.message:K(`settings.saveError`)}finally{r===x&&(f.value=!1)}}function R(){return L({...l.value})}function z(){if(y.value)return L(y.value.policy,!0)}async function B(){if(O.value)return L(null)}return(e,t)=>(o(),c(`section`,{class:`judgment-policy-panel`,"aria-label":T(K)(`settings.title`)},[A(`header`,X,[A(`div`,null,[A(`h3`,null,C(T(K)(`settings.title`)),1),A(`p`,null,C(T(K)(`settings.hint`)),1)]),f.value?(o(),m(F,{key:0,variant:`inline`,label:T(K)(`settings.saving`)},null,8,[`label`])):k(``,!0)]),d.value&&!a.value?(o(),m(F,{key:0,variant:`compact`,label:T(K)(`settings.loading`)},null,8,[`label`])):n.personalSpaceId?(o(),c(_,{key:2},[n.projects.length?(o(),c(`div`,re,[A(`label`,ie,C(T(K)(`settings.project`)),1),u(A(`select`,{id:`judgment-project-select`,"data-select":`judgment-project`,"onUpdate:modelValue":t[0]||=e=>i.value=e,disabled:j.value},[(o(!0),c(_,null,r(S.value,e=>(o(),c(`option`,{key:e.id||`global`,value:e.id},C(e.name),9,oe))),128))],8,ae),[[h,i.value]]),N.value?(o(),c(`small`,{key:0,class:b({"is-inherited":a.value?.inherited})},C(N.value),3)):k(``,!0)])):k(``,!0),p.value?(o(),c(`div`,se,[A(`span`,null,C(p.value),1),A(`button`,{type:`button`,class:`quiet-button`,disabled:j.value,onClick:P},C(T(K)(`settings.retry`)),9,Z)])):a.value?(o(),c(`fieldset`,{key:2,class:`judgment-policy-fields`,disabled:!M.value},[A(`legend`,null,C(T(K)(`mode.title`)),1),(o(),c(_,null,r([`manual`,`shared`,`autonomous`],e=>A(`label`,{key:e,class:b([`judgment-mode-option`,{"is-selected":l.value.mode===e}])},[u(A(`input`,{"onUpdate:modelValue":e=>l.value.mode=e,type:`radio`,name:`judgment-mode`,value:e,onChange:t[1]||=e=>R()},null,40,le),[[E,l.value.mode]]),A(`span`,null,[A(`strong`,null,C(T(K)(`mode.${e}`)),1),A(`small`,null,C(T(K)(`mode.${e}Hint`)),1)])],2)),64)),l.value.mode===`manual`?k(``,!0):(o(),c(`div`,Q,[A(`label`,null,[A(`span`,null,C(T(K)(`quality.title`)),1),u(A(`select`,{"onUpdate:modelValue":t[2]||=e=>l.value.quality=e,"data-select":`judgment-quality`,onChange:t[3]||=e=>R()},[(o(),c(_,null,r([`quality`,`balanced`,`economy`],e=>A(`option`,{key:e,value:e},C(T(K)(`quality.${e}`)),9,ue)),64))],544),[[h,l.value.quality]])]),A(`label`,null,[A(`span`,null,C(T(K)(`client.title`)),1),u(A(`select`,{"onUpdate:modelValue":t[4]||=e=>l.value.client=e,"data-select":`judgment-client`,onChange:t[5]||=e=>R()},[(o(),c(_,null,r([`codex`,`claude_code`],e=>A(`option`,{key:e,value:e},C(T(K)(`client.${e}`)),9,de)),64))],544),[[h,l.value.client]])])])),A(`div`,fe,[g.value?(o(),c(`button`,{key:0,class:`quiet-button`,type:`button`,"data-action":`save-policy`,disabled:j.value,onClick:R},C(T(K)(`settings.retry`)),9,pe)):k(``,!0),O.value?(o(),c(`button`,{key:1,class:`quiet-button`,type:`button`,"data-action":`reset-policy`,title:T(K)(`settings.resetTitle`),disabled:j.value,onClick:B},C(T(K)(`settings.reset`)),9,me)):k(``,!0),y.value?(o(),c(`button`,{key:2,class:`quiet-button`,type:`button`,"data-action":`undo-policy`,disabled:j.value,onClick:z},C(T(K)(`settings.undo`)),9,he)):k(``,!0),v.value?(o(),c(`span`,ge,C(T(K)(`settings.saved`)),1)):k(``,!0)])],8,ce)):k(``,!0),g.value?(o(),c(`div`,_e,C(g.value),1)):k(``,!0)],64)):(o(),c(`div`,ne,C(T(K)(`settings.loadError`)),1))],8,Y))}}),[[`__scopeId`,`data-v-98f9e2c8`]]),ye=t({__name:`JudgmentPolicySettings`,setup(e){let t=j(),n=D(()=>t.activePersonalSpace?.id??``),r=D(()=>(t.state?.personalProjects??[]).filter(e=>e.personal_space_id===n.value).map(e=>({id:e.project_id,name:e.profile.name})));return(e,t)=>(o(),m(ve,{"personal-space-id":n.value,projects:r.value},null,8,[`personal-space-id`,`projects`]))}}),be={key:1,role:`alert`},xe={class:`connection-toolbar`},$=[`title`,`aria-label`],Se=[`value`,`aria-label`],Ce={key:0,role:`status`},we={class:`connection-boundary`},Te={href:`https://github.com/JevonsCode/fuli/blob/main/docs/client-connections.md`,target:`_blank`,rel:`noopener noreferrer`},Ee=L(t({__name:`ClientConnectionSettings`,setup(e){let t=s(null),r=s(`standard`),i=s(!1),a=s(``),u=s(``),d=D(()=>t.value?JSON.stringify(t.value[r.value],null,2):``),p=D(()=>[`standard`,`vscode`,`server`].map(e=>({value:e,label:f(`settings.connection.formats.${e}`)})));async function h(){if(!i.value){i.value=!0,a.value=``;try{t.value=await P(`/api/system/client-connection`)}catch{a.value=f(`settings.connection.loadError`)}finally{i.value=!1}}}function g(e){e.target.open&&!t.value&&!i.value&&!a.value&&h()}function v(e){(e===`standard`||e===`vscode`||e===`server`)&&(r.value=e,u.value=``)}async function y(){let e=d.value;try{if(!navigator.clipboard?.writeText)throw Error(`Clipboard unavailable`);await navigator.clipboard.writeText(e),d.value===e&&(u.value=`copied`)}catch{d.value===e&&(u.value=`manual`)}}return(e,s)=>(o(),m(B,{class:`settings-card connection-settings`,title:T(f)(`settings.connection.title`),onToggle:g},{default:n(()=>[A(`p`,null,C(T(f)(`settings.connection.description`)),1),i.value?(o(),m(F,{key:0,variant:`compact`,label:T(f)(`settings.connection.loading`)},null,8,[`label`])):k(``,!0),a.value?(o(),c(`div`,be,[A(`span`,null,C(a.value),1),A(`button`,{class:`ui-button`,type:`button`,"data-retry-connection":``,onClick:h},C(T(f)(`settings.connection.retry`)),1)])):k(``,!0),t.value?(o(),c(_,{key:2},[A(`div`,xe,[l(z,{"control-id":`client-connection-format`,"model-value":r.value,options:p.value,label:T(f)(`settings.connection.format`),"onUpdate:modelValue":v},null,8,[`model-value`,`options`,`label`]),A(`button`,{class:`ui-button connection-copy`,type:`button`,"data-copy-connection":``,title:T(f)(`settings.connection.copy`),"aria-label":T(f)(`settings.connection.copy`),onClick:y},[...s[0]||=[A(`svg`,{viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.7`,"aria-hidden":`true`},[A(`rect`,{x:`8`,y:`8`,width:`12`,height:`12`,rx:`2`}),A(`path`,{d:`M16 8V5a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v9a2 2 0 0 0 2 2h3`})],-1)]],8,$)]),A(`textarea`,{value:d.value,readonly:``,rows:`8`,spellcheck:`false`,"aria-label":T(f)(`settings.connection.configuration`)},null,8,Se),u.value?(o(),c(`p`,Ce,C(T(f)(`settings.connection.${u.value}`)),1)):k(``,!0),A(`p`,null,C(T(f)(`settings.connection.merge`)),1)],64)):k(``,!0),A(`p`,we,C(T(f)(`settings.connection.boundary`)),1),A(`a`,Te,C(T(f)(`settings.connection.guide`)),1)]),_:1},8,[`title`]))}}),[[`__scopeId`,`data-v-a09270ee`]]),De={key:1,class:`peer-alert`,role:`alert`},Oe={key:0,role:`status`},ke={class:`peer-block`},Ae={key:0},je={key:1,class:`peer-fields`},Me=[`disabled`],Ne={class:`peer-block`},Pe=[`disabled`,`placeholder`,`aria-label`],Fe=[`disabled`],Ie={key:0,class:`peer-identity`,"data-invitation-preview":``},Le={class:`peer-identity`},Re={key:0,class:`peer-block`},ze=[`value`,`aria-label`],Be={class:`peer-actions`},Ve={key:0,role:`status`},He={class:`peer-block`},Ue={key:0},We={key:1,class:`peer-shares`},Ge={class:`peer-share-title`},Ke=[`checked`,`disabled`,`onChange`],qe={key:0,class:`peer-note`},Je={key:1,class:`peer-note`},Ye=[`disabled`],Xe=[`checked`,`onChange`],Ze={key:3},Qe=[`onUpdate:modelValue`,`disabled`],$e={key:1,class:`peer-block`},et={class:`peer-devices`},tt=L(t({__name:`PeerSettings`,setup(t){let i=s(null),a=s(!1),p=s(``),h=s(``),v=s(``),y=s(``),b=s(``),x=s(``),S=s(null),w=s(``),E=s(null),j=d({}),L=D(()=>(i.value?.addresses??[]).map(e=>({value:e,label:e}))),V=D(()=>!!i.value?.role),H=D(()=>i.value?.role===`coordinator`),U=D(()=>(i.value?.devices??[]).filter(e=>!e.self));e(b,()=>{E.value=null});function W(e,t){if(e instanceof I&&e.detail)try{let t=JSON.parse(e.detail);if(typeof t.message==`string`&&t.message.trim())return t.message}catch{}return t}function G(e){return f(e===`claude_code`?`settings.peer.clientsClaude`:`settings.peer.clientsCodex`)}function K(e){i.value=e,!v.value&&e.addresses[0]&&(v.value=e.addresses[0]);let t=new Set(e.shareable.map(e=>e.projectId));for(let e of Object.keys(j))t.has(e)||delete j[e];for(let t of e.shareable){let n=e.shares.find(e=>e.projectId===t.projectId);j[t.projectId]??={selected:!!n,clients:n?.clients?.length?n.clients:t.clients.slice(0,1),folder:n?.workingDirectory??``}}}async function ee(){if(!a.value){a.value=!0,p.value=``;try{K(await P(`/api/peer`))}catch(e){p.value=W(e,f(`settings.peer.loadError`))}finally{a.value=!1}}}function te(e){e.target.open&&!i.value&&!a.value&&!p.value&&ee()}async function q(e,t){if(!h.value){h.value=e,p.value=``;try{let e=await t();e&&K(e)}catch(e){p.value=W(e,f(`settings.peer.loadError`))}finally{h.value=``}}}function J(){return q(`host`,()=>M(`/api/peer/coordinator`,{host:v.value,port:0,name:y.value.trim()||void 0}))}function Y(){return E.value?q(`join`,()=>M(`/api/peer/join`,{invitation:b.value.trim(),name:x.value.trim()||void 0})):q(`preview`,async()=>{let e=b.value.trim(),t=await M(`/api/peer/invitations/preview`,{invitation:e});b.value.trim()===e&&(E.value=t)})}async function X(){await q(`invite`,async()=>{S.value=await M(`/api/peer/invitations`,{}),w.value=``})}async function ne(){let e=S.value?.invitation;if(e)try{if(!navigator.clipboard?.writeText)throw Error(`Clipboard unavailable`);await navigator.clipboard.writeText(e),S.value?.invitation===e&&(w.value=`copied`)}catch{S.value?.invitation===e&&(w.value=`manual`)}}function re(e,t){let n=j[e.projectId];n&&(n.selected=t,t&&!n.clients.length&&(n.clients=e.clients.slice(0,1)))}function ie(e,t,n){let r=j[e];r&&(r.clients=n?[...new Set([...r.clients,t])]:r.clients.filter(e=>e!==t))}function ae(){let e=(i.value?.shareable??[]).flatMap(e=>{let t=j[e.projectId];return!t?.selected||!e.lead?[]:[{projectId:e.projectId,clients:t.clients,...t.folder.trim()?{workingDirectory:t.folder.trim()}:{}}]});return q(`shares`,()=>N(`/api/peer/shares`,{shares:e}))}function oe(e){return q(`revoke:${e}`,()=>M(`/api/peer/devices/${e}/revoke`,{}))}function se(){return q(`disable`,async()=>{let e=await M(`/api/peer/disable`,{});return S.value=null,b.value=``,e})}function Z(e){return i.value?.shares.find(t=>t.projectId===e)?.state??null}return(e,t)=>(o(),m(B,{class:`settings-card peer-settings`,title:T(f)(`settings.peer.title`),onToggle:te},{default:n(()=>[A(`p`,null,C(T(f)(`settings.peer.description`)),1),a.value?(o(),m(F,{key:0,variant:`compact`,label:T(f)(`settings.peer.loading`)},null,8,[`label`])):k(``,!0),p.value?(o(),c(`div`,De,[A(`span`,null,C(p.value),1),l(R,{size:`sm`,"data-retry-peer":``,busy:a.value,"busy-label":T(f)(`settings.peer.loading`),onClick:ee},{default:n(()=>[O(C(T(f)(`settings.peer.retry`)),1)]),_:1},8,[`busy`,`busy-label`])])):k(``,!0),i.value&&!V.value?(o(),c(_,{key:2},[A(`p`,null,C(T(f)(`settings.peer.off`)),1),i.value.remoteRemovalPending?(o(),c(`p`,Oe,C(T(f)(`settings.peer.removalPending`)),1)):k(``,!0),A(`section`,ke,[A(`h4`,null,C(T(f)(`settings.peer.host`)),1),i.value.addresses.length?(o(),c(`div`,je,[l(z,{"control-id":`peer-host-address`,"model-value":v.value,options:L.value,label:T(f)(`settings.peer.hostAddress`),"onUpdate:modelValue":t[0]||=e=>v.value=e},null,8,[`model-value`,`options`,`label`]),A(`label`,null,[A(`span`,null,C(T(f)(`settings.peer.hostName`)),1),u(A(`input`,{"onUpdate:modelValue":t[1]||=e=>y.value=e,type:`text`,maxlength:`60`,disabled:!!h.value},null,8,Me),[[g,y.value]])]),l(R,{variant:`primary`,size:`sm`,"data-host-peer":``,disabled:!v.value,busy:h.value===`host`,"busy-label":T(f)(`settings.peer.hosting`),onClick:J},{default:n(()=>[O(C(T(f)(`settings.peer.hostAction`)),1)]),_:1},8,[`disabled`,`busy`,`busy-label`])])):(o(),c(`p`,Ae,C(T(f)(`settings.peer.noAddress`)),1))]),A(`section`,Ne,[A(`h4`,null,C(T(f)(`settings.peer.join`)),1),A(`label`,null,[A(`span`,null,C(T(f)(`settings.peer.invitation`)),1),u(A(`textarea`,{"onUpdate:modelValue":t[2]||=e=>b.value=e,rows:`3`,spellcheck:`false`,disabled:!!h.value,placeholder:T(f)(`settings.peer.invitationPlaceholder`),"aria-label":T(f)(`settings.peer.invitation`)},null,8,Pe),[[g,b.value]])]),A(`label`,null,[A(`span`,null,C(T(f)(`settings.peer.joinName`)),1),u(A(`input`,{"onUpdate:modelValue":t[3]||=e=>x.value=e,type:`text`,maxlength:`60`,disabled:!!h.value},null,8,Fe),[[g,x.value]])]),E.value?(o(),c(`div`,Ie,[A(`div`,null,[A(`strong`,null,C(E.value.name),1),A(`p`,null,C(E.value.url),1)]),A(`div`,null,[A(`p`,null,C(T(f)(`settings.peer.coordinatorFingerprint`)),1),A(`code`,null,C(E.value.shortFingerprint),1)]),A(`p`,null,C(T(f)(`settings.peer.compare`)),1)])):k(``,!0),l(R,{variant:`primary`,size:`sm`,"data-join-peer":``,disabled:!b.value.trim()||i.value.remoteRemovalPending,busy:h.value===`join`||h.value===`preview`,"busy-label":T(f)(E.value?`settings.peer.joining`:`settings.peer.previewing`),onClick:Y},{default:n(()=>[O(C(T(f)(E.value?`settings.peer.joinAction`:`settings.peer.previewAction`)),1)]),_:1},8,[`disabled`,`busy`,`busy-label`])])],64)):k(``,!0),i.value&&V.value?(o(),c(_,{key:3},[A(`dl`,Le,[A(`div`,null,[A(`dt`,null,C(T(f)(`settings.peer.fingerprint`)),1),A(`dd`,null,C(i.value.device?.shortFingerprint),1)]),A(`div`,null,[A(`dt`,null,C(T(f)(`settings.peer.coordinatorFingerprint`)),1),A(`dd`,null,C(i.value.coordinator?.shortFingerprint),1)])]),H.value?(o(),c(`section`,Re,[l(R,{size:`sm`,"data-invite-peer":``,busy:h.value===`invite`,"busy-label":T(f)(`settings.peer.inviting`),onClick:X},{default:n(()=>[O(C(T(f)(`settings.peer.invite`)),1)]),_:1},8,[`busy`,`busy-label`]),A(`p`,null,C(T(f)(`settings.peer.inviteHint`)),1),S.value?(o(),c(_,{key:0},[A(`textarea`,{value:S.value.invitation,readonly:``,rows:`4`,spellcheck:`false`,"aria-label":T(f)(`settings.peer.invitation`)},null,8,ze),A(`div`,Be,[l(R,{size:`sm`,"data-copy-invite":``,onClick:ne},{default:n(()=>[O(C(T(f)(`settings.peer.copyInvite`)),1)]),_:1}),w.value?(o(),c(`p`,Ve,C(T(f)(`settings.peer.${w.value===`copied`?`copied`:`copyManual`}`)),1)):k(``,!0)])],64)):k(``,!0)])):k(``,!0),A(`section`,He,[A(`h4`,null,C(T(f)(`settings.peer.shares`)),1),A(`p`,null,C(T(f)(`settings.peer.sharesHint`)),1),i.value.shareable.length?(o(),c(`ul`,We,[(o(!0),c(_,null,r(i.value.shareable,e=>(o(),c(`li`,{key:e.projectId},[A(`label`,Ge,[A(`input`,{type:`checkbox`,checked:j[e.projectId]?.selected,disabled:!e.lead||!!h.value,onChange:t=>re(e,t.target.checked)},null,40,Ke),A(`strong`,null,C(e.projectName),1)]),A(`small`,null,C(e.lead?T(f)(`settings.peer.lead`,{name:e.lead.name}):T(f)(`settings.peer.noLead`)),1),Z(e.projectId)===`lead_changed`?(o(),c(`p`,qe,C(T(f)(`settings.peer.leadChanged`)),1)):k(``,!0),Z(e.projectId)===`lead_unavailable`?(o(),c(`p`,Je,C(T(f)(`settings.peer.leadUnavailable`)),1)):k(``,!0),j[e.projectId]?.selected&&e.lead?(o(),c(`fieldset`,{key:2,disabled:!!h.value},[A(`legend`,null,C(T(f)(`settings.peer.clients`)),1),(o(!0),c(_,null,r(e.clients,t=>(o(),c(`label`,{key:t},[A(`input`,{type:`checkbox`,checked:j[e.projectId]?.clients.includes(t),onChange:n=>ie(e.projectId,t,n.target.checked)},null,40,Xe),O(` `+C(G(t)),1)]))),128))],8,Ye)):k(``,!0),j[e.projectId]?.selected&&e.lead?(o(),c(`label`,Ze,[A(`span`,null,C(T(f)(`settings.peer.folder`)),1),u(A(`input`,{"onUpdate:modelValue":t=>j[e.projectId].folder=t,type:`text`,disabled:!!h.value},null,8,Qe),[[g,j[e.projectId].folder]]),A(`small`,null,C(T(f)(`settings.peer.folderHint`)),1)])):k(``,!0)]))),128))])):(o(),c(`p`,Ue,C(T(f)(`settings.peer.noProjects`)),1)),i.value.shareable.length?(o(),m(R,{key:2,variant:`primary`,size:`sm`,"data-save-shares":``,busy:h.value===`shares`,"busy-label":T(f)(`settings.peer.savingShares`),onClick:ae},{default:n(()=>[O(C(T(f)(`settings.peer.saveShares`)),1)]),_:1},8,[`busy`,`busy-label`])):k(``,!0)]),H.value&&U.value.length?(o(),c(`section`,$e,[A(`h4`,null,C(T(f)(`settings.peer.devices`)),1),A(`ul`,et,[(o(!0),c(_,null,r(U.value,e=>(o(),c(`li`,{key:e.nodeId},[A(`div`,null,[A(`strong`,null,C(e.name),1),A(`small`,null,C(e.shortFingerprint)+` · `+C(e.online?T(f)(`settings.peer.online`):T(f)(`settings.peer.offline`)),1)]),l(R,{size:`sm`,variant:`danger`,"data-revoke":e.nodeId,busy:h.value===`revoke:${e.nodeId}`,"busy-label":T(f)(`settings.peer.revoking`),onClick:t=>oe(e.nodeId)},{default:n(()=>[O(C(T(f)(`settings.peer.revoke`)),1)]),_:1},8,[`data-revoke`,`busy`,`busy-label`,`onClick`])]))),128))])])):k(``,!0),A(`p`,null,C(T(f)(`settings.peer.disableHint`)),1),l(R,{size:`sm`,"data-disable-peer":``,busy:h.value===`disable`,"busy-label":T(f)(`settings.peer.disabling`),onClick:se},{default:n(()=>[O(C(T(f)(`settings.peer.disable`)),1)]),_:1},8,[`busy`,`busy-label`])],64)):k(``,!0)]),_:1},8,[`title`]))}}),[[`__scopeId`,`data-v-c2b7fda7`]]),nt=[`aria-label`],rt={class:`settings-content`},it={key:1,class:`settings-top-status`,role:`status`},at={key:0},ot={key:1},st=[`aria-busy`],ct=[`disabled`],lt={class:`settings-card behavior-card`},ut={class:`setting-list`},dt={class:`setting-row`},ft=[`checked`],pt={class:`setting-row`},mt=[`checked`],ht={class:`setting-row`},gt={class:`setting-row select-row`},_t={class:`setting-row select-row`},vt={class:`setting-row select-row`},yt={class:`settings-card judgment-settings-card`},bt={key:0,class:`restart-chip`},xt={class:`port-section`},St={class:`port-grid`},Ct=[`onUpdate:modelValue`],wt={class:`port-section development-section`},Tt={class:`conversation-launcher-list`},Et={class:`conversation-launcher-heading`},Dt={class:`conversation-launcher-switch`},Ot=[`onUpdate:modelValue`],kt={key:0,class:`conversation-launcher-note`},At={key:1,class:`conversation-launcher-fields`},jt=[`onUpdate:modelValue`],Mt={class:`conversation-launcher-template`},Nt=[`onUpdate:modelValue`],Pt={key:0,class:`settings-error`,role:`alert`},Ft={class:`settings-card resource-card`},It={class:`section-heading`},Lt={key:0},Rt=[`disabled`],zt={key:1,class:`settings-error`,role:`alert`},Bt={class:`resource-totals`},Vt={class:`resource-breakdowns`},Ht={class:`resource-group`},Ut={class:`resource-group`},Wt={class:`resource-notes`},Gt={key:0},Kt={key:1},qt={key:4,class:`settings-error`,role:`alert`},Jt=L(t({__name:`SettingsPage`,setup(t){let d=j(),h=s(null),b=s(null),E=s(null),M=s(!0),I=D({get:()=>d.settingsSaving,set:e=>{d.settingsSaving=e}}),L=s(!1),R=s(``),V=s(``),H=s(!1),U=null,W=[`console`,`personalProvider`,`personalNeo4jHttp`,`personalNeo4jBolt`],G=D({get:()=>S(),set:e=>y(e)}),K=[5,10,30,60],Y=ee,X=D(()=>[{value:`zh-CN`,label:f(`settings.behavior.zh`)},{value:`en-US`,label:f(`settings.behavior.en`)}]),ne=D(()=>K.map(e=>({value:String(e),label:f(`settings.resources.refreshUnit`,{seconds:e})}))),re=D(()=>[{value:`native`,label:f(`settings.behavior.runtimeModes.native`)},{value:`container`,label:f(`settings.behavior.runtimeModes.container`)}]),ie=D(()=>[{value:`any`,label:f(`settings.conversationLaunchers.idFormats.any`)},{value:`uuid`,label:f(`settings.conversationLaunchers.idFormats.uuid`)}]),ae=D(()=>d.state?.capturePolicy?.enabled!==!1),oe=D(()=>d.state?.agentAccessPolicy?.enabled!==!1),se=D(()=>Math.max(1,...E.value?.memory.components.map(({bytes:e})=>e)??[1])),Z=D(()=>Math.max(1,...E.value?.disk.components.map(({bytes:e})=>e)??[1])),ce=D(()=>b.value?.graphRuntimeMode===`container`&&Number.isFinite(E.value?.memory.hostTotalBytes)&&Number(E.value?.memory.hostTotalBytes)<=16*1024**3);a(async()=>{d.runtimeStatus===`idle`&&d.refresh(),await Promise.all([le(),Q()]),M.value=!1}),i(fe),e(()=>b.value?.resourceRefreshSeconds,()=>de());async function le(){try{let e=await P(`/api/system/settings`);h.value=e,b.value={...structuredClone(e.configured),conversationLaunchers:J(e.configured.conversationLaunchers)},te(e.configured.conversationLaunchers),R.value=``}catch(e){R.value=e instanceof Error?e.message:f(`settings.loadError`)}}async function Q(){if(!(L.value||document.visibilityState===`hidden`)){L.value=!0;try{E.value=await P(`/api/system/resources`),V.value=``}catch(e){V.value=e instanceof Error?e.message:f(`settings.resources.unavailable`)}finally{L.value=!1}}}async function ue(){if(!(!b.value||I.value)){I.value=!0,H.value=!1;try{let e=await N(`/api/system/settings`,b.value);h.value=e,b.value={...structuredClone(e.configured),conversationLaunchers:J(e.configured.conversationLaunchers)},te(e.configured.conversationLaunchers),H.value=!0,R.value=``,window.setTimeout(()=>{H.value=!1},2400)}catch(e){R.value=e instanceof Error?e.message:f(`settings.saveError`)}finally{I.value=!1}}}function de(){fe();let e=b.value?.resourceRefreshSeconds;e&&(U=setInterval(()=>void Q(),e*1e3))}function fe(){U&&clearInterval(U),U=null}function pe(e){d.updateCapturePolicy(e.currentTarget.checked)}function me(e){d.updateAgentAccessPolicy(e.currentTarget.checked)}function he(e){(e===`zh-CN`||e===`en-US`)&&y(e)}function ge(e){let t=K.find(t=>String(t)===e);t===void 0||!b.value||(b.value.resourceRefreshSeconds=t)}function _e(e){!b.value||e!==`native`&&e!==`container`||(b.value.graphRuntimeMode=e)}function ve(e){let t=f(`settings.conversationLaunchers.applications.${e}`);return t===`settings.conversationLaunchers.applications.${e}`?q(e):t}function be(e){return h.value?.active.ports[e]??`—`}function xe(e){let t=`settings.resources.components.${e.id.replace(/-([a-z])/g,(e,t)=>t.toUpperCase())}`;return w.global.te(t)?f(t):e.label}function $(e){if(!Number.isFinite(e))return`—`;let t=Number(e),n=[`B`,`KiB`,`MiB`,`GiB`,`TiB`],r=t,i=0;for(;r>=1024&&i<n.length-1;)r/=1024,i+=1;let a=i===0||r>=100?0:r>=10?1:2;return`${r.toFixed(a)} ${n[i]}`}function Se(e,t){return`${Math.max(3,Math.round(e/t*100))}%`}function Ce(e){return e?new Intl.DateTimeFormat(G.value,{hour:`2-digit`,minute:`2-digit`,second:`2-digit`}).format(new Date(e)):`—`}function we(e){let t=e.target.closest(`details`);for(;t;)t.open=!0,t=t.parentElement?.closest(`details`)??null}return(e,t)=>(o(),c(`section`,{class:`view settings-view`,"aria-label":T(f)(`settings.aria`)},[A(`div`,rt,[I.value?(o(),m(F,{key:0,variant:`inline`,label:T(f)(`settings.saving`)},null,8,[`label`])):k(``,!0),H.value||h.value?.restartRequired?(o(),c(`div`,it,[H.value?(o(),c(`strong`,at,C(T(f)(`settings.saved`)),1)):k(``,!0),h.value?.restartRequired?(o(),c(`span`,ot,C(T(f)(`settings.restartCopy`)),1)):k(``,!0)])):k(``,!0),M.value&&!b.value?(o(),m(F,{key:2,variant:`compact`,label:T(f)(`settings.loading`)},null,8,[`label`])):k(``,!0),b.value?(o(),c(`form`,{key:3,id:`settings-form`,class:`settings-form`,"aria-busy":I.value,onSubmit:v(ue,[`prevent`]),onInvalidCapture:we},[A(`fieldset`,{class:`settings-fields`,disabled:I.value},[A(`section`,lt,[A(`h3`,null,C(T(f)(`settings.behavior.title`)),1),A(`div`,ut,[A(`label`,dt,[A(`span`,null,[A(`strong`,null,C(T(f)(`settings.behavior.capture`)),1),A(`small`,null,C(T(f)(`settings.behavior.captureMeta`)),1)]),A(`input`,{type:`checkbox`,role:`switch`,checked:ae.value,onChange:pe},null,40,ft)]),A(`label`,pt,[A(`span`,null,[A(`strong`,null,C(T(f)(`settings.behavior.agentAccess`)),1),A(`small`,null,C(T(f)(`settings.behavior.agentAccessMeta`)),1)]),A(`input`,{type:`checkbox`,role:`switch`,checked:oe.value,onChange:me},null,40,mt)]),A(`label`,ht,[A(`span`,null,[A(`strong`,null,C(T(f)(`settings.behavior.lanAccess`)),1),A(`small`,null,C(T(f)(`settings.behavior.lanAccessMeta`)),1)]),u(A(`input`,{"onUpdate:modelValue":t[0]||=e=>b.value.lanAccess=e,type:`checkbox`,role:`switch`},null,512),[[x,b.value.lanAccess]])]),A(`div`,gt,[A(`span`,null,[A(`strong`,null,C(T(f)(`settings.behavior.runtimeMode`)),1),A(`small`,null,C(ce.value?T(f)(`settings.behavior.runtimeRecommendation`):T(f)(`settings.behavior.runtimeModeMeta`,{mode:T(f)(`settings.behavior.runtimeModes.${h.value?.active.graphRuntimeMode??b.value.graphRuntimeMode}`)})),1)]),l(z,{class:`settings-select`,"control-id":`settings-runtime-mode`,"model-value":b.value.graphRuntimeMode,options:re.value,label:T(f)(`settings.behavior.runtimeMode`),"onUpdate:modelValue":_e},null,8,[`model-value`,`options`,`label`])]),A(`div`,_t,[A(`span`,null,[A(`strong`,null,C(T(f)(`settings.behavior.language`)),1)]),l(z,{class:`settings-select`,"control-id":`settings-language`,"model-value":G.value,options:X.value,label:T(f)(`settings.behavior.language`),"onUpdate:modelValue":he},null,8,[`model-value`,`options`,`label`])]),A(`div`,vt,[A(`span`,null,[A(`strong`,null,C(T(f)(`settings.resources.refresh`)),1)]),l(z,{class:`settings-select`,"control-id":`settings-refresh-interval`,"model-value":String(b.value.resourceRefreshSeconds),options:ne.value,label:T(f)(`settings.resources.refresh`),"onUpdate:modelValue":ge},null,8,[`model-value`,`options`,`label`])])])]),A(`section`,yt,[l(ye)]),l(Ee),l(tt),l(B,{class:`settings-card ports-card`,title:T(f)(`settings.ports.title`)},{default:n(()=>[h.value?.restartRequired?(o(),c(`span`,bt,C(T(f)(`settings.restartRequired`)),1)):k(``,!0),A(`div`,xt,[A(`h4`,null,C(T(f)(`settings.ports.personal`)),1),A(`div`,St,[(o(),c(_,null,r(W,e=>A(`label`,{key:e},[A(`span`,null,C(T(f)(`settings.ports.${e}`)),1),u(A(`input`,{"onUpdate:modelValue":t=>b.value.ports[e]=t,type:`number`,min:`1`,max:`65535`,required:``},null,8,Ct),[[g,b.value.ports[e],void 0,{number:!0}]]),A(`small`,null,C(T(f)(`settings.ports.active`,{port:be(e)})),1)])),64))])]),A(`div`,wt,[A(`div`,null,[A(`h4`,null,C(T(f)(`settings.ports.development`)),1),A(`span`,null,C(T(f)(`settings.ports.developing`)),1)]),A(`p`,null,C(T(f)(`settings.ports.developmentMeta`)),1)])]),_:1},8,[`title`]),l(B,{id:`conversation-launchers`,class:`settings-card conversation-launcher-card`,title:T(f)(`settings.conversationLaunchers.title`)},{default:n(()=>[A(`div`,Tt,[(o(!0),c(_,null,r(T(Y),e=>(o(),c(`article`,{key:e,class:`conversation-launcher-row`},[A(`div`,Et,[A(`span`,null,[A(`strong`,null,C(ve(e)),1),A(`small`,null,C(T(f)(`settings.conversationLaunchers.sourceId`,{id:e})),1)]),A(`label`,Dt,[A(`span`,null,C(T(f)(`settings.conversationLaunchers.enabled`)),1),u(A(`input`,{"onUpdate:modelValue":t=>b.value.conversationLaunchers[e].enabled=t,type:`checkbox`,role:`switch`},null,8,Ot),[[x,b.value.conversationLaunchers[e].enabled]])])]),b.value.conversationLaunchers[e].enabled&&e===`codex`?(o(),c(`small`,kt,C(T(f)(`settings.conversationLaunchers.idFormatMeta`)),1)):k(``,!0),b.value.conversationLaunchers[e].enabled?(o(),c(`div`,At,[A(`label`,null,[A(`span`,null,C(T(f)(`settings.conversationLaunchers.idFormat`)),1),l(z,{modelValue:b.value.conversationLaunchers[e].idFormat,"onUpdate:modelValue":t=>b.value.conversationLaunchers[e].idFormat=t,class:`launcher-select`,"control-id":`settings-conversation-${e}-id-format`,options:ie.value,label:T(f)(`settings.conversationLaunchers.idFormat`)},null,8,[`modelValue`,`onUpdate:modelValue`,`control-id`,`options`,`label`])]),A(`label`,null,[A(`span`,null,C(T(f)(`settings.conversationLaunchers.appName`)),1),u(A(`input`,{"onUpdate:modelValue":t=>b.value.conversationLaunchers[e].appName=t,type:`text`,maxlength:`64`,required:``},null,8,jt),[[g,b.value.conversationLaunchers[e].appName,void 0,{trim:!0}]])]),A(`label`,Mt,[A(`span`,null,[O(C(T(f)(`settings.conversationLaunchers.urlTemplate`))+` `,1),t[1]||=A(`small`,null,[A(`code`,null,`{id}`)],-1)]),u(A(`input`,{"onUpdate:modelValue":t=>b.value.conversationLaunchers[e].urlTemplate=t,type:`text`,maxlength:`1024`,spellcheck:`false`,required:``},null,8,Nt),[[g,b.value.conversationLaunchers[e].urlTemplate,void 0,{trim:!0}]])])])):k(``,!0)]))),128))])]),_:1},8,[`title`])],8,ct),R.value?(o(),c(`p`,Pt,C(R.value),1)):k(``,!0)],40,st)):k(``,!0),A(`section`,Ft,[A(`header`,It,[A(`div`,null,[A(`h3`,null,C(T(f)(`settings.resources.title`)),1),E.value?(o(),c(`p`,Lt,C(T(f)(`settings.resources.measuredAt`,{time:Ce(E.value.sampledAt)})),1)):k(``,!0)]),A(`button`,{class:`quiet-button`,type:`button`,disabled:L.value,onClick:Q},C(T(f)(`common.actions.refresh`)),9,Rt)]),L.value?(o(),m(F,{key:0,variant:E.value?`inline`:`compact`,label:T(f)(`settings.resources.loading`)},null,8,[`variant`,`label`])):k(``,!0),V.value?(o(),c(`p`,zt,C(V.value),1)):E.value?(o(),c(_,{key:2},[A(`div`,Bt,[A(`article`,null,[A(`span`,null,C(T(f)(`settings.resources.memory`)),1),A(`strong`,null,C($(E.value.memory.usedBytes)),1),A(`small`,null,C(T(f)(`settings.resources.available`,{value:$(E.value.memory.hostFreeBytes)})),1)]),A(`article`,null,[A(`span`,null,C(T(f)(`settings.resources.disk`)),1),A(`strong`,null,C($(E.value.disk.usedBytes)),1),A(`small`,null,C(T(f)(`settings.resources.available`,{value:$(E.value.disk.hostFreeBytes)})),1)])]),l(B,{title:T(f)(`ui.usageDetails`)},{default:n(()=>[A(`div`,Vt,[A(`div`,Ht,[A(`h4`,null,C(T(f)(`settings.resources.memory`)),1),(o(!0),c(_,null,r(E.value.memory.components,e=>(o(),c(`div`,{key:e.id,class:`resource-row`},[A(`div`,null,[A(`span`,null,C(xe(e)),1),A(`strong`,null,C($(e.bytes)),1)]),A(`i`,null,[A(`b`,{style:p({width:Se(e.bytes,se.value)})},null,4)])]))),128))]),A(`div`,Ut,[A(`h4`,null,C(T(f)(`settings.resources.disk`)),1),(o(!0),c(_,null,r(E.value.disk.components,e=>(o(),c(`div`,{key:e.id,class:`resource-row`},[A(`div`,null,[A(`span`,null,C(xe(e)),1),A(`strong`,null,C($(e.bytes)),1)]),A(`i`,null,[A(`b`,{style:p({width:Se(e.bytes,Z.value)})},null,4)])]))),128))])]),A(`div`,Wt,[A(`span`,null,C(T(f)(`settings.resources.diskMeasuredAt`,{time:Ce(E.value.disk.measuredAt)})),1),E.value.status===`partial`?(o(),c(`span`,Gt,C(T(f)(`settings.resources.partial`)),1)):k(``,!0),E.value.disk.temporaryBytes?(o(),c(`span`,Kt,C(T(f)(`settings.resources.temporary`,{value:$(E.value.disk.temporaryBytes)})),1)):k(``,!0),A(`span`,null,C(T(f)(E.value.exclusions.includes(`shared-container-vm-overhead`)?`settings.resources.exclusionsContainer`:`settings.resources.exclusionsNative`)),1)])]),_:1},8,[`title`])],64)):k(``,!0)]),!M.value&&!b.value?(o(),c(`p`,qt,C(R.value||T(f)(`settings.loadError`)),1)):k(``,!0)])],8,nt))}}),[[`__scopeId`,`data-v-36cbe773`]]);export{Jt as default};
@@ -1 +0,0 @@
1
- .agents-directory,.agent-profile-page{min-width:0;color:var(--color-ink,#1d2129)}.agents-directory{width:100%;max-width:var(--page-max);margin-inline:auto}.agents-directory-heading{margin-bottom:var(--space-6,24px)}.agents-directory-count{color:var(--color-muted,#667085);margin:0;font-size:14px}.agent-directory-work-error{justify-content:space-between;align-items:center;gap:var(--space-3,12px);margin:calc(var(--space-6,24px) * -1) 0 var(--space-4,16px);color:var(--color-danger,#b93838);font-size:13px;display:flex}.agent-profile-actions{justify-content:flex-end;align-items:center;gap:var(--space-2,8px);flex-wrap:wrap;flex-shrink:0;display:flex}.agents-directory-filters{margin-bottom:var(--space-6,24px);align-items:stretch}.agents-directory-search{flex:280px;min-width:160px}.agents-directory-search input{box-sizing:border-box;width:100%}.agents-directory-select{flex:0 0 180px}.agents-directory-grid{gap:var(--space-4,16px);grid-template-columns:minmax(0,1fr);margin:0;padding:0;list-style:none;display:grid}.agents-directory-grid>li{min-width:0}.agent-card{box-sizing:border-box;height:100%;transition:border-color var(--motion-fast), box-shadow var(--motion-fast);flex-direction:column;gap:10px;padding:18px;display:flex}.agent-card:hover{border-color:var(--color-border-strong);box-shadow:0 6px 20px #1b1f1d0f}.agent-card-topline,.agent-card-meta,.agent-section-heading,.agent-resume-name-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.agent-card-topline{justify-content:flex-start}.agent-portrait{background:var(--color-accent-soft);width:72px;height:72px;color:var(--color-accent);border-radius:20px;flex:0 0 72px;place-items:center;font-size:34px;line-height:1;display:grid}.agent-portrait.small{border-radius:11px;flex-basis:40px;width:40px;height:40px;font-size:19px}.agent-directory-name{flex:1;align-items:center;gap:8px;min-width:0;font-size:16px;font-weight:650;display:flex}.agent-directory-name a{min-width:0;color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;text-decoration:none;overflow:hidden}.agent-directory-name a:hover{color:var(--color-accent)}.agent-card-role{font-size:11px;font-weight:600}.agent-card-responsibility{color:var(--color-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:2px 0 0;font-size:13px;line-height:1.55;display:-webkit-box;overflow:hidden}.agent-inline-skills,.agent-card-project-list{flex-wrap:wrap;gap:6px;display:flex}.agent-inline-skills>span{overflow-wrap:anywhere;max-width:100%;color:var(--color-muted);font-size:12px;line-height:1.4}.agent-inline-skills>span+span:before{content:"·";color:var(--color-faint);margin-right:6px}.agent-card-meta{border-top:1px solid var(--color-border);margin-top:auto;padding-top:12px}.agent-card-projects{min-width:0}.agent-card-project-list .ui-badge{text-overflow:ellipsis;white-space:nowrap;max-width:130px;overflow:hidden}.agent-card-project-count{color:var(--color-accent);background:var(--color-accent-soft)}.agent-card-no-project{color:var(--color-faint);font-size:12px}.agent-card-status{margin-left:auto}.agent-card-status.is-active,.agent-profile-membership.is-active{color:var(--color-success);background:var(--color-success-soft)}.agent-card-status.is-inactive,.agent-profile-membership.is-inactive{color:var(--color-warning);background:var(--color-warning-soft)}.agent-card-status.is-archived,.agent-profile-membership.is-archived{color:var(--color-muted);background:var(--color-surface-subtle)}.agent-card-work-status{max-width:140px;color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;flex:none;align-items:center;gap:6px;margin-left:auto;font-size:12px;display:inline-flex;overflow:hidden}.agent-card-work-status:before{content:"";background:var(--color-faint);border-radius:50%;flex:none;width:6px;height:6px}.agent-card-work-status.is-running{color:var(--color-accent)}.agent-card-work-status.is-running:before{background:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-soft)}.agent-card-work-status:is(.is-awaiting_review,.is-queued,.is-paused,.is-awaiting_recruitment){color:var(--color-warning)}.agent-card-work-status:is(.is-awaiting_review,.is-queued,.is-paused,.is-awaiting_recruitment):before{background:var(--color-warning)}.agent-card-work-status:is(.is-blocked,.is-unavailable){color:var(--color-danger)}.agent-card-work-status:is(.is-blocked,.is-unavailable):before{background:var(--color-danger)}.agent-directory-open{color:var(--color-muted);white-space:nowrap;flex:none;font-size:12px;font-weight:550;text-decoration:none}.agent-directory-open:hover{color:var(--color-accent)}.agent-profile-empty{box-sizing:border-box;min-height:140px}.agents-directory .sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.agent-profile-page{width:100%;max-width:min(var(--page-max), 1440px);box-sizing:border-box;margin:0 auto}.agent-profile-back{align-items:center;gap:var(--space-2,8px);margin-bottom:var(--space-5,20px);color:var(--color-muted,#667085);font-size:14px;text-decoration:none;display:inline-flex}.agent-profile-back:hover,.agent-profile-footer a,.agent-section-heading>a{color:var(--color-accent,#2563eb)}.agent-resume-header{align-items:start;gap:var(--space-5,20px);padding:var(--space-6,24px);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.agent-resume-intro{min-width:0}.agent-resume-intro h1{overflow-wrap:anywhere;letter-spacing:-.025em;min-width:0;margin:0;font-size:clamp(26px,3vw,36px);line-height:1.15}.agent-resume-name-row{flex-wrap:wrap;justify-content:flex-start;align-items:baseline}.agent-profile-membership{flex:none}.agent-resume-intro>p{max-width:650px;margin:var(--space-3,12px) 0;overflow-wrap:anywhere;color:var(--color-muted,#667085);line-height:1.65}.agent-resume-meta{gap:var(--space-3,12px);color:var(--color-muted,#667085);flex-wrap:wrap;font-size:12px;display:flex}.agent-profile-refresh-status,.agent-profile-partial{margin:var(--space-4,16px) 0 0;color:var(--color-muted,#667085);font-size:13px}.agent-profile-tabs{gap:var(--space-5,20px);margin-top:var(--space-6,24px);border-bottom:1px solid var(--color-border,#e2e5ea);display:flex;overflow-x:auto}.agent-profile-tab{min-height:44px;color:var(--color-muted,#667085);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;flex:none;padding:8px 2px;font-size:13px;position:relative}.agent-profile-tab:hover,.agent-profile-tab[aria-selected=true]{color:var(--color-accent,#2563eb)}.agent-profile-tab[aria-selected=true]{border-bottom-color:var(--color-accent,#2563eb);font-weight:650}.agent-profile-panel{min-width:0;margin-top:var(--space-4,16px)}.agent-profile-panel>.ui-card+.ui-card{margin-top:var(--space-4,16px)}.agent-profile-primary-grid{gap:var(--space-4,16px);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.agent-resume-section{box-sizing:border-box;min-width:0;padding:var(--space-6,24px)}.agent-resume-section h2{letter-spacing:-.01em;margin:0;font-size:18px}.agent-resume-section>h2{margin-bottom:var(--space-4,16px)}.agent-resume-section h3{margin:0 0 var(--space-2,8px);font-size:14px}.agent-resume-section p{margin:var(--space-2,8px) 0;overflow-wrap:anywhere;white-space:pre-line;line-height:1.7}.agent-section-heading{margin-bottom:var(--space-4,16px)}.agent-section-heading>span{color:var(--color-muted,#667085);font-size:12px}.agent-resume-list{margin:0;padding:0;list-style:none}.agent-resume-list li{padding:var(--space-3,12px) 0}.agent-resume-list li+li{border-top:1px solid var(--color-border,#e2e5ea)}.agent-project-link{color:var(--color-accent,#2563eb);text-decoration:none}.agent-project-link:hover{text-decoration:underline}.agent-project-overflow{margin-top:var(--space-3,12px)}.agent-project-overflow summary{color:var(--color-accent,#2563eb);cursor:pointer;font-size:13px}.agent-current-work-list{gap:var(--space-2,8px);margin:0;padding:0;list-style:none;display:grid}.agent-current-work-list li{justify-content:space-between;align-items:center;gap:var(--space-3,12px);min-width:0;padding:var(--space-3,12px);border:1px solid var(--color-border,#e2e5ea);border-radius:var(--radius-control,10px);display:flex}.agent-current-work-list .ui-badge,.agent-work-timeline .agent-section-heading>span{white-space:nowrap;flex:none}.agent-current-work-list a{overflow-wrap:anywhere;min-width:0;color:var(--color-accent,#2563eb);font-weight:600;text-decoration:none}.agent-muted,.agent-org-lead-unavailable,.agent-work-timeline small,.agent-collaborators span{color:var(--color-muted,#667085)}.agent-character{gap:var(--space-5,20px);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.agent-character p{font-size:14px}.agent-strengths{margin-top:var(--space-5,20px)}.agent-strengths h3{margin-bottom:var(--space-3,12px)}.agent-expectation{padding:var(--space-4,16px);border-radius:var(--radius-control,10px);color:var(--color-ink,#1d2129);background:var(--color-accent-soft,#edf3ff)}.agent-expectation strong{margin-bottom:var(--space-2,8px);font-size:13px;display:block}.agent-organization{padding:var(--space-4,16px) 0}.agent-org-lead,.agent-org-members{gap:var(--space-4,16px);padding:var(--space-2,8px) 0;display:flex}.agent-org-lead>span,.agent-org-members>span{min-width:70px;color:var(--color-muted,#667085);font-size:12px}.agent-org-members{margin-left:var(--space-3,12px);padding-left:var(--space-4,16px);border-left:2px solid var(--color-border,#e2e5ea)}.agent-org-members ul{gap:var(--space-3,12px);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.agent-work-timeline{margin:var(--space-5,20px) 0 0 var(--space-2,8px);padding:0 0 0 var(--space-6,24px);border-left:1px solid var(--color-border-strong,#c5cbd5);list-style:none}.agent-work-timeline>li{margin:0 0 var(--space-6,24px);position:relative}.agent-work-timeline>li:before{background:var(--color-accent,#2563eb);content:"";border-radius:50%;width:8px;height:8px;position:absolute;top:5px;left:-29px}.agent-work-timeline .agent-section-heading{margin-bottom:var(--space-2,8px)}.agent-work-timeline a{color:var(--color-accent,#2563eb);font-weight:600;text-decoration:none}.agent-work-timeline p{font-size:14px}.agent-work-timeline small{font-size:12px}.agent-collaborators{gap:var(--space-5,20px) var(--space-8,32px);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.agent-collaborators li{gap:var(--space-2,8px);flex-direction:column;min-width:120px;display:flex}.agent-profile-management-links{gap:var(--space-2,8px);margin-top:var(--space-5,20px);flex-wrap:wrap;display:flex}.agent-profile-footer{gap:var(--space-5,20px);margin-top:var(--space-5,20px);padding:var(--space-5,20px) 0;border-top:1px solid var(--color-border,#e2e5ea);flex-wrap:wrap;font-size:13px;display:flex}.agent-simple-settings{box-sizing:border-box;margin-top:var(--space-4,16px);padding:var(--space-6,24px);border:1px solid var(--color-border,#e2e5ea);border-radius:var(--radius-card,16px);background:var(--color-surface,#fff)}.agent-simple-settings h3{margin:0 0 var(--space-5,20px)}.agent-simple-settings label,.agent-simple-settings .agent-platform-field{gap:var(--space-2,8px);margin-bottom:var(--space-5,20px);color:var(--color-ink,#1d2129);flex-direction:column;font-size:14px;display:flex}.agent-simple-settings small{color:var(--color-muted,#667085);font-size:12px}.agent-simple-settings details{margin:var(--space-5,20px) 0}.agent-simple-settings summary{margin-bottom:var(--space-4,16px);color:var(--color-ink,#1d2129);cursor:pointer;font-size:13px}.agent-simple-settings textarea{min-height:70px}.agent-simple-settings button:disabled{cursor:wait}.agent-locked-platforms p{color:var(--color-ink,#1d2129)}@media (width>=640px){.agents-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=900px){.agents-directory-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=760px){.agents-directory-heading{align-items:flex-start}.agents-directory-heading .agent-profile-actions{gap:var(--space-2,8px)}.agents-directory-filters{align-items:stretch}.agents-directory-search{flex-basis:100%}.agents-directory-filters>select{flex:1;min-width:0}.agent-resume-header{grid-template-columns:auto minmax(0,1fr)}.agent-resume-header .agent-profile-actions{grid-column:1/-1;justify-content:flex-start}.agent-profile-primary-grid,.agent-character{grid-template-columns:1fr}.agent-profile-tabs{gap:var(--space-4,16px)}}@media (width<=480px){.agent-resume-header,.agent-resume-section,.agent-simple-settings{padding:var(--space-4,16px)}.agent-resume-header{grid-template-columns:1fr}.agent-resume-header .agent-profile-actions{grid-column:auto}.agent-portrait{border-radius:16px;flex-basis:56px;width:56px;height:56px;font-size:28px}.agent-current-work-list li{flex-direction:column;align-items:flex-start}}
@@ -1 +0,0 @@
1
- .brand-block[data-v-68727ec7]{isolation:isolate;width:100%;color:inherit;text-align:left;-webkit-tap-highlight-color:transparent;align-items:center;gap:11px;padding:0 8px 22px;display:flex;position:relative}.brand-block[data-v-68727ec7]:before{content:"";z-index:-1;opacity:0;pointer-events:none;background:radial-gradient(circle,#f4c97033,#f4c97000 68%);border-radius:50%;width:58px;height:58px;position:absolute;top:-8px;left:0}.brand-effect-button[data-v-68727ec7]{appearance:none;color:inherit;cursor:pointer;background:0 0;border:0;flex:none;padding:0;display:block}.brand-effect-button[data-v-68727ec7]:focus{outline:none}.brand-block.is-keyboard-focused .brand-mark-wrap[data-v-68727ec7]{box-shadow:0 0 0 2px var(--color-accent);border-radius:50%}.brand-mark-wrap[data-v-68727ec7]{flex:none;width:38px;height:38px;position:relative}.brand-mark[data-v-68727ec7]{object-fit:contain;width:38px;height:38px;display:block}.brand-orbit[data-v-68727ec7]{z-index:3;opacity:0;pointer-events:none;border-radius:50%;animation:.94s cubic-bezier(.2,.7,.22,1) both brand-orbit-travel-68727ec7;position:absolute;inset:-8px}.brand-orbit[data-v-68727ec7]:before{content:"";border-radius:inherit;background:conic-gradient(from 20deg, transparent 0 74%, #e6b14a00 79%, #e6b14a3d 87%, #fff4d3c7 96%, transparent 100%);-webkit-mask:radial-gradient(farthest-side, transparent calc(100% - 2px), var(--color-ink) calc(100% - 1.5px));-webkit-mask:radial-gradient(farthest-side, transparent calc(100% - 2px), var(--color-ink) calc(100% - 1.5px));mask:radial-gradient(farthest-side, transparent calc(100% - 2px), var(--color-ink) calc(100% - 1.5px));position:absolute;inset:0}.brand-orbit[data-v-68727ec7]:after{content:"";background:radial-gradient(circle at 34% 30%, var(--color-surface) 0 14%, var(--color-warning-soft) 30%, var(--color-warning) 58%, #e8b65300 74%);border-radius:50%;width:6px;height:6px;position:absolute;top:-2px;left:50%;transform:translate(-50%);box-shadow:0 0 6px #f4c668c7,0 0 14px #f4c66852}.brand-copy[data-v-68727ec7]{min-width:0;display:grid;position:relative}.brand-title-row[data-v-68727ec7]{align-items:baseline;gap:7px;display:flex}.brand-name[data-v-68727ec7]{letter-spacing:-.02em;font-size:18px;font-weight:700}.brand-version[data-v-68727ec7]{color:var(--color-muted);letter-spacing:.02em;white-space:nowrap;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;font-weight:600}.brand-version-button[data-v-68727ec7]{appearance:none;cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:center;gap:4px;margin:-2px -1px;padding:2px 1px;display:inline-flex}.brand-version-button:hover .brand-version[data-v-68727ec7]{color:var(--color-ink)}.brand-version-button[data-v-68727ec7]:focus-visible{box-shadow:0 0 0 2px var(--color-accent);outline:none}.brand-update-dot[data-v-68727ec7]{background:var(--color-danger);border-radius:50%;flex:none;width:5px;height:5px;box-shadow:0 1px 4px #bd1e1e47}.brand-subtitle[data-v-68727ec7]{color:var(--color-muted);margin-top:2px;font-size:12px}.brand-copy-reflection[data-v-68727ec7]{z-index:3;opacity:0;pointer-events:none;clip-path:polygon(-26% -20%,-8% -20%,-18% 120%,-36% 120%);will-change:clip-path, opacity;height:22px;animation:.62s cubic-bezier(.22,.66,.25,1) .62s both brand-copy-reflection-68727ec7;position:absolute;top:0;left:0;right:0}.brand-copy-reflection .brand-name[data-v-68727ec7],.brand-copy-reflection .brand-version[data-v-68727ec7]{color:var(--color-warning);text-shadow:0 0 6px #efbe5d47}.brand-update-popover[data-v-68727ec7]{z-index:20;color:var(--color-ink);background:var(--color-surface);border-radius:12px;padding:12px;position:absolute;top:45px;left:49px;right:8px;box-shadow:0 10px 28px #23302729}.brand-update-popover strong[data-v-68727ec7]{font-size:12px;line-height:1.45;display:block}.brand-update-popover p[data-v-68727ec7]{color:var(--color-muted);margin:5px 0 9px;font-size:12px;line-height:1.5}.brand-update-popover code[data-v-68727ec7]{border-radius:var(--radius-control);color:var(--color-ink);background:var(--color-surface-subtle);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;padding:7px 8px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;line-height:1.45;display:block}.brand-update-popover a[data-v-68727ec7]{color:var(--color-ink);text-underline-offset:2px;margin-top:9px;font-size:12px;font-weight:650;text-decoration-thickness:1px;display:inline-block}.brand-update-popover a[data-v-68727ec7]:hover{color:var(--color-ink)}.brand-update-popover a[data-v-68727ec7]:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:2px}.brand-block.is-sparkling[data-v-68727ec7]:before{animation:1.05s ease-out both brand-halo-68727ec7}@keyframes brand-orbit-travel-68727ec7{0%{opacity:0;transform:rotate(-132deg)scale(.94)}18%{opacity:0}32%{opacity:1}72%{opacity:.9}to{opacity:0;transform:rotate(80deg)scale(1.01)}}@keyframes brand-copy-reflection-68727ec7{0%{opacity:0;clip-path:polygon(-26% -20%,-8% -20%,-18% 120%,-36% 120%)}14%{opacity:.86}78%{opacity:.68}to{opacity:0;clip-path:polygon(132% -20%,150% -20%,140% 120%,122% 120%)}}@keyframes brand-halo-68727ec7{0%{opacity:0;transform:scale(.72)}34%{opacity:1}to{opacity:0;transform:scale(1.12)}}@media (prefers-reduced-motion:reduce){.brand-orbit[data-v-68727ec7]{display:none}.brand-block.is-sparkling[data-v-68727ec7]:before{animation:.28s ease-out both brand-reduced-halo-68727ec7}.brand-copy-reflection[data-v-68727ec7]{clip-path:inset(0);animation:.28s ease-out both brand-reduced-glint-68727ec7}@keyframes brand-reduced-halo-68727ec7{0%,to{opacity:0}45%{opacity:.72}}@keyframes brand-reduced-glint-68727ec7{0%,to{opacity:0}45%{opacity:.58}}}.navigation-recovery[data-v-d154c242]{background:var(--color-warning-soft);color:var(--color-warning);border-radius:10px;flex:none;align-items:center;gap:16px;margin:12px 24px;padding:16px;font-size:13px;display:flex}.navigation-recovery>div[data-v-d154c242]{flex:1;min-width:0}.navigation-recovery strong[data-v-d154c242]{font-weight:650}.navigation-recovery p[data-v-d154c242]{margin:4px 0 0;line-height:1.6}.navigation-recovery a[data-v-d154c242]{flex-shrink:0;text-decoration:none}.navigation-recovery-dismiss[data-v-d154c242]{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:8px}.navigation-recovery[data-v-d154c242] :is(a,button):focus-visible{outline:2px solid var(--color-warning);outline-offset:3px}@media (width<=640px){.navigation-recovery[data-v-d154c242]{flex-wrap:wrap;gap:10px;margin:10px 12px}.navigation-recovery>div[data-v-d154c242]{flex-basis:100%}}.attention-reply[data-v-6b64bc2c]{gap:20px;min-width:0;display:grid}.attention-question h3[data-v-6b64bc2c]{letter-spacing:-.025em;margin:0 0 12px;font-size:22px;line-height:1.4}.attention-question p[data-v-6b64bc2c],.attention-context[data-v-6b64bc2c]{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:14px;line-height:1.75}.attention-context[data-v-6b64bc2c]{color:var(--color-muted)}.attention-reply .ui-disclosure[data-v-6b64bc2c]{border-bottom:1px solid var(--color-border);padding-block:12px}.attention-choices[data-v-6b64bc2c]{border:0;gap:8px;min-width:0;margin:0;padding:0;display:grid}.attention-choices legend[data-v-6b64bc2c]{padding:0 0 10px;font-size:13px;font-weight:600}.attention-choice[data-v-6b64bc2c]{border:1px solid var(--color-border);border-radius:var(--radius-control);cursor:pointer;overflow-wrap:anywhere;align-items:flex-start;gap:10px;padding:12px 14px;font-size:14px;line-height:1.5;display:flex}.attention-choice[data-v-6b64bc2c]:hover{background:var(--color-surface-hover)}.attention-choice.is-selected[data-v-6b64bc2c]{border-color:var(--color-accent);background:var(--color-accent-soft)}.attention-choice input[data-v-6b64bc2c]{flex:none;width:16px;height:16px;margin:3px 0 0}.attention-input[data-v-6b64bc2c]{gap:8px;display:grid}.attention-input label[data-v-6b64bc2c]{color:var(--color-muted);font-size:13px}.attention-input textarea[data-v-6b64bc2c]{box-sizing:border-box;width:100%}.attention-submit[data-v-6b64bc2c]{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:16px;padding-top:16px;display:flex}.attention-submit p[data-v-6b64bc2c]{max-width:270px;color:var(--color-muted);margin:0;font-size:12px;line-height:1.6}.attention-submit button[data-v-6b64bc2c]{flex:none}.attention-response-error[data-v-6b64bc2c]{overflow-wrap:anywhere;margin:0;font-size:13px}@media (width<=640px){.attention-question h3[data-v-6b64bc2c]{font-size:19px}.attention-input textarea[data-v-6b64bc2c]{font-size:16px}.attention-submit[data-v-6b64bc2c]{flex-direction:column;align-items:stretch;gap:12px}.attention-submit p[data-v-6b64bc2c]{max-width:none}}.attention-nav-status{justify-self:end;align-items:center;gap:6px;display:inline-flex}.attention-dialog[open]:has(.attention-workspace){height:min(780px,100dvh - 40px)}.attention-dialog:not(:has(.attention-workspace)){width:min(560px,100vw - 32px)}.attention-dialog .ui-dialog__shell{height:100%}.attention-dialog .ui-dialog__header{border-bottom:1px solid var(--color-border);padding-bottom:16px}.attention-dialog .ui-dialog__body{flex:auto;gap:0;padding:0;overflow:hidden}.attention-workspace{flex:auto;grid-template-columns:280px minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.attention-queue{background:var(--color-surface-subtle);border-right:1px solid var(--color-border);overscroll-behavior:contain;min-width:0;padding:12px;overflow-y:auto}.attention-queue-toolbar{color:var(--color-muted);justify-content:space-between;align-items:center;gap:8px;padding:0 4px 8px;font-size:12px;display:flex}.attention-queue-toolbar>span{overflow-wrap:anywhere;min-width:0}.attention-request-list{gap:6px;display:grid}.attention-request{text-align:left;border-radius:var(--radius-control);width:100%;min-width:0;color:var(--color-ink);cursor:pointer;background:0 0;border:1px solid #0000;gap:7px;padding:14px 12px;display:grid}.attention-request:hover{background:var(--color-surface-hover)}.attention-request.is-selected{border-color:var(--color-border);background:var(--color-surface);box-shadow:inset 3px 0 var(--color-accent)}.attention-request-meta{color:var(--color-muted);justify-content:space-between;align-items:center;gap:8px;font-size:11px;display:flex}.attention-request-meta>span{flex-shrink:0}.attention-request strong{overflow-wrap:anywhere;font-size:13px;font-weight:550;line-height:1.5}.attention-request-project{color:var(--color-muted);overflow-wrap:anywhere;font-size:11px}.attention-more{width:100%;margin-top:12px}.attention-detail{overscroll-behavior:contain;min-width:0;padding:24px 28px;overflow-y:auto}.attention-detail-meta{color:var(--color-muted);overflow-wrap:anywhere;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:20px;font-size:12px;display:flex}.attention-task-link{color:var(--color-accent);text-underline-offset:4px;margin-top:16px;font-size:13px;display:inline-block}.attention-queue .attention-mobile-picker{margin-bottom:8px;display:none}.attention-error{color:var(--color-danger);background:var(--color-danger-soft);flex:none;justify-content:space-between;align-items:center;gap:12px;padding:12px 24px;font-size:13px;display:flex}.attention-empty{text-align:center;color:var(--color-muted);flex:1;align-content:center;justify-items:center;gap:16px;padding:72px 24px;display:grid}.attention-empty>span{background:var(--color-success-soft);width:48px;height:48px;color:var(--color-success);border-radius:50%;place-items:center;font-size:24px;display:grid}.attention-empty p{margin:0;font-size:14px}@media (width<=640px){.attention-dialog[open]{width:calc(100vw - 16px)}.attention-dialog[open]:has(.attention-workspace){height:calc(100dvh - 16px)}.attention-workspace{flex-direction:column;flex:auto;height:auto;display:flex;overflow:hidden}.attention-queue{border-right:0;border-bottom:1px solid var(--color-border);flex:none;max-height:185px;padding:8px 16px 12px}.attention-queue-toolbar{padding:0}.attention-queue .attention-mobile-picker{display:grid}.attention-request-list{display:none}.attention-detail{padding:20px 16px}.attention-detail-meta{margin-bottom:16px}}.pinned-agents-nav[data-v-45d6ccab]{border-top:1px solid var(--color-border);gap:4px;margin:14px 0 6px;padding-top:10px;display:grid}.pinned-agents-heading[data-v-45d6ccab]{color:var(--color-faint);letter-spacing:.02em;margin:0 10px 2px;font-size:11px;font-weight:600}.pinned-agents-heading-row[data-v-45d6ccab]{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.pinned-agents-heading-row[data-v-45d6ccab] .growth-loading__label{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.pinned-agents-list[data-v-45d6ccab]{gap:2px;margin:0;padding:0;list-style:none;display:grid}.pinned-agent-nav[data-v-45d6ccab]{border-radius:var(--radius-control);min-width:0;min-height:34px;color:var(--color-ink-soft);transition:background-color var(--motion-fast), color var(--motion-fast);align-items:center;gap:9px;padding:5px 10px;text-decoration:none;display:flex}.pinned-agent-nav[data-v-45d6ccab]:hover,.pinned-agent-nav.router-link-active[data-v-45d6ccab]{color:var(--color-ink);background:#1b1f1d0d}.pinned-agent-portrait[data-v-45d6ccab]{width:24px;height:24px;color:var(--color-accent);background:var(--color-accent-soft);border-radius:7px;flex:0 0 24px;place-items:center;font-size:12px;line-height:1;display:grid}.pinned-agent-name[data-v-45d6ccab]{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;overflow:hidden}.pinned-agents-error[data-v-45d6ccab]{color:var(--color-danger);gap:6px;margin:0 10px;font-size:12px;display:grid}.pinned-agents-error .quiet-button[data-v-45d6ccab]{min-height:var(--control-height-sm);justify-self:start;padding:4px 9px;font-size:12px}.pinned-agents-nav[data-v-45d6ccab] .growth-loading__label{font-size:12px}.topbar--workbench[data-v-2ba97143]{display:none}.workbench-host-label[data-v-2ba97143]{color:var(--color-muted);font-size:12px;font-weight:600}.mobile-nav-close-icon[data-v-2ba97143]{width:16px;height:16px;display:block;position:relative}.mobile-nav-close-icon[data-v-2ba97143]:before,.mobile-nav-close-icon[data-v-2ba97143]:after{content:"";border-top:1.5px solid;width:14px;position:absolute;top:7px;left:1px}.mobile-nav-close-icon[data-v-2ba97143]:before{transform:rotate(45deg)}.mobile-nav-close-icon[data-v-2ba97143]:after{transform:rotate(-45deg)}@media (width<=920px){.topbar--workbench[data-v-2ba97143]{background:var(--color-surface);border:0;justify-content:flex-start;gap:12px;min-height:44px;padding:7px 16px;display:flex}}:root{--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-bg:#f6f5f1;--color-surface:#fffefb;--color-surface-subtle:#f0eee8;--color-surface-hover:#f3f1ec;--color-sidebar:#f1efe9;--color-ink:#1b1f1d;--color-ink-soft:#3a403c;--color-muted:#66706a;--color-faint:#959c97;--color-border:#e5e2da;--color-border-strong:#d2cec4;--color-control-border:#c9c5ba;--color-accent:#0f6b55;--color-accent-hover:#0b5a47;--color-accent-soft:#e5f0eb;--color-accent-line:#9cc7b6;--color-success:#2f7a52;--color-success-soft:#e8f2ec;--color-warning:#8a5a12;--color-warning-soft:#f8f0e0;--color-danger:#a8392e;--color-danger-soft:#f8e9e6;--color-on-accent:#fff;--color-chart-blue:#2f5f8a;--color-chart-teal:#0f6b55;--color-chart-violet:#6b4f8f;--color-chart-amber:#a8691c;--color-chart-rose:#a3445f;--color-chart-cyan:#23707f;--color-chart-slate:#66706a;--color-overlay:#181c1a52;--radius-control:8px;--radius-card:12px;--radius-dialog:16px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--control-height:36px;--control-height-sm:30px;--shadow-popover:0 1px 2px #1b1f1d0f, 0 12px 32px #1b1f1d1a;--shadow-dialog:0 2px 6px #1b1f1d0f, 0 24px 64px #1b1f1d29;--motion-fast:.14s;--motion-ease:cubic-bezier(.2, .8, .2, 1);--font-ui:"PingFang SC", "Hiragino Sans GB", -apple-system, BlinkMacSystemFont, "Segoe UI", "Microsoft YaHei", sans-serif;--font-mono:ui-monospace, "SF Mono", "Cascadia Code", Menlo, Consolas, monospace;--text-title:22px;--text-section:15px;--text-body:14px;--text-meta:12px;--page-max:1680px;--measure:72ch;--page-gutter:clamp(20px, 2.4vw, 56px);--inspector-width:clamp(320px, 24vw, 460px);font-family:var(--font-ui);color:var(--color-ink);background:var(--color-bg);font-synthesis:none;-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:14px;line-height:1.55}*{box-sizing:border-box}[hidden]{display:none!important}html,body,#app{height:100%}html,body{overflow:hidden}body{min-width:320px;margin:0}button{cursor:pointer}h1,h2,h3,p{margin:0}h1{font-size:var(--text-title);letter-spacing:-.02em;font-weight:650;line-height:1.25}h2{letter-spacing:-.01em;font-size:17px;font-weight:620;line-height:1.35}h3{font-size:var(--text-section);font-weight:600;line-height:1.4}a{color:var(--color-accent)}.app-shell{grid-template-columns:216px minmax(0,1fr);height:100dvh;display:grid;overflow:hidden}.sidebar{background:var(--color-sidebar);border-right:1px solid var(--color-border);flex-direction:column;height:100dvh;min-height:0;padding:22px 12px 14px;display:flex;position:sticky;top:0;overflow:hidden}.sidebar>.brand-block,.sidebar-foot{flex:none}.primary-nav{overscroll-behavior:contain;flex:auto;align-content:start;gap:2px;min-height:0;padding:8px 0 20px;display:grid;overflow:hidden auto}.nav-section-label{color:var(--color-faint);letter-spacing:.08em;text-transform:uppercase;margin:22px 10px 6px;font-size:11px;font-weight:600}.primary-nav>.nav-section-label:first-child{margin-top:4px}.primary-nav>a,.primary-nav>button{border-radius:var(--radius-control);width:100%;min-height:36px;color:var(--color-ink-soft);text-align:left;transition:background-color var(--motion-fast), color var(--motion-fast);background:0 0;border:0;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:10px;padding:7px 10px;font-size:14px;line-height:1.4;text-decoration:none;display:grid;position:relative}.primary-nav>a .nav-icon,.primary-nav>button .nav-icon{color:var(--color-muted)}.primary-nav>a:hover,.primary-nav>button:hover{color:var(--color-ink);background:#1b1f1d0d}.primary-nav>a.is-active,.primary-nav>button[aria-pressed=true]{color:var(--color-ink);background:var(--color-surface);box-shadow:0 1px 2px #1b1f1d0f, inset 0 0 0 1px var(--color-border);font-weight:600}.primary-nav>a.is-active .nav-icon,.primary-nav>button[aria-pressed=true] .nav-icon{color:var(--color-accent)}.nav-icon{width:18px;height:18px;-webkit-mask:var(--icon) center / contain no-repeat;-webkit-mask:var(--icon) center / contain no-repeat;mask:var(--icon) center / contain no-repeat;background:currentColor;display:inline-block}.nav-icon-overview{--icon:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23000'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3crect%20x='3.5'%20y='3.5'%20width='7'%20height='7'%20rx='1.8'/%3e%3crect%20x='13.5'%20y='3.5'%20width='7'%20height='7'%20rx='1.8'/%3e%3crect%20x='3.5'%20y='13.5'%20width='7'%20height='7'%20rx='1.8'/%3e%3crect%20x='13.5'%20y='13.5'%20width='7'%20height='7'%20rx='1.8'/%3e%3c/svg%3e")}.nav-icon-personal-profile{--icon:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23000'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M12%203.5l1.9%205.1%205.1%201.9-5.1%201.9L12%2017.5l-1.9-5.1L5%2010.5l5.1-1.9z'/%3e%3cpath%20d='M18.5%2015.5l.8%202%202%20.8-2%20.8-.8%202-.8-2-2-.8%202-.8z'/%3e%3c/svg%3e")}.nav-icon-knowledge-organizer{--icon:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23000'%20stroke-width='1.6'%20stroke-linecap='round'%3e%3cpath%20d='M4%206h10M18%206h2M4%2012h4M12%2012h8M4%2018h12M20%2018h0'/%3e%3ccircle%20cx='16'%20cy='6'%20r='2'/%3e%3ccircle%20cx='10'%20cy='12'%20r='2'/%3e%3ccircle%20cx='18'%20cy='18'%20r='2'/%3e%3c/svg%3e")}.nav-icon-roundtable{--icon:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23000'%20stroke-width='1.6'%20stroke-linecap='round'%3e%3ccircle%20cx='12'%20cy='12'%20r='4.5'/%3e%3ccircle%20cx='12'%20cy='3.5'%20r='1.6'/%3e%3ccircle%20cx='12'%20cy='20.5'%20r='1.6'/%3e%3ccircle%20cx='3.5'%20cy='12'%20r='1.6'/%3e%3ccircle%20cx='20.5'%20cy='12'%20r='1.6'/%3e%3c/svg%3e")}.nav-icon-personal-project{--icon:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23000'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M3.5%207.5a2%202%200%200%201%202-2h4l2%202.2h7a2%202%200%200%201%202%202v8.8a2%202%200%200%201-2%202h-13a2%202%200%200%201-2-2z'/%3e%3c/svg%3e")}.nav-icon-project-agent{--icon:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23000'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3ccircle%20cx='9'%20cy='8'%20r='3.5'/%3e%3cpath%20d='M2.8%2020c.8-3.4%203.3-5.5%206.2-5.5s5.4%202.1%206.2%205.5'/%3e%3ccircle%20cx='17.5'%20cy='9'%20r='2.6'/%3e%3cpath%20d='M16.5%2014.6c2.4.1%204.2%201.9%204.8%204.6'/%3e%3c/svg%3e")}.nav-icon-public-project{--icon:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23000'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3ccircle%20cx='12'%20cy='12'%20r='8.5'/%3e%3cpath%20d='M3.5%2012h17M12%203.5c2.4%202.3%203.6%205.1%203.6%208.5s-1.2%206.2-3.6%208.5c-2.4-2.3-3.6-5.1-3.6-8.5s1.2-6.2%203.6-8.5z'/%3e%3c/svg%3e")}.nav-icon-knowledge-graph{--icon:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23000'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3ccircle%20cx='6'%20cy='7'%20r='2.5'/%3e%3ccircle%20cx='18'%20cy='6'%20r='2.5'/%3e%3ccircle%20cx='12'%20cy='17.5'%20r='2.5'/%3e%3cpath%20d='M8.4%207.6l7.2-1.2M7.3%209.2l3.5%206M16.9%208.3l-3.6%207'/%3e%3c/svg%3e")}.nav-icon-about{--icon:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23000'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3ccircle%20cx='12'%20cy='12'%20r='8.5'/%3e%3cpath%20d='M12%2011v5.5M12%207.6v.1'/%3e%3c/svg%3e")}.nav-icon-settings{--icon:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23000'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3ccircle%20cx='12'%20cy='12'%20r='3'/%3e%3cpath%20d='M19.2%2013.6l1.3%201-2%203.4-1.6-.6a7.4%207.4%200%200%201-2.4%201.4l-.3%201.7h-4l-.3-1.7a7.4%207.4%200%200%201-2.4-1.4l-1.6.6-2-3.4%201.3-1a7.6%207.6%200%200%201%200-2.8l-1.3-1%202-3.4%201.6.6a7.4%207.4%200%200%201%202.4-1.4l.3-1.7h4l.3%201.7a7.4%207.4%200%200%201%202.4%201.4l1.6-.6%202%203.4-1.3%201a7.6%207.6%200%200%201%200%202.8z'/%3e%3c/svg%3e")}.nav-icon-review{--icon:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23000'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3ccircle%20cx='12'%20cy='12'%20r='8.5'/%3e%3cpath%20d='m8.3%2012.2%202.5%202.5%205-5.2'/%3e%3c/svg%3e")}.nav-icon-connections{--icon:url("data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23000'%20stroke-width='1.6'%20stroke-linecap='round'%20stroke-linejoin='round'%3e%3cpath%20d='M10%2014l4-4'/%3e%3cpath%20d='M8.5%2011.5l-2.3%202.3a3.5%203.5%200%200%200%205%205l2.3-2.3'/%3e%3cpath%20d='M15.5%2012.5l2.3-2.3a3.5%203.5%200%200%200-5-5l-2.3%202.3'/%3e%3c/svg%3e")}.sidebar-foot{border-top:1px solid var(--color-border);margin-top:auto;padding:16px 8px 0}.service-runtime-list{gap:12px;display:grid}.runtime-status{align-items:center;gap:8px;min-width:0;font-size:12px;display:flex}.runtime-status strong{font-size:12px;font-weight:500;display:block}.runtime-status small{color:var(--color-muted);margin-top:2px;font-size:12px;display:block}.service-details{margin-top:8px}.service-details>summary{color:var(--color-muted);cursor:pointer;align-items:center;gap:8px;font-size:12px;list-style:none;display:flex}.service-details>summary::-webkit-details-marker{display:none}.service-details[open] .runtime-status{margin-top:10px}.status-dot{background:var(--color-muted);border-radius:50%;flex:none;width:6px;height:6px}.status-dot.ready{background:var(--color-success)}.status-dot.error{background:var(--color-danger)}.status-dot.loading{background:var(--color-accent)}.workspace{flex-direction:column;min-width:0;height:100dvh;min-height:0;display:flex;overflow:hidden}.topbar{min-height:68px;padding:20px var(--page-gutter) 12px;background:var(--color-bg);flex:none;justify-content:space-between;align-items:center;gap:24px;display:flex}.topbar-heading{min-width:0}.topbar-heading h1{font-size:var(--text-title)}.topbar-actions{flex:none;align-items:center;gap:12px;display:flex}.feedback{border:1px solid var(--color-border);background:var(--color-danger-soft);color:var(--color-danger);border-radius:var(--radius-control);margin:8px 28px 0;padding:12px 16px;font-size:14px}.feedback.success{background:var(--color-success-soft);color:var(--color-success)}.view{min-width:0;min-height:0;padding:12px var(--page-gutter) 40px;flex:1;overflow:auto}.view[data-view-panel=personal-profile]{flex-direction:column;display:flex;overflow:hidden}.section-toolbar{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.section-toolbar p{color:var(--color-muted);font-size:14px;line-height:1.5}.section-title{margin-bottom:16px}.space-heading{grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:15px;padding:0 0 18px;display:grid}.space-heading-icon{background-color:var(--color-surface);width:42px;height:42px;color:var(--color-ink);border:1px solid var(--color-border);border-radius:10px;place-items:center;display:grid}.space-heading-icon .nav-icon{width:21px;height:21px}.public-space-heading .space-heading-icon{color:var(--color-muted);border-color:var(--color-border);background-color:var(--color-surface)}.space-heading p{color:var(--color-muted);font-size:13px;line-height:1.55}.public-space-stats{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);align-items:stretch;display:flex}.public-space-stats span{min-width:76px;color:var(--color-muted);text-align:center;padding:9px 12px;font-size:12px}.public-space-stats span+span{border-left:1px solid var(--color-border)}.public-space-stats strong{color:var(--color-ink);font-size:18px;line-height:1.15;display:block}.personal-profile-summary{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:18px;display:flex}.personal-profile-summary>button{border:1px solid var(--color-border);min-height:32px;color:var(--color-ink-soft);background:var(--color-surface);cursor:pointer;transition:background-color var(--motion-fast), border-color var(--motion-fast), color var(--motion-fast);border-radius:999px;align-items:baseline;gap:8px;padding:5px 12px;font-size:13px;display:inline-flex}.personal-profile-summary>button strong{color:var(--color-ink);font-variant-numeric:tabular-nums;font-size:14px;font-weight:650}.personal-profile-summary>button:hover{border-color:var(--color-border-strong)}.personal-profile-summary>button[aria-pressed=true]{border-color:var(--color-accent-line);color:var(--color-accent);background:var(--color-accent-soft)}.personal-profile-summary>button[aria-pressed=true] strong{color:var(--color-accent)}.personal-profile-summary>button.state-conflict:not([aria-pressed=true]) strong:not(:empty){color:var(--color-ink)}.personal-profile-toolbar{justify-content:space-between;align-items:center;gap:16px;min-height:46px;display:flex}.personal-profile-toolbar-actions{align-items:center;gap:10px;display:flex}.personal-profile-filter-groups{align-items:center;gap:10px;min-width:0;display:flex}.personal-profile-scope-filter{width:min(240px,28vw)}.personal-profile-layout{border:1px solid var(--color-border-strong);border-radius:var(--radius-control);background:var(--color-surface);isolation:isolate;flex:1;grid-template-columns:minmax(0,1fr) 340px;align-items:stretch;min-height:0;display:grid;overflow:hidden}.personal-profile-directory{min-width:0;min-height:0}.personal-profile-table-head,.personal-profile-row{grid-template-columns:88px minmax(240px,1.35fr) minmax(170px,.8fr) 130px;align-items:center;gap:13px;display:grid}.personal-profile-table-head{border-bottom:1px solid var(--color-border);color:var(--color-muted);background:var(--color-surface-subtle);padding:10px 15px;font-size:12px;font-weight:680}.personal-profile-row{border:0;border-bottom:1px solid var(--color-border);width:100%;height:100%;color:var(--color-ink);background:var(--color-surface);text-align:left;padding:12px 15px}.personal-profile-row:hover{background:var(--color-surface)}.personal-profile-row.selected{background:var(--color-surface-subtle);box-shadow:inset 0 0 0 1px var(--color-muted)}.profile-aspect-mark{border-radius:999px;width:fit-content;padding:4px 8px;font-size:12px;font-weight:680}.profile-aspect-mark.taste{color:var(--color-ink);background:var(--color-warning-soft)}.profile-aspect-mark.personality{color:var(--color-muted);background:var(--color-surface-subtle)}.profile-aspect-mark.judgment_preference{color:var(--color-ink);background:var(--color-surface-subtle)}.personal-profile-copy,.personal-profile-origin{gap:4px;min-width:0;display:grid}.personal-profile-copy strong,.personal-profile-origin strong{color:var(--color-ink);font-size:12px}.personal-profile-origin strong.has-conflict{color:var(--color-ink)}.personal-profile-copy small,.personal-profile-origin small,.personal-profile-row time{color:var(--color-muted);font-size:12px;line-height:1.45}.personal-profile-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.personal-profile-inspector{align-self:stretch;min-width:0;position:static;overflow:auto}.project-section{margin-top:34px}.compact-toolbar{border-top:1px solid var(--color-border-strong);padding-top:14px}.project-grid{grid-template-columns:repeat(auto-fit,minmax(min(330px,100%),1fr));gap:14px;margin-top:18px;display:grid}.project-empty{border:1px dashed var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);grid-column:1/-1}.project-card{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);min-width:0;padding:18px}.project-card-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.project-card-heading-actions{align-items:flex-start;gap:8px;display:flex}.project-card h4{color:var(--color-ink);overflow-wrap:anywhere;margin:0;font-size:16px}.project-purpose{min-height:38px;color:var(--color-muted);margin-top:12px;font-size:12px;line-height:1.55}.completion-badge{border:1px solid var(--color-border-strong);border-radius:var(--radius-control);text-align:center;background:var(--color-surface);flex:none;min-width:54px;padding:7px 8px}.completion-badge strong{color:var(--color-ink);font-size:18px;line-height:1;display:block}.completion-badge span{color:var(--color-muted);font-size:12px}.evidence-row{flex-wrap:wrap;gap:5px;min-height:24px;margin-top:13px;display:flex}.status-chip{border:1px solid var(--color-border);width:fit-content;color:var(--color-ink);background:var(--color-surface);border-radius:999px;align-items:center;padding:3px 7px;font-size:12px;font-weight:650;display:inline-flex}.status-chip.owner{border-color:var(--color-border-strong);color:var(--color-ink);background:var(--color-surface-subtle)}.status-chip.private{border-color:var(--color-warning-soft);color:var(--color-muted);background:var(--color-warning-soft)}.project-access{border-top:1px solid var(--color-border);align-items:center;gap:7px;margin-top:14px;padding-top:12px;display:flex}.project-release-meta{border-left:1px solid var(--color-border);gap:1px;margin-left:auto;padding-left:11px;display:grid}.project-release-meta strong{color:var(--color-ink);font-size:12px}.project-release-meta span{color:var(--color-muted);font-size:12px}.project-card-footer{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:14px;margin-top:15px;padding-top:13px;display:flex}.project-card-footer>.secondary-action,.project-card-footer>.primary-action{min-width:92px}.subscription-action{min-height:30px;margin-left:4px;padding:5px 10px;font-size:12px}.project-relations{gap:6px;margin-top:11px;display:grid}.relation-section-toolbar{align-items:center}.relation-section-toolbar .primary-action{flex:none;padding:8px 12px;font-size:12px}.relation-section-toolbar .primary-action:disabled{cursor:not-allowed}.relation-composer{border:1px solid var(--color-border);background:var(--color-surface);border-radius:10px;margin-top:16px;box-shadow:0 10px 30px #2330280f}.relation-composer-form{padding:18px}.subscription-list{gap:8px;display:grid}.subscription-row{border-bottom:1px solid var(--color-border);grid-template-columns:10px 1fr auto;align-items:center;gap:9px;padding:10px 0;display:grid}.subscription-row:last-child{border-bottom:0}.subscription-row strong{font-size:12px;display:block}.subscription-row span{color:var(--color-muted);font-size:12px}.connections-view{padding-top:24px}.service-connection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px;display:grid}.service-connection-card{border:1px solid var(--color-border-strong);border-radius:var(--radius-control);background:var(--color-surface);min-width:0;padding:18px}.service-connection-card[data-status=ready]{border-color:var(--color-border-strong)}.service-connection-card[data-status=error]{border-color:var(--color-danger-soft)}.service-connection-card>header{grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;display:grid}.service-connection-card>header h3{color:var(--color-ink);font-size:15px}.service-connection-icon{border:1px solid var(--color-border-strong);border-radius:var(--radius-control);width:38px;height:38px;color:var(--color-ink);background:var(--color-surface-subtle);place-items:center;display:grid}.service-connection-icon.public{border-color:var(--color-border);color:var(--color-muted);background:var(--color-surface)}.service-state{color:var(--color-muted);align-items:center;gap:6px;font-size:12px;font-weight:650;display:inline-flex}.service-state:before{background:var(--color-muted);content:"";border-radius:50%;width:6px;height:6px}.service-connection-card[data-status=ready] .service-state{color:var(--color-success)}.service-connection-card[data-status=ready] .service-state:before{background:var(--color-success)}.service-connection-card[data-status=error] .service-state{color:var(--color-danger)}.service-connection-card[data-status=error] .service-state:before{background:var(--color-danger)}.service-connection-card>p{min-height:38px;color:var(--color-muted);margin-top:15px;font-size:12px;line-height:1.55}.service-connection-card dl{border-top:1px solid var(--color-border);margin:14px 0 0}.service-connection-card dl>div{border-bottom:1px solid var(--color-border);grid-template-columns:86px minmax(0,1fr);gap:12px;padding:9px 0;display:grid}.service-connection-card dl>div:last-child{border-bottom:0;padding-bottom:0}.service-connection-card dt{color:var(--color-muted);font-size:12px}.service-connection-card dd{color:var(--color-ink);overflow-wrap:anywhere;margin:0;font-size:12px}.connection-subscriptions{border-top:1px solid var(--color-border);margin-top:24px;padding-top:16px}.connection-subscriptions .section-title{margin-bottom:10px}.connection-subscriptions .section-title p{color:var(--color-muted);margin-top:4px;font-size:12px}.connection-title-row{align-items:center;gap:7px;display:flex}.feature-badge{letter-spacing:.07em;border-radius:999px;align-items:center;width:fit-content;padding:2px 6px;font-size:12px;font-weight:750;display:inline-flex}.feature-badge.beta{border:1px solid var(--color-warning);color:var(--color-warning);background:var(--color-warning-soft)}.external-knowledge-section,.conflict-policy-section{border-top:1px solid var(--color-border);margin-top:14px;padding-top:12px}.section-title-with-help{align-items:center;gap:7px;display:flex}.section-help-link{border:1px solid var(--color-border-strong);width:17px;height:17px;color:var(--color-muted);background:var(--color-surface);border-radius:50%;flex:none;place-items:center;font-size:12px;font-weight:750;line-height:1;text-decoration:none;display:inline-grid}.section-help-link:hover{border-color:var(--color-muted);color:var(--color-ink);background:var(--color-surface)}.section-help-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.external-binding-count{color:var(--color-muted);font-size:12px;font-weight:620}.external-binding-list{margin-top:10px;display:grid}.external-binding-row{border-bottom:1px solid var(--color-border);grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:10px;min-height:55px;display:grid}.external-binding-row>i{background:var(--color-muted);border-radius:50%;width:7px;height:7px}.external-binding-row[data-status=error]>i{background:var(--color-danger)}.external-binding-row strong{color:var(--color-ink);font-size:12px;display:block}.external-binding-row span,.external-binding-row small{color:var(--color-muted);margin-top:2px;font-size:12px;display:block}.external-binding-row small{color:var(--color-danger)}.external-binding-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.quiet-button.danger{color:var(--color-danger)}.compact-empty{color:var(--color-muted);padding:18px 0;font-size:12px}.external-binding-form{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);grid-template-columns:repeat(4,minmax(150px,1fr));align-items:end;gap:10px;margin-top:16px;padding:15px;display:grid}.external-binding-form label,.conflict-policy-controls label{min-width:0;color:var(--color-muted);gap:5px;font-size:12px;display:grid}.external-binding-form input,.external-binding-form textarea,.external-binding-form .ui-select,.conflict-policy-controls .ui-select,.external-binding-form input,.external-binding-form textarea{width:100%;min-width:0}.external-binding-form textarea{resize:vertical}.external-binding-form .wide-field{grid-column:span 3}.trusted-code-badge{border:1px solid var(--color-warning);width:fit-content;color:var(--color-warning);background:var(--color-warning-soft);border-radius:5px;padding:5px 7px;font-size:12px}.conflict-policy-controls{grid-template-columns:repeat(2,minmax(220px,1fr));gap:12px;max-width:700px;margin-top:10px;display:grid}@media (width<=1280px){.external-binding-form{grid-template-columns:repeat(2,minmax(180px,1fr))}.external-binding-form .wide-field{grid-column:span 2}}.graph-view{flex-direction:column;padding:18px 24px 20px;display:flex;overflow:hidden}.graph-view.graph-canvas-active{overflow:hidden}.knowledge-view-heading{border-bottom:1px solid var(--color-control-border);justify-content:space-between;align-items:center;min-height:42px;display:flex}.knowledge-mode-switch{align-self:stretch;gap:22px;display:flex}.knowledge-mode-switch button{color:var(--color-muted);background:0 0;border:0;padding:0 1px;font-size:12px;font-weight:620;position:relative}.knowledge-mode-switch button[aria-selected=true]{color:var(--color-accent)}.knowledge-mode-switch button[aria-selected=true]:after{background:var(--color-accent);content:"";border-radius:2px 2px 0 0;height:2px;position:absolute;bottom:-1px;left:0;right:0}.graph-toolbar{flex-wrap:wrap;align-items:center;gap:8px 10px;min-height:48px;padding:8px 0;display:flex}.picker-chevron{border-right:1.5px solid var(--color-muted);border-bottom:1.5px solid var(--color-muted);justify-self:end;width:7px;height:7px;transition:transform .14s;transform:translateY(-2px)rotate(45deg)}.ui-select[data-select-id=graph-space]{min-width:225px}.ui-select[data-select-id=knowledge-type-filter]{width:120px}.ui-select[data-select-id=knowledge-quadrant-filter]{width:110px}.ui-select[data-select-id=knowledge-profile-filter]{width:112px}.ui-select[data-select-id=knowledge-status-filter]{width:105px}.knowledge-editor-form .ui-select,.knowledge-project-fields .ui-select,.knowledge-project-relation .ui-select{width:100%}.personal-context-picker{position:relative}.personal-context-picker>summary{border:1px solid var(--color-border-strong);border-radius:var(--radius-control);min-height:32px;color:var(--color-ink);background:var(--color-surface);cursor:pointer;align-items:center;gap:8px;padding:6px 9px;font-size:12px;list-style:none;display:flex}.personal-context-picker>summary::-webkit-details-marker{display:none}.personal-context-picker>summary span{color:var(--color-muted)}.personal-context-picker>summary .picker-chevron{flex:none;margin-left:auto}.personal-context-picker[open]>summary .picker-chevron{transform:translateY(2px)rotate(225deg)}.personal-context-panel{z-index:8;border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);width:286px;padding:13px;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 12px 30px #2330281a}.personal-context-panel>strong{color:var(--color-ink);font-size:12px}.personal-context-panel>p{color:var(--color-muted);margin-top:4px;font-size:12px;line-height:1.45}.personal-context-list{gap:3px;max-height:220px;margin-top:10px;display:grid;overflow:auto}.personal-context-option{cursor:pointer;border-radius:6px;grid-template-columns:17px 1fr;align-items:center;gap:8px;padding:8px;display:grid}.personal-context-option:hover{background:var(--color-surface-subtle)}.personal-context-option input{margin:0}.personal-context-option span{gap:2px;display:grid}.personal-context-option strong{color:var(--color-ink);font-size:12px}.personal-context-option small{color:var(--color-muted);font-size:12px}.search-form{flex:0 300px;min-width:220px}.search-form input{width:100%}#knowledge-type-filter{max-width:160px}#knowledge-quadrant-filter{max-width:130px}#knowledge-profile-filter{max-width:135px}.graph-view-actions{border-left:1px solid var(--color-border);align-items:center;gap:3px;margin-left:auto;padding-left:4px;display:flex}.graph-controls{gap:3px;display:flex}.knowledge-layout{grid-template-columns:minmax(0, 1fr) var(--inspector-width);border:1px solid var(--color-border-strong);border-radius:var(--radius-card);background:var(--color-surface);isolation:isolate;flex:1;align-items:stretch;min-height:0;display:grid;overflow:hidden}.graph-view:not(.graph-canvas-active) .knowledge-layout:not(.has-selection){grid-template-columns:minmax(0,1fr)}.graph-view:not(.graph-canvas-active) .knowledge-layout:not(.has-selection) .graph-inspector{display:none}.knowledge-directory-panel{background:var(--color-surface);flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden;container:knowledge-directory/inline-size}.directory-kind-tabs{z-index:4;border-bottom:1px solid var(--color-border);background:var(--color-surface-hover);align-items:stretch;gap:22px;min-height:44px;padding:0 16px;display:flex;position:sticky;top:0}.directory-kind-tab{min-width:0;color:var(--color-muted);background:0 0;border:0;align-items:center;gap:7px;padding:0 1px;font-size:12px;font-weight:620;display:inline-flex;position:relative}.directory-kind-tab:hover{color:var(--color-ink)}.directory-kind-tab:focus-visible{outline:2px solid var(--color-accent);outline-offset:-2px}.directory-kind-tab:after{content:"";background:0 0;height:2px;position:absolute;bottom:-1px;left:0;right:0}.directory-kind-tab[aria-selected=true]{color:var(--color-accent)}.directory-kind-tab[aria-selected=true]:after{background:var(--color-accent)}.directory-kind-tab small{min-width:20px;color:var(--color-muted);background:var(--color-surface-subtle);text-align:center;border-radius:999px;padding:1px 6px;font-size:12px;font-weight:650}.directory-kind-tab[aria-selected=true] small{color:var(--color-accent);background:var(--color-surface-subtle)}.directory-tab-panel{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex}.directory-section-heading{border-bottom:1px solid var(--color-border);background:var(--color-surface-subtle);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 14px;min-width:0;padding:12px 16px;display:flex}.directory-section-copy{flex:260px;align-items:baseline;gap:10px;min-width:0;display:flex}.directory-section-heading strong{color:var(--color-ink);font-size:12px;font-weight:680}.directory-section-copy span,.directory-section-count{color:var(--color-muted);font-size:12px;line-height:1.45}.directory-section-copy span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.directory-section-count{flex:none}.knowledge-status-filter{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-subtle);flex:none;align-items:center;gap:2px;padding:2px;display:inline-flex}.knowledge-status-option{height:24px;color:var(--color-muted);white-space:nowrap;background:0 0;border:1px solid #0000;border-radius:5px;align-items:center;gap:5px;padding:0 7px;font-size:12px;font-weight:640;display:inline-flex}.knowledge-status-option:hover{color:var(--color-ink);background:#ffffffb8}.knowledge-status-option:focus-visible{outline:2px solid var(--color-accent);outline-offset:1px}.knowledge-status-option[aria-pressed=true]{border-color:var(--color-border-strong);color:var(--color-accent);background:var(--color-surface)}.knowledge-status-option[data-status=historical][aria-pressed=true]{border-color:var(--color-danger-soft);color:var(--color-danger);background:var(--color-surface-subtle)}.knowledge-status-option span{min-width:16px;color:inherit;background:var(--color-accent-soft);text-align:center;border-radius:999px;padding:0 4px;font-size:12px;line-height:16px}.knowledge-directory-virtual-list,.project-material-virtual-list{flex:1;min-width:0;min-height:0}.project-material-row{border:0;border-bottom:1px solid var(--color-border);width:100%;height:100%;color:var(--color-ink);background:var(--color-surface);text-align:left;grid-template-columns:minmax(0,1fr) minmax(94px,118px) auto;align-items:center;gap:16px;padding:10px 16px;display:grid}.project-material-row:hover{background:var(--color-surface)}.project-material-row.selected{background:var(--color-surface-subtle);box-shadow:inset 0 0 0 1px var(--color-accent)}.project-material-copy{gap:4px;min-width:0;display:grid}.project-material-copy strong{color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:630;overflow:hidden}.project-material-copy small{color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.4;overflow:hidden}.project-material-type{color:var(--color-ink);font-size:12px;font-weight:620}.project-material-link{color:var(--color-muted);text-align:right;font-size:12px;font-weight:650}.graph-canvas-active .knowledge-layout{flex:1;align-items:stretch;min-height:0;overflow:hidden}.knowledge-table-head,.knowledge-row{grid-template-columns:minmax(220px,1.8fr) minmax(92px,.68fr) minmax(104px,.75fr) minmax(90px,.65fr) minmax(118px,.9fr) minmax(102px,.72fr) minmax(58px,.42fr);align-items:center;gap:12px;width:100%;min-width:0;display:grid}.knowledge-table-head{border-bottom:1px solid var(--color-border);color:var(--color-muted);background:var(--color-surface-subtle);letter-spacing:.05em;padding:10px 16px;font-size:12px;font-weight:680}.knowledge-row{border:0;border-bottom:1px solid var(--color-border);height:100%;color:var(--color-ink);background:var(--color-surface);text-align:left;padding:11px 16px;font-size:12px}.knowledge-table-head>span,.knowledge-row>span{min-width:0}.knowledge-row:hover{background:var(--color-surface)}.knowledge-row.selected{background:var(--color-surface-subtle);box-shadow:inset 0 0 0 1px var(--color-accent)}.knowledge-row-content{gap:4px;min-width:0;display:grid}.knowledge-row-title{align-items:center;gap:7px;min-width:0;display:flex}.knowledge-row-content strong{min-width:0;color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:550;overflow:hidden}.human-change-badge{color:var(--color-warning);background:var(--color-warning-soft);white-space:nowrap;border-radius:999px;flex:none;padding:2px 6px;font-size:12px;font-style:normal;font-weight:700}.human-change-badge.state-viewed{color:var(--color-muted);background:var(--color-surface-subtle)}.knowledge-row-content small{color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;line-height:1.4;overflow:hidden}.knowledge-row-type,.knowledge-row-source,.knowledge-row-time{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.knowledge-row-type{color:var(--color-ink);font-weight:620}.knowledge-row-source,.knowledge-row-time{color:var(--color-muted)}.knowledge-row-quadrant{width:fit-content;color:var(--color-muted);background:var(--color-surface-subtle);white-space:nowrap;border-radius:999px;padding:3px 7px;font-size:12px;font-weight:650}.knowledge-row-quadrant.known_known{color:var(--color-ink);background:var(--color-surface-subtle)}.knowledge-row-quadrant.known_unknown{color:var(--color-warning);background:var(--color-warning-soft)}.knowledge-row-quadrant.unknown_known,.knowledge-row-quadrant.unknown_unknown,.knowledge-row-quadrant.unclassified{color:var(--color-muted);background:var(--color-surface-subtle)}.knowledge-review-state{width:fit-content;color:var(--color-muted);background:var(--color-surface-subtle);white-space:nowrap;border-radius:999px;padding:3px 7px;font-size:12px;font-weight:650}.knowledge-review-state.state-confirmed,.knowledge-review-state.state-agent_confirmed{color:var(--color-success);background:var(--color-success-soft)}.knowledge-review-state.state-pending,.knowledge-review-state.state-needs_review{color:var(--color-warning);background:var(--color-warning-soft)}.knowledge-review-state.state-exploratory,.knowledge-review-state.state-unclassified{color:var(--color-muted);background:var(--color-surface-subtle)}.knowledge-status{border-radius:999px;width:fit-content;padding:3px 7px;font-size:12px;font-weight:650}.knowledge-status.current{color:var(--color-ink);background:var(--color-surface-subtle)}.knowledge-status.historical{color:var(--color-danger);background:var(--color-surface-subtle)}@container knowledge-directory (width<=900px){.knowledge-table-head,.knowledge-row{grid-template-columns:minmax(220px,1.8fr) minmax(92px,.75fr) minmax(104px,.8fr) minmax(90px,.7fr) minmax(58px,.45fr)}.knowledge-column-source,.knowledge-column-time,.knowledge-row-source,.knowledge-row-time{display:none}}@container knowledge-directory (width<=660px){.knowledge-status-filter{order:3;margin-right:auto}.knowledge-table-head,.knowledge-row{grid-template-columns:minmax(180px,1fr) 90px 96px 58px}.knowledge-column-type,.knowledge-row-type{display:none}.project-material-row{grid-template-columns:minmax(0,1fr) auto}.project-material-type{display:none}}@container knowledge-directory (width<=500px){.knowledge-table-head{letter-spacing:0;grid-template-columns:minmax(0,1fr) 128px;gap:12px}.knowledge-row{grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr) 128px;gap:2px 12px}.knowledge-row-content{grid-area:1/1/3}.knowledge-review-state{grid-area:1/2;max-width:128px;font-weight:500}.knowledge-status{grid-area:2/2;padding-block:0;font-weight:400}.knowledge-column-quadrant,.knowledge-row-quadrant,.knowledge-column-validity{display:none}}.graph-inspector{background:var(--color-surface);border-left:1px solid var(--color-border);overscroll-behavior:contain;align-self:stretch;padding:18px;position:static;overflow:auto}.graph-canvas-active .graph-inspector{align-self:stretch;position:static;overflow:auto}.graph-inspector h3{overflow-wrap:anywhere;margin-bottom:8px;font-size:16px}.graph-inspector .muted{color:var(--color-muted);font-size:12px;line-height:1.55}.inspector-classification{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);gap:7px;margin-top:15px;padding:11px 12px;display:grid}.inspector-classification>div{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.inspector-classification span{color:var(--color-muted);font-size:12px;font-weight:650}.inspector-classification strong{color:var(--color-ink);font-size:12px}.inspector-classification p{color:var(--color-muted);font-size:12px;line-height:1.55}.inspector-classification.state-pending,.inspector-classification.state-needs_review{border-color:var(--color-warning-soft);background:var(--color-warning-soft)}.inspector-classification.state-pending strong,.inspector-classification.state-needs_review strong{color:var(--color-warning)}.inspector-classification.state-exploratory{border-color:var(--color-border-strong);background:var(--color-surface-subtle)}.inspector-classification.state-exploratory strong{color:var(--color-muted)}.inspector-classification.state-unclassified{border-color:var(--color-border);background:var(--color-surface-subtle)}.inspector-classification.state-unclassified strong{color:var(--color-muted)}.inspector-human-change{border:1px solid var(--color-warning-soft);border-radius:var(--radius-control);background:var(--color-warning-soft);gap:6px;margin-top:10px;padding:11px 12px;display:grid}.inspector-human-change>div{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.inspector-human-change span,.inspector-human-change small{color:var(--color-muted);font-size:12px;font-weight:650}.inspector-human-change strong{color:var(--color-warning);font-size:12px}.inspector-human-change p{color:var(--color-muted);font-size:12px;line-height:1.55}.inspector-human-change.state-viewed{border-color:var(--color-border);background:var(--color-surface)}.inspector-human-change.state-viewed strong{color:var(--color-muted)}.inspector-human-change.state-reviewed{border-color:var(--color-border);background:var(--color-surface)}.inspector-human-change.state-reviewed strong{color:var(--color-ink)}.inspector-replacement{border:1px solid var(--color-warning-soft);border-radius:var(--radius-control);background:var(--color-warning-soft);gap:8px;margin-top:10px;padding:11px 12px;display:grid}.inspector-replacement-heading{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.inspector-replacement-heading span{color:var(--color-muted);font-size:12px;font-weight:650}.inspector-replacement-heading strong{color:var(--color-warning);font-size:12px}.inspector-replacement>p{color:var(--color-muted);font-size:12px;line-height:1.55}.inspector-replacement-link{border:1px solid var(--color-border);width:100%;color:inherit;background:var(--color-surface);text-align:left;border-radius:6px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:9px 10px;display:grid}.inspector-replacement-link:hover{border-color:var(--color-muted);background:var(--color-surface)}.inspector-replacement-link>span{gap:3px;min-width:0;display:grid}.inspector-replacement-link strong,.inspector-replacement-link small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.inspector-replacement-link strong{color:var(--color-ink);font-size:12px}.inspector-replacement-link small{color:var(--color-muted);font-size:12px}.inspector-replacement-link b{color:var(--color-ink);white-space:nowrap;font-size:12px;font-weight:680}.inspector-project-material{border:1px solid var(--color-border-strong);border-radius:var(--radius-control);background:var(--color-surface-subtle);gap:7px;margin-top:15px;padding:11px 12px;display:grid}.inspector-project-material>div{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.inspector-project-material span{color:var(--color-muted);font-size:12px;font-weight:650}.inspector-project-material strong{color:var(--color-ink);font-size:12px}.inspector-project-material p{color:var(--color-muted);font-size:12px;line-height:1.55}.inspector-technical{margin-top:18px}.inspector-technical .inspector-meta{margin-top:8px}.inspector-identity code{min-width:0;color:var(--color-ink);font-family:var(--font-mono);overflow-wrap:anywhere;font-size:12px;line-height:1.35}.inspector-meta{gap:8px;margin-top:18px;display:grid}.inspector-meta div{border-top:1px solid var(--color-border);padding-top:8px}.inspector-meta dt{color:var(--color-muted);text-transform:uppercase;letter-spacing:.08em;font-size:12px}.inspector-meta dd{overflow-wrap:anywhere;margin:3px 0 0;font-size:12px}.inspector-attributes{margin-top:0}.inspector-subtitle{color:var(--color-muted);margin:20px 0 7px;font-size:12px;font-weight:650}.inspector-reasoning{color:var(--color-muted);white-space:pre-wrap;font-size:12px;line-height:1.6}.inspector-relations{display:grid}.inspector-relation{border-top:1px solid var(--color-border);grid-template-columns:minmax(0,1fr);gap:3px;min-width:0;padding:10px 0;font-size:12px;display:grid}.relation-type{color:var(--color-muted);letter-spacing:.035em;overflow-wrap:anywhere;font-size:12px;font-weight:700;line-height:1.4}.relation-target{min-width:0;color:var(--color-muted);overflow-wrap:anywhere;margin:0;line-height:1.55}.inspector-evidence{gap:7px;display:grid}.evidence-card{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);padding:10px}.evidence-card strong{color:var(--color-ink);font-size:12px;display:block}.evidence-card p{color:var(--color-muted);margin-top:4px;font-size:12px;line-height:1.5}.evidence-card span{color:var(--color-muted);margin-top:6px;font-size:12px;display:block}.evidence-card .evidence-excerpt{color:var(--color-muted);background:var(--color-surface-subtle);white-space:pre-wrap;border-radius:5px;margin-top:8px;padding:8px}.evidence-source-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-top:8px;display:flex}.evidence-source-action{color:var(--color-ink);background:0 0;border:0;margin:0;padding:0;font-size:12px;font-weight:650;text-decoration:none;display:inline-flex}.evidence-source-action:hover{color:var(--color-ink);text-decoration:underline}.evidence-source-action:disabled{color:var(--color-muted);cursor:not-allowed;text-decoration:none}.inspector-actions{gap:7px;margin-top:16px;display:grid}.inspector-actions button{width:100%}.inspector-history{display:grid}.history-row{border-top:1px solid var(--color-border);padding:9px 0}.history-row strong{color:var(--color-ink);font-size:12px}.history-row p{color:var(--color-muted);margin-top:3px;font-size:12px;line-height:1.45}.history-row span,.history-row small{color:var(--color-muted);margin-top:4px;font-size:12px;display:block}.section-toolbar{border-bottom:1px solid var(--color-border);padding-bottom:18px}.section-toolbar h3{margin-bottom:5px;font-size:18px}.ui-select[data-select-id=review-project]{min-width:220px}.review-list{margin-top:10px;display:grid}.review-item{border-bottom:1px solid var(--color-border);grid-template-columns:minmax(0,1fr) auto;gap:24px;padding:18px 0;display:grid}.review-item h4{margin:0 0 5px;font-size:14px}.review-item p{color:var(--color-muted);font-size:12px;line-height:1.55}.review-stage{width:fit-content;color:var(--color-muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:7px;font-size:12px;font-weight:700}.review-meta{color:var(--color-muted);gap:12px;margin-top:9px;font-size:12px;display:flex}.review-actions{align-items:center;gap:7px;display:flex}.review-actions button{border-radius:var(--radius-control);padding:7px 11px;font-size:12px}.approve{border:1px solid var(--color-ink);background:var(--color-ink);color:var(--color-surface)}.reject{border:1px solid var(--color-danger-soft);background:var(--color-surface);color:var(--color-danger)}.stacked-actions{flex-wrap:wrap;justify-content:flex-end;align-items:flex-end;max-width:240px}.empty-state{text-align:center;color:var(--color-muted);padding:40px 0;font-size:13px}.subscription-form{border-top:1px solid var(--color-border);gap:7px;margin-top:18px;padding-top:14px;display:flex}.subscription-form .ui-select{flex:1}.muted{color:var(--color-muted);font-size:12px}.publish-dialog{width:min(500px,100vw - 32px);color:var(--color-ink);background:var(--color-surface);box-shadow:var(--shadow-dialog);border:0;border-radius:12px;padding:0}.publish-dialog::backdrop{background:var(--color-overlay)}.publish-dialog h3{margin:0;font-size:20px}.publish-impact{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);margin-top:19px}.publish-impact>div{grid-template-columns:108px 1fr;gap:14px;padding:12px 0;display:grid}.publish-impact>div+div{border-top:1px solid var(--color-border)}.publish-impact strong{color:var(--color-ink);font-size:12px}.publish-impact span{color:var(--color-muted);font-size:12px;line-height:1.5}.project-latest-release{border-bottom:1px solid var(--color-border);padding:18px 0}.project-latest-release h4{color:var(--color-danger);margin:0;font-size:13px}.project-latest-release>div{margin-top:10px}.project-detail-columns{grid-template-columns:1fr 1fr;gap:24px;padding:20px 0;display:grid}.project-detail-columns>section+section{border-left:1px solid var(--color-border);padding-left:24px}.project-release-item{border-top:1px solid var(--color-border);grid-template-columns:72px minmax(0,1fr);gap:3px 10px;padding:11px 0;display:grid}.project-release-item strong{color:var(--color-ink);grid-row:1/span 2;font-size:12px}.project-release-item p{color:var(--color-muted);font-size:12px;line-height:1.45}.project-release-item small{color:var(--color-muted);font-size:12px}.project-detail-relation{border-top:1px solid var(--color-border);grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:11px 0;display:grid}.project-detail-relation>div:first-child{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px 8px;display:grid}.project-detail-relation strong{font-size:12px}.project-detail-relation small{color:var(--color-muted);grid-column:2;font-size:12px}.knowledge-edit-dialog{width:min(880px,100vw - 32px)}.knowledge-edit-columns{grid-template-columns:1.15fr .85fr;gap:28px;padding-top:22px;display:grid}.knowledge-edit-columns>section+section{border-left:1px solid var(--color-border);padding-left:28px}.knowledge-edit-columns h4{color:var(--color-ink);margin:0 0 6px;font-size:13px}.knowledge-edit-columns section>p{color:var(--color-muted);font-size:12px;line-height:1.5}.knowledge-editor-form{gap:13px;margin-top:16px;display:grid}.knowledge-editor-form label{color:var(--color-muted);gap:6px;font-size:12px;font-weight:600;display:grid}.knowledge-editor-actions{justify-content:flex-end;gap:7px;padding-top:4px;display:flex}.knowledge-editor-actions button{min-width:94px}.knowledge-project-dialog{width:min(780px,100vw - 32px)}.knowledge-project-source{border-bottom:1px solid var(--color-border);padding-bottom:16px}.knowledge-project-source span,.knowledge-project-preview span{color:var(--color-muted);letter-spacing:.08em;font-size:12px;font-weight:700;display:block}.knowledge-project-source strong{color:var(--color-ink);margin-top:5px;font-size:15px;display:block}.knowledge-project-source p{color:var(--color-muted);margin-top:4px;font-size:12px;line-height:1.5}.knowledge-project-mode{border:0;grid-template-columns:1fr 1fr;gap:9px;margin:0;padding:0;display:grid}.knowledge-project-mode legend,.knowledge-project-conflict-options legend{color:var(--color-muted);grid-column:1/-1;margin-bottom:4px;font-size:12px;font-weight:650}.knowledge-project-mode label{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);cursor:pointer;align-items:flex-start;gap:9px;padding:11px;display:flex}.knowledge-project-mode label:has(input:checked){border-color:var(--color-muted);background:var(--color-surface-subtle)}.knowledge-project-mode label.disabled{cursor:not-allowed;opacity:.48}.knowledge-project-mode label span{gap:3px;display:grid}.knowledge-project-mode strong{color:var(--color-ink);font-size:12px}.knowledge-project-mode small,.knowledge-project-fields small{color:var(--color-muted);font-size:12px;line-height:1.4}.knowledge-project-fields{grid-template-columns:1fr 1fr;gap:12px;display:grid}.knowledge-project-fields label{color:var(--color-muted);gap:6px;font-size:12px;font-weight:600;display:grid}.knowledge-project-relation{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);grid-template-columns:minmax(0,1fr) 210px;align-items:end;gap:18px;padding:13px 0;display:grid}.knowledge-project-preview{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);padding:14px}.knowledge-project-preview>div:first-child>strong{color:var(--color-ink);margin-top:4px;font-size:12px;display:block}.knowledge-project-preview>div:first-child>p{color:var(--color-muted);margin-top:4px;font-size:12px;line-height:1.5}.knowledge-project-compare{border:1px solid var(--color-border);background:var(--color-surface-subtle);grid-template-columns:1fr 1fr;gap:1px;margin-top:13px;display:grid}.knowledge-project-compare article{background:var(--color-surface);min-width:0;padding:11px}.knowledge-project-compare strong{color:var(--color-ink);margin-top:4px;font-size:12px;display:block}.knowledge-project-compare p{color:var(--color-muted);white-space:pre-wrap;margin-top:4px;font-size:12px;line-height:1.5}.knowledge-project-conflict-options{border:0;border-top:1px solid var(--color-border);gap:7px;margin:14px 0 0;padding:12px 0 0;display:grid}.knowledge-project-conflict-options label{color:var(--color-ink);font-size:12px}.project-profile-dialog{width:min(820px,100vw - 32px);max-height:calc(100vh - 48px);color:var(--color-ink);background:var(--color-surface);box-shadow:var(--shadow-dialog);border:0;border-radius:12px;padding:0;overflow:hidden}.project-profile-dialog::backdrop{background:var(--color-overlay)}.project-profile-fields{grid-template-columns:minmax(0,1fr) 180px;gap:13px;padding:20px 0;display:grid}.project-profile-fields label,.project-source-row label{color:var(--color-muted);align-content:start;gap:6px;font-size:12px;font-weight:600;display:grid}.project-profile-fields small{color:var(--color-muted);font-size:12px;font-weight:500}.project-profile-wide-field{grid-column:1/-1}.project-source-editor{border-top:1px solid var(--color-border);padding:18px 0}.project-source-editor-heading{outline:none;justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.project-source-editor-heading h4{color:var(--color-ink);margin:0;font-size:13px}.project-source-editor-heading p{color:var(--color-muted);margin-top:4px;font-size:12px;line-height:1.5}.project-source-list{gap:9px;margin-top:14px;display:grid}.project-source-row{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);grid-template-columns:minmax(180px,1fr) 150px auto;align-items:end;gap:10px;padding:12px;display:grid}.project-source-wide-field{grid-column:1/span 2}.project-source-remove{min-height:32px;color:var(--color-danger);background:0 0;border:0;padding:6px 9px;font-size:12px}.project-source-remove:hover{color:var(--color-danger);text-decoration:underline}@media (width<=1180px){.app-shell{grid-template-columns:210px 1fr}.personal-profile-layout{grid-template-columns:minmax(0,1fr) 300px}.personal-profile-table-head,.personal-profile-row{grid-template-columns:78px minmax(190px,1fr) minmax(135px,.75fr) 105px}}.quiet-button.mobile-nav-toggle,.quiet-button.mobile-nav-close{display:none}@media (width<=720px){.service-connection-grid{grid-template-columns:minmax(0,1fr)}.service-connection-card dl>div{grid-template-columns:minmax(64px,.3fr) minmax(0,1fr)}.view.vue-personal-profile{padding:16px}.personal-profile-summary{flex:none;grid-template-columns:repeat(2,minmax(0,1fr));padding:8px;display:grid}.personal-profile-summary>button{overflow-wrap:anywhere;justify-content:space-between;min-width:0;padding:6px 10px}.personal-profile-summary>p{grid-column:1/-1;margin:8px 6px 0}.personal-profile-toolbar,.personal-profile-filter-groups{flex-wrap:wrap;gap:8px}.personal-profile-filter-groups,.personal-profile-toolbar-actions{width:100%;min-width:0}.personal-profile-filters{max-width:100%;overflow-x:auto}.personal-profile-filters button{white-space:nowrap;flex:none}.personal-profile-scope-filter{width:100%}.personal-profile-table-head,.personal-profile-row{grid-template-columns:64px minmax(0,1fr) 72px;gap:8px;padding-inline:10px}.personal-profile-table-head>:last-child,.personal-profile-row>time{display:none}.personal-profile-origin{min-width:0;overflow:hidden}.external-binding-form,.conflict-policy-controls{grid-template-columns:minmax(0,1fr)}.external-binding-form .wide-field{grid-column:auto}}.mobile-nav-backdrop{display:none}@media (width<=920px){.personal-profile-layout:not(.has-selection),.knowledge-layout:not(.has-selection){grid-template-rows:minmax(0,1fr)}.personal-profile-layout:not(.has-selection) .personal-profile-inspector,.knowledge-layout:not(.has-selection) .graph-inspector{display:none}.personal-profile-layout,.knowledge-layout{grid-template-rows:minmax(160px,1fr) minmax(160px,.8fr);grid-template-columns:minmax(0,1fr)}.personal-profile-inspector,.graph-inspector{border-left:0;border-top:1px solid var(--color-border);min-width:0;min-height:0}body{min-width:0}.app-shell{flex-direction:column;width:100%;height:100dvh;display:flex}.sidebar{z-index:40;border-right:1px solid var(--color-border);width:min(320px,100vw - 48px);height:100dvh;padding:12px 14px 16px;display:none;position:fixed;inset:0 auto 0 0;overflow:hidden}.mobile-nav-backdrop{z-index:30;background:var(--color-overlay);border:0;width:100%;height:100%;padding:0;display:block;position:fixed;inset:0}.sidebar.is-mobile-open{display:flex}.quiet-button.mobile-nav-close{flex:none;align-self:flex-end;margin-bottom:8px;display:inline-flex}.workspace{flex:auto;min-width:0;height:auto}.topbar{flex-wrap:wrap;gap:8px 10px;min-height:auto;padding:10px 12px}.quiet-button.mobile-nav-toggle{flex:none;align-items:center;gap:7px;width:38px;padding-inline:10px;display:inline-flex}.mobile-nav-icon{border-top:1.5px solid;border-bottom:1.5px solid;width:15px;height:10px;position:relative}.mobile-nav-icon:after{content:"";border-top:1.5px solid;position:absolute;inset:3px 0 auto}.topbar-heading{flex:100px}.topbar-heading h1{font-size:22px}.view{padding:16px 20px 24px}.topbar-actions{justify-content:flex-end;gap:8px;margin-left:auto}.feedback{margin:12px 16px 0}}.external-binding-copy{min-width:0;padding:10px 0}.external-binding-row strong{overflow-wrap:anywhere;font-size:14px}.external-binding-targets{flex-wrap:wrap;align-items:center;gap:5px;margin-top:7px;display:flex}.external-binding-row .external-binding-targets b{color:var(--color-muted);font-size:12px;font-weight:650}.external-binding-row .external-binding-target-chip{border:1px solid var(--color-border);width:fit-content;color:var(--color-ink);background:var(--color-surface-subtle);border-radius:999px;align-items:center;margin:0;padding:3px 7px;font-size:12px;font-weight:620;display:inline-flex}.external-binding-row .external-binding-target-chip[data-status=error]{border-color:var(--color-danger-soft);color:var(--color-danger);background:var(--color-surface)}.external-binding-editor{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);grid-column:1/-1;grid-template-columns:repeat(4,minmax(150px,1fr));align-items:end;gap:10px;margin:8px 0 16px;padding:15px;display:grid}.external-binding-editor>label{min-width:0;color:var(--color-muted);grid-area:1/1/auto/4;gap:5px;font-size:12px;display:grid}.external-binding-editor .ui-select{width:100%;min-width:0}.external-target-mode-list{grid-area:2/1/auto/-1;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px;display:grid}.external-target-mode-row{border:1px solid var(--color-border);background:var(--color-surface);border-radius:6px;grid-template-columns:minmax(120px,.62fr) minmax(170px,1fr);align-items:center;gap:12px;min-width:0;padding:8px 10px;display:grid}.external-binding-row .external-target-mode-row>span{min-width:0;color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:12px;font-weight:620;overflow:hidden}.external-binding-editor-actions{grid-area:1/4;justify-content:flex-end;gap:6px;display:flex}.external-binding-editor-actions button{min-height:36px}.external-create-action-icon{width:16px;height:16px;color:var(--color-surface);border:1px solid #ffffffb8;border-radius:50%;flex:0 0 16px;justify-content:center;align-items:center;display:inline-flex;position:relative}.external-create-action-icon:before,.external-create-action-icon:after{content:"";background:currentColor;border-radius:999px;width:7px;height:1.5px;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.external-create-action-icon:after{transform:translate(-50%,-50%)rotate(90deg)}@media (width<=1280px){.external-binding-editor{grid-template-columns:repeat(2,minmax(180px,1fr))}.external-binding-editor>label{grid-column:1/-1}.external-target-mode-list{grid-template-columns:1fr}.external-binding-editor-actions{grid-area:3/1/auto/-1}}@media (width<=720px){.external-binding-row{grid-template-columns:8px minmax(0,1fr);gap:6px 10px;padding:12px 0}.external-binding-actions{grid-column:2;justify-content:flex-start}.external-binding-copy{padding:0}.external-binding-editor{grid-template-columns:minmax(0,1fr);padding:12px}.external-target-mode-row{grid-template-columns:minmax(0,1fr);gap:6px}}.graph-stage{background:var(--color-surface);grid-template-columns:minmax(0,1fr);min-width:0;min-height:520px;display:grid;position:relative;overflow:hidden}.graph-stage.has-parent-projects{grid-template-columns:minmax(190px,220px) minmax(0,1fr)}.graph-canvas-active .graph-stage{min-height:0}.graph-canvas-panel{min-width:0;min-height:0;position:relative;overflow:hidden}#knowledge-graph{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}#knowledge-graph:active{cursor:grabbing}.project-hierarchy-aside{z-index:4;border-right:1px solid var(--color-border);background:var(--color-surface);min-width:0;padding:18px 16px;position:relative}.project-hierarchy-aside header{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:3px 8px;display:grid}.project-hierarchy-aside header>span{color:var(--color-muted);letter-spacing:.1em;grid-column:1/-1;font-size:12px;font-weight:720}.project-hierarchy-aside header>strong{color:var(--color-ink);font-size:15px;font-weight:680}.project-hierarchy-aside header>small{color:var(--color-muted);background:var(--color-surface-subtle);border-radius:999px;padding:2px 6px;font-size:12px;font-weight:680}.project-hierarchy-aside>p{color:var(--color-muted);margin-top:7px;font-size:12px;line-height:1.5}.project-hierarchy-aside nav{border-top:1px solid var(--color-border);margin-top:14px;display:grid}.project-parent-link{border-bottom:1px solid var(--color-border);min-width:0;color:inherit;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:9px;padding:12px 1px;text-decoration:none;display:grid}.project-parent-link:hover{background:var(--color-surface)}.project-parent-link:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.project-parent-icon{border-radius:var(--radius-control);width:32px;height:32px;color:var(--color-ink);background:var(--color-surface-subtle);place-items:center;display:grid}.project-parent-icon svg{width:17px;height:17px}.project-parent-icon path{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round}.project-parent-link>span:nth-child(2){gap:2px;min-width:0;display:grid}.project-parent-link small{color:var(--color-muted);font-size:12px}.project-parent-link strong{color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:680;overflow:hidden}.project-parent-link em{color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-style:normal;overflow:hidden}.project-parent-link b{color:var(--color-muted);font-size:12px;font-weight:680}.graph-relation-legend{z-index:4;position:absolute;top:12px;left:12px}.graph-relation-legend>summary{border:1px solid var(--color-border);border-radius:var(--radius-control);min-height:30px;color:var(--color-ink);cursor:pointer;background:#fffffff2;grid-template-columns:15px auto auto 8px;align-items:center;gap:6px;padding:5px 8px;font-size:12px;font-weight:660;list-style:none;display:grid;box-shadow:0 3px 12px #26342b14}.graph-relation-legend>summary::-webkit-details-marker{display:none}.graph-relation-legend>summary svg{width:15px;height:15px}.graph-relation-legend>summary path{fill:none;stroke:var(--color-muted);stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round}.graph-relation-legend>summary small{min-width:17px;color:var(--color-muted);background:var(--color-surface-subtle);text-align:center;border-radius:999px;justify-self:end;width:fit-content;padding:1px 5px;font-size:12px}.graph-relation-legend>summary i{border-right:1.3px solid var(--color-muted);border-bottom:1.3px solid var(--color-muted);width:6px;height:6px;transform:translateY(-2px)rotate(45deg)}.graph-relation-legend[open]>summary i{transform:translateY(2px)rotate(225deg)}.graph-relation-legend-panel{border:1px solid var(--color-border);border-radius:var(--radius-control);width:250px;box-shadow:var(--shadow-popover);background:#fffffffa;margin-top:6px;padding:12px}.graph-relation-legend-panel header{gap:2px;padding-bottom:9px;display:grid}.graph-relation-legend-panel header strong{color:var(--color-ink);font-size:12px}.graph-relation-legend-panel header span{color:var(--color-muted);font-size:12px}.graph-relation-legend-panel ul{border-top:1px solid var(--color-border);max-height:300px;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.graph-relation-legend-panel li{border-bottom:1px solid var(--color-border);grid-template-columns:28px minmax(0,1fr);align-items:center;gap:8px;min-width:0;padding:8px 0;display:grid}.graph-relation-legend-panel li:last-child{border-bottom:0}.graph-relation-legend-panel li>svg{border-radius:var(--radius-control);width:28px;height:28px;color:var(--color-muted);background:var(--color-surface-subtle);padding:6px}.graph-relation-legend-panel li path{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round}.graph-relation-legend-panel li>span{gap:2px;min-width:0;display:grid}.graph-relation-legend-panel li strong{color:var(--color-ink);font-size:12px}.graph-relation-legend-panel li small{color:var(--color-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.graph-search-status{z-index:3;box-sizing:border-box;border:1px solid var(--color-border);border-radius:var(--radius-control);width:min(440px,100% - 36px);color:var(--color-ink);box-shadow:var(--shadow-popover);background:#fffffff7;padding:15px 16px;position:absolute;top:18px;left:50%;transform:translate(-50%)}.graph-search-status[hidden]{display:none}.graph-search-status-kicker{color:var(--color-warning);letter-spacing:.08em;margin-bottom:5px;font-size:12px;font-weight:720;display:block}.graph-search-status-title{font-size:14px;font-weight:680;display:block}.graph-search-status-copy{color:var(--color-muted);margin-top:5px;font-size:12px;line-height:1.55}.graph-search-suggestions{gap:5px;margin-top:11px;display:grid}.graph-search-suggestion{border:1px solid var(--color-border);color:inherit;background:var(--color-surface);border-radius:6px;justify-content:space-between;align-items:center;gap:18px;padding:8px 9px;text-decoration:none;display:flex}.graph-search-suggestion:hover{border-color:var(--color-border-strong);background:var(--color-surface-subtle)}.graph-search-suggestion>span{gap:2px;min-width:0;display:grid}.graph-search-suggestion strong{color:var(--color-ink);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.graph-search-suggestion small{color:var(--color-muted);font-size:12px}.graph-search-suggestion b{color:var(--color-ink);flex:none;font-size:12px;font-weight:680}.graph-empty{color:var(--color-muted);pointer-events:none;place-items:center;font-size:13px;display:grid;position:absolute;inset:0}.graph-hint{color:var(--color-muted);text-align:right;margin-top:8px;font-size:12px}.graph-edge{stroke:var(--color-border-strong);stroke-width:1.2px;opacity:.72;pointer-events:none;transition:opacity .12s,stroke .12s,stroke-width .12s}.graph-edge.historical{stroke-dasharray:5 4;opacity:.45}.graph-edge.human-change-pending{stroke:var(--color-warning);stroke-width:2.2px;stroke-dasharray:4 3;opacity:.9}.graph-edge.human-change-viewed{stroke:var(--color-muted)}.graph-edge-hit{stroke:#0000;stroke-width:15px;cursor:pointer}.graph-edge-label{opacity:.9;pointer-events:none;transition:opacity .12s}.graph-edge-label-bg{fill:#f9faf8f0;stroke:var(--color-border);stroke-width:.8px;transition:fill .12s,stroke .12s}.graph-edge-label-icon{fill:none;stroke:var(--color-muted);stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;transition:stroke .12s}.graph-edge-label-text{fill:var(--color-muted);pointer-events:none;font-size:8.5px;font-weight:650;transition:fill .12s}.graph-arrow{fill:var(--color-muted)}.graph-node{cursor:move;outline:none;transition:opacity .12s}.graph-node-human-marker{fill:var(--color-warning);stroke:var(--color-surface);stroke-width:1.5px;pointer-events:none}.graph-node.human-change-viewed .graph-node-human-marker{fill:var(--color-muted)}.graph-node-shape{stroke:var(--color-surface);stroke-width:2.5px;filter:drop-shadow(0 1px 2px #1c2a2126);transition:stroke .12s,stroke-width .12s,opacity .12s}.graph-project-ring{fill:var(--color-surface);stroke:var(--color-border-strong);stroke-width:1.5px;filter:drop-shadow(0 2px 4px #1f31271f);transition:fill .12s,stroke .12s,stroke-width .12s}.graph-node.project-node .graph-node-shape{fill:var(--color-ink);stroke:var(--color-surface);stroke-width:2.5px}.graph-project-icon{fill:none;stroke:var(--color-surface);stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.graph-node-label{fill:var(--color-ink);text-anchor:middle;pointer-events:none;paint-order:stroke;stroke:var(--color-surface);stroke-width:3px;stroke-linejoin:round;font-size:12px;font-weight:540;transition:opacity .12s}.graph-node-id{fill:var(--color-muted);letter-spacing:.02em;text-anchor:middle;pointer-events:none;opacity:0;paint-order:stroke;stroke:var(--color-surface);stroke-width:2.5px;stroke-linejoin:round;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:7px;font-weight:560;transition:opacity .12s}.graph-node.project-node .graph-node-id{opacity:.72}.graph-search-badge{pointer-events:none;display:none}.graph-search-badge rect{fill:var(--color-warning-soft);stroke:var(--color-warning);stroke-width:1px}.graph-search-badge text{fill:var(--color-warning);text-anchor:middle;paint-order:stroke;stroke:var(--color-warning-soft);stroke-width:1px;font-size:12px;font-weight:740}.graph-node.search-match .graph-search-badge{display:block}.graph-node:hover .graph-node-id,.graph-node:focus-visible .graph-node-id,.graph-node.selected .graph-node-id{opacity:1}.graph-node:not(.project-node):hover .graph-node-shape,.graph-node:not(.project-node):focus-visible .graph-node-shape,.graph-node:not(.project-node).selected .graph-node-shape{stroke:var(--color-accent);stroke-width:3.5px}.graph-node:not(.project-node).related .graph-node-shape{stroke:var(--color-muted);stroke-width:3px}.graph-node.project-node:hover .graph-project-ring,.graph-node.project-node:focus-visible .graph-project-ring,.graph-node.project-node.selected .graph-project-ring{fill:var(--color-surface-subtle);stroke:var(--color-accent);stroke-width:2.4px}.graph-node.project-node.related .graph-project-ring{stroke:var(--color-muted);stroke-width:2px}.graph-node:not(.project-node).search-match .graph-node-shape{stroke:var(--color-warning);stroke-width:5px;filter:drop-shadow(0 0 5px #bd74166b)}.graph-node.project-node.search-match .graph-project-ring{fill:var(--color-warning-soft);stroke:var(--color-warning);stroke-width:3px;filter:drop-shadow(0 0 5px #bd741652)}.graph-node.pinned .graph-node-shape{stroke:var(--color-muted);stroke-width:3px}.graph-node.dimmed,.graph-edge.dimmed,.graph-edge-label.dimmed{opacity:.08}.graph-node.dimmed .graph-node-id{opacity:.05}.graph-edge.related{stroke:var(--color-muted);stroke-width:2px;opacity:.9}.graph-edge.selected{stroke:var(--color-accent);stroke-width:2.8px;opacity:1}.graph-edge.search-match{stroke:var(--color-warning);stroke-width:2.8px;opacity:1}.graph-edge-label.search-match{opacity:1}.graph-edge-label.search-match .graph-edge-label-bg{fill:var(--color-warning-soft);stroke:var(--color-warning)}.graph-edge-label.search-match .graph-edge-label-icon{stroke:var(--color-warning)}.graph-edge-label.search-match .graph-edge-label-text{fill:var(--color-warning)}.graph-edge-label.related,.graph-edge-label.selected{opacity:1}.graph-edge-label.related .graph-edge-label-bg,.graph-edge-label.selected .graph-edge-label-bg{fill:var(--color-surface-subtle);stroke:var(--color-accent)}.graph-edge-label.related .graph-edge-label-icon,.graph-edge-label.selected .graph-edge-label-icon{stroke:var(--color-accent)}.graph-edge-label.related .graph-edge-label-text,.graph-edge-label.selected .graph-edge-label-text{fill:var(--color-accent);font-weight:700}.graph-viewport--compact-labels .graph-node-label,.graph-viewport--compact-labels .graph-node .graph-node-id,.graph-viewport--compact-labels .graph-edge-label{opacity:0}.graph-viewport--compact-labels .graph-node.project-node .graph-node-label,.graph-viewport--compact-labels .graph-node:is(:hover,:focus-visible,.selected,.search-match) .graph-node-label,.graph-viewport--compact-labels .graph-node:is(:hover,:focus-visible,.selected,.search-match) .graph-node-id,.graph-viewport--compact-labels .graph-edge-label:is(.hovered,.focused,.selected,.search-match){opacity:1}.knowledge-filter-disclosure{flex:none;padding-block:10px}.knowledge-filter-controls{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}@media (width<=720px){.knowledge-filter-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.graph-toolbar>.ui-select{width:100%}.graph-toolbar .search-form{flex:160px;min-width:0}.graph-view-actions{border-left:0;padding-left:0}.knowledge-mode-switch{gap:20px}}#app{height:100%}.feedback-message{align-items:center;gap:12px;display:flex}.feedback-message>span{overflow-wrap:anywhere;flex:1;min-width:0}.feedback-dismiss{min-width:44px;min-height:44px;color:inherit;background:0 0;border:0;flex:none}.status-dot.idle{background:var(--color-muted)}.view-loading{min-height:240px;color:var(--color-muted);place-items:center;font-size:12px;display:grid}.inline-error{color:var(--color-danger)}.inspector-meta>div{min-width:0}.inspector-meta dd{overflow-wrap:anywhere}.inspector-placeholder{color:var(--color-muted);font-size:12px;line-height:1.55}.feedback,.project-card,.knowledge-row,.personal-profile-row{transition:border-color .15s,background-color .15s}.vue-personal-profile{flex-direction:column;padding:18px 32px 20px;display:flex;overflow:hidden}.vue-knowledge-view{flex-direction:column;padding:18px 24px 20px;display:flex;overflow:hidden}.vue-knowledge-view .knowledge-layout{flex:1;min-height:0}.compact-relation-form{grid-template-columns:repeat(3,minmax(180px,1fr)) auto;align-items:end;gap:12px;padding:16px;display:grid}.compact-relation-form label{color:var(--color-muted);gap:5px;font-size:12px;display:grid}.compact-relation-form select{min-width:0}.compact-relation-form .ui-select{width:100%;min-width:0}.compact-relation-preview{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);grid-column:1/-1;gap:4px;padding:11px 12px;display:grid}.compact-relation-preview span{color:var(--color-muted);letter-spacing:.08em;font-size:12px;font-weight:700}.compact-relation-preview strong{color:var(--color-ink);font-size:12px}.compact-relation-preview p{color:var(--color-muted);font-size:12px;line-height:1.5}@media (width<=1180px){.compact-relation-form{grid-template-columns:repeat(2,minmax(180px,1fr))}}.locale-switcher{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-subtle);align-items:center;gap:2px;padding:2px;display:inline-flex}.locale-switcher button{min-width:30px;min-height:26px;color:var(--color-muted);font:inherit;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:0 7px;font-size:12px;font-weight:700}.locale-switcher button:hover{color:var(--color-ink)}.locale-switcher button[aria-pressed=true]{background:var(--color-surface);color:var(--color-ink);box-shadow:0 1px 2px #20342a1f}.is-project-overview{overflow:auto}.is-project-overview>.knowledge-view-heading,.project-overview{width:100%;max-width:var(--page-max);margin-inline:auto}.project-overview{align-content:start;gap:var(--space-6);padding-block:var(--space-4) var(--space-8);flex:1 0 auto;display:grid}.project-overview-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.project-overview-failed{align-items:center;gap:var(--space-3);padding-block:var(--space-6);display:flex}.project-overview-title{gap:var(--space-2);min-width:0;display:grid}.project-overview-title h2{font-size:var(--text-title);letter-spacing:-.02em;overflow-wrap:anywhere;font-weight:650;line-height:1.25}.project-overview-purpose{max-width:var(--measure);color:var(--color-ink-soft);line-height:1.6}.project-overview-actions{align-items:center;gap:var(--space-2);flex:none;display:flex}.project-team{gap:var(--space-3);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);display:grid}.project-team-header{align-items:center;gap:var(--space-3);min-height:var(--control-height);display:flex}.project-team-header h3{font-size:var(--text-section);margin-right:auto;font-weight:650}.project-team-icon,.project-team-chevron{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.project-team-stale{align-items:center;gap:var(--space-2);color:var(--color-warning);font-size:var(--text-meta);display:flex}.project-team-state{justify-content:space-between;align-items:center;gap:var(--space-3);padding-block:var(--space-2);flex-wrap:wrap;display:flex}.project-team-lead{align-items:center;gap:var(--space-4);width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface);color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background-color var(--motion-fast) var(--motion-ease), border-color var(--motion-fast) var(--motion-ease);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.project-team-lead:hover{background:var(--color-surface-hover);border-color:var(--color-border-strong)}.project-team-lead:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.project-team-lead[aria-expanded=true] .project-team-chevron{transform:rotate(180deg)}.project-team-chevron{color:var(--color-muted);transition:transform var(--motion-fast) var(--motion-ease)}.project-team-lead-text{gap:2px;min-width:0;display:grid}.project-team-lead-name{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.project-team-lead-name strong{font-size:16px;font-weight:650}.project-team-responsibility{color:var(--color-ink-soft);max-width:var(--measure);line-height:1.5}.project-team-preview{overflow-wrap:anywhere}.project-team-avatar{background:var(--color-accent-soft);width:40px;height:40px;color:var(--color-accent);border-radius:50%;flex:none;place-items:center;font-size:18px;font-weight:650;display:inline-grid}.project-team-avatar.is-small{width:28px;height:28px;font-size:13px}.project-team-organization{gap:var(--space-4);padding-inline:var(--space-1);display:grid}.project-team-group{gap:var(--space-2);display:grid}.project-team-group h4{color:var(--color-muted);font-size:var(--text-meta);font-weight:600}.project-team-group.is-members{padding-left:var(--space-5);border-left:1px solid var(--color-border-strong)}.project-team-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.project-team-list li{align-items:flex-start;gap:var(--space-3);min-width:0;display:flex}.project-team-person{gap:2px;min-width:0;display:grid}@media (width>=1440px){.project-team-organization{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:start}.project-team-organization>.project-team-list,.project-team-organization>p{grid-column:1/-1}}@media (width<=640px){.project-overview-header{gap:var(--space-3)}.project-overview-actions{flex-wrap:wrap;justify-content:flex-end}.project-team{padding:var(--space-4)}.project-team-lead{gap:var(--space-3);padding:var(--space-3)}}:where(button,input,select,textarea){font:inherit;color:inherit}:where(button,a,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}:where(button):disabled{cursor:not-allowed;opacity:.45}:where(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]),select,textarea){min-width:0;min-height:var(--control-height);border:1px solid var(--color-control-border);border-radius:var(--radius-control);color:var(--color-ink);background:var(--color-surface);transition:border-color var(--motion-fast), box-shadow var(--motion-fast);padding:7px 11px;font-size:14px;line-height:1.5}:where(input,textarea)::placeholder{color:var(--color-faint);opacity:1}:where(textarea){resize:vertical;line-height:1.6}:where(input:not([type=checkbox]):not([type=radio]),textarea,select):hover:not(:disabled){border-color:var(--color-border-strong)}:where(input:not([type=checkbox]):not([type=radio]),textarea,select):focus{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-soft);outline:none}:where(input,textarea,select):disabled{color:var(--color-muted);background:var(--color-surface-subtle);cursor:not-allowed}:where(select){appearance:none;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%2366706a' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m3 4.5 3 3 3-3'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;padding-right:32px}:where(input[type=checkbox]:not([role=switch]),input[type=radio]){appearance:none;border:1.5px solid var(--color-control-border);background:var(--color-surface);cursor:pointer;width:16px;height:16px;transition:background-color var(--motion-fast), border-color var(--motion-fast);flex:none;place-content:center;margin:0;display:inline-grid}:where(input[type=checkbox]:not([role=switch])){border-radius:4px}:where(input[type=radio]){border-radius:50%}:where(input[type=checkbox]:not([role=switch]),input[type=radio]):checked{border-color:var(--color-accent);background:var(--color-accent)}:where(input[type=checkbox]:not([role=switch])):checked:after{content:"";border:solid var(--color-on-accent);border-width:0 0 2px 2px;width:9px;height:5px;margin-top:-2px;transform:rotate(-45deg)}:where(input[type=radio]):checked:after{content:"";background:var(--color-on-accent);border-radius:50%;width:6px;height:6px}:where(input[type=checkbox],input[type=radio]):disabled{opacity:.5;cursor:not-allowed}.ui-button,.quiet-button,.primary-button,.primary-action,.secondary-action,.management-action,.toolbar-action{min-height:var(--control-height);border:1px solid var(--color-border-strong);border-radius:var(--radius-control);color:var(--color-ink);background:var(--color-surface);letter-spacing:.01em;white-space:nowrap;cursor:pointer;transition:background-color var(--motion-fast), border-color var(--motion-fast), color var(--motion-fast);justify-content:center;align-items:center;gap:6px;padding:6px 14px;font-size:13px;font-weight:550;line-height:1.4;text-decoration:none;display:inline-flex}.ui-button:hover:not(:disabled),.quiet-button:hover:not(:disabled),.secondary-action:hover:not(:disabled),.management-action:hover:not(:disabled){background:var(--color-surface-hover);border-color:var(--color-control-border)}.ui-button--primary,.primary-button,.primary-action{color:var(--color-on-accent);background:var(--color-accent);border-color:var(--color-accent)}.ui-button--primary:hover:not(:disabled),.primary-button:hover:not(:disabled),.primary-action:hover:not(:disabled){background:var(--color-accent-hover);border-color:var(--color-accent-hover)}.ui-button--ghost,.toolbar-action{color:var(--color-ink-soft);background:0 0;border-color:#0000}.ui-button--ghost:hover:not(:disabled),.toolbar-action:hover:not(:disabled){background:var(--color-surface-hover);color:var(--color-ink)}.ui-button--danger,.quiet-button.danger{color:var(--color-danger)}.ui-button--danger:hover:not(:disabled),.quiet-button.danger:hover:not(:disabled){background:var(--color-danger-soft);border-color:var(--color-danger-soft)}.ui-button--sm{min-height:var(--control-height-sm);padding:4px 10px;font-size:12px}.ui-button--icon{width:var(--control-height);flex:none;padding:0}.ui-button--icon.ui-button--sm{width:var(--control-height-sm)}.ui-card{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);min-width:0}.ui-badge{background:var(--color-surface-subtle);width:fit-content;color:var(--color-ink-soft);white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:2px 8px;font-size:12px;font-weight:500;line-height:1.5;display:inline-flex}.ui-badge--accent{color:var(--color-accent);background:var(--color-accent-soft)}.ui-badge--success{color:var(--color-success);background:var(--color-success-soft)}.ui-badge--warning{color:var(--color-warning);background:var(--color-warning-soft)}.ui-badge--danger{color:var(--color-danger);background:var(--color-danger-soft)}.ui-muted{color:var(--color-muted)}.ui-meta{color:var(--color-muted);font-size:var(--text-meta)}.ui-num{font-variant-numeric:tabular-nums}.ui-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.ui-empty{color:var(--color-muted);text-align:center;padding:48px 24px;font-size:14px}.ui-field{min-width:0;color:var(--color-ink-soft);gap:6px;font-size:13px;font-weight:500;display:grid}.ui-field>:is(input,textarea,select,.ui-select){width:100%;font-weight:400}.ui-check{color:var(--color-ink);cursor:pointer;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:9px;font-size:13px;line-height:1.5;display:grid}.ui-field-hint{color:var(--color-muted);font-size:12px;font-weight:400}.ui-sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.ui-disclosure{border-top:1px solid var(--color-border);padding-block:14px}.ui-disclosure>summary{cursor:pointer;color:var(--color-ink);justify-content:space-between;align-items:center;gap:12px;font-size:14px;font-weight:600;list-style:none;display:flex}.ui-disclosure>summary::-webkit-details-marker{display:none}.ui-disclosure>summary:after{content:"";border:solid var(--color-muted);width:7px;height:7px;transition:transform var(--motion-fast);border-width:0 1.5px 1.5px 0;margin:0 4px 4px;transform:rotate(45deg)}.ui-disclosure[open]>summary:after{margin-top:5px;transform:rotate(225deg)}.ui-disclosure[open]>summary{margin-bottom:14px}dialog{color:var(--color-ink)}dialog::backdrop{background:var(--color-overlay);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.ui-dialog{border:1px solid var(--color-border);border-radius:var(--radius-dialog);background:var(--color-surface);width:min(560px,100vw - 32px);max-height:calc(100dvh - 48px);box-shadow:var(--shadow-dialog);padding:0;overflow:hidden}.ui-dialog--sm{width:min(420px,100vw - 32px)}.ui-dialog--lg{width:min(760px,100vw - 32px)}.ui-dialog--xl{width:min(1040px,100vw - 32px)}.ui-dialog[open]{animation:ui-dialog-in .18s var(--motion-ease)}@keyframes ui-dialog-in{0%{opacity:0;transform:translateY(6px)scale(.99)}}.ui-dialog__shell{flex-direction:column;min-height:0;max-height:calc(100dvh - 50px);display:flex}.ui-dialog__header{justify-content:space-between;align-items:flex-start;gap:16px;padding:20px 24px 0;display:flex}.ui-dialog__header h2{letter-spacing:-.01em;margin:0;font-size:17px;font-weight:600}.ui-dialog__header p{color:var(--color-muted);margin-top:4px;font-size:13px}.ui-dialog__body{overscroll-behavior:contain;flex-direction:column;gap:16px;min-height:0;padding:18px 24px;display:flex;overflow-y:auto}.ui-dialog__footer{border-top:1px solid var(--color-border);background:var(--color-bg);justify-content:flex-end;align-items:center;gap:8px;padding:14px 24px;display:flex}.ui-dialog__error{border-radius:var(--radius-control);color:var(--color-danger);background:var(--color-danger-soft);justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-size:13px;display:flex}.ui-dialog__error p{margin:0}.ui-dialog__body textarea{resize:vertical}.ui-dialog fieldset{border:0;min-width:0;margin:0;padding:0}.ui-segmented{background:var(--color-surface-subtle);border-radius:10px;gap:2px;padding:3px;display:inline-flex}.ui-segmented>button{min-height:28px;color:var(--color-muted);cursor:pointer;transition:background-color var(--motion-fast), color var(--motion-fast);background:0 0;border:0;border-radius:7px;padding:3px 12px;font-size:13px;font-weight:500}.ui-segmented>button:hover{color:var(--color-ink)}.ui-segmented>button[aria-pressed=true],.ui-segmented>button[aria-selected=true],.ui-segmented>button[aria-checked=true]{color:var(--color-ink);background:var(--color-surface);box-shadow:0 1px 2px #1b1f1d1a}.ui-segmented small{color:var(--color-faint);font-variant-numeric:tabular-nums;margin-left:4px}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:0s!important;animation-duration:0s!important}}