9remote 3.0.40 → 3.0.46

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 (292) hide show
  1. package/dist/cli.cjs +6 -6
  2. package/dist/extension/background.js +120 -17
  3. package/dist/extension/manifest.json +2 -2
  4. package/dist/extension/popup.html +7 -0
  5. package/dist/extension/popup.js +6 -0
  6. package/dist/ptyDaemon.cjs +5 -5
  7. package/dist/server.cjs +248 -241
  8. package/dist/ui/assets/index-BefL072o.js +8 -0
  9. package/dist/ui/assets/index-DvsANh5-.css +1 -0
  10. package/dist/ui/index.html +2 -2
  11. package/dist/web/404.html +1 -1
  12. package/dist/web/__next.__PAGE__.txt +2 -2
  13. package/dist/web/__next._full.txt +26 -20
  14. package/dist/web/__next._head.txt +1 -1
  15. package/dist/web/__next._index.txt +12 -7
  16. package/dist/web/__next._tree.txt +2 -2
  17. package/dist/web/_next/static/chunks/1772-2df6c72aa1bdf99d.js +1 -0
  18. package/dist/web/_next/static/chunks/1920-64e4610715fd991d.js +1 -0
  19. package/dist/web/_next/static/chunks/1968-90d80a8543ed4f21.js +32 -0
  20. package/dist/web/_next/static/chunks/556-1dec70a3f28ddbe8.js +1 -0
  21. package/dist/web/_next/static/chunks/5587-b8f18d331fdde617.js +1 -0
  22. package/dist/web/_next/static/chunks/6153.189180c190f90b2f.js +1 -0
  23. package/dist/web/_next/static/chunks/6221-2be9b41ee97fc1e6.js +11 -0
  24. package/dist/web/_next/static/chunks/7489.c1e8656da3738df7.js +1 -0
  25. package/dist/web/_next/static/chunks/8126-c11d39a1ae6ac126.js +1 -0
  26. package/dist/web/_next/static/chunks/820-c1bd7547f2433453.js +1 -0
  27. package/dist/web/_next/static/chunks/8534.189180c190f90b2f.js +1 -0
  28. package/dist/web/_next/static/chunks/9121-cf1e65bb26b0908b.js +1 -0
  29. package/dist/web/_next/static/chunks/{9491-6dc334192080d071.js → 9491-970597f510e71615.js} +1 -1
  30. package/dist/web/_next/static/chunks/app/_global-error/page-e60883b219ccba1a.js +1 -0
  31. package/dist/web/_next/static/chunks/app/_not-found/page-bfa58c699e86fa7c.js +1 -0
  32. package/dist/web/_next/static/chunks/app/admin/access/page-79e70c584b6e2150.js +5 -0
  33. package/dist/web/_next/static/chunks/app/admin/login/page-4a768b6df8ed5259.js +1 -0
  34. package/dist/web/_next/static/chunks/app/admin/ota/page-e4d26a8db9968a98.js +5 -0
  35. package/dist/web/_next/static/chunks/app/admin/page-1c13a4c1567ed18e.js +5 -0
  36. package/dist/web/_next/static/chunks/app/admin/turn/page-dbd8be78d0941005.js +5 -0
  37. package/dist/web/_next/static/chunks/app/download/page-e27de0a4170f4b73.js +1 -0
  38. package/dist/web/_next/static/chunks/app/layout-fc9671123388edff.js +1 -0
  39. package/dist/web/_next/static/chunks/app/login/page-8216ac4904ee3551.js +1 -0
  40. package/dist/web/_next/static/chunks/app/{page-1e67d8a5f3775276.js → page-fde2c88f21078fca.js} +2 -2
  41. package/dist/web/_next/static/chunks/app/workspace/browse/page-e60883b219ccba1a.js +1 -0
  42. package/dist/web/_next/static/chunks/app/workspace/editor/page-e60883b219ccba1a.js +1 -0
  43. package/dist/web/_next/static/chunks/app/workspace/files/page-e60883b219ccba1a.js +1 -0
  44. package/dist/web/_next/static/chunks/app/workspace/git/page-e60883b219ccba1a.js +1 -0
  45. package/dist/web/_next/static/chunks/app/workspace/layout-0d349197dc482ccd.js +23 -0
  46. package/dist/web/_next/static/chunks/app/workspace/mobile/page-e60883b219ccba1a.js +1 -0
  47. package/dist/web/_next/static/chunks/app/workspace/page-e60883b219ccba1a.js +1 -0
  48. package/dist/web/_next/static/chunks/app/workspace/pair/page-e60883b219ccba1a.js +1 -0
  49. package/dist/web/_next/static/chunks/app/workspace/remote/page-e60883b219ccba1a.js +1 -0
  50. package/dist/web/_next/static/chunks/app/workspace/settings/page-e60883b219ccba1a.js +1 -0
  51. package/dist/web/_next/static/chunks/app/workspace/terminal/[sessionId]/page-e60883b219ccba1a.js +1 -0
  52. package/dist/web/_next/static/chunks/app/workspace/welcome/page-e60883b219ccba1a.js +1 -0
  53. package/dist/web/_next/static/chunks/app/workspace/workspaces/page-e60883b219ccba1a.js +1 -0
  54. package/dist/web/_next/static/chunks/main-72206f0a3cb91ecb.js +5 -0
  55. package/dist/web/_next/static/chunks/next/dist/client/components/builtin/app-error-e60883b219ccba1a.js +1 -0
  56. package/dist/web/_next/static/chunks/next/dist/client/components/builtin/forbidden-e60883b219ccba1a.js +1 -0
  57. package/dist/web/_next/static/chunks/next/dist/client/components/builtin/not-found-e60883b219ccba1a.js +1 -0
  58. package/dist/web/_next/static/chunks/next/dist/client/components/builtin/unauthorized-e60883b219ccba1a.js +1 -0
  59. package/dist/web/_next/static/chunks/{webpack-dd1f7a5ae02e5d84.js → webpack-31691f9bc04b8076.js} +1 -1
  60. package/dist/web/_next/static/css/{adc0ee53b89bee3c.css → 4da4daf9f2bf1755.css} +1 -1
  61. package/dist/web/_next/static/css/577dbf61f141a630.css +1 -0
  62. package/dist/web/_next/static/{55Oo1FQxj9HIxB7QE1XWG → u29HK3zWfDC3mM40skU_h}/_buildManifest.js +1 -1
  63. package/dist/web/_not-found/__next._full.txt +20 -18
  64. package/dist/web/_not-found/__next._head.txt +1 -1
  65. package/dist/web/_not-found/__next._index.txt +7 -7
  66. package/dist/web/_not-found/__next._not-found.__PAGE__.txt +1 -1
  67. package/dist/web/_not-found/__next._not-found.txt +1 -1
  68. package/dist/web/_not-found/__next._tree.txt +2 -2
  69. package/dist/web/_not-found.html +1 -1
  70. package/dist/web/_not-found.txt +20 -18
  71. package/dist/web/admin/__next._full.txt +29 -22
  72. package/dist/web/admin/__next._head.txt +1 -1
  73. package/dist/web/admin/__next._index.txt +12 -7
  74. package/dist/web/admin/__next._tree.txt +2 -2
  75. package/dist/web/admin/__next.admin.__PAGE__.txt +2 -2
  76. package/dist/web/admin/__next.admin.txt +1 -1
  77. package/dist/web/admin/access/__next._full.txt +30 -22
  78. package/dist/web/admin/access/__next._head.txt +1 -1
  79. package/dist/web/admin/access/__next._index.txt +12 -7
  80. package/dist/web/admin/access/__next._tree.txt +2 -2
  81. package/dist/web/admin/access/__next.admin.access.__PAGE__.txt +2 -2
  82. package/dist/web/admin/access/__next.admin.access.txt +1 -1
  83. package/dist/web/admin/access/__next.admin.txt +1 -1
  84. package/dist/web/admin/access.html +1 -1
  85. package/dist/web/admin/access.txt +30 -22
  86. package/dist/web/admin/login/__next._full.txt +30 -22
  87. package/dist/web/admin/login/__next._head.txt +1 -1
  88. package/dist/web/admin/login/__next._index.txt +12 -7
  89. package/dist/web/admin/login/__next._tree.txt +2 -2
  90. package/dist/web/admin/login/__next.admin.login.__PAGE__.txt +2 -2
  91. package/dist/web/admin/login/__next.admin.login.txt +1 -1
  92. package/dist/web/admin/login/__next.admin.txt +1 -1
  93. package/dist/web/admin/login.html +1 -1
  94. package/dist/web/admin/login.txt +30 -22
  95. package/dist/web/admin/ota/__next._full.txt +30 -22
  96. package/dist/web/admin/ota/__next._head.txt +1 -1
  97. package/dist/web/admin/ota/__next._index.txt +12 -7
  98. package/dist/web/admin/ota/__next._tree.txt +2 -2
  99. package/dist/web/admin/ota/__next.admin.ota.__PAGE__.txt +2 -2
  100. package/dist/web/admin/ota/__next.admin.ota.txt +1 -1
  101. package/dist/web/admin/ota/__next.admin.txt +1 -1
  102. package/dist/web/admin/ota.html +1 -1
  103. package/dist/web/admin/ota.txt +30 -22
  104. package/dist/web/admin/turn/__next._full.txt +30 -22
  105. package/dist/web/admin/turn/__next._head.txt +1 -1
  106. package/dist/web/admin/turn/__next._index.txt +12 -7
  107. package/dist/web/admin/turn/__next._tree.txt +2 -2
  108. package/dist/web/admin/turn/__next.admin.turn.__PAGE__.txt +2 -2
  109. package/dist/web/admin/turn/__next.admin.turn.txt +1 -1
  110. package/dist/web/admin/turn/__next.admin.txt +1 -1
  111. package/dist/web/admin/turn.html +1 -1
  112. package/dist/web/admin/turn.txt +30 -22
  113. package/dist/web/admin.html +1 -1
  114. package/dist/web/admin.txt +29 -22
  115. package/dist/web/download/__next._full.txt +26 -19
  116. package/dist/web/download/__next._head.txt +1 -1
  117. package/dist/web/download/__next._index.txt +12 -7
  118. package/dist/web/download/__next._tree.txt +2 -2
  119. package/dist/web/download/__next.download.__PAGE__.txt +2 -2
  120. package/dist/web/download/__next.download.txt +1 -1
  121. package/dist/web/download.html +1 -1
  122. package/dist/web/download.txt +26 -19
  123. package/dist/web/index.html +1 -1
  124. package/dist/web/index.txt +26 -20
  125. package/dist/web/login/__next._full.txt +29 -22
  126. package/dist/web/login/__next._head.txt +1 -1
  127. package/dist/web/login/__next._index.txt +12 -7
  128. package/dist/web/login/__next._tree.txt +2 -2
  129. package/dist/web/login/__next.login.__PAGE__.txt +2 -2
  130. package/dist/web/login/__next.login.txt +1 -1
  131. package/dist/web/login.html +1 -1
  132. package/dist/web/login.txt +29 -22
  133. package/dist/web/workspace/__next._full.txt +27 -20
  134. package/dist/web/workspace/__next._head.txt +1 -1
  135. package/dist/web/workspace/__next._index.txt +12 -7
  136. package/dist/web/workspace/__next._tree.txt +3 -3
  137. package/dist/web/workspace/__next.workspace.__PAGE__.txt +1 -1
  138. package/dist/web/workspace/__next.workspace.txt +3 -3
  139. package/dist/web/workspace/browse/__next._full.txt +30 -22
  140. package/dist/web/workspace/browse/__next._head.txt +1 -1
  141. package/dist/web/workspace/browse/__next._index.txt +12 -7
  142. package/dist/web/workspace/browse/__next._tree.txt +3 -3
  143. package/dist/web/workspace/browse/__next.workspace.browse.__PAGE__.txt +1 -1
  144. package/dist/web/workspace/browse/__next.workspace.browse.txt +1 -1
  145. package/dist/web/workspace/browse/__next.workspace.txt +3 -3
  146. package/dist/web/workspace/browse.html +1 -1
  147. package/dist/web/workspace/browse.txt +30 -22
  148. package/dist/web/workspace/editor/__next._full.txt +30 -22
  149. package/dist/web/workspace/editor/__next._head.txt +1 -1
  150. package/dist/web/workspace/editor/__next._index.txt +12 -7
  151. package/dist/web/workspace/editor/__next._tree.txt +3 -3
  152. package/dist/web/workspace/editor/__next.workspace.editor.__PAGE__.txt +1 -1
  153. package/dist/web/workspace/editor/__next.workspace.editor.txt +1 -1
  154. package/dist/web/workspace/editor/__next.workspace.txt +3 -3
  155. package/dist/web/workspace/editor.html +1 -1
  156. package/dist/web/workspace/editor.txt +30 -22
  157. package/dist/web/workspace/files/__next._full.txt +30 -22
  158. package/dist/web/workspace/files/__next._head.txt +1 -1
  159. package/dist/web/workspace/files/__next._index.txt +12 -7
  160. package/dist/web/workspace/files/__next._tree.txt +3 -3
  161. package/dist/web/workspace/files/__next.workspace.files.__PAGE__.txt +1 -1
  162. package/dist/web/workspace/files/__next.workspace.files.txt +1 -1
  163. package/dist/web/workspace/files/__next.workspace.txt +3 -3
  164. package/dist/web/workspace/files.html +1 -1
  165. package/dist/web/workspace/files.txt +30 -22
  166. package/dist/web/workspace/git/__next._full.txt +30 -22
  167. package/dist/web/workspace/git/__next._head.txt +1 -1
  168. package/dist/web/workspace/git/__next._index.txt +12 -7
  169. package/dist/web/workspace/git/__next._tree.txt +3 -3
  170. package/dist/web/workspace/git/__next.workspace.git.__PAGE__.txt +1 -1
  171. package/dist/web/workspace/git/__next.workspace.git.txt +1 -1
  172. package/dist/web/workspace/git/__next.workspace.txt +3 -3
  173. package/dist/web/workspace/git.html +1 -1
  174. package/dist/web/workspace/git.txt +30 -22
  175. package/dist/web/workspace/mobile/__next._full.txt +30 -22
  176. package/dist/web/workspace/mobile/__next._head.txt +1 -1
  177. package/dist/web/workspace/mobile/__next._index.txt +12 -7
  178. package/dist/web/workspace/mobile/__next._tree.txt +3 -3
  179. package/dist/web/workspace/mobile/__next.workspace.mobile.__PAGE__.txt +1 -1
  180. package/dist/web/workspace/mobile/__next.workspace.mobile.txt +1 -1
  181. package/dist/web/workspace/mobile/__next.workspace.txt +3 -3
  182. package/dist/web/workspace/mobile.html +1 -1
  183. package/dist/web/workspace/mobile.txt +30 -22
  184. package/dist/web/workspace/pair/__next._full.txt +30 -22
  185. package/dist/web/workspace/pair/__next._head.txt +1 -1
  186. package/dist/web/workspace/pair/__next._index.txt +12 -7
  187. package/dist/web/workspace/pair/__next._tree.txt +3 -3
  188. package/dist/web/workspace/pair/__next.workspace.pair.__PAGE__.txt +1 -1
  189. package/dist/web/workspace/pair/__next.workspace.pair.txt +1 -1
  190. package/dist/web/workspace/pair/__next.workspace.txt +3 -3
  191. package/dist/web/workspace/pair.html +1 -1
  192. package/dist/web/workspace/pair.txt +30 -22
  193. package/dist/web/workspace/remote/__next._full.txt +30 -22
  194. package/dist/web/workspace/remote/__next._head.txt +1 -1
  195. package/dist/web/workspace/remote/__next._index.txt +12 -7
  196. package/dist/web/workspace/remote/__next._tree.txt +3 -3
  197. package/dist/web/workspace/remote/__next.workspace.remote.__PAGE__.txt +1 -1
  198. package/dist/web/workspace/remote/__next.workspace.remote.txt +1 -1
  199. package/dist/web/workspace/remote/__next.workspace.txt +3 -3
  200. package/dist/web/workspace/remote.html +1 -1
  201. package/dist/web/workspace/remote.txt +30 -22
  202. package/dist/web/workspace/settings/__next._full.txt +37 -0
  203. package/dist/web/{dev/question → workspace/settings}/__next._head.txt +1 -1
  204. package/dist/web/workspace/settings/__next._index.txt +17 -0
  205. package/dist/web/{dev/question → workspace/settings}/__next._tree.txt +3 -2
  206. package/dist/web/workspace/settings/__next.workspace.settings.__PAGE__.txt +5 -0
  207. package/dist/web/{dev/question/__next.dev.question.txt → workspace/settings/__next.workspace.settings.txt} +1 -1
  208. package/dist/web/workspace/settings/__next.workspace.txt +8 -0
  209. package/dist/web/workspace/settings.html +1 -0
  210. package/dist/web/workspace/settings.txt +37 -0
  211. package/dist/web/workspace/terminal/default/__next._full.txt +30 -24
  212. package/dist/web/workspace/terminal/default/__next._head.txt +1 -1
  213. package/dist/web/workspace/terminal/default/__next._index.txt +12 -7
  214. package/dist/web/workspace/terminal/default/__next._tree.txt +3 -3
  215. package/dist/web/workspace/terminal/default/__next.workspace.terminal.$d$sessionId.__PAGE__.txt +1 -1
  216. package/dist/web/workspace/terminal/default/__next.workspace.terminal.$d$sessionId.txt +1 -1
  217. package/dist/web/workspace/terminal/default/__next.workspace.terminal.txt +1 -1
  218. package/dist/web/workspace/terminal/default/__next.workspace.txt +3 -3
  219. package/dist/web/workspace/terminal/default.html +1 -1
  220. package/dist/web/workspace/terminal/default.txt +30 -24
  221. package/dist/web/workspace/welcome/__next._full.txt +30 -22
  222. package/dist/web/workspace/welcome/__next._head.txt +1 -1
  223. package/dist/web/workspace/welcome/__next._index.txt +12 -7
  224. package/dist/web/workspace/welcome/__next._tree.txt +3 -3
  225. package/dist/web/workspace/welcome/__next.workspace.txt +3 -3
  226. package/dist/web/workspace/welcome/__next.workspace.welcome.__PAGE__.txt +1 -1
  227. package/dist/web/workspace/welcome/__next.workspace.welcome.txt +1 -1
  228. package/dist/web/workspace/welcome.html +1 -1
  229. package/dist/web/workspace/welcome.txt +30 -22
  230. package/dist/web/workspace/workspaces/__next._full.txt +30 -22
  231. package/dist/web/workspace/workspaces/__next._head.txt +1 -1
  232. package/dist/web/workspace/workspaces/__next._index.txt +12 -7
  233. package/dist/web/workspace/workspaces/__next._tree.txt +3 -3
  234. package/dist/web/workspace/workspaces/__next.workspace.txt +3 -3
  235. package/dist/web/workspace/workspaces/__next.workspace.workspaces.__PAGE__.txt +1 -1
  236. package/dist/web/workspace/workspaces/__next.workspace.workspaces.txt +1 -1
  237. package/dist/web/workspace/workspaces.html +1 -1
  238. package/dist/web/workspace/workspaces.txt +30 -22
  239. package/dist/web/workspace.html +1 -1
  240. package/dist/web/workspace.txt +27 -20
  241. package/package.json +5 -5
  242. package/dist/ui/assets/index-D_C1NTm1.js +0 -8
  243. package/dist/ui/assets/index-SHlsPzjb.css +0 -1
  244. package/dist/web/_next/static/chunks/1772-ef73c166e83f5eff.js +0 -1
  245. package/dist/web/_next/static/chunks/1920-5ead25286846df83.js +0 -1
  246. package/dist/web/_next/static/chunks/1968-4d2969f0b7112e0b.js +0 -32
  247. package/dist/web/_next/static/chunks/329-15d3e36af1b2827f.js +0 -1
  248. package/dist/web/_next/static/chunks/556-a8f04c41c5663ee8.js +0 -1
  249. package/dist/web/_next/static/chunks/5587-fc5af8c76df14222.js +0 -1
  250. package/dist/web/_next/static/chunks/6153.8c6b8930e22ceea0.js +0 -1
  251. package/dist/web/_next/static/chunks/6221-cf883148bf8a4c1e.js +0 -11
  252. package/dist/web/_next/static/chunks/7489.24938d89538cd03e.js +0 -1
  253. package/dist/web/_next/static/chunks/8126-0279fc9e17c08aff.js +0 -1
  254. package/dist/web/_next/static/chunks/820-99036fb63c5462c8.js +0 -1
  255. package/dist/web/_next/static/chunks/8534.8c6b8930e22ceea0.js +0 -1
  256. package/dist/web/_next/static/chunks/9121-3d281debd0f3e659.js +0 -1
  257. package/dist/web/_next/static/chunks/app/_global-error/page-2ece09c883187d82.js +0 -1
  258. package/dist/web/_next/static/chunks/app/_not-found/page-9f829d2c4beb1840.js +0 -1
  259. package/dist/web/_next/static/chunks/app/admin/access/page-45f45ad529e5b691.js +0 -5
  260. package/dist/web/_next/static/chunks/app/admin/login/page-382072b5b43d3c29.js +0 -1
  261. package/dist/web/_next/static/chunks/app/admin/ota/page-293c0743bd60f454.js +0 -5
  262. package/dist/web/_next/static/chunks/app/admin/page-fc676dae451dd646.js +0 -5
  263. package/dist/web/_next/static/chunks/app/admin/turn/page-2ab33033fc7f0919.js +0 -5
  264. package/dist/web/_next/static/chunks/app/dev/question/page-bafce0c9fd4e8488.js +0 -1
  265. package/dist/web/_next/static/chunks/app/download/page-a65d1c7fcf6397af.js +0 -1
  266. package/dist/web/_next/static/chunks/app/layout-f1429d22e935695f.js +0 -1
  267. package/dist/web/_next/static/chunks/app/login/page-a5dd37d1cbbb394e.js +0 -1
  268. package/dist/web/_next/static/chunks/app/workspace/browse/page-2ece09c883187d82.js +0 -1
  269. package/dist/web/_next/static/chunks/app/workspace/editor/page-2ece09c883187d82.js +0 -1
  270. package/dist/web/_next/static/chunks/app/workspace/files/page-2ece09c883187d82.js +0 -1
  271. package/dist/web/_next/static/chunks/app/workspace/git/page-2ece09c883187d82.js +0 -1
  272. package/dist/web/_next/static/chunks/app/workspace/layout-d8bb677fa1caa5a7.js +0 -20
  273. package/dist/web/_next/static/chunks/app/workspace/mobile/page-2ece09c883187d82.js +0 -1
  274. package/dist/web/_next/static/chunks/app/workspace/page-2ece09c883187d82.js +0 -1
  275. package/dist/web/_next/static/chunks/app/workspace/pair/page-2ece09c883187d82.js +0 -1
  276. package/dist/web/_next/static/chunks/app/workspace/remote/page-2ece09c883187d82.js +0 -1
  277. package/dist/web/_next/static/chunks/app/workspace/terminal/[sessionId]/page-2ece09c883187d82.js +0 -1
  278. package/dist/web/_next/static/chunks/app/workspace/welcome/page-2ece09c883187d82.js +0 -1
  279. package/dist/web/_next/static/chunks/app/workspace/workspaces/page-2ece09c883187d82.js +0 -1
  280. package/dist/web/_next/static/chunks/main-e10b0dbebb4de0a8.js +0 -5
  281. package/dist/web/_next/static/chunks/next/dist/client/components/builtin/app-error-2ece09c883187d82.js +0 -1
  282. package/dist/web/_next/static/chunks/next/dist/client/components/builtin/forbidden-2ece09c883187d82.js +0 -1
  283. package/dist/web/_next/static/chunks/next/dist/client/components/builtin/not-found-2ece09c883187d82.js +0 -1
  284. package/dist/web/_next/static/chunks/next/dist/client/components/builtin/unauthorized-2ece09c883187d82.js +0 -1
  285. package/dist/web/_next/static/css/1c2cca827fa36d54.css +0 -1
  286. package/dist/web/dev/question/__next._full.txt +0 -29
  287. package/dist/web/dev/question/__next._index.txt +0 -12
  288. package/dist/web/dev/question/__next.dev.question.__PAGE__.txt +0 -9
  289. package/dist/web/dev/question/__next.dev.txt +0 -5
  290. package/dist/web/dev/question.html +0 -1
  291. package/dist/web/dev/question.txt +0 -29
  292. /package/dist/web/_next/static/{55Oo1FQxj9HIxB7QE1XWG → u29HK3zWfDC3mM40skU_h}/_ssgManifest.js +0 -0
@@ -1 +0,0 @@
1
- *,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Sora,system-ui,sans-serif;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:JetBrains Mono,ui-monospace,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%;width:100%;overflow:hidden}body{font-family:Sora,system-ui,sans-serif;background-color:var(--bg-main);color:var(--text-main);-webkit-font-smoothing:antialiased;-webkit-user-select:text;-moz-user-select:text;user-select:text;transition:background-color .3s ease,color .3s ease}input,textarea{accent-color:var(--brand-500)}button{-webkit-user-select:none;-moz-user-select:none;user-select:none}@keyframes aurora-drift{0%{transform:translate3d(-3%,-2%,0) scale(1)}to{transform:translate3d(4%,3%,0) scale(1.08)}}.card-elev{background:var(--glass-bg);box-shadow:var(--shadow-elev);border:1px solid var(--glass-border);border-radius:var(--radius-brand-lg);backdrop-filter:blur(20px) saturate(140%);-webkit-backdrop-filter:blur(20px) saturate(140%);transition:box-shadow .2s ease,border-color .2s ease}.card-elev:hover{border-color:var(--border)}.glass-card{background:var(--glass-bg);border:1px solid var(--border);border-radius:14px;backdrop-filter:blur(24px) saturate(190%);-webkit-backdrop-filter:blur(24px) saturate(190%);box-shadow:0 20px 50px -10px #0000008c,inset 0 1px #ffffff1a;transition:all .2s ease}.hero-card{position:relative;overflow:hidden;background:var(--row-bg);border:1px solid var(--border-subtle);border-radius:16px;transition:transform .2s ease}.hero-card:hover{transform:translateY(-1px)}.hero-card:before{content:"";position:absolute;top:-50%;left:-65%;width:60%;height:200%;background:linear-gradient(115deg,transparent 0%,rgba(255,255,255,.02) 20%,rgba(255,255,255,.22) 50%,rgba(255,255,255,.02) 80%,transparent 100%);transform:rotate(25deg);pointer-events:none;opacity:0}[data-theme=light] .hero-card:before{background:linear-gradient(115deg,transparent 0%,rgba(255,255,255,.1) 20%,rgba(255,255,255,.5) 50%,rgba(255,255,255,.1) 80%,transparent 100%)}.hero-card:hover:before{opacity:1;animation:mirror-sheen 1.5s linear infinite}@keyframes mirror-sheen{0%{left:-65%}to{left:110%}}@media(prefers-reduced-motion:reduce){.hero-card:hover:before{animation:none}}.glass-btn{background:var(--surface-2);border:1px solid var(--border);border-radius:7px;transition:all .2s cubic-bezier(.16,1,.3,1)}.glass-btn:hover{background:var(--glass-hover);border-color:var(--ring, var(--border))}.btn-primary{background:linear-gradient(135deg,var(--brand-500),var(--brand-400));border-radius:var(--radius-brand);color:#fff;font-weight:600;transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:0 8px 20px -6px rgba(var(--brand-rgb),.5)}.btn-primary:hover{filter:brightness(1.06);transform:translateY(-1px)}.btn-primary:disabled{background:rgba(var(--brand-rgb),.3);cursor:not-allowed;transform:none;box-shadow:none}.material-symbols-outlined{font-family:Material Symbols Rounded;font-variation-settings:"FILL" 0,"wght" 300,"GRAD" 0,"opsz" 24}.font-mono{font-family:JetBrains Mono,ui-monospace,monospace;font-variant-numeric:tabular-nums}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.top-0\.5{top:.125rem}.isolate{isolation:isolate}.z-50{z-index:50}.z-\[100\]{z-index:100}.z-\[1\]{z-index:1}.col-span-full{grid-column:1 / -1}.-mx-3{margin-left:-.75rem;margin-right:-.75rem}.mx-4{margin-left:1rem;margin-right:1rem}.mx-auto{margin-left:auto;margin-right:auto}.my-auto{margin-top:auto;margin-bottom:auto}.mb-1{margin-bottom:.25rem}.mb-2{margin-bottom:.5rem}.mb-2\.5{margin-bottom:.625rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-8{margin-bottom:2rem}.mb-9{margin-bottom:2.25rem}.ml-auto{margin-left:auto}.mt-0\.5{margin-top:.125rem}.mt-10{margin-top:2.5rem}.mt-2{margin-top:.5rem}.mt-2\.5{margin-top:.625rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-\[5px\]{margin-top:5px}.line-clamp-1{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.grid{display:grid}.hidden{display:none}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-2{height:.5rem}.h-3{height:.75rem}.h-5{height:1.25rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-9{height:2.25rem}.h-\[200px\]{height:200px}.h-\[26px\]{height:26px}.h-\[34px\]{height:34px}.h-\[540px\]{height:540px}.h-\[6px\]{height:6px}.h-\[9px\]{height:9px}.h-full{height:100%}.h-px{height:1px}.max-h-\[90vh\]{max-height:90vh}.min-h-0{min-height:0px}.w-1{width:.25rem}.w-1\.5{width:.375rem}.w-10{width:2.5rem}.w-2{width:.5rem}.w-4{width:1rem}.w-48{width:12rem}.w-5{width:1.25rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-80{width:20rem}.w-9{width:2.25rem}.w-\[200px\]{width:200px}.w-\[34px\]{width:34px}.w-\[46px\]{width:46px}.w-\[6px\]{width:6px}.w-\[9px\]{width:9px}.w-full{width:100%}.min-w-0{min-width:0px}.max-w-2xl{max-width:42rem}.max-w-\[380px\]{max-width:380px}.max-w-full{max-width:100%}.flex-1{flex:1 1 0%}.flex-shrink-0{flex-shrink:0}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-items-center{place-items:center}.content-start{align-content:flex-start}.items-start{align-items:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0\.5{gap:.125rem}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-3\.5{gap:.875rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.break-all{word-break:break-all}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\[10px\]{border-radius:10px}.rounded-\[11px\]{border-radius:11px}.rounded-\[14px\]{border-radius:14px}.rounded-\[2px\]{border-radius:2px}.rounded-\[9px\]{border-radius:9px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.border-b{border-bottom-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.bg-black\/50{background-color:#00000080}.bg-black\/60{background-color:#0009}.bg-green-400{--tw-bg-opacity: 1;background-color:rgb(74 222 128 / var(--tw-bg-opacity, 1))}.bg-orange-400{--tw-bg-opacity: 1;background-color:rgb(251 146 60 / var(--tw-bg-opacity, 1))}.bg-surface{background-color:var(--surface)}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/20{background-color:#fff3}.object-cover{-o-object-fit:cover;object-fit:cover}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-3{padding:.75rem}.p-3\.5{padding:.875rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.px-0\.5{padding-left:.125rem;padding-right:.125rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-3\.5{padding-left:.875rem;padding-right:.875rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-10{padding-top:2.5rem;padding-bottom:2.5rem}.py-16{padding-top:4rem;padding-bottom:4rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-3\.5{padding-top:.875rem;padding-bottom:.875rem}.py-4{padding-top:1rem;padding-bottom:1rem}.pb-1{padding-bottom:.25rem}.pb-11{padding-bottom:2.75rem}.pb-2\.5{padding-bottom:.625rem}.pl-6{padding-left:1.5rem}.pr-1{padding-right:.25rem}.pr-8{padding-right:2rem}.pt-10{padding-top:2.5rem}.pt-2{padding-top:.5rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.text-left{text-align:left}.text-center{text-align:center}.font-mono{font-family:JetBrains Mono,ui-monospace,monospace}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-\[10\.5px\]{font-size:10.5px}.text-\[10px\]{font-size:10px}.text-\[11\.5px\]{font-size:11.5px}.text-\[11px\]{font-size:11px}.text-\[12\.5px\]{font-size:12.5px}.text-\[12px\]{font-size:12px}.text-\[13\.5px\]{font-size:13.5px}.text-\[13px\]{font-size:13px}.text-\[15px\]{font-size:15px}.text-\[20px\]{font-size:20px}.text-\[30px\]{font-size:30px}.text-base{font-size:1rem;line-height:1.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.leading-4{line-height:1rem}.leading-5{line-height:1.25rem}.leading-\[1\.05\]{line-height:1.05}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.tracking-\[-0\.02em\]{letter-spacing:-.02em}.tracking-\[-0\.03em\]{letter-spacing:-.03em}.tracking-\[0\.12em\]{letter-spacing:.12em}.tracking-\[0\.18em\]{letter-spacing:.18em}.tracking-normal{letter-spacing:0em}.tracking-tight{letter-spacing:-.025em}.tracking-wider{letter-spacing:.05em}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity, 1))}.text-text-muted{color:var(--text-muted)}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-\[4px\]{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-1000{transition-duration:1s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-500{transition-duration:.5s}.ease-linear{transition-timing-function:linear}.ease-out{transition-timing-function:cubic-bezier(0,0,.2,1)}:root{--radius-brand: 8px;--radius-brand-lg: 10px}:root[data-theme=light]{--brand-500: #E85A2C;--brand-600: #cc4e24;--brand-400: #f2711c;--brand-tint: rgba(232, 90, 44, .12);--brand-rgb: 232, 90, 44;--ring: rgba(232, 90, 44, .42);--bg-body: #FCFBF9;--bg-main: #FCFBF9;--bg-alt: #F3F1ED;--surface: #FFFFFF;--surface-2: rgba(255, 255, 255, .9);--sidebar: #F5F7FC;--border: rgba(20, 30, 60, .1);--border-subtle: rgba(20, 30, 60, .06);--text-main: #0C1230;--text-muted: #5A648A;--glass-bg: rgba(255, 255, 255, .74);--glass-border: rgba(20, 30, 60, .1);--glass-hover: rgba(255, 255, 255, .9);--grid-opacity: .08;--header-shadow: 0 1px 3px rgba(0, 0, 0, .06);--surface-3: #E7E7E9;--text-subtle: #8A93B4;--success: #10B981;--success-rgb: 16, 185, 129;--danger: #DC2626;--danger-rgb: 220, 38, 38;--warn: #D97706;--warn-rgb: 217, 119, 6;--info: #7C3AED;--grid-line: rgba(0, 0, 0, .6);--light-1: rgba(0, 0, 0, .045);--light-2: rgba(0, 0, 0, .03);--light-3: rgba(0, 0, 0, .02);--row-bg: rgba(255, 255, 255, .72);--row-hover: rgba(20, 30, 60, .04);--pane-right-bg: rgba(255, 255, 255, .5);--qr-plate-shadow: 0 24px 60px -20px rgba(60, 70, 120, .35), 0 0 0 1px var(--border-subtle);--shadow-soft: 0 1px 2px 0 rgba(0, 0, 0, .04);--shadow-elev: inset 0 1px 0 0 rgba(255, 255, 255, .9), 0 24px 50px -20px rgba(60, 70, 120, .35)}:root[data-theme=dark]{--brand-500: #FF6A3D;--brand-600: #e5572c;--brand-400: #ff8155;--brand-tint: rgba(255, 106, 61, .12);--brand-rgb: 255, 106, 61;--ring: rgba(255, 106, 61, .55);--bg-body: #0a0a0a;--bg-main: #0a0a0a;--bg-alt: #171717;--surface: #171717;--surface-2: #262626;--sidebar: #0C1120;--border: rgba(255, 255, 255, .1);--border-subtle: rgba(255, 255, 255, .07);--text-main: #fafafa;--text-muted: #a1a1a1;--glass-bg: rgba(38, 38, 38, .7);--glass-border: rgba(255, 255, 255, .08);--glass-hover: #2a2a2a;--grid-opacity: .04;--header-shadow: 0 1px 3px rgba(0, 0, 0, .3);--surface-3: #2a2a2a;--text-subtle: #737373;--success: #34E5A4;--success-rgb: 52, 229, 164;--danger: #FF5252;--danger-rgb: 255, 82, 82;--warn: #FFC24B;--warn-rgb: 255, 194, 75;--info: #A855F7;--shadow-soft: 0 1px 2px 0 rgba(0, 0, 0, .3);--shadow-elev: inset 0 1px 0 0 rgba(255, 255, 255, .06), 0 24px 60px -18px rgba(3, 6, 16, .9);--grid-line: rgba(255, 255, 255, 1);--light-1: rgba(255, 255, 255, .1);--light-2: rgba(255, 255, 255, .07);--light-3: rgba(255, 255, 255, .035);--row-bg: rgba(255, 255, 255, .04);--row-hover: rgba(255, 255, 255, .03);--pane-right-bg: rgba(23, 23, 23, .28);--qr-plate-shadow: 0 24px 60px -20px rgba(0, 0, 0, .7), 0 0 0 1px var(--border-subtle)}::-moz-selection{background-color:rgba(var(--brand-rgb),.25);color:var(--brand-500)}::selection{background-color:rgba(var(--brand-rgb),.25);color:var(--brand-500)}@keyframes health-pulse{50%{box-shadow:0 0 0 7px rgba(var(--success-rgb),.05)}}.health-dot{box-shadow:0 0 0 4px rgba(var(--success-rgb),.18);animation:health-pulse 2.4s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.health-dot{animation:none}}@keyframes pulse-ring{0%{transform:scale(.8);opacity:1}to{transform:scale(1.6);opacity:0}}.pulse-ring{animation:pulse-ring 1.4s ease-out infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spin{animation:spin 1s linear infinite}.qr-spin{animation:spin .9s linear infinite;transform-origin:50% 50%}@keyframes dot-bounce{0%,80%,to{transform:scale(.6);opacity:.4}40%{transform:scale(1);opacity:1}}.dot-bounce{animation:dot-bounce 1s ease-in-out infinite}.terminal-focus-glow:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border:2px solid #22c55e;box-shadow:0 0 8px #22c55eb3;pointer-events:none;z-index:2}.conn-card{border:none}:root[data-theme=light] .conn-card{border:1px solid var(--border-subtle)}.card-act{color:var(--text-muted);transition:all .15s ease}.card-act:hover{background:var(--surface-2);color:var(--text-main)}.bg-sq-grid{background-image:linear-gradient(to right,var(--grid-line) 1px,transparent 1px),linear-gradient(to bottom,var(--grid-line) 1px,transparent 1px);background-size:40px 40px;opacity:var(--grid-opacity);-webkit-mask-image:radial-gradient(ellipse 120% 90% at 50% 0%,#000 30%,transparent 80%);mask-image:radial-gradient(ellipse 120% 90% at 50% 0%,#000 30%,transparent 80%)}.bg-light-drift{background:radial-gradient(820px 620px at 18% 10%,var(--light-1),transparent 60%),radial-gradient(720px 540px at 84% 80%,var(--light-2),transparent 65%),radial-gradient(620px 420px at 55% 45%,var(--light-3),transparent 60%);animation:light-drift 18s ease-in-out infinite alternate;will-change:transform}@keyframes light-drift{0%{transform:translate3d(-2%,-1%,0) scale(1.05);opacity:.82}to{transform:translate3d(2%,2%,0) scale(1.16);opacity:1}}.pane-hero-glow{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:radial-gradient(900px 700px at 58% 30%,var(--light-1),transparent 62%),radial-gradient(1100px 800px at 12% 95%,var(--light-2),transparent 68%);animation:hero-glow-drift 16s ease-in-out infinite alternate;will-change:transform}@keyframes hero-glow-drift{0%{transform:translate3d(-1.5%,-1%,0) scale(1.04);opacity:.8}to{transform:translate3d(2%,1.5%,0) scale(1.12);opacity:1}}.brand-grad-text{background:linear-gradient(to bottom,var(--text-main),var(--text-muted));-webkit-background-clip:text;background-clip:text;color:transparent}.logo-glass{background:linear-gradient(150deg,#ffffff12,#ffffff05);border:1px solid rgba(255,255,255,.1);box-shadow:inset 0 1px #ffffff1a,0 0 22px -6px rgba(var(--brand-rgb),.45)}[data-theme=light] .logo-glass{background:linear-gradient(150deg,#ffffffe6,#fff9);border:1px solid rgba(20,30,60,.1);box-shadow:inset 0 1px #ffffffe6,0 0 22px -8px rgba(var(--brand-rgb),.35)}.row-hover{transition:background-color .15s ease}.row-hover:hover{background:var(--row-hover)}.hdr-icon{background:var(--row-bg);border:1px solid var(--border-subtle);color:var(--text-muted);transition:all .15s ease}.hdr-icon:hover{color:var(--text-main);border-color:var(--border)}.hdr-icon:disabled{opacity:.5}@keyframes chip-blink{50%{opacity:.35}}.chip-blink{animation:chip-blink 1.2s ease-in-out infinite}@media(prefers-reduced-motion:reduce){.bg-light-drift,.pane-hero-glow,.chip-blink{animation:none}}.last\:border-0:last-child{border-width:0px}.hover\:bg-surface-2:hover{background-color:var(--surface-2)}.hover\:text-text:hover{color:var(--text-main)}.hover\:underline:hover{text-decoration-line:underline}.active\:scale-\[0\.94\]:active{--tw-scale-x: .94;--tw-scale-y: .94;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:-translate-y-0\.5{--tw-translate-y: -.125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:translate-x-0\.5{--tw-translate-x: .125rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:scale-105{--tw-scale-x: 1.05;--tw-scale-y: 1.05;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:opacity-100{opacity:1}@media(min-width:640px){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1024px){.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:overflow-hidden{overflow:hidden}.lg\:overflow-y-auto{overflow-y:auto}.lg\:p-10{padding:2.5rem}.lg\:pl-14{padding-left:3.5rem}.lg\:pr-12{padding-right:3rem}.lg\:text-\[34px\]{font-size:34px}}
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1772],{14652:(e,a,t)=>{t.d(a,{e:()=>r});function r(e=10){if(!window.__TAURI__){if(window.ReactNativeWebView&&/Android/i.test(navigator.userAgent)){try{window.ReactNativeWebView.postMessage(JSON.stringify({type:"HAPTIC",style:"selection"}))}catch{}return}if(navigator.vibrate)return void navigator.vibrate(e);if("u">typeof document){if(!("u">typeof navigator&&(/iPad|iPhone|iPod/.test(navigator.userAgent)||window.DEVICE_INFO?.platform==="ios"||"MacIntel"===navigator.platform&&navigator.maxTouchPoints>1)))return;let e=document.createElement("div"),a=Math.random().toString(36).slice(2);e.innerHTML=`<input type="checkbox" id="${a}" switch /><label for="${a}"></label>`,e.setAttribute("style","display:none !important;opacity:0 !important;visibility:hidden !important;"),document.body.appendChild(e),e.querySelector("label").click(),setTimeout(()=>e.remove(),100)}}}},38118:(e,a,t)=>{t.d(a,{D:()=>n,ThemeProvider:()=>i});var r=t(54568),l=t(7620),c=t(86377);let u=(0,l.createContext)({theme:c.SS,setTheme:()=>{},toggleTheme:()=>{}}),F=e=>{if("u"<typeof document)return;let a=document.documentElement;a.classList.remove("light","dark"),a.classList.add(e),a.style.colorScheme=e;try{let a=window.__TAURI__?.window?.getCurrentWindow?.();a&&(a.setTheme?.(e)?.catch?.(()=>{}),a.setBackgroundColor?.("light"===e?"#e7e7e9":"#2a2a2a")?.catch?.(()=>{}))}catch{}},o=e=>{if(window.ReactNativeWebView)try{window.ReactNativeWebView.postMessage(JSON.stringify({type:"THEME_CHANGE",theme:e}))}catch(e){}};function i({children:e}){let[a,t]=(0,l.useState)(c.SS);(0,l.useEffect)(()=>{let e=localStorage.getItem(c.AQ)||localStorage.getItem("9remote-theme"),a=c.$.includes(e)?e:c.SS;t(a),F(a),o(a)},[]);let n=(0,l.useCallback)(e=>{c.$.includes(e)&&(t(e),F(e),o(e),localStorage.setItem(c.AQ,e),localStorage.setItem("9remote-theme",e))},[]),A=(0,l.useCallback)(()=>{n("dark"===a?"light":"dark")},[a,n]);return(0,r.jsx)(u.Provider,{value:{theme:a,setTheme:n,toggleTheme:A},children:e})}let n=()=>(0,l.useContext)(u)},39634:(e,a,t)=>{t.d(a,{A:()=>l});var r=t(54568);function l(){return(0,r.jsxs)("div",{className:"fixed inset-0 -z-10 overflow-hidden pointer-events-none landing-bg",children:[(0,r.jsx)("div",{className:"absolute inset-0 landing-grid"}),(0,r.jsx)("div",{className:"absolute inset-0 landing-vignette"})]})}},86377:(e,a,t)=>{t.d(a,{$:()=>r,AQ:()=>c,In:()=>n,SS:()=>l,aC:()=>F,g4:()=>i});let r=["dark","light"],l="dark",c="app_theme_v2";function u(e){return{background:e.bg,foreground:e.text,cursor:e.accent||e.peach||e.blue,cursorAccent:e.bg,selectionBackground:e.surface1,black:e.surfaceDim||e.bg,red:e.red,green:e.green,yellow:e.yellow,blue:e.blue,magenta:e.mauve,cyan:e.teal,white:e.subtext0||e.text,brightBlack:e.overlay0,brightRed:e.red,brightGreen:e.green,brightYellow:e.yellow,brightBlue:e.blue,brightMagenta:e.mauve,brightCyan:e.teal,brightWhite:e.text}}let F={dark:u({bg:"#1A1A1A",surface0:"#232323",surface1:"#2A2A2A",surfaceDim:"#101010",overlay0:"#5C5C5C",text:"#FFFFFF",subtext0:"#A0A0A0",red:"#FF8080",green:"#99FFE4",yellow:"#FFC799",blue:"#B0B0B0",mauve:"#FFD1A8",teal:"#66DDCC",peach:"#FFC799",accent:"#FFC799"}),light:u({bg:"#F5F5F5",surface0:"#E8E8E8",surface1:"#DDDDDD",surfaceDim:"#EFEFEF",overlay0:"#999999",text:"#1A1A1A",subtext0:"#5A5A5A",red:"#D9534F",green:"#2A9D8F",yellow:"#E07A3C",blue:"#6B6B6B",mauve:"#C97B5A",teal:"#3A9B8E",peach:"#E07A3C",accent:"#E07A3C"})},o={catppuccinMocha:u({bg:"#181825",surface0:"#31324A",surface1:"#45475A",surfaceDim:"#1E1E2E",overlay0:"#6C708E",text:"#CDD6F4",subtext0:"#A6ADC8",red:"#F38BA8",green:"#A6E3A1",yellow:"#F9E2AF",blue:"#89B4FA",mauve:"#CBA7F7",teal:"#94E2D5",peach:"#FAB387",accent:"#89B4FA"}),monokaiPro:u({bg:"#2D2A2E",surface0:"#353034",surface1:"#3D383C",surfaceDim:"#221F22",overlay0:"#72696A",text:"#FFF1F3",subtext0:"#C8C5C8",red:"#FD6883",green:"#ADDA78",yellow:"#F9CC6C",blue:"#F38D70",mauve:"#A8A9EB",teal:"#85DACC",peach:"#F38D70",accent:"#A8A9EB"}),gruvboxMaterial:u({bg:"#282828",surface0:"#3C3836",surface1:"#504945",surfaceDim:"#1D2021",overlay0:"#928374",text:"#D4BE98",subtext0:"#A89984",red:"#EA6962",green:"#A9B665",yellow:"#D8A657",blue:"#7DAEA3",mauve:"#D3869B",teal:"#89B482",peach:"#E78A4E",accent:"#E78A4E"}),dracula:u({bg:"#282A36",surface0:"#44475A",surface1:"#6272A4",surfaceDim:"#282A36",overlay0:"#6272A4",text:"#F8F8F2",subtext0:"#D2D2DC",red:"#FF5555",green:"#50FA7B",yellow:"#F1FA8C",blue:"#8BE9FD",mauve:"#FF79C6",teal:"#8BE9FD",peach:"#FFB86C",accent:"#BD93F9"}),everforest:u({bg:"#2D353B",surface0:"#343F44",surface1:"#3D484D",surfaceDim:"#232A2E",overlay0:"#7A8478",text:"#D3C6AA",subtext0:"#9DA9A0",red:"#E67E80",green:"#A7C080",yellow:"#DBBC7F",blue:"#7FBBB3",mauve:"#D699B6",teal:"#83C092",peach:"#E69875",accent:"#A7C080"}),linear:u({bg:"#08090A",surface0:"#0F1011",surface1:"#141516",surfaceDim:"#010102",overlay0:"#3E3E44",text:"#F7F8F8",subtext0:"#B4B4B8",red:"#F34E52",green:"#27A644",yellow:"#E4F222",blue:"#8FA6FF",mauve:"#8B5CF6",teal:"#02B8CC",peach:"#F7BF8B",accent:"#5E6AD2"}),synthwave:u({bg:"#262335",surface0:"#241B2F",surface1:"#34294F",surfaceDim:"#171520",overlay0:"#9D8BCA",text:"#FFFFFF",subtext0:"#FFFFFF99",red:"#FE4450",green:"#72F1B8",yellow:"#FEDE5D",blue:"#03EDF9",mauve:"#FF7EDB",teal:"#03EDF9",peach:"#F97E72",accent:"#FF7EDB"}),poimandres:u({bg:"#1B1E28",surface0:"#303340",surface1:"#3A4050",surfaceDim:"#14161F",overlay0:"#506477",text:"#E4F0FB",subtext0:"#A6ACCD",red:"#D0679D",green:"#5DE4C7",yellow:"#FFFAC2",blue:"#ADD7FF",mauve:"#F087BD",teal:"#5DE4C7",peach:"#F087BD",accent:"#5DE4C7"}),ayuMirage:u({bg:"#1F2430",surface0:"#212733",surface1:"#272D3A",surfaceDim:"#161B26",overlay0:"#686868",text:"#CBCCC6",subtext0:"#9A9B95",red:"#F08778",green:"#53BF97",yellow:"#FDCC60",blue:"#60B8D6",mauve:"#EC7171",teal:"#98E6CA",peach:"#FFA759",accent:"#FFCC66"}),githubDarkDimmed:u({bg:"#22272E",surface0:"#2D333B",surface1:"#373E47",surfaceDim:"#1C2128",overlay0:"#545D68",text:"#CDD9E5",subtext0:"#909DAB",red:"#F47067",green:"#57AB5A",yellow:"#C69026",blue:"#539BF5",mauve:"#B083F0",teal:"#39C5CF",peach:"#DAAA3F",accent:"#539BF5"}),palenight:u({bg:"#292D3E",surface0:"#313553",surface1:"#3A3F5F",surfaceDim:"#1F2233",overlay0:"#676E95",text:"#D0D0D0",subtext0:"#A0A0C0",red:"#E05252",green:"#2BE8A8",yellow:"#FFCB6B",blue:"#3FD0E0",mauve:"#C792EA",teal:"#3FD0E0",peach:"#FFCB6B",accent:"#82AAFF"}),nordDark:u({bg:"#2E3440",surface0:"#3B4252",surface1:"#434C5E",surfaceDim:"#232831",overlay0:"#4C566A",text:"#ECEFF4",subtext0:"#D8DEE9",red:"#BF616A",green:"#A3BE8C",yellow:"#EBCB8B",blue:"#81A1C1",mauve:"#B48EAD",teal:"#88C0D0",peach:"#D08770",accent:"#88C0D0"}),horizon:u({bg:"#1C1E26",surface0:"#232530",surface1:"#2E303E",surfaceDim:"#16161C",overlay0:"#6B6F8A",text:"#E0E0E0",subtext0:"#C5C8DA",red:"#E95678",green:"#29D398",yellow:"#FAB795",blue:"#26BBD9",mauve:"#EE64AC",teal:"#59E1E3",peach:"#FAB795",accent:"#EE64AC"}),kanagawaDragon:u({bg:"#181616",surface0:"#1D1C1C",surface1:"#252424",surfaceDim:"#0D0C0C",overlay0:"#7A6F7A",text:"#C5C9C5",subtext0:"#A6A69C",red:"#C4746E",green:"#87A987",yellow:"#E6C384",blue:"#8BA4B0",mauve:"#938AA9",teal:"#7AA89F",peach:"#FFA066",accent:"#8BA4B0"}),catppuccinLatte:u({bg:"#EFF1F5",surface0:"#CCD0DA",surface1:"#BCC0CC",surfaceDim:"#E6E9EF",overlay0:"#9CA0B0",text:"#4C4F69",subtext0:"#6C6F85",red:"#D20F39",green:"#40A02B",yellow:"#DF8E1D",blue:"#1E66F5",mauve:"#8839EF",teal:"#179299",peach:"#FE640B",accent:"#1E66F5"}),gruvboxLight:u({bg:"#FBF1C7",surface0:"#EBDBB2",surface1:"#D5C4A1",surfaceDim:"#F2E5BC",overlay0:"#928374",text:"#3C3836",subtext0:"#504945",red:"#9D0006",green:"#79740E",yellow:"#B57614",blue:"#076678",mauve:"#8F3F71",teal:"#427B58",peach:"#AF3A03",accent:"#B57614"}),githubLight:u({bg:"#FFFFFF",surface0:"#F6F8FA",surface1:"#EAEEF2",surfaceDim:"#EFF2F5",overlay0:"#8C959F",text:"#24292F",subtext0:"#57606A",red:"#CF222E",green:"#1A7F37",yellow:"#9A6700",blue:"#0969DA",mauve:"#8250DF",teal:"#1B7C83",peach:"#BC4C00",accent:"#0969DA"}),everforestLight:u({bg:"#FDF6E3",surface0:"#F4F0D9",surface1:"#EFEBD4",surfaceDim:"#E6E2CC",overlay0:"#9DA9A0",text:"#5C6A72",subtext0:"#7A8478",red:"#F85552",green:"#8DA101",yellow:"#DFA000",blue:"#3A94C5",mauve:"#DF69BA",teal:"#35A77C",peach:"#F57D3A",accent:"#8DA101"}),ayuLight:u({bg:"#FCFCFC",surface0:"#F3F3F3",surface1:"#E8E8E8",surfaceDim:"#F7F7F7",overlay0:"#C1C1C1",text:"#5C6166",subtext0:"#8A8F94",red:"#E7666A",green:"#80AB24",yellow:"#EBA54D",blue:"#4196DF",mauve:"#9870C3",teal:"#51B891",peach:"#E78F4D",accent:"#FF8552"}),tokyoDay:u({bg:"#D6D8DF",surface0:"#C8CBD4",surface1:"#B5B8C5",surfaceDim:"#E1E3EA",overlay0:"#9699AE",text:"#343B58",subtext0:"#565C70",red:"#C24242",green:"#41A6B5",yellow:"#8F5E15",blue:"#2959AA",mauve:"#7B43BA",teal:"#006C86",peach:"#D68910",accent:"#2959AA"}),roseDawn:u({bg:"#FAF4ED",surface0:"#F2E9E1",surface1:"#E9DDD2",surfaceDim:"#F5EBE0",overlay0:"#9893A5",text:"#576279",subtext0:"#797593",red:"#B4637A",green:"#618774",yellow:"#EA9D34",blue:"#286983",mauve:"#907AA9",teal:"#56949F",peach:"#D7827E",accent:"#D7827E"}),lavenderMist:u({bg:"#F6F3FB",surface0:"#EAE5F5",surface1:"#DDD6EE",surfaceDim:"#F0ECF8",overlay0:"#9B95B8",text:"#4A4467",subtext0:"#6B6491",red:"#C95D77",green:"#5FA17A",yellow:"#D9A441",blue:"#5B7FBE",mauve:"#8B7AB8",teal:"#5FA6A8",peach:"#D08A66",accent:"#8B7AB8"}),mintCream:u({bg:"#ECF6F0",surface0:"#DCEEE3",surface1:"#C9E3D2",surfaceDim:"#E2F1E9",overlay0:"#7FA396",text:"#2F4A40",subtext0:"#4E6B5F",red:"#C76B6B",green:"#3FA17A",yellow:"#C9A93E",blue:"#4A8DB8",mauve:"#9B6FA8",teal:"#3FA17A",peach:"#D58560",accent:"#3FA17A"})},i=[{key:"catppuccinMocha",label:"Catppuccin Mocha",mode:"dark"},{key:"monokaiPro",label:"Monokai Pro",mode:"dark"},{key:"dracula",label:"Dracula",mode:"dark"},{key:"everforest",label:"Everforest",mode:"dark"},{key:"gruvboxMaterial",label:"Gruvbox Material",mode:"dark"},{key:"linear",label:"Linear",mode:"dark"},{key:"synthwave",label:"Synthwave '84",mode:"dark"},{key:"poimandres",label:"Poimandres",mode:"dark"},{key:"ayuMirage",label:"Ayu Mirage",mode:"dark"},{key:"githubDarkDimmed",label:"GitHub Dimmed",mode:"dark"},{key:"palenight",label:"Palenight",mode:"dark"},{key:"nordDark",label:"Nord",mode:"dark"},{key:"horizon",label:"Horizon",mode:"dark"},{key:"kanagawaDragon",label:"Kanagawa Dragon",mode:"dark"},{key:"catppuccinLatte",label:"Catppuccin Latte",mode:"light"},{key:"gruvboxLight",label:"Gruvbox Light",mode:"light"},{key:"githubLight",label:"GitHub Light",mode:"light"},{key:"everforestLight",label:"Everforest Light",mode:"light"},{key:"ayuLight",label:"Ayu Light",mode:"light"},{key:"tokyoDay",label:"Tokyo Day",mode:"light"},{key:"roseDawn",label:"Rose Dawn",mode:"light"},{key:"lavenderMist",label:"Lavender Mist",mode:"light"},{key:"mintCream",label:"Mint Cream",mode:"light"}];function n(e,a){let t="light"===e?o.everforestLight:o.palenight;return a&&"default"!==a&&i.find(t=>t.key===a&&t.mode===e)&&o[a]||t}}}]);
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[1920],{54024:(e,t,r)=>{r.d(t,{A:()=>d});var o=r(54568),s=r(65587),l=r(71049);let a=[{href:"/login",label:"Remote",internal:!0},{href:"/workspace",label:"Terminal",internal:!0},{href:"/remote",label:"Remote Desktop",internal:!0},{href:"https://apps.apple.com/us/app/9remote/id6796664210",label:"iOS (App Store)"},{href:"https://play.google.com/store/apps/details?id=cc.remote9.app&pli=1",label:"Android (Google Play)"}],n=[{href:"https://github.com/decolua/9remote",label:"GitHub"},{href:"https://www.npmjs.com/package/9remote",label:"NPM"},{href:"https://docs.9remote.cc/",label:"Documentation"},{href:"https://www.facebook.com/groups/9teamvn",label:"Community"}];function c({href:e,label:t,internal:r}){return(0,o.jsx)(r?s:"a",{href:e,...r?{}:{target:"_blank",rel:"noopener noreferrer"},className:"text-sm transition-colors",style:{color:l.CV.textDim},onMouseEnter:e=>e.currentTarget.style.color=l.CV.accent,onMouseLeave:e=>e.currentTarget.style.color=l.CV.textDim,children:t})}function d(){let e="2.4.0";return(0,o.jsx)("footer",{className:"relative py-14 px-4 sm:px-6 lg:px-8 border-t",style:{background:l.CV.bg,borderColor:l.CV.border},children:(0,o.jsxs)("div",{className:"max-w-7xl mx-auto",children:[(0,o.jsxs)("div",{className:"grid grid-cols-1 md:grid-cols-4 gap-8 mb-8",children:[(0,o.jsxs)("div",{className:"col-span-1 md:col-span-2",children:[(0,o.jsxs)("div",{className:"flex items-center gap-3 mb-4",children:[(0,o.jsx)("img",{src:"/icon-192.png",alt:"9Remote Logo",className:"w-9 h-9 rounded-lg object-contain shadow-md shadow-brand-500/20"}),(0,o.jsx)("h3",{className:"text-xl font-bold",style:{color:l.CV.text},children:"9Remote"})]}),(0,o.jsx)("p",{className:"text-sm max-w-md mb-4",style:{color:l.CV.textDim},children:"Remote everything, everywhere. Remote IDE, 60fps desktop, files, emulator & vibe coding on any screen."}),(0,o.jsxs)("p",{className:"text-xs",style:{color:l.CV.textMuted},children:["\xa9 ",new Date().getFullYear()," 9Remote. All rights reserved.",e&&(0,o.jsxs)("span",{className:"ml-2",children:["v",e]})]})]}),(0,o.jsxs)("div",{children:[(0,o.jsx)("h4",{className:"font-semibold mb-4 text-sm",style:{color:l.CV.text},children:"Product"}),(0,o.jsx)("ul",{className:"space-y-2",children:a.map(e=>(0,o.jsx)("li",{children:(0,o.jsx)(c,{...e})},e.label))})]}),(0,o.jsxs)("div",{children:[(0,o.jsx)("h4",{className:"font-semibold mb-4 text-sm",style:{color:l.CV.text},children:"Resources"}),(0,o.jsx)("ul",{className:"space-y-2",children:n.map(e=>(0,o.jsx)("li",{children:(0,o.jsx)(c,{...e})},e.label))})]})]}),(0,o.jsxs)("div",{className:"pt-8 flex flex-col sm:flex-row justify-between items-center gap-4 border-t",style:{borderColor:l.CV.border},children:[(0,o.jsx)("p",{className:"text-xs",style:{color:l.CV.textMuted},children:"Built with Next.js, Socket.io, and Cloudflare Workers"}),(0,o.jsx)("div",{className:"flex gap-6",children:n.slice(0,3).map(e=>(0,o.jsx)("a",{href:e.href,target:"_blank",rel:"noopener noreferrer",className:"text-xs transition-colors",style:{color:l.CV.textMuted},onMouseEnter:e=>e.currentTarget.style.color=l.CV.accent,onMouseLeave:e=>e.currentTarget.style.color=l.CV.textMuted,children:e.label},e.label))})]})]})})}},71049:(e,t,r)=>{r.d(t,{CV:()=>o,E4:()=>u,Is:()=>p,JN:()=>a,Ji:()=>x,KC:()=>n,Kd:()=>b,UH:()=>d,UP:()=>i,Yu:()=>m,od:()=>l,rl:()=>c,uI:()=>h});let o={bg:"var(--color-bg)",bgElevated:"var(--color-surface)",bgPanel:"var(--color-surface-2)",border:"var(--color-border)",borderStrong:"var(--color-border)",borderAccent:"color-mix(in srgb, var(--color-accent) 35%, transparent)",text:"var(--color-text)",textDim:"var(--color-text-muted)",textMuted:"var(--color-text-subtle)",accent:"var(--color-accent)",accentGlow:"color-mix(in srgb, var(--color-accent) 40%, transparent)",accentSoft:"color-mix(in srgb, var(--color-accent) 12%, transparent)",success:"var(--color-success)",warn:"#F59E0B",err:"var(--color-danger)"},s="https://github.com/decolua/9remote",l="https://apps.apple.com/us/app/9remote/id6796664210",a="https://play.google.com/store/apps/details?id=cc.remote9.app&pli=1",n="/download",c=s;function d(){if("u"<typeof navigator)return"other";let e=navigator.userAgent;return/iPhone|iPad|iPod/.test(e)?"other":/Mac/.test(e)?"macos":/Win/.test(e)?"windows":"other"}let i=[{id:"dmg",os:"macOS",short:"macOS",label:"Universal \xb7 Intel + Apple silicon",ext:".dmg",asset:"9Remote-macos-universal.dmg"},{id:"setup",os:"Windows",short:"Win setup",label:"Installer \xb7 x64",ext:".exe",asset:"9Remote-windows-x64-setup.exe"},{id:"portable",os:"Windows",short:"Win portable",label:"Portable \xb7 no install",ext:".exe",asset:"9Remote-windows-x64-portable.exe"}],m=[{tag:"v3.0.31",date:"2026-09-28"},{tag:"v3.0.3",date:"2026-09-21"},{tag:"v3.0.0",date:"2026-09-20"},{tag:"v3.5.9",date:"2026-09-15"}],p=(e,t)=>`${s}/releases/download/${e}/${t}`,x={tag:"v3.0.31",assets:{dmg:`${s}/releases/download/v3.0.31/9Remote-macos-universal.dmg`,setup:`${s}/releases/download/v3.0.31/9Remote-windows-x64-setup.exe`,portable:`${s}/releases/download/v3.0.31/9Remote-windows-x64-portable.exe`,debAmd64:`${s}/releases/download/v3.0.30/9Remote-linux-amd64.deb`,debArm64:`${s}/releases/download/v3.0.30/9Remote-linux-arm64.deb`,appImageArm64:`${s}/releases/download/v3.0.30/9Remote-linux-arm64.AppImage`}},u=e=>e.replace(/^v/,""),b=e=>[...e].sort((e,t)=>t.date.localeCompare(e.date)),h=[{role:"Host",title:"On your machine",desc:"Serves your terminals, screen and files."},{role:"Client",title:"With you anywhere",desc:"Same session on any screen — nothing to sync."}]},71632:(e,t,r)=>{r.d(t,{w:()=>a});var o=r(7620),s=r(92673);let l="9remote_github_stars";function a(){let[e,t]=(0,o.useState)(null);return(0,o.useEffect)(()=>{try{let e=localStorage.getItem(l);if(e){let{count:r,timestamp:o}=JSON.parse(e);if("number"==typeof r&&t(r),Date.now()-o<36e5)return}}catch{}let e=!0;return fetch(s.O8).then(e=>e.ok?e.json():null).then(r=>{if(!e||"number"!=typeof r?.stargazers_count)return;let o=r.stargazers_count;t(o);try{localStorage.setItem(l,JSON.stringify({count:o,timestamp:Date.now()}))}catch{}}).catch(()=>{}),()=>{e=!1}},[]),{stars:e,formattedStars:null==e?"":e>=1e3?(e/1e3).toFixed(1).replace(/\.0$/,"")+"k":String(e)}}},85317:(e,t,r)=>{r.d(t,{A:()=>i});var o=r(54568),s=r(7620),l=r(65587),a=r(71049),n=r(46891),c=r(71632);let d=[{href:"#features",label:"Features"},{href:"#security",label:"Security"},{href:"#how-it-works",label:"How It Works"},{href:"https://docs.9remote.cc/",label:"Docs",external:!0},{href:"https://github.com/decolua/9remote",label:"GitHub",external:!0}];function i(){let[e,t]=(0,s.useState)(!1),[r,i]=(0,s.useState)(!1),{formattedStars:m}=(0,c.w)(),p="2.4.0";return(0,s.useEffect)(()=>{let e=()=>t(window.scrollY>20);return window.addEventListener("scroll",e),()=>window.removeEventListener("scroll",e)},[]),(0,o.jsxs)("nav",{className:"fixed top-0 left-0 right-0 z-50 transition-all duration-300",style:{background:e?"color-mix(in srgb, var(--color-bg) 75%, transparent)":"transparent",backdropFilter:e?"blur(16px)":"none",borderBottom:e?`1px solid ${a.CV.border}`:"1px solid transparent"},children:[(0,o.jsxs)("div",{className:"max-w-7xl mx-auto px-6 h-16 flex items-center justify-between",children:[(0,o.jsxs)(l,{href:"/",className:"flex items-center gap-3 group",children:[(0,o.jsx)("img",{src:"/icon-192.png",alt:"9Remote Logo",className:"w-8 h-8 rounded-lg object-contain shadow-md shadow-brand-500/20"}),(0,o.jsx)("span",{className:"text-xl font-bold tracking-tight",style:{color:a.CV.text},children:"9Remote"}),p&&(0,o.jsxs)("span",{className:"px-2 py-0.5 text-xs font-mono font-medium rounded-full bg-brand-500/10 text-brand-400 border border-brand-500/20",children:["v",p]})]}),(0,o.jsx)("div",{className:"hidden md:flex items-center gap-7",children:d.map(e=>(0,o.jsxs)("a",{href:e.href,target:e.external?"_blank":void 0,rel:e.external?"noopener noreferrer":void 0,className:"text-sm transition-colors flex items-center gap-1.5",style:{color:a.CV.textDim},onMouseEnter:e=>e.currentTarget.style.color=a.CV.text,onMouseLeave:e=>e.currentTarget.style.color=a.CV.textDim,children:[(0,o.jsx)("span",{children:e.label}),"GitHub"===e.label&&m&&(0,o.jsxs)("span",{className:"text-[11px] font-mono px-1.5 py-0.5 rounded-full border border-border-subtle bg-surface-2/80 text-text",children:["★ ",m]})]},e.label))}),(0,o.jsxs)("div",{className:"hidden md:flex items-center gap-3",children:[(0,o.jsx)(n.A,{}),(0,o.jsx)(l,{href:a.KC,className:"px-4 py-2 rounded-lg font-semibold text-sm border transition-transform hover:scale-[1.03]",style:{background:a.CV.bgPanel,borderColor:a.CV.border,color:a.CV.text},children:(0,o.jsx)("span",{children:"Download Host"})}),(0,o.jsx)(l,{href:"/login",className:"btn-cta px-5 py-2 rounded-lg font-semibold text-sm transition-transform hover:scale-[1.03]",style:{background:"var(--color-text)",color:"var(--color-bg)"},children:(0,o.jsx)("span",{children:"Remote"})})]}),(0,o.jsxs)("div",{className:"md:hidden flex items-center gap-1.5",children:[(0,o.jsx)(n.A,{}),(0,o.jsx)("button",{onClick:()=>i(!r),className:"p-2",style:{color:a.CV.text},children:(0,o.jsx)("svg",{className:"w-6 h-6",fill:"none",viewBox:"0 0 24 24",stroke:"currentColor",children:r?(0,o.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M6 18L18 6M6 6l12 12"}):(0,o.jsx)("path",{strokeLinecap:"round",strokeLinejoin:"round",strokeWidth:2,d:"M4 6h16M4 12h16M4 18h16"})})})]})]}),r&&(0,o.jsx)("div",{className:"md:hidden",style:{background:"color-mix(in srgb, var(--color-bg) 95%, transparent)",backdropFilter:"blur(16px)",borderTop:`1px solid ${a.CV.border}`},children:(0,o.jsxs)("div",{className:"flex flex-col gap-4 p-6",children:[d.map(e=>(0,o.jsxs)("a",{href:e.href,target:e.external?"_blank":void 0,rel:e.external?"noopener noreferrer":void 0,onClick:()=>i(!1),className:"text-sm flex items-center justify-between",style:{color:a.CV.textDim},children:[(0,o.jsx)("span",{children:e.label}),"GitHub"===e.label&&m&&(0,o.jsxs)("span",{className:"text-xs font-mono px-2 py-0.5 rounded-full border border-border-subtle bg-surface-2 text-text",children:["★ ",m]})]},e.label)),(0,o.jsx)(l,{href:a.KC,onClick:()=>i(!1),className:"px-6 py-2 rounded-lg font-semibold text-sm text-center border",style:{background:a.CV.bgPanel,borderColor:a.CV.border,color:a.CV.text},children:"Download Host"}),(0,o.jsx)(l,{href:"/login",className:"px-6 py-2 rounded-lg font-semibold text-sm text-center",style:{background:"var(--color-text)",color:"var(--color-bg)"},children:"Remote"})]})})]})}},92673:(e,t,r)=>{r.d(t,{Gf:()=>d,Gi:()=>x,Hu:()=>c,Nn:()=>m,O8:()=>l,cu:()=>i,el:()=>a,ij:()=>p,l7:()=>n,no:()=>u,pe:()=>o,rl:()=>s,xO:()=>b});let o="https://api.github.com",s="https://github.com/decolua/9remote",l=`${o}/repos/decolua/9remote`,a=`${l}/releases?per_page=100`,n=!1,c=".devcontainer/devcontainer.json",d="NREMOTE_API_KEY",i={name:"9Remote",image:"mcr.microsoft.com/devcontainers/universal:latest",postCreateCommand:"npm install -g 9remote@latest",postAttachCommand:"nohup 9remote start > /tmp/9remote.log 2>&1 &",forwardPorts:[2208],portsAttributes:{2208:{label:"9Remote Server",onAutoForward:"silent",visibility:"public"}}},m=3e3,p=60,x={available:"Available",starting:"Starting",shutdown:"Shutdown",unknown:"Unknown"},u={user:"/user",codespaces:"/user/codespaces",codespaceByName:e=>`/user/codespaces/${e}`,startCodespace:e=>`/user/codespaces/${e}/start`,userReposList:"/user/repos?per_page=100&sort=updated&affiliation=owner,collaborator",repoContents:(e,t,r)=>`/repos/${e}/${t}/contents/${r}`,createCodespaceForRepo:(e,t)=>`/repos/${e}/${t}/codespaces`,codespaceSecretsPublicKey:"/user/codespaces/secrets/public-key",codespaceSecret:e=>`/user/codespaces/secrets/${e}`,codespaceSecretRepos:(e,t)=>`/user/codespaces/secrets/${e}/repositories/${t}`};function b(e){return`https://${e}-2208.app.github.dev`}}}]);