sealkeep 0.9.0 → 0.11.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 (274) hide show
  1. package/ARCHITECTURE.md +163 -14
  2. package/CHANGELOG.md +252 -1
  3. package/CONTROL_PLANE.md +2 -2
  4. package/LICENSE +1 -1
  5. package/README.md +108 -22
  6. package/THIRD_PARTY.md +2 -2
  7. package/THREAT_MODEL.md +23 -4
  8. package/dist/packages/{vaultline-crypto → sealkeep-crypto}/src/chunk-access.d.ts +26 -4
  9. package/dist/packages/sealkeep-crypto/src/chunk-access.js +219 -0
  10. package/dist/packages/{vaultline-crypto → sealkeep-crypto}/src/envelope.d.ts +11 -1
  11. package/dist/packages/{vaultline-crypto → sealkeep-crypto}/src/envelope.js +58 -21
  12. package/dist/packages/{vaultline-crypto → sealkeep-crypto}/src/format.d.ts +2 -2
  13. package/dist/packages/{vaultline-crypto → sealkeep-crypto}/src/index.d.ts +1 -0
  14. package/dist/packages/{vaultline-crypto → sealkeep-crypto}/src/index.js +1 -0
  15. package/dist/packages/{vaultline-crypto → sealkeep-crypto}/src/recipients.d.ts +1 -0
  16. package/dist/packages/{vaultline-crypto → sealkeep-crypto}/src/recipients.js +53 -13
  17. package/dist/packages/sealkeep-crypto/src/squeeze.d.ts +6 -0
  18. package/dist/packages/sealkeep-crypto/src/squeeze.js +39 -0
  19. package/dist/packages/{vaultline-crypto → sealkeep-crypto}/src/stream.d.ts +36 -3
  20. package/dist/packages/{vaultline-crypto → sealkeep-crypto}/src/stream.js +196 -37
  21. package/dist/site/index.html +1808 -1904
  22. package/dist/site/llms.txt +67 -0
  23. package/dist/site/trust/architecture-data-flow.html +53 -0
  24. package/dist/site/trust/audit-roadmap.html +37 -0
  25. package/dist/site/trust/deployment-responsibility.html +11 -0
  26. package/dist/site/trust/dpa-sample.html +30 -0
  27. package/dist/site/trust/release-provenance.html +21 -0
  28. package/dist/site/trust/subprocessors.html +15 -0
  29. package/dist/site/trust/threat-model.html +34 -0
  30. package/dist/site/trust/toms.html +41 -0
  31. package/dist/site/trust-document.css +32 -0
  32. package/dist/site/trust.html +73 -0
  33. package/dist/site/visual/assets/index-8Nxnkc7o.js +207 -0
  34. package/dist/site/visual/assets/index-oxLy1bpy.css +1 -0
  35. package/dist/site/visual/index.html +18 -0
  36. package/dist/site.zip +0 -0
  37. package/dist/src/activity.d.ts +9 -0
  38. package/dist/src/activity.js +90 -1
  39. package/dist/src/adapters.d.ts +175 -5
  40. package/dist/src/adapters.js +961 -73
  41. package/dist/src/agent-context.d.ts +135 -0
  42. package/dist/src/agent-context.js +1059 -0
  43. package/dist/src/archive-copies.d.ts +47 -0
  44. package/dist/src/archive-copies.js +179 -0
  45. package/dist/src/audit.d.ts +1 -1
  46. package/dist/src/audit.js +29 -4
  47. package/dist/src/autopilot.d.ts +52 -7
  48. package/dist/src/autopilot.js +143 -25
  49. package/dist/src/background-bandwidth.d.ts +46 -0
  50. package/dist/src/background-bandwidth.js +301 -0
  51. package/dist/src/background-cpu.d.ts +82 -0
  52. package/dist/src/background-cpu.js +212 -0
  53. package/dist/src/background-worker-error.d.ts +12 -0
  54. package/dist/src/background-worker-error.js +18 -0
  55. package/dist/src/branding.d.ts +24 -1
  56. package/dist/src/branding.js +31 -1
  57. package/dist/src/bridge.d.ts +233 -0
  58. package/dist/src/bridge.js +604 -0
  59. package/dist/src/byte-stream.d.ts +91 -0
  60. package/dist/src/byte-stream.js +385 -0
  61. package/dist/src/chunk-store.d.ts +41 -8
  62. package/dist/src/chunk-store.js +161 -65
  63. package/dist/src/cli.js +1698 -163
  64. package/dist/src/cloud.d.ts +841 -31
  65. package/dist/src/cloud.js +3196 -277
  66. package/dist/src/context-background.d.ts +37 -0
  67. package/dist/src/context-background.js +309 -0
  68. package/dist/src/context-drain-child.d.ts +1 -0
  69. package/dist/src/context-drain-child.js +98 -0
  70. package/dist/src/context-reader.d.ts +118 -0
  71. package/dist/src/context-reader.js +447 -0
  72. package/dist/src/control-plane/auth.d.ts +32 -4
  73. package/dist/src/control-plane/auth.js +85 -24
  74. package/dist/src/control-plane/server.js +19 -6
  75. package/dist/src/control-plane.d.ts +17 -1
  76. package/dist/src/control-plane.js +32 -6
  77. package/dist/src/crypto.d.ts +1 -1
  78. package/dist/src/crypto.js +5 -5
  79. package/dist/src/daemon-lease.d.ts +70 -0
  80. package/dist/src/daemon-lease.js +420 -0
  81. package/dist/src/daemon.d.ts +94 -1
  82. package/dist/src/daemon.js +1082 -105
  83. package/dist/src/darwin-service-policy.d.ts +41 -0
  84. package/dist/src/darwin-service-policy.js +60 -0
  85. package/dist/src/dashboard-cli.js +15 -15
  86. package/dist/src/device-authorization.d.ts +37 -0
  87. package/dist/src/device-authorization.js +199 -0
  88. package/dist/src/device-enrollment.d.ts +91 -0
  89. package/dist/src/device-enrollment.js +349 -0
  90. package/dist/src/disk.d.ts +17 -12
  91. package/dist/src/disk.js +43 -17
  92. package/dist/src/doctor.d.ts +35 -1
  93. package/dist/src/doctor.js +332 -41
  94. package/dist/src/durable-ticket-lock.d.ts +24 -0
  95. package/dist/src/durable-ticket-lock.js +232 -0
  96. package/dist/src/enroll.d.ts +1 -1
  97. package/dist/src/enroll.js +13 -7
  98. package/dist/src/env.d.ts +10 -1
  99. package/dist/src/env.js +11 -3
  100. package/dist/src/errors.d.ts +8 -8
  101. package/dist/src/errors.js +6 -6
  102. package/dist/src/flush.d.ts +12 -0
  103. package/dist/src/flush.js +37 -0
  104. package/dist/src/heartbeat.d.ts +86 -12
  105. package/dist/src/heartbeat.js +415 -29
  106. package/dist/src/index-background-watchdog.d.ts +1 -0
  107. package/dist/src/index-background-watchdog.js +94 -0
  108. package/dist/src/index-background-work.d.ts +21 -0
  109. package/dist/src/index-background-work.js +25 -0
  110. package/dist/src/index-background.d.ts +64 -0
  111. package/dist/src/index-background.js +394 -0
  112. package/dist/src/index-build-child.d.ts +1 -0
  113. package/dist/src/index-build-child.js +109 -0
  114. package/dist/src/index-manifest.d.ts +52 -0
  115. package/dist/src/index-manifest.js +444 -0
  116. package/dist/src/index-publication-proof.d.ts +84 -0
  117. package/dist/src/index-publication-proof.js +380 -0
  118. package/dist/src/index-publication-state.d.ts +149 -0
  119. package/dist/src/index-publication-state.js +696 -0
  120. package/dist/src/index-publication-verifier.d.ts +89 -0
  121. package/dist/src/index-publication-verifier.js +341 -0
  122. package/dist/src/index-publish.d.ts +62 -0
  123. package/dist/src/index-publish.js +540 -0
  124. package/dist/src/index-scratch-cleanup.d.ts +19 -0
  125. package/dist/src/index-scratch-cleanup.js +166 -0
  126. package/dist/src/index-segment-types.d.ts +132 -0
  127. package/dist/src/index-segment-types.js +21 -0
  128. package/dist/src/index-segments.d.ts +9 -0
  129. package/dist/src/index-segments.js +516 -0
  130. package/dist/src/index-store.d.ts +123 -0
  131. package/dist/src/index-store.js +495 -0
  132. package/dist/src/index-sync.d.ts +91 -15
  133. package/dist/src/index-sync.js +286 -53
  134. package/dist/src/index-upgrade-publication.d.ts +30 -0
  135. package/dist/src/index-upgrade-publication.js +179 -0
  136. package/dist/src/integration-manager.d.ts +32 -0
  137. package/dist/src/integration-manager.js +394 -0
  138. package/dist/src/leakscan.js +1 -1
  139. package/dist/src/local-api.d.ts +56 -15
  140. package/dist/src/local-api.js +4979 -541
  141. package/dist/src/machine-settings.d.ts +51 -0
  142. package/dist/src/machine-settings.js +166 -0
  143. package/dist/src/managed-chunks.d.ts +5 -2
  144. package/dist/src/managed-chunks.js +14 -14
  145. package/dist/src/mcp-install.d.ts +11 -9
  146. package/dist/src/mcp-install.js +73 -28
  147. package/dist/src/mcp-workspace.d.ts +18 -0
  148. package/dist/src/mcp-workspace.js +50 -0
  149. package/dist/src/mcp.js +294 -25
  150. package/dist/src/migrate.js +27 -21
  151. package/dist/src/notify.d.ts +1 -1
  152. package/dist/src/notify.js +5 -5
  153. package/dist/src/offload.d.ts +201 -14
  154. package/dist/src/offload.js +1848 -140
  155. package/dist/src/onboarding.d.ts +8 -1
  156. package/dist/src/onboarding.js +4 -4
  157. package/dist/src/packages.d.ts +2 -2
  158. package/dist/src/packages.js +10 -2
  159. package/dist/src/passkey.d.ts +0 -1
  160. package/dist/src/passkey.js +2 -7
  161. package/dist/src/password-lock.d.ts +2 -2
  162. package/dist/src/password-lock.js +6 -6
  163. package/dist/src/paths.d.ts +2 -0
  164. package/dist/src/paths.js +2 -0
  165. package/dist/src/presence.d.ts +86 -0
  166. package/dist/src/presence.js +240 -0
  167. package/dist/src/progress-deadline.d.ts +21 -0
  168. package/dist/src/progress-deadline.js +91 -0
  169. package/dist/src/project-repair.d.ts +55 -0
  170. package/dist/src/project-repair.js +131 -0
  171. package/dist/src/providers/gcs.d.ts +28 -7
  172. package/dist/src/providers/gcs.js +35 -24
  173. package/dist/src/providers/gdrive.d.ts +71 -8
  174. package/dist/src/providers/gdrive.js +223 -50
  175. package/dist/src/providers/index.d.ts +11 -3
  176. package/dist/src/providers/index.js +30 -10
  177. package/dist/src/providers/s3.d.ts +30 -8
  178. package/dist/src/providers/s3.js +41 -30
  179. package/dist/src/providers/safe-storage-fetch.d.ts +12 -0
  180. package/dist/src/providers/safe-storage-fetch.js +72 -0
  181. package/dist/src/queue.d.ts +136 -19
  182. package/dist/src/queue.js +862 -96
  183. package/dist/src/reclaim-transaction.d.ts +156 -0
  184. package/dist/src/reclaim-transaction.js +1027 -0
  185. package/dist/src/recovery-codes.d.ts +32 -0
  186. package/dist/src/recovery-codes.js +338 -0
  187. package/dist/src/recovery.js +12 -9
  188. package/dist/src/rehydrate.d.ts +25 -22
  189. package/dist/src/rehydrate.js +319 -23
  190. package/dist/src/restore.d.ts +57 -4
  191. package/dist/src/restore.js +272 -36
  192. package/dist/src/resume-stub.d.ts +92 -0
  193. package/dist/src/resume-stub.js +417 -0
  194. package/dist/src/retention.d.ts +98 -7
  195. package/dist/src/retention.js +1066 -62
  196. package/dist/src/rotate.js +3 -3
  197. package/dist/src/search.d.ts +566 -8
  198. package/dist/src/search.js +5940 -297
  199. package/dist/src/secrets.d.ts +51 -7
  200. package/dist/src/secrets.js +316 -24
  201. package/dist/src/service.d.ts +49 -11
  202. package/dist/src/service.js +776 -35
  203. package/dist/src/share.js +3 -3
  204. package/dist/src/shared-spaces.d.ts +98 -0
  205. package/dist/src/shared-spaces.js +214 -0
  206. package/dist/src/source-reader.d.ts +73 -0
  207. package/dist/src/source-reader.js +715 -0
  208. package/dist/src/spool.d.ts +1 -1
  209. package/dist/src/spool.js +1 -1
  210. package/dist/src/start-tui.js +2 -1
  211. package/dist/src/start.js +2 -2
  212. package/dist/src/storage-endpoint.d.ts +21 -0
  213. package/dist/src/storage-endpoint.js +122 -0
  214. package/dist/src/storage-setup.js +12 -12
  215. package/dist/src/storage-targets.d.ts +109 -6
  216. package/dist/src/storage-targets.js +975 -67
  217. package/dist/src/stream-to-cloud.d.ts +5 -1
  218. package/dist/src/stream-to-cloud.js +34 -14
  219. package/dist/src/sync-rules.d.ts +31 -6
  220. package/dist/src/sync-rules.js +153 -14
  221. package/dist/src/team-backfill-scheduling.d.ts +8 -0
  222. package/dist/src/team-backfill-scheduling.js +33 -0
  223. package/dist/src/team-backfill.d.ts +116 -0
  224. package/dist/src/team-backfill.js +1429 -0
  225. package/dist/src/team-index-cache.d.ts +16 -0
  226. package/dist/src/team-index-cache.js +152 -0
  227. package/dist/src/team-offboarding.d.ts +38 -0
  228. package/dist/src/team-offboarding.js +1043 -0
  229. package/dist/src/team-presence.d.ts +127 -0
  230. package/dist/src/team-presence.js +904 -0
  231. package/dist/src/team-publication-policy.d.ts +20 -0
  232. package/dist/src/team-publication-policy.js +140 -0
  233. package/dist/src/team-realtime.d.ts +68 -0
  234. package/dist/src/team-realtime.js +816 -0
  235. package/dist/src/team-source-facts-cache.d.ts +23 -0
  236. package/dist/src/team-source-facts-cache.js +255 -0
  237. package/dist/src/trash.d.ts +1 -1
  238. package/dist/src/trash.js +2 -2
  239. package/dist/src/tui.js +11 -12
  240. package/dist/src/types.d.ts +173 -7
  241. package/dist/src/types.js +20 -0
  242. package/dist/src/ui-server.d.ts +163 -35
  243. package/dist/src/ui-server.js +712 -72
  244. package/dist/src/ui.d.ts +1 -2
  245. package/dist/src/ui.js +1 -2
  246. package/dist/src/upload.d.ts +27 -0
  247. package/dist/src/upload.js +383 -43
  248. package/dist/src/vault.d.ts +226 -30
  249. package/dist/src/vault.js +1776 -192
  250. package/dist/src/watcher.d.ts +7 -1
  251. package/dist/src/watcher.js +198 -55
  252. package/dist/src/worker.d.ts +27 -3
  253. package/dist/src/worker.js +274 -55
  254. package/package.json +33 -12
  255. package/scripts/native-reboot-rehearsal.mjs +90 -0
  256. package/web/app.js +6032 -343
  257. package/web/bootstrap.js +17 -0
  258. package/web/index.html +255 -57
  259. package/web/rail.js +317 -40
  260. package/web/retention.html +2 -2
  261. package/web/rules-view.js +188 -16
  262. package/web/sessions-view.js +485 -62
  263. package/web/sessions.html +2 -2
  264. package/web/setup-api.js +152 -29
  265. package/web/setup-logic.js +68 -9
  266. package/web/setup.html +113 -44
  267. package/web/setup.js +604 -71
  268. package/web/style.css +513 -98
  269. package/dist/packages/vaultline-crypto/src/chunk-access.js +0 -93
  270. /package/dist/packages/{vaultline-crypto → sealkeep-crypto}/src/aead.d.ts +0 -0
  271. /package/dist/packages/{vaultline-crypto → sealkeep-crypto}/src/aead.js +0 -0
  272. /package/dist/packages/{vaultline-crypto → sealkeep-crypto}/src/format.js +0 -0
  273. /package/dist/packages/{vaultline-crypto → sealkeep-crypto}/src/sha256-stream.d.ts +0 -0
  274. /package/dist/packages/{vaultline-crypto → sealkeep-crypto}/src/sha256-stream.js +0 -0
@@ -0,0 +1 @@
1
+ /*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.grow{flex-grow:1}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{color-scheme:dark;--paper:#161311;--card:#1e1a17;--ink:#f0ede6;--soft:#9a948a;--muted:#6e6960;--rule:#2e2a24;--rule-soft:#262220;--seal:#100e0b;--seal-ink:#e8c793;--live:#e3a455;--live-soft:#30261a;--verified:#4cbf7a;--verified-soft:#192820;--warn:#e06c4f;--warn-bg:#33201a;--sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,system-ui,"Helvetica Neue",sans-serif;--mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,"DejaVu Sans Mono",Consolas,monospace}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--paper);color:var(--ink);font:14px/1.55 var(--sans);-webkit-font-smoothing:antialiased}.app-shell{background:radial-gradient(1000px 480px at 56% -150px,var(--live),var(--paper) 64%);min-height:100vh;display:flex}@supports (color:color-mix(in lab,red,red)){.app-shell{background:radial-gradient(1000px 480px at 56% -150px,color-mix(in srgb,var(--live) 7%,var(--paper)),var(--paper) 64%)}}.rail{border-right:1px solid var(--rule);background:var(--card);flex-direction:column;flex:0 0 246px;gap:22px;width:246px;min-height:100vh;padding:30px 16px 24px;display:flex;position:relative}.brand{color:var(--ink);font:700 21px/1 var(--mono);letter-spacing:-.03em;padding:0 12px}.brand span{color:var(--live);margin-right:6px}.mode-nav{border-bottom:1px solid var(--rule);gap:4px;padding-bottom:18px;display:grid}.mode-nav button{width:100%;color:var(--soft);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:4px;grid-template-columns:22px 1fr;align-items:center;gap:8px;padding:10px 11px;display:grid}.mode-nav button>span:first-child{color:var(--muted);font:15px var(--mono)}.mode-nav button>span:last-child{gap:2px;display:grid}.mode-nav button b{color:inherit;font:600 12px var(--sans)}.mode-nav button small{color:var(--muted);font:8px var(--mono)}.mode-nav button:hover{color:var(--ink);background:#24201c}.mode-nav button.active{color:var(--ink);background:#29231d;border-color:#4e4030}.mode-nav button.active>span:first-child,.mode-nav button.active small{color:var(--live)}.rail-status{border:1px solid var(--rule);color:var(--soft);font:10px var(--mono);border-radius:4px;align-items:center;gap:8px;margin:0 12px -10px;padding:8px 10px;display:flex}.rail-status i{background:var(--live);border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 3px #e3a4551a}.rail nav{gap:2px;display:grid}.rail-step{color:var(--soft);font:500 13px/1.25 var(--mono);border-radius:5px;align-items:center;gap:10px;padding:11px 14px;transition:background .25s,color .25s;display:flex}.rail-step span{width:20px;color:var(--muted);font-size:10px}.rail-step b{font-weight:500}.rail-step.active{color:var(--ink);background:#29231d}.rail-step.active span{color:var(--live)}.rail-step.active b{font-weight:700}.rail-step.done span{color:var(--verified)}.rail-facts{border-top:1px solid var(--rule);color:var(--soft);margin-top:auto;padding:18px 12px 0;font-size:12px;line-height:1.6}.rail-facts p{margin:0 0 17px}.rail-facts b{color:var(--ink);margin-bottom:3px;font-weight:600;display:block}main{flex:1;grid-template-rows:auto auto minmax(590px,1fr) auto;min-width:0;min-height:100vh;padding:34px 40px 20px;display:grid;overflow:hidden}.page-header{justify-content:space-between;align-items:flex-start;gap:28px;display:flex}.page-kicker{color:var(--live);font:600 9px var(--mono);letter-spacing:.08em;text-transform:uppercase;margin-bottom:7px;display:block}.page-header h1{color:var(--ink);font:700 clamp(24px,2.35vw,32px)/1.14 var(--mono);letter-spacing:-.04em;margin:0 0 7px}.page-header p{max-width:760px;color:var(--soft);margin:0;font-size:14px}.live-status{border:1px solid var(--rule);background:var(--card);max-width:290px;color:var(--soft);font:600 11px/1.35 var(--mono);border-radius:4px;align-items:center;gap:9px;padding:9px 12px;display:flex}.live-status i{background:var(--live);border-radius:50%;flex:none;width:7px;height:7px;box-shadow:0 0 0 4px #e3a45514}.live-status.warn{background:var(--warn-bg);color:#efa08c;border-color:#60392d}.live-status.warn i{background:var(--warn)}.live-status.ok{background:var(--verified-soft);color:#83d8a5;border-color:#2f6546}.live-status.ok i{background:var(--verified)}.boundary{color:var(--muted);font:11px var(--mono);align-items:center;gap:14px;margin:18px 0 8px;display:flex}.boundary:before,.boundary:after{content:"";background:linear-gradient(90deg,transparent,var(--rule) 20%,var(--rule) 80%,transparent);flex:1;height:1px}.boundary b{color:var(--live);white-space:nowrap;font-weight:600}.boundary span{white-space:nowrap}.boundary .sealed{color:var(--soft)}.story-surface{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);background:radial-gradient(700px 300px at 50% 48%,#e3a45508,#0000 72%);min-height:590px;position:relative;overflow:hidden}.mode-scene{position:absolute;top:0;right:0;bottom:0;left:0}.story-footer{border-bottom:1px solid var(--rule);min-height:46px;color:var(--muted);font:11px var(--mono);grid-template-columns:repeat(4,1fr);display:grid}.story-footer span{border-right:1px solid var(--rule);align-items:center;padding:0 14px;display:flex}.story-footer span:first-child{padding-left:0}.story-footer span:last-child{border:0}.panel-title{border-bottom:1px solid var(--rule);color:var(--soft);font:600 10px/1 var(--mono);letter-spacing:.02em;justify-content:space-between;align-items:center;gap:12px;padding:11px 13px;display:flex}.panel-title span{color:var(--ink)}.panel-title b{color:var(--muted);align-items:center;gap:5px;font-weight:500;display:flex}.window-bar{border-bottom:1px solid var(--rule);height:34px;color:var(--muted);font:10px var(--mono);background:#25211d;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 12px;display:grid}.window-bar>b{color:var(--ink);font:600 11px var(--sans)}.window-bar>span:last-child{text-align:right}.traffic{gap:6px;display:flex}.traffic i{background:#ff5f57;border-radius:50%;width:8px;height:8px;display:block}.traffic i:nth-child(2){background:#febc2e}.traffic i:nth-child(3){background:#28c840}.collect-scene{position:absolute;top:0;right:0;bottom:0;left:0}.storage-window{background:var(--card);border:1px solid #3c3730;border-radius:4px;width:min(650px,55%);position:absolute;top:52%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 24px 55px #00000040}.storage-window.pressure{border-color:#784333;box-shadow:0 24px 55px #00000047,0 0 30px #e06c4f0f}.storage-window.healthy{border-color:#315d43}.storage-body{padding:18px}.storage-heading{justify-content:space-between;align-items:flex-end;gap:18px;display:flex}.storage-heading div span{color:var(--soft);margin-bottom:3px;font-size:11px;display:block}.storage-heading div b{color:var(--ink);font:700 18px var(--sans);display:block}.storage-heading strong{border:1px solid var(--rule);background:var(--seal);color:var(--soft);font:700 13px var(--mono);border-radius:3px;padding:5px 9px}.pressure .storage-heading strong{background:var(--warn-bg);color:#f19680;border-color:#724132}.healthy .storage-heading strong{background:var(--verified-soft);color:#7dd09d;border-color:#315d43}.storage-meter{background:var(--seal);border:1px solid #3c3730;border-radius:3px;width:100%;height:22px;margin:14px 0 13px;display:flex;overflow:hidden}.storage-meter i{height:100%;transition:width .7s;display:block}.storage-meter .blue{background:#5b86a5}.storage-meter .purple{background:#93639b}.storage-meter .amber{background:#c6914c}.storage-meter .gray{background:#75716b}.storage-meter .slate{background:#656c70}.storage-meter .agent{background:var(--warn)}.storage-meter .free{background:#292622;flex:1}.storage-groups{grid-template-columns:repeat(3,1fr);gap:7px 14px;display:grid}.storage-group{color:var(--soft);grid-template-columns:8px 1fr auto;align-items:center;gap:7px;font-size:10px;display:grid}.storage-group i{background:#777;border-radius:2px;width:7px;height:7px}.storage-group b{color:var(--soft);font:500 9px var(--mono)}.storage-group.blue i{background:#5b86a5}.storage-group.purple i{background:#93639b}.storage-group.amber i{background:#c6914c}.storage-group.gray i{background:#75716b}.storage-group.slate i{background:#656c70}.storage-group.agent{background:var(--warn-bg);color:#f1957e;border:1px solid #704234;border-radius:3px;padding:3px 5px}.storage-group.agent i{background:var(--warn)}.storage-group.agent b{color:#f1957e}.healthy .storage-group.agent{background:var(--verified-soft);color:#7dd09d;border-color:#315d43}.healthy .storage-group.agent i{background:var(--verified)}.healthy .storage-group.agent b{color:#7dd09d}.storage-message{border:1px solid var(--rule);background:var(--seal);color:var(--soft);border-radius:3px;grid-template-columns:7px 1fr auto;align-items:center;gap:8px;margin-top:13px;padding:8px 10px;font-size:10px;display:grid}.storage-message i{background:var(--live);border-radius:50%;width:7px;height:7px}.storage-message b{color:var(--ink);font:600 10px var(--mono)}.pressure .storage-message{background:var(--warn-bg);color:#f1957e;border-color:#704234}.pressure .storage-message i{background:var(--warn)}.healthy .storage-message{background:var(--verified-soft);color:#7dd09d;border-color:#315d43}.healthy .storage-message i{background:var(--verified)}.session-ledger{border:1px solid var(--rule);background:var(--card);border-radius:4px;width:235px;position:absolute;top:50%;right:1.5%;overflow:hidden;transform:translateY(-50%);box-shadow:0 18px 42px #00000038}.ledger-list{gap:3px;padding:8px;display:grid}.ledger-row{color:#514c45;min-height:25px;font:9px var(--mono);border:1px solid #0000;border-radius:3px;grid-template-columns:22px 1fr auto;align-items:center;gap:7px;padding:3px 5px;display:grid}.ledger-row i{color:#5f5950;background:#25211d;border-radius:3px;place-items:center;width:18px;height:18px;font-style:normal;display:grid}.ledger-row b{font-weight:500}.ledger-row.landed{background:var(--warn-bg);color:#e88c75;border-color:#5f392d}.ledger-row.landed i{background:var(--warn);color:#1a1210}.arrival-token{z-index:8;min-width:175px;color:var(--live);background:#2a2118;border:1px solid #936d3d;border-radius:4px;align-items:center;gap:10px;padding:10px 12px;display:flex;position:absolute;top:46%;left:50%;box-shadow:0 16px 35px #00000047}.arrival-token div{display:grid}.arrival-token span{color:var(--ink);font:600 10px var(--mono)}.arrival-token b{color:var(--live);font:500 9px var(--mono)}.pressure-note{border-left:2px solid var(--warn);background:var(--warn-bg);color:#efa08c;gap:3px;padding:13px 15px;display:grid;position:absolute;top:14%;left:3%}.pressure-note b{font:700 22px var(--mono)}.pressure-note span{font-size:11px}.install-scene{place-items:center;display:grid;position:absolute;top:0;right:0;bottom:0;left:0}.terminal-window{background:var(--card);border:1px solid #3c3730;border-radius:4px;overflow:hidden;box-shadow:0 26px 60px #00000047}.install-terminal{width:min(720px,72%);margin-top:-24px}.install-body{background:var(--seal);min-height:300px;font:12px/1.7 var(--mono);padding:28px}.command-line{color:var(--ink);gap:10px;display:flex}.command-line span{color:var(--live)}.command-line code{white-space:nowrap}.install-output{color:var(--soft);gap:8px;margin-top:24px;display:grid}.install-output b{color:var(--verified)}.install-meter{background:var(--rule);height:4px;margin-top:10px}.install-meter i{background:var(--live);height:100%;display:block}.install-done{background:var(--verified-soft);color:#78ce9a;border:1px solid #315d43;border-radius:3px;align-items:center;gap:10px;margin-top:24px;padding:11px 12px;display:flex}.install-done>svg{background:var(--verified);color:#132018;border-radius:50%;padding:2px}.install-done span{display:grid}.install-done b{font-weight:700}.install-flow{color:var(--muted);font:10px var(--mono);align-items:center;gap:10px;display:flex;position:absolute;bottom:9%;left:50%;transform:translate(-50%)}.install-flow i{border-top:1px dashed #66533b;width:120px}.install-flow span:last-child{color:var(--live)}.preserve-scene{position:absolute;top:0;right:0;bottom:0;left:0}.preserve-left{width:31%;position:absolute;top:12%;left:1%}.preserve-left .storage-window{width:100%;position:relative;top:auto;left:auto;transform:none}.installed-stamp{background:var(--live-soft);color:var(--live);font:600 9px var(--mono);border:1px solid #6d5333;border-radius:3px;align-items:center;gap:7px;margin:0 0 10px 5px;padding:7px 9px;display:inline-flex}.installed-stamp.ok{background:var(--verified-soft);color:#7dd09d;border-color:#315d43}.preserve-left .storage-heading div b{font-size:14px}.preserve-left .storage-body{padding:13px}.preserve-left .storage-groups{grid-template-columns:1fr 1fr}.preserve-left .storage-meter{height:18px;margin:10px 0}.preserve-left .storage-group,.preserve-left .storage-message,.preserve-left .storage-message b{font-size:8px}.preserve-queue{border:1px solid var(--rule);background:var(--card);border-radius:4px;width:35%;position:absolute;top:17%;left:34%;overflow:hidden;box-shadow:0 16px 38px #0000002e}.queue-grid{grid-template-columns:1fr 1fr;gap:4px;padding:8px;display:grid}.queue-row{border:1px solid var(--rule-soft);background:var(--seal);min-height:27px;color:var(--muted);font:8px var(--mono);border-radius:3px;grid-template-columns:20px 1fr auto;align-items:center;gap:6px;padding:3px 5px;display:grid}.queue-row i{width:18px;height:18px;color:var(--soft);background:#28231f;border-radius:3px;place-items:center;font-style:normal;display:grid}.queue-row b{font-weight:500}.queue-row.active{background:var(--live-soft);color:var(--seal-ink);border-color:#785e3b}.queue-row.active i{background:var(--live);color:#21170d}.queue-row.verified{background:var(--verified-soft);color:#7dd09d;border-color:#315d43}.queue-row.verified i{background:var(--verified);color:#132018}.memory-pool{border:1px solid var(--rule);background:var(--card);border-radius:4px;width:26%;min-height:256px;position:absolute;top:17%;right:1%;box-shadow:0 16px 38px #0003}.pool-cloud{color:#6d5436;position:absolute;top:-24px;right:10px}.pool-grid{grid-template-columns:1fr 1fr;gap:4px;padding:8px;display:grid}.pool-object{border:1px dashed var(--rule);color:#49443e;min-height:34px;font:8px var(--mono);border-radius:3px;grid-template-columns:14px 1fr;align-items:center;padding:4px 5px;display:grid}.pool-object svg{color:#4b453e}.pool-object b{color:#4b453e;grid-column:2;font-weight:500}.pool-object.stored{background:var(--verified-soft);color:#7dd09d;border-style:solid;border-color:#315d43}.pool-object.stored svg,.pool-object.stored b{color:#7dd09d}.pool-total{border-top:1px solid var(--rule);color:var(--muted);font:8px var(--mono);justify-content:space-between;margin:0 8px;padding:8px 4px;display:flex}.pool-total b{color:var(--live)}.pipeline{border:1px solid var(--rule);background:var(--card);border-radius:4px;padding:11px;position:absolute;bottom:8%;left:34%;right:28%;box-shadow:0 16px 38px #0003}.pipeline-head{color:var(--live);font:600 9px var(--mono);justify-content:space-between;margin-bottom:9px;display:flex}.pipeline-head b{color:var(--muted);font-weight:500}.pipeline-stages{grid-template-columns:repeat(5,1fr);gap:5px;display:grid;position:relative}.pipeline-stages:before{content:"";border-top:1px solid #4b4135;position:absolute;top:14px;left:7%;right:7%}.pipeline-stage{z-index:1;border:1px solid var(--rule);background:var(--seal);color:var(--muted);font:7px var(--mono);text-transform:uppercase;border-radius:3px;justify-items:center;gap:4px;padding:6px 3px;display:grid;position:relative}.pipeline-stage i{width:27px;height:27px;color:var(--soft);font:normal 13px var(--mono);background:#27231f;border-radius:3px;place-items:center;display:grid}.pipeline-stage.active{background:var(--live-soft);color:var(--seal-ink);border-color:#7c603a}.pipeline-stage.active i{background:var(--live);color:#21170d}.pipeline-stage.done{background:var(--verified-soft);color:#7dd09d;border-color:#315d43}.pipeline-stage.done i{background:var(--verified);color:#132018}.transfer-line{color:var(--soft);font:8px var(--mono);background:#12100e;border-radius:3px;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;margin-top:8px;padding:6px 8px;display:grid}.transfer-line>div{gap:3px;display:flex}.transfer-line>div i{background:#3b352e;border-radius:2px;width:6px;height:6px}.transfer-line>div i.lit{background:var(--live);box-shadow:0 0 8px #e3a45559}.transfer-line b{color:var(--live);text-transform:capitalize;font-weight:500}.pipeline.batching .pipeline-stages{opacity:.45}.pipeline.batching .transfer-line{background:linear-gradient(90deg,#12100e,#2b2117,#12100e) 0 0/200% 100%;animation:1s linear infinite batch}@keyframes batch{to{background-position:-200% 0}}.memory-packet{z-index:12;color:var(--seal-ink);font:8px var(--mono);background:#2a2118;border:1px solid #84663e;border-radius:3px;align-items:center;gap:5px;padding:6px 8px;display:flex;position:absolute;top:48%;transform:translate(-50%,-50%);box-shadow:0 8px 18px #00000040}.complete-message{border-left:2px solid var(--verified);background:var(--verified-soft);color:#7dd09d;align-items:center;gap:10px;padding:12px 14px;display:flex;position:absolute;bottom:12%;left:42%}.complete-message span{font-size:10px;display:grid}.complete-message b{color:#9ce0b6;font:600 11px var(--mono)}.search-scene{position:absolute;top:0;right:0;bottom:0;left:0}.codex-window{width:49%;height:410px;position:absolute;top:50%;left:1.5%;transform:translateY(-50%)}.codex-body{background:var(--seal);height:calc(100% - 34px);font:10px/1.55 var(--mono);grid-template-rows:1fr auto auto auto;display:grid}.codex-output{align-content:start;gap:14px;padding:18px;display:grid}.prompt{color:var(--ink);gap:9px;display:flex}.prompt i{color:var(--verified);font-style:normal;font-weight:700}.tool-call{gap:3px;display:grid}.tool-call b{color:var(--ink)}.tool-call code{color:var(--live);white-space:normal;padding-left:13px}.memory-result{border-left:1px solid #315d43;gap:3px;padding-left:13px;display:grid}.memory-result>b{color:var(--verified)}.memory-result strong{color:var(--ink)}.memory-result p{max-width:560px;color:var(--soft);margin:0}.codex-status{color:var(--soft);align-items:center;gap:7px;padding:0 18px 8px;display:flex}.codex-status i{background:var(--live);border-radius:50%;width:6px;height:6px}.codex-status i.ok{background:var(--verified)}.codex-input{color:#625d56;background:#25211d;border-radius:3px;margin:0 14px;padding:9px 11px}.codex-footer{color:#625d56;justify-content:space-between;padding:7px 14px 8px;font-size:8px;display:flex}.mcp-node{z-index:4;justify-items:center;gap:5px;display:grid;position:absolute;top:50%;left:58%;transform:translate(-50%,-50%)}.mcp-node>div{background:var(--card);width:68px;height:68px;color:var(--muted);border:1px solid #4e4539;border-radius:4px;place-items:center;display:grid;box-shadow:0 12px 28px #0000003d}.mcp-node>div span{display:grid}.mcp-node>b{border:1px solid var(--rule);background:var(--card);color:var(--soft);font:600 8px var(--mono);border-radius:3px;padding:4px 7px}.mcp-node small{color:var(--muted);font:7px var(--mono)}.mcp-node.active>div{color:var(--live);border-color:#84663e;box-shadow:0 0 0 4px #e3a4550d,0 12px 28px #0000003d}.mcp-node.active>b{color:var(--live);border-color:#6b5233}.search-pool{border:1px solid var(--rule);background:var(--card);border-radius:4px;width:31%;position:absolute;top:50%;right:1%;overflow:hidden;transform:translateY(-50%);box-shadow:0 18px 42px #00000038}.archive-rows{display:grid}.archive-row{border-bottom:1px solid var(--rule-soft);min-height:45px;color:var(--muted);font:9px var(--mono);grid-template-columns:92px 1fr auto;align-items:center;gap:8px;padding:0 13px;display:grid}.archive-row:last-child{border:0}.archive-row b{color:var(--soft)}.archive-row i{font-style:normal}.archive-row.scanning{background:var(--live-soft);color:var(--seal-ink)}.archive-row.scanning b{color:var(--live)}.archive-row.selected{box-shadow:inset 3px 0 0 var(--verified);background:var(--verified-soft);color:#8ad8a8}.archive-row.selected b{color:#9de0b7}.return-packet{z-index:9;background:var(--verified-soft);color:#8ad8a8;font:8px var(--mono);border:1px solid #3c7450;border-radius:3px;align-items:center;gap:6px;padding:6px 8px;display:flex;position:absolute;transform:translate(-50%,-50%);box-shadow:0 8px 22px #0000003d}.continue-scene{position:absolute;top:0;right:0;bottom:0;left:0}.device-card{background:var(--card);border:1px solid #3c3730;border-radius:4px;width:31.5%;height:342px;transition:opacity .35s,border-color .35s;position:absolute;top:50%;overflow:hidden;transform:translateY(-50%);box-shadow:0 22px 50px #00000040}.device-card.work{left:1.5%}.device-card.home{right:1.5%}.device-card.dimmed{opacity:.34}.device-head{border-bottom:1px solid var(--rule);background:#25211d;justify-content:space-between;align-items:center;height:38px;padding:0 12px;display:flex}.device-head>span{color:var(--ink);font:600 11px var(--sans);align-items:center;gap:7px;display:flex}.device-head>span svg{color:var(--soft)}.device-head>b{border:1px solid var(--rule);color:var(--live);font:600 8px var(--mono);border-radius:3px;padding:4px 6px}.device-screen{background:var(--seal);height:calc(100% - 67px);font:9px/1.55 var(--mono);padding:14px;position:relative}.device-project{border-bottom:1px solid var(--rule);color:var(--soft);align-items:center;gap:7px;padding-bottom:10px;display:flex}.device-project i{background:var(--verified);border-radius:50%;width:6px;height:6px}.session-summary{border-left:2px solid var(--live);background:var(--live-soft);gap:5px;margin-top:34px;padding:13px;display:grid}.session-summary b{color:var(--ink);font-size:11px}.session-summary p{color:var(--seal-ink);margin:0}.session-summary span{color:var(--soft)}.device-event{color:var(--soft);align-items:center;gap:7px;display:flex;position:absolute;bottom:14px;left:14px;right:14px}.device-event>svg{color:var(--verified)}.device-event>i{background:var(--live);border-radius:50%;width:6px;height:6px}.device-event>i.ok{background:var(--verified)}.device-foot{height:29px;color:var(--muted);font:7px var(--mono);justify-content:space-between;align-items:center;padding:0 12px;display:flex}.device-empty{height:155px;color:var(--muted);place-content:center;justify-items:center;gap:9px;display:grid}.claude-prompt{color:var(--ink);gap:7px;margin:14px 0;display:flex}.claude-prompt i{color:var(--verified);font-style:normal}.local-mcp{background:var(--live-soft);color:var(--live);border:1px solid #5b4933;border-radius:3px;align-items:center;gap:9px;padding:9px;display:flex}.local-mcp>i{font-style:normal;display:grid}.local-mcp>span{color:var(--soft);display:grid}.local-mcp b{color:var(--ink);font-size:9px}.context-result{background:var(--verified-soft);color:#91d9aa;border:1px solid #315d43;border-radius:3px;gap:5px;margin-top:12px;padding:10px;display:grid}.context-result b{color:#a5e4bc;align-items:center;gap:5px;display:flex}.context-result span{color:#75bc91;padding-left:17px;font-size:8px}.handoff-pool{border:1px solid var(--rule);background:var(--card);border-radius:4px;width:25%;min-width:210px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 18px 42px #00000038}.handoff-cloud{background:var(--card);width:48px;height:48px;color:var(--live);border:1px solid #4e4030;border-radius:50%;place-items:center;display:grid;position:absolute;top:-38px;left:50%;transform:translate(-50%)}.handoff-object{border:1px dashed var(--rule);color:var(--muted);font:8px var(--mono);border-radius:3px;grid-template-columns:18px 1fr auto;align-items:center;gap:8px;margin:12px;padding:12px;display:grid}.handoff-object>div{gap:2px;display:grid}.handoff-object b{color:var(--soft);font-size:9px}.handoff-object i{font-style:normal}.handoff-object.stored{background:var(--verified-soft);color:#83ce9f;border-style:solid;border-color:#315d43}.handoff-object.stored b{color:#9bdeb3}.pool-meta{color:var(--muted);font:7px var(--mono);justify-content:space-between;padding:0 12px 11px;display:flex}.handoff-packet,.team-packet{z-index:12;color:var(--seal-ink);font:8px var(--mono);background:#2a2118;border:1px solid #80623b;border-radius:3px;align-items:center;gap:5px;padding:7px 9px;display:flex;position:absolute;transform:translate(-50%,-50%);box-shadow:0 10px 24px #0000004d}.handoff-packet.inbound{background:var(--verified-soft);color:#8fd9aa;border-color:#3c7450}.continue-note{color:var(--muted);font:8px var(--mono);align-items:center;gap:8px;display:flex;position:absolute;bottom:5%;left:50%;transform:translate(-50%)}.continue-note b{color:var(--ink)}.continue-note i{background:var(--rule);width:1px;height:14px}.team-scene{position:absolute;top:0;right:0;bottom:0;left:0}.team-workstation{background:var(--card);border:1px solid #3c3730;border-radius:4px;width:28%;height:235px;transition:opacity .35s,border-color .35s;position:absolute;overflow:hidden;box-shadow:0 20px 46px #0000003d}.team-workstation.member-paul{top:50%;left:1.5%;transform:translateY(-50%)}.team-workstation.member-max{top:7%;right:1.5%}.team-workstation.member-ana{bottom:7%;right:1.5%}.team-workstation.waiting{opacity:.18}.team-workstation.removed{opacity:.38;border-color:#51372e}.team-device-body{background:var(--seal);height:calc(100% - 67px);font:8px/1.45 var(--mono);padding:10px 11px;position:relative}.team-person{grid-template-columns:26px 1fr;align-items:center;gap:8px;margin-bottom:8px;display:grid}.team-person>span{background:var(--live-soft);width:25px;height:25px;color:var(--live);font:700 10px var(--mono);border-radius:3px;place-items:center;display:grid}.team-person>div{display:grid}.team-person b{color:var(--ink);font-size:9px}.team-person small{color:var(--muted);font-size:7px}.personal-vault{border:1px solid var(--rule);background:#12100e;border-radius:3px;overflow:hidden}.personal-vault>div{border-bottom:1px solid var(--rule);color:var(--muted);grid-template-columns:13px 1fr auto;align-items:center;gap:5px;padding:6px 7px;display:grid}.personal-vault>div b{color:var(--soft);font-size:8px}.personal-vault p{border-bottom:1px solid var(--rule-soft);color:var(--soft);grid-template-columns:6px 1fr auto;align-items:center;gap:5px;margin:0;padding:5px 7px;display:grid}.personal-vault p:last-child{border:0}.personal-vault p>i{background:#6b655d;border-radius:1px;width:5px;height:5px}.personal-vault p>b{color:var(--muted);font:500 7px var(--mono)}.personal-vault p.shared{background:var(--verified-soft);color:#8ed7a8}.personal-vault p.shared>i{background:var(--verified)}.personal-vault p.shared>b{color:var(--verified)}.team-machine-action{color:var(--soft);align-items:center;gap:6px;margin-top:8px;display:flex}.team-machine-action>i{background:var(--verified);border-radius:50%;width:6px;height:6px}.team-machine-action>i.off{background:var(--warn)}.team-mcp-action{background:var(--live-soft);color:var(--live);border:1px solid #6f5535;border-radius:3px;align-items:center;gap:7px;margin-top:7px;padding:6px 7px;display:flex}.team-mcp-action>i{font-style:normal;display:grid}.team-mcp-action>span{color:var(--soft);font-size:7px;display:grid}.team-mcp-action b{color:var(--ink);font-size:8px}.common-vault{border:1px solid var(--rule);background:var(--card);border-radius:4px;width:32%;min-height:330px;transition:opacity .35s,border-color .35s;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 22px 50px #00000042}.common-vault-head{border-bottom:1px solid var(--rule);background:#25211d;justify-content:space-between;align-items:center;height:40px;padding:0 12px;display:flex}.common-vault-head>span{color:var(--ink);font:600 10px var(--mono);align-items:center;gap:7px;display:flex}.common-vault-head>span svg{color:var(--live)}.common-vault-head>i{color:var(--live);font:500 8px var(--mono)}.common-members{border-bottom:1px solid var(--rule);align-items:center;padding:10px 12px;display:flex}.common-members>span{border:2px solid var(--card);background:var(--live-soft);width:25px;height:25px;color:var(--live);font:700 8px var(--mono);border-radius:50%;place-items:center;margin-right:-4px;display:grid}.common-members>span.removed{filter:grayscale()}.common-members>b{color:var(--soft);font:500 8px var(--mono);margin-left:auto}.shared-memory-rows{padding:7px;display:grid}.shared-memory-rows>div{border-bottom:1px solid var(--rule-soft);opacity:.22;min-height:48px;font:8px var(--mono);grid-template-columns:23px 1fr auto;align-items:center;gap:7px;padding:5px 6px;display:grid}.shared-memory-rows>div:last-child{border:0}.shared-memory-rows>div>i{width:21px;height:21px;color:var(--muted);background:#2a2521;border-radius:3px;place-items:center;font-style:normal;display:grid}.shared-memory-rows>div>span{display:grid}.shared-memory-rows>div b{color:var(--soft)}.shared-memory-rows>div small{color:var(--muted);font-size:7px}.shared-memory-rows>div em{color:var(--muted);font:normal 7px var(--mono)}.shared-memory-rows>div.ready{opacity:1;background:var(--verified-soft)}.shared-memory-rows>div.ready>i{background:var(--verified);color:#132018}.shared-memory-rows>div.ready b,.shared-memory-rows>div.ready em{color:#86d3a3}.common-access{border-left:2px solid var(--live);background:var(--live-soft);color:var(--live);align-items:center;gap:8px;margin:0 8px 8px;padding:7px 8px;display:flex}.common-access>span{color:var(--soft);font:7px var(--mono);display:grid}.common-access b{color:var(--ink);font-size:8px}.team-packet.search-result{background:var(--verified-soft);color:#8fd9aa;border-color:#3c7450}.team-legend{color:var(--muted);font:7px var(--mono);white-space:nowrap;align-items:center;gap:10px;display:flex;position:absolute;bottom:1.8%;left:50%;transform:translate(-50%)}.team-legend span{align-items:center;gap:5px;display:flex}.team-legend i{background:var(--rule);width:1px;height:12px}.team-legend b{color:var(--ink)}.team-workstation{height:245px}.team-workstation.member-ann{top:7%;right:1.5%}.team-workstation.member-max{top:auto;bottom:7%;right:1.5%}.team-tui-line{border-left:1px solid var(--verified);color:var(--soft);font:7px var(--mono);background:#14120f;align-items:center;gap:6px;margin:-2px 0 7px;padding:5px 7px;display:flex}.team-tui-line i{color:var(--verified);font-style:normal;font-weight:700}.common-vault.waiting{opacity:.3}.common-vault.waiting>*{visibility:hidden}.common-vault.waiting:after{content:"No shared project yet\aPaul decides what becomes shared";color:var(--soft);font:8px/1.8 var(--mono);text-align:center;white-space:pre;place-content:center;display:grid;position:absolute;top:0;right:0;bottom:0;left:0}.team-workstation{width:30%;height:275px}.team-workstation.member-ann{top:3%}.team-workstation.member-max{bottom:3%}.team-device-body{font-size:9px}.team-person{margin-bottom:7px}.team-person>span{width:29px;height:29px;font-size:11px}.team-person b{font-size:11px}.team-person small{font-size:8px}.team-tui-line{padding:6px 8px;font-size:9px}.personal-vault>div{padding:7px 8px}.personal-vault>div b{font-size:9px}.personal-vault>div span{font-size:8px}.personal-vault p{padding:6px 8px;font-size:9px}.personal-vault p>b,.team-machine-action{font-size:8px}.common-vault{width:34%;min-height:365px}.common-vault-head>span{font-size:11px}.common-vault-head>i,.common-members>b{font-size:9px}.shared-memory-rows>div{min-height:53px;font-size:9px}.shared-memory-rows>div small,.shared-memory-rows>div em{font-size:8px}.common-access{padding:9px 10px}.common-access>span{font-size:8px}.common-access b{font-size:10px}.member-change{background:radial-gradient(260px 120px at 50% 40%,#e3a45514,#0000 72%);gap:10px;min-height:205px;padding:13px;display:grid}.member-change-head{border-left:2px solid var(--live);background:var(--live-soft);color:var(--live);align-items:center;gap:10px;padding:10px;display:flex}.member-change-head>span{display:grid}.member-change-head small{color:var(--live);font:7px var(--mono);letter-spacing:.08em}.member-change-head b{color:var(--ink);font:600 10px var(--mono)}.member-change-people{grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;display:grid}.member-change-people>span{border:1px solid var(--rule);background:var(--seal);border-radius:3px;grid-template-columns:28px 1fr;align-items:center;gap:1px 7px;padding:8px;display:grid}.member-change-people>span>i{background:var(--live-soft);width:27px;height:27px;color:var(--live);font:700 10px var(--mono);border-radius:3px;grid-row:1/3;place-items:center;display:grid}.member-change-people>span>b{color:var(--ink);font:600 9px var(--mono)}.member-change-people>span>small{color:var(--muted);font:7px var(--mono)}.member-change-people>em{color:var(--live);font:normal 7px var(--mono)}.member-permissions{grid-template-columns:repeat(3,1fr);gap:4px;display:grid}.member-permissions span{background:var(--verified-soft);color:#85d4a2;font:7px var(--mono);text-align:center;border:1px solid #315d43;border-radius:3px;padding:7px 4px}.member-grant-packet{z-index:15;background:var(--verified-soft);color:var(--verified);font:8px var(--mono);border:1px solid #3c7450;border-radius:3px;align-items:center;gap:7px;padding:8px 10px;display:flex;position:absolute;transform:translate(-50%,-50%);box-shadow:0 10px 25px #00000052}.member-grant-packet>span{color:#83ce9f;display:grid}.member-grant-packet b{color:#a0e2b8}.team-workstation.member-bob{top:auto;bottom:3%;right:1.5%}.team-search-console{height:100%;font:8px/1.45 var(--mono);align-content:start;gap:9px;display:grid}.team-search-project{border-bottom:1px solid var(--rule);color:var(--soft);align-items:center;gap:7px;padding-bottom:7px;display:flex}.team-search-project i{background:var(--verified);border-radius:50%;width:6px;height:6px}.team-search-prompt{border-left:1px solid var(--verified);min-height:34px;color:var(--ink);background:#14120f;gap:7px;padding:7px;font-size:9px;display:flex}.team-search-prompt i{color:var(--verified);font-style:normal}.team-search-call{gap:2px;padding-left:7px;display:grid}.team-search-call b{color:var(--ink)}.team-search-call code{color:var(--live);white-space:normal}.team-search-mcp{background:var(--live-soft);color:var(--live);border:1px solid #705536;border-radius:3px;align-items:center;gap:8px;padding:7px 8px;display:flex}.team-search-mcp>i{font-style:normal;display:grid}.team-search-mcp>span{color:var(--soft);display:grid}.team-search-mcp b{color:var(--ink)}.team-search-answer{background:var(--verified-soft);color:var(--verified);border:1px solid #315d43;border-radius:3px;align-items:flex-start;gap:8px;padding:9px;display:flex}.team-search-answer>span{color:#83ce9f;display:grid}.team-search-answer b{color:#a0e2b8}.shared-memory-rows>div.scanning{box-shadow:inset 3px 0 0 var(--live);opacity:1!important;background:var(--live-soft)!important}.shared-memory-rows>div.scanning>i{background:var(--live)!important;color:#21170d!important}.shared-memory-rows>div.scanning b,.shared-memory-rows>div.scanning em{color:var(--live)!important}.shared-memory-rows.resolved>div:not(.selected){filter:saturate(.25);opacity:.2!important}.shared-memory-rows>div.selected{box-shadow:inset 3px 0 0 var(--verified),0 0 0 1px #43845a;opacity:1!important;background:#163124!important}.shared-memory-rows>div.selected>i{color:#102117!important;background:#58c982!important}.shared-memory-rows>div.selected b,.shared-memory-rows>div.selected em{color:#b4edc8!important}.team-search-return{z-index:16;color:#a9e8bf;font:8px var(--mono);background:#183323;border:1px solid #4b9666;border-radius:3px;align-items:center;gap:6px;padding:9px 12px;display:flex;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 1px #53c27c1f,0 10px 28px #0000006b}.team-cloud-scene{position:absolute;top:0;right:0;bottom:0;left:0}.team-member-space{z-index:4;background:var(--card);border:1px solid #3c3730;border-radius:4px;width:31%;height:360px;transition:left .7s,right .7s,width .7s,transform .7s,border-color .35s;position:absolute;top:50%;overflow:visible;transform:translateY(-50%);box-shadow:0 22px 50px #00000042}.team-member-space.paul{left:1.5%}.team-member-space.anna{right:1.5%}.team-member-space.centered{width:48%;height:390px;left:50%;right:auto;transform:translate(-50%,-50%)}.team-member-screen{background:var(--seal);height:calc(100% - 79px);font:9px/1.45 var(--mono);padding:13px;overflow:hidden}.member-mcp-bay{border-top:1px solid var(--rule);height:41px;color:var(--live);font:7px var(--mono);background:#201c18;align-items:center;gap:8px;padding:0 12px;display:flex}.member-mcp-bay>i{font-style:normal;display:grid}.member-mcp-bay>span{color:var(--muted);display:grid}.member-mcp-bay b{color:var(--soft);font-size:8px}.paul-cloud{height:100%}.paul-cloud-head{border:1px solid var(--rule);background:#24201c;border-radius:3px 3px 0 0;justify-content:space-between;align-items:center;padding:10px 11px;display:flex}.paul-cloud-head>span{color:var(--live);align-items:center;gap:8px;display:flex}.paul-cloud-head b{color:var(--ink);font-size:10px}.paul-cloud-head small{color:var(--muted);font-size:8px}.project-list{border:1px solid var(--rule);border-top:0;border-radius:0 0 3px 3px;overflow:hidden}.project-row{border-bottom:1px solid var(--rule-soft);background:#12100e;justify-content:space-between;align-items:center;min-height:61px;padding:9px 10px;transition:background .3s,box-shadow .3s;display:flex;position:relative}.project-row:last-child{border-bottom:0}.project-row>span{color:var(--muted);grid-template-columns:19px 1fr;align-items:center;gap:1px 7px;display:grid}.project-row>span>svg{color:var(--live);grid-row:1/3}.project-row>span>b{color:var(--ink);font-size:10px}.project-row>span>small{font-size:7px}.project-row>button,.share-entry button,.invite-actions button{color:var(--soft);font:8px var(--mono);background:#26221d;border:1px solid #534a40;border-radius:3px;justify-content:center;align-items:center;gap:5px;display:flex}.project-row>button{padding:7px 9px}.project-row.cowork.chosen{background:var(--live-soft);box-shadow:inset 3px 0 0 var(--live)}.project-row>button.clicked{color:var(--live);background:#392b1c;border-color:#9a6f39}.click-cursor,.accept-cursor{border:2px solid var(--ink);border-radius:50%;width:11px;height:11px;position:absolute;bottom:12px;right:25px;box-shadow:0 0 0 4px #e5ded31a}.share-project-form{background:var(--live-soft);border:1px solid #765a36;border-radius:3px;gap:9px;margin-top:11px;padding:11px;display:grid}.share-project-form>div:first-child{color:var(--live);align-items:center;gap:8px;display:flex}.share-project-form>div:first-child>span{display:grid}.share-project-form b{color:var(--ink);font-size:9px}.share-project-form small{color:var(--muted);font-size:7px}.share-entry{grid-template-columns:1fr auto;gap:7px!important;display:grid!important}.share-entry>span{min-height:34px;color:var(--ink);background:#100f0d;border:1px solid #655640;border-radius:3px;align-items:center;padding:0 9px;display:flex;overflow:hidden}.share-entry i{white-space:nowrap;font-style:normal}.share-entry button{min-width:68px;color:var(--live)}.share-entry button.sent{background:var(--verified-soft);color:#94dbae;border-color:#376c4a}.project-invitation{background:radial-gradient(240px 130px at 25% 20%,#e3a4551a,#0000 75%),#181511;border:1px solid #805f37;border-radius:4px;grid-template-columns:45px 1fr;gap:11px;margin:23px 5px;padding:17px;display:grid;position:relative;box-shadow:0 18px 35px #0003}.invite-icon{background:var(--live-soft);width:43px;height:43px;color:var(--live);border:1px solid #735735;border-radius:50%;place-items:center;display:grid}.project-invitation>span{gap:3px;display:grid}.project-invitation>span>small{color:var(--live);letter-spacing:.08em;font-size:7px}.project-invitation>span>b{color:var(--ink);font-size:12px}.project-invitation p{color:var(--muted);font:8px/1.5 var(--sans);margin:3px 0 0}.invite-actions{grid-column:1/-1;grid-template-columns:1fr 1fr;gap:7px;margin-top:5px;display:grid}.invite-actions button{height:35px}.invite-actions button:first-child{background:var(--verified-soft);color:#9be0b3;border-color:#3c7450}.invite-actions button.accepting{box-shadow:0 0 0 2px #4cbf7a2e}.project-invitation .accept-cursor{bottom:26px;right:58%}.team-agent-body{height:100%;font:8px/1.45 var(--mono)}.team-agent-project{border-bottom:1px solid var(--rule);color:var(--soft);align-items:center;gap:7px;padding-bottom:9px;display:flex}.team-agent-project>i{background:var(--verified);border-radius:50%;width:6px;height:6px}.team-agent-prompt{border-left:1px solid var(--verified);min-height:44px;color:var(--ink);background:#14120f;gap:7px;margin-top:12px;padding:9px;font-size:9px;display:flex}.team-agent-prompt>i{color:var(--verified);font-style:normal}.team-agent-working{background:var(--live-soft);color:var(--live);border:1px solid #705536;border-radius:3px;align-items:center;gap:8px;margin-top:10px;padding:9px;display:flex}.team-agent-working>i{font-style:normal;display:grid}.team-agent-working>span{color:var(--muted);display:grid}.team-agent-working b{color:var(--soft)}.team-incoming-update{background:var(--verified-soft);color:#91dbaa;border:1px solid #3b7650;border-radius:3px;gap:8px;margin-top:29px;padding:12px;display:grid}.team-incoming-update>div{align-items:center;gap:7px;display:flex}.team-incoming-update b{color:#a9e7bf}.team-incoming-update p{color:#82c99c;margin:0}.team-incoming-update small{color:#639d77}.team-connected-state{color:var(--muted);text-align:center;place-items:center;gap:5px;margin-top:43px;display:grid}.team-connected-state svg{color:var(--verified)}.team-connected-state b{color:var(--soft);font-size:9px}.shared-project-store{z-index:3;background:var(--card);border:1px solid #4f4437;border-radius:4px;width:30%;min-height:365px;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 22px 55px #0000004d}.shared-project-head{border-bottom:1px solid var(--rule);background:#25211d;justify-content:space-between;align-items:center;height:42px;padding:0 11px;display:flex}.shared-project-head>span{color:var(--live);align-items:center;gap:7px;display:flex}.shared-project-head b{color:var(--ink);font:600 10px var(--mono)}.shared-project-head>i{color:var(--live);font:normal 7px var(--mono)}.shared-project-members{border-bottom:1px solid var(--rule);align-items:center;padding:10px 11px;display:flex}.shared-project-members>span{border:2px solid var(--card);background:var(--live-soft);width:25px;height:25px;color:var(--live);font:700 8px var(--mono);border-radius:50%;place-items:center;margin-right:-4px;display:grid}.shared-project-members>b{color:var(--soft);font:8px var(--mono);margin-left:10px}.shared-project-members>small{color:var(--muted);font:7px var(--mono);margin-left:auto}.shared-project-rows{padding:7px;display:grid}.shared-project-rows>div{border-bottom:1px solid var(--rule-soft);opacity:.24;min-height:52px;font:8px var(--mono);grid-template-columns:23px 1fr;align-items:center;gap:7px;padding:6px;display:grid}.shared-project-rows>div:last-child{border:0}.shared-project-rows>div>i{width:22px;height:22px;color:var(--muted);background:#2b2621;border-radius:3px;place-items:center;font-style:normal;display:grid}.shared-project-rows>div>span{display:grid}.shared-project-rows>div b{color:var(--soft)}.shared-project-rows>div small{color:var(--muted);font-size:7px}.shared-project-rows>div.ready{opacity:1;background:var(--verified-soft)}.shared-project-rows>div.ready>i{background:var(--verified);color:#122017}.shared-project-rows>div.ready b{color:#8bd6a6}.shared-project-rows>div.scanning{box-shadow:inset 3px 0 0 var(--live);opacity:1!important;background:var(--live-soft)!important}.shared-project-rows>div.scanning>i{background:var(--live)!important;color:#21170d!important}.shared-project-rows>div.scanning b{color:var(--live)!important}.shared-project-rows.resolved>div:not(.selected){filter:saturate(.2);opacity:.18!important}.shared-project-rows>div.selected{box-shadow:inset 3px 0 0 var(--verified),0 0 0 1px #43845a;opacity:1!important;background:#163124!important}.shared-project-rows>div.selected>i{color:#102117!important;background:#58c982!important}.shared-project-rows>div.selected b{color:#b4edc8!important}.shared-project-foot{border-left:2px solid var(--live);background:var(--live-soft);color:var(--live);align-items:center;gap:8px;margin:0 8px 8px;padding:8px;display:flex}.shared-project-foot>span{color:var(--muted);font:7px var(--mono);display:grid}.shared-project-foot b{color:var(--soft);font-size:8px}.team-mcp-wire{z-index:2;border-top:1px dashed #5c4932;height:1px;position:absolute;top:70.5%}.team-mcp-wire.paul{width:3%;left:32.5%}.team-mcp-wire.anna{width:3.5%;left:65%}.team-mcp-wire>i{background:var(--live);border-radius:50%;width:5px;height:5px;position:absolute;top:-2px;box-shadow:0 0 9px #e3a45573}.team-invite-packet,.team-accept-packet,.team-flow-packet{z-index:12;color:var(--seal-ink);font:8px var(--mono);background:#2a2118;border:1px solid #80623b;border-radius:3px;align-items:center;gap:7px;padding:8px 10px;display:flex;position:absolute;top:50%;transform:translate(-50%,-50%);box-shadow:0 10px 25px #00000057}.team-invite-packet>span{color:var(--muted);display:grid}.team-invite-packet b{color:var(--ink)}.team-accept-packet{background:var(--verified-soft);color:#9bdfb4;border-color:#3d7751}.team-flow-packet{white-space:nowrap;top:59%}.team-flow-packet.to-anna,.team-flow-packet.to-paul,.team-flow-packet.search-result{color:#9be0b3;background:#183323;border-color:#3d7751}.team-cloud-legend{color:var(--muted);font:7px var(--mono);white-space:nowrap;align-items:center;gap:10px;display:flex;position:absolute;bottom:1.6%;left:50%;transform:translate(-50%)}.team-cloud-legend span{align-items:center;gap:5px;display:flex}.team-cloud-legend i{background:var(--rule);width:1px;height:12px}.share-project-form{position:relative}.share-add-cursor{border:2px solid var(--ink);border-radius:50%;width:11px;height:11px;position:absolute;bottom:47px;right:24px;box-shadow:0 0 0 4px #e5ded31a}.share-entry button.adding{color:var(--live);background:#392b1c;border-color:#9a6f39;box-shadow:0 0 0 2px #e3a4551f}.team-agent-body.pending .team-agent-project>i{background:var(--live)}.team-pending-invite{color:var(--live);text-align:center;place-items:center;gap:6px;margin-top:38px;display:grid}.team-pending-invite b{color:var(--ink);font-size:10px}.team-pending-invite span,.team-pending-invite small{color:var(--muted)}.team-member-space{transition:left .7s,right .7s,top .7s,bottom .7s,width .7s,height .7s,transform .7s,border-color .35s}.team-member-space.stacked{height:260px;transform:none}.team-member-space.stacked.anna{top:2%;bottom:auto}.team-member-space.bob{top:auto;bottom:2%;right:1.5%;transform:none}.team-member-space.stacked .team-member-screen{padding:10px}.team-member-space.stacked .project-invitation{grid-template-columns:36px 1fr;gap:8px;margin:5px 1px;padding:11px}.team-member-space.stacked .invite-icon{width:34px;height:34px}.team-member-space.stacked .project-invitation p{font-size:7px}.team-member-space.stacked .invite-actions{margin-top:0}.team-member-space.stacked .invite-actions button{height:30px}.team-member-space.access-revoked{box-shadow:0 0 0 2px #c6594617,0 18px 42px #00000047;border-color:#74453c!important}.team-member-space.access-revoked.focused{animation:1.2s ease-in-out infinite focus-revoked}.team-agent-body.removed .team-agent-project{color:#a86d61}.team-agent-body.removed .team-agent-project>i{background:#b36555}.team-access-removed{color:#c77969;text-align:center;place-items:center;gap:6px;margin-top:28px;display:grid}.team-access-removed b{color:#dfa092;font-size:10px}.team-access-removed span,.team-access-removed small{color:#8f665e}.member-mcp-bay.disconnected{color:#c77969;background:#281b18;border-color:#5d382f}.team-mcp-wire.anna.stacked{transform-origin:0;width:4%;top:33.5%;transform:rotate(-12deg)}.team-mcp-wire.bob{transform-origin:0;width:5.2%;top:73.5%;left:64.7%;transform:rotate(24deg)}.project-member-manager{gap:9px;min-height:205px;padding:10px;display:grid}.member-manager-head{border-bottom:1px solid var(--rule);color:var(--live);grid-template-columns:18px 1fr auto;align-items:center;gap:7px;padding:8px;display:grid}.member-manager-head>span{display:grid}.member-manager-head b{color:var(--ink);font:9px var(--mono)}.member-manager-head small{color:var(--muted);font:7px var(--mono)}.member-manager-head button,.bob-invite-form button,.project-member-list button,.remove-confirmation button{color:var(--live);font:7px var(--mono);background:#28221c;border:1px solid #5e4c37;border-radius:3px;justify-content:center;align-items:center;gap:5px;padding:7px;display:flex}.member-manager-head button.clicked{background:#392b1c;border-color:#9a6f39;box-shadow:0 0 0 2px #e3a4551f}.project-member-list{border:1px solid var(--rule);border-radius:3px;display:grid;overflow:hidden}.project-member-list>div{border-bottom:1px solid var(--rule-soft);min-height:47px;font:8px var(--mono);grid-template-columns:24px 1fr auto;align-items:center;gap:7px;padding:6px 8px;display:grid}.project-member-list>div:last-child{border:0}.project-member-list>div>i{background:var(--live-soft);width:23px;height:23px;color:var(--live);border-radius:3px;place-items:center;font-style:normal;display:grid}.project-member-list>div>span{display:grid}.project-member-list b{color:var(--ink)}.project-member-list small,.project-member-list em{color:var(--muted);font:normal 7px var(--mono)}.project-member-list>div.removing{background:#2c1c18;box-shadow:inset 3px 0 #b36555}.project-member-list>div.removing button{color:#d38b7c;border-color:#75453a}.bob-invite-form{background:var(--live-soft);font:7px var(--mono);border:1px solid #725737;border-radius:3px;gap:8px;padding:9px;display:grid}.bob-invite-form label{color:var(--ink)}.bob-invite-form>div{grid-template-columns:1fr auto;gap:6px;display:grid}.bob-invite-form>div>span{min-height:32px;color:var(--ink);background:#100f0d;border:1px solid #5d503f;border-radius:3px;align-items:center;padding:0 8px;display:flex;overflow:hidden}.bob-invite-form i{white-space:nowrap;font-style:normal}.bob-invite-form button.sent{background:var(--verified-soft);color:#91dbaa;border-color:#39724d}.bob-invite-form>small{color:var(--muted)}.remove-confirmation{color:#c77969;text-align:center;place-items:center;gap:8px;min-height:205px;padding:18px;display:grid}.remove-confirmation b{color:var(--ink);font:600 11px var(--mono)}.remove-confirmation p{max-width:240px;color:var(--muted);font:8px/1.5 var(--sans);margin:0}.remove-confirmation>div{grid-template-columns:1fr 1fr;gap:7px;width:100%;display:grid}.remove-confirmation button.danger{color:#d99182;background:#301d19;border-color:#75453a}.access-revoked-packet{z-index:15;color:#dc9182;font:8px var(--mono);background:#301d19;border:1px solid #75453a;border-radius:3px;align-items:center;gap:7px;padding:8px 10px;display:flex;position:absolute;transform:translate(-50%,-50%);box-shadow:0 10px 25px #00000057}@keyframes focus-revoked{50%{box-shadow:0 0 0 3px #c659461f,0 20px 46px #00000047}}.ledger-row.queued{background:var(--live-soft);color:var(--live);border-color:#6f5535}.ledger-row.queued i{color:var(--live);background:#3a2c1d}.arrival-token.queued{transform:translate(-50%)}.arrival-token.queued.active{border-color:#b1844d;box-shadow:0 0 0 3px #e3a4551a,0 16px 35px #00000047}.panel-title>b{align-items:center;gap:5px;display:flex}.search-pool{overflow:visible}.search-pool-cloud,.paul-pool-cloud,.shared-pool-cloud{z-index:6;background:var(--card);width:48px;height:48px;color:var(--live);border:1px solid #5b4933;border-radius:50%;place-items:center;display:grid;position:absolute;left:50%;transform:translate(-50%)}.search-pool-cloud{top:-27px}.search-pool-count{border-bottom:1px solid var(--rule);color:var(--muted);font:7px var(--mono);text-align:right;padding:7px 12px}.paul-cloud{padding-top:23px;position:relative}.paul-pool-cloud{width:44px;height:44px;top:-2px}.paul-cloud-head{margin-top:18px}.paul-cloud-head>span{gap:1px;display:grid}.paul-cloud-head>span>small{color:var(--muted);font:7px var(--mono)}.paul-cloud-head>small{align-items:center;gap:5px;display:flex}.shared-project-store{overflow:visible}.shared-pool-cloud{width:46px;height:46px;top:-28px}.shared-project-head>span{gap:1px;display:grid}.shared-project-head>span>small{color:var(--muted);font:7px var(--mono)}.shared-project-head>i{align-items:center;gap:5px;display:flex}.arrival-token.queued{margin-left:-88px}.common-vault.waiting:after{content:"Work is private\a Add Ann to make Work shared"}.storage-window.focused:not(.pressure):not(.healthy),.install-terminal.focused:not(.focus-ok),.preserve-queue.focused,.memory-pool.focused,.pipeline.focused,.codex-window.focused,.search-pool.focused,.device-card.focused,.handoff-pool.focused,.team-workstation.focused,.common-vault.focused,.team-member-space.focused:not(.focus-ok),.shared-project-store.focused{border-color:#a9793f;animation:1.25s ease-in-out infinite focus-amber}.storage-window.pressure.focused{border-color:var(--warn);animation:1.25s ease-in-out infinite focus-warn}.storage-window.healthy.focused,.focus-ok{border-color:#3c8058!important;box-shadow:0 0 0 2px #4cbf7a1f,0 18px 42px #00000038!important}@keyframes focus-amber{50%{box-shadow:0 0 0 3px #e3a45521,0 20px 46px #00000047}}@keyframes focus-warn{50%{box-shadow:0 0 0 3px #e06c4f24,0 20px 46px #00000047}}@media(max-width:1050px){.rail{flex-basis:205px;width:205px}.page-header{display:grid}.live-status{width:max-content;max-width:none}.session-ledger{display:none}.storage-window{width:min(720px,76%)}.preserve-left{width:36%;left:1%}.preserve-queue{width:31%;left:39%}.pipeline{left:39%;right:29%}.codex-window{width:51%}.mcp-node{left:59%}.search-pool{width:30%}.story-footer{font-size:9px}.device-card{width:32%}.handoff-pool{width:26%;min-width:180px}.device-screen{padding:10px}.context-result span{padding-left:0}.team-workstation{width:29%}.common-vault{width:34%}.team-legend{font-size:6px}}@media(max-width:760px){.app-shell{display:block}.rail{border-right:0;border-bottom:1px solid var(--rule);gap:14px;width:100%;min-height:0;padding:16px;position:relative}.rail .mode-nav{grid-template-columns:repeat(3,1fr);padding-bottom:12px}.mode-nav button{grid-template-columns:18px 1fr;padding:8px}.mode-nav button small{display:none}.rail .chapter-nav{grid-template-columns:repeat(5,1fr)}.rail-step{justify-content:center;padding:8px 5px}.rail-step b,.rail-facts,.rail-status{display:none}main{grid-template-rows:auto auto auto auto;min-height:auto;padding:22px 16px;overflow:visible}.page-header{gap:14px}.page-header h1{font-size:24px}.boundary .sealed,.boundary span:first-of-type{display:none}.story-surface{min-height:1020px}.story-footer{grid-template-columns:1fr 1fr}.story-footer span{min-height:34px;padding:0 7px}.collect-scene .storage-window{width:96%;top:31%}.session-ledger{width:96%;display:block;top:68%;right:2%;transform:none}.arrival-token{top:26%}.pressure-note{top:2%}.install-terminal{width:96%}.install-flow{white-space:nowrap;bottom:20%}.preserve-left{width:96%;top:3%;left:2%}.preserve-queue{width:96%;top:36%;left:2%}.memory-pool{width:96%;top:61%;left:2%;right:auto}.pipeline{width:96%;bottom:2%;left:2%;right:auto}.complete-message{bottom:3%;left:8%}.codex-window{width:96%;height:380px;top:3%;left:2%;transform:none}.mcp-node{top:48%;left:50%}.search-pool{width:96%;top:60%;left:2%;right:auto;transform:none}.search-route,.return-packet{display:none}.device-card{width:96%;height:310px;transform:none}.device-card.work{top:3%;left:2%}.handoff-pool{width:96%;min-width:0;top:37%;left:2%;transform:none}.handoff-cloud{display:none}.device-card.home{top:59%;left:2%;right:auto}.continue-note{width:max-content;bottom:5%}.handoff-packet,.team-packet{display:none}.team-workstation{width:96%;height:235px;left:2%!important;right:auto!important;transform:none!important}.common-vault{width:96%;min-height:330px;top:22%;left:2%;transform:none}.team-workstation.member-max{top:49%}.team-workstation.member-ana{top:68%;bottom:auto}.team-legend{white-space:normal;justify-content:center;gap:6px;width:96%;bottom:2%}.team-legend i{display:none}.team-workstation{height:275px}.team-workstation.member-paul{top:2%}.common-vault{min-height:365px;top:24%}.team-workstation.member-ann{inset:53% auto auto 2%}.team-workstation.member-bob{inset:75% auto auto 2%}.team-legend{font-size:7px}.team-search-return{display:none}.story-surface.mode-team{min-height:1280px}.team-member-space{width:96%;height:300px;left:2%!important;right:auto!important;transform:none!important}.team-member-space.centered{height:340px}.team-member-space.paul{top:2%}.shared-project-store{width:96%;min-height:355px;top:29%;left:2%;transform:none}.team-member-space.anna{top:59%}.team-mcp-wire,.team-invite-packet,.team-accept-packet,.team-flow-packet{display:none}.team-cloud-legend{white-space:normal;justify-content:center;gap:6px;width:96%;bottom:1%}.team-cloud-legend i{display:none}.project-invitation{margin-top:16px}.team-member-screen{padding:11px}.shared-project-members>small{display:none}.team-cloud-scene.paul-only .team-member-space.paul{top:50%;transform:translateY(-50%)!important}.story-surface.mode-team:has(.team-cloud-scene.has-bob){min-height:1280px}.team-cloud-scene.has-bob .team-member-space{height:280px}.team-cloud-scene.has-bob .team-member-space.paul{top:1.5%}.team-cloud-scene.has-bob .shared-project-store{min-height:330px;top:25%}.team-cloud-scene.has-bob .team-member-space.anna{top:52%;bottom:auto}.team-cloud-scene.has-bob .team-member-space.bob{top:75%;bottom:auto}.team-cloud-scene.has-bob .team-cloud-legend{bottom:.5%}.access-revoked-packet{display:none}.project-member-manager{padding:8px}.remove-confirmation{min-height:195px}}@media(prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}html.embedded,html.embedded body,html.embedded #root{width:100%;height:100%;min-height:100%;overflow:hidden}html.embedded .app-shell{background:var(--paper);width:100%;height:100%;min-height:100%;display:block}html.embedded .rail,html.embedded .page-header,html.embedded .boundary,html.embedded .story-footer{display:none!important}html.embedded main{width:100%;height:100%;min-height:100%;padding:0;display:block;overflow:hidden}html.embedded .story-surface,html.embedded .story-surface.mode-team{border:0;width:100%;height:100%;min-height:100%}.enterprise-cooperation-scene{position:absolute;top:0;right:0;bottom:0;left:0}.enterprise-team-boundary{background:radial-gradient(620px 300px,#4cbf7a0a,#0000 72%),#171512;border:1px solid #52685a;border-radius:5px;width:80%;height:94%;position:absolute;top:3%;left:1.5%;overflow:hidden;box-shadow:0 22px 55px #00000042}.enterprise-team-boundary>header{z-index:20;color:#8ed7a8;height:40px;font:9px var(--mono);letter-spacing:.04em;background:#1b211c;border-bottom:1px solid #34473a;justify-content:space-between;align-items:center;padding:0 13px;display:flex;position:absolute;inset:0 0 auto}.enterprise-team-boundary>header span{align-items:center;gap:7px;display:flex}.enterprise-team-boundary>header b{color:#b5e8c7;font-size:10px}.enterprise-team-boundary>header em{background:var(--verified-soft);color:#86d2a1;font:normal 7px var(--mono);letter-spacing:.08em;border:1px solid #3d6d4d;border-radius:3px;padding:5px 7px}.enterprise-team-canvas{position:absolute;top:40px;right:0;bottom:52px;left:0}.enterprise-team-canvas .team-member-space{height:330px}.enterprise-team-canvas .team-member-space.centered{height:350px}.enterprise-team-canvas .shared-project-store{min-height:335px}.enterprise-team-canvas .team-cloud-legend{display:none}.enterprise-team-boundary>footer{z-index:20;background:#141813;border-top:1px solid #34473a;grid-template-columns:repeat(3,1fr);height:52px;display:grid;position:absolute;inset:auto 0 0}.enterprise-team-boundary>footer span{color:#6e8677;font:7px var(--mono);border-right:1px solid #29362c;grid-template-columns:15px 1fr;align-content:center;padding:0 10px;display:grid}.enterprise-team-boundary>footer span:last-child{border:0}.enterprise-team-boundary>footer svg{color:#86d2a1;grid-row:1/3;align-self:center}.enterprise-team-boundary>footer b{color:#9fd9b3;font-size:8px}.enterprise-cooperation-scene .enterprise-spala-outside{width:14.5%;top:34%;right:1.5%}.enterprise-cooperation-scene .enterprise-egress{top:51%;left:81.5%;right:16%}.enterprise-cooperation-scene .enterprise-complete{width:14.5%;bottom:7%;right:1.5%}@media(max-width:760px){.enterprise-team-boundary{width:96%;height:970px;top:1.5%;left:2%}.enterprise-team-canvas{top:40px;right:0;bottom:82px;left:0}.enterprise-team-canvas .team-member-space,.enterprise-team-canvas .team-member-space.centered{height:230px}.enterprise-team-canvas .team-member-space.paul{top:2%}.enterprise-team-canvas .shared-project-store{min-height:270px;top:36%}.enterprise-team-canvas .team-member-space.anna{top:69%}.enterprise-team-canvas .team-cloud-legend{display:none}.enterprise-team-boundary>footer{grid-template-columns:1fr 1fr;height:82px}.enterprise-team-boundary>footer span{min-height:41px}.enterprise-team-boundary>footer span:nth-child(2){border-right:0}.enterprise-team-boundary>footer span:last-child{border-top:1px solid #29362c;grid-column:1/-1}.enterprise-cooperation-scene .enterprise-spala-outside{width:96%;top:1010px;left:2%;right:auto}.enterprise-cooperation-scene .enterprise-egress{width:1px;height:40px;top:970px;left:50%;right:auto}.enterprise-cooperation-scene .enterprise-complete{width:96%;bottom:1%;left:2%;right:auto}}.enterprise-closed-scene{position:absolute;top:0;right:0;bottom:0;left:0}.customer-security-boundary{background:radial-gradient(520px 250px at 48% 46%,#4cbf7a0d,#0000 72%),#171512;border:1px solid #52685a;border-radius:5px;width:74%;height:84%;position:absolute;top:6%;left:2%;overflow:hidden;box-shadow:0 22px 55px #00000042}.customer-security-boundary>header{color:#8ed7a8;height:44px;font:9px var(--mono);letter-spacing:.04em;background:#1b211c;border-bottom:1px solid #34473a;justify-content:space-between;align-items:center;padding:0 14px;display:flex}.customer-security-boundary>header span{align-items:center;gap:7px;display:flex}.customer-security-boundary>header b{color:#b5e8c7;font-size:10px}.customer-security-boundary>header em{background:var(--verified-soft);color:#86d2a1;font:normal 7px var(--mono);letter-spacing:.08em;border:1px solid #3d6d4d;border-radius:3px;padding:5px 7px}.enterprise-boundary-grid{grid-template-columns:minmax(145px,1fr) 42px minmax(145px,1.1fr) 42px minmax(145px,1fr);align-items:center;height:calc(100% - 104px);padding:20px 16px 12px;display:grid}.enterprise-endpoints,.enterprise-data{gap:7px;display:grid}.enterprise-endpoints>small,.enterprise-data>small{color:var(--muted);font:7px var(--mono);letter-spacing:.09em;margin-bottom:1px}.enterprise-endpoint,.enterprise-data>div,.enterprise-runtime{border:1px solid var(--rule);background:var(--card);min-height:55px;color:var(--soft);border-radius:4px;align-items:center;gap:8px;padding:9px;display:flex;box-shadow:0 9px 22px #0000002b}.enterprise-endpoint>span,.enterprise-data>div>span,.enterprise-runtime>span{gap:2px;display:grid}.enterprise-endpoint b,.enterprise-data b,.enterprise-runtime b{color:var(--ink);font:600 9px var(--mono)}.enterprise-endpoint small,.enterprise-data small,.enterprise-runtime em{color:var(--muted);font:normal 7px/1.4 var(--mono)}.enterprise-endpoint>svg,.enterprise-data>div>svg,.enterprise-runtime>svg{color:var(--live);flex:none}.enterprise-endpoint.active{border-color:#4c604f}.enterprise-local-seal{border-left:2px solid var(--verified);background:var(--verified-soft);color:#8ad6a5;align-items:center;gap:7px;margin-top:2px;padding:8px;display:flex}.enterprise-local-seal>span{display:grid}.enterprise-local-seal b{font:600 8px var(--mono)}.enterprise-local-seal small{color:#689d7a;font:7px var(--mono)}.enterprise-runtime{opacity:.2;min-height:90px;transition:opacity .5s,border-color .4s}.enterprise-runtime.visible,.enterprise-data.visible{opacity:1}.enterprise-runtime>span>small{color:var(--live);font:7px var(--mono);letter-spacing:.08em}.enterprise-data{opacity:.2;transition:opacity .5s}.enterprise-internal-wire{opacity:.15;border-top:1px dashed #5b644e;height:1px;transition:opacity .4s;position:relative}.enterprise-internal-wire.on{opacity:1}.enterprise-internal-wire:after{content:"›";color:#789181;font:12px var(--mono);position:absolute;top:-9px;right:-1px}.enterprise-internal-wire>i{background:var(--verified);border-radius:50%;width:6px;height:6px;position:absolute;top:-3px;left:0;box-shadow:0 0 9px #4cbf7a73}.enterprise-controls{opacity:.18;background:#141813;border-top:1px solid #34473a;grid-template-columns:repeat(4,1fr);height:60px;transition:opacity .5s;display:grid;position:absolute;bottom:0;left:0;right:0}.enterprise-controls.visible{opacity:1}.enterprise-controls span{color:#6e8677;font:7px var(--mono);border-right:1px solid #29362c;align-content:center;gap:2px;padding:0 10px;display:grid}.enterprise-controls span:last-child{border:0}.enterprise-controls b{color:#9fd9b3;font-size:8px}.enterprise-spala-outside{width:18%;color:var(--muted);opacity:.75;background:#1a1714;border:1px solid #514438;border-radius:4px;gap:4px;padding:15px;display:grid;position:absolute;top:34%;right:2%}.enterprise-spala-outside>span{color:#6d6257;font:7px var(--mono);letter-spacing:.08em}.enterprise-spala-outside>b{color:var(--soft);font:600 10px var(--mono)}.enterprise-spala-outside>small{font:7px/1.45 var(--mono)}.enterprise-spala-outside.disconnected{opacity:.45;border-color:#4b4b44}.enterprise-egress{height:1px;color:var(--live);border-top:1px dashed #776146;position:absolute;top:51%;left:76%;right:20%}.enterprise-egress i{background:var(--live);border-radius:50%;width:7px;height:7px;position:absolute;top:-4px;right:-3px}.enterprise-egress span{width:max-content;color:var(--muted);font:7px var(--mono);position:absolute;top:10px;left:50%;transform:translate(-50%)}.enterprise-egress.blocked{border-color:#794b3f}.enterprise-egress.blocked:after{content:"×";color:#d1816f;width:22px;height:22px;font:13px var(--mono);background:#2b1c18;border:1px solid #794b3f;border-radius:50%;place-items:center;display:grid;position:absolute;top:-12px;left:50%;transform:translate(-50%)}.enterprise-egress.blocked i{display:none}.enterprise-egress.blocked span{color:#b87364}.enterprise-complete{border-left:2px solid var(--verified);background:var(--verified-soft);color:#87d4a2;align-items:center;gap:9px;width:18%;padding:11px;display:flex;position:absolute;bottom:7%;right:2%}.enterprise-complete>span{color:#6da27e;font:7px/1.45 var(--mono);display:grid}.enterprise-complete b{color:#9ce0b6;font-size:8px}.enterprise-runtime.focused,.enterprise-data>div.focused{border-color:#a9793f;animation:1.25s ease-in-out infinite focus-amber}@media(max-width:760px){.rail .mode-nav{grid-template-columns:repeat(4,1fr)}.story-surface.mode-enterprise{min-height:1160px}.customer-security-boundary{width:96%;height:885px;top:2%;left:2%}.enterprise-boundary-grid{grid-template-columns:1fr;height:auto;padding:16px}.enterprise-endpoints,.enterprise-data{width:100%}.enterprise-runtime{min-height:74px}.enterprise-internal-wire{border-top:0;border-left:1px dashed #5b644e;width:1px;height:42px;margin:2px auto}.enterprise-internal-wire:after{content:"⌄";top:29px;left:-5px;right:auto}.enterprise-internal-wire>i{top:0;left:-3px!important}.enterprise-controls{grid-template-columns:1fr 1fr;height:112px}.enterprise-controls span:nth-child(2){border-right:0}.enterprise-controls span:nth-child(-n+2){border-bottom:1px solid #29362c}.enterprise-spala-outside{width:96%;top:930px;left:2%;right:auto}.enterprise-egress{border-top:0;border-left:1px dashed #794b3f;width:1px;height:40px;top:890px;left:50%;right:auto}.enterprise-egress.blocked:after{top:8px;left:0}.enterprise-egress span{display:none}.enterprise-complete{width:96%;bottom:2%;left:2%;right:auto}}.enterprise-continuity-card{z-index:18;color:#88d1a2;background:#182019;border:1px solid #52685a;border-radius:4px;gap:5px;width:14.5%;padding:12px;display:grid;position:absolute;top:3%;right:1.5%;box-shadow:0 14px 32px #00000038}.enterprise-continuity-card>span{color:#6f967c;font:7px var(--mono);letter-spacing:.08em}.enterprise-continuity-card>b{color:#b4e5c5;font:600 10px/1.35 var(--mono)}.enterprise-continuity-card>small{color:#799486;font:7px/1.45 var(--mono)}.enterprise-continuity-card>strong{color:#96ddae;font:600 8px/1.4 var(--mono);border-top:1px solid #34473a;margin-top:2px;padding-top:6px}.enterprise-departure-packet{z-index:22;color:#91d6a8;font:8px var(--mono);background:#1b241d;border:1px solid #52685a;border-radius:3px;align-items:center;gap:7px;padding:9px 11px;display:flex;position:absolute;transform:translate(-50%,-50%);box-shadow:0 12px 28px #00000057}.enterprise-departure-packet>span{gap:2px;display:grid}.enterprise-departure-packet b{color:#b5e8c7;font-size:8px}.enterprise-departure-packet span{color:#759182;font-size:7px}@media(max-width:760px){.story-surface.mode-enterprise{min-height:1370px}.enterprise-cooperation-scene .enterprise-continuity-card{width:96%;top:990px;left:2%;right:auto}.enterprise-cooperation-scene .enterprise-spala-outside{top:1110px}.enterprise-cooperation-scene .enterprise-complete{width:96%;bottom:1%}.enterprise-departure-packet{display:none}}.app-shell.enterprise-shell{color:#102a20;background:#f6f2e8;min-height:100vh;display:block}.enterprise-main{background:#f6f2e8;width:100%;height:100vh;min-height:590px;padding:0;display:block;overflow:hidden}.story-surface.mode-enterprise{background:#f6f2e8;border:0;width:100%;height:100%;min-height:590px}.enterprise-continuity-scene{font-family:var(--sans);background:radial-gradient(circle at 50% 47%,#d2972312,#0000 30%),linear-gradient(#faf7ef,#f5f0e5);grid-template-rows:auto minmax(0,1fr);gap:clamp(15px,2.2vh,24px);padding:clamp(20px,3.5vh,38px) clamp(28px,5vw,82px) clamp(18px,3vh,34px);display:grid;position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.enterprise-continuity-scene:before{content:"";pointer-events:none;opacity:.34;background-image:radial-gradient(#173e2d .45px,#0000 .45px);background-size:6px 6px;position:absolute;top:0;right:0;bottom:0;left:0;-webkit-mask-image:linear-gradient(#0000,#000 22% 80%,#0000);mask-image:linear-gradient(#0000,#000 22%,#000 80%,#0000)}.enterprise-scenario-tabs{z-index:3;background:#fffdf7c7;border:1px solid #bcc5ba;border-radius:13px;grid-template-columns:repeat(4,1fr);width:min(100%,930px);min-height:48px;margin:0 auto;display:grid;position:relative;overflow:hidden;box-shadow:0 8px 24px #1c36270d}.enterprise-scenario-tabs button{color:#52635a;min-width:0;font:700 clamp(11px,.78vw,13px)/1.15 var(--sans);letter-spacing:-.005em;cursor:pointer;background:0 0;border:0;border-right:1px solid #d0d6ce;justify-content:center;align-items:center;gap:9px;padding:10px 13px;transition:background .2s,color .2s,box-shadow .2s;display:flex}.enterprise-scenario-tabs button:last-child{border-right:0}.enterprise-scenario-tabs button span{color:#869188;font:700 9px/1 var(--mono);letter-spacing:.05em}.enterprise-scenario-tabs button:focus-visible{z-index:2;outline-offset:-3px;outline:3px solid #d792114d;position:relative}.enterprise-scenario-tabs button.is-active span{color:#f2c665}.enterprise-scenario-panel{z-index:2;grid-template-rows:auto minmax(0,1fr) auto;gap:clamp(14px,2vh,22px);min-height:0;display:grid;position:relative}.enterprise-hero-copy{z-index:2;text-align:center;position:relative}.enterprise-hero-copy h1{color:#0d2119;max-width:1160px;font:750 clamp(31px,3.6vw,58px)/1 var(--sans);letter-spacing:-.052em;text-wrap:balance;margin:0 auto}.enterprise-hero-copy h1 span{color:#d79211}.enterprise-hero-copy p{color:#40564c;max-width:900px;font:400 clamp(14px,1.05vw,17px)/1.4 var(--sans);letter-spacing:-.01em;text-wrap:balance;margin:clamp(8px,1.1vh,12px) auto 0}.enterprise-story-flow{z-index:2;grid-template-columns:minmax(0,1fr) clamp(56px,6vw,92px) minmax(0,1.18fr) clamp(56px,6vw,92px) minmax(0,1fr);align-items:center;min-height:0;display:grid;position:relative}.enterprise-flow-group{display:contents}.enterprise-stage{color:#143326;background:#fffdf7eb;border:1px solid #aab4a7;border-radius:16px;flex-direction:column;width:100%;min-width:0;height:min(100%,500px);transition:opacity .45s,border-color .45s,box-shadow .45s,transform .45s;display:flex;position:relative;overflow:hidden;box-shadow:0 16px 38px #26352b17}.enterprise-stage>header{border-bottom:1px solid #cfd5cb;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:clamp(8px,1vw,15px);min-height:clamp(72px,9vh,92px);padding:clamp(14px,1.6vw,22px);display:grid}.enterprise-stage-icon{color:#16442f;background:#e6eadc;border-radius:50%;place-items:center;width:clamp(42px,3.8vw,58px);height:clamp(42px,3.8vw,58px);display:grid}.enterprise-stage-number{color:#fff;width:28px;height:28px;font:750 15px/1 var(--sans);background:#1e5139;border-radius:50%;place-items:center;display:grid}.enterprise-stage h2{color:#10291f;font:750 clamp(19px,1.55vw,26px)/1.08 var(--sans);letter-spacing:-.035em;text-wrap:balance;margin:0}.enterprise-stage header p{color:#456052;font:500 clamp(13px,.95vw,16px)/1.3 var(--sans);margin:5px 0 0}.enterprise-stage-list{gap:clamp(7px,1vh,11px);margin:auto 0;padding:clamp(13px,1.4vw,20px);display:grid}.enterprise-stage-list>div{color:#173f2d;background:#fbfaf4;border:1px solid #cbd2c8;border-radius:10px;align-items:center;gap:clamp(10px,1vw,15px);min-height:clamp(43px,6.6vh,64px);padding:10px clamp(11px,1.2vw,17px);display:flex;box-shadow:0 5px 14px #1b372808}.enterprise-stage-list svg{color:#174a33;flex:none}.enterprise-stage-list span{font:650 clamp(14px,1.03vw,17px)/1.25 var(--sans);letter-spacing:-.015em}.enterprise-memory{border:2px solid #dea11c;transform:translateY(-3px);box-shadow:0 20px 46px #514e2c24}.enterprise-memory>header{color:#fff;background:linear-gradient(135deg,#164c34,#20573d);border-bottom-color:#36664f}.enterprise-memory .enterprise-stage-icon{color:#16442f;background:#f7f0d9;border:2px solid #edbd57;box-shadow:0 0 0 6px #f6ca691f}.enterprise-memory .enterprise-stage-number{color:#fff;background:#e7a822}.enterprise-memory h2{color:#fff}.enterprise-memory header p{color:#c3d9cb}.enterprise-memory-list{gap:clamp(7px,1vh,10px);margin:auto 0;padding:clamp(12px,1.2vw,18px) clamp(13px,1.3vw,20px);display:grid}.enterprise-memory-list>div{color:#153b2a;background:#fffdf7;border:1px solid #e4dac0;border-radius:11px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(10px,1vw,15px);min-height:clamp(47px,7.2vh,69px);padding:9px clamp(10px,1vw,15px);transition:opacity .35s;display:grid}.enterprise-memory-list>div>span{color:#16442f;background:#f7edd1;border-radius:50%;place-items:center;width:clamp(36px,3.1vw,47px);height:clamp(36px,3.1vw,47px);display:grid}.enterprise-memory-list>div>div{gap:2px;min-width:0;display:grid}.enterprise-memory-list b{font:750 clamp(15px,1.12vw,19px)/1.15 var(--sans);letter-spacing:-.02em}.enterprise-memory-list small{color:#5c685f;font:400 clamp(12px,.82vw,14px)/1.3 var(--sans);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.enterprise-memory-foot{color:#2b563f;min-height:35px;font:650 clamp(11px,.78vw,13px)/1 var(--sans);background:#fcf4dd;border-top:1px solid #d8cda9;grid-template-columns:auto 1fr auto;align-items:center;gap:8px;padding:7px 16px;display:grid}.enterprise-memory-foot b{color:#8b6110;font:700 10px var(--mono);letter-spacing:.06em;text-transform:uppercase}.enterprise-flow-link{color:#567063;opacity:.42;align-content:center;place-items:center;gap:12px;transition:opacity .45s,color .45s;display:grid;position:relative}.enterprise-flow-link.is-on{color:#175c3d;opacity:1}.enterprise-flow-track{border-top:3px dotted;width:100%;height:2px;position:relative}.enterprise-flow-track:after{content:"";border-top:3px solid;border-right:3px solid;width:11px;height:11px;position:absolute;top:-8px;right:0;transform:rotate(45deg)}.enterprise-flow-track i{background:#f8f4ea;border:2px solid;border-radius:50%;width:10px;height:10px;position:absolute;top:-6px;left:0}.enterprise-flow-link>span{font:650 clamp(10px,.74vw,12px)/1.35 var(--sans);text-align:center}@keyframes enterprise-transfer{0%{opacity:.25;left:0}45%{opacity:1}to{opacity:.25;left:calc(100% - 10px)}}.enterprise-senior.is-departed{box-shadow:none;border-color:#b7bdb4}.enterprise-senior.is-departed .enterprise-stage-list{opacity:.52}.enterprise-team:not(.is-active){opacity:.76}.enterprise-departed-note,.enterprise-context-note{color:#744b41;background:#f7ece7;border-left:3px solid #9b695c;align-items:center;gap:10px;margin:0 14px 14px;padding:10px 12px;display:flex}.enterprise-context-note{color:#246346;background:#e9f5ed;border-left-color:#2a8758}.enterprise-departed-note>span,.enterprise-context-note>span{font:500 clamp(11px,.8vw,13px)/1.25 var(--sans);display:grid}.enterprise-departed-note b,.enterprise-context-note b{font-weight:750}.enterprise-stage-note{color:#246346;background:#e9f5ed;border-left:3px solid #2a8758;align-items:center;gap:10px;margin:0 14px 14px;padding:10px 12px;display:flex}.enterprise-stage-note>svg{flex:none}.enterprise-stage-note>span{font:500 clamp(11px,.8vw,13px)/1.25 var(--sans);display:grid}.enterprise-stage-note b{font-weight:750}.enterprise-security-band{z-index:2;color:#153a29;background:#fffdf7e0;border:1px solid #b8c2b5;border-radius:15px;grid-template-columns:minmax(360px,1.9fr) repeat(3,minmax(150px,1fr));min-height:clamp(76px,10vh,104px);display:grid;position:relative;overflow:hidden;box-shadow:0 10px 26px #1c36270d}.enterprise-security-lead,.enterprise-security-proof{border-right:1px solid #cbd2c8;align-items:center;gap:clamp(10px,1vw,15px);padding:clamp(12px,1.3vw,20px);display:flex}.enterprise-security-lead>span{color:#fff;background:#1b563b;border-radius:50%;flex:none;place-items:center;width:52px;height:52px;display:grid;box-shadow:0 6px 16px #174c3333}.enterprise-security-lead>div,.enterprise-security-proof>span{gap:4px;display:grid}.enterprise-security-band b{color:#122f22;font:750 clamp(13px,.93vw,16px)/1.25 var(--sans)}.enterprise-security-band small{color:#647168;font:400 clamp(10px,.72vw,12px)/1.35 var(--sans)}.enterprise-security-proof{border-right:1px dashed #c8cfc4}.enterprise-security-proof:last-child{border:0}.enterprise-security-proof>svg{color:#18513a;flex:none}@media(max-height:700px)and (min-width:761px){.enterprise-continuity-scene{gap:10px;padding-top:14px;padding-bottom:12px}.enterprise-scenario-tabs{min-height:38px}.enterprise-scenario-tabs button{padding:7px 10px;font-size:10px}.enterprise-scenario-panel{gap:10px}.enterprise-hero-copy h1{font-size:32px}.enterprise-hero-copy p{margin-top:6px;font-size:12px;line-height:1.3}.enterprise-stage>header{min-height:64px;padding:11px 14px}.enterprise-stage-icon{width:40px;height:40px}.enterprise-stage h2{font-size:18px}.enterprise-stage header p{font-size:12px}.enterprise-stage-list,.enterprise-memory-list{gap:6px;padding:10px 12px}.enterprise-stage-list>div{min-height:40px;padding:8px 10px}.enterprise-stage-list span{font-size:13px}.enterprise-memory-list>div{min-height:44px;padding:7px 9px}.enterprise-memory-list>div>span{width:34px;height:34px}.enterprise-memory-list b{font-size:14px}.enterprise-memory-list small{font-size:11px}.enterprise-departed-note,.enterprise-context-note,.enterprise-stage-note{margin:0 12px 8px;padding:6px 8px}.enterprise-security-band{min-height:66px}.enterprise-security-lead,.enterprise-security-proof{padding:8px 11px}.enterprise-security-lead>span{width:42px;height:42px}.enterprise-security-band b{font-size:11px}.enterprise-security-band small{font-size:8px}}@media(max-width:760px){.app-shell.enterprise-shell,.enterprise-main{height:auto;min-height:100vh;overflow:visible}.story-surface.mode-enterprise{height:auto;min-height:2100px;overflow:hidden}.enterprise-continuity-scene{gap:24px;min-height:2100px;padding:24px 18px;position:relative;overflow:hidden}.enterprise-scenario-tabs{grid-template-columns:1fr 1fr;width:100%;min-height:96px}.enterprise-scenario-tabs button:nth-child(2){border-right:0}.enterprise-scenario-tabs button:nth-child(-n+2){border-bottom:1px solid #d0d6ce}.enterprise-scenario-tabs button{justify-content:flex-start;padding:12px 14px;font-size:12px}.enterprise-scenario-panel{gap:24px}.enterprise-hero-copy h1{font-size:clamp(34px,10vw,48px)}.enterprise-hero-copy h1 br,.enterprise-hero-copy p br{display:none}.enterprise-hero-copy p{font-size:16px}.enterprise-story-flow{grid-template-rows:auto 48px auto 48px auto;grid-template-columns:1fr;gap:0}.enterprise-flow-link{grid-template-columns:1fr auto;gap:12px;padding:6px 18px}.enterprise-flow-track{border-top:0;border-left:3px dotted;width:2px;height:36px}.enterprise-flow-track:after{top:auto;bottom:0;right:-5px;transform:rotate(135deg)}.enterprise-flow-track i{top:0;left:-6px}.enterprise-flow-link.is-on .enterprise-flow-track i{animation:1.8s ease-in-out infinite enterprise-transfer-mobile}.enterprise-flow-link>span{text-align:left}.enterprise-stage{min-height:300px}.enterprise-memory{transform:none}.enterprise-stage h2{font-size:23px}.enterprise-stage header p{font-size:15px}.enterprise-stage-list span{font-size:16px}.enterprise-memory-list small{font-size:13px}.enterprise-security-band{grid-template-columns:1fr 1fr}.enterprise-security-lead{border-bottom:1px solid #cbd2c8;border-right:0;grid-column:1/-1}.enterprise-security-proof{min-height:76px}.enterprise-security-proof:last-child{border-top:1px dashed #c8cfc4;grid-column:1/-1}}@keyframes enterprise-transfer-mobile{0%{opacity:.25;top:0}45%{opacity:1}to{opacity:.25;top:calc(100% - 10px)}}.app-shell.enterprise-shell,.enterprise-main,.story-surface.mode-enterprise{color:#f7f1e6;background:#0a100c}.enterprise-main,.story-surface.mode-enterprise{min-height:620px}.enterprise-continuity-scene{background:radial-gradient(circle at 50% 54%,#dea43521,#0000 24%),radial-gradient(circle at 15% 5%,#5f7e4529,#0000 32%),linear-gradient(#0c130e,#080d0a);gap:clamp(13px,2vh,22px);padding:clamp(18px,3vh,30px) clamp(26px,4vw,66px) clamp(16px,2.5vh,26px)}.enterprise-continuity-scene:before{opacity:.3;background-image:linear-gradient(#78976714 1px,#0000 1px),linear-gradient(90deg,#78976714 1px,#0000 1px);background-size:32px 32px;-webkit-mask-image:linear-gradient(#000,#0000 94%);mask-image:linear-gradient(#000,#0000 94%)}.enterprise-scenario-tabs{background:#121b14eb;border-color:#41523c;border-radius:10px;width:100%;min-height:50px;box-shadow:inset 0 1px #ffffff0a,0 12px 36px #0000003d}.enterprise-scenario-tabs button{color:#bdc5b9;font:650 clamp(10px,.75vw,12px)/1.1 var(--mono);letter-spacing:.055em;text-transform:uppercase;border-right-color:#354332;justify-content:flex-start;gap:10px;padding:11px clamp(12px,1.5vw,22px)}.enterprise-scenario-tabs button>svg{color:#d2ad61;flex:none}.enterprise-scenario-tabs button span{color:#768373;font-size:9px}.enterprise-scenario-tabs button b{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.enterprise-scenario-tabs button:hover{color:#f7f1e6;background:#1b291d}.enterprise-scenario-tabs button:focus-visible{outline-color:#e7b2489e}.enterprise-scenario-tabs button.is-active{color:#fff;background:linear-gradient(90deg,#41573a,#293a2b);box-shadow:inset 0 0 0 1px #b6cf7b,inset 0 -2px #e0a52c}.enterprise-scenario-tabs button.is-active span,.enterprise-scenario-tabs button.is-active>svg{color:#f0c15f}.enterprise-scenario-panel{gap:clamp(12px,1.8vh,19px)}.enterprise-hero-copy h1{color:#f8f2e8;text-shadow:0 2px 18px #00000042;font-size:clamp(28px,3.15vw,50px);line-height:.98}.enterprise-hero-copy h1 span{color:#edb23f;text-shadow:0 0 26px #edb23f24}.enterprise-hero-copy p{color:#aeb9ad;font-size:clamp(13px,.98vw,16px)}.enterprise-stage{color:#e9eee6;background:linear-gradient(#1d2a1ff0,#111a13f5);border-color:#4d6049;border-radius:11px;height:min(100%,430px);box-shadow:inset 0 1px #ffffff0a,0 18px 44px #00000047}.enterprise-stage.is-active{border-color:#60775a;box-shadow:inset 0 1px #ffffff0d,0 20px 46px #00000052}.enterprise-stage>header{background:#213023b8;border-bottom-color:#394a38}.enterprise-stage-icon{color:#d7e6c6;background:#283b2b;box-shadow:inset 0 0 0 1px #4e6449}.enterprise-stage-number{color:#fff;background:#527154}.enterprise-stage h2{color:#f8f3e9}.enterprise-stage header p{color:#aebbaa}.enterprise-stage-list>div{color:#dfe7db;box-shadow:none;background:#0e161094;border-color:#3e4e3b}.enterprise-stage-list svg{color:#b9d392}.enterprise-stage-list span{color:#e5eadf}.enterprise-memory{background:linear-gradient(#283729,#171f19);border-color:#e4a832;box-shadow:0 0 0 1px #e4a83238,0 0 38px #e4a83229,0 24px 54px #00000061}.enterprise-memory.is-active{border-color:#efb542;box-shadow:0 0 0 1px #efb54240,0 0 44px #e4a83233,0 26px 60px #0000006b}.enterprise-memory>header{background:linear-gradient(135deg,#32452f,#1e3125);border-bottom-color:#6b6338}.enterprise-memory .enterprise-stage-icon{color:#f3ca6f;background:#25392a;border-color:#e9b444;box-shadow:0 0 0 5px #efb5421a}.enterprise-memory-list>div{color:#f1eee3;background:#0f1610a8;border-color:#554e31}.enterprise-memory-list>div>span{color:#f2c660;background:#2e3926}.enterprise-memory-list small{color:#8f9a8b}.enterprise-memory-list>div>svg{color:#a9d08d}.enterprise-memory-foot{color:#c7d7b4;background:#25291b;border-top-color:#5d5532}.enterprise-memory-foot b{color:#efbd59}.enterprise-flow-link{color:#90ae77;opacity:.92}.enterprise-flow-link.is-on{color:#d5c76f}.enterprise-flow-track i{background:#172119;border-color:#f0c967;box-shadow:0 0 16px #e0a52c}.enterprise-flow-link>span{color:#abc991;font-family:var(--mono);letter-spacing:.03em;text-transform:uppercase}.enterprise-stage-note{color:#cce4c4;background:#3f664452;border-left-color:#79aa73}.enterprise-stage-note.is-warm{color:#e3b9a0;background:#75412d42;border-left-color:#c58358}.enterprise-security-band{color:#dfe7dc;background:#121b14f0;border-color:#43523e;border-radius:11px;box-shadow:inset 0 1px #ffffff08,0 14px 34px #0000003d}.enterprise-security-lead,.enterprise-security-proof{border-right-color:#394737}.enterprise-security-lead>span{color:#e3f2d7;background:linear-gradient(145deg,#426a48,#1c482f);box-shadow:0 0 22px #72a66629}.enterprise-security-band b{color:#edf1e7}.enterprise-security-band small{color:#8f9a8d}.enterprise-security-proof{border-right-color:#394737}.enterprise-security-proof>svg{color:#d2ad61}.enterprise-security-band.is-complete{border-color:#718266;box-shadow:0 0 30px #84ab6817}@media(max-height:700px)and (min-width:761px){.enterprise-continuity-scene{gap:9px;padding:12px 34px 11px}.enterprise-scenario-tabs{min-height:42px}.enterprise-scenario-tabs button{padding:7px 12px;font-size:9px}.enterprise-scenario-panel{gap:9px}.enterprise-hero-copy h1{font-size:30px}.enterprise-hero-copy p{margin-top:5px;font-size:11px}.enterprise-stage{height:min(100%,370px)}.enterprise-stage>header{min-height:60px;padding:9px 12px}.enterprise-stage-icon{width:38px;height:38px}.enterprise-stage h2{font-size:17px}.enterprise-stage header p{font-size:11px}.enterprise-stage-list,.enterprise-memory-list{gap:5px;padding:8px 10px}.enterprise-stage-list>div{min-height:36px;padding:6px 9px}.enterprise-stage-list span{font-size:12px}.enterprise-memory-list>div{min-height:40px;padding:6px 8px}.enterprise-memory-list>div>span{width:31px;height:31px}.enterprise-memory-list b{font-size:13px}.enterprise-memory-list small{font-size:9px}.enterprise-stage-note{margin:0 10px 7px;padding:5px 7px}.enterprise-security-band{min-height:62px}.enterprise-security-lead,.enterprise-security-proof{padding:7px 10px}.enterprise-security-lead>span{width:40px;height:40px}.enterprise-security-band b{font-size:10px}.enterprise-security-band small{font-size:8px}}@media(max-width:760px){.app-shell.enterprise-shell,.enterprise-main,.story-surface.mode-enterprise{background:#0a100c}.story-surface.mode-enterprise,.enterprise-continuity-scene{min-height:2100px}.enterprise-continuity-scene{gap:22px;padding:22px 16px}.enterprise-scenario-tabs{grid-template-columns:1fr 1fr;min-height:112px}.enterprise-scenario-tabs button{padding:12px 11px;font-size:9px}.enterprise-scenario-tabs button b{white-space:normal}.enterprise-scenario-tabs button:nth-child(2){border-right:0}.enterprise-scenario-tabs button:nth-child(-n+2){border-bottom-color:#354332}.enterprise-scenario-panel{gap:22px}.enterprise-hero-copy h1{font-size:clamp(34px,10vw,46px)}.enterprise-hero-copy p{font-size:15px}.enterprise-stage{min-height:300px}.enterprise-security-lead{border-bottom-color:#394737}.enterprise-security-proof:last-child{border-top-color:#394737}}html.embedded .story-surface:not(.mode-enterprise){--soft:#b8b0a5;--muted:#958e84}html.embedded .story-surface:not(.mode-enterprise) :is(.storage-group,.storage-group b,.storage-message,.storage-message b,.ledger-row,.arrival-token b,.installed-stamp,.queue-row,.pool-object,.pool-total,.pipeline-head,.pipeline-stage,.transfer-line,.memory-packet,.mcp-node>b,.mcp-node small,.archive-row,.return-packet,.search-pool-count,.device-head>b,.device-screen,.local-mcp b,.context-result span,.handoff-object,.handoff-object b,.handoff-packet,.team-packet,.continue-note,.team-member-screen,.project-row>button,.share-entry button,.invite-actions button,.share-project-form b,.project-invitation p,.team-agent-body,.team-agent-prompt,.team-connected-state b,.team-search-console,.team-search-prompt,.team-search-return,.shared-project-head>i,.shared-project-members>span,.shared-project-members>b,.shared-project-rows>div,.member-manager-head b,.member-manager-head button,.project-member-list>div,.project-member-list em,.project-member-list button,.bob-invite-form,.bob-invite-form button,.remove-confirmation p,.remove-confirmation button){font-size:10px}html.embedded .story-surface:not(.mode-enterprise) :is(small,.codex-footer,.device-foot,.pool-meta,.member-mcp-bay,.member-mcp-bay b,.shared-project-foot>span,.shared-project-foot b,.team-cloud-legend){font-size:11px;line-height:1.35}html.embedded .story-surface:not(.mode-enterprise) :is(.codex-footer,.device-foot){color:var(--muted)}.app-shell.enterprise-shell,.enterprise-main,.story-surface.mode-enterprise{height:auto;min-height:0;display:block;overflow:visible}.enterprise-continuity-scene{grid-template-rows:auto auto;gap:24px;height:auto;min-height:0;padding:24px;position:relative;inset:auto;overflow:visible}.enterprise-scenario-panel{grid-template-rows:auto auto auto;gap:24px}.enterprise-scenario-tabs{grid-template-columns:repeat(4,minmax(0,1fr));min-height:56px}.enterprise-scenario-tabs button{letter-spacing:0;text-align:left;gap:8px;min-height:56px;padding:12px;font-size:12px;line-height:1.35}.enterprise-scenario-tabs button b{white-space:normal;text-overflow:clip;overflow:visible}.enterprise-scenario-tabs button span{font-size:11px}.enterprise-hero-copy h1{max-width:30ch;font-size:clamp(26px,3vw,40px);line-height:1.1}.enterprise-hero-copy p{max-width:72ch;margin:12px auto 0;font-size:15px;line-height:1.55}.enterprise-story-flow{grid-template-rows:auto;grid-template-columns:minmax(0,1fr) 36px minmax(0,1.12fr) 36px minmax(0,1fr);align-items:stretch;gap:0}.enterprise-stage,.enterprise-memory{border-radius:10px;height:auto;min-height:0;transform:none}.enterprise-stage>header{grid-template-columns:auto minmax(0,1fr);gap:10px;min-height:90px;padding:16px}.enterprise-stage-icon{width:36px;height:36px}.enterprise-stage-icon svg{width:24px;height:24px}.enterprise-stage-number{display:none}.enterprise-stage h2{text-wrap:initial;font-size:20px;line-height:1.2}.enterprise-stage header p{margin-top:6px;font-size:13px;line-height:1.45}.enterprise-stage-list,.enterprise-memory-list{gap:8px;margin:0 0 auto;padding:14px}.enterprise-stage-list>div,.enterprise-memory-list>div{border-radius:7px;gap:9px;min-height:48px;padding:10px}.enterprise-stage-list span,.enterprise-memory-list b{font-size:14px;line-height:1.4}.enterprise-stage-list svg{width:18px;height:18px}.enterprise-memory-list>div>span{width:28px;height:28px}.enterprise-memory-list>div>span svg{width:18px;height:18px}.enterprise-memory-list small{white-space:normal;font-size:12px;line-height:1.4}.enterprise-memory-list>div>svg{width:15px;height:15px}.enterprise-memory-foot{min-height:44px;padding:12px;font-size:12px;line-height:1.4}.enterprise-memory-foot b{font-size:10px}.enterprise-stage-note,.enterprise-context-note,.enterprise-departed-note{gap:8px;margin:0 14px 14px;padding:10px}.enterprise-stage-note>span,.enterprise-context-note>span,.enterprise-departed-note>span{font-size:12px;line-height:1.5}.enterprise-flow-link{gap:8px;padding:0 5px}.enterprise-flow-link>span{display:none}.enterprise-flow-track{border-top:2px dotted;border-left:0;width:100%;height:2px}.enterprise-flow-track:after{top:-6px;bottom:auto;right:0;transform:rotate(45deg)}.enterprise-flow-link.is-on .enterprise-flow-track i{animation:1.8s ease-in-out infinite enterprise-transfer}.enterprise-security-band{border-radius:10px;grid-template-columns:1.5fr repeat(3,1fr);min-height:0}.enterprise-security-lead,.enterprise-security-proof{gap:10px;min-height:0;padding:16px}.enterprise-security-lead>span{width:36px;height:36px}.enterprise-security-band b{font-size:13px;line-height:1.4}.enterprise-security-band small{font-size:12px;line-height:1.45}@media(max-width:1000px){.enterprise-continuity-scene{gap:20px;padding:18px}.enterprise-scenario-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.enterprise-scenario-tabs button:nth-child(2){border-right:0}.enterprise-scenario-tabs button:nth-child(-n+2){border-bottom:1px solid #354332}.enterprise-stage>header{grid-template-columns:1fr;gap:8px;padding:12px}.enterprise-stage h2{font-size:18px}.enterprise-stage-icon{display:none}.enterprise-stage-list,.enterprise-memory-list{padding:10px}.enterprise-memory-list>div{grid-template-columns:minmax(0,1fr) auto}.enterprise-memory-list>div>span{display:none}.enterprise-security-band{grid-template-columns:1fr 1fr}.enterprise-security-lead{border-bottom:1px solid #354332;border-right:1px solid #354332;grid-column:auto}.enterprise-security-proof{border-bottom:1px solid #354332;border-right:0}.enterprise-security-proof:nth-child(3){border-bottom:0;border-right:1px solid #354332}.enterprise-security-proof:last-child{border:0;grid-column:auto}}@media(max-width:680px){.enterprise-continuity-scene{gap:20px;padding:14px}.enterprise-scenario-tabs{min-height:0}.enterprise-scenario-tabs button{gap:7px;min-height:64px;padding:10px;font-size:12px}.enterprise-scenario-tabs button span{display:none}.enterprise-scenario-tabs button>svg{width:16px;height:16px}.enterprise-hero-copy h1{font-size:26px}.enterprise-hero-copy p{font-size:14px;line-height:1.5}.enterprise-story-flow{grid-template-rows:auto 28px auto 28px auto;grid-template-columns:1fr}.enterprise-stage>header{grid-template-columns:auto minmax(0,1fr);min-height:0;padding:14px}.enterprise-stage-icon{width:32px;height:32px;display:grid}.enterprise-stage h2{font-size:19px}.enterprise-stage-list,.enterprise-memory-list{padding:12px}.enterprise-stage-list>div,.enterprise-memory-list>div{min-height:42px;padding:8px 10px}.enterprise-stage-list span,.enterprise-memory-list b{font-size:14px}.enterprise-flow-link{justify-content:center;align-items:center;padding:4px;display:flex}.enterprise-flow-track{border-top:0;border-left:2px dotted;width:2px;height:18px}.enterprise-flow-track:after{width:7px;height:7px;top:auto;bottom:0;right:-4px;transform:rotate(135deg)}.enterprise-flow-track i{display:none}.enterprise-security-band{grid-template-columns:1fr}.enterprise-security-lead,.enterprise-security-proof,.enterprise-security-proof:nth-child(3){border-bottom:1px solid #354332;border-right:0;grid-column:auto;padding:12px}.enterprise-security-proof:last-child{border:0}}@media(max-width:420px){.enterprise-scenario-tabs button>svg{display:none}.enterprise-scenario-tabs button b{overflow-wrap:anywhere;min-width:0}.enterprise-scenario-tabs button{font-size:11px}}
@@ -0,0 +1,18 @@
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
+ <title>How SealKeep preserves agent memory</title>
7
+ <meta name="description" content="See how SealKeep preserves agent memory, reclaims disk space, and returns useful context." />
8
+ <meta property="og:title" content="SealKeep Visual Explanation" />
9
+ <meta property="og:description" content="An interactive animation explaining how the SealKeep product works." />
10
+ <meta property="og:type" content="website" />
11
+ <meta name="twitter:card" content="summary_large_image" />
12
+ <script type="module" crossorigin src="./assets/index-8Nxnkc7o.js"></script>
13
+ <link rel="stylesheet" crossorigin href="./assets/index-oxLy1bpy.css">
14
+ </head>
15
+ <body>
16
+ <div id="root"></div>
17
+ </body>
18
+ </html>
package/dist/site.zip CHANGED
Binary file
@@ -8,7 +8,16 @@ export type ActivityOptions = {
8
8
  now?: number;
9
9
  /** Injected for tests; defaults to a real `lsof` probe where available. */
10
10
  openHandles?: (path: string) => Promise<boolean | null>;
11
+ /** Injected for tests; null means process inspection could not be trusted. */
12
+ liveNativeSession?: (path: string) => Promise<boolean | null>;
11
13
  };
14
+ /**
15
+ * A native agent can close its transcript while waiting at a prompt, so lsof
16
+ * alone is not an activity oracle. Match only a Codex/Claude executable (or
17
+ * its node script) and exact UUIDs belonging to this rollout. Unknown process
18
+ * state fails closed at the caller.
19
+ */
20
+ export declare function probeLiveNativeSession(path: string): Promise<boolean | null>;
12
21
  /**
13
22
  * Reports whether any process currently holds the file open.
14
23
  * Returns `null` when it cannot tell, which callers must treat as "assume active".
@@ -1,8 +1,91 @@
1
1
  import { execFile } from "node:child_process";
2
- import { stat } from "node:fs/promises";
2
+ import { readlink, realpath, stat } from "node:fs/promises";
3
3
  import { platform } from "node:os";
4
+ import { basename, resolve, sep } from "node:path";
4
5
  import { promisify } from "node:util";
6
+ import { codexSessionProcessIdentity } from "./resume-stub.js";
5
7
  const run = promisify(execFile);
8
+ const UUID = /[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/ig;
9
+ function nativeAgentForPath(path) {
10
+ const normalized = path.split("/").join(sep).toLowerCase();
11
+ if (normalized.includes(`${sep}.codex${sep}sessions${sep}`)
12
+ || normalized.includes(`${sep}.codex${sep}archived_sessions${sep}`))
13
+ return "codex";
14
+ if (normalized.includes(`${sep}.claude${sep}projects${sep}`))
15
+ return "claude";
16
+ return null;
17
+ }
18
+ /**
19
+ * A native agent can close its transcript while waiting at a prompt, so lsof
20
+ * alone is not an activity oracle. Match only a Codex/Claude executable (or
21
+ * its node script) and exact UUIDs belonging to this rollout. Unknown process
22
+ * state fails closed at the caller.
23
+ */
24
+ export async function probeLiveNativeSession(path) {
25
+ const agent = nativeAgentForPath(path);
26
+ if (!agent)
27
+ return false;
28
+ let ids;
29
+ let expectedCwd = null;
30
+ try {
31
+ if (agent === "codex") {
32
+ const identity = await codexSessionProcessIdentity(path);
33
+ ids = identity.ids;
34
+ expectedCwd = await realpath(identity.cwd).catch(() => resolve(identity.cwd));
35
+ }
36
+ else {
37
+ ids = [...basename(path).matchAll(UUID)].map((match) => match[0]);
38
+ }
39
+ }
40
+ catch {
41
+ return null;
42
+ }
43
+ if (ids.length === 0)
44
+ return null;
45
+ try {
46
+ const { stdout } = await run("ps", ["-Ao", "pid=,command="], { timeout: 3000, maxBuffer: 32 * 1024 * 1024 });
47
+ const wanted = new Set(ids.map((id) => id.toLowerCase()));
48
+ let unmappedAgent = false;
49
+ for (const line of stdout.split("\n")) {
50
+ const fields = line.trim().split(/\s+/);
51
+ const pid = Number(fields.shift());
52
+ const head = fields.slice(0, 2);
53
+ const names = head.map((token) => token.split(/[\\/]/).pop()?.toLowerCase() ?? "");
54
+ if (!names.some((name) => name === agent))
55
+ continue;
56
+ const argvIds = line.match(UUID) ?? [];
57
+ if (argvIds.some((id) => wanted.has(id.toLowerCase())))
58
+ return true;
59
+ if (argvIds.length > 0)
60
+ continue;
61
+ // A fresh `codex`/`claude` invocation may carry no UUID. Resolve its cwd
62
+ // rather than treating absence as proof that it is unrelated. If the OS
63
+ // cannot map it, native destructive reclaim defers.
64
+ let processCwd = null;
65
+ if (Number.isSafeInteger(pid) && pid > 0) {
66
+ if (platform() === "linux") {
67
+ processCwd = await readlink(`/proc/${pid}/cwd`).then((cwd) => resolve(cwd), () => null);
68
+ }
69
+ else if (platform() !== "win32") {
70
+ const cwdOutput = await run("lsof", ["-a", "-p", String(pid), "-d", "cwd", "-Fn"], {
71
+ timeout: 3000,
72
+ maxBuffer: 1024 * 1024,
73
+ }).then((result) => result.stdout, () => "");
74
+ const cwdLine = cwdOutput.split("\n").find((entry) => entry.startsWith("n/"));
75
+ processCwd = cwdLine ? resolve(cwdLine.slice(1)) : null;
76
+ }
77
+ }
78
+ if (processCwd && expectedCwd && processCwd === expectedCwd)
79
+ return true;
80
+ if (!processCwd || !expectedCwd)
81
+ unmappedAgent = true;
82
+ }
83
+ return unmappedAgent ? null : false;
84
+ }
85
+ catch {
86
+ return null;
87
+ }
88
+ }
6
89
  /**
7
90
  * Reports whether any process currently holds the file open.
8
91
  * Returns `null` when it cannot tell, which callers must treat as "assume active".
@@ -48,5 +131,11 @@ export async function isSourceActive(path, options = {}) {
48
131
  return { active: true, reason: "could not determine whether a process holds the file open" };
49
132
  if (open)
50
133
  return { active: true, reason: "a process currently holds the file open" };
134
+ const processProbe = options.liveNativeSession ?? probeLiveNativeSession;
135
+ const live = await processProbe(path);
136
+ if (live === null)
137
+ return { active: true, reason: "could not determine whether a native agent is still using this session" };
138
+ if (live)
139
+ return { active: true, reason: "the session belongs to a running native agent process" };
51
140
  return { active: false, reason: `idle for ${Math.round(age / 60_000)} minutes with no open handle` };
52
141
  }