@dylanpiercey/work 0.0.223 → 0.1.1

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 (521) hide show
  1. package/README.md +19 -32
  2. package/bin/work.mjs +259 -114
  3. package/dist/_D1C-XIqT.js +168 -0
  4. package/dist/{_CpANOzpd.js → _Dzz52ZtI.js} +488 -144
  5. package/dist/_HbAW5Cbt.js +2 -0
  6. package/dist/index.mjs +2634 -2786
  7. package/dist/public/assets/{_unfL8mz1.js → _-5UNb9-C.js} +1 -1
  8. package/dist/public/assets/_-5UNb9-C.js.br +0 -0
  9. package/dist/public/assets/_06rtP_SB.js +1 -0
  10. package/dist/public/assets/_14yhXek7.js +1 -0
  11. package/dist/public/assets/_14yhXek7.js.br +0 -0
  12. package/dist/public/assets/_1JXC9nFp.js +1 -0
  13. package/dist/public/assets/_1JXC9nFp.js.br +0 -0
  14. package/dist/public/assets/_1Yit_Y5R.js +1 -0
  15. package/dist/public/assets/_1ZPfR2B8.js +6 -0
  16. package/dist/public/assets/_1ZPfR2B8.js.br +0 -0
  17. package/dist/public/assets/{_BBpX-M4b.js → _1xOByopP.js} +1 -1
  18. package/dist/public/assets/_1xOByopP.js.br +0 -0
  19. package/dist/public/assets/{_BLTfQLdY.js → _3aBl7SEn.js} +1 -1
  20. package/dist/public/assets/_3aBl7SEn.js.br +0 -0
  21. package/dist/public/assets/_5aMLV2Vy.js +1 -0
  22. package/dist/public/assets/{_CX1wufuh.js → _7YrArFMB.js} +1 -1
  23. package/dist/public/assets/_7YrArFMB.js.br +0 -0
  24. package/dist/public/assets/{_mnBdD4YN.js → _B1-W0Sn2.js} +1 -1
  25. package/dist/public/assets/_B1-W0Sn2.js.br +0 -0
  26. package/dist/public/assets/{_BL9QMk_P.js → _B1D0PIz3.js} +1 -1
  27. package/dist/public/assets/_B1D0PIz3.js.br +0 -0
  28. package/dist/public/assets/_B1agoKUa.js +1 -0
  29. package/dist/public/assets/_B3NfNm8M.js +1591 -0
  30. package/dist/public/assets/_B3NfNm8M.js.br +0 -0
  31. package/dist/public/assets/{_DeCJ44Me.js → _B7VYILLZ.js} +1 -1
  32. package/dist/public/assets/_B7VYILLZ.js.br +0 -0
  33. package/dist/public/assets/_B7sPBy0J.js +1 -0
  34. package/dist/public/assets/_B81p6DSw.js +1 -0
  35. package/dist/public/assets/_BAkSKCkz.js +1 -0
  36. package/dist/public/assets/{_BUH04L5e.js → _BDUjU8Ev.js} +1 -1
  37. package/dist/public/assets/{_C6i9NP5A.js → _BHU5aikZ.js} +1 -1
  38. package/dist/public/assets/_BHZPTv1U.js +1 -0
  39. package/dist/public/assets/{_CttJbiei.js → _BKHtiW96.js} +1 -1
  40. package/dist/public/assets/_BKHtiW96.js.br +0 -0
  41. package/dist/public/assets/{_IWMmnVCy.js → _BKIx7IZP.js} +1 -1
  42. package/dist/public/assets/_BKIx7IZP.js.br +0 -0
  43. package/dist/public/assets/{_BCZpExov.js → _BLfzQY-3.js} +1 -1
  44. package/dist/public/assets/_BLfzQY-3.js.br +0 -0
  45. package/dist/public/assets/{_DhNuRs-V.js → _BPSTqkJn.js} +1 -1
  46. package/dist/public/assets/_BPSTqkJn.js.br +0 -0
  47. package/dist/public/assets/_BQZOimBB.js +1 -0
  48. package/dist/public/assets/{_vKQopDwG.js → _BRQ6iQ5p.js} +1 -1
  49. package/dist/public/assets/_BRQ6iQ5p.js.br +0 -0
  50. package/dist/public/assets/_BRVURc4u.js +1 -0
  51. package/dist/public/assets/{_eQK3EZCc.js → _BSFJEuJX.js} +1 -1
  52. package/dist/public/assets/_BSFJEuJX.js.br +0 -0
  53. package/dist/public/assets/{_B1RldJ0S.js → _BSWN-v3P.js} +1 -1
  54. package/dist/public/assets/_BSWN-v3P.js.br +0 -0
  55. package/dist/public/assets/_BTVAQr2c.js +1 -0
  56. package/dist/public/assets/_BUD1pBC0.js +1 -0
  57. package/dist/public/assets/_BVGzCczb.js +1 -0
  58. package/dist/public/assets/{_C1PmcEws.js → _BVQosHjY.js} +1 -1
  59. package/dist/public/assets/_BVQosHjY.js.br +0 -0
  60. package/dist/public/assets/{_DlpTErRA.js → _B_0C2_RO.js} +1 -1
  61. package/dist/public/assets/_B_0C2_RO.js.br +0 -0
  62. package/dist/public/assets/_BaA31ms5.js +1 -0
  63. package/dist/public/assets/_BgCHJGlO.js +1 -0
  64. package/dist/public/assets/_BhpRLDbL.js +1 -0
  65. package/dist/public/assets/_BhpRLDbL.js.br +0 -0
  66. package/dist/public/assets/_BkKcjMAC.js +1 -0
  67. package/dist/public/assets/{_BsimXDnm.js → _BkcPY2j0.js} +1 -1
  68. package/dist/public/assets/_BkcPY2j0.js.br +0 -0
  69. package/dist/public/assets/_BlTVd_3d.js +1 -0
  70. package/dist/public/assets/_BlqlLmEY.js +1 -0
  71. package/dist/public/assets/_BoNfxc9P.js +1 -0
  72. package/dist/public/assets/_BqswW9B9.js +1 -0
  73. package/dist/public/assets/_BricqzsO.js +1 -0
  74. package/dist/public/assets/_BrreckIa.js +1 -0
  75. package/dist/public/assets/{_CGLpCj_I.js → _BsJZPHmz.js} +1 -1
  76. package/dist/public/assets/_BsJZPHmz.js.br +0 -0
  77. package/dist/public/assets/_BtRYwaBb.js +1 -0
  78. package/dist/public/assets/{_CT3clsOQ.js → _BtZ2AatF.js} +1 -1
  79. package/dist/public/assets/_BvPBKjRP.js +1 -0
  80. package/dist/public/assets/_BvPBKjRP.js.br +0 -0
  81. package/dist/public/assets/_ByrrjMU9.js +1 -0
  82. package/dist/public/assets/{_s5Jez2mu.js → _BzGHediB.js} +1 -1
  83. package/dist/public/assets/_BzGHediB.js.br +0 -0
  84. package/dist/public/assets/_BzvTKm92.js +1 -0
  85. package/dist/public/assets/{_CnKYioYw.js → _C-EkQeP_.js} +1 -1
  86. package/dist/public/assets/_C-EkQeP_.js.br +0 -0
  87. package/dist/public/assets/{_BAHrOydH.js → _C0Ib7MZF.js} +1 -1
  88. package/dist/public/assets/_C0Ib7MZF.js.br +0 -0
  89. package/dist/public/assets/_C2p1Z5Lf.js +86 -0
  90. package/dist/public/assets/_C2p1Z5Lf.js.br +0 -0
  91. package/dist/public/assets/_C3iiOlxd.js +1 -0
  92. package/dist/public/assets/{_BdvO5Lqa.js → _C81nSl09.js} +1 -1
  93. package/dist/public/assets/_C81nSl09.js.br +0 -0
  94. package/dist/public/assets/{_BXT2bXMi.js → _C8bqYk4J.js} +1 -1
  95. package/dist/public/assets/_C8bqYk4J.js.br +0 -0
  96. package/dist/public/assets/_C98JZr09.js +1 -0
  97. package/dist/public/assets/_C98JZr09.js.br +0 -0
  98. package/dist/public/assets/_CB4VkmGZ.js +1 -0
  99. package/dist/public/assets/{_pUYwxsdF.js → _CCVkYcN5.js} +1 -1
  100. package/dist/public/assets/_CCVkYcN5.js.br +0 -0
  101. package/dist/public/assets/{_D-hK5uFn.js → _CDY0RpYX.js} +1 -1
  102. package/dist/public/assets/_CDY0RpYX.js.br +0 -0
  103. package/dist/public/assets/_CE2GEqMx.js +1 -0
  104. package/dist/public/assets/_CE2GEqMx.js.br +0 -0
  105. package/dist/public/assets/{_BeE9qDu0.js → _CFUREq1M.js} +1 -1
  106. package/dist/public/assets/_CFUREq1M.js.br +0 -0
  107. package/dist/public/assets/_CHdh6bII.js +1 -0
  108. package/dist/public/assets/{_CB31bp-W.js → _CHdpLB95.js} +1 -1
  109. package/dist/public/assets/_CHdpLB95.js.br +0 -0
  110. package/dist/public/assets/{_Fzbz4zvE.js → _CKLGAGKJ.js} +1 -1
  111. package/dist/public/assets/_CKLGAGKJ.js.br +0 -0
  112. package/dist/public/assets/_CMRt2lyQ.js +1 -0
  113. package/dist/public/assets/_CN1zW1AT.js +1 -0
  114. package/dist/public/assets/_CN1zW1AT.js.br +0 -0
  115. package/dist/public/assets/_CUILmj9R.js +1 -0
  116. package/dist/public/assets/_CUhP8KQ8.js +1 -0
  117. package/dist/public/assets/{_zKlxcAnQ.js → _CUsrMpdL.js} +1 -1
  118. package/dist/public/assets/_CUsrMpdL.js.br +0 -0
  119. package/dist/public/assets/_CVG0_w9T.js +1 -0
  120. package/dist/public/assets/{_CCCQMLw5.js → _CWG813ur.js} +1 -1
  121. package/dist/public/assets/_CWG813ur.js.br +0 -0
  122. package/dist/public/assets/{_C9OdJcx4.js → _CY87Y7QL.js} +1 -1
  123. package/dist/public/assets/_CY87Y7QL.js.br +0 -0
  124. package/dist/public/assets/_CYAsKva_.js +1 -0
  125. package/dist/public/assets/_CajKYNSY.js +1 -0
  126. package/dist/public/assets/{_gPFPzzPF.js → _Cb_k_JA_.js} +1 -1
  127. package/dist/public/assets/_Cb_k_JA_.js.br +0 -0
  128. package/dist/public/assets/_Ce8PlfMD.js +1 -0
  129. package/dist/public/assets/{_O70J1Mfv.js → _CfGEGt_k.js} +1 -1
  130. package/dist/public/assets/_CfGEGt_k.js.br +0 -0
  131. package/dist/public/assets/{_BLRpf6Uw.js → _CfdK8EeQ.js} +1 -1
  132. package/dist/public/assets/_CfdK8EeQ.js.br +0 -0
  133. package/dist/public/assets/_CgOKmAwr.js +1 -0
  134. package/dist/public/assets/{_C2ZpyiHV.js → _CiYQhf81.js} +1 -1
  135. package/dist/public/assets/_CiYQhf81.js.br +0 -0
  136. package/dist/public/assets/_Cj9DHPRL.js +1 -0
  137. package/dist/public/assets/{_BS4crAAm.js → _ClHPjF-1.js} +1 -1
  138. package/dist/public/assets/_ClHPjF-1.js.br +0 -0
  139. package/dist/public/assets/{_DmDSLxrw.js → _Cmmdd2e3.js} +1 -1
  140. package/dist/public/assets/_Cmmdd2e3.js.br +0 -0
  141. package/dist/public/assets/{_BsupnkWM.js → _Cn9Ia4SS.js} +1 -1
  142. package/dist/public/assets/_Cn9Ia4SS.js.br +0 -0
  143. package/dist/public/assets/_CnTzFbuG.js +1 -0
  144. package/dist/public/assets/{_DJ3UAR_s.js → _CqCenHOp.js} +1 -1
  145. package/dist/public/assets/_CqCenHOp.js.br +0 -0
  146. package/dist/public/assets/{_BRG_DBcC.js → _CtqGSS84.js} +1 -1
  147. package/dist/public/assets/_CtqGSS84.js.br +0 -0
  148. package/dist/public/assets/_CttfwM-c.js +1 -0
  149. package/dist/public/assets/{_DuXOUegE.js → _CxA3Yab0.js} +1 -1
  150. package/dist/public/assets/_CxA3Yab0.js.br +0 -0
  151. package/dist/public/assets/{_ifUb4WX7.js → _Cx_aJfDp.js} +1 -1
  152. package/dist/public/assets/_Cx_aJfDp.js.br +0 -0
  153. package/dist/public/assets/_D2L_ILOW.js +1 -0
  154. package/dist/public/assets/_D47lCu0c.js +1 -0
  155. package/dist/public/assets/_D5W-uGIK.js +1 -0
  156. package/dist/public/assets/_D6BbZLrc.js +1 -0
  157. package/dist/public/assets/_D6RVeCAn.js +1 -0
  158. package/dist/public/assets/_D75V4jV-.js +1 -0
  159. package/dist/public/assets/{_CwmzEsB4.js → _D9r_Fn0I.js} +1 -1
  160. package/dist/public/assets/_D9r_Fn0I.js.br +0 -0
  161. package/dist/public/assets/{_DoCtdMd2.js → _DBD57l1T.js} +1 -1
  162. package/dist/public/assets/_DBD57l1T.js.br +0 -0
  163. package/dist/public/assets/_DCWILZgL.js +1 -0
  164. package/dist/public/assets/{_DI0QHEXB.js → _DEOryr7w.js} +1 -1
  165. package/dist/public/assets/_DEOryr7w.js.br +0 -0
  166. package/dist/public/assets/_DF54Iz7o.js +1 -0
  167. package/dist/public/assets/_DFamU2Uj.js +2 -0
  168. package/dist/public/assets/_DFamU2Uj.js.br +0 -0
  169. package/dist/public/assets/_DHmBuyCO.js +1 -0
  170. package/dist/public/assets/_DHmBuyCO.js.br +0 -0
  171. package/dist/public/assets/{_BPcswKMK.js → _DJqEBkNd.js} +1 -1
  172. package/dist/public/assets/_DJqEBkNd.js.br +0 -0
  173. package/dist/public/assets/{_B_zyAtSJ.js → _DL3w8c_p.js} +1 -1
  174. package/dist/public/assets/_DL3w8c_p.js.br +0 -0
  175. package/dist/public/assets/_DLVL-4MP.js +1 -0
  176. package/dist/public/assets/{_BewXp5Y_.js → _DM60dKRs.js} +1 -1
  177. package/dist/public/assets/_DM60dKRs.js.br +0 -0
  178. package/dist/public/assets/{_BVp6r0fg.js → _DMJHTH74.js} +1 -1
  179. package/dist/public/assets/_DMJHTH74.js.br +0 -0
  180. package/dist/public/assets/_DMLv6KA6.js +1 -0
  181. package/dist/public/assets/_DQYpgyzr.js +1 -0
  182. package/dist/public/assets/_DQYpgyzr.js.br +0 -0
  183. package/dist/public/assets/{_BbiACo0Y.js → _DQyjuXTi.js} +1 -1
  184. package/dist/public/assets/_DQyjuXTi.js.br +0 -0
  185. package/dist/public/assets/{_C87NBm9i.js → _DRHCy0UF.js} +1 -1
  186. package/dist/public/assets/_DRHCy0UF.js.br +0 -0
  187. package/dist/public/assets/{_pvS44-AC.js → _DSUBv-Bl.js} +1 -1
  188. package/dist/public/assets/_DSUBv-Bl.js.br +0 -0
  189. package/dist/public/assets/{_BA8HFnO3.js → _DUFM9qLV.js} +1 -1
  190. package/dist/public/assets/_DUFM9qLV.js.br +0 -0
  191. package/dist/public/assets/{_D8u1YU9b.js → _DUs3ZGbj.js} +1 -1
  192. package/dist/public/assets/_DUs3ZGbj.js.br +0 -0
  193. package/dist/public/assets/{_CdgAsi3s.js → _DX5u6Wvm.js} +1 -1
  194. package/dist/public/assets/_DX5u6Wvm.js.br +0 -0
  195. package/dist/public/assets/{_BnyLUTdO.js → _DZvkgS3V.js} +1 -1
  196. package/dist/public/assets/_DZvkgS3V.js.br +0 -0
  197. package/dist/public/assets/{_CE5MhJWL.js → _Dbm6zAQS.js} +1 -1
  198. package/dist/public/assets/_Dbm6zAQS.js.br +0 -0
  199. package/dist/public/assets/{_DzrtBP-L.js → _DcOkTFth.js} +1 -1
  200. package/dist/public/assets/_Ddf1gumD.js +1 -0
  201. package/dist/public/assets/_De6E9M7R.js +1 -0
  202. package/dist/public/assets/{_C-6dImS5.js → _DgWKSW-Y.js} +1 -1
  203. package/dist/public/assets/_DgWKSW-Y.js.br +0 -0
  204. package/dist/public/assets/_DhEN6T4v.js +1 -0
  205. package/dist/public/assets/{_BxAl0m64.js → _Di1ccq_2.js} +1 -1
  206. package/dist/public/assets/_Di1ccq_2.js.br +0 -0
  207. package/dist/public/assets/{_CLerZOx-.js → _DifjKObE.js} +1 -1
  208. package/dist/public/assets/_DifjKObE.js.br +0 -0
  209. package/dist/public/assets/_Dn10ABa-.js +1 -0
  210. package/dist/public/assets/{_DuGmU4h0.js → _Do1ltY2a.js} +1 -1
  211. package/dist/public/assets/_Do1ltY2a.js.br +0 -0
  212. package/dist/public/assets/{_DeN4EY8L.js → _DomK7Scb.js} +1 -1
  213. package/dist/public/assets/_DomK7Scb.js.br +0 -0
  214. package/dist/public/assets/_DtWggCxt.js +1 -0
  215. package/dist/public/assets/_DtqqybyQ.js +1 -0
  216. package/dist/public/assets/{_CJ9j8N5Z.js → _DvKnakqk.js} +1 -1
  217. package/dist/public/assets/_DvKnakqk.js.br +0 -0
  218. package/dist/public/assets/_DxD_AC3a.js +1 -0
  219. package/dist/public/assets/_DxD_AC3a.js.br +0 -0
  220. package/dist/public/assets/_Dxo7m9cG.js +1 -0
  221. package/dist/public/assets/{_DhEdzMUw.js → _DzKW89Sx.js} +1 -1
  222. package/dist/public/assets/_DzKW89Sx.js.br +0 -0
  223. package/dist/public/assets/_DzTHCioH.js +1 -0
  224. package/dist/public/assets/{_CtyJUmXC.js → _EefWj858.js} +1 -1
  225. package/dist/public/assets/_EefWj858.js.br +0 -0
  226. package/dist/public/assets/{_Aq9oGnRu.js → _FlITqTCo.js} +1 -1
  227. package/dist/public/assets/_FlITqTCo.js.br +0 -0
  228. package/dist/public/assets/_GkEw2S0T.js +1 -0
  229. package/dist/public/assets/{__Oa255vo.js → _HM_QqtJi.js} +1 -1
  230. package/dist/public/assets/_HM_QqtJi.js.br +0 -0
  231. package/dist/public/assets/{_DuarImb7.js → _HmkI4Rfn.js} +1 -1
  232. package/dist/public/assets/_HmkI4Rfn.js.br +0 -0
  233. package/dist/public/assets/{_DaqT6m41.js → _JEvx8ub4.js} +1 -1
  234. package/dist/public/assets/_JEvx8ub4.js.br +0 -0
  235. package/dist/public/assets/_JOb8B3tz.js +1 -0
  236. package/dist/public/assets/_LEIhjFrO.js +1 -0
  237. package/dist/public/assets/_STJhwy7U.js +1 -0
  238. package/dist/public/assets/_TrcWRD8T.js +15 -0
  239. package/dist/public/assets/_TrcWRD8T.js.br +0 -0
  240. package/dist/public/assets/{_BO0OB-rz.js → _UaKPY71M.js} +1 -1
  241. package/dist/public/assets/_UaKPY71M.js.br +0 -0
  242. package/dist/public/assets/_UhK3lkm0.js +1 -0
  243. package/dist/public/assets/_VPLoEBTS.js +1 -0
  244. package/dist/public/assets/_Zeftz3t1.js +1 -0
  245. package/dist/public/assets/{_pP1W6w5v.js → __cyRVmTO.js} +1 -1
  246. package/dist/public/assets/__cyRVmTO.js.br +0 -0
  247. package/dist/public/assets/_awfYTHit.js +1 -0
  248. package/dist/public/assets/{_DiqV5bDH.js → _dsj7vMTW.js} +1 -1
  249. package/dist/public/assets/_dsj7vMTW.js.br +0 -0
  250. package/dist/public/assets/_eqpiOhSM.js +1 -0
  251. package/dist/public/assets/{_dr95P55a.js → _iutZ4EDe.js} +1 -1
  252. package/dist/public/assets/_iutZ4EDe.js.br +0 -0
  253. package/dist/public/assets/{_CZGS4T08.js → _kWQ0dtYZ.js} +1 -1
  254. package/dist/public/assets/_kWQ0dtYZ.js.br +0 -0
  255. package/dist/public/assets/_knvMqXQh.js +1 -0
  256. package/dist/public/assets/_lwC7sIgC.js +1 -0
  257. package/dist/public/assets/_m2tRa0jk.js +1 -0
  258. package/dist/public/assets/_m2tRa0jk.js.br +0 -0
  259. package/dist/public/assets/{_DwcoW-IU.js → _pXG8fRON.js} +1 -1
  260. package/dist/public/assets/_pXG8fRON.js.br +0 -0
  261. package/dist/public/assets/_r541ENtr.js +1 -0
  262. package/dist/public/assets/_rrUx1wn3.js +1 -0
  263. package/dist/public/assets/_tJvcu7sD.js +1 -0
  264. package/dist/public/assets/{_Cw_8WbwF.js → _vcLBrU2m.js} +1 -1
  265. package/dist/public/assets/_vcLBrU2m.js.br +0 -0
  266. package/dist/public/assets/_xZC4Vm70.js +1 -0
  267. package/dist/public/assets/_yAr5r-uL.js +1 -0
  268. package/dist/public/assets/{_DGTQBWy0.js → _yUmRJIJ6.js} +1 -1
  269. package/dist/public/assets/_yUmRJIJ6.js.br +0 -0
  270. package/dist/public/assets/app-shell-CVYlktwa.css +1 -0
  271. package/dist/public/assets/app-shell-CVYlktwa.css.br +0 -0
  272. package/dist/public/assets/files-view-CTadakLK.js +2 -0
  273. package/dist/public/assets/manage-workspace-HUAS6qjy.js +2 -0
  274. package/dist/public/assets/new-CirJkJFl.js +1 -0
  275. package/dist/public/assets/new-workspace-C3t1nA6z.js +2 -0
  276. package/dist/public/assets/review-view-DKPNtgmc.js +2 -0
  277. package/dist/public/assets/settings-CirJkJFl.js +1 -0
  278. package/dist/public/assets/settings-page-DH-9cN-8.js +2 -0
  279. package/dist/public/assets/styles-CIeNhVxC.css +1 -0
  280. package/dist/public/assets/styles-CIeNhVxC.css.br +0 -0
  281. package/dist/public/assets/w-CirJkJFl.js +1 -0
  282. package/dist/public/assets/w._-BnShhzdq.js +1 -0
  283. package/dist/public/assets/w._-CirJkJFl.js +1 -0
  284. package/dist/public/assets/w._-aCTYfruH.js +1 -0
  285. package/lib/review/markdown.mjs +5 -5
  286. package/lib/setup/bridge.d.mts +10 -0
  287. package/lib/setup/bridge.mjs +84 -0
  288. package/lib/setup/doctor.d.mts +17 -1
  289. package/lib/setup/doctor.mjs +97 -8
  290. package/lib/setup/install.d.mts +1 -0
  291. package/lib/setup/install.mjs +21 -1
  292. package/lib/setup/listen.mjs +2 -2
  293. package/lib/setup/tailscale.d.mts +53 -0
  294. package/lib/setup/tailscale.mjs +179 -0
  295. package/lib/share/manifest.mjs +2 -1
  296. package/package.json +2 -3
  297. package/dist/_LF2Fo5WE.js +0 -2
  298. package/dist/public/assets/_--tE4Gxz.js +0 -2
  299. package/dist/public/assets/_--tE4Gxz.js.br +0 -0
  300. package/dist/public/assets/_1OL9vXM-.js +0 -1
  301. package/dist/public/assets/_2mnAZf6B.js +0 -1
  302. package/dist/public/assets/_2mnAZf6B.js.br +0 -0
  303. package/dist/public/assets/_5f9fMvWJ.js +0 -1
  304. package/dist/public/assets/_5y69OR6M.js +0 -1
  305. package/dist/public/assets/_Aq9oGnRu.js.br +0 -0
  306. package/dist/public/assets/_B0uJCjmk.js +0 -1
  307. package/dist/public/assets/_B1RldJ0S.js.br +0 -0
  308. package/dist/public/assets/_B5TpOQCZ.js +0 -1
  309. package/dist/public/assets/_B6UdulKa.js +0 -1
  310. package/dist/public/assets/_BA8HFnO3.js.br +0 -0
  311. package/dist/public/assets/_BAHrOydH.js.br +0 -0
  312. package/dist/public/assets/_BBpX-M4b.js.br +0 -0
  313. package/dist/public/assets/_BCZpExov.js.br +0 -0
  314. package/dist/public/assets/_BFZHNauV.js +0 -1
  315. package/dist/public/assets/_BJRSndB4.js +0 -6
  316. package/dist/public/assets/_BJRSndB4.js.br +0 -0
  317. package/dist/public/assets/_BL9QMk_P.js.br +0 -0
  318. package/dist/public/assets/_BLNEzyb5.js +0 -1
  319. package/dist/public/assets/_BLRpf6Uw.js.br +0 -0
  320. package/dist/public/assets/_BLTfQLdY.js.br +0 -0
  321. package/dist/public/assets/_BO0OB-rz.js.br +0 -0
  322. package/dist/public/assets/_BPcswKMK.js.br +0 -0
  323. package/dist/public/assets/_BPhXWliU.js +0 -1
  324. package/dist/public/assets/_BQXTv9Cr.js +0 -1
  325. package/dist/public/assets/_BRG_DBcC.js.br +0 -0
  326. package/dist/public/assets/_BS4crAAm.js.br +0 -0
  327. package/dist/public/assets/_BVp6r0fg.js.br +0 -0
  328. package/dist/public/assets/_BXT2bXMi.js.br +0 -0
  329. package/dist/public/assets/_B_zyAtSJ.js.br +0 -0
  330. package/dist/public/assets/_BaXKdIeb.js +0 -1
  331. package/dist/public/assets/_BbiACo0Y.js.br +0 -0
  332. package/dist/public/assets/_BdvO5Lqa.js.br +0 -0
  333. package/dist/public/assets/_BeE9qDu0.js.br +0 -0
  334. package/dist/public/assets/_BewXp5Y_.js.br +0 -0
  335. package/dist/public/assets/_BfOOLKo5.js +0 -1
  336. package/dist/public/assets/_BhS8bTnr.js +0 -1
  337. package/dist/public/assets/_BhZ3ZoG0.js +0 -1
  338. package/dist/public/assets/_Bi3_ZsOQ.js +0 -1
  339. package/dist/public/assets/_Bj_Lfa8B.js +0 -1
  340. package/dist/public/assets/_BlN_x04q.js +0 -1
  341. package/dist/public/assets/_Bn5nsnie.js +0 -1
  342. package/dist/public/assets/_BnOOD6nr.js +0 -15
  343. package/dist/public/assets/_BnOOD6nr.js.br +0 -0
  344. package/dist/public/assets/_BnyLUTdO.js.br +0 -0
  345. package/dist/public/assets/_Bp_WT09q.js +0 -1
  346. package/dist/public/assets/_Bp_WT09q.js.br +0 -0
  347. package/dist/public/assets/_BsimXDnm.js.br +0 -0
  348. package/dist/public/assets/_BsupnkWM.js.br +0 -0
  349. package/dist/public/assets/_BxAl0m64.js.br +0 -0
  350. package/dist/public/assets/_C-6dImS5.js.br +0 -0
  351. package/dist/public/assets/_C18Torhh.js +0 -1
  352. package/dist/public/assets/_C1PmcEws.js.br +0 -0
  353. package/dist/public/assets/_C2ZpyiHV.js.br +0 -0
  354. package/dist/public/assets/_C3P1VHUI.js +0 -1
  355. package/dist/public/assets/_C6xwTKke.js +0 -1
  356. package/dist/public/assets/_C6yqlRfl.js +0 -1
  357. package/dist/public/assets/_C75D8bH2.js +0 -1
  358. package/dist/public/assets/_C87NBm9i.js.br +0 -0
  359. package/dist/public/assets/_C8Vc_vBH.js +0 -1
  360. package/dist/public/assets/_C9OdJcx4.js.br +0 -0
  361. package/dist/public/assets/_C9eoo0sE.js +0 -1
  362. package/dist/public/assets/_C9qO_dny.js +0 -1
  363. package/dist/public/assets/_C9qO_dny.js.br +0 -0
  364. package/dist/public/assets/_CB31bp-W.js.br +0 -0
  365. package/dist/public/assets/_CCCQMLw5.js.br +0 -0
  366. package/dist/public/assets/_CCie36pi.js +0 -1
  367. package/dist/public/assets/_CDD9N34p.js +0 -1
  368. package/dist/public/assets/_CE5MhJWL.js.br +0 -0
  369. package/dist/public/assets/_CGLpCj_I.js.br +0 -0
  370. package/dist/public/assets/_CJ9j8N5Z.js.br +0 -0
  371. package/dist/public/assets/_CLDmR3jR.js +0 -1
  372. package/dist/public/assets/_CLDmR3jR.js.br +0 -0
  373. package/dist/public/assets/_CLerZOx-.js.br +0 -0
  374. package/dist/public/assets/_CM5GtJb2.js +0 -1
  375. package/dist/public/assets/_COECwOVb.js +0 -1
  376. package/dist/public/assets/_CSQE9nMN.js +0 -1
  377. package/dist/public/assets/_CSXMgHLQ.js +0 -1
  378. package/dist/public/assets/_CVRiByCT.js +0 -1
  379. package/dist/public/assets/_CVSrm4Pl.js +0 -1
  380. package/dist/public/assets/_CX1wufuh.js.br +0 -0
  381. package/dist/public/assets/_CYNAhnRH.js +0 -1591
  382. package/dist/public/assets/_CYNAhnRH.js.br +0 -0
  383. package/dist/public/assets/_CZGS4T08.js.br +0 -0
  384. package/dist/public/assets/_C_L7l9Mg.js +0 -1
  385. package/dist/public/assets/_CaMrYy1W.js +0 -1
  386. package/dist/public/assets/_CdgAsi3s.js.br +0 -0
  387. package/dist/public/assets/_Ce-E7sJE.js +0 -1
  388. package/dist/public/assets/_Cg3S760D.js +0 -1
  389. package/dist/public/assets/_ChpYg41R.js +0 -1
  390. package/dist/public/assets/_CicyY7KP.js +0 -1
  391. package/dist/public/assets/_Ck0YOw_7.js +0 -1
  392. package/dist/public/assets/_CmHlTZSs.js +0 -1
  393. package/dist/public/assets/_CnECYh66.js +0 -1
  394. package/dist/public/assets/_CnKYioYw.js.br +0 -0
  395. package/dist/public/assets/_CnUVvVPd.js +0 -1
  396. package/dist/public/assets/_CqSgGCGC.js +0 -1
  397. package/dist/public/assets/_CttJbiei.js.br +0 -0
  398. package/dist/public/assets/_CtyJUmXC.js.br +0 -0
  399. package/dist/public/assets/_Cw_8WbwF.js.br +0 -0
  400. package/dist/public/assets/_CwmzEsB4.js.br +0 -0
  401. package/dist/public/assets/_CzETFsJs.js +0 -1
  402. package/dist/public/assets/_D-S9H-tX.js +0 -1
  403. package/dist/public/assets/_D-hK5uFn.js.br +0 -0
  404. package/dist/public/assets/_D5fTwHXK.js +0 -1
  405. package/dist/public/assets/_D8u1YU9b.js.br +0 -0
  406. package/dist/public/assets/_DAH8evhA.js +0 -1
  407. package/dist/public/assets/_DAemmoHI.js +0 -1
  408. package/dist/public/assets/_DEMYxWZf.js +0 -1
  409. package/dist/public/assets/_DGTQBWy0.js.br +0 -0
  410. package/dist/public/assets/_DHhv0pCA.js +0 -1
  411. package/dist/public/assets/_DI0QHEXB.js.br +0 -0
  412. package/dist/public/assets/_DJ3UAR_s.js.br +0 -0
  413. package/dist/public/assets/_DKu6UxI7.js +0 -1
  414. package/dist/public/assets/_DNC-9RBN.js +0 -1
  415. package/dist/public/assets/_DP-Bu7ET.js +0 -1
  416. package/dist/public/assets/_DYmmPBcq.js +0 -1
  417. package/dist/public/assets/_Da2Dmt_d.js +0 -1
  418. package/dist/public/assets/_Da2Dmt_d.js.br +0 -0
  419. package/dist/public/assets/_DaqT6m41.js.br +0 -0
  420. package/dist/public/assets/_DbVyutEZ.js +0 -1
  421. package/dist/public/assets/_DcBvO2Si.js +0 -1
  422. package/dist/public/assets/_DeCJ44Me.js.br +0 -0
  423. package/dist/public/assets/_DeN4EY8L.js.br +0 -0
  424. package/dist/public/assets/_DhEdzMUw.js.br +0 -0
  425. package/dist/public/assets/_DhNuRs-V.js.br +0 -0
  426. package/dist/public/assets/_DiqV5bDH.js.br +0 -0
  427. package/dist/public/assets/_Diqt_yCf.js +0 -1
  428. package/dist/public/assets/_DlpTErRA.js.br +0 -0
  429. package/dist/public/assets/_DmDSLxrw.js.br +0 -0
  430. package/dist/public/assets/_DoC0qbSD.js +0 -1
  431. package/dist/public/assets/_DoCtdMd2.js.br +0 -0
  432. package/dist/public/assets/_DpqWFkMg.js +0 -1
  433. package/dist/public/assets/_Dr0Bkgso.js +0 -1
  434. package/dist/public/assets/_Dt-n9FaQ.js +0 -1
  435. package/dist/public/assets/_DtOzdwHm.js +0 -1
  436. package/dist/public/assets/_DtOzdwHm.js.br +0 -0
  437. package/dist/public/assets/_DuGmU4h0.js.br +0 -0
  438. package/dist/public/assets/_DuXOUegE.js.br +0 -0
  439. package/dist/public/assets/_DuaocJd1.js +0 -1
  440. package/dist/public/assets/_DuarImb7.js.br +0 -0
  441. package/dist/public/assets/_DwcoW-IU.js.br +0 -0
  442. package/dist/public/assets/_DxVt7Zuk.js +0 -86
  443. package/dist/public/assets/_DxVt7Zuk.js.br +0 -0
  444. package/dist/public/assets/_Fzbz4zvE.js.br +0 -0
  445. package/dist/public/assets/_I5oX-lGP.js +0 -1
  446. package/dist/public/assets/_IWMmnVCy.js.br +0 -0
  447. package/dist/public/assets/_O70J1Mfv.js.br +0 -0
  448. package/dist/public/assets/_SwbsOoi9.js +0 -1
  449. package/dist/public/assets/_SwbsOoi9.js.br +0 -0
  450. package/dist/public/assets/_Yy39CykK.js +0 -1
  451. package/dist/public/assets/__Oa255vo.js.br +0 -0
  452. package/dist/public/assets/_bPze7k1x.js +0 -1
  453. package/dist/public/assets/_bU1KcT1I.js +0 -1
  454. package/dist/public/assets/_dr95P55a.js.br +0 -0
  455. package/dist/public/assets/_eQK3EZCc.js.br +0 -0
  456. package/dist/public/assets/_gPFPzzPF.js.br +0 -0
  457. package/dist/public/assets/_hzpOPZUB.js +0 -1
  458. package/dist/public/assets/_ifUb4WX7.js.br +0 -0
  459. package/dist/public/assets/_kQ7LiSim.js +0 -1
  460. package/dist/public/assets/_lOAW1VLM.js +0 -1
  461. package/dist/public/assets/_mnBdD4YN.js.br +0 -0
  462. package/dist/public/assets/_odBcV1kc.js +0 -1
  463. package/dist/public/assets/_pP1W6w5v.js.br +0 -0
  464. package/dist/public/assets/_pUYwxsdF.js.br +0 -0
  465. package/dist/public/assets/_pvS44-AC.js.br +0 -0
  466. package/dist/public/assets/_qJTL2ooe.js +0 -1
  467. package/dist/public/assets/_qJTL2ooe.js.br +0 -0
  468. package/dist/public/assets/_s5Jez2mu.js.br +0 -0
  469. package/dist/public/assets/_unfL8mz1.js.br +0 -0
  470. package/dist/public/assets/_unwtcXFQ.js +0 -1
  471. package/dist/public/assets/_unwtcXFQ.js.br +0 -0
  472. package/dist/public/assets/_vKQopDwG.js.br +0 -0
  473. package/dist/public/assets/_w1aegGdT.js +0 -1
  474. package/dist/public/assets/_xdrkfok5.js +0 -1
  475. package/dist/public/assets/_xdrkfok5.js.br +0 -0
  476. package/dist/public/assets/_y-lm36fI.js +0 -1
  477. package/dist/public/assets/_zKlxcAnQ.js.br +0 -0
  478. package/dist/public/assets/app-shell-CpPCwWPW.css +0 -1
  479. package/dist/public/assets/app-shell-CpPCwWPW.css.br +0 -0
  480. package/dist/public/assets/files-view-BfCdcfXX.js +0 -2
  481. package/dist/public/assets/files-view-DtI7JE-f.css +0 -1
  482. package/dist/public/assets/files-view-DtI7JE-f.css.br +0 -0
  483. package/dist/public/assets/group.css.ts-SeaNz7WZ.css +0 -1
  484. package/dist/public/assets/group.css.ts-SeaNz7WZ.css.br +0 -0
  485. package/dist/public/assets/icon-folder-DHVc-REl.css +0 -1
  486. package/dist/public/assets/icon-folder-DHVc-REl.css.br +0 -0
  487. package/dist/public/assets/icon-search-DAtjHWFL.css +0 -1
  488. package/dist/public/assets/icon-search-DAtjHWFL.css.br +0 -0
  489. package/dist/public/assets/manage-workspace-6i6Zeai7.css +0 -1
  490. package/dist/public/assets/manage-workspace-CixeMkdt.js +0 -2
  491. package/dist/public/assets/modal-view-D0qnmuJE.css +0 -1
  492. package/dist/public/assets/modal-view-D0qnmuJE.css.br +0 -0
  493. package/dist/public/assets/new-DxhaKmbF.js +0 -1
  494. package/dist/public/assets/new-workspace-BXjDRbqF.css +0 -1
  495. package/dist/public/assets/new-workspace-BXjDRbqF.css.br +0 -0
  496. package/dist/public/assets/new-workspace-DG693v2S.js +0 -2
  497. package/dist/public/assets/port-chip-Lz3mVJWb.css +0 -1
  498. package/dist/public/assets/port-chip-Lz3mVJWb.css.br +0 -0
  499. package/dist/public/assets/prompt-dialog-vhnae1-x.css +0 -1
  500. package/dist/public/assets/prompt-dialog-vhnae1-x.css.br +0 -0
  501. package/dist/public/assets/quick-open-DVqzk3-g.css +0 -1
  502. package/dist/public/assets/quick-open-DVqzk3-g.css.br +0 -0
  503. package/dist/public/assets/repo-picker-K5RYsEge.css +0 -1
  504. package/dist/public/assets/repo-picker-K5RYsEge.css.br +0 -0
  505. package/dist/public/assets/review-view-DqMrB4Ny.css +0 -1
  506. package/dist/public/assets/review-view-DqMrB4Ny.css.br +0 -0
  507. package/dist/public/assets/review-view-TdLbCgEg.js +0 -2
  508. package/dist/public/assets/section-2MyJSq5D.css +0 -1
  509. package/dist/public/assets/section-2MyJSq5D.css.br +0 -0
  510. package/dist/public/assets/settings-DxhaKmbF.js +0 -1
  511. package/dist/public/assets/settings-page-BBAG94Vh.js +0 -2
  512. package/dist/public/assets/settings-page-DUefc32x.css +0 -1
  513. package/dist/public/assets/settings-page-DUefc32x.css.br +0 -0
  514. package/dist/public/assets/skill-row-BeOk8NK8.css +0 -1
  515. package/dist/public/assets/sso-auth-CU3fGJ4U.css +0 -1
  516. package/dist/public/assets/sso-auth-CU3fGJ4U.css.br +0 -0
  517. package/dist/public/assets/w-DxhaKmbF.js +0 -1
  518. package/dist/public/assets/w._-C6JVdFgi.js +0 -1
  519. package/dist/public/assets/w._-DxhaKmbF.js +0 -1
  520. package/dist/public/assets/w._-rfvcDGPk.js +0 -1
  521. package/scripts/migrate.mjs +0 -682
@@ -0,0 +1 @@
1
+ @keyframes _a{to{rotate:360deg}}._b{height:100%;min-height:0;padding-top:env(safe-area-inset-top);flex-direction:column;display:flex;position:relative}._c{display:none}@media screen and (width<=899px){._b{padding-top:max(env(safe-area-inset-top), .85rem)}._c{height:max(env(safe-area-inset-top), .85rem);z-index:20;background:var(--bg);pointer-events:none;display:block;position:fixed;top:0;left:0;right:0}}._d{flex-direction:column;flex:1;min-width:0;height:100%;min-height:0;display:flex}._f{flex-direction:row;flex:1;min-width:0;min-height:0;display:flex}._g{display:none}._h{z-index:40;border-radius:var(--radius);background:var(--panel);padding:.35rem .65rem;font-weight:500;position:fixed;top:.35rem;left:.35rem;translate:0 -200%;box-shadow:0 4px 16px #0000002e,0 0 0 1px #0000000f}._h:focus-visible{translate:none}._i{outline:none;flex:1;grid-template:minmax(0,1fr)/minmax(0,1fr);min-width:0;min-height:0;display:grid}._j{grid-area:1/1;min-width:0;min-height:0;display:flex}._k{flex-direction:column;flex:1;min-height:0;display:flex}._l{border-top:1px solid var(--border);background:var(--panel);justify-content:center;padding:.65rem 1rem;display:flex}@media screen and (width<=899px){._f._e{position:relative}._f._e ._i{visibility:hidden;position:absolute;inset:0}}._m{border-radius:var(--radius);width:2.15rem;height:2.15rem;color:var(--dim);background:0 0;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}._m:hover:not(:disabled){background:color-mix(in srgb, currentColor 6%, transparent);color:var(--text)}._m:disabled{opacity:.45;cursor:default}@media (pointer:coarse){._m{position:relative}._m:before{content:"";position:absolute;inset:min(0px,50% - 1.375rem)}}@keyframes _V{0%,to{background:var(--lightningcss-light,#0000)var(--lightningcss-dark,#0000);box-shadow:0 0 0 3px var(--lightningcss-light,#0000)var(--lightningcss-dark,#0000)}50%{background:var(--lightningcss-light,#8a5a0029)var(--lightningcss-dark,#f0b84a29);box-shadow:0 0 0 3px var(--lightningcss-light,#8a5a0029)var(--lightningcss-dark,#f0b84a29)}}._n{flex-shrink:0;display:block}:where(button:has(>._n)){align-items:center;gap:.35rem;display:inline-flex}._o{appearance:none}._o::-webkit-search-cancel-button{appearance:none;display:none}._o::-webkit-search-decoration{appearance:none;display:none}._p{flex-shrink:0;min-width:0;display:inline-flex;position:relative}._p:after{content:"";pointer-events:none;border-bottom:1.5px solid;border-right:1.5px solid;border-color:var(--dim);width:.32em;height:.32em;position:absolute;top:50%;right:.65rem;translate:0 -70%;rotate:45deg}._q{appearance:none;min-width:8rem;min-height:1.85rem;color:var(--text);background:var(--bg,var(--panel));border:1px solid var(--field-border);border-radius:var(--radius);padding:0 1.5rem 0 .65rem;font-size:.85rem}._r{background:var(--panel);box-shadow:inset 0 0 0 1px var(--border);border-radius:var(--radius);justify-content:center;align-items:center;gap:.35rem;padding:.35rem .65rem;font-weight:500;transition:background .12s,box-shadow .12s;display:inline-flex}._r:hover:not(:disabled){background:color-mix(in srgb, var(--panel) 90%, var(--text))}._r:disabled{opacity:.45;cursor:default}._s{background:var(--accent-fill);color:#fff;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent-fill) 80%, black), inset 0 1px 0 #ffffff24}._s:hover:not(:disabled){background:color-mix(in srgb, var(--accent-fill) 88%, black)}._s:active:not(:disabled){background:color-mix(in srgb, var(--accent-fill) 80%, black)}._u{color:var(--danger)}._u._t{background:var(--danger);box-shadow:inset 0 0 0 1px var(--danger);color:#fff}._v{box-shadow:inset 0 0 0 1px color-mix(in srgb, currentColor 28%, transparent);color:var(--dim);white-space:nowrap;background:0 0;border-radius:4px;align-items:center;gap:.25em;padding:.05em .5em;font-size:.78rem;line-height:1.5;display:inline-flex}._w{place-items:center;display:inline-grid}._x{grid-area:1/1}._y{font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:.55rem;font-weight:600;line-height:1}._z{color:var(--lightningcss-light,#1a7f37)var(--lightningcss-dark,#57d364)}._A{color:var(--accent-text)}._B{color:var(--lightningcss-light,#8a5a00)var(--lightningcss-dark,#f0b84a)}._C{color:var(--danger)}._D{background:var(--lightningcss-light,#1a7f37)var(--lightningcss-dark,#57d364)}._E{background:var(--accent)}._F{background:var(--lightningcss-light,#bf8700)var(--lightningcss-dark,#d4a72c)}._G{background:var(--danger)}._H{color:var(--lightningcss-light,#1a7f37)var(--lightningcss-dark,#57d364)}._I{color:var(--dim)}._J{color:var(--lightningcss-light,#8250df)var(--lightningcss-dark,#a371f7)}._K{color:var(--lightningcss-light,#cf222e)var(--lightningcss-dark,#f85149)}._L{color:var(--dim)}._M{font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}._N{flex:1}._O{filter:grayscale();font-style:italic}._P{letter-spacing:.07em;text-transform:uppercase;color:var(--dim);white-space:nowrap;font-size:.72rem;font-weight:600}._Q{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}._T{opacity:0;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}._U{border-radius:50%;flex-shrink:0;width:7px;height:7px}._W{border-radius:999px;flex-shrink:0;line-height:0;display:inline-flex}._X{color:var(--lightningcss-light,#8a5a00)var(--lightningcss-dark,#f0b84a);animation:1.4s ease-in-out infinite _V}._Y{color:var(--danger);background:color-mix(in srgb, var(--danger) 10%, transparent);box-shadow:0 0 0 3px color-mix(in srgb, var(--danger) 10%, transparent)}._Z{color:var(--text)}._0{color:var(--dim)}._1{animation:.8s linear infinite _a}._2{border:2px solid color-mix(in srgb, currentColor 25%, transparent);border-top-color:var(--accent);border-radius:50%;flex-shrink:0;width:.7rem;height:.7rem;animation:.8s linear infinite _a;display:inline-block}._3{background:color-mix(in srgb, currentColor 18%, transparent);border-radius:999px;flex-shrink:0;width:1.9rem;height:1.1rem;padding:0;transition:background .12s;position:relative}._3:after{content:"";background:#fff;border-radius:50%;width:.8rem;height:.8rem;transition:translate .12s;position:absolute;top:.15rem;left:.15rem;box-shadow:0 1px 2px #0000004d}._3[aria-checked=true]{background:var(--accent-fill)}._3[aria-checked=true]:after{translate:.8rem}._3:disabled{opacity:.45}._4{text-align:left;border-radius:var(--radius);flex:1;align-items:center;gap:.35rem;min-width:0;padding:.35rem .5rem;display:flex}._4:hover{background:color-mix(in srgb, currentColor 6%, transparent)}._5{border:1px solid var(--accent-text);border-radius:var(--radius);background:var(--bg,var(--panel));min-width:0;color:inherit;font:inherit;flex:1;margin:.15rem .35rem .15rem 0;padding:.25rem .5rem}._5:focus{border-color:var(--accent-text);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 22%, transparent);outline:none}._6{color:inherit;cursor:pointer;text-decoration:none}._6:hover{color:var(--accent-text);text-decoration:underline}._6:focus-visible{outline-offset:-2px;text-decoration:underline}._7{white-space:nowrap;min-height:1.85rem;padding:0 .5rem;font-size:.78rem;line-height:1.35}._8{min-height:2.15rem;padding:0 1rem;font-weight:500}._9{color:var(--dim);background:color-mix(in srgb, currentColor 6%, transparent);white-space:nowrap;border-radius:999px;flex-shrink:0;align-items:center;gap:.3em;padding:.1em .5em;font-size:.72rem;font-weight:600;line-height:1.5;display:inline-flex}.__{font-variant-numeric:tabular-nums}._ba{letter-spacing:.04em;text-transform:uppercase;font-size:.72rem;font-weight:700}._bb{color:var(--accent-text);background:color-mix(in srgb, var(--accent) 10%, transparent)}._bc{color:var(--lightningcss-light,#1a7f37)var(--lightningcss-dark,#57d364);background:var(--lightningcss-light,#1a7f371a)var(--lightningcss-dark,#57d3641a)}._bd{color:var(--lightningcss-light,#8a5a00)var(--lightningcss-dark,#f0b84a);background:var(--lightningcss-light,#bf87001a)var(--lightningcss-dark,#d4a72c1a)}._be{color:var(--danger);background:color-mix(in srgb, var(--danger) 10%, transparent)}._bf{color:var(--lightningcss-light,#8250df)var(--lightningcss-dark,#a371f7);background:var(--lightningcss-light,#8250df1a)var(--lightningcss-dark,#a371f71a)}._bg{color:var(--lightningcss-light,#cf222e)var(--lightningcss-dark,#f85149);background:var(--lightningcss-light,#cf222e1a)var(--lightningcss-dark,#f851491a)}._bh{color:var(--dim);min-width:0;font-size:.78rem;line-height:1.35}._bi{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}._bj{width:100%;min-width:0;min-height:1.85rem}._bk{min-height:2.15rem}._bl{flex:1;min-width:0;display:block;position:relative}._bm{color:var(--dim);pointer-events:none;position:absolute;top:50%;left:.65rem;translate:0 -50%}._bn{padding-left:2.1rem}._bo{width:1.6rem;height:1.6rem}._bp{width:1.85rem;height:1.85rem}._bq{width:2.6rem;height:2.6rem}._br{background:0 0;width:1.6rem;height:1.6rem}._bs{color:var(--dim)}._bs:hover{color:var(--danger);background:color-mix(in srgb, var(--danger) 10%, transparent)}._bs._t,._bs._t:hover{color:#fff;background:var(--danger)}._bt{position:relative;overflow:visible}._bu{position:relative}._bv{z-index:1;border-radius:inherit;background:var(--danger);color:#fff;white-space:nowrap;align-items:center;padding:0 .65rem;font-size:.78rem;font-weight:600;display:inline-flex;position:absolute;top:0;bottom:0;right:0}._bw{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:.25rem;box-shadow:0 4px 16px #0000002e,0 0 0 1px #0000000f}._bx{font-weight:700}._bx[data-status=A]{color:var(--lightningcss-light,#1a7f37)var(--lightningcss-dark,#57d364)}._bx[data-status=D]{color:var(--danger)}._bx[data-status=M]{color:var(--text)}._by{text-overflow:ellipsis;white-space:nowrap;text-align:left;direction:rtl;min-width:0;overflow:hidden}._by:before,._by:after{content:"‎"}._bz{border-radius:50%;width:6px;height:6px;position:absolute;top:4px;right:4px}._bA{border-radius:calc(var(--radius) + 2px);min-height:1.85rem;box-shadow:inset 0 0 0 1px var(--border);background:0 0;flex-shrink:0;align-items:stretch;padding:2px;display:inline-flex}._bC{border-radius:var(--radius);min-height:calc(2.15rem - 4px);color:var(--dim);white-space:nowrap;justify-content:center;align-items:center;padding:0 .65rem;font-size:.78rem;font-weight:500;line-height:1;display:inline-flex}._bC:disabled{opacity:.45}._bC:hover:not(:disabled){color:var(--text)}._bC._bB{color:var(--text);background:color-mix(in srgb, currentColor 6%, transparent)}@media screen and (width<=899px){._q{min-height:2.35rem}._v{border-radius:var(--radius);min-height:1.75rem;font-size:.85rem}._S{display:none}._7{min-height:2.35rem;font-size:.85rem}._8{justify-content:center;width:100%;min-height:3rem;padding:.5rem .85rem}._bj{min-height:2.35rem}._bk{border-radius:calc(var(--radius) + 2px);min-height:3rem;padding:.65rem .85rem;font-size:1rem}._bn{padding-left:2.4rem}._bo{width:2.6rem;height:2.6rem}._bp{width:2.35rem;height:2.35rem}}@media screen and (width>=900px){._R{display:none}}@media (pointer:coarse){._T{pointer-events:auto}._3{position:relative}._3:before{content:"";position:absolute;inset:min(0px,50% - 1.375rem)}}@media (prefers-reduced-motion:reduce){._X{animation:none}}._bF{border-radius:var(--radius);border:1px solid var(--border);background:var(--panel);color:var(--text);overflow-wrap:anywhere;flex-wrap:wrap;align-items:flex-start;gap:.65rem;margin:0;padding:.5rem .65rem;font-size:1rem;line-height:1.35;display:flex;box-shadow:0 4px 16px #0000002e,0 0 0 1px #0000000f}._bG{top:calc(env(safe-area-inset-top) + .65rem);z-index:40;width:min(24rem,100vw - 2rem);position:fixed;right:1rem}._bH{width:100%;box-shadow:none;margin-bottom:.65rem;position:relative}._bI._bI{z-index:1;position:sticky;top:.35rem;box-shadow:0 4px 16px #0000002e,0 0 0 1px #0000000f}._bJ{border-color:color-mix(in srgb, var(--danger) 45%, var(--border));background:color-mix(in srgb, var(--danger) 8%, var(--panel))}._bK{border-color:color-mix(in srgb, var(--lightningcss-light,#bf8700)var(--lightningcss-dark,#d4a72c) 45%, var(--border));background:color-mix(in srgb, var(--lightningcss-light,#bf8700)var(--lightningcss-dark,#d4a72c) 10%, var(--panel))}._bL{border-color:color-mix(in srgb, var(--accent) 35%, var(--border));background:color-mix(in srgb, var(--accent) 10%, var(--panel))}._bM{color:var(--danger);font-weight:600}._bN{color:var(--lightningcss-light,#8a5a00)var(--lightningcss-dark,#f0b84a);font-weight:600}._bO{color:var(--accent-text);font-weight:600}._bP{flex-wrap:wrap;flex:1;align-items:baseline;gap:.25rem .5rem;min-width:0;display:flex}._bQ{flex:12rem;min-width:0}._bQ:empty{display:none}._bR{flex-wrap:wrap;align-items:center;gap:.25rem;min-width:0;margin-left:auto;display:flex}._bT{color:var(--dim);margin-block:-.35rem}._bT:hover{color:var(--text)}@media screen and (width<=899px){._bG{width:min(28rem,100vw - 2rem);left:50%;right:auto;translate:-50%}._bS{flex:100%;margin-left:0}}@keyframes _bD{0%{opacity:0;translate:-50% .5rem}to{opacity:1;translate:-50%}}._bE{top:calc(env(safe-area-inset-top) + .65rem);z-index:39;background:var(--panel);border:1px solid color-mix(in srgb, var(--accent) 50%, var(--border));color:var(--text);white-space:nowrap;pointer-events:none;border-radius:999px;align-items:center;gap:.5rem;padding:.35rem .85rem;font-size:.85rem;font-weight:600;line-height:1.5;animation:.2s ease-out _bD;display:flex;position:fixed;left:50%;translate:-50%;box-shadow:0 4px 16px #0000002e,0 0 0 1px #0000000f}@media screen and (width<=899px){._bE{top:auto;bottom:calc(max(.75rem, env(safe-area-inset-bottom)) + 3.4rem)}}._bU{background:color-mix(in srgb, var(--panel) 60%, var(--bg));border-right:1px solid var(--border);flex-direction:column;flex:none;align-items:center;gap:.25rem;width:2.9rem;padding-top:.225rem;padding-bottom:.5rem;display:flex}._bW{border-radius:calc(var(--radius) + .15rem);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 35%, transparent);background:var(--panel);flex-direction:column;align-items:center;gap:.25rem;padding:.15rem;display:flex}._bX{border-radius:var(--radius);width:2.15rem;height:2.15rem;color:var(--dim);letter-spacing:.02em;cursor:pointer;place-items:center;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;font-weight:700;display:grid}._bX._bV{color:var(--accent-text);background:color-mix(in srgb, var(--accent) 10%, transparent)}._bY{width:2.15rem;height:2.15rem;color:var(--dim);position:relative}._bY._bV{color:var(--text);background:color-mix(in srgb, var(--accent) 10%, transparent)}._bZ{flex:1}._b0{position:absolute;top:5px;right:5px}@media screen and (width<=899px){._bU{display:none}}@media (hover:hover){._bX:not(._bV):hover{color:var(--text);background:color-mix(in srgb, currentColor 6%, transparent)}}._dE{width:2.15rem;height:2.15rem;color:var(--dim)}._dE._dD{background:color-mix(in srgb, currentColor 6%, transparent);color:var(--text)}._dF{z-index:39;pointer-events:none;flex-direction:column;gap:.65rem;width:24rem;max-width:calc(100vw - 4rem);max-height:calc(100vh - 1rem);padding:.65rem .85rem;display:flex;position:fixed;overflow-y:auto}._dG{pointer-events:auto}._i_{flex-shrink:0;display:block}._ja{fill:none;stroke:color-mix(in srgb, currentColor 18%, transparent)}._jb{fill:none;stroke:currentColor;stroke-linecap:round}._jg{grid-template-columns:7.5rem minmax(0,1fr);align-items:start;gap:.35rem .85rem;display:grid}._ji._jg{grid-template-columns:minmax(0,1fr)}._jj{flex-direction:column;gap:.15rem;min-width:0;padding-top:.15rem;display:flex}._jk{color:var(--dim);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}._jl{color:var(--lightningcss-light,#8a5a00)var(--lightningcss-dark,#f0b84a);white-space:nowrap;align-items:center;gap:.3em;font-size:.72rem;display:inline-flex}._jm{flex-direction:column;gap:.35rem;min-width:0;display:flex}._jn{margin:0}._jo{color:var(--text);font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.95em}._jp{grid-template-columns:2.6rem 1fr 3.1rem 3rem;align-items:center;gap:.5rem;min-height:1.35rem;display:grid}._jq{color:var(--dim);font-size:.72rem;font-weight:600}._jr{background:color-mix(in srgb, currentColor 10%, transparent);border-radius:999px;height:7px;overflow:hidden}._js{border-radius:999px;height:100%;display:block}._jt{font-variant-numeric:tabular-nums;text-align:right;font-size:.78rem;font-weight:600}._ju{color:var(--dim);white-space:nowrap;font-variant-numeric:tabular-nums;align-items:center;gap:.3em;font-size:.72rem;display:inline-flex}._jv{letter-spacing:-.01em;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85rem;font-weight:600}@media screen and (width<=359px){._jp{grid-template-columns:2.4rem 1fr 3rem}._ju{display:none}}@media screen and (width<=899px){._jg{grid-template-columns:1fr;gap:.5rem}._jk{font-size:.78rem}._jm{gap:.5rem}._jp{grid-template-columns:2.6rem 1fr 3.2rem 3rem;gap:.5rem;min-height:1.6rem}._jq{font-size:.78rem}._jr{height:8px}._jt{font-size:.85rem}._ju{font-size:.78rem}._jv{font-size:1rem}}._b9{position:relative}._b_{background:var(--lightningcss-light,#8a5a00)var(--lightningcss-dark,#f0b84a)}._cb{width:var(--side-w,17.5rem);border-right:1px solid var(--border);background:var(--panel);flex-direction:column;flex-shrink:0;display:flex;position:relative}._cc._cc{border-top:1px solid var(--border);flex-shrink:0;max-height:40%;margin:0;padding:0;overflow-y:auto}._cd{color:var(--accent-text)}._cf{flex-direction:column;flex:1;gap:.15rem;min-height:0;padding:.5rem .35rem;display:flex;overflow-y:auto}@media screen and (width<=899px){._cb{background:var(--bg,var(--panel));border-right:none;flex:1;width:100%;min-height:0;font-size:1rem;display:none}._cb._ca{display:flex;overflow:hidden}._cf{-webkit-overflow-scrolling:touch;flex-direction:column;gap:.5rem;padding:.5rem .85rem 1rem;display:flex;overflow-y:auto}._cb._ca ._cf{gap:0}}._ch{order:-1;flex:0 0 var(--side-w,17.5rem);border-right:1px solid var(--border);background:var(--panel);flex-direction:column;min-width:0;min-height:0;display:none;position:relative}._ci{flex-direction:column;flex:1;min-height:0;display:flex}._cj{background:color-mix(in srgb, var(--panel) 94%, var(--text));border-bottom:1px solid var(--border);flex-shrink:0}._ck{width:100%;min-height:2rem;color:var(--text);text-align:left;align-items:center;gap:.35rem;padding:0 .65rem 0 .5rem;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;font-weight:600;display:flex}._cl{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}._cm{color:var(--dim)}._cn{padding:0 .65rem .5rem .5rem;font-size:.78rem}._cn:not(:has(>*)){display:none}._co{--trees-bg-override:var(--panel);--trees-fg-override:var(--text);--trees-fg-muted-override:var(--dim);--trees-border-color-override:var(--border);--trees-accent-override:var(--accent-text);--trees-status-added-override:var(--lightningcss-light,#1a7f37)var(--lightningcss-dark,#57d364);--trees-status-untracked-override:var(--lightningcss-light,#1a7f37)var(--lightningcss-dark,#57d364);--trees-status-deleted-override:var(--danger);--trees-status-modified-override:var(--text);--trees-status-renamed-override:var(--lightningcss-light,#8250df)var(--lightningcss-dark,#a371f7);--trees-status-ignored-override:var(--dim);--trees-padding-inline-override:.5rem;flex:auto;min-height:0;overflow:hidden}._co>file-tree-container{color-scheme:inherit}._cq{cursor:col-resize;touch-action:none;z-index:1;width:6px;position:absolute;top:0;bottom:0;right:-3px}._cq:after{content:"";background:0 0;width:2px;transition:background .12s;position:absolute;top:0;bottom:0;left:2px}._cq:hover:after,._cq._cp:after{background:var(--accent)}@media screen and (width>=900px){._ch{display:flex}._ch._cg{display:none}}@media screen and (width<=899px){._ch{display:none}}._b7{min-width:8rem;color:inherit;flex-direction:column;margin:0;display:none;position:fixed;inset:auto}._b7:popover-open{display:flex}._b8{flex:none;gap:.5rem;padding:.5rem .65rem;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}._dh{background:var(--bg,var(--panel));min-width:0;min-height:0;color:inherit;flex-direction:column;flex:1;display:flex}._di{border-bottom:1px solid color-mix(in srgb, var(--border) 88%, transparent);flex-shrink:0;min-width:0;padding:.65rem;display:flex}._dj{width:100%;min-width:0;max-width:var(--page-col,48rem);align-items:center;gap:.5rem;display:flex}._dk{border-radius:var(--radius);height:1.85rem;color:var(--dim);white-space:nowrap;justify-content:center;align-items:center;gap:.35rem;padding:0 .5rem;font-size:.85rem;font-weight:500;display:inline-flex}._dk:hover:not(:disabled){color:var(--text);background:color-mix(in srgb, currentColor 6%, transparent)}._dk:disabled{opacity:.5}._dm{letter-spacing:-.01em;white-space:nowrap;flex-shrink:0;margin:0;font-size:1rem;font-weight:600;line-height:2.15rem}._dn{min-width:0;color:var(--dim);flex:auto;align-items:center;gap:.35rem;font-size:.85rem;line-height:1.35;display:flex;overflow:hidden}._do{flex-shrink:0;align-items:center;gap:.35rem;margin-left:auto;display:flex}._dp{scrollbar-gutter:stable;flex:1;min-height:0;padding:.85rem .65rem 2rem;overflow-y:auto}._dq{flex-direction:column;gap:1.35rem;width:100%;max-width:48rem;display:flex}@media screen and (width>=1440px){._di,._dp{padding-inline:1.35rem}}@media screen and (width<=899px){._di{padding-top:.25rem;padding-bottom:.5rem;padding-left:max(.85rem, calc(env(safe-area-inset-left) + .5rem));padding-right:max(.85rem, calc(env(safe-area-inset-right) + .5rem))}._dj{max-width:none}._dk{width:2.35rem;height:2.35rem;padding:0}._dl{display:none}._dm{font-size:1.1rem;line-height:2.35rem}._dp{padding:.65rem .85rem 1.35rem;padding-left:max(.85rem, calc(env(safe-area-inset-left) + .5rem));padding-right:max(.85rem, calc(env(safe-area-inset-right) + .5rem));padding-bottom:max(1.35rem, env(safe-area-inset-bottom))}._dq{gap:1rem;max-width:none}}._iS{padding:.35rem max(.5rem, calc(env(safe-area-inset-right) + .25rem)) 1.35rem max(.5rem, calc(env(safe-area-inset-left) + .25rem));-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;gap:1px;min-height:0;display:flex;overflow-y:auto}._iU{border-radius:var(--radius);flex-direction:column;flex-shrink:0;display:flex}._iU._iT{background:color-mix(in srgb, var(--accent) 10%, transparent)}._iV{align-items:center;min-width:0;display:flex}._iW{border-radius:var(--radius);min-width:0;min-height:2.85rem;color:inherit;flex:1;align-items:center;gap:.5rem;padding:0 0 0 .5rem;font-size:1rem;font-weight:500;display:flex}._iW:active{background:color-mix(in srgb, currentColor 6%, transparent)}._iX{width:16px;color:var(--dim);flex-shrink:0;justify-content:center;display:inline-flex}._iY{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;min-width:0;overflow:hidden}._iZ{color:var(--dim);flex-shrink:0;margin-left:auto;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;font-weight:400}._i0{color:var(--dim);flex-shrink:0}._i1{color:var(--text);background:color-mix(in srgb, currentColor 6%, transparent)}._i2{margin-top:-.25rem;padding-bottom:.35rem;padding-left:calc(1rem + 16px)}._i2:not(:has(*)){display:none}._i3{border-left:1px solid var(--border);flex-direction:column;gap:1px;margin:0 .25rem .25rem calc(.5rem + 8px);padding-left:.25rem;display:flex}._i4{width:min(24rem,100vw - 1rem);color:inherit;flex-direction:column;margin:0;display:none;position:fixed;inset:auto}._i4:popover-open{display:flex}._fc{border-radius:var(--radius);cursor:pointer;flex-shrink:0}._fc:hover,._fc:focus-within{background:color-mix(in srgb, currentColor 6%, transparent)}._fc._fa{background:color-mix(in srgb, var(--accent) 10%, transparent)}._fd{border-radius:var(--radius);align-items:center;display:flex;position:relative}._fe{min-height:1.8rem;padding:0 .35rem;font-weight:500}._fe:hover{background:0 0}._ff{--ws-actions-bg:var(--panel);border-radius:var(--radius);opacity:0;pointer-events:none;background:var(--ws-actions-bg);box-shadow:-.85rem 0 .55rem var(--ws-actions-bg);align-items:center;gap:.15rem;padding:0 .15rem 0 .35rem;transition:opacity .12s;display:flex;position:absolute;top:0;bottom:0;right:0}._fc:hover ._ff,._fc:focus-within ._ff{--ws-actions-bg:color-mix(in srgb, var(--text) 6%, var(--panel))}._fc._fa ._ff{--ws-actions-bg:color-mix(in srgb, var(--accent) 10%, var(--panel))}._fc:hover ._ff,._fc:focus-within ._ff,._ff:has(._t,[aria-busy=true]){opacity:1;pointer-events:auto}._fg{color:var(--dim);line-height:1}._ff ._fg{color:var(--dim);background:0 0}._ff ._fg:hover{color:var(--text);background:color-mix(in srgb, var(--text) 10%, var(--ws-actions-bg))}._fh{flex-shrink:0;width:12px;display:inline-flex}._fi{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}._fj{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}._fk{cursor:default}._fk:hover{background:0 0}._fl{flex-shrink:0;margin-top:.15rem}._fm{color:var(--lightningcss-light,#8a5a00)var(--lightningcss-dark,#f0b84a);flex-shrink:0;margin-top:.15rem}._fn,._fc:hover ._fn,._fc:focus-within ._fn{--ws-actions-bg:var(--panel)}._fo{color:var(--dim);white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;line-height:1.2;overflow:hidden}._fp{color:var(--dim);flex-shrink:0;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem}html[data-mod-held] ._fp{display:none}._fq{box-shadow:inset 0 0 0 1px var(--border);color:var(--text);border-radius:4px;flex-shrink:0;padding:0 .25rem;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem;line-height:1.6;display:none}html[data-mod-held] ._fq{display:inline-block}._fq:before{content:"Ctrl "}html[data-mac] ._fq:before{content:"⌘"}._fr{margin-left:-.15rem}._fr:not(:has(*)){display:none}@media screen and (width<=899px){._fb{border-radius:0;margin:0;padding:.35rem .5rem}._fb ._fe{border-radius:0;align-items:flex-start;gap:.5rem;min-height:2.4rem;padding:0;font-size:1rem}._fb ._fh{width:16px}._fb ._fj{font-size:1rem;font-weight:500}._fb ._fn{opacity:1;pointer-events:auto;box-shadow:none;background:0 0;position:static}._fb ._fo{font-size:.85rem}}@media (hover:hover){._ff{pointer-events:auto}}@media (pointer:coarse){._fc:has([aria-current=true]) ._ff{opacity:1;pointer-events:auto}}._kG{--chip-split:color-mix(in srgb, currentColor 18%, transparent);align-items:stretch;gap:0;padding:0;overflow:hidden}._kH{min-height:100%;color:inherit;line-height:1.5;font:inherit;cursor:pointer;background:0 0;border:0;border-left:1px solid #0000;border-radius:0;justify-content:center;align-self:stretch;align-items:center;margin:0;padding:.05em .4em;text-decoration:none;display:inline-flex}._kH:first-child{padding-left:.55em;padding-right:.45em}._kH+._kH{border-left-color:var(--chip-split);padding-left:.35em;padding-right:.35em}._kH:last-child{padding-right:.45em}._kH:first-child:hover{background:color-mix(in srgb, currentColor 10%, transparent)}a._kH:first-child:hover{color:var(--lightningcss-light,#116329)var(--lightningcss-dark,#7ee787)}._kI:hover{color:var(--accent-text);background:color-mix(in srgb, var(--accent) 10%, transparent)}._kJ:hover{color:var(--danger);background:color-mix(in srgb, var(--danger) 10%, transparent)}._kJ._kJ._t,._kJ._kJ._t:hover{color:#fff;background:var(--danger)}@media screen and (width<=899px){._kH{padding-top:.28em;padding-bottom:.28em}._kH:first-child{padding-left:.65em}._kH:last-child{padding-right:.55em}}._kK{z-index:1;cursor:default;flex-wrap:wrap;gap:.25rem;padding:0 .15rem .35rem .5rem;display:flex;position:relative}._kL{border-bottom:1px solid var(--border);margin-bottom:.25rem;padding:.25rem .25rem .5rem}._kN{color:var(--text)}._kN:hover{background:color-mix(in srgb, currentColor 10%, transparent)}._kO{background:currentColor;border-radius:50%;width:6px;height:6px}._kP{margin-left:.15rem}a._kQ:first-child:hover{color:inherit;background:color-mix(in srgb, currentColor 10%, transparent)}._kR{font-variant-numeric:tabular-nums;gap:.25em}._kS{min-width:14rem;max-width:min(24rem,100vw - 1rem);max-height:min(24rem,70dvh);color:var(--text);flex-direction:column;margin:0;display:none;position:fixed;inset:auto;overflow-y:auto}._kS:popover-open{display:flex}._kT{color:var(--dim);padding:.25rem .35rem;font-size:.78rem}._kU{color:var(--text);margin-right:.25rem;font-weight:600}._kV{border-radius:4px;align-items:center;gap:.35rem;min-width:0;padding:.25rem .35rem;font-size:.85rem;display:flex}._kW{background:color-mix(in srgb, currentColor 6%, transparent)}._kX{min-width:1ch;color:var(--dim);font-variant-numeric:tabular-nums;flex-shrink:0;font-size:.78rem}._kY{font-variant-numeric:tabular-nums;flex-shrink:0;font-weight:600}._kY:hover{text-decoration:underline}._kZ{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}._k0{color:var(--dim);flex-shrink:0}@media screen and (width<=899px){._kK{gap:.35rem;padding:0 .5rem .5rem}._kL{padding:.25rem .25rem .5rem}}._m6{--chip-split:color-mix(in srgb, var(--accent) 35%, transparent);color:var(--accent-text);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 35%, transparent)}._m7{color:var(--dim);cursor:not-allowed}a._m8:first-child:hover,a._m8:hover{color:inherit;background:color-mix(in srgb, var(--accent) 22%, transparent)}._j6{--row-bg:var(--row-base,var(--panel));border-radius:var(--radius);align-items:center;min-width:0;display:flex;position:relative}._j6._j4{--row-bg:color-mix(in srgb, var(--accent) 10%, var(--row-base,var(--panel)));background:color-mix(in srgb, var(--accent) 10%, transparent)}._j6:not(._j4):hover{--row-bg:color-mix(in srgb, var(--text) 6%, var(--row-base,var(--panel)));background:color-mix(in srgb, currentColor 6%, transparent)}._j7{gap:.5rem;min-height:2.85rem;padding:0 .65rem}._j7:hover{background:0 0}._j5 ._j7{gap:.35rem;min-height:1.65rem;padding:0 .35rem}._j8{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}._j5 ._j8{flex-direction:row;align-items:baseline;gap:.35rem}._j9{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-weight:500;overflow:hidden}._j5 ._j9{font-weight:400}._j_{flex-shrink:0;align-self:stretch;align-items:stretch;display:flex}._j5 ._j_{border-radius:var(--radius);background:var(--row-bg);box-shadow:-.85rem 0 .55rem var(--row-bg);opacity:0;pointer-events:none;align-items:center;gap:.15rem;padding:0 .15rem 0 .35rem;transition:opacity .12s;position:absolute;top:0;bottom:0;right:0}._j5:hover ._j_,._j5:focus-within ._j_,._j5 ._j_:has(._t){opacity:1;pointer-events:auto}._ka{width:2.6rem;height:auto}._j5 ._ka{width:1.6rem;height:1.6rem}._ka._t,._j5 ._ka._t{width:auto}._kb{margin-left:.65rem}._j5 ._kb{margin-left:.35rem}._kc{margin:.25rem .35rem}._j5 ._kc._kc{align-self:stretch;height:1.65rem;min-height:0;margin:0 .15rem 0 calc(.1rem - 1px);padding:0 .25rem}@media (hover:hover){._j5 ._j_{pointer-events:auto}}._c3{min-width:0;color:var(--dim);-webkit-user-select:text;user-select:text;text-overflow:ellipsis;white-space:nowrap;align-items:center;gap:.35rem;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;display:flex;overflow:hidden}._c4{flex-direction:column;gap:.5rem;min-width:0;display:flex}._c5{align-items:center;gap:.5rem;min-height:1.85rem;padding:0 .15rem;display:flex}._c7{flex-direction:column;gap:.35rem;margin:0;padding:0;list-style:none;display:flex}._c9{background:var(--panel);min-width:0;box-shadow:inset 0 0 0 1px var(--border);border-radius:calc(var(--radius) + 2px);align-items:center;gap:.5rem;padding:.65rem;display:flex}._c9._c8{color:var(--dim)}._c_{text-align:left;min-width:0;color:inherit;flex-direction:column;flex:1;gap:.15rem;text-decoration:none;display:flex}._da{overflow-wrap:anywhere;font-size:1rem;font-weight:600;line-height:1.2}._db{flex-wrap:wrap;align-items:center;gap:.25rem .5rem;min-width:0;display:flex}._dc{color:var(--dim);text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;font-size:.78rem;overflow:hidden}._dd{border-radius:var(--radius);min-width:1.85rem;min-height:1.85rem;color:var(--dim);flex-shrink:0;justify-content:center;align-items:center;padding:0 .35rem;font-size:1rem;line-height:1;display:inline-flex}._dd:hover{background:color-mix(in srgb, currentColor 6%, transparent)}._de{color:var(--dim);margin:0;padding:.35rem .15rem;font-size:.85rem}._df{color:var(--dim);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.65rem;padding:2rem;display:flex}._dg{text-transform:uppercase;letter-spacing:.07em;color:var(--dim);margin:0;font-size:.72rem;font-weight:600}@media screen and (width<=899px){._c5{min-height:2.35rem}._c9{border-radius:calc(var(--radius) + 4px);gap:.65rem;padding:.85rem}._da{font-size:1rem}._dc{white-space:normal;text-overflow:unset;overflow-wrap:anywhere;font-size:.85rem;overflow:visible}._dd{min-width:2.35rem;min-height:2.35rem;font-size:1.1rem}._de{font-size:1rem}}._dH{flex-direction:column;align-items:stretch;gap:0;padding:0;overflow:hidden}._dH:has([data-add-pop]:not([hidden])){overflow:visible}._dI{flex-direction:column;gap:.65rem;padding:.65rem;display:flex}._dI+._dI{border-top:1px solid color-mix(in srgb, var(--border) 65%, transparent)}._dJ{color:var(--dim);flex-shrink:0;transition:transform .12s}._dK{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}._dL{border-top:1px solid color-mix(in srgb, var(--border) 65%, transparent);flex-shrink:0;align-items:center;gap:.5rem;min-width:0;min-height:2.35rem;padding:.25rem 0;display:flex}._dL:first-child{border-top:none}._dN{min-height:2.15rem;padding:.15rem .35rem .15rem .65rem}._dP{border-top:1px solid color-mix(in srgb, var(--border) 65%, transparent);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:.5rem;min-height:2.15rem;padding:.15rem .35rem .15rem .65rem;font-size:.85rem;display:grid}._dP:first-child{border-top:none}._dR{border-top:1px solid color-mix(in srgb, var(--border) 65%, transparent);align-items:center;min-height:2.15rem;padding:0;display:flex}._dR:first-child{border-top-left-radius:inherit;border-top-right-radius:inherit;border-top:none}._dR:last-child{border-bottom-left-radius:inherit;border-bottom-right-radius:inherit}._dO>._dR{grid-column:1/-1}._dS{border-top:1px solid color-mix(in srgb, var(--border) 65%, transparent);background:color-mix(in srgb, currentColor 6%, transparent);color:var(--dim);align-items:center;gap:.35rem;padding:.25rem .65rem;font-size:.78rem;font-weight:600;display:flex}._dS:first-child{border-top:none}._dO>._dS{grid-column:1/-1}._dT{font-variant-numeric:tabular-nums;font-weight:400}._dU{transition:opacity .12s}._dV{white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}._dW{min-width:0;color:var(--dim);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:.35rem;font-size:.78rem;display:flex;overflow:hidden}._dX{justify-self:end;align-items:center;gap:.35rem;display:inline-flex}._dY{color:var(--dim)}._d0{background:0 0;border-radius:4px;flex:none;align-items:center;gap:.15rem;max-width:10rem;padding:.15rem .25rem;display:inline-flex}._d0:hover,._d0._dZ{color:inherit;background:color-mix(in srgb, currentColor 10%, transparent)}._d1._dZ{color:var(--accent-text);background:color-mix(in srgb, var(--accent) 10%, transparent)}@media screen and (width>=900px){._dO{grid-template-columns:fit-content(16rem) minmax(0,1fr) auto;display:grid}._dO>._dP{grid-column:1/-1;grid-template-columns:subgrid}._dO>._dQ{grid-template-columns:auto minmax(0,1fr)}._dR{background:var(--bg);box-shadow:inset 0 0 0 1px var(--field-border);transition:box-shadow .12s}._dR:hover{box-shadow:inset 0 0 0 1px var(--dim)}._dR:has(input:focus){box-shadow:inset 0 0 0 1px var(--accent)}}@media screen and (width<=899px){._dI{padding:.65rem .85rem}._dL{min-height:2.85rem}._dN{min-height:2.35rem;padding:.25rem .35rem .25rem .65rem}._dP{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"lead end""meta meta";min-height:2.35rem;padding:.25rem .35rem .25rem .65rem}._dR{min-height:2.35rem}._dV{grid-area:lead}._dW{grid-area:meta}._dX{grid-area:end}._d0{min-height:1.75rem}}@media (hover:hover){._dU{opacity:0}li:hover ._dU,li:focus-within ._dU,._dU._t{opacity:1}}._d3{flex-direction:column;flex-shrink:0;margin-top:.5rem;display:flex}._d5{border-radius:var(--radius);text-align:left;align-items:center;gap:.35rem;min-height:1.8rem;padding:0 .35rem;display:flex}._d2 ._d5{min-height:2.85rem;padding:0 .5rem}._d4 ._d5{border-radius:0;flex-shrink:0;height:2.4rem;padding:0 .5rem 0 .85rem}._d6{width:12px}._d7{place-items:center;width:1.85rem;height:1.85rem;display:inline-grid}._d8{transform:rotate(90deg)}._d_{letter-spacing:0;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:400}._ea{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}._d4 ._ea{padding:0 .35rem .5rem}._eb{border-radius:var(--radius);min-height:1.8rem;color:var(--dim);align-items:center;padding:0 .35rem 0 calc(.7rem + 12px);display:flex;position:relative}._d2 ._eb{min-height:2.85rem;padding:0 .5rem 0 calc(1rem + 16px);font-size:1rem}._ec{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}._ed{opacity:0;pointer-events:none;flex-shrink:0;align-items:center;gap:.15rem;transition:opacity .12s;display:flex}._eb:hover ._ed,._eb:focus-within ._ed,._ed:has(._t,[aria-busy=true]){opacity:1;pointer-events:auto}._ee{color:var(--dim);background:0 0}@media (hover:hover){._d5:hover{background:color-mix(in srgb, currentColor 6%, transparent);color:var(--text)}._eb:hover{background:color-mix(in srgb, currentColor 6%, transparent)}._ed{pointer-events:auto;background:color-mix(in srgb, var(--text) 6%, var(--panel));box-shadow:-.85rem 0 .55rem color-mix(in srgb, var(--text) 6%, var(--panel));padding-left:.35rem;position:absolute;top:0;bottom:0;right:.35rem}}@media (pointer:coarse){._ed{opacity:1;pointer-events:auto;box-shadow:none;background:0 0;position:static}}@media screen and (width<=899px){._ed{opacity:1;pointer-events:auto;box-shadow:none;background:0 0;position:static}}._jw{text-overflow:ellipsis;white-space:nowrap;padding:.35rem .25rem .25rem .65rem;font-size:1rem;font-weight:600;overflow:hidden}._jx{border-block:1px solid var(--border);scrollbar-width:none;align-items:center;gap:.25rem;margin:.25rem 0;padding:.25rem 0;display:flex;overflow-x:auto}._jy{flex-direction:column;display:flex}._jz{min-height:2.85rem;color:inherit;flex:none;gap:.5rem;padding:0 .65rem;font-size:1rem}._jz:hover{background:0 0}._jz:active{background:color-mix(in srgb, currentColor 6%, transparent)}._jz:disabled{opacity:1}._jA{color:var(--danger)}._jB{font-weight:600}._jB._jB,._jB._jB:hover,._jB._jB:active{color:#fff;background:var(--danger)}._iM{border-top:1px solid var(--border);flex-direction:column;flex-shrink:0;max-height:40%;display:flex}._iN{flex-shrink:0;align-items:center;gap:.35rem;height:2.4rem;padding:0 .5rem 0 .85rem;display:flex}._iO{color:var(--dim);font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem}._iP{flex-direction:column;gap:1px;min-height:0;padding:0 .35rem .5rem;display:flex;overflow-y:auto}._iQ{flex-direction:row;align-items:center;gap:.25rem;padding:.35rem .5rem .35rem .35rem;overflow-y:visible}._iR{flex:1}._cX{content-visibility:hidden}._cY{flex-direction:row;flex:1;min-width:0;height:100%;min-height:0;display:flex}._cZ{flex:1;grid-template:minmax(0,1fr)/minmax(0,1fr);min-width:0;min-height:0;display:grid;position:relative}._c0{visibility:hidden;flex-direction:column;grid-area:1/1;min-width:0;min-height:0;display:flex}._c0[data-live]{visibility:visible}._c1{grid-template:minmax(0,1fr)/minmax(0,1fr);grid-area:1/1;min-height:0;display:grid}._c2{visibility:hidden;flex-direction:column;grid-area:1/1;min-width:0;min-height:0;display:flex}._c2[data-live]{visibility:visible}._b1{z-index:35;width:min(42rem,100vw - 1.5rem);max-height:calc(var(--app-height,100dvh) - min(8dvh, 4rem) - 1rem);background:var(--panel);border:1px solid var(--border);border-radius:calc(var(--radius) + 4px);min-height:0;color:inherit;flex-direction:column;margin:0;padding:0;display:flex;position:fixed;top:min(8dvh,4rem);left:50%;overflow:hidden;translate:-50%;box-shadow:0 16px 48px #0000004d,0 0 0 1px #00000014}._b1::backdrop{background:#0006}._b1:not([open]){display:none}._b3{margin:0;font-size:1rem;font-weight:600}._b4{flex-direction:column;flex:1;gap:1rem;min-height:0;padding:1rem 1.35rem;display:flex;overflow-y:auto}._b5{border-top:1px solid var(--border);background:var(--panel);flex-wrap:wrap;align-items:center;gap:.35rem;padding:.5rem .65rem;display:flex}@media screen and (width<=899px){._b1{width:auto;max-width:none;max-height:none;height:var(--app-height,100dvh);box-shadow:none;border:none;border-radius:0;inset:0;translate:none}._b2{border:1px solid var(--border);border-radius:calc(var(--radius) + 4px);height:auto;inset:min(8dvh,4rem) auto auto 50%;translate:-50%;box-shadow:0 16px 48px #0000004d,0 0 0 1px #00000014}._b4{padding-top:max(1rem, calc(env(safe-area-inset-top) + .5rem))}._b5{padding-bottom:max(.5rem, env(safe-area-inset-bottom));padding-left:max(.85rem, calc(env(safe-area-inset-left) + .5rem));padding-right:max(.85rem, calc(env(safe-area-inset-right) + .5rem))}}._nW{z-index:2;pointer-events:none;display:none;position:absolute;overflow:hidden}._nX{box-sizing:border-box;background:#ffb00059;outline:1px solid #c98400;position:absolute}._nY{background:#ffb0008c;outline:2px solid #ffb000}._nZ{background:var(--panel);max-width:min(24rem,100vw - 16px);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);pointer-events:none;flex-direction:column;gap:.25rem;margin:0;padding:.25rem;display:flex;position:fixed;inset:auto;box-shadow:0 4px 16px #0000002e,0 0 0 1px #0000000f}._nZ:not(:popover-open){display:none}._n0{object-fit:contain;background-image:conic-gradient(color-mix(in srgb, currentColor 6%, transparent) 25%, transparent 0 50%, color-mix(in srgb, currentColor 6%, transparent) 0 75%, transparent 0);background-size:16px 16px;border-radius:4px;max-width:100%;max-height:16rem;display:block}._n1{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--dim);font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;overflow:hidden}@keyframes _e6{0%{opacity:0;translate:-50% .25rem}12%{opacity:1;translate:-50%}75%{opacity:1}to{opacity:0}}._e1{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}._e2{background:#000;flex:1;min-height:0;position:relative;overflow:hidden}._e3{z-index:10;background:#0009;flex-direction:column;justify-content:center;align-items:center;gap:.65rem;display:flex;position:absolute;inset:0}._e4{color:#fff;margin:0;font-size:.85rem}._e5{gap:.5rem;display:flex}._e7{z-index:10;color:var(--accent-text);background:color-mix(in srgb, var(--accent) 10%, var(--panel));border:1px solid color-mix(in srgb, var(--accent) 35%, var(--border));pointer-events:none;border-radius:999px;padding:.25rem .85rem;font-size:.78rem;animation:1.2s forwards _e6;position:absolute;bottom:1rem;left:50%;translate:-50%}._e8{color:var(--dim);background:var(--panel);border:1px solid var(--border);border-radius:999px;padding:.15rem .65rem;font-size:.78rem;position:absolute;top:.35rem;right:.65rem}._e9{width:min(20rem,100vw - 1.5rem)}._e_{text-align:center;color:var(--dim);margin:0}._e2 .xterm{height:100%;padding:.35rem 0 0 .5rem}._ef._ef{opacity:0;pointer-events:none;border:0;width:1px;height:1px;margin:0;padding:0;position:absolute;overflow:hidden}._eg{box-sizing:border-box;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius);flex:18rem;align-items:center;gap:.25rem;width:min(22rem,100%);min-width:12rem;max-width:28rem;height:2.15rem;margin-left:0;padding:0 .35rem 0 .5rem;display:flex}._eg:focus-within{border-color:var(--accent-text);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 22%, transparent);outline:none}._eh{color:var(--dim);pointer-events:none;flex-shrink:0;display:inline-flex}._ei{box-sizing:border-box;border-radius:calc(var(--radius) - 1px) 0 0 calc(var(--radius) - 1px);background:0 0;border:0;flex:1;min-width:6rem;height:100%;padding:0 .35rem;line-height:1.2}._ei:focus,._ei:focus-visible{box-shadow:none;border-color:#0000;outline:none}._ej{width:100%;min-width:0;max-width:none;box-shadow:none;flex:none;margin-left:0;position:relative;top:auto;right:auto}._ej._eg{background:var(--panel);border-color:var(--border)}._ek{font-variant-numeric:tabular-nums;text-align:center;width:3.2rem;color:var(--dim);flex-shrink:0;font-size:.72rem}._el{display:contents}._em{flex-direction:column;gap:.25rem;min-width:0;display:flex}._en{z-index:15;border-radius:var(--radius);width:min(22rem,100% - 1rem);position:absolute;top:.5rem;right:.5rem;box-shadow:0 4px 16px #0000002e,0 0 0 1px #0000000f}._eo._eo{flex-direction:row;flex:auto;align-items:center;width:auto;min-width:0}._ep._ep{z-index:auto;width:auto;min-width:0;max-width:none;height:var(--kb-row,2.6rem);box-sizing:border-box;box-shadow:none;background:color-mix(in srgb, currentColor 6%, transparent);border:0;flex:auto;margin:0;position:relative;top:auto;left:auto;right:auto}._eq{min-width:0}._er{width:2.15rem;height:2.15rem}@media screen and (width<=899px){._eg:not(._ef){flex:100%;width:100%;min-width:0;max-width:none;margin-left:0}._ei{min-width:0}._ek{width:auto;min-width:2.5rem}}._cE{flex-shrink:0}._cG{--kb-row:2.6rem;padding:.35rem max(1.5rem, calc(env(safe-area-inset-right) + .75rem)) var(--bar-inset-bottom,max(.75rem, env(safe-area-inset-bottom))) max(1.5rem, calc(env(safe-area-inset-left) + .75rem));padding-bottom:var(--bar-inset-bottom,max(1.25rem, env(safe-area-inset-bottom)));border-top:1px solid var(--border);background:color-mix(in srgb, var(--panel) 60%, var(--bg));align-items:center;gap:.25rem;display:flex;position:relative}._cH{align-items:center;gap:inherit;flex:auto;min-width:0;display:flex}._cI{display:none}._cJ{min-width:0;height:var(--kb-row);flex:auto;align-items:center;display:none}._cK{display:flex}._cL{flex:1;justify-content:center;align-items:center;min-width:0;display:flex}._cM{color:var(--dim);bottom:max(.3rem, calc(env(safe-area-inset-bottom) - 1rem));left:max(1.5rem, calc(env(safe-area-inset-left) + .75rem));right:max(1.5rem, calc(env(safe-area-inset-right) + .75rem));pointer-events:none;justify-content:center;font-size:.78rem;line-height:1;display:flex;position:absolute}._cN{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}._cP{width:var(--kb-row);height:var(--kb-row);min-width:1.6rem;color:var(--dim);background:0 0;flex-shrink:1;position:relative}._cP:hover{background:color-mix(in srgb, currentColor 6%, transparent)}._cP:active{background:color-mix(in srgb, var(--accent) 10%, transparent)}._cP:disabled{opacity:.45;pointer-events:none}._cP._cO,._cP._cO:hover{color:var(--text);background:color-mix(in srgb, var(--accent) 10%, transparent)}._cQ{background:var(--panel);border:1px solid var(--border);border-radius:calc(var(--radius) + 4px);color:inherit;grid-template-columns:repeat(3,3rem);grid-auto-rows:auto;gap:.25rem;margin:0;padding:.35rem;position:fixed;inset:auto .5rem 6.5rem auto;box-shadow:0 4px 16px #0000002e,0 0 0 1px #0000000f}._cQ:popover-open{display:grid}._cR{background:color-mix(in srgb, currentColor 6%, transparent);border-radius:var(--radius);justify-content:center;align-items:center;height:3rem;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1rem;display:inline-flex}._cR:active{background:color-mix(in srgb, var(--accent) 10%, transparent)}._cS{touch-action:none;-webkit-user-select:none;user-select:none}._cT{background:color-mix(in srgb, var(--accent) 10%, transparent);color:var(--accent-text)}._cU{background:var(--border);grid-column:1/-1;height:1px;margin-block:.15rem}._cV{letter-spacing:-.03em;text-overflow:ellipsis;white-space:nowrap;touch-action:manipulation;-webkit-user-select:none;user-select:none;min-width:0;padding:0;font-size:.78rem;font-weight:600;overflow:hidden}._cV:disabled{opacity:.4}._cW{letter-spacing:.02em;font-size:.78rem;font-weight:600}@media screen and (width>=900px){._cE{display:none}}@media (hover:hover) and (pointer:fine){._cF._cF{display:none}}@media screen and (width<=399px){._cG{--kb-row:2.35rem;gap:.15rem}}@media screen and (width<=899px){html[data-keyboard] ._cM{display:none}}._es{position:relative}._et{min-width:9rem;max-width:calc(100vw - 1rem);color:inherit;flex-direction:column;margin:0;display:none;position:fixed;inset:auto}._et:popover-open{display:flex}._eu{display:contents}._ev{font-size:.72rem}._ew{border-top:1px solid var(--border);align-items:center;gap:.25rem;margin-top:.25rem;padding-top:.35rem;display:flex}._ex{align-items:center;gap:.25rem;min-width:0;display:flex}@media screen and (width<=899px){._ex{scrollbar-width:none;padding:0 .85rem 0 .5rem;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#0000,#000 .5rem calc(100% - .85rem),#0000);mask-image:linear-gradient(90deg,#0000,#000 .5rem calc(100% - .85rem),#0000)}}._i5{font-variant-numeric:tabular-nums;color:var(--dim);white-space:nowrap;align-items:baseline;gap:.25rem;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem;display:inline-flex}._i6{align-items:baseline;gap:.3em;display:inline-flex}._i8{font-weight:600}._i9{color:color-mix(in srgb, var(--dim) 60%, transparent);margin-right:.15em}._cr{flex-direction:column;width:min(38rem,100vw - 1.5rem);max-height:min(28rem,70dvh);display:flex;top:12dvh}._cs{border-bottom:1px solid var(--border);color:var(--dim);align-items:center;gap:.5rem;padding:0 .65rem;display:flex}._ct{min-width:0;height:2.75rem;color:var(--text);background:0 0;border:0;flex:1;padding:0;font-size:1rem}._ct:focus-visible{box-shadow:none;outline:none}._cu{margin-right:-.5rem;display:none}._cv{min-height:0;margin:0;padding:.25rem;list-style:none;overflow-y:auto}._cw{padding:.5rem .5rem .25rem}._cy{border-radius:var(--radius);width:100%;min-height:2.1rem;color:var(--text);text-align:left;cursor:pointer;align-items:center;gap:.5rem;padding:0 .5rem;display:flex}._cy._cx{background:color-mix(in srgb, currentColor 10%, transparent)}._cz{width:16px;color:var(--dim);flex-shrink:0;justify-content:center;display:inline-flex}._cA{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}._cB{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:45%;color:var(--dim);flex-shrink:1;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem;overflow:hidden}._cC{color:var(--dim);border:1px solid var(--border);border-radius:4px;flex-shrink:0;padding:0 .25rem;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem}._cD{color:var(--dim);padding:.85rem .65rem;font-size:.85rem}@media screen and (width<=899px){._cr{top:calc(env(safe-area-inset-top) + .5rem);max-height:calc(var(--app-height,100dvh) - env(safe-area-inset-top) - 2rem)}}@media (pointer:coarse){._cu{display:inline-flex}._cy{min-height:2.85rem}._cC{display:none}}._b6{width:min(26rem,100vw - 1.5rem)}._no{background:var(--panel);width:max-content;min-width:12rem;max-width:min(38rem,100vw - 16px);max-height:min(24rem,55vh);color:var(--text);border:1px solid var(--border);border-radius:var(--radius);flex-direction:column;margin:0;padding:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:.85rem;line-height:1.35;display:flex;position:fixed;inset:auto;overflow:hidden;box-shadow:0 4px 16px #0000002e,0 0 0 1px #0000000f}._np{overflow-wrap:anywhere;min-height:0;padding:.35rem .65rem;overflow:auto}._nq{margin:.25rem -.65rem}._nq:first-child{margin-top:-.35rem}._nq:last-child{margin-bottom:-.35rem}._nr{margin:.35rem 0}._nr:first-child{margin-top:0}._nr:last-child{margin-bottom:0}._ns{font-weight:600}._nt{padding-left:1.35rem}._nu{border:0;border-top:1px solid color-mix(in srgb, var(--border) 65%, transparent);margin:.5rem -.65rem}._nv{background:color-mix(in srgb, currentColor 6%, transparent);border-radius:4px;padding:0 .15rem;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.92em}._nw{vertical-align:text-bottom;height:1.1em}._nx{color:var(--accent-text);text-underline-offset:2px;overflow-wrap:anywhere;text-decoration:none}._nx:hover{text-decoration:underline}._ny{border-top:1px solid color-mix(in srgb, var(--border) 65%, transparent);flex-direction:column;flex-shrink:0;gap:.15rem;max-height:50%;padding:.35rem .65rem;display:flex;overflow:auto}._nz{min-width:0;display:flex}._nA{min-width:0;max-width:100%;color:var(--accent-text);font:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:.25rem;padding:0;display:flex}._nA:hover{text-decoration:underline}._nB{text-overflow:ellipsis;white-space:nowrap;text-align:left;direction:rtl;min-width:0;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;overflow:hidden}._nC{color:var(--dim)}._nD{color:var(--dim);flex-shrink:0;font-size:.78rem}._nE{border-top:1px solid color-mix(in srgb, var(--border) 65%, transparent);flex-direction:column;flex-shrink:0;min-height:0;display:flex}._nF{color:var(--dim);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.25rem;padding:.35rem .65rem;font-size:.78rem;list-style:none;display:flex}._nF:hover{color:var(--text)}._nF::-webkit-details-marker{display:none}._nG{flex-shrink:0;transition:transform .12s}._nE[open] ._nG{transform:rotate(90deg)}._nH{flex-direction:column;max-height:14rem;padding:0 .65rem .35rem;display:flex;overflow:auto}._nI{color:var(--dim);margin-top:.25rem;font-size:.78rem;font-weight:600}._nI:first-child{margin-top:0}._nJ{color:var(--text);margin-top:.25rem}._nK{width:100%;min-width:0;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:4px;align-items:baseline;gap:.35rem;padding:.15rem .25rem;display:flex}._nK:hover{background:color-mix(in srgb, currentColor 6%, transparent)}._nL{min-width:3ch;color:var(--dim);text-align:right;flex-shrink:0;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem}._nM{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;overflow:hidden}._nN{color:var(--dim);margin-top:.25rem;font-size:.78rem}._nO{border-bottom:1px solid color-mix(in srgb, var(--border) 65%, transparent);border-left:2px solid var(--danger);background:color-mix(in srgb, var(--danger) 10%, transparent);flex-direction:column;flex-shrink:0;gap:.25rem;padding:.35rem .65rem;display:flex}._nP{flex-wrap:wrap;align-items:baseline;gap:0 .35rem;display:flex}._nQ{white-space:pre-wrap;overflow-wrap:anywhere}._nR{color:var(--dim);font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem}._nS{color:var(--dim);flex-wrap:wrap;align-items:center;gap:.5rem;padding:.35rem .65rem;display:flex}._nT{flex:14rem;min-width:0}._nU{gap:.35rem;margin-left:auto;display:flex}._nV{border-top:1px solid color-mix(in srgb, var(--border) 65%, transparent);color:var(--dim);flex-shrink:0;padding:.25rem .65rem;font-size:.78rem}._kn{border-radius:var(--radius);background:var(--accent-fill);color:#fff;flex-shrink:0;align-items:stretch;min-width:0;max-width:100%;min-height:2.15rem;display:inline-flex;overflow:hidden;box-shadow:inset 0 1px #ffffff24}._ko{place-items:center end;display:inline-grid}._ko>*{grid-area:1/1}._kp{visibility:hidden}._kr{color:var(--dim);white-space:nowrap;-webkit-user-select:none;user-select:none;align-items:center;gap:.35rem;padding-inline:.35rem;font-size:.85rem;display:inline-flex}._ks{min-width:0;color:inherit;background:0 0;border:0;border-radius:0;justify-content:center;align-items:center;gap:.35rem;padding:0 .65rem;font-size:.85rem;font-weight:500;transition:background .12s;display:inline-flex}._ks:focus-visible{outline-offset:-3px;outline-color:currentColor}._ks:hover:not(:disabled){background:#0000001f}._ks:active:not(:disabled){background:#0003}._ks:disabled{cursor:default}._kt{flex-shrink:0}._ku{translate:0 .55px}._kv{text-overflow:ellipsis;white-space:nowrap;max-width:11rem;overflow:hidden}._kw{min-width:0;color:inherit;width:1.8rem;box-shadow:inset 1px 0 0 color-mix(in srgb, currentColor 30%, transparent);background:0 0;border:0;border-radius:0;flex-shrink:0;justify-content:center;align-items:center;gap:.35rem;font-size:.85rem;font-weight:500;transition:background .12s;display:inline-flex;position:relative}._kw:focus-visible{outline-offset:-3px;outline-color:currentColor}._kw:after{content:"";pointer-events:none;border-color:currentColor;border-bottom-style:solid;border-bottom-width:1.5px;border-right-style:solid;border-right-width:1.5px;width:.32em;height:.32em;position:absolute;top:50%;right:50%;translate:50% -70%;rotate:45deg}._kw:hover:not(:disabled){background:#0000001f}._kw:active:not(:disabled){background:#0003}._kw:disabled{cursor:default}._kx{min-width:13rem}._ky{color:var(--dim);padding:.35rem .65rem .25rem;font-size:.78rem;font-weight:600}._kz{flex:none;justify-content:flex-start;gap:.5rem;padding:.5rem .65rem;font-size:.85rem}._kA{width:1rem;color:var(--accent-text);flex-shrink:0;justify-content:center;display:inline-flex}._kB{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}._kC{background:var(--border);height:1px;margin:.25rem 0}._kD{border-radius:var(--radius);background:var(--panel);border:1px solid var(--accent-text);align-items:stretch;min-width:0;max-width:100%;display:inline-flex;position:relative;overflow:hidden}._kD:after{content:"";pointer-events:none;border-bottom:1.5px solid;border-right:1.5px solid;border-color:var(--accent-text);width:.32em;height:.32em;position:absolute;top:50%;right:.65rem;translate:0 -70%;rotate:45deg}._kE{border-radius:0;justify-content:center;align-items:center;gap:.35rem;padding:.35rem .65rem;display:inline-flex}._kE:disabled{opacity:.45}._kE:focus-visible{outline-offset:-3px;outline-color:#fff}._kF{appearance:none;min-width:0;max-width:8rem;color:var(--accent-text);background:color-mix(in srgb, var(--accent) 10%, transparent);border:0;border-radius:0;padding:.25rem 1.5rem .25rem .65rem;font-size:.85rem;font-weight:500}._kF:disabled{opacity:.45}._kF:focus-visible{outline:2px solid var(--accent-text);outline-offset:-2px;box-shadow:none}@media screen and (width>=900px){._kq,._kr{display:none}}@media screen and (width<=899px){._ks{padding:0 .5rem}._kw{width:1.6rem}}._kh{background:var(--panel);border-block:1px solid var(--border);flex-direction:column;gap:.35rem;padding:.35rem .5rem;scroll-margin:4rem 0 1.5rem;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:.85rem;display:flex}._ki{white-space:pre-wrap;overflow-wrap:anywhere;margin:0}._kj{resize:vertical;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}._kk{flex-wrap:wrap;align-items:center;gap:.35rem;display:flex}._kl{font-size:.78rem}._km{border-radius:4px}@keyframes _fY{0%{opacity:0}to{opacity:1}}@keyframes _fZ{0%{transform:translate(-100%)}to{transform:translate(300%)}}._fU{flex-direction:column;gap:.5rem;margin-bottom:.65rem;padding-inline:.65rem;display:flex;position:relative}._fX{flex-shrink:0;align-items:center;min-width:0;margin-left:auto;display:flex}._f0{pointer-events:none;visibility:hidden;height:2px;position:absolute;bottom:-1px;left:0;right:0;overflow:hidden}._f1{visibility:visible;animation:.15s .3s both _fY}._f1:after{content:"";background:var(--accent-fill);width:33%;animation:1.1s ease-in-out infinite _fZ;position:absolute;inset:0}._f2{visibility:visible;pointer-events:auto;background:var(--lightningcss-light,#bf8700)var(--lightningcss-dark,#d4a72c);overflow:visible}._f2:before{content:"";position:absolute;inset:-6px 0}@media screen and (width>=900px){._fU{border-bottom:1px solid color-mix(in srgb, var(--border) 88%, transparent);flex-flow:wrap;align-items:center;gap:.35rem .5rem;margin-bottom:.5rem;padding-bottom:.65rem}}@media screen and (width<=899px){._fU{margin:.25rem max(.5rem, calc(env(safe-area-inset-left) + .25rem)) .5rem max(.5rem, calc(env(safe-area-inset-right) + .25rem));background:var(--panel);box-shadow:inset 0 0 0 1px var(--border);border-radius:calc(var(--radius) + 2px);flex-flow:wrap;align-items:center;gap:.35rem;padding:.35rem}._fV{flex:none;width:1.85rem;height:2.15rem}._fW{flex:100%;order:10;min-height:1.75rem}._f0{left:calc(var(--radius) + 2px);right:calc(var(--radius) + 2px);bottom:0}}@media (prefers-reduced-motion:reduce){._f1{background:var(--accent-fill)}._f1:after{animation:none;display:none}}@keyframes _gz{0%{opacity:0}to{opacity:1}}._f3{flex:1;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}._f5{flex-direction:column;flex:1;min-width:0;min-height:0;padding-top:.65rem;display:flex}._f6{text-overflow:ellipsis;white-space:nowrap;text-align:left;min-width:0;color:var(--dim);direction:rtl;flex:0 auto;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85rem;overflow:hidden}._f8{flex:0 auto;align-items:center;gap:.35rem;min-width:8rem;display:flex}._f9{border-bottom:1px solid var(--border);align-items:center;gap:.35rem;min-width:0;padding:.25rem .65rem;display:flex}._f_{font:inherit;font-variant-numeric:tabular-nums;cursor:pointer;border:0;flex-shrink:0;gap:.25rem;font-size:.78rem}._f_:hover{background:color-mix(in srgb, currentColor 10%, transparent);color:var(--text)}._ga{color:var(--lightningcss-light,#1a7f37)var(--lightningcss-dark,#57d364)}._gb{color:var(--danger)}._gd{color:var(--text);font-weight:600}._ge{flex:1}._gf{display:contents}._gj{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;position:relative}._gk{overscroll-behavior:contain;flex:1;min-width:0;min-height:0;padding-inline:.65rem;overflow:hidden auto}._gk[hidden]{display:none}._gl{flex-direction:column;flex:1;align-items:center;gap:.5rem;min-height:0;padding:.85rem;display:flex;overflow:auto}._gm{color:var(--dim);font-size:.78rem}._gn{image-rendering:auto;background-color:var(--panel);background-image:conic-gradient(var(--border) 25%, transparent 0 50%, var(--border) 0 75%, transparent 0);border:1px solid var(--border);background-size:16px 16px;max-width:100%;height:auto}._go{border:1px solid var(--border);background:var(--panel);flex:1;width:100%;min-height:30rem}._gp{color:var(--dim);text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:.65rem;padding:.85rem;font-size:.85rem;display:flex}._gq{text-align:left;flex-direction:column;gap:.15rem;width:min(28rem,100%);margin:0;padding:0;list-style:none;display:flex}._gr{border-radius:var(--radius);color:var(--text);align-items:baseline;gap:.35rem;padding:.25rem .5rem;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85rem;display:flex}._gr:hover{background:color-mix(in srgb, currentColor 6%, transparent)}._gs{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--dim);font-size:.78rem;overflow:hidden}._gt{border:1px solid var(--border);border-radius:var(--radius);background:var(--panel);flex-direction:column;flex-shrink:0;gap:.5rem;max-height:40%;margin:0 .65rem .5rem;padding:.5rem;display:flex;overflow-y:auto}._gu{color:var(--dim);justify-content:space-between;align-items:center;gap:.5rem;font-size:.78rem;font-weight:600;display:flex}._gv{flex-direction:column;gap:.25rem;display:flex}._gw{color:var(--dim);background:var(--bg);border-radius:4px;margin:0;padding:.25rem 0;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;line-height:1.5;overflow-x:auto}._gx{color:var(--text);background:color-mix(in srgb, var(--danger) 10%, transparent);display:block}._gy{opacity:.55;transition:opacity .12s .15s}._gA{pointer-events:none;justify-content:center;align-items:center;animation:.12s .15s both _gz;display:flex;position:absolute;inset:0}@media screen and (width>=900px){._f7{flex:1 1 0;min-width:10rem}._f8,._gc,._gh{display:none}}@media screen and (width<=899px){._f3{flex-direction:column}._f5{padding-top:0;padding-inline:max(.2rem, env(safe-area-inset-left)) max(.2rem, env(safe-area-inset-right))}._f4>._f5{flex:none}._f3:not(._f4) ._f7,._f4 ._f8,._f9{display:none}._f_{min-height:1.75rem}._gc{width:1.75rem;height:1.75rem;margin-left:-.65rem;margin-right:-.35rem}._ge{display:none}._cJ ._gf{flex:auto;align-items:center;width:100%;min-width:0;height:100%;display:flex}._gg{display:none}._gi{order:1}._f4 ._gj{display:none}._gk{padding-inline:0}._gt{margin:0 .35rem .35rem}._j3{order:-1}}@media screen and (width<=399px){._j3>a{padding-inline:.5rem}}._kd{position:relative;overflow:visible}._ke._ke{color:var(--accent-text);background:color-mix(in srgb, var(--accent) 10%, transparent)}._kf{box-sizing:border-box;background:var(--accent-fill);color:#fff;font-variant-numeric:tabular-nums;text-align:center;min-width:.95rem;height:.95rem;box-shadow:0 0 0 1.5px var(--panel);pointer-events:none;border-radius:999px;padding:0 .15rem;font-size:.6rem;font-weight:600;line-height:.95rem;position:absolute;top:-3px;right:-3px}._kg{width:min(20rem,100vw - 16px);padding:.5rem}._lL{flex-direction:column;gap:.35rem;min-width:0;display:flex}._lM{cursor:pointer;align-items:center;gap:.35rem;min-height:1.6rem;padding-inline:.25rem;font-size:.85rem;display:flex}._lN{flex:auto;min-width:0}._lO{color:var(--dim);font-variant-numeric:tabular-nums;font-size:.78rem}._lP{font-variant-numeric:tabular-nums;min-width:0;min-height:1.6rem;color:var(--dim);white-space:nowrap;align-items:center;gap:.35rem;padding-inline:.25rem;font-size:.78rem;display:flex}._lQ{text-overflow:ellipsis;min-width:0;overflow:hidden}._lR{color:var(--text);border-radius:4px;margin-left:auto;padding:.15rem .35rem;font-weight:500}._lR:hover{background:color-mix(in srgb, currentColor 6%, transparent)}@media screen and (width<=899px){._lM{min-height:1.85rem}._lR{min-height:1.85rem;padding:0 .5rem}}._m3{flex:1;align-items:center;width:100%;min-width:0;display:flex}._m4{box-sizing:border-box;border-radius:var(--radius);flex:1;width:100%;min-width:0;height:2.15rem;padding-top:0;padding-bottom:0;padding-right:.65rem;line-height:1.2}._m0{font-variant-numeric:tabular-nums;flex-shrink:0;gap:.25rem;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:.72rem;font-weight:500;display:inline-flex}._m1{color:color-mix(in srgb, var(--lightningcss-light,#1a7f37)var(--lightningcss-dark,#57d364) 55%, var(--dim))}._m2{color:color-mix(in srgb, var(--danger) 55%, var(--dim))}._ms{align-items:center;min-width:0;display:flex;position:relative}._mt{scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;flex:auto;align-items:center;gap:.35rem;min-width:0;display:flex;position:relative;overflow:auto hidden}._mt::-webkit-scrollbar{display:none}._mv{-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 2rem),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - 2rem),#0000)}._mu{-webkit-mask-image:linear-gradient(90deg,#0000,#000 2rem);mask-image:linear-gradient(90deg,#0000,#000 2rem)}._mu._mv{-webkit-mask-image:linear-gradient(90deg,#0000,#000 2rem calc(100% - 2rem),#0000);mask-image:linear-gradient(90deg,#0000,#000 2rem calc(100% - 2rem),#0000)}._mw{z-index:1;border-radius:var(--radius);width:1.6rem;height:1.6rem;color:var(--dim);background:var(--bg,var(--panel));justify-content:center;align-items:center;display:none;position:absolute;top:50%;translate:0 -50%}._mx{left:0}._my{right:0}._mz{transform:rotate(180deg)}._mB{border-radius:var(--radius);height:1.75rem;color:var(--text);white-space:nowrap;flex-shrink:0;align-items:center;gap:.25rem;padding:0 .5rem;font-size:.85rem;font-weight:400;display:inline-flex}._mB._mA{background:color-mix(in srgb, var(--accent) 16%, transparent);box-shadow:inset 0 0 0 1px var(--accent);color:var(--text)}._mC{border-radius:var(--radius);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--text) 24%, transparent);flex-shrink:0;align-items:center;gap:1px;padding:2px;display:inline-flex}._mD{box-shadow:inset 0 0 0 1px var(--accent)}._mE{color:var(--text);white-space:nowrap;padding:0 .25rem 0 .35rem}._mF{font-weight:600}._mG{border-radius:4px;height:calc(1.75rem - 4px);padding:0 .35rem}._mG._mA{box-shadow:none}._mH{background:color-mix(in srgb, currentColor 6%, transparent);border-radius:4px;flex-shrink:0;align-items:center;display:inline-flex}._mI{background:color-mix(in srgb, var(--accent) 16%, transparent)}._mI ._mB._mA{box-shadow:none;background:0 0}._mJ{height:calc(1.75rem - 4px);color:var(--dim);font-variant-numeric:tabular-nums;border-radius:4px;flex-shrink:0;align-items:center;gap:.15rem;padding:0 .35rem 0 .25rem;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem;display:inline-flex}._mK{color:var(--text)}._mL{gap:.35rem}._mM{background:color-mix(in srgb, currentColor 6%, transparent)}._mN{color:var(--dim);font-variant-numeric:tabular-nums;align-items:center;gap:.15rem;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem;display:inline-flex}._mO{min-width:12rem;max-width:min(22rem,100vw - 1rem);max-height:min(24rem,70dvh);color:inherit;flex-direction:column;margin:0;display:none;position:fixed;inset:auto;overflow-y:auto}._mO:popover-open{display:flex}._mP{color:var(--dim);padding:.25rem .5rem;font-size:.78rem}._mQ{color:var(--text);margin-right:.25rem;font-weight:600}._mR{color:var(--dim);align-items:center;gap:.25rem;padding:.35rem .5rem .15rem;font-size:.78rem;display:flex}._mS{color:var(--dim)}._mT{min-width:0;color:var(--text);text-align:left;border-radius:4px;align-items:center;gap:.35rem;padding:.35rem .5rem;font-size:.85rem;display:flex}._mT._mA{background:color-mix(in srgb, var(--accent) 16%, transparent);box-shadow:inset 0 0 0 1px var(--accent)}._mU{padding-left:1rem}._mV{min-width:1em;color:var(--dim);font-variant-numeric:tabular-nums;text-align:right;flex-shrink:0;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem}._mW{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}._mX,._mX._mA{color:var(--dim)}._mY{font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem}._mZ{font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;font-weight:600}@media (hover:hover){._mw{display:inline-flex}._mw:hover{color:var(--text)}._mB:not(._mA):hover{background:color-mix(in srgb, currentColor 6%, transparent)}._mJ:hover{color:var(--text);background:color-mix(in srgb, currentColor 6%, transparent)}._mT:not(._mA):hover{background:color-mix(in srgb, currentColor 6%, transparent)}}@media screen and (width<=899px){._mB{height:1.75rem}._mG,._mJ{height:calc(1.75rem - 4px)}}._m5{color:var(--dim);flex-shrink:0;display:inline-flex}._l5{border-bottom:1px solid var(--border);margin:0;padding:.35rem .65rem}@media screen and (width<=899px){._l4._l3{border-right:none;flex:auto;order:1;width:100%;display:flex}}._lY{text-overflow:ellipsis;white-space:nowrap;flex-shrink:0;max-width:60%;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85rem;overflow:hidden}._lZ{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--dim);flex:1;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;overflow:hidden}._l0{color:var(--accent-text);background:0 0;font-weight:600}._l1{color:var(--dim);flex-shrink:0;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem}._l2{flex-shrink:0}._fs{max-width:18rem}._ft{color:var(--dim);font-size:.78rem}._ft._ft{padding-left:1.3rem}._fu{color:var(--dim);font-size:.78rem}._fw{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}._fx{min-width:1.85rem;min-height:1.85rem}._fy{align-items:center;gap:.15rem;min-width:0;display:inline-flex}._fA{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.78rem;overflow:hidden}._fB{flex-wrap:wrap;flex-shrink:0;gap:.15rem .35rem;margin-left:.35rem;display:inline-flex}._fC{font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;font-weight:600}._fC:hover{text-decoration:underline}@media screen and (width<=899px){._fu{display:none}._fv{flex-wrap:wrap;justify-content:flex-end;row-gap:.25rem}}@media (pointer:coarse){._fz{width:1.75rem;height:1.75rem}}._jK{min-width:0;margin-bottom:.65rem}._jL{margin:0;padding:0;list-style:none}._jN{border-radius:var(--radius);align-items:center;gap:.15rem;display:flex}._jN._jM{background:color-mix(in srgb, var(--accent) 10%, transparent)}._jO{gap:.5rem}._jO:hover{background:0 0}._jP,._jQ{color:var(--dim);font-size:.85rem}._jR{border-left:2px solid var(--border);margin:.15rem 0 .25rem 1.35rem;padding-left:.5rem}._jS{margin:0;padding:0;list-style:none}._jT{color:var(--dim)}._jU{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}._jV{color:var(--accent-text)}._jW{justify-content:flex-end;align-items:center;gap:.25rem;display:flex}._jX{flex:1;min-width:0;margin:.25rem 0}._jZ{margin-top:.5rem}._j0{margin:0 0 .25rem;padding:0 .65rem}._j1{padding:0 .65rem;font-size:1rem;display:flex}._j2{color:var(--dim);flex-shrink:0;margin-right:.35rem}@media screen and (width<=899px){._jO{gap:.5rem;min-height:2.85rem;padding:.65rem;font-size:1rem}._jP,._jQ{font-size:1rem}._jR{margin:.25rem 0 .5rem .5rem;padding:.5rem}._jY{min-height:2.6rem;padding:.65rem}._j2{display:none}}._hm{align-items:center;gap:.25rem;width:min(24rem,100%);display:flex;position:relative}._hn{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;inset:auto;overflow:hidden}._hp{flex:1;min-width:0;height:1.85rem}._hq{height:100%;padding-top:0;padding-bottom:0}._hr{height:1.85rem}._ht{background:color-mix(in srgb, var(--panel) 94%, var(--text));border:1px solid color-mix(in srgb, var(--border) 60%, var(--text));z-index:15;width:min(30rem,100vw - 2rem);max-height:22rem;margin:0;padding:.25rem .5rem;position:absolute;top:calc(100% + .25rem);right:0;overflow-y:auto;box-shadow:0 16px 48px #0000004d,0 0 0 1px #00000014}._ht[hidden]{display:none}._hu{flex-direction:column;list-style:none;display:flex}._hv{min-height:2.35rem;color:var(--dim);align-items:center;gap:.35rem;font-size:.85rem;display:flex}._hA{width:100%;min-height:2.35rem;color:var(--accent-text);text-align:left;align-items:center;gap:.5rem;padding:0 .65rem;font-size:1rem;display:flex}._hA:active{background:color-mix(in srgb, var(--accent) 10%, transparent)}@media screen and (width<=899px){._hm{z-index:35;width:auto;height:var(--app-height,100dvh);padding:max(.85rem, env(safe-area-inset-top)) max(.65rem, env(safe-area-inset-right)) max(.65rem, env(safe-area-inset-bottom)) max(.65rem, env(safe-area-inset-left));background:var(--bg);grid-template:"field close""list list"minmax(0,1fr)/minmax(0,1fr) auto;align-items:stretch;gap:.35rem;display:grid;position:fixed;inset:0}._hn{width:1px;height:1px;padding:0;position:absolute;inset:auto}._hp{grid-area:field;height:2.35rem}._hr{grid-area:list;place-self:start stretch;height:2.35rem;margin-top:.35rem}._hs{grid-area:close;align-self:center}._ht{top:calc(max(.85rem, env(safe-area-inset-top)) + 2.35rem + .35rem);left:max(.65rem, env(safe-area-inset-left));right:max(.65rem, env(safe-area-inset-right));bottom:max(.65rem, env(safe-area-inset-bottom));overscroll-behavior:contain;width:auto;min-height:0;max-height:none;box-shadow:none;background:var(--panel);border:1px solid var(--border);grid-area:auto;position:absolute}._ht[hidden]{visibility:hidden;display:block}}@media screen and (width>=900px){._ho{opacity:1;pointer-events:auto;width:min(24rem,100%);height:auto;position:relative;inset:auto;overflow:visible}._ho ._hs{display:none}._hx._hx{gap:0;width:100%}._hx [data-add-pop]{width:auto;left:0;right:0}._hy._hy{height:2.15rem}._hz._hz,._hz._hz:focus,._hz._hz:focus-visible{box-shadow:none;background:0 0;border:none;border-radius:0;outline:none}._hA{display:none}}._lz{flex-direction:column;width:100%;min-width:0;display:flex}._lA{align-items:center;gap:.35rem;min-width:0;margin:0;padding:.25rem 0;font-size:.85rem;display:flex}._lA+._lA{border-top:1px solid color-mix(in srgb, var(--border) 65%, transparent)}._lB{color:var(--dim)}._lC{flex:1;align-items:baseline;gap:.35rem;min-width:0;display:flex}._lD{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:500;overflow:hidden}._lE{color:var(--dim);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.78rem;overflow:hidden}._lF{color:var(--lightningcss-light,#8a5a00)var(--lightningcss-dark,#f0b84a)}._lG{color:var(--dim)}._lG:hover{color:var(--text)}._lH{color:var(--dim);flex-wrap:wrap;line-height:1.35}._lI{color:var(--text);letter-spacing:.08em;-webkit-user-select:all;user-select:all;font-size:.85rem}._lJ{color:var(--accent-text)}._lK{color:var(--dim);font-size:.78rem;line-height:1.35}@media screen and (width<=899px){._lC{flex-direction:column;gap:.15rem}._lK{font-size:.85rem}}._gU{align-items:center}._gV{color:var(--dim)}._gW{max-width:18rem}._gV ._gW{color:var(--text)}._gX{font-family:inherit;display:block}._gY{color:var(--dim);white-space:nowrap;text-overflow:ellipsis;max-width:12rem;overflow:hidden}._gZ{min-width:1.85rem;min-height:1.85rem}@media screen and (width<=899px){._gY{display:none}}._ey{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:.5rem;padding-top:.25rem;display:flex}._ez{min-width:10.5rem}._eA{flex-direction:column;gap:.35rem;display:flex}._eB{flex-direction:column;display:flex}li+._eB{border-top:1px solid color-mix(in srgb, var(--border) 65%, transparent)}._eC{border-top:none}._eD{padding:0 .65rem .5rem}@media screen and (width<=899px){._ey{flex-direction:column-reverse;align-items:stretch;margin-top:.25rem}._ez{min-width:0}._eA{gap:.5rem}._eD{padding:0 .85rem .65rem}}._jc{background:var(--panel);box-shadow:inset 0 0 0 1px var(--border);border-radius:calc(var(--radius) + 2px);flex-direction:column;gap:.35rem;margin:0;padding:.65rem .85rem;font-size:.85rem;list-style:none;display:flex}._je{color:var(--dim);overflow-wrap:anywhere;align-items:center;gap:.5rem;min-width:0;display:flex}._je._jd{color:var(--text)}._jf{color:var(--lightningcss-light,#1a7f37)var(--lightningcss-dark,#57d364);flex-shrink:0;justify-content:center;align-items:center;width:.9rem;display:inline-flex}@media screen and (width<=899px){._jc{gap:.5rem;padding:.85rem 1rem;font-size:1rem}}._jC{width:min(32rem,100vw - 1.5rem)}._jD{margin:0}._jE{color:var(--lightningcss-light,#8a5a00)var(--lightningcss-dark,#f0b84a)}._jF{resize:vertical;min-height:7rem;font-size:.85rem;line-height:1.5}._jG{flex-direction:column;gap:.25rem;margin:0;padding:0;list-style:none;display:flex}._jH{align-items:center;gap:.35rem;min-width:0;font-size:.85rem;display:flex}._jI{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}._jJ{flex-direction:column;gap:.25rem;display:flex}@media screen and (width<=899px){._jF{font-size:1rem}}._lt{background:var(--panel);border-block:1px solid var(--border);grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:.65rem;padding:.5rem .65rem;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:.85rem;display:grid}._lu{flex-direction:column;gap:.25rem;min-width:0;display:flex}._lv{border:1px solid color-mix(in srgb, var(--border) 65%, transparent);border-radius:var(--radius);background-image:conic-gradient(color-mix(in srgb, currentColor 6%, transparent) 25%, transparent 0 50%, color-mix(in srgb, currentColor 6%, transparent) 0 75%, transparent 0);background-size:16px 16px;justify-content:center;align-self:start;align-items:center;min-width:8rem;max-width:100%;height:14rem;padding:.35rem;display:flex}._lw{object-fit:contain;max-width:100%;max-height:100%}._lx{border-radius:var(--radius);background:var(--bg);border:0;width:100%;height:28rem}._ly{text-align:center;flex-direction:column;align-items:center;gap:.25rem;padding:.5rem;display:flex}@keyframes _im{0%,to{opacity:.55}50%{opacity:1}}._ia{flex:1;height:100%;min-height:0;display:flex;position:relative;overflow:hidden}._ib._ib{color:var(--accent-text);background:color-mix(in srgb, var(--accent) 10%, transparent)}._ic{flex-wrap:wrap;align-items:center;gap:.35rem;min-width:0;display:flex}._id{flex-direction:column;flex:1;min-width:0;padding-top:.65rem;display:flex}._ig{height:1.75rem}._ii{pointer-events:none;flex:0 0 0;width:0;min-width:0;overflow:visible}._ii._ii{margin-left:0}._ij{min-width:0;margin-left:auto;display:flex}._ik{display:contents}._il{flex:none;display:inline-flex;position:relative}._in{flex-direction:column;gap:12px;padding-top:.35rem;animation:1.4s ease-in-out infinite _im;display:flex}._io{pointer-events:none;position:absolute;inset:0 .65rem;overflow:hidden}._ip{border-radius:var(--radius);background:color-mix(in srgb, currentColor 6%, transparent)}._iq{border-radius:var(--radius);flex-direction:column;display:flex;overflow:hidden}._ir{border-radius:0;height:44px}._is{background:color-mix(in srgb, color-mix(in srgb, currentColor 6%, transparent) 45%, transparent);border-radius:0;height:7rem}._it{padding-inline:.65rem}._iu{flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;position:relative}._iv{overscroll-behavior:contain;flex:1;min-width:0;min-height:0;padding-inline:.65rem;overflow:hidden auto}._iw{box-sizing:border-box;cursor:pointer;-webkit-user-select:none;user-select:none;background:var(--panel);border-bottom:1px solid var(--border);border-radius:var(--radius) var(--radius) 0 0;align-items:center;gap:.35rem;width:100%;min-width:0;height:44px;padding:0 .35rem;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:.85rem;display:flex}._iw:hover{background:color-mix(in srgb, var(--panel) 90%, var(--text))}._iy{color:var(--dim);flex-shrink:0;transition:transform .12s;display:inline-flex}._ix ._iy{transform:rotate(-90deg)}._iz{flex-shrink:0;display:block}._iA{text-overflow:ellipsis;white-space:nowrap;text-align:left;direction:rtl;flex:auto;min-width:0;font-weight:600;overflow:hidden}._iB{background:color-mix(in srgb, var(--danger) 10%, transparent);color:var(--danger);font:inherit;cursor:pointer;border:0;border-radius:4px;align-items:center;gap:.15rem;padding:0 .25rem;font-size:.78rem;font-weight:600;display:inline-flex}._iB:hover{background:color-mix(in srgb, var(--danger) 20%, transparent)}._iC{font-variant-numeric:tabular-nums;flex-shrink:0;gap:.25rem;font-size:.78rem;display:inline-flex}._iD{color:var(--lightningcss-light,#1a7f37)var(--lightningcss-dark,#57d364)}._iE{color:var(--danger)}._iF{color:var(--dim);flex-shrink:0}._iG{color:var(--accent-text);background:color-mix(in srgb, var(--accent) 10%, transparent)}._iH{color:var(--lightningcss-light,#8a5a00)var(--lightningcss-dark,#f0b84a)}._iI{cursor:pointer;border:0;flex-shrink:0;font-family:inherit}._iI:hover{background:color-mix(in srgb, currentColor 10%, transparent);color:var(--text)}._iJ{color:var(--dim);margin-left:auto}._iJ:disabled{opacity:.4;cursor:default}._iL{flex-direction:column;flex-shrink:0;display:flex}@media screen and (width>=900px){._ic{display:contents}._ie{order:3}._if{flex:1 1 0;order:1;min-width:10rem;margin-left:.25rem}._ih{order:4}._ij{order:4;max-width:18rem;margin-left:0}._ij:not(._ii){flex:12rem}}@media screen and (width<=899px){._ic{box-shadow:none;background:0 0;flex-wrap:nowrap;flex:none;gap:.35rem;margin:0;padding:0}._id{padding-top:0;padding-inline:max(.2rem, env(safe-area-inset-left)) max(.2rem, env(safe-area-inset-right))}._ig{height:1.75rem}._ih{display:none}._ii{opacity:0;pointer-events:none;flex:none;width:1px;min-width:0;height:1px;margin:0;padding:0;position:fixed;bottom:0;left:0;overflow:hidden}._ij{flex:100%;margin-left:0}._cJ ._ij:not(._ii){flex:auto;align-items:center;width:100%;min-width:0;height:100%;margin:0;padding:0;display:flex}._io{left:0;right:0}._it{padding-inline:.5rem}._iv{padding-inline:0}._iK{flex-wrap:wrap}}@media screen and (width<=399px){._ic{gap:.15rem}}._lS{align-items:center;gap:.35rem;min-width:0;font-weight:400;display:flex}._lT{flex-shrink:0;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;font-weight:600}._lT:hover{text-decoration:underline}._lU{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-size:.78rem;overflow:hidden}._lV{color:var(--dim);white-space:nowrap;flex-shrink:0;align-items:center;gap:.15rem;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.72rem;display:inline-flex}._lW{color:var(--lightningcss-light,#8a5a00)var(--lightningcss-dark,#f0b84a)}._lX{border-radius:4px;padding:.15rem}._lX:hover{background:color-mix(in srgb, currentColor 10%, transparent)}._lX:disabled{opacity:.5}._m9{text-overflow:ellipsis;white-space:nowrap;min-width:2rem;color:var(--dim);flex:0 100 auto;font-size:.72rem;font-weight:400;overflow:hidden}._m_{color:color-mix(in srgb, var(--text) 70%, var(--dim))}._na{color:var(--text)}._nb{color:var(--dim)}._nj{border-top:1px solid var(--border);background:var(--panel);flex:none;max-height:30%;padding:.35rem 0;overflow-y:auto}._nk{color:var(--dim);padding:0 .65rem .25rem;font-size:.78rem;font-weight:600}._nl{min-height:1.9rem;color:var(--text);align-items:center;gap:.35rem;padding:0 .65rem;display:flex}._nl:hover{background:color-mix(in srgb, currentColor 6%, transparent)}._nm{text-overflow:ellipsis;white-space:nowrap;text-align:left;direction:rtl;flex:1;min-width:0;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;overflow:hidden}._nn{color:var(--dim);font-variant-numeric:tabular-nums;flex-shrink:0;align-items:center;gap:.15rem;font-size:.78rem;display:inline-flex}@media screen and (width<=899px){._nl{min-height:2.35rem}}._nc{overscroll-behavior:contain;scrollbar-width:none;border-top:1px solid var(--border);background:var(--panel);flex:none;align-items:center;gap:.25rem;padding:.35rem .85rem .35rem .5rem;display:flex;overflow:auto hidden;-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - .85rem),#0000);mask-image:linear-gradient(90deg,#000 calc(100% - .85rem),#0000)}._nd{flex:none;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}._nd:active{background:color-mix(in srgb, currentColor 10%, transparent)}._ne{flex-shrink:0;margin-left:-.15em;display:inline-flex}._nf{white-space:nowrap}._ng{white-space:nowrap;color:var(--text)}._nh{color:var(--dim)}._ni{white-space:nowrap;color:var(--dim)}@media screen and (width<=899px){._nc{gap:.35rem;padding-bottom:.5rem}}@media screen and (width>=900px){._nd:hover{color:var(--accent-text);background:color-mix(in srgb, var(--accent) 10%, transparent)}}._l6{font-size:1.25rem}._l7{letter-spacing:-.02em;font-size:1.1rem;font-weight:700}._l8{background:var(--panel);flex-direction:column;display:flex}._l9{align-items:center;gap:.65rem;padding:.85rem .5rem .5rem 1rem;display:flex}._l_{--sheet-repo:2.35rem;overscroll-behavior:contain;flex:auto;min-height:0;padding:0 .5rem .65rem;overflow-y:auto}._ma+._ma{margin-top:.5rem}._mb{z-index:2;background:var(--panel);box-shadow:0 -2px 0 var(--panel);width:100%;height:var(--sheet-repo);color:var(--text);text-align:left;align-items:center;gap:.5rem;padding:0 .35rem;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85rem;font-weight:700;display:flex;position:sticky;top:0}._mc{border-radius:var(--radius)}._mc:active{background:color-mix(in srgb, currentColor 6%, transparent)}._md{padding-left:1.35rem;font-weight:500}._me{color:var(--dim);flex-shrink:0;display:inline-flex;transform:rotate(90deg)}._mf{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;overflow:hidden}._mg{color:var(--dim)}._mh{color:var(--dim);font-variant-numeric:tabular-nums;flex-shrink:0;font-weight:400}._mi{padding:0 .35rem .35rem;font-size:.78rem}._mi:not(:has(>*)){display:none}._mj{flex-direction:column;gap:.25rem;display:flex}._mj+._mj{margin-top:.35rem}._mk{text-align:left;border-radius:calc(var(--radius) + 2px);width:100%;min-height:2.85rem;box-shadow:inset 0 0 0 1px var(--border);background:0 0;flex-shrink:0;align-items:center;gap:.5rem;padding:.65rem;font-size:1rem;display:flex}._mk:active{background:color-mix(in srgb, currentColor 6%, transparent)}._ml{top:var(--sheet-repo);z-index:1;background:var(--panel);height:1.75rem;color:var(--dim);padding:0 .35rem;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;line-height:1.75rem;position:sticky}._mm{overflow-wrap:anywhere;flex:1;min-width:0;line-height:1.2}._mn{z-index:2;background:var(--panel);margin-bottom:-1px;padding:0 .5rem .5rem;position:relative}._mo{color:var(--dim);text-align:center;margin:0;padding:.65rem}._mp{background:var(--accent-text)}._mq{opacity:.5}._mr{color:var(--dim)}@media screen and (width<=899px){._l9{padding-top:max(.85rem, calc(env(safe-area-inset-top) + .5rem))}}._dr{--page-col:calc(48rem + 8.5rem + 1.35rem)}._du{z-index:1;flex-direction:column;gap:1px;display:flex;position:sticky;top:0}._dw{border-radius:var(--radius);min-height:1.8rem;color:var(--dim);text-align:left;white-space:nowrap;align-items:center;padding:0 .5rem;font-size:.85rem;display:flex}._dw:hover{background:color-mix(in srgb, currentColor 6%, transparent);color:var(--text)}._dw._dv{background:color-mix(in srgb, var(--accent) 10%, transparent);color:var(--text);font-weight:500}._dx{background:var(--lightningcss-light,#bf8700)var(--lightningcss-dark,#d4a72c);margin-left:auto}._dy{flex-direction:column;gap:1.35rem;min-width:0;display:flex}._dz{border-radius:calc(var(--radius) + 2px);background:color-mix(in srgb, var(--accent) 10%, transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 35%, transparent);flex-wrap:wrap;align-items:center;gap:.65rem;padding:.65rem .85rem;display:flex}._dA{flex-direction:column;flex:12rem;gap:.15rem;min-width:0;display:flex}._dB{font-size:1rem;font-weight:600}._dC{color:var(--dim);font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85rem}@media screen and (width>=900px){._ds{grid-template-columns:8.5rem minmax(0,1fr);align-items:start;column-gap:1.35rem;max-width:57.85rem;display:grid}}@media screen and (width<=899px){._dt._dt{padding-top:0}._du{scrollbar-width:none;background:var(--bg,var(--panel));border-bottom:1px solid color-mix(in srgb, var(--border) 65%, transparent);flex-direction:row;gap:.25rem;margin:0 -.85rem .65rem;padding:.35rem .85rem;top:0;overflow-x:auto}._dw{min-height:1.75rem;font-size:.85rem}._dx{margin-left:.25rem}._dy{gap:1rem}._dz{gap:.5rem;padding:.85rem}}._fD{gap:.5rem;padding:.5rem .65rem}._fE{align-items:center;gap:.35rem;display:inline-flex}._fF{min-width:6.5rem;padding:0 1.4rem 0 .5rem;font-size:.78rem}._fG{align-items:center;gap:.5rem;min-width:0;display:flex}._fH{flex-direction:column;gap:.35rem;display:flex}._fI{opacity:.45}._fI:hover,._fI:focus-within{opacity:.8}._fJ{font-size:.85rem;font-weight:600}._fK{border-top:1px solid color-mix(in srgb, var(--border) 65%, transparent);flex-direction:column;gap:.5rem;margin:0;padding:.5rem 0 0;list-style:none;display:flex}._g0{margin-left:auto}._g1{gap:.5rem}._g2{align-items:center;gap:.5rem;width:100%;min-width:0;display:flex}._g3{width:1.4rem;color:var(--text);flex-shrink:0}._g4{align-items:center;gap:.25rem;min-width:0;display:inline-flex}._g5{color:var(--lightningcss-light,#1a7f37)var(--lightningcss-dark,#57d364)}._g6{color:var(--lightningcss-light,#8a5a00)var(--lightningcss-dark,#f0b84a)}._g7{color:var(--text);font-weight:600}._g8{border-radius:var(--radius);background:color-mix(in srgb, var(--accent) 10%, transparent);color:var(--text);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-left:1.9rem;padding:.5rem .65rem;font-size:.85rem;display:flex}._g9{flex-wrap:wrap;gap:.25rem;min-width:0;display:inline-flex}._g_{letter-spacing:.12em;-webkit-user-select:all;user-select:all;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:1.1rem;font-weight:700}._ha{color:var(--accent-text);font-weight:600}._hb{padding-top:.25rem;padding-bottom:.25rem}._hB{pointer-events:none}._hC{background:color-mix(in srgb, currentColor 6%, transparent);border-radius:4px;width:40%;height:.7rem;display:block}._hc{color:var(--dim)}._hd{flex-shrink:0;font-size:.85rem;font-weight:600}._hc ._hd,._hc ._he{font-weight:500}._hf{color:var(--dim);margin-left:.25rem}._hg{color:var(--dim);border-radius:4px;margin:0 -.35rem;padding:0 .35rem;font-size:.78rem}._hg:hover{color:var(--text);background:color-mix(in srgb, currentColor 6%, transparent)}._hh{color:var(--lightningcss-light,#1a7f37)var(--lightningcss-dark,#57d364);font-size:.78rem;line-height:inherit;border-radius:4px;align-items:center;gap:.15rem;padding:0 .25rem;display:inline-flex}._hh:hover{background:color-mix(in srgb, currentColor 6%, transparent)}._hi{color:var(--accent-text);white-space:nowrap;border-radius:4px;flex-shrink:0;padding:.15rem .35rem;font-size:.78rem;font-weight:500}._hi:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 10%, transparent)}._hi:disabled{opacity:.45}._hj{border-radius:var(--radius);height:1.85rem;color:var(--accent-text);white-space:nowrap;align-items:center;gap:.25rem;padding:0 .35rem;font-size:.78rem;font-weight:500;display:inline-flex}._hj:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 10%, transparent)}._hj:disabled{opacity:.45}._hk{min-width:1.85rem;min-height:1.85rem}._hl{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--dim);margin-left:.35rem;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:.78rem;overflow:hidden}@media screen and (width<=899px){._hg,._hh,._hi{min-height:1.75rem}}._hD{flex-direction:column;display:flex}._hE{align-items:flex-start;gap:.85rem;padding:.65rem .85rem;display:flex}._hE+._hE{border-top:1px solid color-mix(in srgb, var(--border) 65%, transparent)}._hF{flex-direction:column;flex:1;gap:.25rem;min-width:0;display:flex}._hG{font-size:.85rem;font-weight:600}._hH{color:var(--dim);font-size:.78rem;line-height:1.5}._hI{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}._hJ{flex:14rem;align-items:center;min-width:0;display:flex;position:relative}._hK{color:var(--dim);pointer-events:none;position:absolute;left:.5rem}._hL{width:100%;padding-left:calc(.85rem + 14px)}._hM{border-radius:var(--radius);background:color-mix(in srgb, currentColor 6%, transparent);gap:.15rem;padding:.15rem;display:inline-flex}._hO{color:var(--dim);font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;border-radius:4px;align-items:center;gap:.25rem;padding:.25rem .5rem;font-size:.78rem;font-weight:500;display:inline-flex}._hO:hover{color:var(--text)}._hO._hN{background:var(--panel);color:var(--text);box-shadow:0 0 0 1px var(--border)}._hP{color:var(--dim);font-weight:400}._hQ{white-space:nowrap;align-items:center;gap:.25rem;display:inline-flex}._hR{border-bottom:1px solid color-mix(in srgb, var(--border) 65%, transparent);background:color-mix(in srgb, var(--accent) 10%, transparent);align-items:center;gap:.65rem;padding:.5rem .85rem;display:flex}._hS{flex:1;min-width:0;font-size:.85rem}._hT{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"icon body end";gap:.35rem .65rem;padding:.65rem .85rem;display:grid}._hT+._hT{border-top:1px solid color-mix(in srgb, var(--border) 65%, transparent)}._hV{border-radius:var(--radius);background:color-mix(in srgb, currentColor 6%, transparent);grid-area:icon;place-items:center;width:2.25rem;height:2.25rem;display:grid}._hU ._hV{opacity:.45}._hW{flex-direction:column;grid-area:body;gap:.15rem;min-width:0;display:flex}._hX{flex-wrap:wrap;align-items:baseline;column-gap:.35rem;display:flex}._hY{font-size:.85rem;font-weight:600}._hZ{color:var(--dim);font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem}._h0{color:var(--dim);overflow-wrap:anywhere;font-size:.78rem}._h1{color:inherit;text-decoration:none}._h1:hover{color:var(--accent-text);text-decoration:underline}._h2{color:var(--dim);flex-wrap:wrap;align-items:center;gap:.15rem .35rem;margin-top:.15rem;font-size:.78rem;display:flex}._h3{font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}._h4{color:var(--lightningcss-light,#1a7f37)var(--lightningcss-dark,#57d364);align-items:center;gap:.25rem;display:inline-flex}._h5{background:currentColor}._h6{background:color-mix(in srgb, var(--accent) 10%, transparent);color:var(--accent-text);border-radius:4px;padding:0 .25rem;font-weight:500}._h7{flex-direction:column;grid-area:end;justify-content:space-between;align-items:flex-end;gap:.5rem;display:flex}._h8{align-items:center;gap:.35rem;display:flex}._h9{max-width:18rem;color:var(--dim);white-space:nowrap;text-overflow:ellipsis;align-items:center;gap:.35rem;font-size:.78rem;display:inline-flex;overflow:hidden}._h_{color:var(--dim);text-align:center;padding:1rem .85rem;font-size:.85rem}@media screen and (width<=899px){._hO{min-height:1.75rem}._hT{grid-template-columns:auto minmax(0,1fr);grid-template-areas:"icon body""end end"}._h7{flex-direction:row-reverse;justify-content:space-between;align-items:center}}._k1{width:min(30rem,100vw - 1.5rem)}._k2{flex-direction:column;gap:.65rem;display:flex}._k3{flex-direction:column;gap:.25rem;font-size:.85rem;font-weight:500;display:flex}._k4{color:var(--dim);font-size:.78rem;font-weight:400}._k5{color:var(--danger);margin:0;font-size:.85rem}._fN{border-radius:var(--radius);min-width:4.5rem;min-height:1.85rem;box-shadow:inset 0 0 0 1px var(--border);color:var(--text);text-align:center;cursor:pointer;flex-shrink:0;padding:0 .35rem;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem}._fN:hover{box-shadow:inset 0 0 0 1px var(--dim)}._fN._fM{background:color-mix(in srgb, var(--accent) 10%, transparent);box-shadow:inset 0 0 0 1px var(--accent);font-family:inherit}._fO{color:var(--dim);font-family:inherit}._fP{color:var(--lightningcss-light,#bf8700)var(--lightningcss-dark,#d4a72c);font-weight:500}@media screen and (width<=899px){._fL{display:none}}._k6{border-top:1px solid color-mix(in srgb, var(--border) 65%, transparent);align-items:flex-start;gap:1rem;padding:.65rem;display:flex}._k7{border-radius:calc(var(--radius) + 4px);box-shadow:inset 0 0 0 1px var(--border);background:var(--panel);flex-shrink:0;grid-template-columns:repeat(3,3rem);align-self:flex-start;gap:.25rem;padding:.35rem;display:grid}._k8{letter-spacing:-.03em;border-radius:var(--radius);background:color-mix(in srgb, currentColor 6%, transparent);white-space:nowrap;text-overflow:ellipsis;justify-content:center;align-items:center;min-width:0;height:3rem;padding:0;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;font-weight:600;display:inline-flex;overflow:hidden}._k_{color:var(--text);cursor:pointer;position:relative}._k_:hover{background:color-mix(in srgb, currentColor 10%, transparent)}._k_._k9{background:color-mix(in srgb, var(--accent) 10%, transparent);box-shadow:inset 0 0 0 1.5px var(--accent)}._la{background:var(--accent);border-radius:50%;width:5px;height:5px;position:absolute;top:.15rem;right:.15rem}._lb{box-shadow:inset 0 0 0 1px var(--border);color:var(--dim);cursor:pointer;background:0 0}._lb:hover{color:var(--text);box-shadow:inset 0 0 0 1px var(--dim)}._lb._k9{color:var(--accent-text);box-shadow:inset 0 0 0 1.5px var(--accent)}._lc{background:var(--border);grid-column:1/-1;height:1px;margin-block:.15rem}._ld{flex-direction:column;flex:1;gap:.5rem;min-width:0;font-size:.85rem;display:flex}._le{color:var(--dim);font-size:.85rem;line-height:1.5}._lf._lf{vertical-align:-.15em;margin-inline:.1em;display:inline-block}._lg{font-weight:600}._lh{flex-wrap:wrap;align-items:center;gap:.25rem;min-width:0;display:flex}._lj{border-radius:var(--radius);min-width:2.15rem;height:2.15rem;box-shadow:inset 0 0 0 1px var(--border);color:var(--text);cursor:pointer;padding:0 .35rem;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85rem}._lj:hover{box-shadow:inset 0 0 0 1px var(--dim)}._lj._li{background:color-mix(in srgb, var(--accent) 10%, transparent);color:var(--accent-text);box-shadow:inset 0 0 0 1.5px var(--accent)}._lk{grid-template-columns:4.5rem minmax(0,1fr);align-items:center;gap:.35rem .5rem;display:grid}._ll{color:var(--dim);font-size:.78rem}._lm{box-sizing:border-box;width:12rem;max-width:100%;height:2.15rem;font-size:.85rem}._ln{text-align:center;width:2.6rem;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}._lo{width:7rem;font-family:JetBrains Mono,Berkeley Mono,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}._lp{color:var(--dim);align-items:center;gap:.25rem;display:inline-flex}._lq{color:var(--dim);font-size:.78rem}._lr{color:var(--lightningcss-light,#bf8700)var(--lightningcss-dark,#d4a72c);font-size:.78rem}._ls{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:.35rem;display:flex}@media screen and (width<=899px){._k6{flex-direction:column;align-items:stretch;gap:.65rem}._k7{align-self:center}._lj{min-width:1.75rem;height:1.75rem}._lk{grid-template-columns:minmax(0,1fr)}._lm{width:100%;height:2.85rem;font-size:1rem}._ln{width:1.75rem;height:1.75rem}}._eZ{flex-wrap:wrap;align-items:center;gap:.35rem .85rem;display:flex}._e0{color:var(--dim);align-items:center;gap:.35rem;font-size:.85rem;display:inline-flex}@media screen and (width<=899px){._eZ{flex-direction:column;align-items:stretch}._e0{justify-content:space-between}}._eE{flex-direction:column;align-items:stretch;gap:.65rem;display:flex}._eF{grid-template-columns:5.5rem minmax(0,1fr);align-items:center;column-gap:.85rem;display:grid}._eG{font-size:.85rem;font-weight:400}._eH{box-sizing:border-box;width:18rem;max-width:100%;height:2.15rem;font-size:.85rem}._eJ{justify-self:start;min-width:0}._eK{display:none}._eM{border-bottom:1px solid color-mix(in srgb, var(--border) 65%, transparent);align-items:center;gap:.65rem;padding-bottom:.65rem;display:flex}._eN{border-radius:8px;flex-shrink:0;width:32px;height:32px}._eO{flex-direction:column;gap:.15rem;min-width:0;display:flex}._eP{letter-spacing:-.01em;text-overflow:ellipsis;white-space:nowrap;font-size:1rem;font-weight:700;overflow:hidden}._eQ{color:var(--dim);font-size:.78rem}._eR{gap:.25rem}._eS{justify-self:start;align-items:center;gap:.35rem;display:inline-flex}._eT{background:var(--swatch);width:1.5rem;height:1.5rem;color:var(--swatch-ink,#fff);cursor:pointer;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:transform .12s;display:inline-flex;position:relative;box-shadow:inset 0 0 0 1px #00000026}._eT:hover{transform:scale(1.1)}._eU{box-shadow:inset 0 0 0 2px var(--swatch,var(--accent)), inset 0 0 0 4px var(--panel)}._eV{filter:drop-shadow(0 1px 1px #00000059)}._eW{--swatch:var(--lightningcss-light,#4f5bd5)var(--lightningcss-dark,#6470e6)}._eX{color:var(--dim);background:var(--swatch,transparent);box-shadow:inset 0 0 0 1px var(--border)}._eX._eU{color:#fff;box-shadow:inset 0 0 0 2px var(--swatch), inset 0 0 0 4px var(--panel)}._eY{opacity:0;cursor:pointer;border:0;width:100%;height:100%;padding:0;position:absolute;inset:0}@media screen and (width<=899px){._eF{grid-template-columns:minmax(0,1fr);row-gap:.35rem}._eH{width:100%;height:2.85rem;font-size:1rem}._eI{display:none}._eJ{justify-self:stretch}._eK{width:100%;display:inline-flex}._eL{width:100%;min-height:2.85rem;font-size:1rem}._eS{flex-wrap:wrap;justify-self:stretch;gap:.35rem}._eT{width:2.35rem;height:2.35rem}}._fQ{flex-wrap:wrap;align-items:center;gap:.35rem;font-size:.85rem;display:flex}._fR{color:var(--dim)}._fS{flex-direction:column;gap:.35rem;font-size:.85rem;display:flex}._fT{align-items:center;gap:.5rem;display:flex}@media screen and (width<=899px){._fT{flex-direction:row-reverse;justify-content:space-between}}._gB{align-items:center;gap:.5rem;width:100%;min-width:0;display:flex}._gC{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;overflow:hidden}._gD{border-top:1px solid color-mix(in srgb, var(--border) 65%, transparent);flex-direction:column;gap:.5rem;min-width:0;padding-top:.5rem;display:flex}._gE{color:var(--dim);margin:0;font-size:.85rem}._gF{flex-direction:column;gap:.35rem;min-width:0;margin:0;padding:0;list-style:none;display:flex}._gG{flex-direction:column;gap:.25rem;display:flex}._gH{border-left:1px solid color-mix(in srgb, var(--border) 65%, transparent);flex-direction:column;gap:.25rem;padding-left:.5rem;display:flex}._gI{flex-wrap:wrap;align-items:center;gap:.35rem;font-size:.85rem;display:flex}._gJ{color:var(--dim);flex-direction:column;gap:.15rem;margin:0;padding:0;font-size:.78rem;list-style:none;display:flex}._gK{align-items:center;gap:.35rem;min-width:0;display:flex}._gL{flex-wrap:wrap;align-items:center;gap:.35rem;padding-top:.25rem;display:flex}._gM{gap:.25rem}._gN{border-radius:var(--radius);cursor:pointer;align-items:center;gap:.5rem;min-width:0;padding:.35rem .5rem;display:flex}._gN:hover{background:color-mix(in srgb, currentColor 6%, transparent)}._gO{accent-color:var(--accent);flex-shrink:0;margin:0}._gP{color:var(--dim);cursor:default}._gP:hover{background:0 0}._gQ{flex-direction:column;gap:.25rem;min-width:0;display:flex}._gR{color:var(--dim);font-size:.78rem}._gS{border-left:1px solid color-mix(in srgb, var(--border) 65%, transparent);margin-left:.65rem;padding-left:.25rem}._gT{overflow-wrap:anywhere;flex:1;min-width:0;font-size:.85rem}@media screen and (width<=899px){._gN{padding:.5rem}}
@@ -0,0 +1 @@
1
+ import"./_C2p1Z5Lf.js";import"./_CE2GEqMx.js";import{tt as e}from"./_BGCK5I_O.js";e();
@@ -0,0 +1 @@
1
+ import"./_C2p1Z5Lf.js";import"./_CE2GEqMx.js";import{tt as e}from"./_BGCK5I_O.js";e();
@@ -0,0 +1 @@
1
+ import"./_C2p1Z5Lf.js";import"./_CE2GEqMx.js";import{tt as e}from"./_BGCK5I_O.js";e();
@@ -0,0 +1 @@
1
+ import"./_C2p1Z5Lf.js";import"./_CE2GEqMx.js";import{tt as e}from"./_BGCK5I_O.js";e();
@@ -85,16 +85,16 @@ function commentBlock(c, n, repos) {
85
85
  }
86
86
 
87
87
  /** The folder a comment's `worktree` names: a section id (`repo@topic`,
88
- * `repo#12`) is a view of the folder, and older rows stored the id.
88
+ * `repo#12`) is a view of the folder, and a row may hold the id.
89
89
  * @param {string} worktree */
90
90
  function folderOf(worktree) {
91
91
  return worktree.split(/[@#]/)[0];
92
92
  }
93
93
 
94
- /** The section a comment was made in: an older row names it outright; a
95
- * newer one by the head it was made at — the first section at that head,
96
- * so a lane still level with the checkout reads as the checkout, which it
97
- * is.
94
+ /** The section a comment was made in: a row holding a section id names it
95
+ * outright; one holding the folder, by the head it was made at — the first
96
+ * section at that head, so a lane still level with the checkout reads as
97
+ * the checkout, which it is.
98
98
  * @param {Comment} c
99
99
  * @param {Repo[] | null | undefined} repos */
100
100
  function sectionOf(c, repos) {
@@ -0,0 +1,10 @@
1
+ export const BASELINE: number;
2
+ export function bridgeSpec(): string;
3
+ export function bridgeCommands(dataDir: string): string[];
4
+ export function needsBridge(file: string): boolean;
5
+ export function bridgeIfNeeded(
6
+ dataDir: string,
7
+ env: Record<string, string | undefined>,
8
+ log?: (line: string) => void,
9
+ ): boolean;
10
+ export function bridgeForServer(dataDir: string): boolean;
@@ -0,0 +1,84 @@
1
+ // The one step between a 0.0.x database and this release: 0.0.223's
2
+ // `work migrate` runs the sweeps that 0.0.x kept for its own upgrades and
3
+ // stamps schema version 1, the baseline src/server/migrations.ts starts
4
+ // from. `work setup` runs it before touching the service, and the server
5
+ // runs it itself when it opens a database that has not had it (installed
6
+ // without setup, or restarted before setup ran), naming the same commands
7
+ // only if it fails. Everything about crossing into 0.1 is here, so it goes
8
+ // whole once no install is left on 0.0.x. Plain node, no dependencies.
9
+ import { spawnSync } from "node:child_process";
10
+ import fs from "node:fs";
11
+ import { createRequire } from "node:module";
12
+ import path from "node:path";
13
+
14
+ /** The schema version 0.0.223 stamps: step 1 in src/server/migrations.ts. */
15
+ export const BASELINE = 1;
16
+
17
+ /** The release that brings a database to the baseline. WORK_BRIDGE_SPEC
18
+ * names another (an `npm pack` tarball of it) to try the bridge before it
19
+ * is published. */
20
+ export function bridgeSpec() {
21
+ return process.env.WORK_BRIDGE_SPEC || "@dylanpiercey/work@0.0.223";
22
+ }
23
+
24
+ /** What to run by hand for the database in `dataDir`: its data dir named
25
+ * outright, since the shell running it may not have the service's. */
26
+ export function bridgeCommands(dataDir) {
27
+ const quoted = /^[\w@%+=:,./-]+$/.test(dataDir)
28
+ ? dataDir
29
+ : `'${dataDir.replace(/'/g, `'\\''`)}'`;
30
+ return [
31
+ `WORK_DATA_DIR=${quoted} npx -y -p ${bridgeSpec()} work migrate`,
32
+ "work setup",
33
+ ];
34
+ }
35
+
36
+ /** Whether the database at `file` predates the baseline: it has tables and
37
+ * no version. A missing or empty one is simply new. node:sqlite is loaded
38
+ * here, not at the top: it warns on load under older node, and every other
39
+ * CLI command would say so. */
40
+ export function needsBridge(file) {
41
+ if (!fs.existsSync(file)) return false;
42
+ const { DatabaseSync } = createRequire(import.meta.url)("node:sqlite");
43
+ const db = new DatabaseSync(file, { readOnly: true });
44
+ try {
45
+ const { user_version } = db.prepare("PRAGMA user_version").get();
46
+ const tables = db
47
+ .prepare("SELECT 1 FROM sqlite_master WHERE type = 'table'")
48
+ .get();
49
+ return user_version < BASELINE && !!tables;
50
+ } finally {
51
+ db.close();
52
+ }
53
+ }
54
+
55
+ /** Bring the database in `dataDir` to the baseline when it predates it,
56
+ * with `env` (the service's) so the sweeps see the same data dir and
57
+ * workspaces root the server does. True when it is there (or never needed
58
+ * to be). The package's install scripts are skipped: `migrate` needs none,
59
+ * and a native build that fails would fail the bridge with it. */
60
+ export function bridgeIfNeeded(dataDir, env, log = () => {}) {
61
+ const file = path.join(dataDir, "work.db");
62
+ if (!needsBridge(file)) return true;
63
+ log(
64
+ `${file} predates 0.1: bringing it forward once with ${bridgeSpec()} (a one-time download)`,
65
+ );
66
+ // The npx beside this node, whatever PATH the service carries.
67
+ const sibling = path.join(path.dirname(process.execPath), "npx");
68
+ const npx = fs.existsSync(sibling) ? sibling : "npx";
69
+ // The package named, then its command: npx runs a spec that is a path
70
+ // (a tarball) as a program otherwise.
71
+ spawnSync(npx, ["-y", "-p", bridgeSpec(), "work", "migrate"], {
72
+ stdio: "inherit",
73
+ env: { ...env, WORK_DATA_DIR: dataDir, npm_config_ignore_scripts: "true" },
74
+ });
75
+ return !needsBridge(file);
76
+ }
77
+
78
+ /** The server's bridge, for db.ts to hand the migrations: with the server's
79
+ * own environment, before the database is opened, once per start. */
80
+ export function bridgeForServer(dataDir) {
81
+ return bridgeIfNeeded(dataDir, process.env, (line) =>
82
+ console.log(`[work] ${line}`),
83
+ );
84
+ }
@@ -1,3 +1,4 @@
1
+ import type { TailscaleProbe } from "./tailscale.mjs";
1
2
  export interface DoctorTool {
2
3
  id: string;
3
4
  label: string;
@@ -45,6 +46,10 @@ export interface Doctor {
45
46
  github: GithubHostStatus[];
46
47
  /** Whether the server can keep this Linux host awake; null elsewhere. */
47
48
  awake: boolean | null;
49
+ /** git credential helpers that run a gh which is gone (config keys). */
50
+ staleGhHelpers: string[];
51
+ /** Tailscale, optional: how work is reached from other devices. */
52
+ tailscale: TailscaleProbe;
48
53
  }
49
54
  export function setupPath(base?: string): string;
50
55
  export function which(bin: string): string | null;
@@ -55,6 +60,17 @@ export function miseInstalls(): Promise<Record<
55
60
  { version: string; pin?: string }
56
61
  > | null>;
57
62
  export function ghKnownHosts(): string[];
63
+ export const VERSIONED_PATH: RegExp;
64
+ export function stableGh(): string | null;
65
+ export function staleGhHelpers(): Promise<string[]>;
58
66
  export function discoverAgents(fresh?: boolean): DoctorAgent[];
59
- export function doctor(opts?: { hosts?: string[] }): Promise<Doctor>;
67
+ export function tailscaleProbe(opts?: {
68
+ port?: string;
69
+ allowedHosts?: string;
70
+ }): Promise<TailscaleProbe>;
71
+ export function doctor(opts?: {
72
+ hosts?: string[];
73
+ port?: string;
74
+ allowedHosts?: string;
75
+ }): Promise<Doctor>;
60
76
  export function formatDoctor(d: Doctor): string;
@@ -6,6 +6,7 @@ import fs from "node:fs";
6
6
  import os from "node:os";
7
7
  import path from "node:path";
8
8
  import { AGENTS, DEFAULT_GITHUB_HOST, TOOLS } from "./catalog.mjs";
9
+ import { readTailscale, tailscaleLine } from "./tailscale.mjs";
9
10
 
10
11
  const home = os.homedir();
11
12
 
@@ -135,6 +136,43 @@ async function readMiseInstalls() {
135
136
  return out;
136
137
  }
137
138
 
139
+ /** A path owned by one release of a version manager — mise/asdf
140
+ * `installs`, homebrew's `Cellar`, nvm's `versions` — which that tool
141
+ * deletes on its next update. */
142
+ export const VERSIONED_PATH = /\/(installs|Cellar|versions|toolchains)\//;
143
+
144
+ /** The gh for git to run as a credential helper: the launcher on PATH
145
+ * (mise's shim, /usr/bin/gh), when it is not itself one release's. Still an
146
+ * absolute path, so it works for GUI clients and cron jobs that never
147
+ * sourced a shell profile, but one that follows upgrades. */
148
+ export function stableGh() {
149
+ const gh = which("gh");
150
+ return gh && !VERSIONED_PATH.test(gh) ? gh : null;
151
+ }
152
+
153
+ /** Credential helpers in ~/.gitconfig that run a gh which is gone, by
154
+ * config key. `gh auth setup-git` writes the absolute path of the gh that
155
+ * ran it, and git runs that string literally: once a version manager's
156
+ * upgrade deletes it, every https push fails with "could not read
157
+ * Username" while `gh` itself still works. Listed only when there is a
158
+ * stable gh to point them at, which `work setup` does. */
159
+ export async function staleGhHelpers() {
160
+ if (!stableGh()) return [];
161
+ const { stdout } = await run("git", [
162
+ "config",
163
+ "--global",
164
+ "--get-regexp",
165
+ String.raw`^credential\..*\.helper$`,
166
+ ]);
167
+ const keys = new Set();
168
+ for (const line of stdout.split("\n")) {
169
+ const sp = line.indexOf(" ");
170
+ const bin = /^!(\S+) auth git-credential$/.exec(line.slice(sp + 1))?.[1];
171
+ if (sp > 0 && bin && !fs.existsSync(bin)) keys.add(line.slice(0, sp));
172
+ }
173
+ return [...keys];
174
+ }
175
+
138
176
  /** Hosts `gh` knows about (~/.config/gh/hosts.yml top-level keys) — the
139
177
  * source of truth for "which GitHub hosts has this machine signed in to",
140
178
  * merged with whatever the caller has configured. */
@@ -326,11 +364,49 @@ async function ghExtensions() {
326
364
  return out;
327
365
  }
328
366
 
367
+ function parseJson(text) {
368
+ try {
369
+ return JSON.parse(text);
370
+ } catch {
371
+ return null;
372
+ }
373
+ }
374
+
375
+ /** Tailscale here and what its serve config does with work's port
376
+ * (lib/setup/tailscale.mjs), from read-only commands. `port` and
377
+ * `allowedHosts` default to this process's own, which are the server's
378
+ * when the server asks. */
379
+ export async function tailscaleProbe({ port, allowedHosts } = {}) {
380
+ const bin = which("tailscale");
381
+ if (!bin) return { installed: false };
382
+ // Without peers: a large tailnet's full status is megabytes, and only
383
+ // this node is read.
384
+ const [version, status, serve] = await Promise.all([
385
+ run(bin, ["version"], { timeout: 5000 }),
386
+ run(bin, ["status", "--json", "--peers=false"], { timeout: 5000 }),
387
+ run(bin, ["serve", "status", "--json"], { timeout: 5000 }),
388
+ ]);
389
+ return readTailscale(
390
+ {
391
+ path: tilde(bin),
392
+ version: version.stdout,
393
+ status: status.ok ? parseJson(status.stdout) : null,
394
+ serve: serve.ok ? parseJson(serve.stdout) : null,
395
+ },
396
+ {
397
+ port: port || process.env.PORT || process.env.WORK_APP_PORT || "7171",
398
+ allowedHosts: allowedHosts ?? process.env.WORK_ALLOWED_HOSTS,
399
+ },
400
+ );
401
+ }
402
+
329
403
  /**
330
404
  * Full readiness snapshot.
331
405
  *
332
- * @param {{ hosts?: string[] }} [opts] configured GitHub hosts (settings);
333
- * github.com and any host gh is already signed in to are always included.
406
+ * @param {{ hosts?: string[], port?: string, allowedHosts?: string }} [opts]
407
+ * configured GitHub hosts (settings); github.com and any host gh is
408
+ * already signed in to are always included. `port` and `allowedHosts`
409
+ * are the service's, for the Tailscale probe.
334
410
  */
335
411
  export async function doctor(opts = {}) {
336
412
  const hostSet = new Set([
@@ -338,12 +414,15 @@ export async function doctor(opts = {}) {
338
414
  ...(opts.hosts || []),
339
415
  ...ghKnownHosts(),
340
416
  ]);
341
- const [versions, github, awake, extensions] = await Promise.all([
342
- miseVersions(),
343
- Promise.all([...hostSet].map(githubHostStatus)),
344
- canStayAwake(),
345
- ghExtensions(),
346
- ]);
417
+ const [versions, github, awake, extensions, helpers, tailscale] =
418
+ await Promise.all([
419
+ miseVersions(),
420
+ Promise.all([...hostSet].map(githubHostStatus)),
421
+ canStayAwake(),
422
+ ghExtensions(),
423
+ staleGhHelpers(),
424
+ tailscaleProbe(opts),
425
+ ]);
347
426
 
348
427
  const tools = TOOLS.map((t) => {
349
428
  if (t.ghExtension) {
@@ -390,6 +469,8 @@ export async function doctor(opts = {}) {
390
469
  agents,
391
470
  github,
392
471
  awake,
472
+ staleGhHelpers: helpers,
473
+ tailscale,
393
474
  };
394
475
  }
395
476
 
@@ -416,6 +497,9 @@ export function formatDoctor(d) {
416
497
  `${a.label.padEnd(11)}${mark(a.installed)} ${a.installed ? a.instances.map((i) => `${i.command} (${i.path})`).join(", ") : "not installed"}`,
417
498
  );
418
499
  }
500
+ // Optional, so never part of `ready`: it is how work is reached from
501
+ // elsewhere, not what it needs to run.
502
+ lines.push(tailscaleLine(d.tailscale));
419
503
  // Said only when nothing holds the host: not a readiness gate, since
420
504
  // work runs either way, but the one place a headless host would say so.
421
505
  if (d.awake === false) {
@@ -423,6 +507,11 @@ export function formatDoctor(d) {
423
507
  `sleep ✗ nothing keeps this host awake: systemd-inhibit is missing or could not take a lock, so the host can suspend under work. Allow org.freedesktop.login1.inhibit-block-idle (a polkit rule), or keep the host up: sudo systemctl mask sleep.target suspend.target`,
424
508
  );
425
509
  }
510
+ for (const key of d.staleGhHelpers) {
511
+ lines.push(
512
+ `git ✗ ${key} runs a gh that is gone, so https pushes fail: \`work setup\` points it at the gh on PATH`,
513
+ );
514
+ }
426
515
  lines.push("");
427
516
  lines.push(d.ready ? "ready" : `not ready, missing: ${d.missing.join(", ")}`);
428
517
  return lines.join("\n");
@@ -21,3 +21,4 @@ export function installAgent(id: string, opts?: RunOpts): Promise<void>;
21
21
  export function authGithub(host: string, opts?: RunOpts): Promise<string[]>;
22
22
  export function refreshGithub(host: string, opts?: RunOpts): Promise<string[]>;
23
23
  export function logoutGithub(host: string, opts?: RunOpts): Promise<string[]>;
24
+ export function repairGhHelpers(keys: string[], opts?: RunOpts): void;
@@ -7,7 +7,7 @@ import fs from "node:fs";
7
7
  import os from "node:os";
8
8
  import path from "node:path";
9
9
  import { agentById, toolById } from "./catalog.mjs";
10
- import { setupPath, which } from "./doctor.mjs";
10
+ import { setupPath, stableGh, which } from "./doctor.mjs";
11
11
 
12
12
  /**
13
13
  * Run a command, streaming each output line to `log`. stdout/err are
@@ -270,3 +270,23 @@ export async function logoutGithub(host, opts = {}) {
270
270
  env: { GH_PROMPT_DISABLED: "1" },
271
271
  });
272
272
  }
273
+
274
+ /** Point credential helpers that run a gh which is gone (`keys`, from
275
+ * doctor's staleGhHelpers) at the stable one. The value pattern edits only
276
+ * gh's own entry: `gh auth setup-git` writes an empty helper above it to
277
+ * reset any inherited ones, and that must survive. */
278
+ export function repairGhHelpers(keys, { log = () => {} } = {}) {
279
+ const gh = stableGh();
280
+ if (!gh || !keys.length) return;
281
+ for (const key of keys) {
282
+ execFileSync("git", [
283
+ "config",
284
+ "--global",
285
+ "--replace-all",
286
+ key,
287
+ `!${gh} auth git-credential`,
288
+ "auth git-credential",
289
+ ]);
290
+ }
291
+ log(`pointed ${keys.length} git credential helper(s) at ${gh}`);
292
+ }
@@ -1,6 +1,6 @@
1
1
  // Where work listens (WORK_LISTEN) and where this machine reaches it: one
2
- // rule for the CLI (the socket unit, its own requests to the server), the
3
- // server (the hooks it writes for panes and bare caches) and migrate.mjs.
2
+ // rule for the CLI (the socket unit, its own requests to the server) and
3
+ // the server (the hooks it writes for panes and bare caches).
4
4
 
5
5
  /** Addresses that mean every interface. */
6
6
  const EVERY = new Set(["0.0.0.0", "::", "*"]);