@cats-inc/cats-platform 0.2.8 → 0.3.5

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 (205) hide show
  1. package/README.md +25 -1
  2. package/build/desktop/bootstrapPage.d.ts.map +1 -1
  3. package/build/desktop/bootstrapPage.js +26 -129
  4. package/build/desktop/bootstrapPage.js.map +1 -1
  5. package/build/desktop/cliInventoryProbe.d.ts +6 -0
  6. package/build/desktop/cliInventoryProbe.d.ts.map +1 -1
  7. package/build/desktop/cliInventoryProbe.js +6 -3
  8. package/build/desktop/cliInventoryProbe.js.map +1 -1
  9. package/build/desktop/contracts.d.ts +2 -0
  10. package/build/desktop/contracts.d.ts.map +1 -1
  11. package/build/desktop/contracts.js.map +1 -1
  12. package/build/desktop/main.js +95 -41
  13. package/build/desktop/main.js.map +1 -1
  14. package/build/desktop/preload.cjs +8 -6
  15. package/build/desktop/preload.cjs.map +1 -1
  16. package/build/desktop/providerManager.d.ts +46 -0
  17. package/build/desktop/providerManager.d.ts.map +1 -0
  18. package/build/desktop/providerManager.js +220 -0
  19. package/build/desktop/providerManager.js.map +1 -0
  20. package/build/desktop/providerSelection.d.ts +1 -0
  21. package/build/desktop/providerSelection.d.ts.map +1 -1
  22. package/build/desktop/providerSelection.js +7 -1
  23. package/build/desktop/providerSelection.js.map +1 -1
  24. package/build/desktop/setupAssets.d.ts.map +1 -1
  25. package/build/desktop/setupAssets.js +12 -0
  26. package/build/desktop/setupAssets.js.map +1 -1
  27. package/build/desktop/setupAudit.d.ts +3 -1
  28. package/build/desktop/setupAudit.d.ts.map +1 -1
  29. package/build/desktop/setupAudit.js +12 -8
  30. package/build/desktop/setupAudit.js.map +1 -1
  31. package/build/desktop/setupBridge.js +1 -1
  32. package/build/desktop/setupBridge.js.map +1 -1
  33. package/build/desktop/setupPrerequisites.d.ts +11 -0
  34. package/build/desktop/setupPrerequisites.d.ts.map +1 -0
  35. package/build/desktop/setupPrerequisites.js +47 -0
  36. package/build/desktop/setupPrerequisites.js.map +1 -0
  37. package/build/renderer/assets/ActiveSessionPermissionChip-BugyYoVY.js +1 -0
  38. package/build/renderer/assets/{App-BZA23O2J.js → App-1MFRMMld.js} +1 -1
  39. package/build/renderer/assets/{App-YqprEL2n.js → App-BWgnfutX.js} +1 -1
  40. package/build/renderer/assets/{App-rGw9J8PZ.js → App-Cm_tok6f.js} +1 -1
  41. package/build/renderer/assets/{WorkspaceAppRoutes-BCHCikmJ.js → WorkspaceAppRoutes-B8U5FWao.js} +1 -1
  42. package/build/renderer/assets/app-CqnsY5ed.css +1 -0
  43. package/build/renderer/assets/app-DTDTNtih.js +85 -0
  44. package/build/renderer/assets/{client-BdGHAUoK.js → client-DREGSZqQ.js} +1 -1
  45. package/build/renderer/assets/conversationSidebarRecentEntries-y_bEg3Cp.js +6 -0
  46. package/build/renderer/assets/{screenshotOverlay-DfBcolX-.js → screenshotOverlay-EF07cXvw.js} +1 -1
  47. package/build/renderer/assets/{useDraftSessionChips-D9BX6X92.js → useDraftSessionChips-BD6ZGG_y.js} +1 -1
  48. package/build/renderer/desktop/overlay/index.html +2 -2
  49. package/build/renderer/index.html +3 -3
  50. package/build/server/app/renderer/auth/api.d.ts.map +1 -1
  51. package/build/server/app/renderer/auth/api.js +4 -1
  52. package/build/server/app/renderer/auth/api.js.map +1 -1
  53. package/build/server/app/renderer/providerCatalogClient.d.ts.map +1 -1
  54. package/build/server/app/renderer/providerCatalogClient.js +19 -6
  55. package/build/server/app/renderer/providerCatalogClient.js.map +1 -1
  56. package/build/server/app/renderer/providerClientInvalidation.d.ts +6 -0
  57. package/build/server/app/renderer/providerClientInvalidation.d.ts.map +1 -0
  58. package/build/server/app/renderer/providerClientInvalidation.js +12 -0
  59. package/build/server/app/renderer/providerClientInvalidation.js.map +1 -0
  60. package/build/server/app/renderer/providerReadLoop.d.ts +5 -0
  61. package/build/server/app/renderer/providerReadLoop.d.ts.map +1 -0
  62. package/build/server/app/renderer/providerReadLoop.js +52 -0
  63. package/build/server/app/renderer/providerReadLoop.js.map +1 -0
  64. package/build/server/app/renderer/providerRegistryClient.d.ts +2 -1
  65. package/build/server/app/renderer/providerRegistryClient.d.ts.map +1 -1
  66. package/build/server/app/renderer/providerRegistryClient.js +33 -17
  67. package/build/server/app/renderer/providerRegistryClient.js.map +1 -1
  68. package/build/server/app/server/authGatePolicy.js +7 -0
  69. package/build/server/app/server/authGatePolicy.js.map +1 -1
  70. package/build/server/app/server/shutdown.d.ts.map +1 -1
  71. package/build/server/app/server/shutdown.js +3 -1
  72. package/build/server/app/server/shutdown.js.map +1 -1
  73. package/build/server/app/server/startup.d.ts +4 -3
  74. package/build/server/app/server/startup.d.ts.map +1 -1
  75. package/build/server/app/server/startup.js +8 -0
  76. package/build/server/app/server/startup.js.map +1 -1
  77. package/build/server/app/server/subscribeRoutes.d.ts.map +1 -1
  78. package/build/server/app/server/subscribeRoutes.js +5 -3
  79. package/build/server/app/server/subscribeRoutes.js.map +1 -1
  80. package/build/server/design/components/providerModelFieldsSupport.d.ts +2 -21
  81. package/build/server/design/components/providerModelFieldsSupport.d.ts.map +1 -1
  82. package/build/server/design/components/providerModelFieldsSupport.js +32 -36
  83. package/build/server/design/components/providerModelFieldsSupport.js.map +1 -1
  84. package/build/server/design/components/useProviderCatalogState.d.ts +1 -2
  85. package/build/server/design/components/useProviderCatalogState.d.ts.map +1 -1
  86. package/build/server/design/components/useProviderCatalogState.js +71 -152
  87. package/build/server/design/components/useProviderCatalogState.js.map +1 -1
  88. package/build/server/design/components/useProviderModelFieldActions.js +2 -2
  89. package/build/server/design/components/useProviderModelFieldActions.js.map +1 -1
  90. package/build/server/design/components/useProviderRegistryState.d.ts +1 -7
  91. package/build/server/design/components/useProviderRegistryState.d.ts.map +1 -1
  92. package/build/server/design/components/useProviderRegistryState.js +41 -91
  93. package/build/server/design/components/useProviderRegistryState.js.map +1 -1
  94. package/build/server/design/components/useProviderTargetReconciliation.d.ts +1 -0
  95. package/build/server/design/components/useProviderTargetReconciliation.d.ts.map +1 -1
  96. package/build/server/design/components/useProviderTargetReconciliation.js +1 -1
  97. package/build/server/design/components/useProviderTargetReconciliation.js.map +1 -1
  98. package/build/server/index.js +30 -0
  99. package/build/server/index.js.map +1 -1
  100. package/build/server/platform/orchestration/entitySubscriptions/channel.d.ts +2 -1
  101. package/build/server/platform/orchestration/entitySubscriptions/channel.d.ts.map +1 -1
  102. package/build/server/platform/orchestration/entitySubscriptions/channel.js +3 -18
  103. package/build/server/platform/orchestration/entitySubscriptions/channel.js.map +1 -1
  104. package/build/server/platform/orchestration/entitySubscriptions/index.d.ts +1 -0
  105. package/build/server/platform/orchestration/entitySubscriptions/index.d.ts.map +1 -1
  106. package/build/server/platform/orchestration/entitySubscriptions/index.js.map +1 -1
  107. package/build/server/products/chat/api/routeSupport.d.ts +9 -1
  108. package/build/server/products/chat/api/routeSupport.d.ts.map +1 -1
  109. package/build/server/products/chat/api/routeSupport.js +22 -0
  110. package/build/server/products/chat/api/routeSupport.js.map +1 -1
  111. package/build/server/products/chat/state/model/readModels.d.ts +1 -0
  112. package/build/server/products/chat/state/model/readModels.d.ts.map +1 -1
  113. package/build/server/products/chat/state/model/readModels.js +2 -1
  114. package/build/server/products/chat/state/model/readModels.js.map +1 -1
  115. package/build/server/products/shared/renderer/api/appShell.d.ts +1 -0
  116. package/build/server/products/shared/renderer/api/appShell.d.ts.map +1 -1
  117. package/build/server/products/shared/renderer/api/appShell.js +9 -0
  118. package/build/server/products/shared/renderer/api/appShell.js.map +1 -1
  119. package/build/server/runtime/client.d.ts.map +1 -1
  120. package/build/server/runtime/client.js +5 -1
  121. package/build/server/runtime/client.js.map +1 -1
  122. package/build/server/runtime/setup.d.ts +4 -0
  123. package/build/server/runtime/setup.d.ts.map +1 -1
  124. package/build/server/runtime/setup.js +3 -1
  125. package/build/server/runtime/setup.js.map +1 -1
  126. package/build/server/server/routes/providers.d.ts.map +1 -1
  127. package/build/server/server/routes/providers.js +21 -50
  128. package/build/server/server/routes/providers.js.map +1 -1
  129. package/build/server/shared/cliInteraction.d.ts +17 -0
  130. package/build/server/shared/cliInteraction.d.ts.map +1 -0
  131. package/build/server/shared/cliInteraction.js +102 -0
  132. package/build/server/shared/cliInteraction.js.map +1 -0
  133. package/build/server/shared/desktopRecoveryBridge.d.ts +2 -1
  134. package/build/server/shared/desktopRecoveryBridge.d.ts.map +1 -1
  135. package/build/server/shared/desktopRecoveryBridge.js.map +1 -1
  136. package/build/server/shared/providerCatalogData.d.ts +168 -96
  137. package/build/server/shared/providerCatalogData.d.ts.map +1 -1
  138. package/build/server/shared/providerCatalogData.js +68 -42
  139. package/build/server/shared/providerCatalogData.js.map +1 -1
  140. package/build/server/shared/providerRegistryWarnings.d.ts +4 -0
  141. package/build/server/shared/providerRegistryWarnings.d.ts.map +1 -1
  142. package/build/server/shared/providerRegistryWarnings.js +7 -0
  143. package/build/server/shared/providerRegistryWarnings.js.map +1 -1
  144. package/package.json +13 -6
  145. package/packages/provider-setup/manager.d.ts +79 -0
  146. package/packages/provider-setup/manager.js +441 -0
  147. package/scripts/README.md +23 -0
  148. package/scripts/build-desktop-installer.mjs +124 -16
  149. package/scripts/dev-server.mjs +4 -1
  150. package/scripts/linux/install-github-cli.sh +5 -0
  151. package/scripts/linux/install-node.sh +9 -3
  152. package/scripts/linux/node-cli-common.sh +87 -48
  153. package/scripts/linux/provider-cli-common.sh +80 -105
  154. package/scripts/linux/provider-version-common.sh +247 -0
  155. package/scripts/linux/test-linux-package-smoke.sh +2 -0
  156. package/scripts/linux/verified-npm-update.sh +20 -0
  157. package/scripts/macos/install-github-cli.sh +5 -0
  158. package/scripts/macos/install-node.sh +9 -3
  159. package/scripts/macos/node-cli-common.sh +87 -48
  160. package/scripts/macos/provider-cli-common.sh +80 -105
  161. package/scripts/macos/provider-version-common.sh +247 -0
  162. package/scripts/macos/test-macos-package-smoke.sh +2 -0
  163. package/scripts/macos/verified-npm-update.sh +20 -0
  164. package/scripts/testing/conversation-navigation-smoke-electron.cjs +134 -0
  165. package/scripts/testing/conversation-navigation-smoke-renderer.tsx +102 -0
  166. package/scripts/testing/conversation-navigation-smoke.mjs +67 -0
  167. package/scripts/validate-release-assets.mjs +4 -1
  168. package/scripts/windows/Install-Antigravity.ps1 +26 -3
  169. package/scripts/windows/Install-ClaudeCode.ps1 +25 -7
  170. package/scripts/windows/Install-CursorAgent.ps1 +45 -30
  171. package/scripts/windows/Install-Devin.ps1 +16 -47
  172. package/scripts/windows/Install-GitHubCli.ps1 +4 -0
  173. package/scripts/windows/Install-Goose.ps1 +18 -1
  174. package/scripts/windows/Install-Grok.ps1 +14 -1
  175. package/scripts/windows/Install-Junie.ps1 +32 -11
  176. package/scripts/windows/Install-KiroCli.ps1 +37 -13
  177. package/scripts/windows/Install-MetaCli.ps1 +8 -1
  178. package/scripts/windows/Install-Node.ps1 +6 -1
  179. package/scripts/windows/Setup-NodeGlobalPrefix.ps1 +10 -0
  180. package/scripts/windows/Test-WindowsInstallerSmoke.ps1 +2 -0
  181. package/scripts/windows/_HiddenProcess.ps1 +14 -3
  182. package/scripts/windows/_NativeInstallerSupport.ps1 +308 -0
  183. package/scripts/windows/_NpmCliInstaller.ps1 +35 -14
  184. package/scripts/windows/_PackagedUninstall.ps1 +9 -1
  185. package/scripts/windows/_VerifiedNpmUpdate.ps1 +25 -0
  186. package/build/renderer/assets/ActiveSessionPermissionChip-CAgN-tXv.js +0 -1
  187. package/build/renderer/assets/app-BV3UAQkR.css +0 -1
  188. package/build/renderer/assets/app-CVPqqfZo.js +0 -45
  189. package/build/renderer/assets/conversationSidebarRecentEntries-iqaLqA1n.js +0 -6
  190. package/build/server/app/renderer/settings/runtimeLifecycleHelpers.d.ts +0 -48
  191. package/build/server/app/renderer/settings/runtimeLifecycleHelpers.d.ts.map +0 -1
  192. package/build/server/app/renderer/settings/runtimeLifecycleHelpers.js +0 -535
  193. package/build/server/app/renderer/settings/runtimeLifecycleHelpers.js.map +0 -1
  194. package/build/server/design/components/useProviderRegistryAutoRecheck.d.ts +0 -13
  195. package/build/server/design/components/useProviderRegistryAutoRecheck.d.ts.map +0 -1
  196. package/build/server/design/components/useProviderRegistryAutoRecheck.js +0 -70
  197. package/build/server/design/components/useProviderRegistryAutoRecheck.js.map +0 -1
  198. package/build/server/products/shared/renderer/api/providerCatalogRefreshStore.d.ts +0 -19
  199. package/build/server/products/shared/renderer/api/providerCatalogRefreshStore.d.ts.map +0 -1
  200. package/build/server/products/shared/renderer/api/providerCatalogRefreshStore.js +0 -53
  201. package/build/server/products/shared/renderer/api/providerCatalogRefreshStore.js.map +0 -1
  202. package/build/server/products/shared/renderer/api/providers.d.ts +0 -17
  203. package/build/server/products/shared/renderer/api/providers.d.ts.map +0 -1
  204. package/build/server/products/shared/renderer/api/providers.js +0 -50
  205. package/build/server/products/shared/renderer/api/providers.js.map +0 -1
@@ -0,0 +1,25 @@
1
+ <#
2
+ .SYNOPSIS
3
+ Update npm in its current prefix with bounded queries and post-install verification.
4
+ .DESCRIPTION
5
+ Dot-source and invoke Update-CatsNpm only for an explicit upgrade action.
6
+ Adapted from environment-bootstrap 4690075. Never changes prefix or bypasses engines.
7
+ .EXAMPLE
8
+ Update-CatsNpm
9
+ #>
10
+ function Update-CatsNpm {
11
+ $current = ((& npm --version) | Out-String).Trim()
12
+ if ($LASTEXITCODE -ne 0) { throw 'Could not read npm version.' }
13
+ $latest = ((& npm view npm@latest version --fetch-retries=0 --fetch-timeout=10000 --loglevel=error) | Out-String).Trim()
14
+ if ($LASTEXITCODE -ne 0 -or $latest -notmatch '^\d+\.\d+\.\d+$') { throw 'npm version query failed or returned an invalid version.' }
15
+ if ($current -eq $latest) { return }
16
+ if ([version]$current -gt [version]$latest) { return }
17
+ & npm install -g "npm@$latest" --engine-strict --fetch-retries=0 --fetch-timeout=30000 | Out-Null
18
+ if ($LASTEXITCODE -ne 0) { throw 'npm update failed. Check network, permissions and Node.js compatibility.' }
19
+ $installed = ((& npm --version) | Out-String).Trim()
20
+ if ($LASTEXITCODE -ne 0 -or $installed -ne $latest) { throw 'npm command version verification failed. Check PATH and prefix.' }
21
+ $root = ((& npm root -g) | Out-String).Trim()
22
+ if ($LASTEXITCODE -ne 0 -or -not $root) { throw 'Could not verify the npm installation prefix.' }
23
+ $package = Get-Content -LiteralPath (Join-Path $root 'npm/package.json') -Raw -Encoding UTF8 | ConvertFrom-Json
24
+ if ($package.version -ne $latest) { throw 'npm package version does not match its active command.' }
25
+ }
@@ -1 +0,0 @@
1
- import{j as o}from"./client-BdGHAUoK.js";import{b as r}from"./app-CVPqqfZo.js";import{D as i,P as t}from"./conversationSidebarRecentEntries-iqaLqA1n.js";function u({channel:s}){if(!(s.repoPath??s.chatCwd??null))return null;const e=s.runtimeWorkspaceAccess?r(s.runtimeWorkspaceAccess):i;return o.jsx(t,{value:e,onChange:()=>{},disabled:!0})}export{u as A};
@@ -1 +0,0 @@
1
- :root{--app-bg: #FAFAF7;--sidebar-bg: #EDE9E1;--canvas-bg: #FAFAF7;--panel: #ffffff;--panel-hover: #E8E4DC;--panel-subtle: #FBFAF8;--border: #E4DFD7;--text: #1A1A1A;--muted: #6B6560;--muted-soft: #8C857D;--accent: #C4653A;--accent-soft: rgba(196, 101, 58, .1);--user-bubble-bg: #EDE9DD;--ready-bg: rgba(61, 167, 121, .11);--ready-text: #207A53;--warm-bg: rgba(191, 146, 73, .12);--warm-text: #8D6830;--muted-bg: rgba(122, 116, 108, .1);--muted-text: #756D64;--shadow: 0 1px 3px rgba(0, 0, 0, .04);--shadow-raised: 0 4px 16px rgba(0, 0, 0, .08);--shadow-sheet: 0 24px 80px rgba(15, 23, 42, .25);--sidebar-hover-bg: rgba(0, 0, 0, .04);--sidebar-active-bg: rgba(0, 0, 0, .06);--surface: var(--panel);--surface-subtle: var(--panel-subtle);--surface-raised: rgba(255, 255, 255, .82);--text-primary: var(--text);--text-muted: var(--muted);--focus-ring: rgba(196, 101, 58, .08);--danger: #C0392B;--danger-hover: #A93226;--sidebar-width: 260px;--content-max-width: 940px;--content-reading-width: 720px}:root{font-family:Aptos,system-ui,Segoe UI,Helvetica Neue,sans-serif;line-height:1.6;font-weight:400;color:var(--text);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--text-xs: .72rem;--text-sm: .85rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem}:root{--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-7: 32px;--space-8: 48px}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{min-height:100vh;color:var(--text);background:var(--app-bg);color-scheme:light}button,input,textarea,select{font:inherit}code{font-family:Cascadia Code,SFMono-Regular,Consolas,monospace}.screen{min-height:100vh}.screenCentered,.bootShell{display:grid;place-items:center;padding:var(--space-8);overflow-y:auto}.bootSpinner{width:28px;height:28px;border-radius:999px;border:2px solid rgba(196,101,58,.16);border-top-color:#c4653ab8;animation:bootSpin .72s linear infinite}@keyframes bootSpin{to{transform:rotate(360deg)}}.claudeShell{display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);background:var(--app-bg)}.claudeShellSidebarCollapsed{grid-template-columns:64px minmax(0,1fr)}.canvas{display:grid;justify-items:center;align-content:start;min-height:100vh;padding:40px 24px;background:var(--canvas-bg)}.viewShell{width:min(100%,var(--content-max-width))}.tooltipPortal{position:fixed;padding:5px 10px;border-radius:8px;background:var(--text);color:var(--app-bg);font-size:var(--text-xs);font-weight:500;line-height:1.4;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity .12s;z-index:99999}.tooltipPortal.tooltipVisible{opacity:1}body.guideCatDragging .tooltipPortal{opacity:0!important}.planPill,.countBadge{display:inline-flex;align-items:center;justify-content:center;padding:5px 10px;border:1px solid var(--border);border-radius:999px;background:#ffffffb3;color:var(--muted);font-size:var(--text-xs)}.countBadge{min-width:32px}.statusChip{padding:3px 8px;border-radius:999px;font-size:.69rem;font-weight:600;letter-spacing:.01em;white-space:nowrap}.statusChipReady{background:var(--ready-bg);color:var(--ready-text)}.statusChipWarm{background:var(--warm-bg);color:var(--warm-text)}.statusChipMuted,.statusChipAccent{background:var(--muted-bg);color:var(--muted-text)}.chipRow,.tagRow{display:flex;flex-wrap:wrap;gap:8px}.promptChip,.tagChip{padding:6px 10px;border:1px solid var(--border);border-radius:999px;background:#ffffffb8;color:var(--muted)}.promptChip:hover{background:var(--panel-hover)}.tagChipMuted{background:transparent}.productToggles{display:flex;flex-wrap:wrap;gap:6px}.productToggle{padding:4px 10px;border:1px solid var(--border);border-radius:999px;background:transparent;color:var(--muted-soft);font-size:.75rem;font-weight:600;text-transform:capitalize;cursor:pointer}.productToggle:hover{background:var(--panel-hover);color:var(--muted)}.productToggleActive{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.productToggleActive:hover{background:var(--accent-soft);color:var(--accent)}.productBadge{padding:2px 6px;border-radius:999px;font-size:.65rem;font-weight:600;text-transform:capitalize;background:var(--muted-bg);color:var(--muted-text)}.productBadgeAccent{background:var(--accent-soft);color:var(--accent)}.welcomeShell{display:grid;justify-items:center;gap:14px;width:min(100%,var(--content-reading-width));margin:90px auto 0}.catsShell{display:grid;gap:18px}.viewIntro{display:grid;gap:10px}.welcomeShell h1,.viewIntro h1,.loadingPanel h1,.errorPanel h1,.productPlaceholderCard h1{margin:0;font-size:clamp(1.5rem,3vw,2rem);font-weight:600;letter-spacing:-.03em}.heroNote{margin:4px 0 0;color:var(--muted);font-size:.95rem}.feedbackText{margin:4px 0 0;color:var(--accent);font-size:.9rem}.composerCard,.contentCard,.loadingPanel,.errorPanel,.productPlaceholderCard{border:1px solid var(--border);background:var(--panel);box-shadow:var(--shadow)}.contentCard,.loadingPanel,.errorPanel{border-radius:16px}.composerCard{display:flex;flex-direction:column;width:100%;padding:12px 16px;border-radius:24px}.contentCard{padding:16px}.contentCardForm{align-self:start}.contentCardHeader,.recentTitleRow,.catCardTop,.catMeta,.composerFooter,.transcriptHeader,.transcriptMessageTop{display:flex;align-items:center;justify-content:flex-start;gap:8px}.contentCardHeader h2{margin:0;font-size:1.1rem;font-weight:600}.emptyStateCard{width:100%;padding:10px 12px;border:0;border-radius:8px;background:transparent;text-align:left}.emptyStateCard p{margin:4px 0 0;color:var(--muted)}.loadingPanel,.errorPanel{min-width:min(420px,100%);padding:24px;border-radius:18px}.eyebrow{margin:0 0 10px;color:var(--accent);font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.errorPanel p{margin:8px 0 0;color:var(--muted)}.stackForm,.recentList,.catList{display:grid;gap:8px}.fieldLabel{display:grid;gap:6px}.fieldLabel span{color:var(--muted);font-size:.82rem;font-weight:500}.fieldHint{color:var(--muted-soft);font-size:.75rem;font-weight:400}.fieldLabelInline{display:flex;align-items:center;gap:8px;flex-direction:row}.fieldLabelInline .providerSupportBadge{margin-left:auto}.providerControlField{margin-top:2px}.providerCatalogHint{display:block;margin-top:2px}.providerCatalogRecoveryActions{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px}.providerSupportBadge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:999px;border:1px solid var(--border);color:var(--muted);font-size:.7rem;font-weight:600;letter-spacing:.03em;background:var(--panel)}.providerSupportBadgeadvanced{color:var(--accent);background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 28%,var(--border) 72%)}.providerSupportBadgereadOnly{color:var(--muted-text);background:var(--muted-bg);border-color:color-mix(in srgb,var(--muted-text) 20%,var(--border) 80%)}.textInput{width:100%;box-sizing:border-box;min-height:42px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:#fff;color:var(--text);font:inherit;line-height:1.4;outline:none}select.textInput{min-height:42px;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8' fill='none' stroke='%23666' stroke-width='1.5' stroke-linecap='round' stroke-linejoin='round'><polyline points='1,1 6,7 11,1'/></svg>");background-repeat:no-repeat;background-position:right 12px center;padding-right:32px}textarea.textInput{min-height:auto;line-height:1.5}.textInput:focus{border-color:#c4653a73;box-shadow:0 0 0 3px var(--focus-ring)}.composerInput{width:100%;min-height:44px;overflow-y:hidden;border:0;margin:0;padding:0;resize:none;background:transparent;color:var(--text);outline:none;font-family:inherit;font-size:.95rem;line-height:1.5}.composerInput::placeholder,.textInput::placeholder{color:var(--muted-soft)}.primaryButton{padding:10px 14px;border:1px solid var(--border);border-radius:12px;background:var(--panel);color:var(--text);font:inherit;cursor:pointer}.secondaryButton{padding:10px 14px;border:1px solid var(--border);border-radius:12px;background:transparent;color:var(--text);font:inherit;cursor:pointer}.sendButton{width:36px;height:36px;padding:0;border:1px solid var(--border);border-radius:50%;background:var(--panel);color:var(--text);display:grid;place-items:center;flex-shrink:0}.primaryButton:hover:not(:disabled),.secondaryButton:hover:not(:disabled),.sendButton:hover:not(:disabled){background:var(--panel-hover)}.primaryButton:disabled,.secondaryButton:disabled,.sendButton:disabled,.dangerButton:disabled{opacity:.3;cursor:not-allowed}.dangerButton{padding:10px 14px;border:1px solid var(--danger);border-radius:12px;background:var(--danger);color:#fff;font:inherit;font-weight:600;cursor:pointer}.dangerButton:hover:not(:disabled){background:var(--danger-hover);border-color:var(--danger-hover)}.sidebar{display:flex;min-height:100vh;flex-direction:column;justify-content:space-between;background:var(--sidebar-bg)}.sidebarInner{padding:16px 12px 14px}.brandRow{display:flex;flex-shrink:0;align-items:center;justify-content:space-between;height:32px;padding:0 6px;margin-bottom:16px}.brandCopy{position:relative;flex:1;min-width:0}.brandLabel{margin:0;font-size:1.18rem;font-weight:700;letter-spacing:-.01em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.surfaceExitButton{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:1px solid var(--border);border-radius:999px;background:transparent;color:var(--text);cursor:pointer;transition:background .14s ease,border-color .14s ease,color .14s ease}.surfaceExitButton:hover{background:var(--panel-hover);border-color:var(--text)}.surfaceExitButton:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.entitiesBrandCopy{display:flex;align-items:center;gap:10px}.entitiesBrandLabel{font-size:1.05rem}.platformSurfaceSwitcher{max-width:100%}.platformSurfaceTrigger{display:inline-flex;align-items:center;max-width:100%;height:32px;min-width:0;padding:0;border:0;border-radius:0;background:transparent;color:var(--text);text-align:left;cursor:pointer}.platformSurfaceTriggerRow{display:flex;align-items:center;gap:8px;min-width:0}.platformSurfaceChevron{flex:0 0 auto;color:var(--muted-soft);transition:transform .14s ease,color .14s ease}.platformSurfaceTrigger:hover .platformSurfaceChevron,.platformSurfaceTrigger.isOpen .platformSurfaceChevron{color:var(--text)}.platformSurfaceTrigger.isOpen .platformSurfaceChevron{transform:rotate(180deg)}.platformSurfaceMenu{z-index:90;padding:12px;border:1px solid rgba(0,0,0,.08);border-radius:16px;background:#fbfaf8f0;box-shadow:var(--shadow-sheet);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.platformSurfaceMenuHeading{margin:0 0 10px;padding:0 4px;color:var(--accent);font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.platformSurfaceMenuList{display:grid;gap:4px}.platformSurfaceMenuDivider{height:1px;margin:10px 2px 8px;background:#00000014}.platformSurfaceMenuItem{display:flex;align-items:flex-start;gap:12px;width:100%;padding:10px 12px;border:0;border-radius:12px;background:transparent;color:var(--text);text-align:left;cursor:pointer;transition:background .14s ease,transform .14s ease}.platformSurfaceMenuItem:hover{background:#0000000a}.platformSurfaceMenuItem.isCurrent{background:#0000000e}.platformSurfaceMenuAction{display:flex;align-items:center;width:100%;min-height:38px;padding:0 12px;border:0;border-radius:10px;background:transparent;color:var(--text);text-align:left;font-size:.88rem;font-weight:600;cursor:pointer}.platformSurfaceMenuAction:hover{background:#0000000a}.platformSurfaceSwatch{width:10px;height:10px;margin-top:6px;flex:0 0 auto;border-radius:999px;box-shadow:0 0 0 3px #ffffff80}.platformSurfaceSwatchChat{background:#e0b323}.platformSurfaceSwatchCode{background:#6e8450}.platformSurfaceSwatchWork{background:#4f6c92}.platformSurfaceMenuCopy{display:grid;min-width:0;flex:1;gap:2px}.platformSurfaceMenuTitleRow{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap}.platformSurfaceMenuTitle{font-size:.92rem;font-weight:600}.platformSurfaceMenuSubtitle{color:var(--muted);font-size:.77rem;line-height:1.35}.platformSurfaceMenuCheck{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;margin-top:2px;flex:0 0 auto;border-radius:999px;background:var(--accent-soft);color:var(--accent)}.chromeButton{width:28px;height:28px;border:0;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer;display:grid;place-items:center}.chromeButton:hover{background:var(--sidebar-hover-bg);color:var(--text)}.navGroup{display:grid;flex-shrink:0;gap:1px}.navGroupChat{margin-top:14px;display:none}.navItem{display:flex;align-items:center;gap:12px;width:100%;min-width:0;height:40px;padding:0 12px;border:0;border-radius:8px;background:transparent;color:var(--text);text-align:left;font-size:.9rem}.navItem:hover{background:var(--sidebar-hover-bg)}.navItemActive{background:var(--sidebar-active-bg)}.navGlyph{display:flex;align-items:center;justify-content:center;width:18px;height:18px;flex:0 0 auto;color:var(--muted-soft)}.navGlyphSquare{border-radius:3px}.sectionLabel{margin:0 0 8px;color:var(--muted-soft);font-size:.73rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.recentSection{margin-top:20px;padding:0}.recentSection>.sectionLabel{text-transform:none;font-size:.75rem;font-weight:500;margin:0;padding:0 12px}.recentItem,.recentEmpty{width:100%;padding:10px 12px;border:0;border-radius:8px;background:transparent;text-align:left}.recentEmpty{padding:4px 12px}.recentItem:hover{background:var(--panel-hover)}.recentEmpty p,.recentItem p,.sidebarFooter p{margin:4px 0 0;color:var(--muted)}.recentItem strong{font-size:.92rem;font-weight:600}.sidebarFooter{position:relative;display:flex;align-items:center;margin:0;padding:0;border-top:1px solid rgba(0,0,0,.06)}.sidebarFooter:hover{background:var(--sidebar-hover-bg)}.sidebarFooter strong{font-size:.9rem;font-weight:600}.sidebarFooterMainButton{display:flex;align-items:center;gap:10px;flex:1;min-width:0;align-self:stretch;padding:0 10px 0 18px;border:0;border-radius:0;background:transparent;color:var(--text);font:inherit;text-align:left;cursor:pointer}.profileBadge{display:grid;width:28px;height:28px;place-items:center;border-radius:999px;background:#4f4a43;color:#fff;font-size:.75rem;font-weight:700}.sidebarFooterTrailing{position:relative;display:grid;flex:0 0 44px;width:44px;padding-right:20px;align-self:stretch;place-content:center;place-items:center;margin:0;border:0;background:transparent;color:var(--muted);cursor:pointer}.sidebarFooterTrailing:before{content:"";position:absolute;top:50%;right:20px;width:24px;height:24px;transform:translateY(-50%);border-radius:6px;background:transparent;transition:background .15s ease;pointer-events:none}.sidebarFooterTrailing:hover:before,.sidebarFooterTrailing:focus-visible:before{background:var(--panel-hover)}.sidebarFooterTrailing>.runtimeStatusDot{grid-area:1 / 1;position:relative;z-index:1;transition:opacity .15s ease}.sidebarFooterRuntimeLink{grid-area:1 / 1;position:relative;z-index:1;display:grid;place-content:center;place-items:center;width:24px;height:24px;opacity:0;transition:opacity .15s ease;pointer-events:none}.sidebarFooter:hover .sidebarFooterTrailing>.runtimeStatusDot,.sidebarFooterTrailing:focus-visible>.runtimeStatusDot{opacity:0}.sidebarFooter:hover .sidebarFooterRuntimeLink,.sidebarFooterTrailing:focus-visible .sidebarFooterRuntimeLink{opacity:1}.sidebarCollapsed .sidebarFooterMainButton{justify-content:center;padding:0}.sidebarCollapsed .sidebarFooterTrailing{display:none}.accountIdentityMenu{position:relative}.accountMenu{position:absolute;min-width:160px;border:1px solid var(--border);border-radius:8px;background:var(--panel);box-shadow:var(--shadow-raised);z-index:90;padding:3px}.accountMenu--above{bottom:100%;margin-bottom:4px}.accountMenu--below{top:100%;margin-top:4px}.accountMenu--alignStart{left:0}.accountMenu--alignEnd{right:0}.accountMenu--matchTrigger{width:100%}.accountMenuItem{display:block;width:100%;padding:6px 10px;border:0;border-radius:6px;background:transparent;color:var(--text);text-align:left;cursor:pointer;font-size:.8rem}.accountMenuItem:hover{background:var(--panel-hover)}.accountMenuDivider{height:1px;margin:3px 6px;background:var(--border)}.messageChoices{display:grid;gap:12px;margin-top:4px}.messageChoiceSection{display:grid;gap:8px}.messageChoiceQuestion{margin:0;font-size:.84rem;font-weight:700;letter-spacing:.02em;color:var(--text)}.messageChoiceOptions{display:flex;flex-wrap:wrap;gap:8px}.messageChoiceButton,.messageChoiceActionButton{appearance:none;border:1px solid rgba(15,23,42,.12);border-radius:999px;background:#ffffffb8;color:var(--text);padding:7px 12px;font:inherit;font-size:.84rem;transition:background-color .12s ease,border-color .12s ease,color .12s ease}.messageChoiceButton:hover:not(:disabled),.messageChoiceActionButton:hover:not(:disabled){background:#fffffff5;border-color:#0f172a38}.messageChoiceButton:disabled,.messageChoiceActionButton:disabled{opacity:.6;cursor:not-allowed}.messageChoiceButtonSelected{background:#11182714;border-color:#0f172a4d}.messageChoiceActions{display:flex;flex-wrap:wrap;gap:8px}.messageChoiceActionButtonPrimary{background:#1e293b;border-color:#1e293b;color:#fff}.messageChoiceActionButtonPrimary:hover:not(:disabled){background:#0f172a;border-color:#0f172a}.messageChoiceCustomInput{width:100%;min-height:74px;resize:vertical;border:1px solid rgba(15,23,42,.12);border-radius:14px;padding:10px 12px;background:#ffffffd1;color:var(--text);font:inherit;font-size:.9rem}.messageChoiceResolved{margin:0;font-size:.8rem;color:var(--muted-soft)}.sidePanelSectionStack{display:grid;gap:12px}.operatorPanel{display:grid;gap:12px;padding:16px;border:1px solid var(--border);border-radius:18px;background:#ffffffe0;box-shadow:var(--shadow)}.operatorPanelError{border-color:#c4653a47}.operatorPanelHeader,.operatorCardHeader,.operatorInspectorHeader,.operatorListItemHeader,.operatorTimelineHeader{display:flex;align-items:start;justify-content:space-between;gap:12px}.operatorPanelHeader h2{margin:0;font-size:1rem;font-weight:600}.operatorEyebrow{margin:0 0 4px;color:var(--muted-soft);font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.operatorCountBadge{display:inline-flex;align-items:center;justify-content:center;min-width:32px;padding:4px 10px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:.72rem;font-weight:700}.operatorEmptyState{margin:0;color:var(--muted);font-size:.85rem}.operatorInsetEmpty{padding-top:4px}.operatorStack{display:grid;gap:12px}.operatorCard,.operatorListItem{display:grid;gap:10px;padding:12px;border:1px solid var(--border);border-radius:14px;background:#fbfaf8}.operatorCardHeader strong,.operatorListItemHeader strong,.operatorTimelineHeader strong{font-size:.9rem;font-weight:600}.operatorCardHeader p,.operatorListItem p,.operatorTimelineBody p{margin:0;color:var(--muted);font-size:.84rem}.operatorMetaRow{display:flex;flex-wrap:wrap;gap:10px;color:var(--muted-soft);font-size:.75rem}.operatorMetaText,.operatorTimelineHeader span,.operatorListItemHeader span{color:var(--muted-soft);font-size:.74rem}.operatorActionRow{display:flex;flex-wrap:wrap;gap:8px}.operatorActionButton{padding:8px 12px;border:1px solid var(--border);border-radius:10px;background:#fff;color:var(--text);cursor:pointer}.operatorActionButton:hover:not(:disabled),.operatorRunTab:hover{background:var(--panel-hover)}.operatorActionButton:disabled{opacity:.5;cursor:not-allowed}.operatorActionButtonPrimary{border-color:var(--text);background:var(--text);color:#fff}.operatorMetricGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.operatorMetricCard{display:grid;gap:4px;padding:10px;border:1px solid var(--border);border-radius:12px;background:#fff}.operatorMetricLabel{color:var(--muted);font-size:.72rem}.operatorCallout{padding:10px 12px;border-radius:12px;font-size:.82rem}.operatorCalloutAttention{background:#ffb74d29;color:#8a5a12}.operatorCalloutMuted{background:#7a746c1a;color:var(--muted)}.operatorStatusBadge{display:inline-flex;align-items:center;justify-content:center;padding:3px 8px;border:1px solid transparent;border-radius:999px;font-size:.69rem;font-weight:600;white-space:nowrap}.operatorStatusBadge.isProgress,.operatorTimelineDot.isProgress{background:#4db6ac24;color:#1d6b63;border-color:#4db6ac47}.operatorStatusBadge.isAttention,.operatorTimelineDot.isAttention{background:#ffb74d29;color:#8a5a12;border-color:#ffb74d57}.operatorStatusBadge.isError,.operatorTimelineDot.isError{background:#c6584b24;color:#8b2f24;border-color:#c6584b3d}.operatorStatusBadge.isSuccess,.operatorTimelineDot.isSuccess{background:#3da7791f;color:var(--ready-text);border-color:#3da77938}.operatorStatusBadge.isMuted,.operatorTimelineDot.isMuted{background:#7a746c1a;color:var(--muted-text);border-color:#7a746c2e}.operatorTimeline{display:grid;gap:12px}.operatorTimelineItem{display:grid;grid-template-columns:12px minmax(0,1fr);gap:10px;align-items:start}.operatorTimelineDot{width:10px;height:10px;margin-top:6px;border:1px solid transparent;border-radius:999px}.operatorTimelineBody{display:grid;gap:6px}.operatorList{display:grid;gap:10px}.operatorRunTabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px}.operatorRunTab{display:grid;gap:2px;min-width:120px;padding:10px 12px;border:1px solid var(--border);border-radius:12px;background:#fff;color:var(--text);text-align:left;cursor:pointer}.operatorRunTab span{color:var(--muted-soft);font-size:.68rem}.operatorRunTab strong{font-size:.82rem}.operatorRunTabActive{border-color:#c4653a52;background:#c4653a14}.operatorInspectorSection{display:grid;gap:10px}@media(max-width:720px){.operatorMetricGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.operatorPanel{padding:14px}}.productPlaceholderSurface{min-height:100vh;display:grid;place-items:center;padding:var(--space-8) var(--space-6);background:var(--app-bg)}.productPlaceholderCard{width:min(var(--content-reading-width),100%);border-radius:24px;padding:var(--space-7);color:var(--text);box-shadow:var(--shadow-sheet)}.productPlaceholderEyebrow{margin:0;font-size:.75rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}.productPlaceholderTitle{margin:12px 0 0}.productPlaceholderCopy{margin:var(--space-4) 0 0;line-height:1.6;color:var(--muted)}.productPlaceholderSection{margin-top:var(--space-6);display:grid;gap:12px}.productPlaceholderRouteList{margin:12px 0 0;padding-left:20px;color:var(--muted)}.productPlaceholderError{margin:var(--space-4) 0 0;color:var(--danger)}.setupWizard{display:grid;justify-items:center;gap:20px;width:min(100%,460px)}.setupCard{display:grid;gap:16px;width:100%;padding:32px}.setupCard h1{margin:0;font-size:clamp(1.4rem,3vw,1.8rem);font-weight:600;letter-spacing:-.03em}.setupCard .heroNote{margin-top:-8px}.setupStepIndicator{display:flex;gap:8px;justify-content:center}.setupDot{width:8px;height:8px;border-radius:50%;background:var(--border)}.setupDotActive{background:var(--accent)}.setupActions{display:flex;gap:10px;justify-content:space-between;align-items:center}.setupBackButton{padding:10px 14px;border:1px solid var(--border);border-radius:12px;background:transparent;color:var(--text);cursor:pointer}.setupBackButton:hover{background:var(--panel-hover)}.setupPrimaryButton{min-width:11rem;text-align:center}.setupActionGroup{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}.setupRuntimeStatus{display:flex;align-items:flex-start;flex-direction:column;gap:8px}.setupInlineLink{text-decoration:none}.setupRuntimePanel{display:grid;gap:14px;padding:16px;border:1px solid var(--border);border-radius:16px;background:var(--panel)}.setupRuntimeSummary{font-size:.92rem;line-height:1.5}.setupRuntimeSection{display:grid;gap:8px}.setupRuntimeSection h2{margin:0;font-size:.95rem}.setupRuntimeNote{margin:0;font-size:.82rem;opacity:.72}.setupGuideCatSummary{display:grid;gap:6px;padding:14px 16px;border:1px solid var(--border);border-radius:14px;background:var(--panel)}.setupGuideCatSummary strong{font-size:.95rem}.setupGuideCatSummary span:last-child{font-size:.82rem;opacity:.72}.setupProductGrid{display:grid;gap:10px}.setupProductCard{display:grid;gap:4px;padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:transparent;color:var(--text);text-align:left;cursor:pointer;transition:border-color .15s,background .15s}.setupProductCard:hover:not(:disabled){background:var(--panel-hover)}.setupProductCardSelected{border-color:var(--accent);background:var(--panel-hover)}.setupProductCardDisabled{opacity:.5;cursor:not-allowed}.setupProductLabel{font-weight:600;font-size:.95rem}.setupProductDescription{font-size:.82rem;opacity:.7}.setupDisabledReason{font-size:.75rem;font-style:italic;opacity:.5}.setupCheckboxLabel{display:flex;align-items:center;gap:8px;padding:4px 0;cursor:pointer;font-size:.9rem}.setupCheckbox{width:16px;height:16px;accent-color:var(--accent);cursor:pointer}@media(max-width:480px){.setupCard{padding:20px}.setupActions,.setupActionGroup{flex-direction:column;align-items:stretch}}.lobbyScreen{position:relative;overflow-x:hidden}.lobbyBouncingCanvas{position:fixed;inset:0;width:100%;height:100%;pointer-events:none;z-index:0}.platformLobby{position:relative;display:grid;gap:var(--space-7);width:min(100%,720px);margin-inline:auto}.lobbyTopBar{display:flex;align-items:center;justify-content:space-between}.lobbyBrand{font-size:1.25rem;font-weight:700;color:var(--accent);letter-spacing:.04em}.lobbyTopBarEnd{display:flex;align-items:center;gap:var(--space-3)}.lobbyIdentity{display:flex;align-items:stretch;border:1px solid var(--border);border-radius:999px;background:var(--panel);transition:background .12s ease}.lobbyIdentity:hover{background:var(--panel-hover)}.lobbyIdentityMainButton{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2) var(--space-1) var(--space-1);border:0;border-radius:999px 0 0 999px;background:transparent;color:inherit;font:inherit;cursor:pointer}.lobbyIdentityRuntime{display:grid;place-content:center;place-items:center;width:20px;padding:0 var(--space-2) 0 0;border:0;border-radius:0 999px 999px 0;background:transparent;color:inherit;font:inherit;cursor:pointer}.lobbyAvatar{display:grid;width:28px;height:28px;place-items:center;border-radius:999px;background:#4f4a43;color:#fff;font-size:.75rem;font-weight:700;flex-shrink:0}.lobbyOwnerName{font-size:var(--text-sm);font-weight:500;color:var(--text)}.lobbyIdentityDot{width:8px;height:8px;border-radius:999px;flex-shrink:0}.lobbyIdentityDot--ok{background:#3da779}.lobbyIdentityDot--warn{background:#bf9249}.lobbyHero{text-align:center;padding:var(--space-6) 0}.lobbyGreeting{font-size:clamp(1.5rem,3vw,2rem);font-weight:500;color:var(--muted);letter-spacing:-.01em}.lobbyProducts{display:grid;gap:10px}.lobbyProductsEyebrow{margin:0;font-size:var(--text-xs);font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.platformLobbyGrid{display:grid;gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.platformLobbyCard{position:relative;display:grid;gap:var(--space-2);padding:var(--space-6) var(--space-4) var(--space-4);border-radius:16px;overflow:hidden;text-align:left;cursor:pointer;transition:box-shadow .15s ease,transform .15s ease}.platformLobbyCard:hover{box-shadow:var(--shadow-raised);transform:translateY(-2px)}.platformLobbyCardAccent{position:absolute;top:0;left:0;right:0;height:4px;border-radius:16px 16px 0 0;background:var(--border)}.platformLobbyCard--chat .platformLobbyCardAccent{background:#e0b323}.platformLobbyCard--code .platformLobbyCardAccent{background:#6e8450}.platformLobbyCard--work .platformLobbyCardAccent{background:#4f6c92}.platformLobbyCard--app .platformLobbyCardAccent{background:#3f7f78}.platformLobbyCard--module .platformLobbyCardAccent{background:#7a5c98}.platformLobbyCard--entity .platformLobbyCardAccent{background:var(--muted-soft)}.platformLobbyCard--recent{box-shadow:0 0 0 2px var(--accent-soft)}.platformLobbyCard--recent:hover{box-shadow:0 0 0 2px var(--accent-soft),var(--shadow-raised)}.platformLobbyCardName{font-size:1.05rem;font-weight:600;color:var(--text)}.platformLobbyCardSub{font-size:var(--text-sm);color:var(--muted);line-height:1.45}.platformLobbyCardHint{margin-top:var(--space-1);font-size:var(--text-xs);font-weight:600;color:var(--accent);text-transform:uppercase;letter-spacing:.04em}.platformLobbyCard--mock{opacity:.45;cursor:default;pointer-events:none;border-style:dashed}.entityIndexCards{display:grid;gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr))}.entityIndexColumn{display:flex;flex-direction:column;min-width:0}.entityIndexColumnHeader{margin:0 0 10px;color:var(--muted);font-size:var(--text-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase}.platformLobbyCard--entity{flex:1;padding:var(--space-5) var(--space-3) var(--space-3);gap:var(--space-1)}.entityIndexCardLink{position:absolute;inset:0;z-index:1;border:0;background:transparent;cursor:pointer;border-radius:inherit}.entityIndexCardItems{display:flex;flex-direction:column;gap:var(--space-1);margin:0;padding:0;list-style:none;position:relative;z-index:2;pointer-events:none}.entityIndexCardItems .entityIndexItem:not(:disabled){pointer-events:auto}.entityIndexRow{display:flex;min-width:0;min-height:36px}.entityIndexRowEmpty{visibility:hidden}.entityIndexItem{display:flex;align-items:center;gap:var(--space-2);width:100%;min-width:0;padding:var(--space-1) var(--space-2);border:0;border-radius:8px;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background .12s ease}.entityIndexItem:hover{background:var(--panel-hover)}.entityIndexAvatar{display:grid;place-items:center;width:28px;height:28px;flex-shrink:0;border-radius:50%;background:#8b7e74;color:#fff;font-size:.65rem;font-weight:700;overflow:hidden}.entityIndexName{flex:1;min-width:0;font-size:var(--text-sm);color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.entityIndexRowPlaceholder .entityIndexItem,.entityIndexItemPlaceholder{background:color-mix(in srgb,var(--panel) 78%,#d4a030 22%);cursor:default;opacity:.95}.entityIndexColumn--clowders .entityIndexItemPlaceholder{background:color-mix(in srgb,var(--panel) 78%,#48a064 22%);color:#2e6f43}.entityIndexColumn--catteries .entityIndexItemPlaceholder{background:color-mix(in srgb,var(--panel) 78%,#5f87f0 22%);color:#3856a0}.entityIndexItemPlaceholder:disabled{cursor:default}.entityIndexAvatarPlaceholder{background:#d4cec8;color:var(--muted);outline:1px dashed rgba(110,101,92,.35);outline-offset:-2px}.entityIndexAvatarPlaceholder svg{display:block;pointer-events:none}.entityIndexNamePlaceholder{color:var(--muted);font-style:italic}.entityIndexColumn--clowders .entityIndexNamePlaceholder{color:#2e6f43}.entityIndexColumn--catteries .entityIndexNamePlaceholder{color:#3856a0}.entityIndexCardFooter{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2);padding:0 var(--space-2);pointer-events:none}.entityIndexAvatarStack{display:flex;align-items:center}.entityIndexAvatarStacked{width:22px;height:22px;font-size:.55rem;margin-left:-8px;border:2px solid var(--panel)}.entityIndexAvatarStacked:first-child{margin-left:0}.entityIndexCardTotal{font-size:var(--text-xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#b0413e}.platformLobbyCard--entity .platformLobbyCardAccent{pointer-events:none}.entityCanvas{display:grid;gap:18px;width:min(100%,1080px);margin-inline:auto;padding:28px 0;box-sizing:border-box}.entityCanvasHeader{display:flex;align-items:end;justify-content:space-between;gap:16px;min-width:0}.entityCanvasTitle{margin:0;color:var(--text);font-size:1.45rem;font-weight:600}.entityCanvasTotals,.entityCanvasRowMetrics,.entityCanvasDetailMeta{display:flex;gap:10px;margin:0}.entityCanvasTotals>div,.entityCanvasRowMetrics>div,.entityCanvasDetailMeta>div{display:grid;gap:2px}.entityCanvasTotals{justify-content:end;flex-wrap:wrap}.entityCanvasTotals>div{min-width:72px;padding:8px 10px;border:1px solid var(--border);border-radius:10px;background:var(--panel)}.entityCanvasTotals dt,.entityCanvasRowMetrics dt,.entityCanvasDetailMeta dt{color:var(--muted);font-size:var(--text-xs);font-weight:600;text-transform:uppercase}.entityCanvasTotals dd,.entityCanvasRowMetrics dd,.entityCanvasDetailMeta dd{margin:0;color:var(--text);font-size:var(--text-sm);font-weight:600}.entityCanvasBody{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,.72fr);gap:16px;align-items:start;min-width:0}.entityCanvasRegistry,.entityCanvasDetail{min-width:0}.entityCanvasRows{display:grid;gap:6px;padding:0;margin:0;list-style:none}.entityCanvasRow{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;min-height:56px;padding:9px 10px;border:1px solid transparent;border-radius:10px;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.entityCanvasRow:hover,.entityCanvasRowActive{border-color:var(--border);background:var(--sidebar-hover-bg)}.entityCanvasRowActive{background:var(--sidebar-active-bg)}.entityCanvasAvatar{display:grid;width:36px;height:36px;place-items:center;border-radius:50%;background:#4f4a43;color:#fff;font-size:.78rem;font-weight:700;background-size:cover;background-position:center;flex-shrink:0}.entityCanvasRowText{display:grid;gap:3px;min-width:0}.entityCanvasRowName,.entityCanvasRowSubtitle{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.entityCanvasRowName{color:var(--text);font-size:var(--text-sm);font-weight:600}.entityCanvasRowSubtitle{color:var(--muted);font-size:var(--text-xs)}.entityCanvasRowMetrics{justify-content:end}.entityCanvasRowMetrics>div{min-width:48px;text-align:right}.entityCanvasDetail{display:grid;gap:16px}.entityCanvasDetailHeader{display:flex;align-items:center;gap:12px;min-width:0}.entityCanvasDetailHeader h2{margin:0;color:var(--text);font-size:1.12rem;font-weight:600}.entityCanvasDetailMeta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.entityCanvasDetailMeta>div{padding:10px;border-radius:10px;background:color-mix(in srgb,var(--panel) 72%,var(--sidebar-bg) 28%);min-width:0}.entityCanvasDetailMeta dd{overflow-wrap:anywhere}.entityCanvasRelationSection{display:grid;gap:8px}.entityCanvasRelationSection h3{margin:0;color:var(--text);font-size:var(--text-sm);font-weight:600}.entityCanvasRelationList{display:grid;gap:6px;padding:0;margin:0;list-style:none}.entityCanvasRelationList li{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:34px;padding:7px 9px;border-radius:8px;background:color-mix(in srgb,var(--panel) 72%,var(--sidebar-bg) 28%)}.entityCanvasRelationList span,.entityCanvasDetailEmpty{color:var(--muted);font-size:var(--text-xs)}.entityCanvasRelationList a,.entityCanvasRelationList strong{color:var(--text);font-size:var(--text-sm);font-weight:600;text-decoration:none}.entityCanvasRelationList a:hover{text-decoration:underline}.entityCanvasOpenLink{justify-self:start;text-decoration:none}.entityCanvasEmpty p{margin:0;color:var(--muted)}@media(max-width:640px){.platformLobby{width:100%}.platformLobbyGrid,.entityIndexCards{grid-template-columns:1fr}.entityCanvas{padding:18px 0}.entityCanvasHeader{align-items:start;flex-direction:column}.entityCanvasBody{grid-template-columns:1fr}.entityCanvasRow{grid-template-columns:auto minmax(0,1fr)}.entityCanvasRowMetrics{grid-column:2;justify-content:start}.entityCanvasRowMetrics>div{text-align:left}}.appHostScreen{padding:var(--space-8)}.appHostPanel{width:min(680px,100%);display:grid;gap:var(--space-5);padding:var(--space-8);border:1px solid var(--border);border-radius:8px;background:var(--surface)}.appHostHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4)}.appHostHeader h1,.appHostPanel h1{margin:0;font-size:1.5rem;font-weight:650;color:var(--text)}.appHostSubtext{margin:0;color:var(--muted);line-height:1.5}.appHostMeta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-3);margin:0}.appHostMeta div{min-width:0}.appHostMeta dt{margin-bottom:var(--space-1);color:var(--muted);font-size:var(--text-xs);font-weight:700;text-transform:uppercase;letter-spacing:.06em}.appHostMeta dd{margin:0;color:var(--text);font-size:var(--text-sm);overflow-wrap:anywhere}.appHostBackButton{white-space:nowrap}@media(max-width:640px){.appHostScreen{padding:var(--space-4)}.appHostPanel{padding:var(--space-5)}.appHostHeader{display:grid}.appHostMeta{grid-template-columns:1fr}}.toastContainer{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:9999;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none}.toast{padding:10px 20px;border-radius:8px;background:var(--text, #1A1A1A);color:var(--app-bg, #FAFAF7);font-size:.9rem;box-shadow:var(--shadow-raised);pointer-events:auto;animation:toastIn .2s ease-out}.toastFading{animation:toastOut .3s ease-in forwards}@keyframes toastIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes toastOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(12px)}}.confirmOverlay{position:fixed;inset:0;z-index:9998;display:grid;place-items:center;background:#00000059;animation:confirmFadeIn .15s ease-out}.confirmDialog{width:min(400px,calc(100vw - 48px));padding:24px;border-radius:16px;background:var(--panel);box-shadow:var(--shadow-sheet);display:grid;gap:16px;animation:confirmSlideIn .15s ease-out}.confirmTitle{font-size:1.05rem;font-weight:600;color:var(--text);margin:0}.confirmMessage{font-size:.9rem;color:var(--muted);margin:0;line-height:1.5}.confirmActions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:4px}.confirmCancelButton{padding:8px 16px;border:1px solid var(--border);border-radius:10px;background:var(--panel);color:var(--text);font:inherit;cursor:pointer}.confirmCancelButton:hover{background:var(--panel-hover)}.confirmAuxiliaryButton{padding:8px 16px;border:1px solid color-mix(in srgb,var(--accent) 28%,var(--border) 72%);border-radius:10px;background:var(--accent-soft);color:var(--accent);font:inherit;font-weight:600;cursor:pointer}.confirmAuxiliaryButton:hover{background:color-mix(in srgb,var(--accent-soft) 80%,var(--panel) 20%)}.confirmDestructiveButton{padding:8px 16px;border:0;border-radius:10px;background:var(--danger);color:#fff;font:inherit;font-weight:600;cursor:pointer}.confirmDestructiveButton:hover{background:var(--danger-hover)}@keyframes confirmFadeIn{0%{opacity:0}to{opacity:1}}@keyframes confirmSlideIn{0%{opacity:0;transform:translateY(8px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.notificationContainer{position:fixed;top:16px;right:16px;z-index:9997;display:flex;flex-direction:column;gap:8px;width:min(360px,calc(100vw - 32px));pointer-events:none}.notification{display:grid;grid-template-columns:1fr auto;align-items:start;gap:8px;padding:14px 16px;border-radius:12px;background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow-raised);pointer-events:auto;animation:notificationIn .2s ease-out}.notificationInfo{border-left:3px solid var(--accent)}.notificationSuccess{border-left:3px solid var(--ready-text)}.notificationWarning{border-left:3px solid var(--warm-text)}.notificationError{border-left:3px solid var(--danger)}.notificationBody{display:grid;gap:4px;min-width:0}.notificationTitle{font-size:.88rem;font-weight:600;color:var(--text);margin:0}.notificationMessage{font-size:.82rem;color:var(--muted);margin:0;line-height:1.45}.notificationDismiss{width:24px;height:24px;padding:0;border:0;border-radius:6px;background:transparent;color:var(--muted-soft);font-size:.9rem;cursor:pointer;display:grid;place-items:center;flex-shrink:0}.notificationDismiss:hover{background:var(--panel-hover);color:var(--text)}.notificationFading{animation:notificationOut .25s ease-in forwards}@keyframes notificationIn{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}@keyframes notificationOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(16px)}}.avatarCropOverlay{position:fixed;inset:0;z-index:9998;display:grid;place-items:center;background:#00000080;animation:confirmFadeIn .15s ease-out}.avatarCropDialog{width:min(420px,calc(100vw - 48px));padding:24px;border-radius:16px;background:var(--panel);box-shadow:var(--shadow-sheet);display:grid;gap:16px;animation:confirmSlideIn .15s ease-out}.avatarCropTitle{font-size:1.05rem;font-weight:600;color:var(--text);margin:0}.avatarCropCanvasWrap{position:relative;width:256px;height:256px;margin:0 auto;border-radius:50%;overflow:hidden;cursor:grab;background:var(--panel-subtle);border:2px solid var(--border)}.avatarCropCanvasWrap:active{cursor:grabbing}.avatarCropCanvas{display:block;width:256px;height:256px}.avatarCropHint{text-align:center;font-size:.78rem;color:var(--muted-soft);margin:0}.avatarCropActions{display:flex;justify-content:flex-end;gap:8px}.avatarCropUploadArea{width:256px;height:256px;margin:0 auto;border-radius:50%;border:2px dashed var(--border);display:grid;place-items:center;cursor:pointer;color:var(--muted-soft);font-size:.85rem;transition:border-color .15s}.avatarCropUploadArea:hover{border-color:var(--accent);color:var(--accent)}.coverCropDialog{width:min(560px,calc(100vw - 48px))}.coverCropCanvasWrap{width:480px;height:180px;margin:0 auto;border-radius:12px}.coverCropCanvas{width:480px;height:180px}.coverCropUploadArea{width:480px;height:180px;max-width:100%;border-radius:12px}.accordionSection{border-bottom:1px solid var(--border)}.accordionSection:last-child{border-bottom:none}.accordionHeader{display:flex;align-items:center;gap:8px;width:100%;padding:12px 16px;border:0;background:transparent;color:var(--text);font:inherit;font-size:.85rem;font-weight:600;text-align:left;cursor:pointer}.accordionHeader:hover{background:var(--panel-hover)}.accordionHeaderTitle{flex:1;min-width:0}.accordionBadge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;padding:2px 6px;border-radius:999px;background:var(--accent-soft);color:var(--accent);font-size:.68rem;font-weight:700}.accordionChevron{flex-shrink:0;color:var(--muted);transition:transform .15s ease}.accordionChevronOpen{transform:rotate(90deg)}.accordionBody{padding:0 16px 16px;display:grid;gap:16px;min-width:0;overflow:hidden}.sidePanel{position:fixed;top:0;right:0;width:360px;height:100vh;border-left:1px solid var(--border);background:var(--panel);box-shadow:-4px 0 16px #0000000f;z-index:15;display:flex;flex-direction:column}.sidePanelHeader{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border);font-size:.85rem;flex-shrink:0}.sidePanelBody{flex:1;overflow-y:auto;min-width:0}.sidePanel.sidePanelBottom{top:auto;right:0;bottom:0;width:100vw;max-width:100vw;height:min(calc(100vh - 60px),420px);border-left:none;border-top:1px solid var(--border);box-shadow:0 -8px 24px #00000014}.guideCatPillWrap{position:fixed;left:var(--guide-cat-pill-left, 16px);top:50%;transform:translateY(-50%);z-index:80;touch-action:none}.guideCatPill{display:grid;width:28px;height:28px;place-items:center;border-radius:50%;background:#8b7e74;color:#fff;opacity:.72;font-size:.65rem;font-weight:700;line-height:1;white-space:nowrap;overflow:hidden;border:none;cursor:pointer;box-shadow:var(--shadow-raised);transition:box-shadow .15s ease,transform .15s ease,opacity .15s ease}.guideCatPillWrap:hover .guideCatPill,.guideCatPill:focus-visible{box-shadow:var(--shadow-sheet);opacity:1;transform:scale(1.06)}.guideCatPillDismiss{position:absolute;top:-4px;right:-4px;display:none;align-items:center;justify-content:center;width:14px;height:14px;padding:0;border:none;border-radius:50%;background:#0000008c;color:#fff;font-size:10px;line-height:1;cursor:pointer;z-index:1}.guideCatPillWrap:hover .guideCatPillDismiss{display:flex}.guideCatPillWrap[data-dragging=true] .guideCatPillDismiss{display:none!important}.guideCatPillWrap[data-dragging=true] .guideCatPill{cursor:grabbing;transform:scale(1.08);box-shadow:var(--shadow-sheet);opacity:1}.guideCatPillDismiss:hover{background:#c83232d9}.guideCatPillAvatar{display:block;width:100%;height:100%;object-fit:cover}.guideCatDockSlot{display:none;align-items:center;justify-content:center;min-width:44px;min-height:44px;box-sizing:border-box;border-radius:8px;border:2px solid transparent}body.guideCatDragging .guideCatDockSlot,.guideCatDockSlot[data-active=true],.guideCatDockSlot[data-preview=true]{display:flex}.guideCatDockSlot--lobby{padding:0;margin:0 -2px 0 0;min-width:32px;min-height:32px}.guideCatDockSlot--workspace{padding:var(--space-2, 6px) 18px;margin:0 0 5px;justify-content:flex-start}.guideCatDockSlot--workspace[data-active=true]{margin:0;padding:0 18px;min-height:60px;height:60px;gap:10px;border:none;border-top:1px solid rgba(0,0,0,.06);border-radius:0;cursor:pointer;transition:background-color .15s ease}.guideCatDockSlot--workspace[data-active=true]:hover{background:var(--sidebar-hover-bg)}.guideCatDockName{flex:1;min-width:0;font-size:.9rem;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebarCollapsed .guideCatDockName{display:none}.guideCatDockUndockSlot{display:grid;place-content:center;place-items:center;width:24px;height:24px;border:0;border-radius:6px;background:transparent;color:var(--muted);opacity:0;transition:opacity .15s ease,background .15s ease;pointer-events:none;cursor:pointer}.guideCatDockSlot--workspace[data-active=true]:hover .guideCatDockUndockSlot,.guideCatDockUndockSlot:focus-visible{opacity:1;pointer-events:auto}.guideCatDockUndockSlot:hover{background:var(--panel-hover)}.sidebarCollapsed .guideCatDockUndockSlot{display:none}.guideCatDockSlot--workspace[data-active=true]+.sidebarFooter{border-top:none}.sidebarCollapsed .guideCatDockSlot--workspace{padding:var(--space-2, 6px) 0;justify-content:center}.sidebarCollapsed .guideCatDockSlot--workspace[data-active=true]{padding:0;border-top:none}body.guideCatDragging .guideCatDockSlot[data-active=false][data-preview=false]{border-style:dashed;border-color:#8b7e748c}.guideCatDockSlot[data-preview=true]{border-color:#8b7e74cc;background:#8b7e741a}.guideCatPill--docked{position:static;display:grid;width:28px;height:28px;place-items:center;border-radius:50%;background:#8b7e74;color:#fff;opacity:.82;border:none;cursor:pointer;box-shadow:var(--shadow-raised);transition:box-shadow .15s ease,transform .15s ease,opacity .15s ease;touch-action:none}.guideCatPill--docked:hover,.guideCatPill--docked:focus-visible{box-shadow:var(--shadow-sheet);opacity:1;transform:scale(1.06)}.guideCatDockSlotGhost{display:grid;width:28px;height:28px;place-items:center;border-radius:50%;background:#8b7e742e;border:2px dashed rgba(139,126,116,.65);animation:guideCatDockSlotGhostPulse .9s ease-in-out infinite alternate}.guideCatDockSlotGhost .guideCatPillAvatar{opacity:.4}.guideCatDockSlot--workspace .guideCatDockSlotGhost{margin-left:-2px}@keyframes guideCatDockSlotGhostPulse{0%{box-shadow:0 0 #8b7e7440}to{box-shadow:0 0 0 6px #8b7e740d}}.guideCatPillBadge{position:absolute;top:-2px;right:-2px;min-width:16px;height:16px;padding:0 4px;display:grid;place-items:center;border-radius:999px;background:var(--accent);color:#fff;font-size:.55rem;font-weight:700;line-height:1;border:2px solid var(--app-bg)}.guideCatPeek{position:fixed;left:var(--guide-cat-peek-left, 64px);top:50%;transform:translateY(-50%);z-index:80;width:260px;border-radius:16px;background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow-raised);padding:var(--space-4);display:grid;gap:var(--space-3);animation:guideCatPeekIn .2s ease-out}.guideCatPeek:before{content:"";position:absolute;left:-8px;top:50%;transform:translateY(-50%);width:0;height:0;border-top:8px solid transparent;border-bottom:8px solid transparent;border-right:8px solid var(--border)}.guideCatPeek:after{content:"";position:absolute;left:-6px;top:50%;transform:translateY(-50%);width:0;height:0;border-top:7px solid transparent;border-bottom:7px solid transparent;border-right:7px solid var(--panel)}@keyframes guideCatPeekIn{0%{opacity:0;transform:translateY(-50%) translate(-8px)}to{opacity:1;transform:translateY(-50%) translate(0)}}.guideCatPeek--anchor-top{animation:guideCatPeekInTop .2s ease-out}.guideCatPeek--anchor-top:before{left:50%;top:-8px;transform:translate(-50%);border-top:none;border-bottom:8px solid var(--border);border-left:8px solid transparent;border-right:8px solid transparent}.guideCatPeek--anchor-top:after{left:50%;top:-6px;transform:translate(-50%);border-top:none;border-bottom:7px solid var(--panel);border-left:7px solid transparent;border-right:7px solid transparent}@keyframes guideCatPeekInTop{0%{opacity:0;transform:translate(-50%) translateY(-8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.guideCatPeek--anchor-bottom-left{animation:guideCatPeekInBottomLeft .2s ease-out}.guideCatPeek--anchor-bottom-left:before{left:-8px;top:auto;bottom:16px;transform:none;border-top:8px solid transparent;border-bottom:8px solid transparent;border-right:8px solid var(--border);border-left:none}.guideCatPeek--anchor-bottom-left:after{left:-6px;top:auto;bottom:17px;transform:none;border-top:7px solid transparent;border-bottom:7px solid transparent;border-right:7px solid var(--panel);border-left:none}@keyframes guideCatPeekInBottomLeft{0%{opacity:0;transform:translateY(-100%) translate(-8px)}to{opacity:1;transform:translateY(-100%) translate(0)}}.guideCatPeekGreeting{font-size:var(--text-sm);color:var(--muted);line-height:1.45}.guideCatPeekActions{display:grid;gap:var(--space-2)}.guideCatPeekAction{display:block;width:100%;padding:8px 12px;border:1px solid var(--border);border-radius:10px;background:var(--panel);color:var(--text);font-size:var(--text-sm);font-weight:500;text-align:left;cursor:pointer;transition:background .12s ease}.guideCatPeekAction:hover{background:var(--panel-hover)}.guideCatPeekDismiss{display:block;width:100%;padding:0;border:none;background:none;color:var(--muted-soft);font-size:var(--text-xs);text-align:center;cursor:pointer}.guideCatPeekDismiss:hover{color:var(--muted)}.guideCatPanel{position:fixed;left:var(--guide-cat-panel-left, 24px);top:0;width:min(320px,calc(100vw - var(--guide-cat-panel-left, 24px) - 16px));height:100vh;z-index:80;background:var(--panel);border-right:1px solid var(--border);box-shadow:4px 0 16px #0000000f;display:grid;grid-template-rows:auto 1fr}.guideCatPanel--lobby{animation:guideCatSlideIn .2s ease-out}.guideCatPanel--product{animation:guideCatPanelAppear .16s ease-out}@keyframes guideCatSlideIn{0%{transform:translate(-100%)}to{transform:translate(0)}}@keyframes guideCatPanelAppear{0%{opacity:0;transform:translateY(6px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}.guideCatPanelHeader{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border)}.guideCatPanelAvatar{display:block;width:28px;height:28px;border-radius:50%;object-fit:cover;flex-shrink:0}.guideCatPanelName{flex:1;font-size:var(--text-sm);font-weight:600;color:var(--text)}.guideCatPanelClose{display:grid;width:28px;height:28px;place-items:center;border:none;border-radius:8px;background:transparent;color:var(--muted);font-size:1rem;cursor:pointer;flex-shrink:0}.guideCatPanelClose:hover{background:var(--panel-hover)}.guideCatPanelBody{padding:var(--space-4);overflow-y:auto;display:grid;gap:var(--space-4);align-content:start}.guideCatPanelGreeting{font-size:var(--text-sm);color:var(--muted);line-height:1.5}.guideCatPanelActions{display:grid;gap:var(--space-2)}.guideCatPanelAction{display:block;width:100%;padding:10px 14px;border:1px solid var(--border);border-radius:12px;background:var(--panel);color:var(--text);font-size:var(--text-sm);font-weight:500;text-align:left;cursor:pointer;transition:background .12s ease}.guideCatPanelAction:hover{background:var(--panel-hover)}@media(max-width:640px){.guideCatPill{top:auto;bottom:16px;left:16px;transform:none}.guideCatPill:hover{transform:scale(1.06)}.guideCatPeek{left:16px;top:auto;bottom:64px;transform:none;width:min(260px,calc(100vw - 32px))}@keyframes guideCatPeekIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.guideCatPanel{inset:auto 0 0;width:100vw;height:min(calc(100vh - 60px),420px);border-right:none;border-top:1px solid var(--border);box-shadow:0 -8px 24px #00000014;border-radius:16px 16px 0 0}@keyframes guideCatSlideIn{0%{transform:translateY(100%)}to{transform:translateY(0)}}}:root{--settings-card-padding: var(--space-4);--settings-section-gap: var(--space-4);--settings-row-gap: var(--space-3);--settings-row-padding-y: 14px;--settings-action-gap: var(--space-2);--settings-header-description-gap: 4px;--settings-radius-sm: 10px;--settings-radius-md: 12px;--settings-radius-lg: 16px;--settings-radius-pill: 999px;--settings-page-title-size: 1.4rem;--settings-title-size: 1.1rem;--settings-subtitle-size: 1rem;--settings-eyebrow-size: .73rem;--settings-label-size: var(--text-sm);--settings-body-size: var(--text-sm);--settings-hint-size: var(--text-xs);--settings-eyebrow-tracking: .04em;--settings-card-shadow: var(--shadow);--settings-text: var(--text);--settings-text-muted: var(--muted);--settings-border: var(--border);--settings-surface: var(--panel);--settings-surface-hover: var(--panel-hover);--settings-sub-surface: var(--panel-subtle);--settings-danger: var(--danger);--settings-danger-hover: var(--danger-hover)}.settings-section{padding:var(--settings-card-padding);border-radius:var(--settings-radius-lg);border:1px solid var(--settings-border);background:var(--settings-surface);box-shadow:var(--settings-card-shadow)}.settings-section[data-variant=form]{align-self:start}.settings-section>*+*{margin-top:var(--settings-row-gap)}.settings-section-header{display:flex;align-items:center;justify-content:flex-start;gap:var(--space-2)}.settings-section-header__eyebrow{margin:0 0 8px;color:var(--muted-soft);font-size:var(--settings-eyebrow-size);font-weight:600;letter-spacing:var(--settings-eyebrow-tracking);text-transform:uppercase}.settings-section-header__title{margin:0;font-size:var(--settings-title-size);font-weight:600}.settings-section-header__title[data-nested=true]{font-size:var(--settings-subtitle-size)}.settings-section>.settings-section-header__description{margin-top:var(--settings-header-description-gap)}.settings-section-header__description{margin:0;color:var(--settings-text-muted);font-size:var(--settings-body-size)}.settings-section-header__status{margin-left:auto}.settings-option-row{display:flex;align-items:center;justify-content:space-between;gap:var(--settings-row-gap)}.settings-option-row[data-layout=stack]{display:grid;grid-template-columns:minmax(0,1fr);gap:6px}.settings-option-row[data-layout=stack] .settings-option-row__control{display:block;width:100%}.settings-option-row[data-choice=true]{display:flex;align-items:flex-start;justify-content:flex-start;gap:var(--settings-row-gap);padding:var(--settings-row-padding-y) 0;border-top:1px solid color-mix(in srgb,var(--settings-text) 8%,transparent)}.settings-option-row[data-choice=true]:first-of-type{border-top:0}.settings-section>.settings-option-row[data-choice=true]:last-child{padding-bottom:0}.settings-section>.settings-option-row[data-choice=true]{margin-top:0}.settings-option-row__meta{display:flex;flex-direction:column;gap:4px;min-width:0}.settings-option-row__label{font-weight:600;font-size:var(--settings-label-size);color:var(--settings-text)}.settings-option-row__description{margin:0;color:var(--settings-text-muted);font-size:var(--settings-body-size)}.settings-option-row__control{display:inline-flex;align-items:center}.settings-sub-section{display:flex;flex-direction:column;gap:14px;padding:16px 18px;border:1px solid var(--settings-border);border-radius:14px;background:var(--settings-sub-surface);min-width:0}.settings-sub-card{display:grid;gap:10px;padding:14px;border:1px solid var(--settings-border);border-radius:14px;background:var(--settings-sub-surface);width:clamp(280px,50%,480px);min-width:0}.settings-section .fieldLabel>span:not(.fieldHint){color:var(--settings-text);font-size:var(--settings-label-size);font-weight:500}.settings-action-bar{display:flex;gap:var(--settings-action-gap);align-items:center;flex-wrap:wrap}.settings-danger-zone__title{margin:0;font-size:var(--settings-title-size);font-weight:600;color:var(--settings-danger)}.settings-danger-zone__description{margin:4px 0 0;color:var(--settings-text-muted);font-size:var(--settings-body-size)}.capabilityBootstrap{display:flex;flex-direction:column;gap:14px}.capabilityBootstrapFacts{display:flex;flex-wrap:wrap;gap:8px 24px;margin:0}.capabilityBootstrapFacts>div{display:flex;flex-direction:column;gap:2px;min-width:0}.capabilityBootstrapFacts dt{font-size:12px;opacity:.7}.capabilityBootstrapFacts dd{margin:0;font-size:13px;overflow-wrap:anywhere}.capabilityBootstrapSubTitle{margin:0;font-size:12px;font-weight:600;opacity:.7}.capabilityBootstrapDiagnostics{display:flex;flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;font-size:13px}.capabilityBootstrapDiagnostics li{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline}.capabilityBootstrapEditor{display:grid;gap:12px}.capabilityBootstrapRuleEditorList{display:grid;gap:12px;margin:0;padding:0;list-style:none}.capabilityBootstrapRuleEditor{display:grid;gap:12px;padding:14px;border:1px solid var(--settings-border);border-radius:14px;background:var(--settings-sub-surface)}.capabilityBootstrapRuleEditorHeading{display:flex;align-items:center;justify-content:space-between;gap:12px}.capabilityBootstrapRuleActions{display:flex;gap:8px;flex-wrap:wrap}.capabilityBootstrapRuleFields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.capabilityBootstrapReasonField{grid-column:1 / -1}.capabilityBootstrapReasonField textarea{min-height:76px;resize:vertical}@media(max-width:760px){.capabilityBootstrapRuleFields{grid-template-columns:minmax(0,1fr)}.capabilityBootstrapReasonField{grid-column:auto}}.capabilityBootstrapRuleId{font-family:var(--font-mono, ui-monospace, monospace);font-size:12px;overflow-wrap:anywhere}.companionModeToggle{display:inline-flex;align-items:center}.companionModeToggleSegment{position:relative}.companionModeToggleSegment:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.companionModeToggleSegment:last-child{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-1px}.companionModeToggleSegment:hover,.companionModeToggleSegment:focus-visible{z-index:1}.companionModeToggleSegment[aria-pressed=true]{background:var(--panel-hover);border-color:var(--accent);color:var(--text);cursor:default;z-index:2}.companionPresenceBadge{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--muted)}.companionPresenceDot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--muted)}.isAwake .companionPresenceDot{background:var(--ready)}.isWaking .companionPresenceDot{background:var(--warm)}.isErrored .companionPresenceDot{background:var(--danger)}.isSleeping .companionPresenceDot{background:var(--muted)}.companionPresenceLarge{display:inline-flex;align-items:center;gap:6px;font-size:14px;font-weight:500}.companionContent{flex:1;padding:0}.companionHeaderAction{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:8px;border:1px solid var(--border);background:var(--surface, var(--app-bg));color:var(--text);font-size:13px;font-weight:500;cursor:pointer;transition:background .12s ease,border-color .12s ease}.companionHeaderAction:hover{background:var(--panel-hover)}.companionHeaderActionPrimary{background:var(--accent);border-color:var(--accent);color:#fff}.companionHeaderActionPrimary:hover{background:color-mix(in srgb,var(--accent) 90%,#000);border-color:color-mix(in srgb,var(--accent) 90%,#000)}.companionHeaderAction:disabled{cursor:not-allowed;opacity:.6}.companionHeaderActionIconOnly{padding:7px;width:34px;justify-content:center}.companionFeed{max-width:880px;margin:0 auto 64px;padding:0 clamp(16px,4vw,32px)}.companionFeedTabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:20px;overflow-x:auto;scrollbar-width:none}.companionFeedTabs::-webkit-scrollbar{display:none}.companionFeedTab{position:relative;background:none;border:none;padding:12px 16px;font-size:14px;font-weight:500;color:var(--muted);cursor:pointer;white-space:nowrap;transition:color .12s ease}.companionFeedTab:hover:not(.companionFeedTabActive){color:var(--text)}.companionFeedTabActive{color:var(--accent)}.companionFeedTabActive:after{content:"";position:absolute;left:12px;right:12px;bottom:-1px;height:3px;border-radius:3px 3px 0 0;background:var(--accent)}.companionFeedContent{display:block}.companionPostList{display:flex;flex-direction:column;gap:16px}.companionPost{background:var(--surface, var(--app-bg));border:1px solid var(--border);border-radius:12px;padding:14px 16px 6px;display:flex;flex-direction:column;gap:10px}.companionPostHeader{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px}.companionPostAvatar{width:40px;height:40px;border-radius:50%;background:var(--accent);color:#fff;display:grid;place-items:center;font-size:14px;font-weight:700;overflow:hidden}.companionPostMeta{display:flex;flex-direction:column;min-width:0}.companionPostAuthor{font-size:14px;font-weight:600;color:var(--text)}.companionPostTimestamp{font-size:12px;color:var(--muted)}.companionPostMenuButton{background:none;border:none;border-radius:999px;width:32px;height:32px;display:grid;place-items:center;color:var(--muted);cursor:pointer}.companionPostMenuButton:hover{background:var(--panel-hover);color:var(--text)}.companionPostBody{display:flex;flex-direction:column;gap:4px}.companionPostText{margin:0;font-size:14px;line-height:1.45;color:var(--text)}.companionPostHashtags{margin:0;display:flex;flex-wrap:wrap;gap:4px 8px;font-size:14px}.companionPostHashtag{color:var(--accent);cursor:pointer}.companionPostHashtag:hover{text-decoration:underline}.companionPostMedia{display:grid;gap:2px;border-radius:10px;overflow:hidden;margin:4px -16px 0}.companionPostMediaCount1{grid-template-columns:1fr}.companionPostMediaCount2{grid-template-columns:1fr 1fr}.companionPostMediaCount3{grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr}.companionPostMediaCount3 .companionPostMediaTile:first-child{grid-row:1 / span 2}.companionPostMediaCount4{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.companionPostMediaTile{position:relative;aspect-ratio:1 / 1;background-color:#b8866a;background-size:cover;background-position:center}.companionPostMediaCount1 .companionPostMediaTile{aspect-ratio:16 / 9}.companionPostMediaCount3 .companionPostMediaTile:first-child{aspect-ratio:auto}.companionPostMediaOverflow{position:absolute;inset:0;display:grid;place-items:center;background:#00000073;color:#fff;font-size:clamp(20px,4vw,32px);font-weight:600}.companionPostStats{display:flex;align-items:center;gap:6px;font-size:13px;color:var(--muted);padding-top:8px}.companionPostReactionGroup{display:inline-flex;align-items:center}.companionPostReactionPip{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;border:2px solid var(--surface, var(--app-bg));color:#fff}.companionPostReactionPip+.companionPostReactionPip{margin-left:-6px}.companionPostReactionPipLike{background:#2078f4}.companionPostReactionPipHeart{background:#f33e58}.companionPostReactionCount{margin-left:4px}.companionPostActions{display:flex;gap:4px;border-top:1px solid var(--border);margin-top:8px;padding-top:4px}.companionPostActionButton{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 10px;background:none;border:none;border-radius:8px;color:var(--muted);font-size:13px;font-weight:500;cursor:pointer;transition:background .12s ease,color .12s ease}.companionPostActionButton:hover{background:var(--panel-hover);color:var(--text)}.companionPhotoGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:4px}.companionPhotoTile{aspect-ratio:1 / 1;border-radius:8px;background-color:#b8866a;background-size:cover;background-position:center;cursor:pointer;transition:transform .12s ease}.companionPhotoTile:hover{transform:scale(1.02)}.companionVideoGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.companionVideoCard{display:flex;flex-direction:column;gap:8px;cursor:pointer}.companionVideoThumb{position:relative;aspect-ratio:16 / 9;border-radius:10px;background-size:cover;background-position:center;overflow:hidden}.companionVideoPlayBadge{position:absolute;inset:0;display:grid;place-items:center;color:#ffffffe6;background:#0000002e;transition:background .12s ease}.companionVideoCard:hover .companionVideoPlayBadge{background:#00000052}.companionVideoDuration{position:absolute;bottom:8px;right:8px;background:#0009;color:#fff;border-radius:4px;padding:2px 6px;font-size:11px;font-weight:500}.companionVideoMeta{display:flex;flex-direction:column;gap:2px;font-size:13px}.companionVideoMeta strong{color:var(--text);font-weight:600}.companionVideoSubtle{color:var(--muted);font-size:12px}.companionMusicList{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.companionMusicItem{display:grid;grid-template-columns:24px 44px minmax(0,1fr) auto;align-items:center;gap:12px;padding:8px;border-radius:8px;cursor:pointer;transition:background .12s ease}.companionMusicItem:hover{background:var(--panel-hover)}.companionMusicIndex{text-align:right;font-size:13px;color:var(--muted)}.companionMusicArt{width:44px;height:44px;border-radius:6px;background-size:cover;background-position:center;display:grid;place-items:center;color:#ffffffd9}.companionMusicMeta{display:flex;flex-direction:column;min-width:0}.companionMusicMeta strong{font-size:14px;color:var(--text);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.companionMusicSubtle{font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.companionMusicDuration{font-size:12px;color:var(--muted)}.companionFileList{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.companionFileItem{display:grid;grid-template-columns:36px minmax(0,1fr);align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;cursor:pointer;transition:background .12s ease}.companionFileItem:hover{background:var(--panel-hover)}.companionFileIcon{display:grid;place-items:center;width:36px;height:36px;border-radius:8px;background:var(--panel-hover);color:var(--accent)}.companionFileMeta{display:flex;flex-direction:column;min-width:0}.companionFileMeta strong{font-size:14px;color:var(--text);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.companionFileSubtle{font-size:12px;color:var(--muted)}.companionSection{display:flex;flex-direction:column;gap:16px;max-width:min(1280px,100%);margin:0 auto}.companionSectionHeader{display:flex;align-items:center;justify-content:space-between;font-weight:600;font-size:14px;color:var(--text)}.companionCard{border:1px solid var(--border);border-radius:8px;padding:12px 14px;background:var(--surface, var(--app-bg))}.companionCardHeader{font-weight:600;font-size:13px;color:var(--text);margin-bottom:8px}.companionStatsList{list-style:none;padding:0;margin:0;display:flex;gap:16px}.companionStatsList li{font-size:13px;color:var(--muted)}.companionStatsList strong{color:var(--text);font-weight:600}.companionPresenceRow{display:flex;align-items:center;gap:12px}.companionMemoryList{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.companionMemoryItem{display:flex;align-items:baseline;gap:8px;font-size:13px}.companionMemoryCategory{font-size:11px;font-weight:500;text-transform:uppercase;color:var(--accent);flex-shrink:0;min-width:70px}.companionMemoryContent{color:var(--text);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.companionMemoryDate{font-size:11px;color:var(--muted);flex-shrink:0}.companionMemoryListFull .companionMemoryContent{white-space:normal}.companionMemoryCard{display:flex;flex-direction:column;gap:6px}.companionMemoryCardHeader{display:flex;align-items:center;justify-content:space-between}.companionMemorySummary{font-size:12px;color:var(--muted);font-style:italic;margin:0}.companionSourceList{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.companionSourceCard{display:flex;flex-direction:column;gap:6px}.companionSourceHeader{display:flex;align-items:baseline;gap:8px}.companionSourceKind{font-size:11px;font-weight:500;text-transform:uppercase;color:var(--accent)}.companionSourceTitle{font-weight:500;font-size:13px;color:var(--text);flex:1}.companionSourceDate{font-size:11px;color:var(--muted)}.companionSourceNote{font-size:12px;color:var(--muted);margin:0}.companionSourcePath{font-size:12px;color:var(--muted);font-family:monospace}.companionDerivedList{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.companionDerivedItem{display:flex;flex-direction:column;gap:4px}.companionDerivedTitle{font-weight:500;font-size:13px;color:var(--text)}.companionDerivedExcerpt{font-size:12px;color:var(--muted);margin:0;line-height:1.4}.companionDerivedDate{font-size:11px;color:var(--muted)}.companionFilterBar{display:flex;flex-wrap:wrap;gap:4px}.companionFilterPill{background:none;border:1px solid var(--border);border-radius:12px;padding:3px 10px;font-size:12px;cursor:pointer;color:var(--muted)}.companionFilterPill:hover{border-color:var(--accent);color:var(--text)}.companionFilterPill.isActive{background:var(--accent);color:#fff;border-color:var(--accent)}.companionPillGroup{display:flex;gap:4px;flex-wrap:wrap}.companionPill{background:none;border:1px solid var(--border);border-radius:6px;padding:4px 12px;font-size:13px;cursor:pointer;color:var(--muted)}.companionPill:hover{border-color:var(--accent);color:var(--text)}.companionPill.isActive{background:var(--accent);color:#fff;border-color:var(--accent)}.companionForm{display:flex;flex-direction:column;gap:8px}.companionFormRow{display:flex;flex-direction:column;gap:4px;margin-bottom:8px}.companionLabel{font-size:12px;font-weight:500;color:var(--muted)}.companionInput{border:1px solid var(--border);border-radius:6px;padding:6px 10px;font-size:13px;background:var(--app-bg);color:var(--text)}.companionTextarea{border:1px solid var(--border);border-radius:6px;padding:6px 10px;font-size:13px;background:var(--app-bg);color:var(--text);resize:vertical;font-family:inherit}.companionSelect{border:1px solid var(--border);border-radius:6px;padding:6px 10px;font-size:13px;background:var(--app-bg);color:var(--text)}.companionActionButton{background:var(--accent);color:#fff;border:none;border-radius:6px;padding:5px 14px;font-size:13px;cursor:pointer;align-self:flex-start}.companionActionButton:hover{opacity:.9}.companionActionButton:disabled{opacity:.5;cursor:default}.companionActionSecondary{background:var(--sidebar-hover-bg);color:var(--text)}.companionDangerButton{background:none;border:none;color:var(--danger);font-size:12px;cursor:pointer;padding:2px 0;align-self:flex-start}.companionDangerButton:hover{text-decoration:underline}.companionLoading{color:var(--muted);font-size:13px;padding:24px 0}.companionEmpty{color:var(--muted);font-size:13px;margin:0}.companionError{display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--danger);border-radius:6px;color:var(--danger);font-size:13px;margin-bottom:12px}.companionMuted{color:var(--muted);font-size:12px}.companionTelegramInfo{font-size:13px;display:flex;flex-direction:column;gap:4px}.companionTelegramInfo p{margin:0}.catStatusRow{display:flex;align-items:center;gap:6px;padding:4px 16px;border-bottom:1px solid var(--border);flex-shrink:0;overflow-x:auto}.catStatusRowCompact{gap:8px}.catStatusBadge{display:inline-flex;align-items:center;gap:4px;background:none;border:1px solid var(--border);border-radius:12px;padding:2px 10px 2px 4px;font-size:12px;cursor:pointer;color:var(--muted);white-space:nowrap}.catStatusBadge:hover{border-color:var(--accent);color:var(--text)}.catStatusBadgeBusy{border-color:var(--ready)}.catStatusAvatar{width:20px;height:20px;border-radius:50%;background:var(--accent);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:10px;font-weight:600}.catStatusDot{width:6px;height:6px;border-radius:50%;display:inline-block}.catStatusDotActive{background:var(--ready)}.catStatusDotBlocked,.catStatusDotReview{background:var(--warm)}.catStatusDotError{background:var(--danger)}.catStatusDotSleeping,.catStatusDotIdle{background:var(--muted)}.catStatusName{font-size:12px}.catStatusCompactBadge{font-size:12px;padding:2px 8px;border-radius:10px;border:1px solid var(--border)}.catStatusCompactActive{color:var(--ready);border-color:var(--ready)}.catStatusCompactBlocked{color:var(--warm);border-color:var(--warm)}.catStatusCompactSleeping{color:var(--muted)}.companionEmptyState{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:48px 24px;text-align:center;color:var(--muted)}.companionEmptyStateHint{font-size:12px;color:var(--subtle)}.companionPromoteOverlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:50;padding:16px}.companionPromoteDialog{background:var(--surface, #fff);color:var(--text, #111);border-radius:12px;width:min(480px,100%);max-height:90vh;overflow-y:auto;padding:20px 24px;display:flex;flex-direction:column;gap:12px;box-shadow:0 8px 32px #00000040}.companionPromoteDialogTitle{margin:0 0 4px;font-size:16px;font-weight:600}.companionPromoteField{display:flex;flex-direction:column;gap:4px}.companionPromoteLabel{font-size:12px;font-weight:500;color:var(--muted)}.companionPromoteMediaFieldset{border:1px solid var(--border);border-radius:8px;padding:8px 12px}.companionPromoteMediaList{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.companionPromoteMediaRow label{display:flex;align-items:center;gap:8px;font-size:13px}.companionPromoteError{background:var(--danger-soft, rgba(220, 38, 38, .1));color:var(--danger, #b91c1c);border-radius:6px;padding:6px 10px;font-size:12px;margin:0}.companionPromoteActions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.companionActionButtonPrimary{background:var(--accent, #2563eb);color:#fff}.companionActionButtonPrimary:disabled{opacity:.5}.companionSourceActions{display:flex;gap:8px;margin-top:4px}.settingsBreadcrumb{display:flex;align-items:center;gap:6px;font-size:.82rem;color:var(--muted)}.breadcrumbLink{border:0;background:transparent;color:var(--accent);cursor:pointer;padding:0;font:inherit;font-size:.82rem}.breadcrumbLink:hover{text-decoration:underline}.breadcrumbSep{color:var(--muted-soft)}.catsLayout{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;min-width:0}.catsLayout>*{min-width:0}.catsLayoutSingleColumn{grid-template-columns:minmax(0,720px);justify-content:center}.catsLayoutSidePanel{grid-template-columns:minmax(0,1080px);justify-content:center;gap:16px}.catsDetailBody{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:start;border:0;padding:0;margin:0;min-width:0}.catsDetailColumn{display:flex;flex-direction:column;gap:16px;min-width:0}.catsDetailBodyReadOnly{opacity:.75}.catsDetailBodyReadOnly .catAvatar.catsIdentityAvatar{cursor:default}.catsSubCard{background:color-mix(in srgb,var(--panel) 70%,var(--sidebar-bg) 30%);border:1px solid var(--border);border-radius:14px;padding:16px 18px;min-width:0;display:flex;flex-direction:column;gap:14px}.catsSubCard .catDetailSection{margin:0;padding:0;background:transparent;border:0;border-radius:0}.catsSubCard .catDetailSection+.catDetailSection{border-top:1px dashed color-mix(in srgb,var(--border) 70%,transparent);padding-top:12px}.catAvatar.catsIdentityAvatar{width:56px;height:56px;font-size:1rem;cursor:pointer;border:0;box-shadow:0 0 0 2px var(--panel),0 0 0 3px color-mix(in srgb,var(--border) 80%,transparent)}.catAvatar.catsIdentityAvatar:hover{box-shadow:0 0 0 2px var(--panel),0 0 0 3px var(--accent)}.catAvatar.catsIdentityAvatarPlaceholder{background:#d4cec8;color:var(--muted, #6e655c);cursor:pointer;outline:1px dashed rgba(110,101,92,.35);outline-offset:-3px;box-shadow:none}.catAvatar.catsIdentityAvatarPlaceholder:hover{background:color-mix(in srgb,#d4cec8 80%,var(--accent) 20%);box-shadow:none}.catsIdentityActions{display:flex;gap:10px;align-items:center}.catsAvatarDock{position:relative;width:56px;height:56px}.catsAvatarDock .catsIdentityAvatar{width:56px;height:56px}.catsAvatarCameraBadge{position:absolute;bottom:-2px;right:-2px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--panel, #fff);color:var(--muted, #6e655c);box-shadow:0 0 0 2px var(--panel, #fff),0 1px 3px #0000001f;pointer-events:none;z-index:2;transition:color .15s ease,background .15s ease}.catsAvatarDock:hover .catsAvatarCameraBadge{background:var(--accent);color:#fff}.catsAvatarRemoveBadge{position:absolute;top:-2px;right:-2px;display:grid;place-items:center;width:22px;height:22px;padding:0;border:0;border-radius:50%;background:var(--panel, #fff);color:var(--muted, #6e655c);cursor:pointer;box-shadow:0 0 0 2px var(--panel, #fff),0 1px 3px #0000001f;opacity:0;z-index:2;transition:opacity .15s ease,color .15s ease,background .15s ease}.catsAvatarDock:hover .catsAvatarRemoveBadge,.catsAvatarRemoveBadge:focus-visible{opacity:1}.catsAvatarRemoveBadge:hover{background:#d04040;color:#fff}.linkButton{background:transparent;border:0;padding:0;color:var(--muted);cursor:pointer;font:inherit;text-decoration:underline}.catsCoverField{align-items:stretch}.catsCoverDock{position:relative;width:100%;aspect-ratio:16 / 6;max-height:160px}.catsCoverThumb{display:block;width:100%;height:100%;padding:0;border-radius:10px;border:1px solid var(--border);background-color:color-mix(in srgb,var(--cat-avatar-color, #b8866a) 75%,#fff);background-image:linear-gradient(135deg,color-mix(in srgb,var(--cat-avatar-color, #b8866a) 45%,#fff) 0%,var(--cat-avatar-color, #b8866a) 55%,color-mix(in srgb,var(--cat-avatar-color, #b8866a) 45%,#000) 100%);background-size:cover;background-position:center;background-repeat:no-repeat;cursor:pointer;transition:filter .18s ease,border-color .18s ease}.catsCoverThumbLoaded{background-color:#2a2a2a}.catsCoverThumbPlaceholder{background-color:#d4cec8;background-image:none;outline:1px dashed rgba(110,101,92,.35);outline-offset:-3px;display:grid;place-items:center;color:var(--muted, #6e655c)}.catsCoverThumbPlaceholder:hover{background-color:color-mix(in srgb,#d4cec8 80%,var(--accent) 20%)}.catsCoverPlaceholderIcon{opacity:.75}.catsCoverThumb:hover{filter:brightness(.95);border-color:var(--accent)}.catsCoverThumb:disabled{cursor:default;filter:none}.catsCoverCameraBadge{position:absolute;bottom:8px;right:8px;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--panel, #fff);color:var(--muted, #6e655c);box-shadow:0 0 0 2px var(--panel, #fff),0 1px 3px #0000001f;pointer-events:none;transition:background .15s ease,color .15s ease}.catsCoverDock:hover .catsCoverCameraBadge{background:var(--accent);color:#fff}.catsCoverRemoveBadge{position:absolute;top:8px;right:8px;display:grid;place-items:center;width:26px;height:26px;padding:0;border:0;border-radius:50%;background:var(--panel, #fff);color:var(--muted, #6e655c);cursor:pointer;box-shadow:0 0 0 2px var(--panel, #fff),0 1px 3px #0000001f;opacity:0;z-index:2;transition:opacity .15s ease,color .15s ease,background .15s ease}.catsCoverDock:hover .catsCoverRemoveBadge,.catsCoverRemoveBadge:focus-visible{opacity:1}.catsCoverRemoveBadge:hover{background:#d04040;color:#fff}.catsIdentityAvatarRow{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.catsIdentityBossToggle{margin:0}.catAvatar.catsIdentityAvatar.catsIdentityAvatarStatic{cursor:default;overflow:hidden}.catAvatar.catsIdentityAvatar.catsIdentityAvatarStatic:hover{box-shadow:0 0 0 2px var(--panel),0 0 0 3px color-mix(in srgb,var(--border) 80%,transparent)}.catsIdentityAvatarImage{width:100%;height:100%;object-fit:cover;display:block}.catsIdentityNameStatic{font-size:1rem;font-weight:500;color:var(--text);padding:6px 0}.linkButton:hover{color:var(--text)}@media(max-width:900px){.catsDetailBody{grid-template-columns:minmax(0,1fr)}}.catsSelectorStrip{display:flex;align-items:center;gap:12px;padding:4px 4px 6px;overflow-x:auto}.catsSelectorDivider{flex-shrink:0;width:1px;height:32px;background:var(--border)}.catAvatar.catsSelectorAvatar.catsSelectorAvatarArchived{opacity:.35;filter:grayscale(.3)}.catAvatar.catsSelectorAvatar.catsSelectorAvatarArchived:hover{opacity:.6}.catAvatar.catsSelectorAvatar.catsSelectorAvatarArchived.catsSelectorAvatarActive{opacity:.9;filter:grayscale(.1)}.catsSelectorArchiveToggle{margin-left:auto;display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:.82rem;cursor:pointer;flex-shrink:0;-webkit-user-select:none;user-select:none}.catsSelectorArchiveToggle input{margin:0}.catAvatar.catsSelectorAvatar{width:56px;height:56px;font-size:1rem;flex-shrink:0;cursor:pointer;opacity:.78;transition:opacity .15s ease,transform .15s ease;border:0;outline:none;box-shadow:none;position:relative}.catAvatar.catsSelectorAvatar:hover{opacity:.95}.catAvatar.catsSelectorAvatar.catsSelectorAvatarActive{opacity:1;box-shadow:0 0 0 2px var(--panel, #fff),0 0 0 4px var(--accent)}.catAvatar.catsSelectorAvatar.catsSelectorAvatarBoss:after{content:"";position:absolute;inset:0;border-radius:50%;border:2px solid #e8c84a;pointer-events:none}.catAvatar.catsSelectorAvatar.catsSelectorNewAvatar{background:transparent;color:var(--accent);border:1.5px dashed color-mix(in srgb,var(--accent) 55%,var(--border) 45%);opacity:.85}.catAvatar.catsSelectorAvatar.catsSelectorNewAvatar:hover{opacity:1;background:color-mix(in srgb,var(--panel) 70%,var(--accent) 30%)}.catAvatar.catsSelectorAvatar.catsSelectorNewAvatar:disabled{opacity:.3;cursor:not-allowed}.catAvatar.catsSelectorAvatar.catsSelectorNewAvatar.catsSelectorAvatarActive{background:var(--accent);color:#fff;border-color:transparent}.catsDetailCard{padding:18px 22px}.catsDetailCard>.settings-section-header{justify-content:space-between;gap:10px;padding-bottom:10px;margin-bottom:14px;border-bottom:1px solid var(--border)}.catsDetailCard>.catsDetailBody{margin-top:0}.catsDetailCard .settings-section-header__title:not([data-nested]){display:flex;align-items:center;gap:10px}.catsDetailBossTag{display:inline-block;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,#e8c84a 30%,transparent);color:#6a5600;font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.catsDetailArchivedTag{display:inline-block;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--muted) 18%,transparent);color:var(--muted);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.catsDetailCard .catDetailSection{margin-bottom:14px}.catsDetailCard .catDetailSection:last-child{margin-bottom:0}.catsDetailCard .fieldHint,.catsDetailCard .providerCatalogHint{display:none}.catsCreateEmbedded{display:block}.catsProviderSection{margin-bottom:0}.catDetailSectionHeader{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.catDetailSectionHeader .sectionLabel{margin:0}.catsCreateCta{padding:0;background:color-mix(in srgb,var(--panel) 80%,var(--accent) 20%);border:1px dashed color-mix(in srgb,var(--border) 40%,var(--accent) 60%)}.catsCreateCtaButton{display:flex;align-items:center;gap:14px;width:100%;padding:18px 20px;background:transparent;border:0;border-radius:inherit;cursor:pointer;text-align:left;color:var(--text);font:inherit}.catsCreateCtaButton:hover{background:color-mix(in srgb,var(--panel) 60%,var(--accent) 40%)}.catsCreateCtaButton:disabled{cursor:not-allowed;opacity:.6}.catsCreateCtaIcon{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#d4cec8;color:var(--muted, #6e655c);outline:1px dashed rgba(110,101,92,.35);outline-offset:-2px;flex-shrink:0}.catsCreateCtaLabel{display:flex;flex-direction:column;gap:2px}.catsCreateCtaLabel strong{font-size:1rem;font-weight:600}.catsCreateCtaHint{font-size:.82rem;color:var(--muted)}.catsCreateCard .contentCardHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.catsCreateClose{border:0;background:transparent;color:var(--muted);cursor:pointer;padding:6px;border-radius:8px;display:grid;place-items:center}.catsCreateClose:hover{background:var(--panel-hover);color:var(--text)}.catsCreateActions{display:flex;gap:10px;justify-content:flex-end;margin-top:4px}.catCard{display:grid;gap:10px;padding:14px;border:1px solid var(--border);border-radius:14px;background:#fbfaf8}.catCard strong{font-size:.92rem;font-weight:600}.catCard p{margin:4px 0 0;color:var(--muted)}.chatRoster{display:grid;gap:8px;width:min(100%,362px)}.rosterHeader{display:flex;align-items:center;justify-content:space-between}.rosterLabel{color:var(--muted);font-size:.82rem}.addCatButton{width:32px;height:32px;padding:0;border:1px solid var(--border);border-radius:50%;background:#ffffffb8;color:var(--accent);font-size:1rem;font-weight:600;cursor:pointer;display:grid;place-items:center}.addCatButton:hover{background:var(--accent-soft)}.rosterChips{display:flex;flex-wrap:wrap;gap:6px}.rosterChip{padding:3px 8px;border:1px solid var(--border);border-radius:999px;background:#ffffffb8;font-size:.72rem;color:var(--text)}.addCatPanel{position:fixed;top:0;right:0;width:360px;height:100vh;border-left:1px solid var(--border);background:var(--panel);box-shadow:-4px 0 24px #1018280f;padding:20px;display:grid;align-content:start;gap:16px;overflow-y:auto;z-index:20}.addCatPanelHeader{display:flex;align-items:center;justify-content:space-between}.addCatPanelHeader h2{margin:0;font-size:1.1rem;font-weight:600}.addCatClose{width:28px;height:28px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--muted);font-size:.9rem;cursor:pointer;display:grid;place-items:center}.addCatClose:hover{background:var(--panel-hover)}.addCatTabs{display:flex;gap:0;border:1px solid var(--border);border-radius:10px;overflow:hidden}.addCatTab{flex:1;padding:8px 12px;border:0;background:transparent;color:var(--muted);font-size:.85rem;font-weight:500;cursor:pointer}.addCatTabActive{background:#ffffffe6;color:var(--text);font-weight:600;box-shadow:inset 0 0 0 1px var(--border)}.addCatList{display:grid;gap:8px}.addCatItem{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:#fbfaf8}.addCatItem strong{font-size:.92rem;font-weight:600}.addCatItem p{margin:2px 0 0;color:var(--muted);font-size:.78rem}.addCatAssignButton{padding:6px 14px;border:0;border-radius:10px;background:var(--text);color:#fff;font-size:.82rem;font-weight:600;cursor:pointer;white-space:nowrap}.addCatAssignButton:disabled{opacity:.3;cursor:not-allowed}.addCatAssignButton:hover:not(:disabled){background:#333}.addCatCreate{display:grid;gap:8px}@media(max-width:980px){.claudeShell{grid-template-columns:1fr}.sidebar{min-height:auto;border-bottom:1px solid var(--border)}.claudeShell>.canvas{min-height:60vh}.catsLayout{grid-template-columns:1fr}.addCatPanel{width:100%}}@media(max-width:640px){.sidebarInner{padding:12px 8px 10px}.sidebarFooter,.claudeShell>.canvas{padding-left:16px;padding-right:16px}.composerCard{width:100%;border-radius:20px}.chipRow{justify-content:flex-start}.contentCard,.loadingPanel,.errorPanel{padding:14px}}.screen.claudeShell{height:100vh;min-height:0;overflow:hidden}.claudeShell{height:100vh;min-height:0;grid-template-columns:260px minmax(0,1fr);overflow:hidden}.claudeShellSidebarCollapsed{grid-template-columns:48px minmax(0,1fr)}.sidebar{position:relative;min-height:0;height:100vh;overflow:hidden;overflow-x:hidden;z-index:10}.sidebarCollapsed{overflow:visible}.sidebarCollapsed .brandCopy,.sidebarCollapsed .navLabel,.sidebarCollapsed .sidebarFooterMeta,.sidebarCollapsed .sidebarScrollable{display:none}.sidebarCollapsed .sidebarInner{padding:16px 0 0;align-items:center}.sidebarCollapsed .brandRow{justify-content:center;padding:0;margin-bottom:16px}.sidebarCollapsed .navGroup{width:100%;align-items:center}.sidebarCollapsed .navItem{justify-content:center;padding:0}.sidebarCollapsed .sidebarFooter{display:flex;justify-content:center;margin:0;padding:0;border-top:none}.sidebarCollapsed .sidebarFooterButton{justify-content:center;padding:0}.sidebarInner{display:flex;min-height:0;min-width:0;flex:1;flex-direction:column;padding:16px 12px 0;overflow:hidden}.sidebarScrollable{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;margin:4px -12px 0;padding:0 12px;background:linear-gradient(var(--sidebar-bg) 30%,transparent) center top,linear-gradient(#00000012,#00000012) center top;background-repeat:no-repeat;background-size:100% 12px,100% 1px;background-attachment:local,scroll}.sidebarScrollable::-webkit-scrollbar{width:6px}.sidebarScrollable::-webkit-scrollbar-track{background:var(--sidebar-bg)}.sidebarScrollable::-webkit-scrollbar-thumb{background:transparent;border-radius:3px}.sidebarScrollable:hover::-webkit-scrollbar-thumb{background:#00000026}.sidebarScrollable::-webkit-scrollbar-thumb:hover{background:#00000040}.chromeButton{display:grid;width:28px;height:28px;place-items:center;cursor:pointer}.navItem{cursor:pointer}.recentSection{display:flex;flex-direction:column}.recentList{grid-template-columns:minmax(0,1fr);min-width:0;overflow-x:hidden;align-content:start;padding-bottom:8px;gap:0}.recentItemCard{position:relative;display:flex;align-items:center;gap:8px;min-width:0;padding:6px 12px;border-radius:8px;background:transparent;cursor:pointer}.recentItemCard:hover{background:var(--sidebar-hover-bg)}.recentSelectButton{flex:1 1 auto;min-width:0;padding:0;border:0;border-radius:0;background:transparent;color:var(--text);text-align:left;cursor:pointer}.recentSelectButton strong{font-weight:400;font-size:.9rem}.pinnedSelectButton{display:flex;align-items:center;gap:8px}.pinnedSelectButton>strong{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.navGroupPinnedList{display:grid;gap:0}.navGroupPinnedList .recentItemCard{padding-left:30px}.overviewCardSelect:hover,.overviewDeleteButton:hover{background:var(--sidebar-hover-bg)}.recentItemSelected{background:var(--sidebar-active-bg)}.recentDeleteButton,.overviewDeleteButton{padding:8px 10px;border:0;border-radius:10px;background:transparent;color:var(--muted);cursor:pointer;align-self:center}.sidebarFooter{position:relative;display:flex;align-items:stretch;height:60px;margin:0;border-top:1px solid rgba(0,0,0,.06)}.sidebarFooterMeta{min-width:0;flex:1}.sidebarFooterMeta strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recentItemTrailing{position:relative;display:grid;flex:0 0 24px;width:24px;height:24px;place-items:center}.recentGroupCard{display:grid}.recentGroupCard>.recentItemCard{position:relative}.recentParallelGlyph{grid-area:1 / 1;display:grid;place-items:center;width:24px;height:24px;color:var(--muted-soft);pointer-events:none;transition:opacity .15s ease}.recentItemCard:hover .recentParallelGlyph,.recentItemOverflowOpen .recentParallelGlyph{opacity:0}.recentGroupList{display:grid}.recentGroupList .recentItemCard{padding-left:24px}.profileBadge{flex:0 0 28px}.runtimeStatusDot{flex:0 0 9px;width:9px;height:9px;border-radius:50%;border:1px solid rgba(0,0,0,.08)}.runtimeStatusDot.isConnected{background:#3da779}.runtimeStatusDot.isDegraded{background:#d4a030}.runtimeStatusDot.isUnavailable{background:#d04040}.runtimeStatusDot.isUnknown{background:#9e9890}.sidebarCollapsed .runtimeStatusDot{display:none}.sidebarCollapsed .sidebarFooter{padding-left:0;padding-right:0;overflow:visible}.sidebarCollapsed .profileBadge{width:28px;height:28px}.sidebarCollapsed,.sidebarCollapsed .sidebarFooterButton,.sidebarCollapsed .chromeButton,.sidebarCollapsed .navItem{cursor:pointer}.sidebarCollapsed .accountMenu{left:calc(100% + 8px);bottom:8px;width:200px;margin-bottom:0}.claudeShell>.canvas{width:100%;min-height:0;height:100vh;padding:0 28px;overflow-y:auto;overflow-x:hidden;scrollbar-gutter:stable}.viewShell{width:min(100%,768px);margin:0 auto}.viewShellScrollable{height:100%;overflow:auto;padding-right:8px}.catsShell{padding-bottom:32px}.overviewShell{display:none}.overviewHeader{display:flex;align-items:end;justify-content:space-between;gap:16px}.overviewList{display:grid;gap:14px}.overviewCard{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start;padding:18px;border:1px solid var(--border);border-radius:18px;background:var(--panel);box-shadow:var(--shadow)}.overviewCardSelect{width:100%;border:0;background:transparent;color:var(--text);text-align:left;cursor:pointer;border-radius:12px;padding:4px}.overviewCardTop{display:flex;justify-content:space-between;gap:16px;align-items:start}.overviewCardMeta{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px;color:var(--muted);font-size:.82rem}.overviewEmpty{display:grid;gap:14px;justify-items:center;padding:28px}.channelShell{display:flex;flex-direction:column;gap:18px;min-height:calc(100vh - 60px)}.channelShellFresh{justify-content:flex-start}.channelTopBar{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px;margin:0 -28px;padding:0 28px;border:none;border-bottom:1px solid var(--border);border-radius:0;background:var(--canvas-bg);box-shadow:none;position:sticky;top:0;z-index:5;flex-shrink:0;width:calc(100% + 56px);min-height:60px}.channelTopBarStart,.channelTopBarCenter,.channelTopBarEnd{min-width:0;display:flex;align-items:center}.channelTopBarStart{justify-content:flex-start}.channelTopBarCenter{justify-content:center;justify-self:center;width:min(55vw,var(--chat-transcript-max-width, 720px));max-width:100%;overflow:hidden}.channelTopBarEnd{justify-content:flex-end;gap:10px}.channelActionIconButton,.sidePanelToggle{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--border);border-radius:8px;background:transparent;color:var(--muted);cursor:pointer;flex-shrink:0;align-self:center;position:relative;transition:background .15s ease,color .15s ease,border-color .15s ease}.channelActionIconButton:hover:not(:disabled),.sidePanelToggle:hover{background:var(--panel-hover);color:var(--text)}.channelActionIconButton:disabled{opacity:.55;cursor:default}.channelActionIconGlyph{flex:0 0 auto}.sidePanelBadge{position:absolute;top:-4px;right:-4px;display:flex;align-items:center;justify-content:center;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:var(--accent);color:#fff;font-size:.6rem;font-weight:700}.rosterAvatars{display:flex;align-items:center;flex-shrink:0;min-width:0}.channelTopBarTitle{text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.channelTopBarTitleDirectLane{font-size:1.35rem;font-weight:600;line-height:1.2}.rosterAvatars .catAvatar{margin-left:-8px;transition:margin-left .2s ease}.rosterAvatarsExpanded .catAvatar{margin-left:4px}.rosterAvatars .catAvatar:first-child{margin-left:0}.rosterAvatars:hover .catAvatar{margin-left:4px}.rosterAvatars:hover .catAvatar:first-child{margin-left:0}.catAvatar{display:grid;width:28px;height:28px;place-items:center;border-radius:50%;background:#8b7e74;color:#fff;font-size:.65rem;font-weight:700;border:none;cursor:default;position:relative;z-index:1}.catAvatarBoss{outline:2px solid #e8c84a;outline-offset:0px}.channelIdentity{display:none}.channelIdentity h1{margin:0;font-size:clamp(1.8rem,3vw,2.35rem);font-weight:600;letter-spacing:-.03em}.channelParticipantsBar{display:flex;align-items:flex-start;justify-content:flex-end;gap:12px}.channelParticipantsList{display:flex;max-width:560px;flex-wrap:wrap;justify-content:flex-end;gap:8px}.channelFeedback{margin:0}.transcriptPanel{width:100%;max-width:var(--chat-transcript-max-width, 720px);flex:1;padding-bottom:0;margin:0 auto}.transcriptList{display:grid;gap:4px;width:100%;margin:0 auto;align-content:start}.transcriptBottomSentinel{width:100%;height:0;margin-top:-18px}.transcriptMessage{max-width:85%;padding:10px 14px;border-radius:16px;font-size:.92rem;line-height:1.5}.transcriptMessageUser{margin-left:auto;background:var(--user-bubble-bg);color:var(--text)}.transcriptMessageOrchestrator,.transcriptMessageAgent{margin-right:auto;background:var(--panel);border:1px solid var(--border);color:var(--text)}.transcriptAvatar{width:28px;height:28px;font-size:.65rem;flex-shrink:0}.transcriptMessageTop{margin-bottom:4px}.transcriptMessageSystem{margin:4px auto;max-width:90%;background:transparent;border:none;box-shadow:none;text-align:center;color:var(--muted);font-size:.82rem;line-height:1.45}.freshChatIntro{display:grid;place-items:center;padding-top:10vh}.freshChatCard{width:min(100%,760px);text-align:center}.viewShellDraft{height:100%}.draftShell{display:grid;height:100%;align-content:start;justify-items:center;padding-top:20vh;max-width:720px;margin:0 auto;--chat-transcript-max-width: 720px}.draftShell:has(.draftHeaderWithCover){padding-top:0}.composerCard{width:100%;margin:0 auto}.composerAreaStack{display:flex;flex-direction:column;width:100%;min-width:0}.composerAreaStack.composerAreaStackDocked{position:sticky;bottom:16px;z-index:5}.composerAreaStack.composerAreaStackMenuOpen{z-index:12}.composerCardDocked{max-width:var(--chat-transcript-max-width, 720px);margin:0 auto;width:100%}.composerCardFresh{max-width:var(--chat-transcript-max-width, 720px);margin:0 auto;position:relative}.composerCardFresh.composerCardMenuOpen{z-index:12}.composerInput{min-height:44px}.composerFooter,.composerFooterTight{display:none}.recentSection>.sectionLabel{display:block}.draftGreeting{text-align:center;margin-bottom:24px}.draftGreeting h1{font-size:clamp(1.5rem,3vw,2rem);font-weight:500;letter-spacing:-.03em;color:var(--text)}.draftHeader{width:100%;max-width:var(--chat-transcript-max-width, 720px);margin:0 auto 24px}.draftHeaderIntro{text-align:center}.draftHeaderIntro .draftHeaderTitleRow,.draftHeaderIntro .draftHeaderActions,.draftHeaderIntro .draftHeaderMetaRow{justify-content:center}.draftHeaderProfile{display:grid;grid-template-columns:auto minmax(0,1fr);gap:20px;align-items:center;text-align:left}.draftHeaderProfile.draftHeaderWithCover{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"cover cover" "avatar body";column-gap:20px;row-gap:0;max-width:var(--chat-transcript-max-width, 720px);width:100%;margin:0 auto 16px;align-items:center;text-align:left}.draftHeaderCover{grid-area:cover;position:relative;width:100%;aspect-ratio:16 / 6;border:0;padding:0;border-radius:0 0 16px 16px;background-color:color-mix(in srgb,var(--cat-avatar-color, #b8866a) 75%,#fff);background-image:linear-gradient(135deg,color-mix(in srgb,var(--cat-avatar-color, #b8866a) 45%,#fff) 0%,var(--cat-avatar-color, #b8866a) 55%,color-mix(in srgb,var(--cat-avatar-color, #b8866a) 45%,#000) 100%);background-size:cover;background-position:center;background-repeat:no-repeat;overflow:hidden;margin-bottom:-32px}.draftHeaderCoverAddButton{position:absolute;right:12px;bottom:12px;display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.24);background:#0000008c;color:#fff;font-size:.82rem;font-weight:500;cursor:pointer;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);transition:background-color .12s ease,transform .12s ease}.draftHeaderCoverAddButton:hover{background:#000000bf}.draftHeaderCoverAddButton:active{transform:scale(.97)}.draftHeaderVisual{display:flex;align-items:center;justify-content:center}.draftHeaderWithCover .draftHeaderVisual{grid-area:avatar;position:relative;z-index:1;justify-self:start;justify-content:flex-start;padding-left:24px}.draftHeaderAvatar{display:grid;place-items:center;width:112px;height:112px;border-radius:50%;background:#8b7e74;color:#fff;font-size:1.6rem;font-weight:700;overflow:hidden}.draftHeaderWithCover .draftHeaderAvatar{width:120px;height:120px;border:4px solid var(--surface, #fff);box-shadow:0 2px 10px #0000001a}button.draftHeaderAvatar.draftHeaderAvatarEditable{position:relative;padding:0;cursor:pointer;color:#fff;overflow:visible;transition:filter .18s ease}button.draftHeaderAvatar.draftHeaderAvatarEditable:hover{filter:brightness(.95)}.draftHeaderAvatarInitials{display:grid;place-items:center;width:100%;height:100%;border-radius:50%;overflow:hidden;font-size:1.6rem;font-weight:700}.draftHeaderAvatarCameraBadge{position:absolute;bottom:-4px;right:-4px;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--panel, #fff);color:var(--muted, #6e655c);box-shadow:0 0 0 3px var(--panel, #fff),0 2px 4px #0000001f;transition:background-color .18s ease,color .18s ease}button.draftHeaderAvatar.draftHeaderAvatarEditable:hover .draftHeaderAvatarCameraBadge{background:var(--accent);color:#fff}.draftHeaderWithCover .draftHeaderBody{grid-area:body;align-self:center;padding:0 24px 0 0;margin-top:0}.draftHeaderBody{min-width:0}.draftHeaderTitleRow{display:flex;align-items:center;justify-content:space-between;gap:16px}.draftHeaderTitle{margin:0;font-size:clamp(1.5rem,3vw,2rem);font-weight:500;letter-spacing:-.03em;color:var(--text)}.draftHeaderActions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.draftHeaderAction{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;border-radius:8px;border:1px solid var(--border);background:var(--surface, var(--app-bg));color:var(--text);font-size:13px;font-weight:500;cursor:pointer;transition:background .12s ease,border-color .12s ease}.draftHeaderAction:hover{background:var(--panel-hover)}.draftHeaderSupportingContent{margin-top:12px}.draftHeaderMetaRow{display:flex;flex-wrap:wrap;gap:8px}@media(max-width:720px){.draftHeaderProfile{grid-template-columns:1fr;gap:16px;text-align:center}.draftHeaderVisual,.draftHeaderTitleRow{justify-content:center}.draftHeaderProfile.draftHeaderWithCover{grid-template-columns:1fr;grid-template-areas:"cover" "avatar" "body";text-align:center;column-gap:0}.draftHeaderWithCover .draftHeaderVisual{justify-self:center;justify-content:center;padding-left:0}.draftHeaderCover{margin-bottom:-40px}.draftHeaderWithCover .draftHeaderAvatar{width:96px;height:96px}.draftHeaderWithCover .draftHeaderBody{margin-top:8px;padding:0 12px}}.draftContextChip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid var(--border);border-radius:999px;background:#ffffffb8;color:var(--muted);font-size:.78rem;min-width:0}.draftContextChipLabel{display:block;min-width:0;max-width:min(100%,28ch);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.draftContextChipClickable{cursor:pointer}.draftContextChipClickable:hover:not(:disabled){background:var(--panel-hover);color:var(--text)}.draftContextChipEmpty{background:transparent;border-style:dashed;color:var(--muted-soft)}.recentCatAvatar{grid-area:1 / 1;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#8b7e74;color:#fff;font-size:.55rem;font-weight:700;flex-shrink:0;pointer-events:none;transition:opacity .15s ease}.recentCatAvatarBoss{box-shadow:0 0 0 1px #e8c84a}.recentItemCard:hover .recentCatAvatar,.recentItemOverflowOpen .recentCatAvatar{opacity:0}.recentSelectButton strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recentOverflowButton{grid-area:1 / 1;display:grid;place-items:center;width:24px;height:24px;border:0;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer;font-size:.85rem;opacity:0;pointer-events:none;transition:opacity .15s ease,background .15s ease}.recentItemCard:hover .recentOverflowButton,.recentItemOverflowOpen .recentOverflowButton{opacity:1;pointer-events:auto}.recentOverflowButton:hover{background:var(--panel-hover)}.recentRenameInput{width:100%;padding:2px 4px;border:1px solid var(--accent);border-radius:4px;background:var(--panel);color:var(--text);font:inherit;font-size:.9rem;font-weight:400;outline:none}.recentOverflowMenu{position:fixed;min-width:120px;border:1px solid var(--border);border-radius:10px;background:var(--panel);box-shadow:var(--shadow);z-index:90;padding:4px}.recentOverflowMenuDivider{height:1px;margin:4px 8px;background:var(--border)}.typingIndicator{animation:typingFadeIn .2s ease}@keyframes typingFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.typingDots{display:inline-flex;gap:5px;align-items:center;height:1.5em}.typingDots span{width:6px;height:6px;border-radius:50%;background:var(--muted);animation:typingBounce 1.4s ease-in-out infinite}.typingDots span:nth-child(2){animation-delay:.2s}.typingDots span:nth-child(3){animation-delay:.4s}@keyframes typingBounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-4px);opacity:1}}.typingStatusText{margin:0;color:var(--muted);font-size:.85rem;font-style:italic;white-space:pre-wrap}.typingToolChip{display:inline-block;margin-top:4px;margin-right:4px;padding:2px 8px;border-radius:10px;background:var(--panel-hover);color:var(--muted);font-size:.75rem}.toolSegmentChip{display:flex;align-items:center;gap:6px;margin-top:6px;padding:4px 10px;border-radius:10px;background:color-mix(in srgb,var(--panel-hover) 80%,var(--accent) 20%);color:var(--text);font-size:.8rem}.toolSegmentChip:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--accent);animation:toolSegmentPulse 1.4s ease-in-out infinite}.toolSegmentChipDone{background:var(--panel-hover);color:var(--muted)}.toolSegmentChipDone:before{background:var(--muted);animation:none;opacity:.5}.toolSegmentChipName{font-weight:500}.toolSegmentChipDetail{color:var(--muted);font-size:.75rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:240px}@keyframes toolSegmentPulse{0%,60%,to{opacity:.4}30%{opacity:1}}.typingContentBlocks{display:flex;flex-direction:column;gap:8px;margin-top:10px}.typingContentBlock{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:var(--panel)}.typingContentBlockText{background:color-mix(in srgb,var(--panel) 88%,var(--accent-soft) 12%)}.typingContentBlockTool{background:color-mix(in srgb,var(--panel) 92%,var(--accent) 8%)}.typingContentBlockStatus{background:color-mix(in srgb,var(--panel) 94%,var(--panel-hover) 6%)}.typingContentBlockStreaming{border-color:color-mix(in srgb,var(--accent) 45%,var(--border) 55%)}.typingContentBlockError{border-color:color-mix(in srgb,var(--danger) 45%,var(--border) 55%)}.typingContentBlockTitle{font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--muted-soft)}.typingContentBlockBody{color:var(--text);white-space:pre-wrap;word-break:break-word;line-height:1.45}.typingEventTape{display:flex;flex-direction:column;gap:6px;margin-top:10px}.typingEventRow{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start;font-size:.8rem;color:var(--muted-soft)}.typingEventRowActive{color:var(--text)}.typingEventRowSuccess{color:var(--success)}.typingEventRowError{color:var(--danger)}.typingEventLabel{font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:inherit}.typingEventText{color:inherit;word-break:break-word}.catAvatarPulsing{animation:avatarPulse 1.5s ease-in-out infinite}@keyframes avatarPulse{0%,to{box-shadow:0 0 #8b7e7466}50%{box-shadow:0 0 0 5px #8b7e7400}}.recentOverflowMenu button{display:block;width:100%;padding:8px 12px;border:0;border-radius:8px;background:transparent;color:var(--text);text-align:left;cursor:pointer;font:inherit;font-size:.85rem}.recentOverflowMenu button:hover{background:var(--panel-hover)}.composerFooterMinimal{display:flex;justify-content:center;padding:8px 0 0}.composerHint{color:var(--muted-soft);font-size:.75rem}.messageBody{margin:0;white-space:pre-wrap;word-break:break-word}.messageBodyLink{color:var(--accent);text-decoration:underline;text-underline-offset:2px}.messageBodyLink:hover{text-decoration-thickness:2px}.messageBodyMention{display:inline;padding:1px 6px;border-radius:10px;font-size:inherit;line-height:inherit;font-weight:600;color:#fff;background:#8b7e74}.messageBodyWrapper{display:contents}.messageBodyImages{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}.messageBodyImageLink{display:block;border-radius:10px;overflow:hidden;line-height:0}.messageBodyImage{max-width:240px;max-height:180px;object-fit:cover;border-radius:10px;cursor:pointer;transition:opacity .15s ease}.messageBodyImage:hover{opacity:.85}.messageBodyFiles{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}.messageBodyFileChip{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:10px;background:var(--panel-hover);color:var(--text);font-size:.82rem;text-decoration:none;transition:background .15s ease}.messageBodyFileChip:hover{background:var(--border)}.myCatsSection{padding:0;margin-top:16px}.myCatsSection.myCatsSectionHeaderless{margin-top:0}.myCatsSection>.sectionLabel{margin:0 0 4px;padding:0 12px}.myCatsList{display:flex;flex-direction:column;gap:0;min-width:0}.myCatItem{display:flex;align-items:center;gap:8px;flex:1 1 auto;min-width:0;padding:6px 12px;border:none;border-radius:8px;background:transparent;cursor:pointer;font-size:.9rem;transition:color .15s;text-align:left}.myCatItemActive{background:transparent}.myCatAvatarWrap{position:relative}.myCatDot{position:absolute;bottom:-1px;right:-1px;width:9px;height:9px;border-radius:50%;border:2px solid var(--sidebar-bg)}.myCatDotAwake{background:#3da779}.myCatDotWaking{background:#d4a030}.myCatDotSleeping{background:#9e9890}.myCatDotError{background:#d04040}.myCatName{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.catAvatarPlaceholder{background:#d4cec8;color:var(--muted, #6e655c);outline:1px dashed rgba(110,101,92,.35);outline-offset:-2px}.myCatPlaceholderIcon{display:block;pointer-events:none}.myCatNamePlaceholder{color:var(--muted, #8a8178);font-style:italic}.myCatItemPlaceholder{opacity:.9}.myCatItemPlaceholder:disabled{cursor:default}.myCatRowPlaceholder{background:color-mix(in srgb,var(--sidebar-bg) 82%,#d4a030 18%)}.myCatRowPlaceholder:hover{background:color-mix(in srgb,var(--sidebar-bg) 70%,#d4a030 30%)}.myCatRowPlaceholderStatic{cursor:default}.myCatRowPlaceholderStatic:hover{background:color-mix(in srgb,var(--sidebar-bg) 82%,#d4a030 18%)}.sidebar[data-shell-surface=code] .myCatRowPlaceholder{background:color-mix(in srgb,var(--sidebar-bg) 78%,#48a064 22%)}.sidebar[data-shell-surface=code] .myCatRowPlaceholder:hover,.sidebar[data-shell-surface=code] .myCatRowPlaceholderStatic:hover{background:color-mix(in srgb,var(--sidebar-bg) 64%,#48a064 36%)}.sidebar[data-shell-surface=code] .myCatItemPlaceholder,.sidebar[data-shell-surface=code] .myCatNamePlaceholder{color:#2e6f43}.sidebar[data-shell-surface=work] .myCatRowPlaceholder{background:color-mix(in srgb,var(--sidebar-bg) 78%,#5f87f0 22%)}.sidebar[data-shell-surface=work] .myCatRowPlaceholder:hover,.sidebar[data-shell-surface=work] .myCatRowPlaceholderStatic:hover{background:color-mix(in srgb,var(--sidebar-bg) 64%,#5f87f0 36%)}.sidebar[data-shell-surface=work] .myCatItemPlaceholder,.sidebar[data-shell-surface=work] .myCatNamePlaceholder{color:#3856a0}.sidebar[data-shell-surface=entities] [data-lens-kind=clowders] .myCatRowPlaceholder{background:color-mix(in srgb,var(--sidebar-bg) 78%,#48a064 22%)}.sidebar[data-shell-surface=entities] [data-lens-kind=clowders] .myCatRowPlaceholder:hover,.sidebar[data-shell-surface=entities] [data-lens-kind=clowders] .myCatRowPlaceholderStatic:hover{background:color-mix(in srgb,var(--sidebar-bg) 64%,#48a064 36%)}.sidebar[data-shell-surface=entities] [data-lens-kind=clowders] .myCatItemPlaceholder,.sidebar[data-shell-surface=entities] [data-lens-kind=clowders] .myCatNamePlaceholder{color:#2e6f43}.sidebar[data-shell-surface=entities] [data-lens-kind=catteries] .myCatRowPlaceholder{background:color-mix(in srgb,var(--sidebar-bg) 78%,#5f87f0 22%)}.sidebar[data-shell-surface=entities] [data-lens-kind=catteries] .myCatRowPlaceholder:hover,.sidebar[data-shell-surface=entities] [data-lens-kind=catteries] .myCatRowPlaceholderStatic:hover{background:color-mix(in srgb,var(--sidebar-bg) 64%,#5f87f0 36%)}.sidebar[data-shell-surface=entities] [data-lens-kind=catteries] .myCatItemPlaceholder,.sidebar[data-shell-surface=entities] [data-lens-kind=catteries] .myCatNamePlaceholder{color:#3856a0}.myCatTelegramIcon{grid-area:1 / 1;display:inline-flex;align-items:center;color:var(--muted-soft);flex-shrink:0;pointer-events:none;transition:opacity .15s ease}.myCatRow{position:relative;display:flex;align-items:center;gap:8px;min-width:0;padding-right:12px;border-radius:8px;cursor:pointer;transition:background .15s}.myCatRow:hover{background:var(--sidebar-hover-bg)}.myCatRowActive{background:var(--sidebar-active-bg)}.myCatTrailing{position:relative;display:grid;flex:0 0 24px;width:24px;height:24px;place-items:center}.myCatRow:hover .myCatTelegramIcon,.myCatRowOverflowOpen .myCatTelegramIcon{opacity:0}.myCatOverflowButton{grid-area:1 / 1;display:grid;place-items:center;width:24px;height:24px;border:0;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer;font-size:14px;opacity:0;pointer-events:none;transition:opacity .15s ease,background .15s ease}.myCatRow:hover .myCatOverflowButton,.myCatRowOverflowOpen .myCatOverflowButton{opacity:1;pointer-events:auto}.myCatOverflowButton:hover{background:var(--panel-hover)}.myCatOverflowMenu{position:fixed;min-width:120px;border:1px solid var(--border);border-radius:10px;background:var(--panel);box-shadow:var(--shadow);z-index:90;padding:4px}.myCatOverflowMenu button{display:block;width:100%;padding:6px 10px;border:0;border-radius:6px;background:transparent;color:var(--text);text-align:left;cursor:pointer;font-size:.8rem}.myCatOverflowMenu button:disabled{opacity:.35;cursor:default}.myCatOverflowMenu button:hover{background:var(--panel-hover)}.myCatOverflowMenuDivider{height:1px;margin:4px 8px;border:0;background:var(--border)}.catAvatarRow{display:flex;gap:8px;padding:12px 16px;border-bottom:1px solid var(--border);overflow-x:auto;flex-shrink:0}.catAvatarRowItem{cursor:pointer;opacity:.4;transition:opacity .15s;flex-shrink:0}.catAvatarRowItem.catAvatarBoss{box-shadow:0 0 0 2px #e8c84a;outline:none}.catAvatarRowItem.catAvatarRowItemSelected{opacity:1}.catAvatarRowItem.catAvatarRowItemHighlighted{opacity:1;outline:2px solid #B5AFA8;outline-offset:3px}.composerCatStack{display:flex;align-items:center;cursor:pointer}.composerCatStack .composerStackAvatar+.composerStackAvatar{margin-left:-10px;transition:margin-left .2s ease}.composerCatStack:hover .composerStackAvatar+.composerStackAvatar{margin-left:4px}.catAvatarLeadBadge{position:absolute;top:-4px;left:-4px;display:inline-flex;align-items:center;justify-content:center;width:12px;height:12px;border-radius:999px;background:#f2c14a;color:#5a4510;border:1px solid rgba(255,255,255,.92);box-shadow:0 1px 3px #0000003d;font-size:.5rem;font-weight:700;line-height:1;pointer-events:none;z-index:2}.catInspectPanel{position:fixed;top:0;right:0;width:300px;height:100vh;border-left:1px solid var(--border);background:var(--panel);box-shadow:-4px 0 16px #0000000f;z-index:20;display:flex;flex-direction:column}.catInspectPanelHeader{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border);font-size:.85rem}.catInspectPanelBody{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:14px}.catInspectIdentity{display:flex;align-items:center;gap:10px}.catInspectAvatar{width:36px;height:36px;flex-shrink:0;font-size:.75rem}.catInspectBadge{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:4px;background:#e8c84a26;color:#b89a20;font-size:.65rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;vertical-align:middle}.catInspectField{display:flex;flex-direction:column;gap:2px}.catInspectFieldLabel{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em;color:var(--muted)}.catInspectField>span:last-child{font-size:.85rem}.catInspectNote{margin-top:8px;padding:10px;border-radius:6px;background:#00000008;font-size:.72rem;color:var(--muted);line-height:1.4}.composerLeadAvatar{cursor:pointer;margin-right:8px}.recentHeader{display:flex;align-items:center;justify-content:space-between;padding:0 12px;margin-bottom:4px}.recentHeader .sectionLabel{margin:0;padding:0}.viewModeToggle{display:flex;gap:0;border:1px solid var(--border);border-radius:6px;overflow:hidden}.viewModeBtn{padding:2px 8px;font-size:.65rem;background:transparent;border:none;color:var(--muted);cursor:pointer;transition:background .15s,color .15s;line-height:1.5}.viewModeBtn:not(:last-child){border-right:1px solid var(--border)}.viewModeBtn:hover{background:var(--sidebar-hover-bg)}.viewModeBtnActive{background:var(--sidebar-active-bg);color:var(--text);font-weight:600}.recentGroup{margin-bottom:8px}.recentGroupLabel{font-size:.65rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted-soft);padding:4px 12px 2px 20px;margin:0}.recentGroup .recentItemCard{padding-left:20px}.draftLeadSelector{display:flex;align-items:center;gap:10px;padding:8px 0;margin-bottom:4px}.draftLeadLabel{font-size:.78rem;color:var(--muted);white-space:nowrap}.draftLeadPills{display:flex;flex-wrap:wrap;gap:6px}.draftLeadPill{padding:4px 12px;border:1px solid var(--border);border-radius:16px;background:var(--panel);font-size:.78rem;cursor:pointer;transition:background .15s,border-color .15s}.draftLeadPill:hover{background:var(--panel-hover)}.draftLeadPillActive{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);font-weight:600}.channelTopBarMeta{display:flex;flex-direction:column;align-items:flex-start;gap:4px;flex:1;min-width:0}.channelTopBarHeading{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap}.channelTopBarTitle{font-weight:600;font-size:.9rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.channelTopBarTitleDirectLane{font-size:1.35rem;line-height:1.2}.channelModeBadge{font-size:.65rem;padding:1px 8px;border-radius:10px;background:var(--muted-bg);color:var(--muted-text);white-space:nowrap}.channelLeadLabel{font-size:.72rem;color:var(--muted);white-space:nowrap}.channelPresenceRow{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.channelPresenceBadge,.channelPresencePill{font-size:.68rem;padding:2px 8px;border-radius:999px;border:1px solid transparent;white-space:nowrap}.channelPresenceBadge.isAwake,.channelPresencePill.isAwake{background:#4db6ac24;color:#1d6b63;border-color:#4db6ac47}.channelPresenceBadge.isWaking,.channelPresencePill.isWaking{background:#ffb74d29;color:#8a5a12;border-color:#ffb74d57}.channelPresenceBadge.isSleeping,.channelPresencePill.isSleeping{background:#7886cb1f;color:#4d5d9f;border-color:#7886cb3d}.catDetailPanel{border-top:1px solid var(--border);margin-top:10px;padding-top:10px;display:flex;flex-direction:column;gap:14px}.catDetailSection .sectionLabel{font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted-soft);margin-bottom:6px}.skillPills{display:flex;gap:6px}.catsTelegramEmpty{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.catsTelegramConnected{display:flex;flex-direction:column;gap:8px}.catsTelegramBinding{display:flex;flex-direction:column;gap:10px;padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:var(--panel-subtle, var(--panel));min-width:0}.catsTelegramBindingHeader{display:flex;align-items:center;gap:8px;min-width:0}.catsTelegramBindingIcon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;color:#229ed9}.catsTelegramBindingName{flex:1 1 auto;min-width:0;font-size:.95rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.catsTelegramBindingDisconnect{flex-shrink:0;margin-left:auto}.catsTelegramBindingMeta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}.catsTelegramBindingLastInbound{font-size:.82rem;color:var(--muted-soft);overflow-wrap:anywhere;word-break:break-word}.catsInlineDeleteButton{display:grid;place-items:center;width:24px;height:24px;padding:0;border:0;border-radius:6px;background:transparent;color:var(--muted);cursor:pointer}.catsInlineDeleteButton:hover:not(:disabled){background:color-mix(in srgb,var(--danger, #d04040) 10%,transparent);color:var(--danger, #d04040)}.catsInlineDeleteButton:disabled{opacity:.5;cursor:not-allowed}.catsTelegramHint{margin:0;color:var(--muted);font-size:var(--text-sm);overflow-wrap:anywhere;word-break:break-word}.catsDialogOverlay{position:fixed;inset:0;z-index:9998;display:grid;place-items:center;background:#00000080;animation:confirmFadeIn .15s ease-out}.catsDialog{width:min(420px,calc(100vw - 48px));padding:24px;border-radius:16px;background:var(--panel);box-shadow:var(--shadow-sheet);display:flex;flex-direction:column;gap:14px;animation:confirmSlideIn .15s ease-out}.catsDialogTitle{margin:0;font-size:1.05rem;font-weight:600;color:var(--text)}.catsDialogActions{display:flex;gap:8px;justify-content:flex-end;margin-top:4px}.catsMemorySection{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.memoryList{display:flex;flex-direction:column;gap:4px;max-height:200px;overflow-y:auto;align-self:stretch}.memoryItem{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 8px;border:1px solid var(--border);border-radius:4px;font-size:.78rem}.recentCatDot{display:inline-block;flex-shrink:0}.workDeliveryReadiness{display:flex;flex-direction:column;gap:16px}.workDeliveryReadinessFacts{display:flex;flex-wrap:wrap;gap:8px 24px;margin:0}.workDeliveryReadinessFacts>div{display:flex;flex-direction:column;gap:2px;min-width:0}.workDeliveryReadinessFacts dt{font-size:12px;opacity:.7}.workDeliveryReadinessFacts dd{margin:0;font-size:13px;overflow-wrap:anywhere}.workDeliveryReadinessBindings{display:flex;flex-direction:column;gap:12px;margin:0;padding:0;list-style:none}.workDeliveryReadinessBinding{display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid var(--hairline, rgba(128, 128, 128, .25));border-radius:8px}.workDeliveryReadinessBindingHeader{display:flex;align-items:center;justify-content:space-between;gap:12px}.workDeliveryReadinessBindingName{font-weight:600;overflow-wrap:anywhere}.workDeliveryReadinessBlockersTitle{margin:0;font-size:12px;opacity:.7;font-weight:600}.workDeliveryReadinessBlockers{display:flex;flex-direction:column;gap:6px;margin:0;padding:0;list-style:none}.workDeliveryReadinessBlockers li{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:13px}.settingsBrandCopy{display:flex;align-items:center;gap:10px}.settingsBrandLabel{font-size:1.05rem}.settingsSidebarGroupHeading{padding:12px 12px 4px;margin:0;font-size:.72rem;font-weight:600;letter-spacing:.08em;color:var(--muted);text-transform:uppercase}.settingsSidebarGroupNav{padding-left:8px}.settingsCanvasBoot{width:100%;height:100%}.settingsCanvasError{width:min(100%,760px);margin:0 auto;padding:32px 0;display:grid;gap:12px;align-content:start}.settingsCanvasErrorTitle{margin:0;font-size:1.4rem;font-weight:600;letter-spacing:-.03em;color:var(--text)}.settingsCanvasErrorBody{margin:0;font-size:.95rem;color:var(--muted)}.settingsCanvasErrorDetail{margin:0;padding:8px 12px;border-radius:8px;background:var(--panel-hover);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.78rem;color:var(--muted);white-space:pre-wrap;word-break:break-word}.settingsCanvasErrorActions{display:flex;gap:8px;margin-top:4px}.settingsFeedback{margin:12px 0 0;font-size:.9rem;color:var(--muted)}.settingsContent{width:min(100%,760px);margin:0 auto;padding:32px 0;min-width:0;display:grid;align-content:start;align-self:start;overflow-x:hidden;box-sizing:border-box}.settingsHeader{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 16px}.settingsHeader h1{margin:0;font-size:1.4rem;font-weight:600;letter-spacing:-.03em}.settingsBody{display:grid;gap:16px;width:100%;min-width:0}.settingsBody>*{min-width:0}.settingsActionRow{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.settingsChipRow{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.settingsCardNote{margin-bottom:16px}.settingsInlineLink{display:inline-flex;text-decoration:none}.settingsOwnerAvatarDock{position:relative;width:56px;height:56px;flex-shrink:0}.settingsOwnerAvatar{width:56px;height:56px;border-radius:50%;background:#4f4a43;color:#fff;font-size:1.1rem;font-weight:700;display:grid;place-items:center;cursor:pointer;flex-shrink:0;border:0;padding:0;font-family:inherit;box-shadow:0 0 0 2px var(--panel),0 0 0 3px color-mix(in srgb,var(--border) 80%,transparent);transition:box-shadow .15s ease}.settingsOwnerAvatar:hover{box-shadow:0 0 0 2px var(--panel),0 0 0 3px var(--accent)}.settingsOwnerAvatarCamera{position:absolute;bottom:-2px;right:-2px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--panel, #fff);color:var(--muted, #6e655c);box-shadow:0 0 0 2px var(--panel, #fff),0 1px 3px #0000001f;pointer-events:none;z-index:2;transition:color .15s ease,background .15s ease}.settingsOwnerAvatarDock:hover .settingsOwnerAvatarCamera{background:var(--accent);color:#fff}.settingsOwnerAvatarRemove{position:absolute;top:-2px;right:-2px;display:grid;place-items:center;width:22px;height:22px;padding:0;border:0;border-radius:50%;background:var(--panel, #fff);color:var(--muted, #6e655c);cursor:pointer;box-shadow:0 0 0 2px var(--panel, #fff),0 1px 3px #0000001f;opacity:0;z-index:2;transition:opacity .15s ease,color .15s ease,background .15s ease}.settingsOwnerAvatarDock:hover .settingsOwnerAvatarRemove,.settingsOwnerAvatarRemove:focus-visible{opacity:1}.settingsOwnerAvatarRemove:hover{background:#d04040;color:#fff}.toggleRow{display:flex;align-items:center;gap:10px;padding:0;border:0;background:none;color:inherit;font:inherit;cursor:pointer}.toggleDot{display:inline-block;width:36px;height:20px;border-radius:10px;background:var(--border);position:relative;transition:background .15s;flex-shrink:0}.toggleDot:after{content:"";position:absolute;top:2px;left:2px;width:16px;height:16px;border-radius:50%;background:#fff;transition:transform .15s}.toggleDotOn{background:var(--accent, #3b82f6)}.toggleDotOn:after{transform:translate(16px)}.settingsCheckboxRow{display:flex;align-items:flex-start;gap:12px;padding:14px 0;border-top:1px solid rgba(58,44,38,.08)}.settingsCheckboxRow:first-of-type{border-top:0}.settingsCheckboxRow input[type=checkbox],.settingsCheckboxRow input[type=radio]{margin-top:3px}.settingsCheckboxMeta{display:flex;flex-direction:column;gap:4px}.settingsCheckboxLabel{font-weight:600;color:var(--text)}.settingsAppsList{width:min(100%,720px)}.settingsAppsMeta{display:inline-flex;gap:var(--space-2);align-items:center;flex-wrap:wrap}.settingsAppsInstall{display:grid;gap:var(--space-2);width:min(100%,560px)}.settingsAppsReview{display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap;color:var(--muted);font-size:var(--text-sm)}.settingsSegmentedControl{display:inline-flex;flex-wrap:wrap;gap:4px;width:fit-content;max-width:100%;padding:4px;border:1px solid var(--settings-border);border-radius:var(--settings-radius-sm);background:var(--settings-surface-hover)}.settingsSegmentedOption{border:0;border-radius:var(--settings-radius-sm);padding:6px 10px;background:transparent;color:var(--settings-text-muted);font:inherit;font-size:var(--settings-body-size);cursor:pointer}.settingsSegmentedOption[data-active=true]{background:var(--settings-surface);color:var(--settings-text);box-shadow:inset 0 0 0 1px var(--settings-border)}.settingsSegmentedOption:focus-visible{outline:2px solid var(--focus-ring, currentColor);outline-offset:2px}.settingsRuntimeMetrics{display:grid;gap:var(--space-2);grid-template-columns:repeat(3,minmax(0,1fr))}.settingsRuntimeMetric{display:grid;gap:var(--space-1);padding:var(--space-3);border:1px solid var(--settings-border);border-radius:var(--settings-radius-md);background:var(--settings-surface-hover)}.settingsRuntimeMetric strong{font-size:var(--settings-title-size);font-weight:600}.settingsRuntimeMetric span{font-size:var(--settings-hint-size);color:var(--settings-text-muted)}.settingsRuntimeList{display:grid;gap:var(--space-2);margin-bottom:0;padding:0;list-style:none}.settingsRuntimeList li{display:grid;gap:var(--space-1);padding:var(--space-2) var(--space-3);border:1px solid var(--settings-border);border-radius:var(--settings-radius-md);background:var(--settings-surface-hover)}.settingsRuntimeList span{font-size:var(--settings-hint-size);color:var(--settings-text-muted)}.settingsRefreshButton{display:inline-flex;align-items:center;gap:var(--space-2)}.settingsRefreshSpinner{width:14px;height:14px;border-radius:50%;border:2px solid currentColor;border-top-color:transparent;opacity:.6;animation:settingsRefreshSpin .8s linear infinite;flex-shrink:0}@keyframes settingsRefreshSpin{to{transform:rotate(360deg)}}.settingsRuntimeNote{font-size:var(--settings-hint-size);color:var(--settings-text-muted);margin:0}.settingsRuntimeHelperList{gap:var(--space-3)}.settingsRuntimeHelperRow{display:grid;gap:var(--space-2)}.settingsRuntimeHelperHead{display:grid;gap:var(--space-1)}.settingsRuntimeHelperHead strong{font-weight:600;color:var(--text)}.settingsRuntimeHelperHead span{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Monaco,Cascadia Mono,Roboto Mono,monospace;font-size:.78rem;color:var(--settings-text-muted);word-break:break-all}.settingsRuntimeHelperActions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.settingsRuntimeConfirmOverlay{position:fixed;inset:0;background:#0f0c0a73;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--space-4)}.settingsRuntimeConfirmCard{background:var(--settings-surface);border:1px solid var(--settings-border);border-radius:var(--settings-radius-lg);padding:var(--space-4);max-width:520px;width:100%;display:grid;gap:var(--space-3);box-shadow:0 24px 48px #0f0c0a2e}.settingsRuntimeConfirmCard h3{margin:0;font-size:var(--settings-title-size);font-weight:600}.settingsRuntimeConfirmCard code{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Monaco,Cascadia Mono,Roboto Mono,monospace;font-size:.82rem;word-break:break-all}.settingsMobilePairingGrid{display:grid;grid-template-columns:minmax(0,1fr) 168px;gap:var(--space-4);align-items:start}.settingsMobilePairingDetails{display:grid;gap:var(--space-3);min-width:0}.settingsMobilePairingFacts{display:grid;gap:var(--space-2);margin:0}.settingsMobilePairingFacts div{display:grid;grid-template-columns:112px minmax(0,1fr);gap:var(--space-2);align-items:baseline}.settingsMobilePairingFacts dt{color:var(--settings-text-muted);font-size:var(--settings-hint-size)}.settingsMobilePairingFacts dd{margin:0;min-width:0;color:var(--settings-text);font-size:var(--settings-body-size);word-break:break-word}.settingsMobilePairingNote{margin:0;color:var(--settings-text-muted);font-size:var(--settings-body-size)}.settingsMobilePairingQr{display:grid;place-items:center;min-height:168px;min-width:168px;border:1px solid var(--settings-border);border-radius:var(--settings-radius-md);background:var(--settings-surface);color:var(--settings-text-muted);font-size:var(--settings-label-size);text-align:center}.settingsMobilePairingQr[data-state=phase1_pending]{border-style:dashed;background:var(--settings-surface-hover)}.settingsMobilePairingQrContent{display:grid;justify-items:center;gap:var(--space-2);max-width:100%;padding:var(--space-2)}.settingsMobilePairingQrCode{display:block;width:136px;height:136px}.settingsMobilePairingQrUrl{max-width:148px;color:var(--settings-text);font-size:11px;line-height:1.35;overflow-wrap:anywhere;word-break:break-word}.settingsMobilePairingQrCode .qrLight{fill:#fff}.settingsMobilePairingQrCode .qrDark{fill:#111}@media(max-width:820px){.settingsRuntimeMetrics,.settingsMobilePairingGrid{grid-template-columns:1fr}.settingsMobilePairingQr{min-height:120px;min-width:120px}}.settingsAccountReauthForm{display:grid;gap:var(--space-3)}.settingsAccountReauthField{display:grid;gap:var(--space-1)}.settingsAccountGoogleStep{display:grid;gap:var(--space-2);justify-items:start;padding-top:var(--space-2)}