agentworkshop 0.7.41 → 0.7.44

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 (265) hide show
  1. package/.output/nitro.json +1 -1
  2. package/.output/public/_nuxt/B8uy9iRW.js +1 -0
  3. package/.output/public/_nuxt/BGTYYQH-.js +1 -0
  4. package/.output/public/_nuxt/BUmHEJ77.js +2 -0
  5. package/.output/public/_nuxt/BY7YrV_D.js +1 -0
  6. package/.output/public/_nuxt/Bqcgz95s.js +18 -0
  7. package/.output/public/_nuxt/C7UlqPeD.js +1 -0
  8. package/.output/public/_nuxt/CTmDn-YP.js +1 -0
  9. package/.output/public/_nuxt/Cs8pVeVG.js +1 -0
  10. package/.output/public/_nuxt/DKySmNPI.js +14 -0
  11. package/.output/public/_nuxt/Di0NY_ht.js +1 -0
  12. package/.output/public/_nuxt/Du9v6qGB.js +1 -0
  13. package/.output/public/_nuxt/{DGbd-UiG.js → EHlEMRii.js} +1 -1
  14. package/.output/public/_nuxt/Eke1fs-U.js +1 -0
  15. package/.output/public/_nuxt/{DeJykBFf.js → H0BcqZtT.js} +1 -1
  16. package/.output/public/_nuxt/{C4oW1HsE.js → HSYEkkce.js} +1 -1
  17. package/.output/public/_nuxt/{D_OTvQza.js → J9oU00D1.js} +1 -1
  18. package/.output/public/_nuxt/OmpTerminalPanel.BxR5-lvi.css +1 -0
  19. package/.output/public/_nuxt/SSyAPaHc.js +1 -0
  20. package/.output/public/_nuxt/TownView.li4EMQxK.css +1 -0
  21. package/.output/public/_nuxt/VdLk4jLE2.js +1 -0
  22. package/.output/public/_nuxt/_id_.BhsXoEuk.css +1 -0
  23. package/.output/public/_nuxt/_id_.DQyj-WKN.css +1 -0
  24. package/.output/public/_nuxt/{_wsId_.B4WiqkIS.css → _wsId_.CTx-BlfF.css} +1 -1
  25. package/.output/public/_nuxt/aShsv_rG.js +19 -0
  26. package/.output/public/_nuxt/{yF0aYMF1.js → aesgXKSr.js} +3 -3
  27. package/.output/public/_nuxt/agents.B21nUEUX.css +1 -0
  28. package/.output/public/_nuxt/aml.ekTjxFkf.css +1 -0
  29. package/.output/public/_nuxt/builds/latest.json +1 -1
  30. package/.output/public/_nuxt/builds/meta/b5506ef0-f48e-4f14-a6c0-d65e505d0b09.json +1 -0
  31. package/.output/public/_nuxt/channel-templates.DplM1pJ3.css +1 -0
  32. package/.output/public/_nuxt/daq.BdVmoIfe.css +1 -0
  33. package/.output/public/_nuxt/dcw.DCgyzpWV.css +1 -0
  34. package/.output/public/_nuxt/{default.J32SgqFY.css → default.Bh3L2HU8.css} +1 -1
  35. package/.output/public/_nuxt/lHAxdSsj.js +1 -0
  36. package/.output/public/_nuxt/pages.j9rzRocr.css +1 -0
  37. package/.output/public/_nuxt/plugins.DhiZbHU8.css +1 -0
  38. package/.output/public/_nuxt/settings.BRx9rIDg.css +1 -0
  39. package/.output/public/_nuxt/teams.BLlOPB_Z.css +1 -0
  40. package/.output/public/_nuxt/tokens.De8xzszn.css +1 -0
  41. package/.output/public/_nuxt/workshop.D1jFNkrn.css +1 -0
  42. package/.output/server/chunks/_/nitro.mjs +748 -733
  43. package/.output/server/chunks/build/{OmpTerminalPanel-Cu_s4i0A.mjs → OmpTerminalPanel-CVvxpsF7.mjs} +15 -15
  44. package/.output/server/chunks/build/{OmpTerminalPanel-Cu_s4i0A.mjs.map → OmpTerminalPanel-CVvxpsF7.mjs.map} +1 -1
  45. package/.output/server/chunks/build/{TownView--otsnr_7.mjs → TownView-CJ6IsDCc.mjs} +226 -225
  46. package/.output/server/chunks/build/{TownView--otsnr_7.mjs.map → TownView-CJ6IsDCc.mjs.map} +1 -1
  47. package/.output/server/chunks/build/{_id_-Brv-JSvr.mjs → _id_-CVD_H0ir.mjs} +143 -142
  48. package/.output/server/chunks/build/_id_-CVD_H0ir.mjs.map +1 -0
  49. package/.output/server/chunks/build/{_id_-D9pl1OZy.mjs → _id_-CtxMb3qp.mjs} +41 -41
  50. package/.output/server/chunks/build/_id_-CtxMb3qp.mjs.map +1 -0
  51. package/.output/server/chunks/build/{_wsId_-BASfDf0s.mjs → _wsId_-DpY3T-md.mjs} +514 -444
  52. package/.output/server/chunks/build/{_wsId_-BASfDf0s.mjs.map → _wsId_-DpY3T-md.mjs.map} +1 -1
  53. package/.output/server/chunks/build/{agents-CLQqJF2y.mjs → agents-DsCkuXDV.mjs} +49 -46
  54. package/.output/server/chunks/build/agents-DsCkuXDV.mjs.map +1 -0
  55. package/.output/server/chunks/build/{aml-_7FdFL2p.mjs → aml-CT0xKGKI.mjs} +122 -105
  56. package/.output/server/chunks/build/aml-CT0xKGKI.mjs.map +1 -0
  57. package/.output/server/chunks/build/builtin-catalog-edpDcgfL.mjs +117 -0
  58. package/.output/server/chunks/build/builtin-catalog-edpDcgfL.mjs.map +1 -0
  59. package/.output/server/chunks/build/{channel-templates-p6SZNjlM.mjs → channel-templates-Dla9FbYa.mjs} +49 -37
  60. package/.output/server/chunks/build/channel-templates-Dla9FbYa.mjs.map +1 -0
  61. package/.output/server/chunks/build/{daq-DkMvD8sg.mjs → daq-DWWSKGAV.mjs} +89 -88
  62. package/.output/server/chunks/build/daq-DWWSKGAV.mjs.map +1 -0
  63. package/.output/server/chunks/build/{dcw-C1jgVJkO.mjs → dcw-CT8k17_E.mjs} +44 -43
  64. package/.output/server/chunks/build/dcw-CT8k17_E.mjs.map +1 -0
  65. package/.output/server/chunks/build/{default-BE4r0FZN.mjs → default-D3525UFX.mjs} +16 -15
  66. package/.output/server/chunks/build/{default-BE4r0FZN.mjs.map → default-D3525UFX.mjs.map} +1 -1
  67. package/.output/server/chunks/build/{monitor-C0okQaXz.mjs → monitor-Dh2Kvaq5.mjs} +2 -2
  68. package/.output/server/chunks/build/{monitor-C0okQaXz.mjs.map → monitor-Dh2Kvaq5.mjs.map} +1 -1
  69. package/.output/server/chunks/build/{pages-B0bUWnC6.mjs → pages-BHcSBM2D.mjs} +24 -18
  70. package/.output/server/chunks/build/pages-BHcSBM2D.mjs.map +1 -0
  71. package/.output/server/chunks/build/{plugins-lGlUr1lj.mjs → plugins-BNgIi61W.mjs} +23 -17
  72. package/.output/server/chunks/build/plugins-BNgIi61W.mjs.map +1 -0
  73. package/.output/server/chunks/build/{settings-Ddd1qx2Z.mjs → settings-ipYBDWdn.mjs} +45 -44
  74. package/.output/server/chunks/build/settings-ipYBDWdn.mjs.map +1 -0
  75. package/.output/server/chunks/build/{teams-MEDLZdMn.mjs → teams-5lx-CwFa.mjs} +47 -44
  76. package/.output/server/chunks/build/teams-5lx-CwFa.mjs.map +1 -0
  77. package/.output/server/chunks/build/{tokens-C7fTM5C2.mjs → tokens-q-IDT8Io.mjs} +73 -53
  78. package/.output/server/chunks/build/tokens-q-IDT8Io.mjs.map +1 -0
  79. package/.output/server/chunks/build/{town-CoQdblbZ.mjs → town-QJWB5wng.mjs} +3 -2
  80. package/.output/server/chunks/build/town-QJWB5wng.mjs.map +1 -0
  81. package/.output/server/chunks/build/{workshop-BL5bhfs0.mjs → workshop-BIlCj_ZP.mjs} +45 -45
  82. package/.output/server/chunks/build/workshop-BIlCj_ZP.mjs.map +1 -0
  83. package/.output/server/chunks/routes/renderer.mjs +1 -1
  84. package/.output/server/chunks/virtual/entry.mjs +637 -86
  85. package/.output/server/chunks/virtual/entry.mjs.map +1 -1
  86. package/.output/server/chunks/virtual/precomputed.mjs +1 -1
  87. package/.output/server/package.json +1 -1
  88. package/README-zh.md +13 -3
  89. package/README.md +13 -3
  90. package/app/components/AppHeader.vue +961 -959
  91. package/app/components/workshop/A2aRpcDebugger.vue +237 -237
  92. package/app/components/workshop/AgentInspectorDrawer.vue +424 -424
  93. package/app/components/workshop/AgentLanesView.vue +998 -998
  94. package/app/components/workshop/ArtifactCard.vue +120 -120
  95. package/app/components/workshop/AssetLibrary.vue +452 -452
  96. package/app/components/workshop/ChannelSessionList.vue +812 -804
  97. package/app/components/workshop/CommandPalette.vue +269 -269
  98. package/app/components/workshop/Composer.vue +827 -827
  99. package/app/components/workshop/DeviceTwinPanel.vue +643 -643
  100. package/app/components/workshop/EventBlock.vue +602 -602
  101. package/app/components/workshop/FileSelectorModal.vue +188 -188
  102. package/app/components/workshop/InspectorPanel.vue +301 -301
  103. package/app/components/workshop/MemoryPanel.vue +364 -364
  104. package/app/components/workshop/MultiChannelView.vue +189 -189
  105. package/app/components/workshop/TaskBoardView.vue +686 -686
  106. package/app/components/workshop/TaskInspectorDrawer.vue +390 -390
  107. package/app/components/workshop/TranscriptTimeline.vue +601 -601
  108. package/app/components/workshop/blocks/ClusterArtifact.vue +61 -61
  109. package/app/components/workshop/blocks/ClusterError.vue +85 -85
  110. package/app/components/workshop/blocks/ClusterLife.vue +87 -87
  111. package/app/components/workshop/blocks/ClusterMember.vue +95 -93
  112. package/app/components/workshop/blocks/ClusterMemory.vue +84 -84
  113. package/app/components/workshop/blocks/ClusterOther.vue +67 -67
  114. package/app/components/workshop/blocks/ClusterStatus.vue +149 -147
  115. package/app/components/workshop/blocks/ClusterTool.vue +158 -158
  116. package/app/components/workshop/terminal/OmpTerminalPanel.vue +1011 -1011
  117. package/app/components/workshop/town/TownView.vue +56 -56
  118. package/app/middleware/locale-cookie.global.ts +22 -0
  119. package/app/pages/aml/index.vue +24 -2
  120. package/app/pages/daq/[id].vue +11 -11
  121. package/app/pages/daq/index.vue +2316 -2316
  122. package/app/pages/dcw/[id].vue +18 -19
  123. package/app/pages/dcw/index.vue +3 -3
  124. package/app/pages/index.vue +987 -981
  125. package/app/pages/plugins/index.vue +317 -311
  126. package/app/pages/settings.vue +1564 -1562
  127. package/app/pages/tokens.vue +15 -15
  128. package/app/pages/workshop/agents.vue +612 -609
  129. package/app/pages/workshop/channel-templates.vue +18 -11
  130. package/app/pages/workshop/index.vue +668 -668
  131. package/app/pages/workshop/teams.vue +743 -740
  132. package/app/pages/workshop/w/[wsId].vue +704 -704
  133. package/app/plugins/locale-restore.client.ts +16 -1
  134. package/app/utils/builtin-catalog.ts +104 -0
  135. package/config.yml +170 -170
  136. package/docs/full-test-plan.md +2 -3
  137. package/i18n/locales/en.ts +293 -35
  138. package/i18n/locales/zh-CN.ts +265 -7
  139. package/package.json +2 -2
  140. package/scripts/_dbg-perms-e2e.mjs +132 -109
  141. package/scripts/_demo-agentteam-capture.mjs +278 -0
  142. package/scripts/_e2e-ui-functional.mjs +371 -0
  143. package/scripts/_i18n-en-cjk-scan.mjs +28 -0
  144. package/scripts/_i18n-en-verify.mjs +107 -0
  145. package/scripts/_i18n-extra-checks.mjs +53 -0
  146. package/scripts/_i18n-scan-hardcoded.mjs +180 -0
  147. package/scripts/_i18n-verify-keys.mjs +50 -0
  148. package/scripts/_loop-biax-campaign.mjs +15 -9
  149. package/scripts/_sweep-button-contrast.mjs +87 -0
  150. package/scripts/ui/record-demo.mjs +557 -0
  151. package/server/plugins-builtin/diag-bridge/index.mjs +608 -661
  152. package/server/plugins-builtin/rag-bridge/index.mjs +57 -133
  153. package/server/services/workshop/daq/drivers.ts +11 -0
  154. package/.output/public/_nuxt/88GOowgO2.js +0 -1
  155. package/.output/public/_nuxt/BN16aRdQ.js +0 -1
  156. package/.output/public/_nuxt/BWVhZntO.js +0 -1
  157. package/.output/public/_nuxt/BXxH0UQE.js +0 -1
  158. package/.output/public/_nuxt/BsROmY89.js +0 -1
  159. package/.output/public/_nuxt/C0ZrS1KL.js +0 -19
  160. package/.output/public/_nuxt/C4s_niy-.js +0 -14
  161. package/.output/public/_nuxt/D6mbFA-a.js +0 -1
  162. package/.output/public/_nuxt/DS8qj8EL.js +0 -1
  163. package/.output/public/_nuxt/DUjW5Yq5.js +0 -1
  164. package/.output/public/_nuxt/Dap5PmTL.js +0 -2
  165. package/.output/public/_nuxt/Dqw1lpr-.js +0 -1
  166. package/.output/public/_nuxt/DvLxILQP.js +0 -1
  167. package/.output/public/_nuxt/OmpTerminalPanel.B_Pl5Ynm.css +0 -1
  168. package/.output/public/_nuxt/TownView.f-YOdXRs.css +0 -1
  169. package/.output/public/_nuxt/_id_.D9ymtHB5.css +0 -1
  170. package/.output/public/_nuxt/_id_.jf-_8E_c.css +0 -1
  171. package/.output/public/_nuxt/agents.ZD0rVdHE.css +0 -1
  172. package/.output/public/_nuxt/aml.BN8ZEW4h.css +0 -1
  173. package/.output/public/_nuxt/builds/meta/78a295bb-2072-48a4-8b46-6d545fdae743.json +0 -1
  174. package/.output/public/_nuxt/channel-templates.BOtahzPi.css +0 -1
  175. package/.output/public/_nuxt/daq.DjSgY94l.css +0 -1
  176. package/.output/public/_nuxt/dcw.8Y7FqCVN.css +0 -1
  177. package/.output/public/_nuxt/eqq3wWQF.js +0 -18
  178. package/.output/public/_nuxt/pages.D7aSDlUI.css +0 -1
  179. package/.output/public/_nuxt/plugins.sb4nDGqr.css +0 -1
  180. package/.output/public/_nuxt/qr6R6Ha1.js +0 -1
  181. package/.output/public/_nuxt/settings.BTgR-NiE.css +0 -1
  182. package/.output/public/_nuxt/teams.CxnxKVVs.css +0 -1
  183. package/.output/public/_nuxt/tokens.BFY7qv4f.css +0 -1
  184. package/.output/public/_nuxt/workshop.CR_QzeAN.css +0 -1
  185. package/.output/server/chunks/build/_id_-Brv-JSvr.mjs.map +0 -1
  186. package/.output/server/chunks/build/_id_-D9pl1OZy.mjs.map +0 -1
  187. package/.output/server/chunks/build/agents-CLQqJF2y.mjs.map +0 -1
  188. package/.output/server/chunks/build/aml-_7FdFL2p.mjs.map +0 -1
  189. package/.output/server/chunks/build/channel-templates-p6SZNjlM.mjs.map +0 -1
  190. package/.output/server/chunks/build/daq-DkMvD8sg.mjs.map +0 -1
  191. package/.output/server/chunks/build/dcw-C1jgVJkO.mjs.map +0 -1
  192. package/.output/server/chunks/build/pages-B0bUWnC6.mjs.map +0 -1
  193. package/.output/server/chunks/build/plugins-lGlUr1lj.mjs.map +0 -1
  194. package/.output/server/chunks/build/settings-Ddd1qx2Z.mjs.map +0 -1
  195. package/.output/server/chunks/build/teams-MEDLZdMn.mjs.map +0 -1
  196. package/.output/server/chunks/build/tokens-C7fTM5C2.mjs.map +0 -1
  197. package/.output/server/chunks/build/town-CoQdblbZ.mjs.map +0 -1
  198. package/.output/server/chunks/build/workshop-BL5bhfs0.mjs.map +0 -1
  199. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.continue.json +0 -1
  200. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.json +0 -1
  201. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/054bb4bc4e4217a2ab0b0c6b663747214a9af464f5568ea60e784704e340bb0f.source +0 -153
  202. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/0554197c3d2bac203a1f5c48a5d52495d1336db1bd7aa4f4c19875810363e684.source +0 -153
  203. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/05c203d12a954fffba942e1d626e3f5fec05b18a5aef2bac003b7884a4b77406.source +0 -431
  204. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/145a6e6ba811af35aed31e0cc3211f53706a14980fa069ee9e3c1591139f96f0.source +0 -180
  205. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/1ae0fb281f97899c025e368ca73f41349b01fb5f85b19e08d7ebccff49095ed5.source +0 -112
  206. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/20ee9967aa0541c516db7575bdd4a1a745939bc7016bd10d7635903113edb8ec.source +0 -227
  207. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/233751843aeba9d4c5263f275b8102de00443c06f286918cbd23e0b6729e01aa.source +0 -131
  208. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/263c2e05b425e5c322e60c6475279f963bab3a873eb521b21df7fec935a46597.source +0 -160
  209. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/2ac5eaac28eaaee2178c4b32014df8e732f9dd432a285a872f5b7f31c1395fa4.source +0 -157
  210. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/33a0db0d2d95d2c11d0720090458e5fba1425376f5ceb5b422d1d3471be3226b.source +0 -348
  211. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/359e474ae83db35e4615d3728de6bf694b64d4dce9b536730a3b6518f9c0494a.source +0 -296
  212. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/37a4c3c31c4b70f6b719c53d1e9c4fcba603f31adfdd11bb6ef9f0d094923c56.source +0 -285
  213. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/461feca1c14a695eb8b0f17a6f95fe97eeceabc0510faaea4ba6d25bde147d8d.source +0 -217
  214. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/4cfadbda8591f29d5e1e230dc000e701b756e850441b3900fb596a4d2f6e98c2.source +0 -301
  215. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/50ca2810cf0b248c96948994c0c404531bbad6e553166b6816b3b03bfa0f75d2.source +0 -151
  216. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/52d9e8cb591a9ae86e238c3620a610cd386717bee222c0f37b25b2ac7e523dc4.source +0 -135
  217. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/6c87daafa4c006560a954636a97333f6123153c9d34d96203f7ee3a14e556357.source +0 -156
  218. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/77bc47854b577900621cacf1697f81fa2bc005af129d37614a97a3441c08f99f.source +0 -72
  219. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/7bbb789d3a527817118cf8399ed1861d6a962ade10878fd07223435d333a7089.source +0 -469
  220. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/86b7c1daafc8b60ba9982dde5bf1bcc74265709483c176e71f23ec6fc267451f.source +0 -259
  221. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/8df66d62bd41984d0970e8236882080c5085ac937d07a29779463d6a03b37c76.source +0 -97
  222. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/9962f2d1b3a85137bd40cc835725600b39f89ee02a27c06b2e0402e1eafde115.source +0 -277
  223. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/a1090ea066b792cb201739f4994e37bf7c12f52e805239a1eab87f18a537f266.source +0 -171
  224. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/a5241091650134d0919897e086a606a3846c8b2b54f8b4c84a8696c145ac3e9e.source +0 -425
  225. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/af19fa4c6e34d5540028be4b17600161283af3a2a2dfc61a3fdc0834436a0c14.source +0 -99
  226. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/b3713d78e2b2f93905ff6be8d58a8d0a2f42dea322eb67c987fda22ff6a084d5.source +0 -325
  227. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/b3849943c3aff102d1af815631fc843a2a52c17646a4b04696ece323e483bbec.source +0 -332
  228. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/bac735a3803a6650b7f1eb8f587e6dc5c68ea055000c3c99a11789438b78e837.source +0 -43
  229. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/d32c24d61eb8b33c73e5a8fc7e4dc7ef437aed238ee4371c2b00617e6104090a.source +0 -154
  230. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/d5170dc9a9879fda04fdf91d8a110d4efb6787ee38dda596d4da899883d36a72.source +0 -531
  231. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/dc59bcd7bb397be63ba2f2c3fec23f3782dcb17d2d75a9981eeced761f33eb32.source +0 -439
  232. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/eb5ff8cf66b92aec7bf6726781d8df74faa2b030c3aaac17d6b00c1fc04c9b32.source +0 -323
  233. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/f10615a6fae18436e70d1201b2d44fdae3174a3aa7bb4db97dea1b3ed291d721.source +0 -433
  234. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/f36d3e271668bc1260c2823542d22dbf1d0f7041ff16b1ac175bce2256e582ca.source +0 -280
  235. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/f94449380af09f31ac352152007146a75cc80bae8d6411ffe57b2c56f933b0ff.source +0 -117
  236. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/fe4dfd81178fd6b648335f6405d9ede71319aebde796008e50db21f8adf44c99.source +0 -160
  237. package/scripts/.mimosa/hook-state/sess_aeaecb58-8833-4b83-b93c-050467d21e03.mtxwtxme-61028-1f4519fbc4.baseline/ffb4e3aa548cfdadabaa44ab599f9b6a3ca6288176a2cc7a4b2fc2a12b5fb848.source +0 -101
  238. package/scripts/.mimosa/hook-status/sess_aeaecb58-8833-4b83-b93c-050467d21e03-d944d71bb3.json +0 -14
  239. package/scripts/_dbg-audit-all-pages.mjs +0 -43
  240. package/scripts/_dbg-daq-frames-e2e.mjs +0 -118
  241. package/scripts/_dbg-daq-rowstyle-verify.mjs +0 -112
  242. package/scripts/_dbg-hitl-timeout-e2e.mjs +0 -93
  243. package/scripts/_dbg-live-line-e2e.mjs +0 -279
  244. package/scripts/_dbg-minimal-omp.mjs +0 -77
  245. package/scripts/_dbg-mode-nav.mjs +0 -173
  246. package/scripts/_dbg-real-scenario-timeline.log +0 -55
  247. package/scripts/_dbg-team-repro.mjs +0 -76
  248. package/scripts/_dbg-town-agents-probe.mjs +0 -60
  249. package/scripts/_dbg-visual-acceptance.mjs +0 -63
  250. package/scripts/_townview_style.css +0 -1185
  251. package/scripts/_townview_template.html +0 -1215
  252. package/server/data/agent-node-bindings.json +0 -554
  253. package/server/data/daq-templates.json +0 -16
  254. package/server/data/daqs.json +0 -7464
  255. package/server/data/dcw-lines.json +0 -1787
  256. package/server/data/dcw-products.json +0 -1626
  257. package/server/data/dcw-recipes.json +0 -4672
  258. package/server/data/dcw-rollback.json +0 -20754
  259. package/server/data/dcw-runs.json +0 -6354
  260. package/server/data/dcw-templates.json +0 -146
  261. package/server/data/dcw-writes.json +0 -15650
  262. package/server/data/dcws.json +0 -9033
  263. package/server/data/device-twins.json +0 -133
  264. package/server/data/line-runs.json +0 -322
  265. package/server/data/scene-layouts.json +0 -277
@@ -0,0 +1 @@
1
+ import{a as e}from"./BU83-NnX.js";import{w as t}from"./DdD9mCHM.js";import{$ as n,Ht as r,R as i,S as a,Ut as o,V as s,Vt as c,W as l,b as u,ct as ee,d,dt as te,f,h as p,i as m,m as h,nt as g,p as _,pt as v,tt as y,xt as b,y as x}from"./CSkxz2NX.js";import{d as S,f as C,l as ne,u as w}from"./D6uzXueg.js";import{t as re}from"./YnQxK3eG.js";import{n as ie,t as ae}from"./xh3_vYcu.js";import{n as oe}from"./KZQX7xoM.js";import{t as se}from"./aWWIh8YL.js";import{t as ce}from"./DBHNsT1Y.js";import{t as le}from"./DzbFpZRk.js";import{t as ue}from"./BYhEUx8t.js";import{t as de}from"./CYWVXZTS2.js";import{n as fe,r as pe,t as me}from"./DHFrCUxA2.js";import{t as he}from"./DZtm4l-P2.js";import{t as ge}from"./CClOy-Hz2.js";import{t as _e}from"./DIaZ2PTo2.js";import{t as ve}from"./DeyBFhKH2.js";import{t as T}from"./BDNMzG2s2.js";import{t as E}from"./D0ZBQrN_2.js";import{t as ye}from"./BN6iuJEg2.js";import{t as be}from"./zq5t1vyX.js";var xe={class:`settings-page`},Se={class:`aw-page-head`},Ce={class:`aw-kicker`},we={class:`aw-stamp`},Te={class:`settings-layout`},Ee={class:`settings-nav`},De=[`onClick`],Oe={class:`settings-body`},ke={class:`section-title`},Ae={class:`section-desc`},je={class:`set-row`},Me={class:`set-text`},Ne={class:`set-title`},Pe={class:`set-sub`},Fe={class:`color-swatches`},Ie=[`title`,`onClick`],Le={class:`swatch-label`},Re={key:0,class:`i-tabler-check swatch-check`},ze={class:`toggle-row`},Be={class:`set-text`},Ve={class:`set-title`},He={class:`set-sub`},Ue=[`aria-checked`],We={class:`toggle-row`},Ge={class:`set-text`},Ke={class:`set-title`},qe={class:`set-sub`},Je={class:`section-title`},Ye={class:`section-desc`},Xe={class:`rt-groups-bar`},Ze=[`title`],Qe={class:`rt-groups-count`},$e={key:1,class:`rt-group-form`},et=[`disabled`],tt=[`role`,`tabindex`,`onClick`,`onKeydown`],nt=[`onKeydown`],rt=[`onClick`],it={key:3,class:`rt-group-title`},at={class:`rt-group-badge`},ot={class:`rt-group-fields`},st={key:4,class:`rt-group-desc`},ct=[`disabled`,`title`,`onClick`],lt=[`disabled`,`title`,`onClick`],ut=[`disabled`,`title`,`onClick`],dt=[`disabled`,`title`,`onClick`],ft=[`disabled`,`title`,`onClick`],pt={class:`rt-group-body`},mt={key:0,class:`rt-group-empty`},ht={class:`rt-main`},gt={class:`rt-title`},_t={class:`rt-sub`},vt={class:`rt-ctrl`},yt={key:3,class:`rt-color`},bt=[`value`,`onInput`],xt=[`title`,`onClick`],St={class:`rt-actions`},Ct=[`disabled`],wt={class:`rt-path aw-mono`},Tt={class:`rt-group-title plugin-group-title`},Et={class:`section-desc`},Dt={key:2,class:`identity-note`},Ot={class:`plugin-main`},kt={class:`rt-title`},At={class:`aw-mono`},jt={key:0,class:`rt-tag`},Mt={key:1,class:`rt-tag src-runtime`},Nt={key:2,class:`rt-tag restart`},Pt={class:`rt-sub`},Ft={class:`rt-ctrl`},It={key:0,class:`plugin-health faint`},Lt=[`onClick`],Rt=[`aria-checked`,`disabled`,`onClick`],zt={key:0,class:`identity-note`},Bt={class:`section-title`},Vt={class:`section-desc`},Ht={class:`aw-mono`},Ut={class:`identity-note`},Wt=`aw.settings.groups.collapsed`,D=T(a({__name:`settings`,setup(a){let{t:T,locale:D,locales:Gt,setLocale:Kt}=oe(),O=ie(),k=ae(),qt=t().public,A=_e(),j=ye(),M=v(`appearance`),N=ve(),P=v({}),F=v(new Set),I=v(!1),L=v(null);function R(){P.value={...N.effective},F.value=new Set}n(()=>N.loaded,e=>{e&&R()},{immediate:!0}),n(()=>N.effective,()=>{F.value.size===0&&R()},{deep:!0});function z(e){F.value.add(e),L.value=null}async function Jt(){if(F.value.size){I.value=!0,L.value=null;try{let e={};for(let t of F.value)e[t]=P.value[t];let t=await N.patch(e);R();let n=t.restartRequired??[];L.value=n.length?{type:`warning`,text:T(`settings.runtime.restartNotice`,{keys:n.join(`, `)})}:{type:`success`,text:T(`settings.runtime.savedLive`)}}catch(e){let t=e;L.value={type:`error`,text:t?.response?.data?.message||t?.message||String(e)}}finally{I.value=!1}}}async function Yt(e){try{await N.patch({[e]:null}),F.value.delete(e),P.value[e]=N.effective[e],L.value={type:`success`,text:T(`settings.runtime.keyReset`,{key:e})}}catch(e){let t=e;L.value={type:`error`,text:t?.response?.data?.message||t?.message||String(e)}}}async function Xt(){try{await N.resetAll(),R(),L.value={type:`success`,text:T(`settings.runtime.resetAllDone`)}}catch(e){let t=e;L.value={type:`error`,text:t?.response?.data?.message||t?.message||String(e)}}}let Zt={server:`settings.runtime.groupServer`,app:`settings.runtime.groupApp`,api:`settings.runtime.groupApi`,theme:`settings.runtime.groupTheme`,i18n:`settings.runtime.groupI18n`,security:`settings.runtime.groupSecurity`,daq:`settings.runtime.groupDaq`,memory:`settings.runtime.groupMemory`,omp:`settings.runtime.groupOmp`,harness:`settings.runtime.groupHarness`,dcw:`settings.runtime.groupDcw`,workshop:`settings.runtime.groupWorkshop`,backup:`settings.runtime.groupBackup`,retention:`settings.runtime.groupRetention`,log:`settings.runtime.groupLog`,plugins:`settings.runtime.groupPlugins`};function Qt(e){if(e.labelKey&&T(e.labelKey)!==e.labelKey)return T(e.labelKey);if(e.label&&e.label!==e.id)return e.label;let t=Zt[e.id];return t?T(t):e.label||e.id}function $t(e){return e.source===`plugin`?e.plugin?`${T(`settings.groups.srcPlugin`)}: ${e.plugin}`:T(`settings.groups.srcPlugin`):e.source===`user`?T(`settings.groups.srcUser`):T(`settings.groups.srcBuiltin`)}function en(e){return e===`runtime`?`src-runtime`:e===`env`?`src-env`:`src-yaml`}function tn(e){let t=e.labelKey;return t&&T(t)!==t?T(t):e.label}let B=v({});function nn(){try{B.value=JSON.parse(localStorage.getItem(Wt)??`{}`)??{}}catch{B.value={}}}function rn(){try{localStorage.setItem(Wt,JSON.stringify(B.value))}catch{}}function V(e){let t=B.value[e.id];return t===void 0?e.collapsed:t}function H(e){e.collapsible&&(B.value={...B.value,[e.id]:!V(e)},rn())}function an(){let e=N.groups.filter(e=>e.collapsible),t=e.some(e=>!V(e)),n={...B.value};for(let r of e)n[r.id]=t;B.value=n,rn()}let on=d(()=>N.groups.filter(e=>e.collapsible).some(e=>!V(e))),sn=d(()=>A.isAdmin),U=v(!1),W=te({label:``,description:``,collapsed:!1}),G=v(``),K=v(``),q=v(``);async function cn(){if(W.label.trim()){G.value=`create`;try{await N.createGroup({label:W.label.trim(),description:W.description.trim(),collapsed:W.collapsed}),U.value=!1,W.label=``,W.description=``,W.collapsed=!1,e.success(T(`settings.groups.created`))}catch(t){e.error(E(t,T(`settings.groups.createFail`)))}finally{G.value=``}}}function ln(e){K.value=e.id,q.value=e.label}async function un(t){let n=q.value.trim();if(K.value=``,n){G.value=t;try{await N.updateGroup(t,{label:n}),e.success(T(`settings.groups.renamed`))}catch(t){e.error(E(t,T(`settings.groups.updateFail`)))}finally{G.value=``}}}async function dn(t,n){let r=[...N.groups],i=r.findIndex(e=>e.id===t),a=i+n;if(i<0||a<0||a>=r.length)return;let o=r[i],s=r[a];G.value=t;try{let e=[...r];e.splice(i,1),e.splice(a,0,o);let t=(a+1)*10,n=(i+1)*10;await N.updateGroup(o.id,{order:t}),await N.updateGroup(s.id,{order:n})}catch(t){e.error(E(t,T(`settings.groups.updateFail`)))}finally{G.value=``}}async function fn(t){G.value=t.id;try{await N.updateGroup(t.id,{collapsed:!t.collapsed})}catch(t){e.error(E(t,T(`settings.groups.updateFail`)))}finally{G.value=``}}async function pn(t){let n=t.fieldCount??0;if(n>0){e.warning(T(`settings.groups.deleteHasFields`,{p0:Qt(t),p1:n}));return}G.value=t.id;try{await N.deleteGroup(t.id),e.success(T(`settings.groups.deleted`))}catch(t){e.error(E(t,T(`settings.groups.deleteFail`)))}finally{G.value=``}}let J=v([]),Y=v(!1),mn=v(!1),X=v(new Set),Z=v({}),hn=e=>(e.routes??[]).some(e=>String(e.path||``).endsWith(`/health`));async function gn(){Y.value=!0;try{let e=await j.listPlugins(),t=e?.plugins??e?.data?.plugins??[];J.value=Array.isArray(t)?t:[],mn.value=!0}catch(t){e.error(E(t,T(`plugins.loadFail`)))}finally{Y.value=!1}}async function _n(t,n){if(!X.value.has(t.name)){X.value.add(t.name);try{n?await j.enablePlugin(t.name):await j.disablePlugin(t.name),t.enabled=n,e.success(T(n?`plugins.enabled`:`plugins.disabled`))}catch(t){e.error(E(t,T(`plugins.adminRequired`)))}finally{X.value.delete(t.name)}}}async function vn(e){if(hn(e)){Z.value={...Z.value,[e.name]:`checking`};try{let t=await j.pluginHealth(e.name);Z.value={...Z.value,[e.name]:yn(e.name,t)}}catch(t){Z.value={...Z.value,[e.name]:{ok:!1,reason:E(t,T(`plugins.loadFail`))}}}}}function yn(e,t){if(e===`rag-bridge`){let e=t.backend,n=t.web,r=!!e?.ok&&!!n?.ok,i=e?.ok?n?.error||n?.status||`web`:e?.error||e?.status||`backend`;return r?{ok:!0}:{ok:!1,reason:i}}if(e===`diag-bridge`){let e=t.remote;return e?.status===`ok`?{ok:!0}:{ok:!1,reason:e?.status||`remote`}}return{ok:!0}}function bn(e){return Z.value[e]===`checking`}function Q(e){let t=Z.value[e];return t&&t!==`checking`?t:null}function xn(e){return X.value.has(e)}n(M,e=>{e===`runtime`&&!mn.value&&!Y.value&&A.isLoggedIn&&gn()},{immediate:!0}),i(nn);let $=String(qt.primaryColor),Sn=[{value:$,label:T(`settings.accentInk`)},{value:`#c9963f`,label:T(`settings.accentStone`)},{value:`#44615a`,label:T(`settings.accentMoss`)},{value:`#3f6094`,label:T(`settings.accentSlate`)},{value:`#6b5aa0`,label:T(`settings.accentPlum`)},{value:`#9c5744`,label:T(`settings.accentClay`)}],Cn=d(()=>O.accent??$);function wn(t){O.setAccent(t===$?null:t),e.success(T(`settings.accentApplied`))}function Tn(){O.setAccent(null),e.success(T(`settings.accentReset`))}let En=d(()=>Gt.value.map(e=>({label:e.name,value:e.code}))),Dn=e=>{e!=null&&(re(`aw.locale`,{maxAge:31536e3}).value=String(e),localStorage.setItem(`aw.locale`,String(e)),Kt(String(e)),window.location.reload())},On=d(()=>[{label:T(`home.fields.name`),value:k.name},{label:T(`home.fields.version`),value:`v${k.version}`},{label:T(`home.fields.mode`),value:k.mode},{label:T(`home.fields.apiBase`),value:`${k.apiBase} (${qt.apiTimeout}ms)`},{label:T(`home.fields.primary`),value:$},{label:`i18n`,value:D.value}]),kn=d(()=>[{key:`appearance`,icon:`i-tabler-palette`,label:T(`settings.theme`)},{key:`runtime`,icon:`i-tabler-settings`,label:T(`settings.runtimeTab`)},{key:`system`,icon:`i-tabler-server-2`,label:T(`settings.systemTab`)}]);return(e,t)=>{let n=se,i=le,a=ce,d=de,te=me,v=ge,re=he,ie=be,ae=pe,oe=fe,_e=ue;return s(),p(`div`,xe,[f(`div`,Se,[f(`div`,null,[f(`p`,Ce,o(b(T)(`menu.system`))+` / settings `,1),f(`h1`,null,o(b(T)(`settings.title`)),1)]),f(`span`,we,`v`+o(b(k).version),1)]),u(_e,{bordered:!1,class:`settings-card`},{default:y(()=>[f(`div`,Te,[f(`div`,Ee,[(s(!0),p(m,null,l(b(kn),e=>(s(),p(`button`,{key:e.key,class:c([`nav-item`,{active:b(M)===e.key}]),onClick:t=>M.value=e.key},[f(`span`,{class:c(e.icon)},null,2),f(`span`,null,o(e.label),1)],10,De))),128))]),f(`div`,Oe,[g(f(`div`,null,[f(`h3`,ke,o(b(T)(`settings.theme`)),1),f(`p`,Ae,o(b(T)(`settings.appearanceDesc`)),1),f(`div`,je,[f(`div`,Me,[f(`div`,Ne,o(b(T)(`settings.primaryColor`)),1),f(`div`,Pe,o(b(T)(`settings.accentDesc`)),1)])]),f(`div`,Fe,[(s(),p(m,null,l(Sn,e=>f(`button`,{key:e.value,class:c([`swatch`,{on:b(Cn).toLowerCase()===e.value.toLowerCase()}]),style:r({"--sw":e.value}),title:e.label,onClick:t=>wn(e.value)},[t[10]||=f(`span`,{class:`swatch-dot`},null,-1),f(`span`,Le,o(e.label),1),b(Cn).toLowerCase()===e.value.toLowerCase()?(s(),p(`span`,Re)):h(``,!0)],14,Ie)),64))]),f(`button`,{class:`aw-pill outline reset-btn`,onClick:Tn},[t[11]||=f(`span`,{class:`i-tabler-rotate`},null,-1),x(` `+o(b(T)(`settings.accentResetAction`)),1)]),f(`div`,ze,[f(`div`,Be,[f(`div`,Ve,o(b(O).isDark?b(T)(`common.dark`):b(T)(`common.light`)),1),f(`div`,He,o(b(T)(`settings.darkDesc`)),1)]),f(`button`,{class:c([`switch`,{on:b(O).isDark}]),role:`switch`,"aria-checked":b(O).isDark,onClick:t[0]||=e=>b(O).toggleDark()},[...t[12]||=[f(`span`,{class:`knob`},null,-1)]],10,Ue)]),f(`div`,We,[f(`div`,Ge,[f(`div`,Ke,o(b(T)(`header.language`)),1),f(`div`,qe,o(b(T)(`settings.languageDesc`)),1)]),u(n,{value:b(D),options:b(En),style:{width:`140px`},onChange:Dn},null,8,[`value`,`options`])])],512),[[w,b(M)===`appearance`]]),g(f(`div`,null,[f(`h3`,Je,o(b(T)(`settings.runtimeTab`)),1),f(`p`,Ye,o(b(T)(`settings.runtime.desc`)),1),b(L)?(s(),_(i,{key:0,type:b(L).type,"show-icon":``,class:`rt-notice`,message:b(L).text},null,8,[`type`,`message`])):h(``,!0),f(`div`,Xe,[f(`button`,{class:`aw-pill outline rt-groups-toggle`,title:b(T)(`settings.groups.toggleAll`),onClick:an},[f(`span`,{class:c(b(on)?`i-tabler-chevrons-up`:`i-tabler-chevrons-down`)},null,2),x(` `+o(b(on)?b(T)(`settings.groups.collapseAll`):b(T)(`settings.groups.expandAll`)),1)],8,Ze),f(`span`,Qe,o(b(T)(`settings.groups.count`,{p0:b(N).groups.length})),1),b(sn)?(s(),p(`button`,{key:0,class:`aw-pill outline rt-groups-add`,onClick:t[1]||=e=>U.value=!b(U)},[t[13]||=f(`span`,{class:`i-tabler-plus`},null,-1),x(` `+o(b(T)(`settings.groups.newGroup`)),1)])):h(``,!0)]),b(sn)&&b(U)?(s(),p(`div`,$e,[u(a,{value:b(W).label,"onUpdate:value":t[2]||=e=>b(W).label=e,placeholder:b(T)(`settings.groups.namePlaceholder`),style:{width:`220px`},onPressEnter:cn},null,8,[`value`,`placeholder`]),u(a,{value:b(W).description,"onUpdate:value":t[3]||=e=>b(W).description=e,placeholder:b(T)(`settings.groups.descPlaceholder`),style:{width:`320px`},onPressEnter:cn},null,8,[`value`,`placeholder`]),u(d,{checked:b(W).collapsed,"onUpdate:checked":t[4]||=e=>b(W).collapsed=e},{default:y(()=>[x(o(b(T)(`settings.groups.defaultCollapsed`)),1)]),_:1},8,[`checked`]),f(`button`,{class:`aw-pill primary`,disabled:!b(W).label.trim()||b(G)===`create`,onClick:cn},o(b(G)===`create`?`…`:b(T)(`settings.groups.create`)),9,et),f(`button`,{class:`aw-pill outline`,onClick:t[5]||=e=>U.value=!1},o(b(T)(`settings.groups.cancel`)),1)])):h(``,!0),(s(!0),p(m,null,l(b(N).groups,e=>(s(),p(`section`,{key:e.id,class:c([`rt-group`,{collapsed:V(e),"grp-plugin":e.source===`plugin`}])},[f(`header`,{class:`rt-group-head`,role:e.collapsible?`button`:void 0,tabindex:e.collapsible?0:void 0,onClick:t=>H(e),onKeydown:[S(C(t=>H(e),[`prevent`]),[`enter`]),S(C(t=>H(e),[`prevent`]),[`space`])]},[e.collapsible?(s(),p(`span`,{key:0,class:c([`rt-caret`,V(e)?`i-tabler-chevron-right`:`i-tabler-chevron-down`])},null,2)):h(``,!0),e.icon?(s(),p(`span`,{key:1,class:c([`rt-group-icon`,e.icon])},null,2)):h(``,!0),b(K)===e.id?(s(),p(m,{key:2},[g(f(`input`,{"onUpdate:modelValue":t[6]||=e=>ee(q)?q.value=e:null,class:`rt-rename aw-mono`,onClick:t[7]||=C(()=>{},[`stop`]),onKeydown:[S(C(t=>un(e.id),[`prevent`]),[`enter`]),t[8]||=S(C(e=>K.value=``,[`prevent`]),[`esc`])]},null,40,nt),[[ne,b(q)]]),f(`button`,{class:`mini-btn`,onClick:C(t=>un(e.id),[`stop`])},o(b(T)(`settings.groups.ok`)),9,rt)],64)):(s(),p(`h4`,it,o(Qt(e)),1)),f(`span`,at,o($t(e)),1),f(`span`,ot,o(b(T)(`settings.groups.fields`,{p0:e.fieldCount??0})),1),e.description?(s(),p(`span`,st,o(e.description),1)):h(``,!0),b(sn)&&e.source!==`plugin`?(s(),p(`span`,{key:5,class:`rt-group-ops`,onClick:t[9]||=C(()=>{},[`stop`])},[f(`button`,{class:`mini-btn`,disabled:b(G)===e.id,title:b(T)(`settings.groups.moveUp`),onClick:t=>dn(e.id,-1)},[...t[14]||=[f(`span`,{class:`i-tabler-arrow-up`},null,-1)]],8,ct),f(`button`,{class:`mini-btn`,disabled:b(G)===e.id,title:b(T)(`settings.groups.moveDown`),onClick:t=>dn(e.id,1)},[...t[15]||=[f(`span`,{class:`i-tabler-arrow-down`},null,-1)]],8,lt),f(`button`,{class:`mini-btn`,disabled:b(G)===e.id,title:b(T)(`settings.groups.rename`),onClick:t=>ln(e)},[...t[16]||=[f(`span`,{class:`i-tabler-pencil`},null,-1)]],8,ut),f(`button`,{class:`mini-btn`,disabled:b(G)===e.id,title:b(T)(`settings.groups.defaultCollapsed`),onClick:t=>fn(e)},[f(`span`,{class:c(e.collapsed?`i-tabler-chevrons-down`:`i-tabler-chevrons-up`)},null,2)],8,dt),e.source===`user`?(s(),p(`button`,{key:0,class:`mini-btn`,disabled:b(G)===e.id,title:b(T)(`settings.groups.delete`),onClick:t=>pn(e)},[...t[17]||=[f(`span`,{class:`i-tabler-trash`},null,-1)]],8,ft)):h(``,!0)])):h(``,!0)],40,tt),g(f(`div`,pt,[e.fieldCount??0?h(``,!0):(s(),p(`p`,mt,o(b(T)(`settings.groups.emptyHint`)),1)),(s(!0),p(m,null,l(b(N).fieldsOf(e.id),e=>(s(),p(`div`,{key:e.key,class:`rt-row`},[f(`div`,ht,[f(`div`,gt,[x(o(tn(e))+` `,1),f(`span`,{class:c([`rt-tag`,en(b(N).sourceOf(e.key))])},o(b(N).sourceOf(e.key)),3),f(`span`,{class:c([`rt-tag`,e.applies])},o(e.applies===`live`?b(T)(`settings.runtime.live`):b(T)(`settings.runtime.restart`)),3)]),f(`div`,_t,o(e.description),1)]),f(`div`,vt,[e.type===`number`?(s(),_(te,{key:0,value:b(P)[e.key],"onUpdate:value":t=>b(P)[e.key]=t,min:e.min,max:e.max,onChange:t=>z(e.key)},null,8,[`value`,`onUpdate:value`,`min`,`max`,`onChange`])):e.type===`boolean`?(s(),_(v,{key:1,checked:b(P)[e.key],"onUpdate:checked":t=>b(P)[e.key]=t,onChange:t=>z(e.key)},null,8,[`checked`,`onUpdate:checked`,`onChange`])):e.type===`select`?(s(),_(n,{key:2,value:b(P)[e.key],"onUpdate:value":t=>b(P)[e.key]=t,style:{width:`160px`},options:(e.options??[]).map(e=>({label:e,value:e})),onChange:t=>z(e.key)},null,8,[`value`,`onUpdate:value`,`options`,`onChange`])):e.type===`color`?(s(),p(`span`,yt,[f(`input`,{type:`color`,value:String(b(P)[e.key]??`#35e0a0`),onInput:t=>{b(P)[e.key]=t.target.value,z(e.key)}},null,40,bt),u(a,{value:String(b(P)[e.key]??``),style:{width:`110px`},class:`aw-mono`,onChange:t=>{b(P)[e.key]=t.target.value,z(e.key)}},null,8,[`value`,`onChange`])])):(s(),_(a,{key:4,value:b(P)[e.key],"onUpdate:value":t=>b(P)[e.key]=t,style:{width:`220px`},onChange:t=>z(e.key)},null,8,[`value`,`onUpdate:value`,`onChange`])),f(`button`,{class:`aw-pill outline rt-reset`,title:b(T)(`settings.runtime.resetKey`),onClick:t=>Yt(e.key)},[...t[18]||=[f(`span`,{class:`i-tabler-rotate`},null,-1)]],8,xt)])]))),128))],512),[[w,!V(e)]])],2))),128)),f(`div`,St,[f(`button`,{class:`aw-pill primary`,disabled:!b(F).size||b(I),onClick:Jt},[t[19]||=f(`span`,{class:`i-tabler-device-floppy`},null,-1),x(` `+o(b(I)?`…`:b(T)(`settings.runtime.save`)),1)],8,Ct),f(`button`,{class:`aw-pill outline`,onClick:Xt},o(b(T)(`settings.runtime.resetAll`)),1),f(`span`,wt,o(b(N).settingsPath),1)]),f(`h4`,Tt,o(b(T)(`plugins.title`)),1),f(`p`,Et,o(b(T)(`plugins.desc`)),1),b(A).isLoggedIn?(s(),_(re,{key:3,spinning:b(Y)},{default:y(()=>[(s(!0),p(m,null,l(b(J),e=>(s(),p(`div`,{key:e.name,class:c([`plugin-row`,{off:e.enabled===!1}])},[f(`div`,Ot,[f(`div`,kt,[f(`span`,At,o(e.name),1),e.version?(s(),p(`span`,jt,`v`+o(e.version),1)):h(``,!0),e.builtin?(s(),p(`span`,Mt,o(b(T)(`plugins.builtin`)),1)):h(``,!0),e.error?(s(),p(`span`,Nt,o(e.error),1)):h(``,!0)]),f(`div`,Pt,o(e.description||`—`),1)]),f(`div`,Ft,[bn(e.name)?(s(),p(`span`,It,[t[20]||=f(`span`,{class:`i-tabler-loader-2 spin`},null,-1),x(` `+o(b(T)(`plugins.healthChecking`)),1)])):Q(e.name)?(s(),p(`span`,{key:1,class:c([`plugin-health`,Q(e.name).ok?`ok`:`bad`])},[f(`span`,{class:c(Q(e.name).ok?`i-tabler-circle-check`:`i-tabler-alert-circle`)},null,2),x(` `+o(Q(e.name).ok?b(T)(`plugins.healthOk`):`${b(T)(`plugins.healthBad`)}: ${Q(e.name).reason??``}`),1)],2)):h(``,!0),hn(e)?(s(),p(`button`,{key:2,class:`aw-pill outline rt-reset`,onClick:t=>vn(e)},[t[21]||=f(`span`,{class:`i-tabler-heartbeat`},null,-1),x(` `+o(b(T)(`plugins.healthCheck`)),1)],8,Lt)):h(``,!0),f(`button`,{class:c([`switch`,{on:e.enabled!==!1}]),role:`switch`,"aria-checked":e.enabled!==!1,disabled:xn(e.name),onClick:t=>_n(e,e.enabled===!1)},[...t[22]||=[f(`span`,{class:`knob`},null,-1)]],10,Rt)])],2))),128)),b(J).length===0&&!b(Y)?(s(),p(`div`,zt,o(b(T)(`plugins.empty`)),1)):h(``,!0)]),_:1},8,[`spinning`])):(s(),p(`div`,Dt,o(b(T)(`plugins.needLogin`)),1)),b(J).length?(s(),_(ie,{key:4,"slot-name":`settings.plugins`})):h(``,!0)],512),[[w,b(M)===`runtime`]]),g(f(`div`,null,[f(`h3`,Bt,o(b(T)(`settings.systemTab`)),1),f(`p`,Vt,o(b(T)(`settings.systemDesc`)),1),u(oe,{bordered:``,column:1,size:`small`},{default:y(()=>[(s(!0),p(m,null,l(b(On),e=>(s(),_(ae,{key:e.label,label:e.label},{default:y(()=>[f(`span`,Ht,o(e.value),1)]),_:2},1032,[`label`]))),128))]),_:1}),f(`p`,Ut,o(b(A).isLoggedIn?`${b(T)(`settings.identity`)}: ${b(A).user?.name} (${b(A).user?.role})`:b(T)(`settings.identityGuest`)),1)],512),[[w,b(M)===`system`]])])])]),_:1})])}}}),[[`__scopeId`,`data-v-5f6f2d0f`]]);export{D as default};
@@ -0,0 +1 @@
1
+ .model-preview-3d[data-v-ed056b0a]{border:1px solid var(--hud-line,#263340);background:radial-gradient(120% 90% at 50% 20%,#41c8f41f,#0000 62%),linear-gradient(#0b121b,#0e141d);border-radius:2px;width:100%;min-height:40px;position:relative;overflow:hidden}.mp-loading[data-v-ed056b0a]{place-items:center;display:grid;position:absolute;inset:0}.mp-spin[data-v-ed056b0a]{border:2px solid #41c8f440;border-top-color:#41c8f4;border-radius:50%;width:14px;height:14px;animation:.8s linear infinite mp-spin-ed056b0a}@keyframes mp-spin-ed056b0a{to{transform:rotate(1turn)}}.mp-failed[data-v-ed056b0a]{font-family:var(--font-mono);letter-spacing:.12em;color:var(--hud-dim,#7f919e);place-items:center;font-size:10px;display:grid;position:absolute;inset:0}.asset-lib[data-v-f9b68f56]{width:184px;font-family:var(--font-body);flex-direction:column;flex:none;gap:8px;padding:0 0 10px;display:flex}.lib-head[data-v-f9b68f56]{border-bottom:1px solid #26334073;align-items:center;gap:7px;padding:10px 12px 6px;display:flex}.head-title[data-v-f9b68f56]{font-family:var(--font-mono);letter-spacing:.16em;color:var(--hud-text,#d9e4ee);white-space:nowrap;font-size:10px;font-weight:600}.head-hint[data-v-f9b68f56]{font-family:var(--font-mono);color:var(--hud-faint,#5b6c7b);white-space:nowrap;margin-left:auto;font-size:10px}.upload-box[data-v-f9b68f56]{transition:border-color .16s var(--hud-ease,ease), background .16s var(--hud-ease,ease);background:#0b101866;border:1px dashed #263340cc;border-radius:2px;flex-direction:column;gap:7px;margin:8px 10px 0;padding:7px;display:flex}.upload-box.drop[data-v-f9b68f56]{border-color:var(--hud-accent,#4da3ff);background:#4da3ff14}.upload-row[data-v-f9b68f56]{cursor:pointer;align-items:center;gap:6px;min-height:26px;display:flex}.file-input[data-v-f9b68f56]{display:none}.upload-name[data-v-f9b68f56]{font-family:var(--font-mono);color:var(--hud-dim,#8496a5);text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:5px;font-size:10px;display:inline-flex;overflow:hidden}.upload-ico[data-v-f9b68f56]{color:var(--hud-accent,#4da3ff);font-size:13px}.drop-hint[data-v-f9b68f56]{font-family:var(--font-mono);letter-spacing:.08em;color:var(--hud-accent,#4da3ff);align-items:center;gap:5px;padding:2px 0 4px;font-size:10px;display:inline-flex}.upload-file-tag[data-v-f9b68f56]{font-family:var(--font-mono);color:var(--hud-dim,#8496a5);border:1px solid var(--hud-line,#263340);border-radius:2px;padding:3px 6px;font-size:9.5px}.upload-actions[data-v-f9b68f56]{align-items:center;gap:6px;display:flex}.upload-btn[data-v-f9b68f56]{font-family:var(--font-mono);letter-spacing:.06em;color:var(--hud-text,#d9e4ee);background:var(--hud-panel-raised,#141b26);border:1px solid var(--hud-line,#263340);cursor:pointer;transition:border-color .14s var(--hud-ease,ease), color .14s var(--hud-ease,ease);border-radius:2px;padding:5px 10px;font-size:10px;font-weight:600}.upload-btn[data-v-f9b68f56]:hover:not(:disabled){border-color:var(--hud-accent,#4da3ff);color:var(--hud-accent,#4da3ff)}.upload-btn[data-v-f9b68f56]:disabled{opacity:.45;cursor:default}.upload-btn.go[data-v-f9b68f56]{color:var(--hud-amber,#f5a742);background:#f5a74214;border-color:#f5a7428c}.upload-btn.go[data-v-f9b68f56]:hover:not(:disabled){border-color:var(--hud-amber,#f5a742);color:var(--hud-amber,#f5a742);background:#f5a74229}.mini-err[data-v-f9b68f56]{font-family:var(--font-mono);color:var(--hud-danger,#ff6b5c);font-size:9.5px}.mini-err[data-v-f9b68f56],.mini-msg[data-v-f9b68f56]{font-size:10px}.mini-msg[data-v-f9b68f56]{font-family:var(--font-mono);color:var(--hud-dim,#8496a5);padding:0 10px}.lib-grid[data-v-f9b68f56]{flex-direction:column;gap:4px;max-height:42vh;padding:6px 10px 2px;display:flex;overflow:hidden auto}.model-card[data-v-f9b68f56]{cursor:grab;transition:background .14s var(--hud-ease,ease);background:#141b26a6;border:0;border-radius:2px;flex-direction:column;align-items:stretch;gap:4px;padding:6px;display:flex;position:relative}.model-card[data-v-f9b68f56]:hover{background:var(--hud-panel-hover,#1a2432)}.model-card[data-v-f9b68f56]:active{cursor:grabbing}.model-card .model-preview-3d[data-v-f9b68f56]{margin-bottom:2px}.model-name[data-v-f9b68f56]{color:var(--hud-text,#d9e4ee);text-align:left;text-overflow:ellipsis;white-space:nowrap;padding:0 2px;font-size:11px;font-weight:600;overflow:hidden}.model-badge[data-v-f9b68f56]{font-family:var(--font-mono);letter-spacing:.08em;color:var(--hud-faint,#5b6c7b);text-align:left;padding:0 2px;font-size:10px}.card-actions[data-v-f9b68f56]{justify-content:flex-end;gap:4px;display:flex}.card-btn[data-v-f9b68f56]{font-family:var(--font-mono);letter-spacing:.06em;color:var(--hud-text,#d9e4ee);border:1px solid var(--hud-line,#263340);cursor:pointer;transition:border-color .14s var(--hud-ease,ease), color .14s var(--hud-ease,ease);background:0 0;border-radius:2px;padding:2px 8px;font-size:10px;font-weight:600}.card-btn[data-v-f9b68f56]:hover:not(:disabled){border-color:var(--hud-accent,#4da3ff);color:var(--hud-accent,#4da3ff)}.card-btn.danger[data-v-f9b68f56]{color:var(--hud-danger,#ff6b5c)}.card-btn.danger[data-v-f9b68f56]:hover:not(:disabled){border-color:var(--hud-danger,#ff6b5c);color:var(--hud-danger,#ff6b5c)}.card-btn[data-v-f9b68f56]:disabled{opacity:.45;cursor:default}.model-img[data-v-f9b68f56]{-o-object-fit:contain;object-fit:contain;pointer-events:none;width:46px;height:68px}.model-img.glb[data-v-f9b68f56]{background:var(--hud-input,#0b1018);border:1px dashed var(--hud-line,#263340);border-radius:2px;justify-content:center;align-items:center;width:100%;height:44px;display:inline-flex}.glb-cube[data-v-f9b68f56]{color:var(--hud-faint,#5b6c7b);font-size:24px;line-height:1}.lib-note[data-v-f9b68f56]{font-family:var(--font-mono);color:var(--hud-faint,#5b6c7b);align-items:center;gap:7px;padding:8px 2px;font-size:9.5px;display:flex}.loading-dot[data-v-f9b68f56]{border:2px solid var(--hud-line,#263340);border-top-color:var(--hud-accent,#4da3ff);border-radius:50%;width:12px;height:12px;animation:.8s linear infinite spin-f9b68f56}@keyframes spin-f9b68f56{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.loading-dot[data-v-f9b68f56]{animation:none}}.twin-panel[data-v-4878cdde]{width:auto;box-shadow:none;background:0 0;border:0;border-radius:0;flex-direction:column;flex:none;gap:8px;padding:0;display:flex}.twin-head[data-v-4878cdde]{border-bottom:1px solid #26334073;align-items:center;gap:8px;padding:10px 12px 6px;display:flex}.twin-error[data-v-4878cdde]{color:#ffb4b4;word-break:break-all;background:#ff6b6b1a;border:1px solid #ff6b6b59;border-radius:8px;padding:7px 10px;font-size:11px;line-height:1.5}.twin-kicker[data-v-4878cdde]{font-family:var(--font-mono);letter-spacing:.16em;color:var(--hud-text,#d9e4ee);font-size:10px;font-weight:600}.twin-count[data-v-4878cdde]{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--hud-dim,#8496a5);margin-left:auto;font-size:10px}.twin-empty[data-v-4878cdde]{padding:10px}.twin-empty-frame[data-v-4878cdde]{border:1px dashed var(--hud-line);flex-direction:column;gap:4px;padding:12px 10px;display:flex}.twin-empty-title[data-v-4878cdde]{font-family:var(--font-mono);letter-spacing:.1em;color:var(--hud-text);font-size:11px}.twin-empty-sub[data-v-4878cdde]{color:var(--hud-dim);font-size:10px;line-height:1.6}.twin-list[data-v-4878cdde]{flex-direction:column;gap:4px;max-height:46vh;padding:4px 0 10px;display:flex;overflow:hidden auto}.twin-card[data-v-4878cdde]{text-align:left;cursor:pointer;background:#141b26a6;border:0;border-radius:2px;flex-direction:column;gap:6px;margin:0 10px;padding:8px 9px;transition:background .16s;display:flex}.twin-card[data-v-4878cdde]:hover{background:var(--hud-panel-hover)}.twin-card[data-v-4878cdde]:active{background:var(--hud-panel-raised)}.twin-card:hover .twin-name[data-v-4878cdde]{color:#e8f1f8}.twin-card.daq[data-v-4878cdde]{background:#35e0a00f;border:1px solid #35e0a052}.twin-card.daq[data-v-4878cdde]:hover{background:#35e0a01c;border-color:#35e0a080}.twin-card.daq .twin-code[data-v-4878cdde],.twin-card.daq .twin-model-tag[data-v-4878cdde]{color:var(--hud-accent,#35e0a0)}.twin-row[data-v-4878cdde]{align-items:center;gap:8px;min-width:0;display:flex}.twin-model-tag[data-v-4878cdde]{min-width:30px;font-family:var(--font-mono);letter-spacing:.08em;color:var(--hud-faint);flex:none;font-size:10px;font-weight:600}.twin-idbar[data-v-4878cdde]{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.twin-name[data-v-4878cdde]{color:var(--hud-text);text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;font-weight:600;overflow:hidden}.twin-code[data-v-4878cdde]{font-family:var(--font-mono);letter-spacing:.08em;color:var(--hud-dim);font-size:10px}.twin-del[data-v-4878cdde]{width:18px;height:18px;font-family:var(--font-mono);color:var(--hud-dim,#8496a5);border:1px solid var(--hud-line,#263340);cursor:pointer;background:0 0;border-radius:2px;flex:none;font-size:10px;line-height:1;transition:border-color .14s,color .14s,background .14s}.twin-del[data-v-4878cdde]:hover:not(:disabled){border-color:var(--hud-danger,#ff6b5c);color:var(--hud-danger,#ff6b5c)}.twin-del.armed[data-v-4878cdde]{color:#1a0d0a;background:var(--hud-danger,#ff6b5c);border-color:var(--hud-danger,#ff6b5c);width:auto;padding:0 5px}.twin-del[data-v-4878cdde]:disabled{opacity:.4;cursor:default}.twin-state[data-v-4878cdde]{font-family:var(--font-mono);letter-spacing:.08em;color:var(--hud-dim);border:1px solid var(--hud-line);border-radius:2px;flex:none;align-items:center;gap:5px;padding:2px 5px;font-size:10px;display:inline-flex}.twin-state.s-alarm[data-v-4878cdde]{color:var(--hud-danger);border-color:#ff6b5c80}.twin-state.s-running[data-v-4878cdde]{color:var(--hud-ok);border-color:#7fd4a066}.twin-state-dot[data-v-4878cdde]{border-radius:50%;width:5px;height:5px}.twin-tele[data-v-4878cdde]{border-top:1px dashed var(--hud-line);grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 10px;margin:0 0 2px;padding-top:6px;display:grid}.tele-item[data-v-4878cdde]{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--hud-dim);justify-content:space-between;gap:6px;min-width:0;font-size:9.5px;display:flex}.tele-item em[data-v-4878cdde]{text-overflow:ellipsis;font-style:normal;overflow:hidden}.tele-item b[data-v-4878cdde]{color:var(--hud-text);font-weight:500}.twin-daq[data-v-4878cdde]{border-top:1px dashed #35e0a04d;flex-direction:column;gap:2px;margin:0 0 2px;padding-top:6px;display:flex}.daq-item[data-v-4878cdde]{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--hud-accent,#35e0a0);justify-content:space-between;align-items:baseline;gap:6px;min-width:0;font-size:9.5px;display:flex}.daq-item em[data-v-4878cdde]{text-overflow:ellipsis;white-space:nowrap;opacity:.85;font-style:normal;overflow:hidden}.daq-item b[data-v-4878cdde]{white-space:nowrap;font-size:10.5px;font-weight:700}.daq-item b i[data-v-4878cdde]{opacity:.75;margin-left:2px;font-size:10px;font-style:normal;font-weight:500}.daq-item.alarm[data-v-4878cdde]{color:var(--hud-amber,#f6c453)}.twin-dcw[data-v-4878cdde]{border-top:1px dashed #f0a04c59;flex-direction:column;gap:6px;margin:0 0 2px;padding-top:6px;display:flex}.dcw-item[data-v-4878cdde]{flex-direction:column;gap:3px;display:flex}.dcw-head[data-v-4878cdde]{font-family:var(--font-mono);color:var(--hud-dim);justify-content:space-between;align-items:baseline;gap:6px;font-size:9.5px;display:flex}.dcw-head em[data-v-4878cdde]{text-overflow:ellipsis;white-space:nowrap;font-style:normal;overflow:hidden}.dcw-src[data-v-4878cdde]{color:var(--hud-amber,#f6c453);border:1px solid #f0a04c80;border-radius:2px;margin-left:4px;padding:0 3px;font-size:10px;font-style:normal}.dcw-set[data-v-4878cdde]{font-variant-numeric:tabular-nums;color:var(--hud-amber,#f6c453);white-space:nowrap;font-size:12px;font-weight:700}.dcw-set i[data-v-4878cdde]{opacity:.75;margin-left:2px;font-size:10px;font-style:normal;font-weight:500}.dcw-act[data-v-4878cdde]{font-family:var(--font-mono);color:var(--hud-dim);justify-content:space-between;align-items:baseline;gap:6px;font-size:10px;display:flex}.dcw-act em[data-v-4878cdde]{letter-spacing:.08em;color:var(--hud-faint);font-size:10px;font-style:normal}.dcw-act b[data-v-4878cdde]{font-variant-numeric:tabular-nums;color:var(--hud-accent,#35e0a0);white-space:nowrap;font-size:11.5px;font-weight:700}.dcw-act b i[data-v-4878cdde]{opacity:.75;margin-left:2px;font-size:10px;font-style:normal;font-weight:500}.dcw-act-at[data-v-4878cdde]{color:var(--hud-faint);font-size:10px;font-style:normal}.dcw-win[data-v-4878cdde]{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--hud-faint);letter-spacing:.04em;font-size:10px}.dcw-win span[data-v-4878cdde]{border-bottom:1px dotted var(--hud-line);padding-bottom:1px}.dcw-ctrl[data-v-4878cdde]{align-items:center;gap:4px;display:flex}.dcw-ctrl .ctrl-input[data-v-4878cdde]{flex:1;width:auto;min-width:0}.dcw-send[data-v-4878cdde]{color:var(--hud-amber,#f6c453);border-color:#f0a04c80;flex:none}.dcw-send[data-v-4878cdde]:hover:not(:disabled){color:var(--hud-amber,#f6c453);border-color:var(--hud-amber,#f6c453);background:#f0a04c1f}.dcw-err[data-v-4878cdde]{font-family:var(--font-mono);color:var(--hud-danger,#ff6b5c);font-size:10px}.ctrl-btn[data-v-4878cdde]{letter-spacing:.06em;font-size:10px;font-weight:600;font-family:var(--font-mono);color:var(--hud-text);border:1px solid var(--hud-line);cursor:pointer;background:0 0;border-radius:2px;padding:3px 7px;transition:border-color .14s,color .14s,background .14s}.ctrl-btn[data-v-4878cdde]:hover:not(:disabled){border-color:var(--hud-accent);color:var(--hud-accent)}.ctrl-btn[data-v-4878cdde]:disabled{opacity:.45;cursor:default}.ctrl-input[data-v-4878cdde]{width:48px;font-family:var(--font-mono);border:1px solid var(--hud-line);background:var(--hud-input);color:var(--hud-text);font-variant-numeric:tabular-nums;border-radius:2px;padding:3px 6px;font-size:10px}.ctrl-input[data-v-4878cdde]:focus{border-color:var(--hud-accent);outline:none}.twin-err[data-v-4878cdde]{color:var(--hud-danger);padding:0 10px 8px;font-size:9.5px}.town-view[data-v-7027783b]{--hud-bg:#070b13;--hud-panel:#0d1420;--hud-panel-2:#111a2b;--hud-panel-raised:#152034;--hud-panel-hover:#16233a;--hud-line:#1d2a42;--hud-line-soft:#16202f;--hud-line-hi:#2c4568;--hud-input:#0a111d;--hud-text:#e8eef8;--hud-dim:#8fa0b5;--hud-faint:#5f6e84;--hud-accent:#35e0a0;--hud-accent-dim:#1f9e6e;--hud-cyan:#41c8f4;--hud-amber:#f6c453;--hud-ok:#35e0a0;--hud-danger:#ff6b6b;--hud-shadow:0 16px 40px #0000008c;--hud-ease:cubic-bezier(.22, .68, .36, 1);--hud-r-sm:8px;--hud-r-md:10px;--hud-r-lg:12px;background:var(--hud-bg);height:100%;min-height:0;color:var(--hud-text);font-family:var(--font-body);flex-direction:column;font-size:13px;display:flex}.topnav[data-v-7027783b]{border-bottom:1px solid var(--hud-line-soft);z-index:60;background:linear-gradient(#0c1320,#0a101b);flex:none;align-items:center;gap:14px;height:50px;padding:0 16px;display:flex;position:relative}.topnav[data-v-7027783b]:after{content:"";pointer-events:none;background:linear-gradient(90deg,#0000 4%,#35e0a059 50%,#0000 96%);height:1px;position:absolute;bottom:-1px;left:0;right:0}.brand[data-v-7027783b]{align-items:center;gap:10px;min-width:230px;display:flex}.brand-glyph[data-v-7027783b]{flex:none;width:26px;height:26px}.brand-name[data-v-7027783b]{letter-spacing:.06em;font-size:14.5px;font-weight:800}.brand-name em[data-v-7027783b]{color:var(--hud-accent);font-style:normal}.brand-sub[data-v-7027783b]{color:var(--hud-faint);letter-spacing:.18em;margin-top:2px;font-size:10px}.nav-tabs[data-v-7027783b]{align-items:center;gap:10px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.nav-action[data-v-7027783b]{border-radius:var(--hud-r-sm);height:32px;color:var(--hud-text);transition:background .15s var(--hud-ease), border-color .15s var(--hud-ease);background:0 0;border:1px solid #27395c;padding:0 14px;font-size:12px;font-weight:600}.nav-action[data-v-7027783b]:hover{background:#14203a;border-color:#33507c}.save-chip[data-v-7027783b]{font-family:var(--font-mono);letter-spacing:.08em;border:1px solid var(--hud-line);color:var(--hud-dim);white-space:nowrap;border-radius:6px;padding:3px 9px;font-size:10px}.save-chip.s-dirty[data-v-7027783b]{color:var(--hud-amber);border-color:#f6c45366}.save-chip.s-saving[data-v-7027783b]{color:var(--hud-dim)}.save-chip.s-saved[data-v-7027783b]{color:var(--hud-accent);border-color:#35e0a066}.save-chip.s-error[data-v-7027783b]{color:var(--hud-danger);border-color:#ff6b6b66}.nav-right[data-v-7027783b]{align-items:center;gap:10px;margin-left:auto;display:flex}.nav-chip[data-v-7027783b]{font-family:var(--font-mono);color:var(--hud-dim);border:1px solid var(--hud-line);font-variant-numeric:tabular-nums;border-radius:6px;padding:2px 8px;font-size:10.5px}.avatar-chip[data-v-7027783b]{border:1px solid var(--hud-line-soft);background:#0e1626;border-radius:999px;align-items:center;gap:8px;padding:4px 10px 4px 4px;display:flex}.avatar-chip span[data-v-7027783b]{color:var(--hud-text);font-size:12px}.town-view small[data-v-7027783b]{font-size:11px}.avatar-fallback[data-v-7027783b]{color:#04120c;background:linear-gradient(135deg,#1f9e6e,#41c8f4);border-radius:50%;place-items:center;width:24px;height:24px;font-size:10px;font-weight:700;display:grid}.seg[data-v-7027783b]{border:1px solid var(--hud-line);border-radius:var(--hud-r-sm);background:#0a111d;padding:2px;display:inline-flex}.seg button[data-v-7027783b]{color:var(--hud-dim);transition:background .15s var(--hud-ease), color .15s var(--hud-ease);border-radius:6px;padding:4px 16px;font-size:11.5px;font-weight:600}.seg button.on[data-v-7027783b]{background:var(--hud-accent);color:#04120c;box-shadow:0 0 12px #35e0a059}.app[data-v-7027783b]{flex:1;grid-template-columns:clamp(212px,19vw,250px) minmax(0,1fr) clamp(284px,26vw,342px);min-height:0;display:grid}.rail[data-v-7027783b]{background:linear-gradient(#0a101c,#080d16);flex-direction:column;gap:10px;min-height:0;padding:10px;display:flex;overflow:hidden auto}.rail-left[data-v-7027783b]{border-right:1px solid var(--hud-line-soft)}.rail-right[data-v-7027783b]{border-left:1px solid var(--hud-line-soft)}.rail[data-v-7027783b]::-webkit-scrollbar{width:8px}.rail[data-v-7027783b]::-webkit-scrollbar-thumb{background:#1c2942;border:2px solid #080d16;border-radius:4px}.rail[data-v-7027783b]::-webkit-scrollbar-track{background:0 0}.ins-enter-active[data-v-7027783b]{transition:opacity .2s var(--hud-ease), transform .2s var(--hud-ease)}.ins-leave-active[data-v-7027783b]{transition:opacity .12s}.ins-enter-from[data-v-7027783b]{opacity:0;transform:translate(12px)}.ins-leave-to[data-v-7027783b]{opacity:0}.panel[data-v-7027783b]{border:1px solid var(--hud-line);border-radius:var(--hud-r-lg);background:linear-gradient(#101827,#0d1420);flex:none;padding:12px;position:relative;box-shadow:inset 0 1px #8fb0dc12,0 10px 28px #03070e73}.panel[data-v-7027783b]:before{content:"";border-radius:var(--hud-r-lg) var(--hud-r-lg) 0 0;pointer-events:none;background:linear-gradient(#78a5dc0e,#0000);height:44px;position:absolute;inset:0 0 auto}.panel-hd[data-v-7027783b]{align-items:center;gap:8px;margin-bottom:10px;display:flex}.panel-hd h3[data-v-7027783b]{letter-spacing:.02em;flex:1;margin:0;padding-left:11px;font-size:12.5px;font-weight:700;position:relative}.panel-hd h3[data-v-7027783b]:before{content:"";background:var(--hud-accent);width:3px;height:12px;box-shadow:0 0 8px color-mix(in srgb, var(--hud-accent) 45%, transparent);border-radius:2px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.panel-tag[data-v-7027783b]{font-family:var(--font-mono);color:var(--hud-cyan);background:#41c8f41a;border:1px solid #41c8f440;border-radius:6px;padding:0 6px;font-size:9.5px;line-height:15px}.lib-embed[data-v-7027783b]{margin:-4px 0 0}.daq-list[data-v-7027783b],.scene-list[data-v-7027783b]{flex-direction:column;gap:4px;display:flex}.daq-card[data-v-7027783b]{border-radius:var(--hud-r-md);background:var(--hud-panel-2);cursor:grab;transition:transform .15s var(--hud-ease), border-color .15s var(--hud-ease), background .15s var(--hud-ease);border:1px solid #1f4a3a8c;align-items:center;gap:10px;margin-bottom:4px;padding:8px 9px;display:flex}.daq-card[data-v-7027783b]:hover{background:#12291f;border-color:#35e0a080;transform:translateY(-1px)}.daq-card[data-v-7027783b]:active{cursor:grabbing}.daq-ico[data-v-7027783b]{width:34px;height:34px;color:var(--hud-accent);background:linear-gradient(160deg,#12291f,#0e1a24);border:1px solid #1f4a3aa6;border-radius:9px;flex:none;place-items:center;display:grid}.daq-svg[data-v-7027783b]{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}.daq-meta[data-v-7027783b]{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.daq-name[data-v-7027783b]{color:var(--hud-text);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;overflow:hidden}.daq-code[data-v-7027783b]{font-family:var(--font-mono);letter-spacing:.08em;color:var(--hud-faint);font-size:10px}.daq-count[data-v-7027783b]{font-family:var(--font-mono);color:var(--hud-accent);background:#35e0a01a;border:1px solid #35e0a047;border-radius:6px;flex:none;padding:0 6px;font-size:10px;line-height:15px}.daq-group[data-v-7027783b]{flex-direction:column;display:flex}.daq-card.tpl[data-v-7027783b]{cursor:pointer;-webkit-user-select:none;user-select:none;margin-bottom:0}.daq-card.tpl[data-v-7027783b]:active{cursor:pointer}.daq-card.tpl[data-v-7027783b]:focus-visible{outline:1px solid var(--hud-accent);outline-offset:1px}.daq-caret[data-v-7027783b]{color:var(--hud-faint);transition:transform .15s var(--hud-ease);flex:none;font-size:10px}.daq-card.tpl.open .daq-caret[data-v-7027783b]{transform:rotate(90deg)}.daq-card.tpl[data-v-7027783b]:hover{transform:none}.daq-add[data-v-7027783b]{width:18px;height:18px;color:var(--hud-faint);cursor:pointer;opacity:0;transition:opacity .15s var(--hud-ease), color .15s var(--hud-ease), border-color .15s var(--hud-ease), transform .16s cubic-bezier(.22, 1, .36, 1);background:0 0;border:1px solid #2c4568b3;border-radius:6px;flex:none;place-items:center;font-size:12px;line-height:1;display:grid}.daq-card.tpl:focus-within .daq-add[data-v-7027783b],.daq-card.tpl:hover .daq-add[data-v-7027783b]{opacity:1}@media (hover:none){.daq-add[data-v-7027783b]{opacity:1}}.daq-add[data-v-7027783b]:hover{color:var(--hud-accent);border-color:#35e0a080}.daq-add[data-v-7027783b]:active{transform:scale(.9)}.daq-children[data-v-7027783b]{animation:daq-tree-in-7027783b .16s var(--hud-ease);flex-direction:column;gap:2px;margin:2px 0 6px;padding-left:16px;display:flex}@keyframes daq-tree-in-7027783b{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.daq-node[data-v-7027783b]{cursor:default;transition:background .15s var(--hud-ease), border-color .15s var(--hud-ease), transform .16s cubic-bezier(.22, 1, .36, 1);border:1px solid #0000;border-radius:7px;align-items:center;gap:8px;padding:5px 8px;display:flex}.daq-node[data-v-7027783b]:hover{background:#111b2c;border-color:#2c456899}.daq-node[draggable=true][data-v-7027783b]{cursor:grab}.daq-node[draggable=true][data-v-7027783b]:active{cursor:grabbing;transform:scale(.98)}.daq-node.placed[data-v-7027783b]{cursor:pointer}.daq-node.placed[draggable=true][data-v-7027783b]{cursor:grab}.node-dot[data-v-7027783b]{background:var(--hud-ok);width:7px;height:7px;box-shadow:0 0 6px color-mix(in srgb, var(--hud-ok) 50%, transparent);border-radius:50%;flex:none}.node-dot.offline[data-v-7027783b]{border:1px solid var(--hud-faint);box-shadow:none;background:0 0}.node-dot.warn[data-v-7027783b]{background:var(--hud-amber);box-shadow:0 0 6px color-mix(in srgb, var(--hud-amber) 50%, transparent)}.node-dot.alarm[data-v-7027783b]{background:var(--hud-danger);box-shadow:0 0 6px color-mix(in srgb, var(--hud-danger) 60%, transparent)}.daq-node .daq-name[data-v-7027783b]{font-size:11.5px;font-weight:500}.daq-node-sub[data-v-7027783b]{align-items:baseline;gap:7px;min-width:0;display:flex}.node-val[data-v-7027783b]{color:var(--hud-cyan);flex:none;font-size:10px}.node-dev[data-v-7027783b]{color:var(--hud-faint);white-space:nowrap;text-overflow:ellipsis;max-width:104px;font-size:9.5px;overflow:hidden}.daq-empty-hint[data-v-7027783b]{color:var(--hud-faint);padding:4px 8px 6px 10px;font-size:10px}.scene-row[data-v-7027783b]{border-radius:var(--hud-r-md);cursor:grab;transition:background .15s var(--hud-ease), border-color .15s var(--hud-ease);border:1px solid #0000;align-items:center;gap:10px;margin-bottom:4px;padding:8px 9px;display:flex}.scene-row[data-v-7027783b]:hover{background:#111b2c}.scene-row.active[data-v-7027783b]{background:#35e0a00f;border-color:#35e0a059}.scene-row[data-v-7027783b]:active{cursor:grabbing}.scene-ico[data-v-7027783b]{background:color-mix(in srgb, var(--ch,var(--hud-accent)) 16%, #101a2c);border:1px solid color-mix(in srgb, var(--ch,var(--hud-accent)) 45%, transparent);border-radius:8px;flex:none;width:30px;height:30px}.scene-row.active .scene-ico[data-v-7027783b]{box-shadow:0 0 10px color-mix(in srgb, var(--ch,var(--hud-accent)) 40%, transparent)}.scene-meta-wrap[data-v-7027783b]{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.scene-name[data-v-7027783b]{color:var(--hud-text);white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;overflow:hidden}.scene-meta[data-v-7027783b]{font-family:var(--font-mono);color:var(--hud-faint);font-size:10px}.scene-add[data-v-7027783b],.scene-cur[data-v-7027783b]{border-radius:6px;flex:none;margin-left:auto;padding:1px 7px;font-size:10px}.scene-cur[data-v-7027783b]{color:var(--hud-accent);border:1px solid #35e0a066}.scene-add[data-v-7027783b]{color:var(--hud-dim);border:1px solid var(--hud-line)}.scene-hint[data-v-7027783b]{color:var(--hud-amber);padding:6px 4px 0;font-size:10px;line-height:1.5}.stage-col[data-v-7027783b]{flex-direction:column;min-width:0;min-height:0;display:flex}.stage[data-v-7027783b]{background:#060a11;flex:1;min-height:320px;position:relative;overflow:hidden}.stage[data-v-7027783b]:fullscreen{border-radius:0}.town-host[data-v-7027783b]{position:absolute;inset:0}.town-host canvas[data-v-7027783b]{image-rendering:auto;display:block}.stage-vignette[data-v-7027783b]{pointer-events:none;z-index:3;background:radial-gradient(120% 90% at 50% 38%,#0000 52%,#02040980 100%),linear-gradient(#080d1852,#0000 18%),repeating-linear-gradient(0deg,#ffffff03 0 1px,#0000 1px 3px);position:absolute;inset:0}.stage-top[data-v-7027783b]{z-index:6;pointer-events:none;justify-content:space-between;align-items:flex-start;padding:14px 16px;display:flex;position:absolute;top:0;left:0;right:0}.stage-top[data-v-7027783b]>*{pointer-events:auto}.vp-title[data-v-7027783b]{border-radius:var(--hud-r-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#090e18b8;border:1px solid #1c2942;align-items:center;gap:10px;padding:8px 12px;display:flex}.vp-title h2[data-v-7027783b]{letter-spacing:.02em;margin:0;font-size:15px;font-weight:700}.vp-id[data-v-7027783b]{font-family:var(--font-mono);letter-spacing:.04em;color:var(--hud-dim);white-space:nowrap;background:#0a111d99;border:1px solid #223050;border-radius:6px;padding:1px 8px;font-size:10px}.vp-tools[data-v-7027783b]{align-items:center;gap:8px;display:flex}.vp-tool[data-v-7027783b]{width:34px;height:34px;color:var(--hud-dim);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:color .15s var(--hud-ease), border-color .15s var(--hud-ease), background .15s var(--hud-ease);background:#0d1420d9;border:1px solid #223050;border-radius:50%;place-items:center;font-size:12px;font-weight:600;display:grid}.vp-tool[data-v-7027783b]:hover{color:var(--hud-text);border-color:#33507c}.vp-tool.on[data-v-7027783b]{color:#04120c;background:var(--hud-accent);border-color:var(--hud-accent);box-shadow:0 0 12px #35e0a04d}.vp-svg[data-v-7027783b]{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.leaders[data-v-7027783b]{z-index:7;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.angle-chip[data-v-7027783b]{z-index:6;border-radius:var(--hud-r-sm);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--hud-dim);background:#090e18c7;border:1px solid #1c2942;align-items:center;gap:6px;padding:5px 8px;font-size:11.5px;display:flex;position:absolute;top:64px;left:16px}.angle-chip select[data-v-7027783b]{color:var(--hud-text);cursor:pointer;background:0 0;border:0;font-size:11.5px;font-weight:600}.angle-chip select option[data-v-7027783b]{background:#0e1626}.callout-layer[data-v-7027783b]{z-index:7;pointer-events:none;position:absolute;inset:0;overflow:hidden}.callout[data-v-7027783b]{opacity:0;pointer-events:none;border-radius:var(--hud-r-md);min-width:150px;box-shadow:var(--hud-shadow);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:opacity .22s var(--hud-ease), transform .22s var(--hud-ease), border-color .15s var(--hud-ease);background:linear-gradient(#101a2bf0,#0a101cf0);border:1px solid #41c8f466;padding:9px 12px 8px;position:absolute;transform:translate(-50%,-112%)translateY(5px)}.callout.near[data-v-7027783b]{opacity:1;pointer-events:auto;transform:translate(-50%,-112%)}.leaders g[data-v-7027783b]{opacity:0;transition:opacity .22s var(--hud-ease)}.leaders g.near[data-v-7027783b]{opacity:1}.callout.warn[data-v-7027783b]{border-color:#f6c45399}.co-label[data-v-7027783b]{color:var(--hud-dim);white-space:nowrap;align-items:center;gap:6px;font-size:10.5px;display:flex}.co-dot[data-v-7027783b]{background:var(--hud-cyan);border-radius:50%;flex:none;width:6px;height:6px;box-shadow:0 0 8px #41c8f4e6}.callout.warn .co-dot[data-v-7027783b]{background:var(--hud-amber);box-shadow:0 0 8px #f6c453e6}.co-val[data-v-7027783b]{font-family:var(--font-mono);letter-spacing:-.01em;color:var(--hud-text);font-variant-numeric:tabular-nums;margin-top:2px;font-size:21px;font-weight:700}.co-val small[data-v-7027783b]{color:var(--hud-dim);margin-left:3px;font-size:10.5px;font-weight:500}.co-range[data-v-7027783b]{font-family:var(--font-mono);color:var(--hud-faint);margin-top:1px;font-size:9.5px}.callout.warn .co-range[data-v-7027783b]{color:var(--hud-amber)}.kpi-strip[data-v-7027783b]{z-index:6;pointer-events:none;flex-wrap:wrap;justify-content:center;gap:10px;padding:0 16px;display:flex;position:absolute;bottom:12px;left:0;right:0}.kpi[data-v-7027783b]{pointer-events:auto;border-radius:var(--hud-r-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);transition:border-color .2s var(--hud-ease), transform .2s var(--hud-ease), box-shadow .2s var(--hud-ease);background:linear-gradient(#141e30eb,#0c1320e6);border:1px solid #1e2c46;align-items:center;gap:10px;padding:8px 14px;display:flex;box-shadow:inset 0 1px #8fb0dc14,0 8px 20px #03070e66}.kpi[data-v-7027783b]:hover{border-color:#2c4568;transform:translateY(-1px);box-shadow:inset 0 1px #8fb0dc1a,0 12px 26px #03070e80}.kpi-ico[data-v-7027783b]{border-radius:8px;flex:none;place-items:center;width:30px;height:30px;font-size:12px;font-weight:700;display:grid}.kpi-ico.c1[data-v-7027783b]{color:var(--hud-cyan);background:#41c8f41f}.kpi-ico.c2[data-v-7027783b]{color:var(--hud-accent);background:#35e0a01f}.kpi-ico.c3[data-v-7027783b]{color:var(--hud-amber);background:#f6c4531f}.kpi-ico.c4[data-v-7027783b]{color:#a78bfa;background:#a78bfa24}.kpi-ico.c5[data-v-7027783b]{color:var(--hud-danger);background:#ff6b6b1f}.kpi-svg[data-v-7027783b]{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:15px;height:15px}.kpi-meta[data-v-7027783b]{line-height:1.25}.kpi-label[data-v-7027783b]{color:var(--hud-dim);letter-spacing:.08em;text-transform:uppercase;font-size:10px}.kpi-val[data-v-7027783b]{font-family:var(--font-mono);color:var(--hud-text);font-variant-numeric:tabular-nums;letter-spacing:-.01em;font-size:19px;font-weight:700}.kpi-val small[data-v-7027783b]{color:var(--hud-faint);margin-left:2px;font-size:10px;font-weight:500}.empty-hint[data-v-7027783b]{z-index:4;text-align:center;color:var(--hud-dim);pointer-events:none;position:absolute;top:44%;left:50%;transform:translate(-50%,-50%)}.empty-hint b[data-v-7027783b]{color:var(--hud-text);margin-bottom:4px;font-size:14px;display:block}.empty-hint span[data-v-7027783b]{font-size:12px}@media (prefers-reduced-motion:no-preference){.dock[data-v-7027783b],.rail-left[data-v-7027783b],.rail-right[data-v-7027783b]{animation:.52s cubic-bezier(.22,.68,.36,1) backwards hud-boot-7027783b}.rail-left[data-v-7027783b]{animation-delay:40ms}.rail-right[data-v-7027783b]{animation-delay:.15s}.dock[data-v-7027783b]{animation-delay:.26s}}@keyframes hud-boot-7027783b{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.dock[data-v-7027783b]{border-top:1px solid var(--hud-line-soft);background:#080d16;flex:none;grid-template-columns:308px 1fr;gap:10px;padding:10px;display:grid}.dock-card[data-v-7027783b]{border:1px solid var(--hud-line);border-radius:var(--hud-r-lg);background:linear-gradient(#101827,#0d1420);flex-direction:column;min-height:178px;padding:12px 14px;display:flex}.dock-hd[data-v-7027783b]{align-items:center;gap:8px;margin-bottom:10px;display:flex}.dock-hd h3[data-v-7027783b]{flex:none;margin:0;font-size:12.5px;font-weight:700}.dock-count[data-v-7027783b]{letter-spacing:.08em;color:var(--hud-dim);border:1px solid var(--hud-line-soft);border-radius:6px;flex:none;padding:1px 7px;font-size:9.5px}.dock-mode[data-v-7027783b]{font-family:var(--font-mono);letter-spacing:.1em;color:var(--hud-faint);border:1px solid var(--hud-line);border-radius:6px;margin-left:auto;padding:1px 7px;font-size:10px}.ctl-row[data-v-7027783b]{align-items:center;gap:10px;margin-bottom:9px;display:flex}.ctl-sec[data-v-7027783b]{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--hud-faint);border-top:1px solid var(--hud-line-soft);margin:2px 0 7px;padding-top:7px;font-size:10px;font-weight:600}.ctl-sec[data-v-7027783b]:first-of-type{border-top:0;margin-top:0;padding-top:0}.ctl-name[data-v-7027783b]{color:var(--hud-dim);flex:none;width:64px;font-size:11.5px}.ctl-val[data-v-7027783b]{font-family:var(--font-mono);color:var(--hud-text);text-align:right;font-variant-numeric:tabular-nums;flex:none;width:38px;font-size:11px}.ctl-range[data-v-7027783b]{appearance:none;background:linear-gradient(90deg, var(--hud-accent-dim) var(--fill,50%), #1d2a42 var(--fill,50%));cursor:pointer;border-radius:2px;flex:1;height:4px}.ctl-range[data-v-7027783b]::-webkit-slider-thumb{-webkit-appearance:none;border:2.5px solid var(--hud-accent);width:13px;height:13px;-webkit-transition:transform .15s var(--hud-ease), box-shadow .15s var(--hud-ease);transition:transform .15s var(--hud-ease), box-shadow .15s var(--hud-ease);background:#fff;border-radius:50%;box-shadow:0 1px 4px #00000080}.ctl-range[data-v-7027783b]:hover::-webkit-slider-thumb{transform:scale(1.18);box-shadow:0 0 0 5px #35e0a01f,0 1px 4px #00000080}.ctl-range[data-v-7027783b]:active::-webkit-slider-thumb{transform:scale(1.05)}.bp-range[data-v-7027783b]{accent-color:var(--hud-accent)}.snap-toggle[data-v-7027783b]{height:22px;color:var(--hud-dim);background:var(--hud-input);border:1px solid var(--hud-line);cursor:pointer;border-radius:6px;flex:1;font-size:10.5px;font-weight:600}.snap-toggle.on[data-v-7027783b]{color:var(--hud-accent);background:#35e0a014;border-color:#35e0a066}.fps-seg[data-v-7027783b]{flex:1;gap:4px;display:flex}.fps-seg button[data-v-7027783b]{height:22px;font-family:var(--font-mono);color:var(--hud-dim);background:var(--hud-input);border:1px solid var(--hud-line);cursor:pointer;transition:border-color .14s var(--hud-ease), color .14s var(--hud-ease), background .14s var(--hud-ease);border-radius:6px;flex:1;font-size:10.5px;font-weight:600}.fps-seg button[data-v-7027783b]:hover{border-color:var(--hud-line-hi);color:var(--hud-text)}.fps-seg button.on[data-v-7027783b]{color:var(--hud-accent);background:#35e0a014;border-color:#35e0a066}.ctl-btns[data-v-7027783b]{gap:8px;margin-top:auto;display:flex}.btn[data-v-7027783b]{border-radius:var(--hud-r-sm);white-space:nowrap;cursor:pointer;height:32px;transition:filter .15s var(--hud-ease), background .15s var(--hud-ease), border-color .15s var(--hud-ease);background:0 0;flex:1;justify-content:center;align-items:center;gap:6px;padding:0 10px;font-size:12px;font-weight:600;display:inline-flex}.btn-primary[data-v-7027783b]{background:var(--hud-accent-dim);color:#04120c}.btn-primary[data-v-7027783b]:hover{background:#25b57e}.btn-ghost[data-v-7027783b]{color:var(--hud-text);border:1px solid #27395c}.btn-ghost[data-v-7027783b]:hover{background:#14203a;border-color:#33507c}.btn-danger[data-v-7027783b]{color:#fff;background:#b3273a}.btn-danger[data-v-7027783b]:hover{background:#d1304a}.btn[data-v-7027783b]:not(:disabled):active{transform:translateY(1px)}.bind-select[data-v-7027783b]:disabled,.btn[data-v-7027783b]:disabled,.nav-action[data-v-7027783b]:disabled,.obj-input[data-v-7027783b]:disabled,.obj-mini[data-v-7027783b]:disabled,.obj-select[data-v-7027783b]:disabled{opacity:.38;cursor:not-allowed;filter:saturate(.4)}.btn[data-v-7027783b]:disabled:hover,.nav-action[data-v-7027783b]:disabled:hover{background:inherit}.trend-legend[data-v-7027783b]{scrollbar-width:thin;scrollbar-color:#1c2942 transparent;flex-wrap:wrap;flex:auto;align-content:flex-start;gap:5px;min-width:0;max-height:47px;margin-left:6px;transition:max-height .24s cubic-bezier(.22,.68,.36,1);display:flex;overflow-y:auto}.trend-legend.expanded[data-v-7027783b]{max-height:100px}.trend-legend[data-v-7027783b]::-webkit-scrollbar{width:6px}.trend-legend[data-v-7027783b]::-webkit-scrollbar-thumb{background:#1c2942;border-radius:3px}.trend-legend[data-v-7027783b]::-webkit-scrollbar-track{background:0 0}.lg-chip[data-v-7027783b]{color:var(--hud-dim);border:1px solid var(--hud-line-soft);cursor:pointer;transition:opacity .15s var(--hud-ease), border-color .15s var(--hud-ease), color .15s var(--hud-ease);background:#0d142099;border-radius:6px;align-items:center;gap:5px;padding:2px 8px;font-size:10.5px;display:flex}.lg-chip[data-v-7027783b]:hover{border-color:var(--hud-line-hi);color:var(--hud-text)}.lg-chip.off[data-v-7027783b]{opacity:.32}.lg-more[data-v-7027783b]{letter-spacing:.04em;color:var(--hud-faint);border-style:dashed;font-size:10px}.lg-more[data-v-7027783b]:hover{color:var(--hud-accent);border-color:#35e0a066}.lg-dot[data-v-7027783b]{border-radius:2px;width:7px;height:7px}.trend-wrap[data-v-7027783b]{flex:1;min-height:0;position:relative}.trend-cv[data-v-7027783b]{width:100%;height:100%;position:absolute;inset:0}.trend-empty[data-v-7027783b]{font-family:var(--font-mono);color:var(--hud-faint);place-content:center;font-size:10.5px;display:grid;position:absolute;inset:0}.inspector[data-v-7027783b]{animation:rise-7027783b .18s var(--hud-ease)}@keyframes rise-7027783b{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.ins-chip-row[data-v-7027783b]{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.ins-chip[data-v-7027783b]{font-family:var(--font-mono);color:var(--hud-dim);border:1px solid #26354a;border-radius:6px;padding:1.5px 7px;font-size:9.5px}.ins-chip.accent[data-v-7027783b]{color:var(--hud-accent);border-color:#35e0a066}.sect-hd[data-v-7027783b]{color:var(--hud-faint);letter-spacing:.16em;align-items:center;gap:6px;margin:10px 0 7px;font-size:10px;font-weight:700;display:flex}.sect-hd[data-v-7027783b]:before{content:"";background:var(--hud-accent);opacity:.55;border-radius:1px;width:3px;height:9px}.obj-row[data-v-7027783b]{align-items:center;gap:8px;margin-bottom:8px;display:flex}.obj-label[data-v-7027783b]{width:52px;color:var(--hud-dim);flex:none;font-size:10.5px}.obj-input[data-v-7027783b],.obj-select[data-v-7027783b]{min-width:0;color:var(--hud-text);background:var(--hud-input);border:1px solid var(--hud-line);transition:border-color .15s var(--hud-ease);border-radius:7px;flex:1;padding:5px 8px;font-size:11.5px}.obj-input[data-v-7027783b]:focus,.obj-select[data-v-7027783b]:focus{border-color:var(--hud-accent);outline:none}.obj-sep[data-v-7027783b]{background:var(--hud-line-soft);height:1px;margin:8px 0}.range-status[data-v-7027783b]{min-width:0;color:var(--hud-faint);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:10px;overflow:hidden}.obj-mini[data-v-7027783b]{color:var(--hud-dim);background:var(--hud-input);border:1px solid var(--hud-line);cursor:pointer;border-radius:7px;flex:none;padding:4px 10px;font-size:10.5px;font-weight:600}.obj-mini.on[data-v-7027783b]{color:#04120c;background:var(--hud-accent);border-color:var(--hud-accent)}.obj-mini.danger[data-v-7027783b]{color:var(--hud-danger);width:100%;margin-top:4px}.obj-range[data-v-7027783b]{accent-color:var(--hud-accent);flex:1}.bp-val[data-v-7027783b]{text-align:right;width:40px;font-family:var(--font-mono);color:var(--hud-text);font-variant-numeric:tabular-nums;flex:none;font-size:10.5px}.bp-seg[data-v-7027783b]{gap:4px;display:flex}.seg-btn[data-v-7027783b]{color:var(--hud-dim);background:var(--hud-input);border:1px solid var(--hud-line);cursor:pointer;transition:border-color .14s var(--hud-ease), color .14s var(--hud-ease), background .14s var(--hud-ease);border-radius:7px;padding:4px 12px;font-size:10.5px;font-weight:600}.seg-btn[data-v-7027783b]:hover{border-color:var(--hud-line-hi);color:var(--hud-text)}.seg-btn.on[data-v-7027783b]{color:#04120c;background:var(--hud-accent);border-color:var(--hud-accent)}.xz-seg[data-v-7027783b]{gap:6px;margin-bottom:8px;display:flex}.xz-seg .seg-btn[data-v-7027783b]{flex:1}.scale-row[data-v-7027783b]{align-items:center;gap:8px;display:flex}.scale-max[data-v-7027783b],.scale-min[data-v-7027783b]{font-family:var(--font-mono);color:var(--hud-faint);font-size:10px}.scale-range[data-v-7027783b]{accent-color:var(--hud-accent);flex:1}.scale-val[data-v-7027783b]{text-align:center;font-family:var(--font-mono);color:var(--hud-text);font-variant-numeric:tabular-nums;margin-bottom:4px;font-size:11px}.ins-foot[data-v-7027783b]{gap:8px;margin-top:12px;display:flex}.ins-del[data-v-7027783b]{color:var(--hud-danger);background:#ff6b6b1a;border:1px solid #ff6b6b66}.ins-del.armed[data-v-7027783b]{background:var(--hud-danger);color:#fff}.ins-empty[data-v-7027783b]{color:var(--hud-faint);text-align:center;padding:8px 0 6px;font-size:11px}.health-body[data-v-7027783b]{align-items:center;gap:14px;display:flex}.donut-wrap[data-v-7027783b]{flex:none;width:118px;height:118px;position:relative}.donut-wrap canvas[data-v-7027783b]{width:118px;height:118px}.donut-center[data-v-7027783b]{text-align:center;place-content:center;display:grid;position:absolute;inset:0}.donut-center b[data-v-7027783b]{font-family:var(--font-mono);color:var(--hud-accent);font-size:21px;font-weight:700}.donut-center span[data-v-7027783b]{color:var(--hud-faint);font-size:9.5px}.health-legend[data-v-7027783b]{flex-direction:column;flex:1;gap:8px;display:flex}.hl-row[data-v-7027783b]{align-items:center;gap:7px;font-size:11.5px;display:flex}.hl-dot[data-v-7027783b]{border-radius:50%;flex:none;width:7px;height:7px}.hl-row .n[data-v-7027783b]{font-family:var(--font-mono);color:var(--hud-text);margin-left:auto;font-size:13px;font-weight:700}.event-list[data-v-7027783b]{flex-direction:column;flex:1;min-height:0;max-height:200px;display:flex;overflow:hidden auto}.event-row[data-v-7027783b]{transition:background .13s var(--hud-ease);border-radius:7px;align-items:center;gap:7px;padding:4px 6px;display:flex}.event-row[data-v-7027783b]:hover{background:#35e0a00d}.ev-time[data-v-7027783b]{font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--hud-faint);flex:none;font-size:10px}.ev-name[data-v-7027783b]{text-overflow:ellipsis;white-space:nowrap;max-width:70px;font-family:var(--font-mono);color:var(--hud-text);flex:none;font-size:10px;font-weight:600;overflow:hidden}.ev-text[data-v-7027783b]{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--hud-dim);flex:1;font-size:10.5px;overflow:hidden}.event-empty[data-v-7027783b]{font-family:var(--font-mono);color:var(--hud-faint);text-align:center;padding:12px;font-size:9.5px}.rail-empty[data-v-7027783b]{font-family:var(--font-mono);letter-spacing:.06em;color:var(--hud-faint);text-align:center;flex-direction:column;align-items:center;gap:7px;padding:16px 10px 13px;font-size:9.5px;display:flex}.rail-empty .re-ico[data-v-7027783b]{fill:none;width:19px;height:19px;stroke:var(--hud-faint);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;opacity:.85}.mm-body[data-v-7027783b]{align-items:stretch;gap:8px;display:flex}.mm-wrap[data-v-7027783b]{border-radius:var(--hud-r-md);background:#060b13;border:1px solid #223050;flex:1;min-height:148px;position:relative;overflow:hidden}.mini-svg[data-v-7027783b]{cursor:crosshair;width:100%;height:100%;position:absolute;inset:0}.nav-cv[data-v-7027783b]{cursor:crosshair;touch-action:none;width:100%;height:100%;position:absolute;inset:0}.alarm-list[data-v-7027783b]{flex-direction:column;display:flex}.al-row[data-v-7027783b]{border-radius:var(--hud-r-md);align-items:flex-start;gap:9px;padding:9px 8px;transition:background .15s;display:flex}.al-row[data-v-7027783b]:hover{background:#101a2c}.al-ico[data-v-7027783b]{border-radius:8px;flex:none;place-items:center;width:28px;height:28px;display:grid}.al-ico.crit[data-v-7027783b]{color:var(--hud-danger);background:#ff6b6b1f}.al-ico.warn[data-v-7027783b]{color:var(--hud-amber);background:#f6c4531f}.al-ico.info[data-v-7027783b]{color:var(--hud-cyan);background:#41c8f41f}.al-svg[data-v-7027783b]{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.al-body[data-v-7027783b]{flex:1;min-width:0}.al-txt[data-v-7027783b]{color:var(--hud-text);font-size:12px;font-weight:500;line-height:1.35}.al-src[data-v-7027783b]{font-family:var(--font-mono);color:var(--hud-faint);margin-top:2px;font-size:9.5px}.al-state[data-v-7027783b]{cursor:pointer;background:0 0;border:1px solid;border-radius:6px;flex:none;margin-top:2px;padding:2px 7px;font-size:9.5px;font-weight:600}.al-state.s0[data-v-7027783b]{color:var(--hud-danger);background:#ff6b6b1a;border-color:#ff6b6b66}.al-state.s1[data-v-7027783b]{color:var(--hud-amber);background:#f6c4531a;border-color:#f6c45359}.al-state.s2[data-v-7027783b]{color:var(--hud-dim);background:#8fa0b514;border-color:#8fa0b54d}.nav-bell-warn[data-v-7027783b]{color:var(--hud-danger);border-color:#ff6b6b80}.mm-col[data-v-7027783b]{flex-direction:column;gap:6px;display:flex}.mm-col .vp-tool[data-v-7027783b]{border-radius:8px;width:30px;height:30px}.mm-meta[data-v-7027783b]{color:var(--hud-faint);letter-spacing:.08em;text-align:center;margin-top:8px;font-size:9.5px}.rpg-lines.chat-embed[data-v-7027783b]{border:1px solid var(--hud-line-soft);border-radius:var(--hud-r-md);background:#0f172680;max-height:268px;padding:2px 0 4px}.chat-sect[data-v-7027783b]{align-items:center;gap:8px;display:flex}.chat-sect .chat-refresh[data-v-7027783b]{margin-left:auto}.chat-id-row[data-v-7027783b]{align-items:center;gap:10px;margin-bottom:4px;display:flex}.chat-badge[data-v-7027783b]{--p-acc:var(--hud-accent);width:34px;height:34px;font-family:var(--font-mono);color:var(--p-acc);background:color-mix(in srgb, var(--p-acc) 10%, transparent);border:1px solid color-mix(in srgb, var(--p-acc) 45%, transparent);border-radius:var(--hud-r-sm);flex:none;place-items:center;font-size:15px;font-weight:700;display:grid}.chat-nameplate[data-v-7027783b]{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.chat-name[data-v-7027783b]{color:var(--hud-text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:650;overflow:hidden}.chat-meta[data-v-7027783b]{align-items:center;gap:6px;display:flex}.chat-state[data-v-7027783b]{font-family:var(--font-mono);letter-spacing:.1em;color:var(--hud-dim);border:1px solid var(--hud-line);border-radius:6px;padding:1px 6px;font-size:10px}.chat-role[data-v-7027783b]{font-family:var(--font-mono);letter-spacing:.12em;border-radius:6px;padding:1px 7px;font-size:10px;font-weight:700}.chat-role.r-lead[data-v-7027783b]{color:var(--hud-amber);background:#f6c4531a;border:1px solid #f6c45373}.chat-role.r-worker[data-v-7027783b]{color:var(--hud-cyan);background:#41c8f41a;border:1px solid #41c8f466}.chat-state.s-busy[data-v-7027783b]{color:var(--hud-amber);border-color:#f6c45380}.chat-state.s-stopped[data-v-7027783b]{color:var(--hud-danger);border-color:#ff6b6b80}.chat-harness[data-v-7027783b]{font-family:var(--font-mono);letter-spacing:.1em;color:var(--hud-faint);font-size:10px}.chat-count[data-v-7027783b]{font-family:var(--font-mono);color:var(--hud-faint);font-size:10px}.chat-refresh[data-v-7027783b]{width:22px;height:22px;font-family:var(--font-mono);color:var(--hud-dim);border:1px solid var(--hud-line);cursor:pointer;transition:border-color .14s var(--hud-ease), color .14s var(--hud-ease), transform .32s var(--hud-ease);background:0 0;border-radius:6px;flex:none;font-size:11px}.chat-refresh[data-v-7027783b]:hover{border-color:var(--hud-accent);color:var(--hud-accent)}.chat-refresh[data-v-7027783b]:active{transform:rotate(180deg)}.rpg-lines[data-v-7027783b]{flex-direction:column;flex:1;gap:7px;min-height:0;padding:10px 12px 12px;display:flex;overflow:hidden auto}.rpg-divider[data-v-7027783b]{font-family:var(--font-mono);letter-spacing:.2em;color:var(--hud-faint);margin:4px 0 2px;font-size:10px}.rpg-divider.live[data-v-7027783b]{color:var(--hud-amber)}.rpg-line[data-v-7027783b]{align-items:flex-start;gap:8px;display:flex}.rpg-time[data-v-7027783b]{text-align:right;width:52px;font-family:var(--font-mono);font-variant-numeric:tabular-nums;color:var(--hud-faint);flex:none;margin-top:5px;font-size:10px}.rpg-bubble[data-v-7027783b]{background:var(--hud-panel-2);border:1px solid var(--hud-line);border-radius:var(--hud-r-md);flex-direction:column;flex:1;gap:2px;min-width:0;padding:7px 11px;display:flex}.rpg-line.hist[data-v-7027783b]{opacity:.62}.rpg-line.live .rpg-bubble[data-v-7027783b]{animation:rise-7027783b .26s var(--hud-ease) both;border-color:var(--hud-line-hi);background:#14213a}.rpg-kind[data-v-7027783b]{font-family:var(--font-mono);letter-spacing:.14em;color:var(--hud-faint);align-self:flex-start;font-size:10px}.rpg-kind.k-artifact[data-v-7027783b]{color:var(--hud-accent)}.rpg-kind.k-error[data-v-7027783b]{color:var(--hud-danger)}.rpg-text[data-v-7027783b]{color:var(--hud-text);word-break:break-word;text-wrap:pretty;font-size:13px;line-height:1.6}.rpg-line.live .rpg-text[data-v-7027783b]{color:#edf4fa}.rpg-typing[data-v-7027783b]{align-items:center;gap:4px;padding:5px 2px;display:flex}.ty-dot[data-v-7027783b]{background:var(--hud-amber);width:5px;height:5px;animation:ty-bounce-7027783b 1.15s var(--hud-ease) infinite;border-radius:50%}.ty-dot[data-v-7027783b]:nth-child(2){animation-delay:.15s}.ty-dot[data-v-7027783b]:nth-child(3){animation-delay:.3s}.ty-label[data-v-7027783b]{font-family:var(--font-mono);color:var(--hud-faint);margin-left:5px;font-size:10px}.rpg-note[data-v-7027783b]{font-family:var(--font-mono);color:var(--hud-dim);text-align:center;padding:14px 0;font-size:10px}.boundary-panel[data-v-7027783b]{z-index:9;border:1px solid var(--hud-line);border-radius:var(--hud-r-lg);width:302px;box-shadow:var(--hud-shadow);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:auto;background:linear-gradient(#101827f7,#0d1420f7);flex-direction:column;gap:7px;padding:12px 14px;display:flex;position:absolute;top:84px;left:16px}.bp-title[data-v-7027783b]{border-bottom:1px solid var(--hud-line);cursor:grab;touch-action:none;align-items:center;gap:8px;padding-bottom:8px;display:flex}.bp-title[data-v-7027783b]:active{cursor:grabbing}.bp-name[data-v-7027783b]{color:var(--hud-text);font-size:13px;font-weight:700}.bp-sub[data-v-7027783b]{font-family:var(--font-mono);letter-spacing:.12em;color:var(--hud-faint);font-size:10px}.bp-tabs[data-v-7027783b]{gap:4px;margin-left:auto;display:flex}.bp-tab[data-v-7027783b]{color:var(--hud-dim);background:var(--hud-input);border:1px solid var(--hud-line);cursor:pointer;border-radius:6px;padding:3px 10px;font-size:10px;font-weight:600}.bp-tab.on[data-v-7027783b]{color:#04120c;background:var(--hud-accent);border-color:var(--hud-accent)}.bp-row[data-v-7027783b]{align-items:center;gap:8px;display:flex}.bp-label[data-v-7027783b]{width:52px;color:var(--hud-dim);flex:none;font-size:10.5px}.bp-range[data-v-7027783b]{appearance:none;background:linear-gradient(90deg, var(--hud-accent-dim) var(--fill,50%), #1d2a42 var(--fill,50%));cursor:pointer;border-radius:2px;flex:1;height:4px}.bp-range[data-v-7027783b]::-webkit-slider-thumb{-webkit-appearance:none;border:2px solid var(--hud-accent);width:12px;height:12px;-webkit-transition:transform .15s var(--hud-ease);transition:transform .15s var(--hud-ease);background:#fff;border-radius:50%}.bp-range[data-v-7027783b]:hover::-webkit-slider-thumb{transform:scale(1.15)}.bp-hint[data-v-7027783b]{color:var(--hud-faint);font-size:10px;line-height:1.6}.bp-actions[data-v-7027783b]{gap:6px;margin-top:4px;display:flex}.bp-btn[data-v-7027783b]{color:var(--hud-text);border-radius:var(--hud-r-sm);cursor:pointer;background:0 0;border:1px solid #27395c;flex:1;padding:6px 10px;font-size:11px;font-weight:600}.bp-btn[data-v-7027783b]:hover{background:#14203a;border-color:#33507c}.bp-btn.save[data-v-7027783b]{color:#04120c;background:var(--hud-accent-dim);border-color:var(--hud-accent-dim)}.bp-btn.save[data-v-7027783b]:hover{background:#25b57e}.bp-btn.danger[data-v-7027783b]{color:var(--hud-danger);border-color:#ff6b6b66}.bp-btn.danger[data-v-7027783b]:hover{background:#ff6b6b1a}.member-list[data-v-7027783b]{flex-direction:column;gap:5px;max-height:220px;display:flex;overflow:hidden auto}.member-row[data-v-7027783b]{background:var(--hud-panel-2);border:1px solid var(--hud-line-soft);border-radius:var(--hud-r-md);align-items:center;gap:8px;padding:6px 8px;display:flex}.member-ava[data-v-7027783b]{width:24px;height:24px;font-family:var(--font-mono);color:var(--hud-text);background:var(--hud-panel-raised);border:1px solid var(--hud-line);border-radius:7px;flex:none;justify-content:center;align-items:center;font-size:10px;font-weight:700;display:inline-flex}.member-info[data-v-7027783b]{flex-direction:column;flex:1;min-width:0;display:flex}.member-name[data-v-7027783b]{color:var(--hud-text);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:600;overflow:hidden}.member-role[data-v-7027783b]{font-family:var(--font-mono);letter-spacing:.06em;color:var(--hud-faint);font-size:10px}.member-role.r-lead[data-v-7027783b]{color:var(--hud-amber)}.member-role.r-worker[data-v-7027783b]{color:var(--hud-cyan)}.member-select[data-v-7027783b]{min-width:0;color:var(--hud-text);background:var(--hud-input);border:1px solid var(--hud-line);border-radius:6px;flex:1;padding:3px 6px;font-size:10px}.drop-chip[data-v-7027783b],.error-chip[data-v-7027783b]{z-index:20;border-radius:var(--hud-r-md);box-shadow:var(--hud-shadow);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-overflow:ellipsis;white-space:nowrap;background:#0e1626f5;border:1px solid #2a3d63;align-items:center;gap:8px;max-width:70%;padding:8px 14px;font-size:11.5px;display:flex;position:absolute;top:64px;left:50%;overflow:hidden;transform:translate(-50%)}.drop-chip[data-v-7027783b]{color:var(--hud-accent)}.error-chip[data-v-7027783b]{color:var(--hud-danger);border-color:#ff6b6b66}.bind-row[data-v-7027783b]{border:1px solid var(--hud-line-soft);border-radius:var(--hud-r-md);background:#0f1726;align-items:center;gap:8px;margin-bottom:6px;padding:7px 9px;display:flex}.bind-ico[data-v-7027783b]{width:26px;height:26px;color:var(--hud-accent);background:#0d1a26;border-radius:7px;flex:none;place-items:center;display:grid}.bind-svg[data-v-7027783b]{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:14px;height:14px}.bind-meta[data-v-7027783b]{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.bind-label[data-v-7027783b]{color:var(--hud-text);text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:600;overflow:hidden}.bind-val[data-v-7027783b]{font-family:var(--font-mono);color:var(--hud-cyan);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.bind-val b[data-v-7027783b]{font-size:11px;font-weight:700}.bind-spark[data-v-7027783b]{flex:none;width:56px;height:20px}.bind-x[data-v-7027783b]{width:22px;height:22px;color:var(--hud-faint);cursor:pointer;background:0 0;border:0;border-radius:6px;flex:none}.bind-x[data-v-7027783b]:hover{color:var(--hud-danger);background:#ff6b6b1f}.bind-add-wrap[data-v-7027783b]{position:relative}.bind-add[data-v-7027783b]{width:100%;height:30px;color:var(--hud-dim);border-radius:var(--hud-r-sm);cursor:pointer;background:0 0;border:1px dashed #274064;font-size:11px;transition:border-color .15s,color .15s}.bind-add[data-v-7027783b]:hover{border-color:var(--hud-accent-dim);color:var(--hud-accent)}.bind-pop[data-v-7027783b]{z-index:30;overscroll-behavior:contain;border-radius:var(--hud-r-md);max-height:min(46vh,420px);box-shadow:var(--hud-shadow-pop,0 16px 40px #0000008c);background:#0e1626;border:1px solid #27395c;position:absolute;bottom:calc(100% + 4px);left:0;right:0;overflow:hidden auto}.bind-pop[data-v-7027783b]::-webkit-scrollbar{width:8px}.bind-pop[data-v-7027783b]::-webkit-scrollbar-thumb{background:#2c4568 padding-box content-box;border:2px solid #0000;border-radius:9999px}.bind-pop[data-v-7027783b]::-webkit-scrollbar-thumb:hover{background:#3d5a85 padding-box content-box}.bind-pop button[data-v-7027783b]{width:100%;color:var(--hud-dim);cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:7px 10px;font-size:11.5px;display:flex}.bind-pop button[data-v-7027783b]:hover{color:var(--hud-text);background:#12203a}.bind-pop .bind-svg[data-v-7027783b]{color:var(--hud-accent)}.bind-pop button>span[data-v-7027783b]{white-space:nowrap;flex:1;align-items:center;gap:6px;min-width:0;display:flex;overflow:hidden}.bp-group[data-v-7027783b]{flex-direction:column;display:flex}.bp-group+.bp-group[data-v-7027783b]{border-top:1px solid #27395c8c}.bp-tpl[data-v-7027783b]{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--hud-faint);padding:6px 10px 3px;font-size:10px}.bp-cur[data-v-7027783b]{color:var(--hud-faint);white-space:nowrap;text-overflow:ellipsis;max-width:96px;margin-left:auto;font-size:9.5px;font-style:normal;overflow:hidden}.bp-empty[data-v-7027783b]{color:var(--hud-faint);padding:10px;font-size:10.5px}.dcw-row[data-v-7027783b]{border:1px solid var(--hud-line);border-radius:var(--hud-r-md);transition:border-color .18s var(--hud-ease), box-shadow .18s var(--hud-ease);background:linear-gradient(#111a2b,#0e1522);flex-direction:column;gap:8px;margin-bottom:7px;padding:9px 10px 10px;display:flex}.dcw-row[data-v-7027783b]:hover{border-color:var(--hud-line-hi);box-shadow:0 6px 18px #03070e66}.dcw-top[data-v-7027783b]{align-items:center;gap:8px;display:flex}.dcw-id[data-v-7027783b]{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.dcw-name[data-v-7027783b]{color:var(--hud-faint);text-overflow:ellipsis;white-space:nowrap;font-size:9.5px;overflow:hidden}.dcw-tag[data-v-7027783b]{font-style:normal;font-family:var(--font-mono);letter-spacing:.08em;color:var(--hud-amber);vertical-align:1px;background:#f6c4531a;border:1px solid #f6c45352;border-radius:4px;margin-left:5px;padding:0 5px;font-size:10px;font-weight:700;display:inline-block}.dcw-cur[data-v-7027783b]{font-family:var(--font-mono);font-variant-numeric:tabular-nums;flex:none;align-items:baseline;gap:3px;display:flex}.dcw-cur b[data-v-7027783b]{color:var(--hud-cyan);text-shadow:0 0 14px #41c8f447;font-size:16px;font-weight:700}.dcw-cur i[data-v-7027783b]{color:var(--hud-faint);font-size:9.5px;font-style:normal}.dcw-win[data-v-7027783b]{border:1px solid var(--hud-line-soft);background:#0a111db8;border-radius:7px;align-items:center;gap:7px;padding:4px 8px;display:flex}.dcw-win em[data-v-7027783b]{letter-spacing:.14em;color:var(--hud-faint);flex:none;font-size:10px;font-style:normal;font-weight:700}.dcw-win-num[data-v-7027783b]{font-family:var(--font-mono);color:var(--hud-dim);font-variant-numeric:tabular-nums;flex:none;font-size:9.5px}.dcw-win-track[data-v-7027783b]{background:#1a2740;border-radius:999px;flex:1;height:4px;position:relative}.dcw-win-track[data-v-7027783b]:before{content:"";border-radius:inherit;background:linear-gradient(90deg,#5a82af66,#5a82af24);position:absolute;inset:0}.dcw-win-track i[data-v-7027783b]{border:2px solid var(--hud-cyan);width:9px;height:9px;transition:left .3s var(--hud-ease);background:#dfeef8;border-radius:50%;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 0 8px #41c8f48c}.dcw-win.recipe em[data-v-7027783b]{color:var(--hud-amber)}.dcw-win.recipe .dcw-win-track[data-v-7027783b]:before{background:linear-gradient(90deg,#f6c45380,#f6c45329)}.dcw-win.recipe .dcw-win-track i[data-v-7027783b]{border-color:var(--hud-amber);box-shadow:0 0 8px #f6c4538c}.dcw-write[data-v-7027783b]{gap:6px;display:flex}.dcw-write input[data-v-7027783b]{min-width:0;height:27px;font-family:var(--font-mono);color:var(--hud-text);background:var(--hud-input);border:1px solid var(--hud-line);transition:border-color .15s var(--hud-ease), box-shadow .15s var(--hud-ease);border-radius:7px;flex:1;padding:0 9px;font-size:11.5px}.dcw-write input[data-v-7027783b]::placeholder{color:var(--hud-faint);font-size:10px}.dcw-write input[data-v-7027783b]:focus{border-color:var(--hud-accent);outline:none;box-shadow:0 0 0 3px #35e0a021}.dcw-send[data-v-7027783b]{height:27px;font-family:var(--font-mono);letter-spacing:.1em;color:#04120c;background:var(--hud-accent-dim);cursor:pointer;transition:background .15s var(--hud-ease), box-shadow .15s var(--hud-ease);border:0;border-radius:7px;flex:none;padding:0 14px;font-size:10.5px;font-weight:700}.dcw-send[data-v-7027783b]:hover:not(:disabled){background:var(--hud-accent);box-shadow:0 0 14px #35e0a059}.dcw-send[data-v-7027783b]:disabled{opacity:.38;cursor:default}.dcw-err[data-v-7027783b]{color:var(--hud-danger);background:#ff6b6b14;border:1px solid #ff6b6b47;border-radius:6px;padding:4px 8px;font-size:10px;display:block}.bind-select[data-v-7027783b]:hover,.daq-ctl-cycle input[data-v-7027783b]:hover,.daq-num[data-v-7027783b]:hover,.obj-input[data-v-7027783b]:hover,.obj-select[data-v-7027783b]:hover{border-color:var(--hud-line-hi)}.bind-select[data-v-7027783b]:focus,.daq-ctl-cycle input[data-v-7027783b]:focus,.daq-num[data-v-7027783b]:focus,.obj-input[data-v-7027783b]:focus,.obj-select[data-v-7027783b]:focus{border-color:var(--hud-accent);outline:none;box-shadow:0 0 0 3px #35e0a021}input[type=number][data-v-7027783b]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}input[type=number][data-v-7027783b]::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}input[type=number][data-v-7027783b]{appearance:textfield}.obj-range[data-v-7027783b],.scale-range[data-v-7027783b]{appearance:none;cursor:pointer;background:#1a2740;border-radius:999px;outline:none;height:4px}.obj-range[data-v-7027783b]::-webkit-slider-thumb{-webkit-appearance:none;border:2px solid var(--hud-accent);width:13px;height:13px;-webkit-transition:transform .15s var(--hud-ease), box-shadow .15s var(--hud-ease);transition:transform .15s var(--hud-ease), box-shadow .15s var(--hud-ease);background:#e8f6ef;border-radius:50%;box-shadow:0 0 0 3px #35e0a026,0 2px 6px #03070e80}.scale-range[data-v-7027783b]::-webkit-slider-thumb{-webkit-appearance:none;border:2px solid var(--hud-accent);width:13px;height:13px;-webkit-transition:transform .15s var(--hud-ease), box-shadow .15s var(--hud-ease);transition:transform .15s var(--hud-ease), box-shadow .15s var(--hud-ease);background:#e8f6ef;border-radius:50%;box-shadow:0 0 0 3px #35e0a026,0 2px 6px #03070e80}.obj-range[data-v-7027783b]::-webkit-slider-thumb:hover{transform:scale(1.18);box-shadow:0 0 0 5px #35e0a033,0 2px 8px #03070e8c}.scale-range[data-v-7027783b]::-webkit-slider-thumb:hover{transform:scale(1.18);box-shadow:0 0 0 5px #35e0a033,0 2px 8px #03070e8c}.obj-range[data-v-7027783b]::-moz-range-thumb{border:2px solid var(--hud-accent);background:#e8f6ef;border-radius:50%;width:13px;height:13px;box-shadow:0 0 0 3px #35e0a026}.scale-range[data-v-7027783b]::-moz-range-thumb{border:2px solid var(--hud-accent);background:#e8f6ef;border-radius:50%;width:13px;height:13px;box-shadow:0 0 0 3px #35e0a026}.obj-range[data-v-7027783b]::-moz-range-track{background:#1a2740;border-radius:999px;height:4px}.scale-range[data-v-7027783b]::-moz-range-track{background:#1a2740;border-radius:999px;height:4px}.bind-row[data-v-7027783b]{transition:border-color .18s var(--hud-ease), box-shadow .18s var(--hud-ease)}.bind-row[data-v-7027783b]:hover{border-color:var(--hud-line-hi);box-shadow:0 6px 18px #03070e66}.bind-add[data-v-7027783b]:hover{background:#35e0a00d;border-style:solid}.daq-bind-bar[data-v-7027783b]{gap:6px;display:flex}.bind-select[data-v-7027783b]{min-width:0;height:28px;color:var(--hud-dim);background:var(--hud-input);border:1px solid var(--hud-line);border-radius:var(--hud-r-sm);transition:border-color .15s var(--hud-ease), box-shadow .15s var(--hud-ease), color .15s var(--hud-ease);flex:1;padding:0 8px;font-size:10.5px}.bind-select[data-v-7027783b]:hover{border-color:var(--hud-line-hi);color:var(--hud-text)}.bind-select[data-v-7027783b]:focus{border-color:var(--hud-accent);color:var(--hud-text);outline:none;box-shadow:0 0 0 3px #35e0a021}.bind-add-btn[data-v-7027783b]{color:#04120c;background:var(--hud-accent-dim);border-radius:var(--hud-r-sm);cursor:pointer;height:28px;transition:background .15s var(--hud-ease), box-shadow .15s var(--hud-ease);border:0;flex:none;padding:0 12px;font-size:10.5px;font-weight:600}.bind-add-btn[data-v-7027783b]:hover:not(:disabled){background:var(--hud-accent);box-shadow:0 0 14px #35e0a059}.bind-add-btn[data-v-7027783b]:disabled{opacity:.4;cursor:default}.daq-info-row[data-v-7027783b]{color:var(--hud-dim);justify-content:space-between;gap:8px;padding:3px 0;font-size:11px;display:flex}.daq-info-row b[data-v-7027783b]{font-family:var(--font-mono);color:var(--hud-text);font-variant-numeric:tabular-nums;font-weight:600}.daq-info-row b.cy[data-v-7027783b]{color:var(--hud-cyan);font-size:13px}.daq-ctrl[data-v-7027783b]{background:var(--hud-panel);border:1px solid var(--hud-line);border-radius:var(--hud-r-sm);justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;padding:8px 10px;display:flex}.daq-ctl-btn[data-v-7027783b]{font-family:var(--font-mono);letter-spacing:.05em;color:var(--hud-dim);cursor:pointer;border:1px solid var(--hud-line-hi);border-radius:var(--hud-r-sm);background:0 0;padding:4px 12px;font-size:11px}.daq-ctl-btn.on[data-v-7027783b]{color:var(--hud-accent);border-color:#35e0a073}.daq-ctl-cycle[data-v-7027783b]{color:var(--hud-faint);align-items:center;gap:5px;font-size:10.5px;display:inline-flex}.daq-ctl-cycle input[data-v-7027783b],.daq-num[data-v-7027783b]{width:64px;font-family:var(--font-mono);color:var(--hud-text);background:var(--hud-input);border:1px solid var(--hud-line);border-radius:6px;padding:2px 6px;font-size:11px}.daq-th-inputs[data-v-7027783b]{color:var(--hud-faint);align-items:center;gap:4px;font-size:10px;display:inline-flex}.bind-add-btn.warn[data-v-7027783b]:not(:disabled){color:var(--hud-amber);box-shadow:none;background:#f6c4531f}.bind-add-btn.warn[data-v-7027783b]:hover:not(:disabled){background:#f6c45333;box-shadow:0 0 14px #f6c45340}.bind-add-btn.danger[data-v-7027783b]:not(:disabled){color:var(--hud-danger);box-shadow:none;background:#ff6b6b1a}.bind-add-btn.danger[data-v-7027783b]:hover:not(:disabled){background:#ff6b6b2e;box-shadow:0 0 14px #ff6b6b40}.statusbar[data-v-7027783b]{border-top:1px solid var(--hud-line-soft);height:30px;color:var(--hud-dim);z-index:60;background:#0a101b;flex:none;align-items:center;gap:18px;padding:0 14px;font-size:11px;display:flex;position:relative}.statusbar b[data-v-7027783b]{color:var(--hud-accent);font-weight:600}.statusbar .sb-stats[data-v-7027783b]{font-family:var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:.02em;align-items:center;gap:7px;display:inline-flex}.sb-stats b[data-v-7027783b]{color:var(--hud-text);font-weight:600}.sb-stats i[data-v-7027783b]{color:var(--hud-line-hi);font-style:normal}.sb-dot[data-v-7027783b]{background:var(--hud-accent);width:7px;height:7px;box-shadow:0 0 6px var(--hud-accent);vertical-align:1px;border-radius:50%;margin-right:6px;display:inline-block}.sb-dot.red[data-v-7027783b]{background:var(--hud-danger);box-shadow:0 0 6px var(--hud-danger)}.sb-dot[data-v-7027783b]:not(.red){animation:sb-pulse-7027783b 2.4s var(--hud-ease) infinite}@keyframes sb-pulse-7027783b{0%,to{opacity:1}50%{opacity:.4}}@media (prefers-reduced-motion:reduce){.sb-dot[data-v-7027783b]:not(.red){animation:none}}.sb-lat[data-v-7027783b]{font-family:var(--font-mono);font-variant-numeric:tabular-nums;position:absolute;left:50%;transform:translate(-50%)}.statusbar .copy[data-v-7027783b]{color:var(--hud-faint);font-family:var(--font-mono);margin-left:auto;font-size:10px}.loading-mask[data-v-7027783b]{z-index:90;background:var(--hud-bg);flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex;position:fixed;inset:0}.loading-spinner[data-v-7027783b]{border:2.5px solid var(--hud-line);border-top-color:var(--hud-accent);border-radius:50%;width:30px;height:30px;animation:.9s linear infinite spin-7027783b}.loading-text[data-v-7027783b]{font-family:var(--font-mono);letter-spacing:.24em;color:var(--hud-dim);font-size:11px}@keyframes spin-7027783b{to{transform:rotate(1turn)}}@keyframes ty-bounce-7027783b{0%,60%,to{opacity:.5;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.drag-grip[data-v-7027783b]{cursor:grab;touch-action:none}.drag-grip[data-v-7027783b]:active{cursor:grabbing}.drag-panel[data-v-7027783b]{will-change:left, top}.town-view[data-v-7027783b] ::-webkit-scrollbar{width:8px;height:8px}.town-view[data-v-7027783b] ::-webkit-scrollbar-track{background:0 0}.town-view[data-v-7027783b] ::-webkit-scrollbar-thumb{background:#1c2942;border:2px solid #080d16;border-radius:4px}.town-view[data-v-7027783b] ::-webkit-scrollbar-thumb:hover{background:#2c4568}.al-state[data-v-7027783b]:active,.bind-add[data-v-7027783b]:active,.bind-x[data-v-7027783b]:active,.bp-btn[data-v-7027783b]:active,.btn[data-v-7027783b]:active,.lg-chip[data-v-7027783b]:active,.mini-btn[data-v-7027783b]:active,.obj-mini[data-v-7027783b]:active,.snap-toggle[data-v-7027783b]:active,.vp-tool[data-v-7027783b]:active{transform:scale(.96)}.al-state[data-v-7027783b],.bind-add[data-v-7027783b],.bp-btn[data-v-7027783b],.btn[data-v-7027783b],.lg-chip[data-v-7027783b],.mini-btn[data-v-7027783b],.obj-mini[data-v-7027783b],.snap-toggle[data-v-7027783b],.vp-tool[data-v-7027783b]{transition-property:filter,background,border-color,color,transform,opacity;transition-duration:.15s;transition-timing-function:var(--hud-ease)}.town-view button[data-v-7027783b]:focus-visible,.town-view input[data-v-7027783b]:focus-visible,.town-view select[data-v-7027783b]:focus-visible{box-shadow:0 0 0 2px var(--hud-bg), 0 0 0 4px #41c8f473;border-radius:6px;outline:none}.vp-title h2[data-v-7027783b]{color:var(--hud-text)}@keyframes estop-pulse-7027783b{50%{filter:brightness(1.35)}}.btn-danger.armed[data-v-7027783b]{animation:1s ease-in-out infinite estop-pulse-7027783b}@media (prefers-reduced-motion:reduce){.callout[data-v-7027783b],.inspector[data-v-7027783b],.btn-danger.armed[data-v-7027783b],.loading-spinner[data-v-7027783b],.rpg-line.live .rpg-bubble[data-v-7027783b],.ty-dot[data-v-7027783b]{animation:none}}.dock-toggle[data-v-7027783b],.sheet-btn[data-v-7027783b],.sheet-hd[data-v-7027783b]{display:none}.sheet-mask[data-v-7027783b]{z-index:69;-webkit-backdrop-filter:blur(1.5px);backdrop-filter:blur(1.5px);background:#03060c9e;position:fixed;inset:0}@media (width<=1023px){.town-view[data-v-7027783b]{--hud-faint:#8b9bb0}.topnav[data-v-7027783b]{flex-wrap:wrap;align-items:center;gap:6px 8px;height:auto;min-height:46px;padding:6px 10px 8px}.brand[data-v-7027783b]{flex:auto;order:0;gap:8px;min-width:0}.brand>div[data-v-7027783b]{min-width:0;overflow:hidden}.brand-name[data-v-7027783b]{white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.nav-right[data-v-7027783b]{flex:none;order:1;gap:6px;margin-left:0}.nav-tabs[data-v-7027783b]{flex:100%;order:2;gap:8px;position:static;transform:none}.seg button[data-v-7027783b]{padding:0 14px;font-size:13px}.nav-action[data-v-7027783b]{height:40px;padding:0 12px;font-size:13px}.save-chip[data-v-7027783b]{font-size:11.5px}.nav-chip[data-v-7027783b]{padding:5px 8px;font-size:11.5px}.avatar-chip[data-v-7027783b]{padding:3px 8px 3px 3px}.avatar-chip span[data-v-7027783b]{font-size:13px}.avatar-fallback[data-v-7027783b]{width:26px;height:26px;font-size:11.5px}.sheet-btn[data-v-7027783b]{border-radius:var(--hud-r-sm);min-height:40px;color:var(--hud-dim);white-space:nowrap;background:#101a2b;border:1px solid #27395c;align-items:center;gap:6px;padding:0 10px;font-size:12.5px;font-weight:600;display:inline-flex}.sheet-btn.on[data-v-7027783b]{color:#04120c;background:var(--hud-accent);border-color:var(--hud-accent);box-shadow:0 0 12px #35e0a04d}.sheet-ico[data-v-7027783b]{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:16px;height:16px}.app[data-v-7027783b]{grid-template-columns:minmax(0,1fr)}.stage-col[data-v-7027783b],.stage[data-v-7027783b]{min-height:0}.stage-top[data-v-7027783b]{flex-wrap:wrap;gap:8px;padding:10px 12px}.vp-title[data-v-7027783b]{gap:8px;padding:6px 10px}.vp-title h2[data-v-7027783b]{font-size:14px}.vp-id[data-v-7027783b]{font-size:11.5px}.vp-tool[data-v-7027783b]{width:40px;height:40px}.vp-svg[data-v-7027783b]{width:17px;height:17px}.angle-chip[data-v-7027783b]{min-height:40px;padding:4px 10px;font-size:13px;top:58px;left:12px}.angle-chip select[data-v-7027783b]{font-size:13px}.kpi-strip[data-v-7027783b]{overscroll-behavior-x:contain;scrollbar-width:none;flex-wrap:nowrap;justify-content:flex-start;gap:8px;padding:0 12px;bottom:10px;overflow-x:auto}.kpi-strip[data-v-7027783b]::-webkit-scrollbar{display:none}.kpi[data-v-7027783b]{flex:none;gap:8px;padding:6px 10px}.kpi-ico[data-v-7027783b]{width:28px;height:28px}.kpi-label[data-v-7027783b]{font-size:11.5px}.kpi-val[data-v-7027783b]{font-size:13px}.kpi-val small[data-v-7027783b]{font-size:11.5px}.rail[data-v-7027783b]{z-index:70;overscroll-behavior:contain;border:0;border-top:1px solid var(--hud-line-hi);visibility:hidden;width:auto;max-height:min(76dvh,640px);transition:transform .26s var(--hud-ease), visibility 0s linear .26s;background:linear-gradient(#0c1420,#080d16 46%);border-radius:16px 16px 0 0;gap:8px;padding:0 10px 12px;position:fixed;inset:auto 0 0;overflow-y:auto;transform:translateY(103%);box-shadow:0 -18px 46px #0009}.rail.sheet-open[data-v-7027783b]{visibility:visible;transition:transform .26s var(--hud-ease), visibility 0s;transform:none}.topnav.sheet-on[data-v-7027783b]{z-index:71}.rail-left[data-v-7027783b],.rail-right[data-v-7027783b]{border-left:0;border-right:0}.rail .panel[data-v-7027783b]{flex:none}.sheet-hd[data-v-7027783b]{z-index:2;border-bottom:1px solid var(--hud-line-soft);background:linear-gradient(#0e1725,#0c1420);align-items:center;gap:8px;margin:0 -10px 2px;padding:13px 12px 9px;display:flex;position:sticky;top:0}.sheet-grip[data-v-7027783b]{background:#2c4568;border-radius:2px;width:40px;height:3px;margin-left:-20px;position:absolute;top:6px;left:50%}.sheet-hd-t[data-v-7027783b]{color:var(--hud-text);letter-spacing:.04em;font-size:13px;font-weight:700}.sheet-x[data-v-7027783b]{border:1px solid var(--hud-line);width:40px;height:40px;color:var(--hud-dim);background:#101a2b;border-radius:8px;flex:none;margin-left:auto;font-size:15px}.dock[data-v-7027783b]{padding:0;display:block}.dock-toggle[data-v-7027783b]{border:0;border-top:1px solid var(--hud-line-soft);width:100%;min-height:44px;color:var(--hud-text);text-align:left;background:linear-gradient(#101827,#0c131f);align-items:center;gap:8px;padding:0 12px;font-size:13px;font-weight:600;display:flex}.dock-toggle-t[data-v-7027783b]{flex:none}.dock-toggle-hint[data-v-7027783b]{color:var(--hud-faint);letter-spacing:.08em;text-overflow:ellipsis;white-space:nowrap;font-size:11.5px;overflow:hidden}.dock-caret[data-v-7027783b]{color:var(--hud-dim);transition:transform .2s var(--hud-ease);flex:none;margin-left:auto}.dock.dock-open .dock-caret[data-v-7027783b]{transform:rotate(180deg)}.dock .dock-card[data-v-7027783b]{display:none}.dock.dock-open[data-v-7027783b]{overscroll-behavior:contain;max-height:52dvh;padding:8px;overflow-y:auto}.dock.dock-open .dock-card[data-v-7027783b]{min-height:0;margin-bottom:8px;display:flex}.dock.dock-open .dock-card[data-v-7027783b]:last-child{margin-bottom:0}.dock-card[data-v-7027783b]{padding:12px}.dock-hd h3[data-v-7027783b]{font-size:13px}.dock-count[data-v-7027783b],.dock-mode[data-v-7027783b],.ctl-sec[data-v-7027783b]{font-size:11.5px}.ctl-row[data-v-7027783b]{flex-wrap:wrap;gap:6px 10px}.ctl-name[data-v-7027783b]{width:auto;min-width:62px;font-size:13px}.ctl-val[data-v-7027783b]{width:auto;min-width:38px;font-size:12.5px}.fps-seg[data-v-7027783b]{flex-wrap:wrap}.fps-seg button[data-v-7027783b]{padding:0 10px;font-size:13px}.snap-toggle[data-v-7027783b],.lg-chip[data-v-7027783b],.trend-empty[data-v-7027783b]{font-size:11.5px}.statusbar[data-v-7027783b]{flex-wrap:wrap;gap:6px 12px;height:auto;min-height:30px;padding:5px 10px;font-size:11.5px}.statusbar .copy[data-v-7027783b]{display:none}.sb-lat[data-v-7027783b]{margin-left:auto;position:static;transform:none}.town-view button[data-v-7027783b]{min-height:40px}.town-view[data-v-7027783b] :where(.panel-tag,.daq-code,.daq-count,.daq-caret,.node-val,.node-dev,.daq-empty-hint,.scene-meta,.scene-cur,.scene-add,.scene-hint,.co-label,.co-range,.lg-chip,.lg-more,.ins-chip,.sect-hd,.obj-label,.range-status,.obj-mini,.bp-val,.seg-btn,.scale-min,.scale-max,.scale-val,.ins-empty,.donut-center span,.ev-time,.ev-name,.ev-text,.event-empty,.rail-empty,.al-src,.al-state,.mm-meta,.chat-state,.chat-role,.chat-harness,.chat-count,.rpg-divider,.rpg-time,.rpg-kind,.ty-label,.rpg-note,.bp-sub,.bp-tab,.bp-label,.bp-hint,.bp-btn,.member-ava,.member-role,.member-select,.bind-label,.bind-val,.bp-tpl,.bp-cur,.bp-empty,.dcw-name,.dcw-tag,.dcw-win-num,.dcw-send,.dcw-err,.bind-select,.bind-add-btn,.daq-ctl-cycle,.daq-num,.daq-th-inputs,.approval-ttl,.approval-detail),.town-view .dock .ctl-sec[data-v-7027783b],.town-view .dock .ctl-val[data-v-7027783b],.town-view .dock .dock-count[data-v-7027783b],.town-view .dock .dock-mode[data-v-7027783b],.town-view .dock .dock-toggle-hint[data-v-7027783b],.town-view .statusbar .copy[data-v-7027783b]{font-size:11.5px}.town-view .dock .ctl-val[data-v-7027783b]{font-size:12.5px}.town-view .dock-hd h3[data-v-7027783b]{font-size:13px}.town-view .bind-val b[data-v-7027783b]{font-size:12px}.town-view .avatar-chip span[data-v-7027783b]{font-size:13px}.town-view .save-chip[data-v-7027783b],.town-view .nav-chip[data-v-7027783b],.town-view .vp-id[data-v-7027783b]{font-size:11.5px}.town-view .loading-text[data-v-7027783b]{font-size:12px}.town-view[data-v-7027783b] :where(.daq-name,.scene-name,.al-txt,.ev-text,.chat-name,.co-val,.rpg-text,.daq-info-row,.daq-ctl-btn,.rail-empty,.rpg-note,.member-name,.bind-label,.dcw-cur){font-size:13px}.town-view .statusbar[data-v-7027783b]{font-size:12px}.town-view .vd-name[data-v-7027783b]{font-size:13px}}@media (width<=639px){.brand[data-v-7027783b]{flex:none}.brand>div[data-v-7027783b]{display:none}.brand-glyph[data-v-7027783b]{width:28px;height:28px}.nav-fps[data-v-7027783b],.nav-user span[data-v-7027783b]{display:none}.avatar-chip[data-v-7027783b]{padding:3px}.sheet-btn-t[data-v-7027783b]{display:none}.sheet-btn[data-v-7027783b]{padding:0 10px}.stage-top[data-v-7027783b]{padding:8px 10px}.vp-tools[data-v-7027783b]{gap:6px}.vp-tool[data-v-7027783b]{width:40px;height:40px}.angle-chip[data-v-7027783b]{top:54px;left:10px}.kpi-strip[data-v-7027783b]{padding:0 10px}.dock.dock-open[data-v-7027783b]{max-height:58dvh}}@media (prefers-reduced-motion:reduce){.rail[data-v-7027783b],.dock-caret[data-v-7027783b]{transition:none}}.approval-card[data-v-7027783b]{border-radius:var(--hud-r-md);background:#f6c4530f;border:1px solid #f6c4534d;margin-bottom:7px;padding:8px 9px}.approval-detail[data-v-7027783b]{color:var(--hud-text);font-size:11px}.approval-ttl[data-v-7027783b]{font-family:var(--font-mono);letter-spacing:.05em;color:var(--hud-amber);margin-top:5px;font-size:9.5px}.approval-ttl.urgent[data-v-7027783b]{color:var(--hud-danger)}
@@ -0,0 +1 @@
1
+ import{a as e,c as t,j as n}from"./BU83-NnX.js";import{$ as r,D as i,G as a,H as o,Ht as s,P as c,R as l,S as u,Ut as d,V as f,Vt as p,W as m,b as h,d as g,et as _,f as v,h as y,ht as b,i as x,m as S,nt as C,p as w,pt as T,tt as E,v as D,xt as O,y as k}from"./CSkxz2NX.js";import{d as ee,f as A,n as j,t as M,u as N}from"./D6uzXueg.js";import{d as P,p as te}from"./BJHKLJJU.js";import{i as F,t as ne}from"./YnQxK3eG.js";import{n as re,r as ie,t as ae}from"./xh3_vYcu.js";import{n as oe}from"./KZQX7xoM.js";import{t as se}from"./D9Oidm5I.js";import{At as I,St as ce,d as L,jt as R,n as z,nt as le,t as B,u as ue,wt as de}from"./4sIEbgcl.js";import{i as fe}from"./DYr1VMiQ.js";import{t as pe}from"./aWWIh8YL.js";import{a as me,i as he,n as ge,r as _e,t as ve}from"./CzlMDL5H.js";import{t as V}from"./lO5tpDZ5.js";import{n as H}from"./JCoYF4IJ.js";import{t as U}from"./Crod5z2f.js";import{t as ye}from"./C4DWUZ6d2.js";import{t as be}from"./JTLM-kqr2.js";import{t as xe}from"./DIaZ2PTo2.js";import{t as W}from"./BDNMzG2s2.js";import{t as Se}from"./DGIuvyRN2.js";import{t as G}from"./CssgYAAL2.js";import{t as Ce}from"./D0ZBQrN_2.js";import{m as we,p as Te,t as Ee}from"./BC9wjTJK2.js";import{t as De}from"./BN6iuJEg2.js";var Oe=e=>{let{componentCls:t,colorBgContainer:n,colorBgBody:r,colorText:i}=e;return{[`${t}-sider-light`]:{background:n,[`${t}-sider-trigger`]:{color:i,background:n},[`${t}-sider-zero-width-trigger`]:{color:i,background:n,border:`1px solid ${r}`,borderInlineStart:0}}}},ke=e=>{let{antCls:t,componentCls:n,colorText:r,colorTextLightSolid:i,colorBgHeader:a,colorBgBody:o,colorBgTrigger:s,layoutHeaderHeight:c,layoutHeaderPaddingInline:l,layoutHeaderColor:u,layoutFooterPadding:d,layoutTriggerHeight:f,layoutZeroTriggerSize:p,motionDurationMid:m,motionDurationSlow:h,fontSize:g,borderRadius:_}=e;return{[n]:I(I({display:`flex`,flex:`auto`,flexDirection:`column`,color:r,minHeight:0,background:o,"&, *":{boxSizing:`border-box`},[`&${n}-has-sider`]:{flexDirection:`row`,[`> ${n}, > ${n}-content`]:{width:0}},[`${n}-header, &${n}-footer`]:{flex:`0 0 auto`},[`${n}-header`]:{height:c,paddingInline:l,color:u,lineHeight:`${c}px`,background:a,[`${t}-menu`]:{lineHeight:`inherit`}},[`${n}-footer`]:{padding:d,color:r,fontSize:g,background:o},[`${n}-content`]:{flex:`auto`,minHeight:0},[`${n}-sider`]:{position:`relative`,minWidth:0,background:a,transition:`all ${m}, background 0s`,"&-children":{height:`100%`,marginTop:-.1,paddingTop:.1,[`${t}-menu${t}-menu-inline-collapsed`]:{width:`auto`}},"&-has-trigger":{paddingBottom:f},"&-right":{order:1},"&-trigger":{position:`fixed`,bottom:0,zIndex:1,height:f,color:i,lineHeight:`${f}px`,textAlign:`center`,background:s,cursor:`pointer`,transition:`all ${m}`},"&-zero-width":{"> *":{overflow:`hidden`},"&-trigger":{position:`absolute`,top:c,insetInlineEnd:-p,zIndex:1,width:p,height:p,color:i,fontSize:e.fontSizeXL,display:`flex`,alignItems:`center`,justifyContent:`center`,background:a,borderStartStartRadius:0,borderStartEndRadius:_,borderEndEndRadius:_,borderEndStartRadius:0,cursor:`pointer`,transition:`background ${h} ease`,"&::after":{position:`absolute`,inset:0,background:`transparent`,transition:`all ${h}`,content:`""`},"&:hover::after":{background:`rgba(255, 255, 255, 0.2)`},"&-right":{insetInlineStart:-p,borderStartStartRadius:_,borderStartEndRadius:0,borderEndEndRadius:0,borderEndStartRadius:_}}}}},Oe(e)),{"&-rtl":{direction:`rtl`}})}},Ae=L(`Layout`,e=>{let{colorText:t,controlHeightSM:n,controlHeight:r,controlHeightLG:i,marginXXS:a}=e,o=i*1.25;return[ke(ue(e,{layoutHeaderHeight:r*2,layoutHeaderPaddingInline:o,layoutHeaderColor:t,layoutFooterPadding:`${n}px ${o}px`,layoutTriggerHeight:i+a*2,layoutZeroTriggerSize:i}))]},e=>{let{colorBgLayout:t}=e;return{colorBgHeader:`#001529`,colorBgBody:t,colorBgTrigger:`#002140`}}),K=()=>({prefixCls:String,hasSider:{type:Boolean,default:void 0},tagName:String});function q(e){let{suffixCls:t,tagName:n,name:r}=e;return e=>u({compatConfig:{MODE:3},name:r,props:K(),setup(r,i){let{slots:a}=i,{prefixCls:o}=z(t,r);return()=>{let t=I(I({},r),{prefixCls:o.value,tagName:n});return h(e,t,a)}}})}var J=u({compatConfig:{MODE:3},props:K(),setup(e,t){let{slots:n}=t;return()=>h(e.tagName,{class:e.prefixCls},n)}}),je=u({compatConfig:{MODE:3},inheritAttrs:!1,props:K(),setup(e,t){let{slots:n,attrs:r}=t,{prefixCls:i,direction:a}=z(``,e),[s,c]=Ae(i),l=T([]);o(me,{addSider:e=>{l.value=[...l.value,e]},removeSider:e=>{l.value=l.value.filter(t=>t!==e)}});let u=g(()=>{let{prefixCls:t,hasSider:n}=e;return{[c.value]:!0,[`${t}`]:!0,[`${t}-has-sider`]:typeof n==`boolean`?n:l.value.length>0,[`${t}-rtl`]:a.value===`rtl`}});return()=>{let{tagName:t}=e;return s(h(t,I(I({},r),{class:[u.value,r.class]}),n))}}}),Y=q({suffixCls:`layout`,tagName:`section`,name:`ALayout`})(je),X=q({suffixCls:`layout-header`,tagName:`header`,name:`ALayoutHeader`})(J),Z=q({suffixCls:`layout-footer`,tagName:`footer`,name:`ALayoutFooter`})(J),Q=q({suffixCls:`layout-content`,tagName:`main`,name:`ALayoutContent`})(J),Me={icon:{tag:`svg`,attrs:{viewBox:`0 0 1024 1024`,focusable:`false`},children:[{tag:`path`,attrs:{d:`M912 192H328c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h584c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zm0 284H328c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h584c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zm0 284H328c-4.4 0-8 3.6-8 8v56c0 4.4 3.6 8 8 8h584c4.4 0 8-3.6 8-8v-56c0-4.4-3.6-8-8-8zM104 228a56 56 0 10112 0 56 56 0 10-112 0zm0 284a56 56 0 10112 0 56 56 0 10-112 0zm0 284a56 56 0 10112 0 56 56 0 10-112 0z`}}]},name:`bars`,theme:`outlined`};function Ne(e){for(var t=1;t<arguments.length;t++){var n=arguments[t]==null?{}:Object(arguments[t]),r=Object.keys(n);typeof Object.getOwnPropertySymbols==`function`&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){Pe(e,t,n[t])})}return e}function Pe(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var Fe=function(e,t){var r=Ne({},e,t.attrs);return h(n,Ne({},r,{icon:Me}),null)};Fe.displayName=`BarsOutlined`,Fe.inheritAttrs=!1;var Ie={xs:`479.98px`,sm:`575.98px`,md:`767.98px`,lg:`991.98px`,xl:`1199.98px`,xxl:`1599.98px`,xxxl:`1999.98px`},Le=()=>({prefixCls:String,collapsible:{type:Boolean,default:void 0},collapsed:{type:Boolean,default:void 0},defaultCollapsed:{type:Boolean,default:void 0},reverseArrow:{type:Boolean,default:void 0},zeroWidthTriggerStyle:{type:Object,default:void 0},trigger:B.any,width:B.oneOfType([B.number,B.string]),collapsedWidth:B.oneOfType([B.number,B.string]),breakpoint:B.oneOf(le(`xs`,`sm`,`md`,`lg`,`xl`,`xxl`,`xxxl`)),theme:B.oneOf(le(`light`,`dark`)).def(`dark`),onBreakpoint:Function,onCollapse:Function}),Re=(()=>{let e=0;return function(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:``;return e+=1,`${t}${e}`}})(),$=u({compatConfig:{MODE:3},name:`ALayoutSider`,inheritAttrs:!1,props:ce(Le(),{collapsible:!1,defaultCollapsed:!1,reverseArrow:!1,width:200,collapsedWidth:80}),emits:[`breakpoint`,`update:collapsed`,`collapse`],setup(e,t){let{emit:n,attrs:a,slots:s}=t,{prefixCls:u}=z(`layout-sider`,e),d=i(me,void 0),f=b(!!(e.collapsed===void 0?e.defaultCollapsed:e.collapsed)),p=b(!1);r(()=>e.collapsed,()=>{f.value=!!e.collapsed}),o(he,f);let m=(t,r)=>{e.collapsed===void 0&&(f.value=t),n(`update:collapsed`,t),n(`collapse`,t,r)},g=b(e=>{p.value=e.matches,n(`breakpoint`,e.matches),f.value!==e.matches&&m(e.matches,`responsive`)}),_;function v(e){return g.value(e)}let y=Re(`ant-sider-`);d&&d.addSider(y),l(()=>{r(()=>e.breakpoint,()=>{try{_?.removeEventListener(`change`,v)}catch{_?.removeListener(v)}if(typeof window<`u`){let{matchMedia:t}=window;if(t&&e.breakpoint&&e.breakpoint in Ie){_=t(`(max-width: ${Ie[e.breakpoint]})`);try{_.addEventListener(`change`,v)}catch{_.addListener(v)}v(_)}}},{immediate:!0})}),c(()=>{try{_?.removeEventListener(`change`,v)}catch{_?.removeListener(v)}d&&d.removeSider(y)});let x=()=>{m(!f.value,`clickTrigger`)};return()=>{let t=u.value,{collapsedWidth:n,width:r,reverseArrow:i,zeroWidthTriggerStyle:o,trigger:c=s.trigger?.call(s),collapsible:l,theme:d}=e,m=f.value?n:r,g=V(m)?`${m}px`:String(m),_=parseFloat(String(n||0))===0?h(`span`,{onClick:x,class:de(`${t}-zero-width-trigger`,`${t}-zero-width-trigger-${i?`right`:`left`}`),style:o},[c||h(Fe,null,null)]):null,v={expanded:h(i?H:U,null,null),collapsed:h(i?U:H,null,null)}[f.value?`collapsed`:`expanded`],y=c===null?null:_||h(`div`,{class:`${t}-trigger`,onClick:x,style:{width:g}},[c||v]),b=[a.style,{flex:`0 0 ${g}`,maxWidth:g,minWidth:g,width:g}],S=de(t,`${t}-${d}`,{[`${t}-collapsed`]:!!f.value,[`${t}-has-trigger`]:l&&c!==null&&!_,[`${t}-below`]:!!p.value,[`${t}-zero-width`]:parseFloat(g)===0},a.class);return h(`aside`,R(R({},a),{},{class:S,style:b}),[h(`div`,{class:`${t}-children`},[s.default?.call(s)]),l||p.value&&_?y:null])}}}),ze=X,Be=Z,Ve=$,He=Q,Ue=I(Y,{Header:X,Footer:Z,Content:Q,Sider:$,install:e=>(e.component(Y.name,Y),e.component(X.name,X),e.component(Z.name,Z),e.component($.name,$),e.component(Q.name,Q),e)}),We=[`width`,`height`],Ge=Object.assign(u({__name:`AwLogo`,props:{size:{default:32}},setup(e){return(t,n)=>(f(),y(`svg`,{width:e.size,height:e.size,viewBox:`0 0 64 64`,fill:`none`,"aria-hidden":`true`},[...n[0]||=[D(`<defs><linearGradient id="aw-logo-gradient" x1="0" y1="0" x2="1" y2="1"><stop offset="0" stop-color="#35e0a0"></stop><stop offset="1" stop-color="#41c8f4"></stop></linearGradient></defs><path d="M32 4 L56 18 V46 L32 60 L8 46 V18 Z" stroke="url(#aw-logo-gradient)" stroke-width="4" stroke-linejoin="round"></path><path d="M32 15 L46.7 23.5 V40.5 L32 49 L17.3 40.5 V23.5 Z" stroke="#41c8f4" stroke-opacity="0.45" stroke-width="1.8" stroke-dasharray="4 3"></path><path d="M32 23 L25 38 M32 23 L39 38 M25 38 L39 38" stroke="#35e0a0" stroke-width="1.8" stroke-opacity="0.75"></path><circle cx="32" cy="23" r="3.4" fill="#35e0a0"></circle><circle cx="25" cy="38" r="3.4" fill="#41c8f4"></circle><circle cx="39" cy="38" r="3.4" fill="#41c8f4"></circle>`,7)]],8,We))}}),{__name:`AwLogo`}),Ke={class:`logo`},qe={class:`logo-mark`,"aria-hidden":`true`},Je={class:`logo-text`},Ye={class:`logo-title`},Xe={class:`app-menu`},Ze={class:`menu-group-label`},Qe={class:`menu-group-text`},$e={class:`menu-group-sep`,"aria-hidden":`true`},et=[`title`,`onClick`],tt={class:`sider-footer`},nt={class:`footer-line`},rt=Object.assign(W(u({__name:`AppSidebar`,setup(e){let t=xe(),{t:n}=oe(),i=te(),a=ae(),o=re(),s=T(!1),u=g(()=>[{id:`console`,label:n(`menu.groups.console`),items:[{key:`/`,icon:`i-tabler-layout-dashboard`,label:n(`menu.dashboard`),motion:`im-pop`},{key:`/workshop`,icon:`i-tabler-box`,label:n(`menu.workshop`),motion:`im-pop`},{key:`/town`,icon:`i-tabler-map-2`,label:n(`menu.town`),motion:`im-pop`},{key:`/daq`,icon:`i-tabler-activity`,label:n(`menu.daq`),motion:`im-pop`},{key:`/dcw`,icon:`i-tabler-settings-automation`,label:n(`menu.dcw`),motion:`im-pop`},{key:`/aml`,icon:`i-tabler-flask`,label:n(`menu.aml`),motion:`im-pop`}]},{id:`ops`,label:n(`menu.groups.ops`),items:[{key:`/monitor`,icon:`i-tabler-cpu`,label:n(`menu.monitor`),motion:`im-pulse`},{key:`/logs`,icon:`i-tabler-list-details`,label:n(`menu.logs`),motion:`im-pop`}]},{id:`system`,label:n(`menu.groups.system`),items:[{key:`/tokens`,icon:`i-tabler-key`,label:n(`menu.tokens`),motion:`im-nudge-up`},{key:`/users`,icon:`i-tabler-users-group`,label:n(`menu.users`),motion:`im-pop`},{key:`/permissions`,icon:`i-tabler-shield-lock`,label:n(`menu.permissions`),motion:`im-pop`,adminOnly:!0},{key:`/plugins`,icon:`i-tabler-puzzle`,label:n(`menu.plugins`),motion:`im-pop`},{key:`/settings`,icon:`i-tabler-settings`,label:n(`menu.settings`),motion:`im-rotate`}]}].map(e=>({...e,items:e.items.filter(e=>!e.adminOnly||s.value&&t.isAdmin)})).filter(e=>e.items.length>0)),b=e=>e===`/`?i.path===`/`:i.path.startsWith(e),w=e=>{D.value&&o.closeMobileNav(),b(e)||P(e)},{isDrawer:D,isTablet:k}=Se();l(()=>{s.value=!0});let ee=g(()=>s.value?D.value?`drawer`:k.value?`rail`:`full`:void 0),A=g(()=>D.value?!1:k.value?!0:o.sidebarCollapsed),j=g(()=>!A.value),F=g(()=>D.value&&o.mobileNavOpen);r(()=>i.path,()=>{o.mobileNavOpen&&o.closeMobileNav()}),_(()=>{typeof document>`u`||(document.body.classList.toggle(`nav-drawer`,D.value),document.body.classList.toggle(`nav-drawer-open`,F.value))}),c(()=>{typeof document>`u`||document.body.classList.remove(`nav-drawer`,`nav-drawer-open`)}),r(F,e=>{typeof document>`u`||(document.body.style.overflow=e?`hidden`:``)});let ne=e=>{e.key===`Escape`&&F.value&&o.closeMobileNav()};return l(()=>window.addEventListener(`keydown`,ne)),c(()=>{window.removeEventListener(`keydown`,ne),typeof document<`u`&&(document.body.style.overflow=``)}),(e,t)=>{let n=Ge,r=Ve;return f(),y(x,null,[h(r,{collapsed:O(A),trigger:null,collapsible:``,width:228,"collapsed-width":64,class:`app-sider`,"data-nav-mode":O(ee),"aria-hidden":O(D)&&!O(F)?`true`:void 0},{default:E(()=>[v(`div`,Ke,[v(`div`,qe,[h(n,{size:30})]),h(M,{name:`slide-fade`},{default:E(()=>[C(v(`div`,Je,[v(`span`,Ye,d(O(a).name),1),t[1]||=v(`span`,{class:`logo-sub`},`digital twin`,-1)],512),[[N,O(j)]])]),_:1})]),v(`nav`,Xe,[(f(!0),y(x,null,m(O(u),e=>(f(),y(`div`,{key:e.id,class:`menu-group`},[C(v(`div`,Ze,[v(`span`,Qe,d(e.label),1),t[2]||=v(`span`,{class:`menu-group-rule`,"aria-hidden":`true`},null,-1)],512),[[N,O(j)]]),C(v(`div`,$e,null,512),[[N,!O(j)]]),(f(!0),y(x,null,m(e.items,e=>(f(),y(`button`,{key:e.key,type:`button`,class:p([`menu-item im`,{active:b(e.key)}]),title:O(j)?void 0:e.label,onClick:t=>w(e.key)},[v(`span`,{class:p([`menu-icon`,[e.icon,e.motion]])},null,2),C(v(`span`,{class:`menu-label`},d(e.label),513),[[N,O(j)]])],10,et))),128))]))),128))]),C(v(`div`,tt,[t[4]||=v(`div`,{class:`footer-rule`},null,-1),v(`div`,nt,[v(`span`,null,`v`+d(O(a).version),1),t[3]||=v(`span`,{class:`sep`},`/`,-1),v(`span`,null,d(O(a).mode),1)])],512),[[N,O(j)]])]),_:1},8,[`collapsed`,`data-nav-mode`,`aria-hidden`]),O(F)?(f(),y(`div`,{key:0,class:`nav-scrim`,"aria-hidden":`true`,onClick:t[0]||=e=>O(o).closeMobileNav()})):S(``,!0)],64)}}}),[[`__scopeId`,`data-v-a91ac3dd`]]),{__name:`AppSidebar`}),it=F(`app.routeTrail`,()=>{let e=T([]);function t(t){if(!t||t.startsWith(`/api`))return;let n=e.value.filter(e=>e.path!==t);e.value=[...n,{path:t,at:Date.now()}].slice(-8)}function n(t){let n=e.value.findIndex(e=>e.path===t);return n>=0&&(e.value=e.value.filter(e=>e.path!==t)),n}function r(){e.value=[]}return{waypoints:e,visit:t,remove:n,clear:r}},{persist:{pick:[`waypoints`],storage:ie.localStorage()}});function at(){let{t:e}=oe(),t=G(),n={"/":{key:`menu.dashboard`,icon:`i-tabler-layout-dashboard`},"/workshop":{key:`menu.workshop`,icon:`i-tabler-box`},"/workshop/agents":{key:`meta.agents`,icon:`i-tabler-users`},"/workshop/teams":{key:`meta.teams`,icon:`i-tabler-users-group`},"/workshop/channel-templates":{key:`meta.ctpl`,icon:`i-tabler-layout-grid-add`},"/town":{key:`menu.town`,icon:`i-tabler-map-2`},"/tokens":{key:`menu.tokens`,icon:`i-tabler-key`},"/daq":{key:`menu.daq`,icon:`i-tabler-activity`},"/dcw":{key:`menu.dcw`,icon:`i-tabler-settings-automation`},"/aml":{key:`menu.aml`,icon:`i-tabler-flask`},"/logs":{key:`menu.logs`,icon:`i-tabler-list-details`},"/permissions":{key:`menu.permissions`,icon:`i-tabler-shield-lock`},"/plugins":{key:`menu.plugins`,icon:`i-tabler-puzzle`},"/users":{key:`menu.users`,icon:`i-tabler-users-group`},"/monitor":{key:`menu.monitor`,icon:`i-tabler-cpu`},"/settings":{key:`menu.settings`,icon:`i-tabler-settings`}};return{metaFor:r=>{let i=n[r];if(i)return{title:e(i.key),icon:i.icon};let a=r.match(/^\/workshop\/w\/([^/]+)$/);if(a){let n=a[1];return{title:t.workspaces.find(e=>e.id===n)?.name??`${e(`header.workspace`)} ${n.slice(0,6)}`,icon:`i-tabler-console`}}let o=r.split(`/`).filter(Boolean).pop()??`·`;return{title:o.charAt(0).toUpperCase()+o.slice(1),icon:`i-tabler-point`}}}}var ot={class:`header-left`},st=[`aria-label`,`aria-expanded`],ct={class:`mobile-title`},lt=[`aria-label`],ut=[`title`,`onClick`,`onKeydown`],dt={class:`node-title`},ft=[`aria-label`,`title`,`onClick`],pt={class:`header-right`},mt=[`title`],ht={class:`hitl-count`},gt={class:`hitl-menu`},_t={class:`hitl-menu-title`},vt=[`onClick`],yt={class:`hitl-item-top`},bt={class:`hitl-item-agent`},xt={class:`hitl-item-kind`},St={class:`hitl-item-title`},Ct=[`title`],wt={class:`user-chip`},Tt={class:`user-initial aw-avatar`},Et={class:`user-meta`},Dt={class:`user-name`},Ot={class:`user-role`},kt=Object.assign(W(u({__name:`AppHeader`,setup(n){let{t:i,locale:a,locales:o,setLocale:s}=oe(),u=re(),_=te(),b=it(),C=xe(),{metaFor:D}=at(),M=Te(),N=Ee(),F=()=>{C.isLoggedIn&&N.ensureConnected()};r(()=>C.token,e=>{e?(F(),M.loadSnapshot()):M.clear()},{immediate:!0});let ie=new Set([`codex-approval`,`opencode-permission`,`dsh-permission`]),ae=e=>{switch(e){case`omp-dialog`:return i(`appHeader.hitlKindOmp`);case`dcw-approval`:return i(`appHeader.hitlKindDcw`);case`codex-approval`:return i(`appHeader.hitlKindCodex`);case`opencode-permission`:return i(`appHeader.hitlKindOpencode`);case`dsh-permission`:return i(`appHeader.hitlKindDsh`);default:return e}},I=e=>{P({path:`/monitor`,query:{agentId:e.agentId,channelId:e.channelId}})},ce=De(),L=T(null),R=async(t,n)=>{L.value=`${t.kind}:${t.id}`;try{await ce.respondHitl({kind:t.kind,id:t.id,confirmed:n,cancelled:!n}),await M.loadSnapshot()}catch(t){e.error(Ce(t))}finally{L.value=null}},z=g(()=>o.value.map(e=>({label:ue.value?e.code.split(`-`)[0].toUpperCase():e.name,value:e.code}))),le=e=>{e!=null&&(ne(`aw.locale`,{maxAge:31536e3}).value=String(e),localStorage.setItem(`aw.locale`,String(e)),s(String(e)),window.location.reload())},{isDrawer:B,isMobile:ue}=Se(),de=g(()=>B.value?u.mobileNavOpen?i(`header.closeNav`):i(`header.openNav`):u.sidebarCollapsed?i(`header.expand`):i(`header.collapse`)),me=()=>{B.value?u.toggleMobileNav():u.toggleSidebar()},he=g(()=>D(_.path).title),V=T(!1),H=T(!1),U=null;r(()=>_.path,()=>{b.visit(_.path),H.value=!1,requestAnimationFrame(()=>{H.value=!0,U&&clearTimeout(U),U=setTimeout(()=>{H.value=!1},620)})},{immediate:!1}),l(()=>{V.value=!0,b.visit(_.path)}),c(()=>{U&&clearTimeout(U)});let be=e=>{e!==_.path&&P(e)},W=e=>{let t=b.remove(e);if(e!==_.path)return;let n=b.waypoints,r=n[Math.min(Math.max(t-1,0),Math.max(n.length-1,0))]?.path??`/`;P(r)},G=T(!1);function Oe(){document.fullscreenElement?(document.exitFullscreen(),G.value=!1):(document.documentElement.requestFullscreen(),G.value=!0)}let ke=g(()=>(C.user?.name??`?`).trim().charAt(0).toUpperCase()),Ae=g(()=>C.user?.name??i(`header.guest`)),K=g(()=>C.isLoggedIn?C.user?.role??`user`:`anonymous`),q=we(),J=g(()=>q.state!==`closed`||q.lastDataAt>0),je=g(()=>q.state===`open`?q.pendingReplay?`syncing`:`live`:q.state===`connecting`?`syncing`:`down`),Y=g(()=>q.state===`open`?q.pendingReplay?i(`appHeader.kwsdot0002`):i(`appHeader.kwsdot0001`):q.state===`connecting`?i(`appHeader.kwsdot0003`):i(`appHeader.kwsdot0004`)),X=g(()=>{let e=[{key:`tokens`,icon:`i-tabler-key`,label:i(`menu.tokens`)},{key:`settings`,icon:`i-tabler-adjustments`,label:i(`menu.settings`)}];return C.isLoggedIn&&(e.push({key:`d-logout`,label:``,divider:!0}),e.push({key:`logout`,icon:`i-tabler-logout`,label:i(`header.logout`),danger:!0})),e}),Z=async({key:e})=>{e===`settings`?P(`/settings`):e===`tokens`?P(`/tokens`):e===`logout`&&(await C.logout(),P(`/workshop`))};return(e,n)=>{let r=t,o=ye,s=se,c=fe,l=pe,g=ge,C=_e,T=ve,N=ze;return f(),w(N,{class:`app-header app-header-glass`},{default:E(()=>[v(`div`,ot,[v(`button`,{class:`collapse-btn`,"aria-label":O(de),"aria-expanded":O(B)?O(u).mobileNavOpen:!O(u).sidebarCollapsed,onClick:n[0]||=e=>me()},[...n[3]||=[v(`span`,{class:`i-tabler-menu-2`},null,-1)]],8,st),v(`span`,ct,d(O(he)),1),n[5]||=v(`span`,{class:`rail-mark i-tabler-route`},null,-1),v(`nav`,{class:`trail`,"aria-label":O(i)(`header.trail`)},[h(j,{name:`stamp`,tag:`div`,class:`trail-row`},{default:E(()=>[O(V)?(f(!0),y(x,{key:0},m(O(b).waypoints,(t,r)=>(f(),y(x,{key:t.path},[r>0?(f(),y(`span`,{key:`link-${t.path}`,class:`trail-link`,"aria-hidden":`true`})):S(``,!0),v(`div`,{class:p([`trail-node`,{active:t.path===O(_).path}]),role:`button`,tabindex:`0`,title:O(D)(t.path).title,onClick:e=>be(t.path),onKeydown:ee(A(e=>be(t.path),[`prevent`]),[`enter`])},[v(`span`,{class:p([`node-icon`,O(D)(t.path).icon])},null,2),v(`span`,dt,d(O(D)(t.path).title),1),v(`button`,{class:`node-close`,"aria-label":e.$t(`appHeader.kzwjv99001`,{p0:O(D)(t.path).title}),title:e.$t(`appHeader.kzwjv99001`,{p0:O(D)(t.path).title}),onClick:A(e=>W(t.path),[`stop`])},[...n[4]||=[v(`span`,{class:`i-tabler-x`},null,-1)]],8,ft)],42,ut)],64))),128)):S(``,!0)]),_:1})],8,lt)]),v(`div`,pt,[h(s,null,{default:E(()=>[O(M).count>0?(f(),w(o,{key:0,placement:`bottomRight`},{overlay:E(()=>[v(`div`,gt,[v(`div`,_t,d(O(i)(`appHeader.hitlBadge`))+` · `+d(O(M).count),1),(f(!0),y(x,null,m(O(M).items,e=>(f(),y(`button`,{key:`${e.kind}:${e.id}`,class:`hitl-item`,onClick:t=>I(e)},[v(`span`,yt,[v(`span`,bt,d(e.agentName),1),v(`span`,xt,d(ae(e.kind)),1)]),v(`span`,St,d(e.title),1),O(ie).has(e.kind)?(f(),y(`span`,{key:0,class:`hitl-item-actions`,onClick:n[1]||=A(()=>{},[`stop`])},[h(r,{size:`small`,type:`primary`,loading:O(L)===`${e.kind}:${e.id}`,onClick:t=>R(e,!0)},{default:E(()=>[k(d(O(i)(`appHeader.hitlApprove`)),1)]),_:1},8,[`loading`,`onClick`]),h(r,{size:`small`,danger:``,disabled:O(L)===`${e.kind}:${e.id}`,onClick:t=>R(e,!1)},{default:E(()=>[k(d(O(i)(`appHeader.hitlReject`)),1)]),_:1},8,[`disabled`,`onClick`])])):S(``,!0)],8,vt))),128))])]),default:E(()=>[v(`button`,{class:`icon-btn hitl-bell`,title:O(i)(`appHeader.hitlBadge`)},[n[6]||=v(`span`,{class:`i-tabler-bell-ringing`},null,-1),v(`span`,ht,d(O(M).count),1)],8,mt)]),_:1})):S(``,!0)]),_:1}),O(V)&&O(J)?(f(),y(`span`,{key:0,class:p([`ws-dot`,O(je)]),title:O(Y)},null,10,Ct)):S(``,!0),h(c,{title:O(i)(`header.fullscreen`)},{default:E(()=>[v(`button`,{class:`icon-btn hdr-fullscreen`,onClick:Oe},[v(`span`,{class:p([`i-tabler-arrows-maximize`,{hidden:O(G)}])},null,2),v(`span`,{class:p([`i-tabler-arrows-minimize`,{hidden:!O(G)}])},null,2)])]),_:1},8,[`title`]),h(l,{id:`hdr-locale`,value:O(a),size:`middle`,options:O(z),class:`lang-select`,onChange:le},null,8,[`value`,`options`]),h(c,{title:O(u).isDark?O(i)(`common.light`):O(i)(`common.dark`)},{default:E(()=>[v(`button`,{class:`icon-btn`,onClick:n[2]||=e=>O(u).toggleDark()},[v(`span`,{class:p([`i-tabler-sun-high`,{hidden:O(u).isDark}])},null,2),v(`span`,{class:p([`i-tabler-moon-stars`,{hidden:!O(u).isDark}])},null,2)])]),_:1},8,[`title`]),h(o,null,{overlay:E(()=>[h(T,{onClick:Z},{default:E(()=>[(f(!0),y(x,null,m(O(X),e=>(f(),y(x,{key:e.key},[e.divider?(f(),w(g,{key:0})):(f(),w(C,{key:e.key,danger:e.danger},{default:E(()=>[v(`span`,{class:p([e.icon,`mr-2`])},null,2),k(` `+d(e.label),1)]),_:2},1032,[`danger`]))],64))),128))]),_:1})]),default:E(()=>[v(`div`,wt,[h(s,null,{fallback:E(()=>[...n[7]||=[v(`span`,{class:`user-initial aw-avatar`},`·`,-1),v(`span`,{class:`user-meta`},[v(`span`,{class:`user-name`},`·`),v(`span`,{class:`user-role`},`·`)],-1)]]),default:E(()=>[v(`span`,Tt,d(O(ke)),1),v(`span`,Et,[v(`span`,Dt,d(O(Ae)),1),v(`span`,Ot,d(O(K)),1)])]),_:1})])]),_:1})]),v(`span`,{class:p([`plotter-line`,{run:O(H)}]),"aria-hidden":`true`},null,2)]),_:1})}}}),[[`__scopeId`,`data-v-1742cc1f`]]),{__name:`AppHeader`}),At={class:`footer-title aw-serif-accent`},jt={class:`footer-corner`},Mt=W(u({__name:`default`,setup(e){let{token:t}=be.useToken(),n=ae();return(e,r)=>{let i=rt,o=kt,c=He,l=Be,u=Ue;return f(),w(u,{class:`app-layout`,"has-sider":``},{default:E(()=>[h(i),h(u,{class:`app-main`,style:s({background:`transparent`,"--app-bg-container":O(t)?.colorBgContainer,"--app-bg-layout":O(t)?.colorBgLayout,"--app-text":O(t)?.colorText,"--app-text-secondary":O(t)?.colorTextSecondary,"--app-border":O(t)?.colorBorderSecondary,"--app-fill":O(t)?.colorFillQuaternary,"--app-header-h":`56px`,"--app-footer-h":`46px`})},{default:E(()=>[h(o),h(c,{class:`app-content`},{default:E(()=>[a(e.$slots,`default`,{},void 0,!0)]),_:3}),h(l,{class:`app-footer`,style:s({color:O(t)?.colorTextSecondary})},{default:E(()=>[v(`span`,At,d(O(n).title),1),r[4]||=v(`span`,{class:`sep`},`/`,-1),v(`span`,null,`mode=`+d(O(n).mode),1),v(`span`,jt,[v(`span`,null,`v`+d(O(n).version),1),r[0]||=v(`span`,{class:`sep`},`·`,-1),r[1]||=v(`a`,{class:`footer-link`,href:`https://github.com/kingdol666/AgentWorkShop`,target:`_blank`,rel:`noopener`},`GitHub`,-1),r[2]||=v(`span`,{class:`sep`},`·`,-1),r[3]||=v(`a`,{class:`footer-link`,href:`https://kingdol666.github.io/AgentWorkShop/`,target:`_blank`,rel:`noopener`},`Docs`,-1)])]),_:1},8,[`style`])]),_:3},8,[`style`]),r[5]||=v(`span`,{class:`aw-noise`,"aria-hidden":`true`},null,-1)]),_:3})}}}),[[`__scopeId`,`data-v-e4abc244`]]);export{Mt as default};
@@ -0,0 +1 @@
1
+ .page[data-v-a4c18069]{padding:4px}.back[data-v-a4c18069]{color:var(--ink-faint);text-decoration:none}.back[data-v-a4c18069]:hover{color:var(--accent)}.aw-page-head h1[data-v-a4c18069]{letter-spacing:-.01em;margin:2px 0 4px;font-size:26px;font-weight:400}.mono[data-v-a4c18069]{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.sec[data-v-a4c18069]{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint);margin:0 0 10px;font-size:12px;font-weight:600}.mt[data-v-a4c18069]{margin-top:22px}.err[data-v-a4c18069]{color:var(--tone-danger-dot);margin-top:14px;font-size:13px}.grid[data-v-a4c18069]{grid-template-columns:minmax(260px,340px) minmax(320px,1fr) minmax(280px,380px);align-items:start;gap:14px;display:grid}@media (width<=1100px){.grid[data-v-a4c18069]{grid-template-columns:1fr}}.pad[data-v-a4c18069],.value-card[data-v-a4c18069]{padding:16px 18px}.big-val[data-v-a4c18069]{color:var(--accent);margin:8px 0 10px;font-size:40px;line-height:1.1}.big-val small[data-v-a4c18069]{color:var(--ink-faint);margin-left:8px;font-size:15px}.live-canvas[data-v-a4c18069]{border:1px solid var(--line);border-radius:var(--radius-chip);background:var(--paper-deep);width:100%;height:64px}.facts[data-v-a4c18069]{flex-direction:column;gap:4px;margin:14px 0 0;display:flex}.facts div[data-v-a4c18069]{justify-content:space-between;font-size:11.5px;display:flex}.facts dt[data-v-a4c18069]{color:var(--ink-faint)}.facts dd[data-v-a4c18069]{color:var(--ink);margin:0}.form-grid[data-v-a4c18069]{flex-direction:column;gap:10px;display:flex}.field[data-v-a4c18069]{color:var(--ink-faint);flex-direction:column;flex:1;gap:4px;font-size:12px;display:flex}.field.row[data-v-a4c18069]{flex-direction:row;align-items:center;gap:8px}.field.row small[data-v-a4c18069]{color:var(--ink-faint)}.field-row[data-v-a4c18069]{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.input[data-v-a4c18069]{width:100%;color:var(--ink);background:var(--paper-raised);border:1px solid var(--line-strong);border-radius:var(--radius-chip);padding:6px 9px;font-size:12.5px}.input[data-v-a4c18069]:disabled{opacity:.45}.grow[data-v-a4c18069]{flex:auto}.toggle[data-v-a4c18069]{cursor:pointer;color:var(--tone-neutral-dot);background:var(--tone-neutral-bg);border-radius:var(--radius-chip);border:0;align-self:flex-start;padding:6px 12px;font-size:12px}.toggle.on[data-v-a4c18069]{color:var(--tone-success-dot);background:var(--tone-success-bg)}.toggle.slim[data-v-a4c18069]{padding:6px 10px;font-size:11.5px}.bind-row[data-v-a4c18069]{gap:8px;display:flex}.driver-grid[data-v-a4c18069]{grid-template-columns:repeat(2,1fr);gap:8px;display:grid}.field em[data-v-a4c18069]{color:var(--tone-danger-dot);margin-left:2px;font-style:normal}.test-row[data-v-a4c18069]{align-items:center;gap:10px;margin-top:8px;display:flex}.test-out[data-v-a4c18069]{font-size:11px}.test-out.ok[data-v-a4c18069]{color:var(--tone-success-dot)}.test-out.bad[data-v-a4c18069]{color:var(--tone-danger-dot)}.col-hist[data-v-a4c18069]{min-width:0}.hist-hd[data-v-a4c18069]{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.hist-ctl[data-v-a4c18069]{align-items:center;gap:6px;display:flex}.refresh-ctl[data-v-a4c18069]{color:var(--ink-soft);align-items:center;gap:3px;font-size:11px;display:inline-flex}.refresh-ctl input[data-v-a4c18069]{width:62px;color:var(--ink-soft);background:var(--paper-deep);border:1px solid var(--line-strong);border-radius:var(--radius-chip);padding:3px 6px;font-size:11px}.refresh-ctl input[data-v-a4c18069]:focus{border-color:var(--accent);outline:none}.hist-canvas[data-v-a4c18069]{border:1px solid var(--line);border-radius:var(--radius-chip);background:var(--paper-deep);width:100%;height:130px}.raw-table[data-v-a4c18069]{border-collapse:collapse;width:100%;margin-top:10px;font-size:11px}.raw-table td[data-v-a4c18069],.raw-table th[data-v-a4c18069]{text-align:left;border-bottom:1px solid var(--divider-hair);padding:4px 6px}.raw-table th[data-v-a4c18069]{letter-spacing:.05em;text-transform:uppercase;color:var(--ink-faint);font-weight:600}.st-pill[data-v-a4c18069]{font-family:var(--font-mono);letter-spacing:.04em;border-radius:var(--radius-pill);padding:3px 11px;font-size:11px;display:inline-block}.st-pill.ok[data-v-a4c18069]{color:var(--tone-success-dot);background:var(--tone-success-bg)}.st-pill.warn[data-v-a4c18069]{color:var(--tone-warning-dot);background:var(--tone-warning-bg)}.st-pill.alarm[data-v-a4c18069]{color:var(--tone-danger-dot);background:var(--tone-danger-bg)}.st-pill.offline[data-v-a4c18069]{color:var(--tone-neutral-dot);background:var(--tone-neutral-bg)}.frames-tile[data-v-a4c18069]{margin-top:14px}.frames-n[data-v-a4c18069]{color:var(--ink-faint);margin-left:8px}.vec-svg[data-v-a4c18069]{background:var(--tone-neutral-bg);border-radius:6px;width:100%;height:96px;margin-bottom:10px;display:block}.gal[data-v-a4c18069]{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.gal-item[data-v-a4c18069]{cursor:zoom-in;margin:0}.gal-item img[data-v-a4c18069]{aspect-ratio:4/3;-o-object-fit:cover;object-fit:cover;background:var(--tone-neutral-bg);border-radius:6px;width:100%;display:block}.gal-item figcaption[data-v-a4c18069]{color:var(--ink-faint);text-overflow:ellipsis;white-space:nowrap;margin-top:4px;font-size:11px;overflow:hidden}.frames-empty[data-v-a4c18069]{color:var(--ink-faint);margin:8px 0;font-size:13px}.gal-full[data-v-a4c18069]{z-index:60;cursor:zoom-out;background:#000000b8;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.gal-full img[data-v-a4c18069]{border-radius:8px;max-width:92vw;max-height:92vh}
@@ -0,0 +1 @@
1
+ .line-chip[data-v-84c0b97c]{vertical-align:-1px;border-radius:3px;width:10px;height:10px;margin-right:8px;display:inline-block;box-shadow:0 0 10px}.param-chip.daqwin[data-v-84c0b97c]{color:#41c8f4;border-color:#41c8f466}.adopt-card[data-v-84c0b97c]{flex-wrap:wrap;align-items:flex-start;gap:12px;display:flex}.adopt-title[data-v-84c0b97c]{color:var(--aw-dim,#8fa0b5);flex:none;padding-top:4px;font-size:12px}.adopt-list[data-v-84c0b97c]{flex-wrap:wrap;gap:8px;display:flex}.adopt-chip[data-v-84c0b97c]{color:#e8eef8;background:#0d1420b3;border:1px solid #3c506e80;border-radius:8px;flex-wrap:wrap;align-items:center;gap:6px;padding:4px 8px;font-size:11.5px;display:inline-flex}.page[data-v-84c0b97c]{padding:4px}h1[data-v-84c0b97c]{letter-spacing:-.015em;margin:2px 0 4px;font-size:30px;font-weight:400}.ledger-card[data-v-84c0b97c]{margin-bottom:14px;padding:14px 18px}.ledger-head[data-v-84c0b97c]{align-items:center;gap:12px;display:flex}.ledger-head b[data-v-84c0b97c]{font-size:13.5px}.ledger-tri[data-v-84c0b97c]{align-items:center;gap:12px;margin-top:12px;display:flex}.tri-cell[data-v-84c0b97c]{background:var(--paper-deep);border:1px solid var(--line-strong);border-radius:var(--radius-chip);flex-direction:column;flex:none;gap:2px;padding:8px 16px;display:flex}.tri-cell small[data-v-84c0b97c]{color:var(--ink-faint);font-size:11.5px}.tri-cell b[data-v-84c0b97c]{color:var(--ink);font-size:17px}.ledger-cols[data-v-84c0b97c]{grid-template-columns:1fr 1fr;gap:16px;margin-top:12px;display:grid}.sec-t[data-v-84c0b97c]{letter-spacing:.12em;color:var(--ink-faint);margin-bottom:6px;font-size:11.5px;font-weight:700;display:block}.ledger-list[data-v-84c0b97c]{max-height:200px;color:var(--ink-soft);flex-direction:column;gap:3px;margin:0;padding:0;font-size:11.5px;list-style:none;display:flex;overflow:auto}.ledger-rec[data-v-84c0b97c]{align-items:center;gap:8px;display:flex}.rec-st[data-v-84c0b97c]{font-family:var(--font-mono);color:var(--ink-faint);border:1px solid var(--line-strong);border-radius:4px;flex:none;padding:0 6px;font-size:11.5px}.rec-st.open[data-v-84c0b97c]{color:var(--tone-warning-dot);border-color:var(--tone-warning-dot)}.tri-cell b[data-v-84c0b97c]{overflow-wrap:anywhere}.rec-st.judged[data-v-84c0b97c]{color:var(--tone-warning-dot);border-color:var(--tone-warning-dot);opacity:.85}.rec-st.judged-keep[data-v-84c0b97c],.rec-st.rolled-back[data-v-84c0b97c]{color:var(--tone-success-dot);border-color:var(--tone-success-dot)}.sub[data-v-84c0b97c]{opacity:.6;margin:0;font-size:12.5px}.mono[data-v-84c0b97c]{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.dim[data-v-84c0b97c]{opacity:.55}.badges[data-v-84c0b97c]{gap:8px;display:flex}.badge[data-v-84c0b97c]{letter-spacing:.05em;color:var(--ink-soft);border:1px solid var(--line-strong);border-radius:var(--radius-chip);padding:3px 10px;font-size:11.5px}.ctrl-card[data-v-84c0b97c]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;padding:14px 18px;display:flex}.ctrl-left[data-v-84c0b97c]{align-items:center;gap:14px;display:flex}.aw-pill.running[data-v-84c0b97c]{background:var(--accent)}.ctrl-right[data-v-84c0b97c]{align-items:center;gap:12px;display:flex}.ctrl-metrics[data-v-84c0b97c]{color:var(--ink-soft);flex-wrap:wrap;align-items:center;gap:6px 8px;font-size:11.5px;display:flex}.ctrl-metrics .sep[data-v-84c0b97c]{opacity:.4}.ctrl-metrics .warn[data-v-84c0b97c]{color:var(--tone-warning-dot)}.add-btn[data-v-84c0b97c]{padding:8px 16px;font-size:13px}.banner[data-v-84c0b97c]{border-radius:var(--radius-chip);margin:0 0 12px;padding:9px 14px;font-size:12.5px}.banner.bad[data-v-84c0b97c]{color:var(--tone-danger-dot);background:var(--tone-danger-bg);border:1px solid color-mix(in srgb, var(--tone-danger-dot) 40%, transparent)}.banner.good[data-v-84c0b97c]{color:var(--tone-success-dot);background:var(--tone-success-bg);border:1px solid color-mix(in srgb, var(--tone-success-dot) 40%, transparent)}.table-card[data-v-84c0b97c]{margin-bottom:14px;overflow-x:auto}.nodes-table[data-v-84c0b97c]{border-collapse:collapse;width:100%;font-size:12.5px}.nodes-table td[data-v-84c0b97c],.nodes-table th[data-v-84c0b97c]{text-align:left;border-bottom:1px solid var(--divider-hair);padding:9px 12px}.nodes-table th[data-v-84c0b97c]{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);border-bottom:1px solid var(--line-strong);font-size:11px;font-weight:600}.nodes-table td b[data-v-84c0b97c]{margin-left:8px}.ch[data-v-84c0b97c]{color:var(--ink-faint);margin-top:2px;font-size:11.5px;display:block}.right[data-v-84c0b97c]{text-align:right}.val[data-v-84c0b97c]{font-size:13px}.val small[data-v-84c0b97c]{color:var(--ink-faint);margin-left:3px}.read-stale[data-v-84c0b97c]{color:var(--tone-danger-dot,#e05a5a);text-underline-offset:3px;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.read-btn[data-v-84c0b97c]{margin-left:8px}.st-pill[data-v-84c0b97c]{font-family:var(--font-mono);letter-spacing:.04em;border-radius:var(--radius-pill);padding:3px 9px;font-size:11.5px;display:inline-block}.st-pill.ok[data-v-84c0b97c]{color:var(--tone-success-dot);background:var(--tone-success-bg)}.st-pill.writing[data-v-84c0b97c]{color:var(--ink);background:var(--hover-tint)}.st-pill.alarm[data-v-84c0b97c],.st-pill.error[data-v-84c0b97c]{color:var(--tone-danger-dot);background:var(--tone-danger-bg)}.st-pill.warn[data-v-84c0b97c]{color:var(--tone-warning-dot);background:var(--tone-warning-bg)}.st-pill.idle[data-v-84c0b97c],.st-pill.offline[data-v-84c0b97c]{color:var(--tone-neutral-dot);background:var(--tone-neutral-bg)}.st-pill.paused[data-v-84c0b97c]{color:var(--tone-warning-dot);background:var(--tone-warning-bg)}.ctrl-toggle[data-v-84c0b97c]{cursor:pointer;color:var(--ink-faint);background:var(--paper-deep);border:1px solid var(--line-strong);border-radius:var(--radius-pill);align-items:center;gap:6px;padding:3px 10px;font-size:11.5px;display:inline-flex}.ctrl-toggle .ct-dot[data-v-84c0b97c]{background:var(--tone-neutral-dot);border-radius:50%;width:7px;height:7px}.ctrl-toggle.on[data-v-84c0b97c]{color:var(--tone-success-dot);border-color:color-mix(in srgb, var(--tone-success-dot) 45%, transparent)}.ctrl-toggle.on .ct-dot[data-v-84c0b97c]{background:var(--tone-success-dot);box-shadow:0 0 6px var(--tone-success-dot)}.ctrl-toggle[data-v-84c0b97c]:disabled{opacity:.55;cursor:wait}.node-paused td[data-v-84c0b97c]{opacity:.6}.node-paused .write-row[data-v-84c0b97c]{opacity:.5}.tpl-hint[data-v-84c0b97c]{margin:0 0 10px;font-size:12px}.recipe-hd[data-v-84c0b97c],.recipe-actions[data-v-84c0b97c]{flex-wrap:wrap}.tpl-chips[data-v-84c0b97c]{flex-wrap:wrap;gap:6px;margin-bottom:4px;display:flex}.tpl-chip[data-v-84c0b97c]{color:var(--ink-soft);background:var(--paper-deep);border:1px solid var(--line);border-radius:var(--radius-chip);flex-wrap:wrap;align-items:center;gap:6px;padding:3px 9px;font-size:11.5px;display:inline-flex}.tpl-chip small[data-v-84c0b97c]{color:var(--ink-faint)}.tpl-tag[data-v-84c0b97c]{color:var(--accent);border:1px solid color-mix(in srgb, var(--accent) 40%, transparent);border-radius:var(--radius-pill);padding:1px 6px;font-size:11.5px;font-style:normal}.tpl-tag.builtin[data-v-84c0b97c]{color:var(--ink-faint);border-color:var(--line-strong)}.write-row[data-v-84c0b97c]{align-items:center;gap:6px;display:flex}.write-inp[data-v-84c0b97c]{width:92px;padding:4px 8px}.write-btn[data-v-84c0b97c]{padding:5px 12px}.mini-btn[data-v-84c0b97c]{margin-right:4px}.mini-btn.danger[data-v-84c0b97c]{color:var(--tone-danger-dot)}.mini-btn[data-v-84c0b97c]:hover{border-color:var(--accent);color:var(--accent)}.inp[data-v-84c0b97c]{color:var(--ink);background:var(--paper-deep);border:1px solid var(--line-strong);border-radius:var(--radius-chip);padding:5px 9px;font-size:12.5px}.line-card[data-v-84c0b97c]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px;padding:14px 18px;display:flex}.line-status[data-v-84c0b97c]{align-items:center;gap:12px;min-width:260px;display:flex}.line-dot[data-v-84c0b97c]{background:var(--tone-neutral-dot);width:12px;height:12px;box-shadow:0 0 0 4px color-mix(in srgb, var(--tone-neutral-dot) 20%, transparent);border-radius:50%}.line-dot.on[data-v-84c0b97c]{background:var(--tone-success-dot);box-shadow:0 0 0 4px color-mix(in srgb, var(--tone-success-dot) 22%, transparent);animation:1.6s infinite linePulse-84c0b97c}@keyframes linePulse-84c0b97c{0%,to{box-shadow:0 0 0 3px color-mix(in srgb, var(--tone-success-dot) 25%, transparent)}50%{box-shadow:0 0 0 7px color-mix(in srgb, var(--tone-success-dot) 8%, transparent)}}.line-info b[data-v-84c0b97c]{font-size:14px}.line-info small[data-v-84c0b97c]{margin-top:2px;font-size:11px;display:block}.line-ctl[data-v-84c0b97c]{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.ctl-sel[data-v-84c0b97c]{color:var(--ink-faint);flex-direction:column;gap:4px;font-size:11px;display:flex}.ctl-sel .inp[data-v-84c0b97c]{min-width:150px}.param-chip[data-v-84c0b97c]{overflow-wrap:anywhere}.product-row[data-v-84c0b97c]{flex-wrap:wrap;gap:8px;margin:0 0 12px;display:flex}.prod-chip[data-v-84c0b97c]{cursor:pointer;color:var(--ink-soft);background:var(--paper-deep);border:1px solid var(--line-strong);border-radius:var(--radius-pill);align-items:center;gap:6px;padding:4px 12px;font-size:12px;display:inline-flex}.prod-chip.on[data-v-84c0b97c]{color:var(--on-accent);background:var(--accent);border-color:var(--accent)}.prod-del[data-v-84c0b97c]{color:var(--tone-danger-dot);font-weight:700}.query-card[data-v-84c0b97c]{margin-bottom:14px;padding:14px 18px}.q-grid[data-v-84c0b97c]{grid-template-columns:repeat(6,1fr);align-items:end;gap:10px;display:grid}.recipe-grid[data-v-84c0b97c]{grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr))}.q-grid .f[data-v-84c0b97c]{color:var(--ink-faint);font-size:11px}.q-actions[data-v-84c0b97c]{justify-content:flex-end}.q-result[data-v-84c0b97c]{margin-top:12px;overflow-x:auto}.cal-form[data-v-84c0b97c]{grid-template-columns:2fr 1fr;align-items:end}.recipe-card[data-v-84c0b97c]{margin-bottom:14px;padding:16px 18px}.recipe-hd[data-v-84c0b97c]{align-items:center;gap:10px;margin-bottom:6px;display:flex}.recipe-hd h3[data-v-84c0b97c]{margin:0;font-size:16px}.panel-tag[data-v-84c0b97c]{color:var(--ink-soft);border:1px solid var(--line-strong);border-radius:var(--radius-chip);padding:2px 8px;font-size:11.5px}.recipe-sub[data-v-84c0b97c]{color:var(--ink-faint);margin:0 0 14px;font-size:12px}.recipe-grid[data-v-84c0b97c]{grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:12px;display:grid}.recipe-item[data-v-84c0b97c]{background:var(--paper-deep);border:1px solid var(--line);border-radius:var(--radius-chip);padding:12px 14px}.recipe-name b[data-v-84c0b97c]{font-size:13.5px}.recipe-name small[data-v-84c0b97c]{margin-left:8px}.desc[data-v-84c0b97c]{margin:4px 0;font-size:12px}.recipe-params[data-v-84c0b97c]{flex-wrap:wrap;gap:6px;margin:8px 0;display:flex}.param-chip[data-v-84c0b97c]{color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, transparent);border:1px solid color-mix(in srgb, var(--accent) 30%, transparent);border-radius:var(--radius-chip);padding:2px 8px;font-size:11.5px}.recipe-actions[data-v-84c0b97c]{align-items:center;gap:6px;margin-top:8px;display:flex}.ver-row[data-v-84c0b97c]{border:1px solid var(--divider-hair);border-radius:10px;margin-bottom:8px;padding:10px 12px}.ver-row.cur[data-v-84c0b97c]{background:color-mix(in srgb, var(--accent) 6%, transparent);border-color:color-mix(in srgb, var(--accent) 30%, transparent)}.ver-head[data-v-84c0b97c]{align-items:center;gap:10px;display:flex}.ver-v[data-v-84c0b97c]{font-size:13px;font-weight:700}.ver-src[data-v-84c0b97c]{border:1px solid var(--line-strong);border-radius:var(--radius-pill);padding:1px 8px;font-size:11.5px}.ver-src.agent[data-v-84c0b97c]{color:var(--accent);border-color:color-mix(in srgb, var(--accent) 50%, transparent)}.ver-src.user[data-v-84c0b97c]{color:var(--ink-soft)}.ver-src.system[data-v-84c0b97c]{color:var(--ink-faint)}.ver-src.cur[data-v-84c0b97c]{color:var(--accent);background:color-mix(in srgb, var(--accent) 10%, transparent);border-color:#0000}.ver-actor[data-v-84c0b97c]{font-family:var(--font-mono);color:var(--ink-soft);font-size:12px}.ver-desc[data-v-84c0b97c]{color:var(--ink);margin:6px 0 0;font-size:12px}.ver-diff[data-v-84c0b97c]{color:var(--ink-faint);margin:4px 0 0;font-size:11px}.sec-label[data-v-84c0b97c]{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-faint);margin:14px 0 6px;font-size:11px;font-weight:600}.runs[data-v-84c0b97c]{margin-top:6px}.modal-mask[data-v-84c0b97c]{z-index:50;background:var(--scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal[data-v-84c0b97c]{background:var(--surface-glass-strong);width:680px;max-width:94vw;max-height:88vh;-webkit-backdrop-filter:var(--aurora-blur);backdrop-filter:var(--aurora-blur);border:1px solid var(--glass-line);border-radius:var(--radius-panel);box-shadow:var(--glass-edge), var(--shadow-float);padding:22px 24px;overflow-y:auto}.m-title[data-v-84c0b97c]{margin:0 0 14px;font-size:17px}.seg-row[data-v-84c0b97c]{gap:8px;margin-bottom:14px;display:flex}.seg[data-v-84c0b97c]{cursor:pointer;color:var(--ink-faint);background:var(--paper-deep);border:1px solid var(--line);border-radius:var(--radius-chip);flex:1;padding:8px 0;font-size:13px}.seg.on[data-v-84c0b97c]{color:var(--on-accent);background:var(--accent);border-color:var(--accent);font-weight:600}.f-grid[data-v-84c0b97c]{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px;display:grid}.driver-form[data-v-84c0b97c]{grid-template-columns:repeat(3,1fr)}.param-row[data-v-84c0b97c]{grid-template-columns:2fr 1fr 1fr 1fr auto;align-items:end;gap:8px;margin-bottom:8px;display:grid}.param-row .f[data-v-84c0b97c]{flex:1}.param-del[data-v-84c0b97c]{margin-bottom:2px}.f[data-v-84c0b97c]{color:var(--ink-faint);flex-direction:column;gap:4px;font-size:11.5px;display:flex}.f em[data-v-84c0b97c]{margin-left:3px;font-style:normal}.hint[data-v-84c0b97c]{color:var(--ink-faint);font-size:11.5px}.test-row[data-v-84c0b97c]{align-items:center;gap:10px;margin:6px 0 4px;display:flex}.test-result[data-v-84c0b97c]{font-family:var(--font-mono);font-size:11px}.test-result.good[data-v-84c0b97c]{color:var(--tone-success-dot)}.test-result.bad[data-v-84c0b97c]{color:var(--tone-danger-dot)}.m-err[data-v-84c0b97c]{color:var(--tone-danger-dot);margin:8px 0 0;font-size:12px}.m-note[data-v-84c0b97c]{color:var(--ink-faint);margin:8px 0 0;font-size:12px}.param-chip.stale[data-v-84c0b97c]{color:var(--ink-faint);background:color-mix(in srgb, var(--ink) 5%, transparent);border-color:var(--divider-hair);text-decoration:line-through;-webkit-text-decoration-color:color-mix(in srgb, var(--ink-faint) 60%, transparent);text-decoration-color:color-mix(in srgb, var(--ink-faint) 60%, transparent)}.chip-stale-tag[data-v-84c0b97c]{color:var(--tone-danger-dot);background:color-mix(in srgb, var(--tone-danger-dot) 8%, transparent);border:1px solid color-mix(in srgb, var(--tone-danger-dot) 30%, transparent);border-radius:var(--radius-chip);margin-left:5px;padding:0 5px;font-size:11.5px;font-style:normal;text-decoration:none}.row-stale[data-v-84c0b97c]{color:var(--tone-danger-dot);border:1px solid color-mix(in srgb, var(--tone-danger-dot) 30%, transparent);border-radius:var(--radius-chip);flex:none;padding:1px 7px;font-size:11.5px}.m-actions[data-v-84c0b97c]{justify-content:flex-end;gap:10px;margin-top:16px;display:flex}.aw-pill.outline[data-v-84c0b97c]{color:var(--ink);background:var(--paper-raised);border-color:var(--line-strong)}.err[data-v-84c0b97c]{color:var(--tone-danger-dot);margin-top:14px;font-size:13px}@media (prefers-reduced-motion:no-preference){.nodes-table tbody tr[data-v-84c0b97c]:hover{background:var(--hover-tint)}}@media (width<=900px){.ctrl-card[data-v-84c0b97c]{gap:12px;padding:12px}.ctrl-right[data-v-84c0b97c]{flex-wrap:wrap;gap:8px 10px;width:100%}.ctrl-metrics[data-v-84c0b97c]{width:100%}.line-card[data-v-84c0b97c]{gap:12px;padding:12px}.line-status[data-v-84c0b97c]{min-width:0}.line-ctl[data-v-84c0b97c]{width:100%}.ctl-sel[data-v-84c0b97c]{flex:140px;min-width:0}.ctl-sel .inp[data-v-84c0b97c]{width:100%;min-width:0}.line-ctl .pill-btn[data-v-84c0b97c]{flex:120px}.table-card[data-v-84c0b97c]{-webkit-overflow-scrolling:touch;overflow-x:auto}.nodes-table[data-v-84c0b97c]{min-width:1080px}.nodes-table td[data-v-84c0b97c],.nodes-table th[data-v-84c0b97c]{white-space:nowrap}.nodes-table tbody>tr>td[data-v-84c0b97c]:first-child,.nodes-table thead>tr>th[data-v-84c0b97c]:first-child{z-index:2;background:var(--paper-raised);box-shadow:1px 0 0 var(--line);position:sticky;left:0}.adopt-card[data-v-84c0b97c],.ledger-card[data-v-84c0b97c],.query-card[data-v-84c0b97c],.recipe-card[data-v-84c0b97c]{padding:12px}.ledger-cols[data-v-84c0b97c]{grid-template-columns:1fr}.ledger-tri[data-v-84c0b97c]{flex-wrap:wrap}.aw-pill[data-v-84c0b97c],.ctrl-toggle[data-v-84c0b97c],.inp[data-v-84c0b97c],.mini-btn[data-v-84c0b97c],.pill-btn[data-v-84c0b97c],.prod-chip[data-v-84c0b97c],.tpl-chip[data-v-84c0b97c],.write-inp[data-v-84c0b97c]{min-height:40px}.write-inp[data-v-84c0b97c]{width:100%;min-width:90px}.write-row[data-v-84c0b97c]{flex-wrap:wrap}.cal-form[data-v-84c0b97c],.driver-form[data-v-84c0b97c],.f-grid[data-v-84c0b97c]{grid-template-columns:1fr}.q-grid[data-v-84c0b97c]{grid-template-columns:repeat(2,minmax(0,1fr))}.param-row[data-v-84c0b97c]{grid-template-columns:1fr 1fr}.modal[data-v-84c0b97c]{width:calc(100vw - 20px);max-width:calc(100vw - 20px);padding:16px 14px}.seg[data-v-84c0b97c]{min-height:40px;padding:10px 0}.m-actions[data-v-84c0b97c]{flex-wrap:wrap}.m-actions[data-v-84c0b97c]>*{flex:auto}.recipe-hd .mini-btn[data-v-84c0b97c],.recipe-hd .pill-btn[data-v-84c0b97c]{min-height:40px}}@media (width<=640px){h1[data-v-84c0b97c]{font-size:22px}.q-grid[data-v-84c0b97c]{grid-template-columns:1fr}}