@pheem49/mint 1.17.0 → 1.18.0

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 (421) hide show
  1. package/Cargo.lock +6 -6
  2. package/Cargo.toml +2 -2
  3. package/README.md +8 -2
  4. package/Release_Note.md +222 -71
  5. package/crates/mint-cli/src/agent/diff_render.rs +66 -44
  6. package/crates/mint-cli/src/agent/live_status.rs +21 -4
  7. package/crates/mint-cli/src/agent/markdown_render.rs +342 -5
  8. package/crates/mint-cli/src/agent.rs +25 -10
  9. package/crates/mint-cli/src/commands/agent.rs +4 -92
  10. package/crates/mint-cli/src/commands/browser.rs +2 -15
  11. package/crates/mint-cli/src/commands/integrations.rs +3 -3
  12. package/crates/mint-cli/src/commands/mod.rs +0 -3
  13. package/crates/mint-cli/src/commands/tailnet_web.rs +1 -0
  14. package/crates/mint-cli/src/interactive/chat_tui/dialog.rs +572 -0
  15. package/crates/mint-cli/src/interactive/chat_tui/mod.rs +1427 -0
  16. package/crates/mint-cli/src/interactive/chat_tui/render.rs +1524 -0
  17. package/crates/mint-cli/src/interactive/chat_tui/selection.rs +401 -0
  18. package/crates/mint-cli/src/interactive/chat_tui/state.rs +1833 -0
  19. package/crates/mint-cli/src/interactive/chat_tui/tests.rs +3414 -0
  20. package/crates/mint-cli/src/interactive/chat_tui/thought.rs +202 -0
  21. package/crates/mint-cli/src/interactive/chat_tui/transcript.rs +728 -0
  22. package/crates/mint-cli/src/interactive/chat_tui/watermark.rs +148 -0
  23. package/crates/mint-cli/src/interactive/command_ui.rs +53 -5
  24. package/crates/mint-cli/src/interactive/composer.rs +186 -0
  25. package/crates/mint-cli/src/interactive/format.rs +78 -3
  26. package/crates/mint-cli/src/interactive/input_box.rs +61 -1
  27. package/crates/mint-cli/src/interactive/resume_picker.rs +367 -25
  28. package/crates/mint-cli/src/interactive/slash_commands.rs +648 -371
  29. package/crates/mint-cli/src/interactive/tool_activity.rs +93 -20
  30. package/crates/mint-cli/src/interactive.rs +37 -0
  31. package/crates/mint-cli/src/main.rs +6 -3
  32. package/crates/mint-cli/src/markdown.rs +2 -37
  33. package/crates/mint-cli/src/onboard.rs +700 -282
  34. package/crates/mint-cli/src/setup.rs +1342 -624
  35. package/crates/mint-cli/src/terminal_theme.rs +159 -35
  36. package/crates/mint-cli/tests/library_intake.rs +1 -0
  37. package/crates/mint-core/src/agent/chat/anthropic.rs +318 -0
  38. package/crates/mint-core/src/agent/chat/custom.rs +149 -0
  39. package/crates/mint-core/src/agent/chat/gemini.rs +518 -0
  40. package/crates/mint-core/src/agent/chat/mod.rs +857 -0
  41. package/crates/mint-core/src/agent/chat/ollama.rs +321 -0
  42. package/crates/mint-core/src/agent/chat/openai.rs +582 -0
  43. package/crates/mint-core/src/agent/chat/streaming.rs +469 -0
  44. package/crates/mint-core/src/agent/chat/tests.rs +1479 -0
  45. package/crates/mint-core/src/agent/memory.rs +56 -2
  46. package/crates/mint-core/src/agent/tasks.rs +2 -2
  47. package/crates/mint-core/src/api_server/routes/chat.rs +24 -2
  48. package/crates/mint-core/src/api_server/routes/gemini_live.rs +14 -1
  49. package/crates/mint-core/src/api_server/routes/html_preview.rs +1 -8
  50. package/crates/mint-core/src/api_server/routes/sessions.rs +21 -0
  51. package/crates/mint-core/src/avatar_bridge.rs +0 -22
  52. package/crates/mint-core/src/browser/cdp.rs +10 -4
  53. package/crates/mint-core/src/browser/headless.rs +582 -0
  54. package/crates/mint-core/src/browser/input.rs +7 -62
  55. package/crates/mint-core/src/browser/interact.rs +0 -14
  56. package/crates/mint-core/src/browser/mod.rs +8 -29
  57. package/crates/mint-core/src/browser/navigate.rs +2 -36
  58. package/crates/mint-core/src/browser/runtime.rs +2 -4
  59. package/crates/mint-core/src/browser/session.rs +50 -466
  60. package/crates/mint-core/src/browser/workflow.rs +142 -32
  61. package/crates/mint-core/src/cron/store.rs +2 -2
  62. package/crates/mint-core/src/integrations/mcp.rs +6 -8
  63. package/crates/mint-core/src/lib.rs +0 -5
  64. package/crates/mint-core/src/media/gemini_live.rs +636 -86
  65. package/crates/mint-core/src/media/library/migration.rs +26 -0
  66. package/crates/mint-core/src/media/library/tests.rs +1 -1
  67. package/crates/mint-core/src/media/library/thumbnails.rs +8 -2
  68. package/crates/mint-core/src/media/pictures.rs +1 -1
  69. package/crates/mint-core/src/media/tool_images.rs +92 -1
  70. package/crates/mint-core/src/mods/manager.rs +101 -35
  71. package/crates/mint-core/src/orchestration/context_render.rs +441 -24
  72. package/crates/mint-core/src/orchestration/decision_parsing.rs +531 -16
  73. package/crates/mint-core/src/orchestration/full_skill_result_tests.rs +12 -0
  74. package/crates/mint-core/src/orchestration/loop_guard.rs +145 -0
  75. package/crates/mint-core/src/orchestration/mcp_outcome_tests.rs +864 -0
  76. package/crates/mint-core/src/orchestration/memory_skill.rs +88 -28
  77. package/crates/mint-core/src/orchestration/mod.rs +320 -4249
  78. package/crates/mint-core/src/orchestration/reliability.rs +67 -27
  79. package/crates/mint-core/src/orchestration/review_regressions.rs +5 -0
  80. package/crates/mint-core/src/orchestration/tests.rs +1665 -0
  81. package/crates/mint-core/src/orchestration/tools/dispatch.rs +967 -0
  82. package/crates/mint-core/src/orchestration/tools/files.rs +1 -0
  83. package/crates/mint-core/src/orchestration/tools/mod.rs +5 -1
  84. package/crates/mint-core/src/orchestration/tools/planning.rs +102 -42
  85. package/crates/mint-core/src/orchestration/tools/shell.rs +129 -58
  86. package/crates/mint-core/src/orchestration/truncation.rs +170 -13
  87. package/crates/mint-core/src/orchestration/types.rs +648 -0
  88. package/crates/mint-core/src/orchestration/verification.rs +0 -3
  89. package/crates/mint-core/src/orchestration/workspace_helpers.rs +24 -6
  90. package/crates/mint-core/src/prompts/agent.rs +52 -76
  91. package/crates/mint-core/src/prompts/tool_catalog.rs +8 -151
  92. package/crates/mint-core/src/search/files.rs +20 -0
  93. package/crates/mint-core/src/slash/mod.rs +228 -265
  94. package/crates/mint-core/src/slash/models.rs +6 -1
  95. package/crates/mint-core/src/system/bg_shell.rs +1 -0
  96. package/crates/mint-core/src/system/config.rs +176 -34
  97. package/crates/mint-mod-runtime/src/lib.rs +37 -23
  98. package/out/web/assets/ArtifactPreviewPanel-Cx6BVOOF.js +2 -0
  99. package/out/web/assets/CalculationCard-D2E74u5q.js +1 -0
  100. package/out/web/assets/CliSessionsView-ZbdtSjvK.css +1 -0
  101. package/out/web/assets/{CliSessionsView-MI8kXMAb.js → CliSessionsView-z5i6qGyb.js} +1 -1
  102. package/out/web/assets/CodeReviewPage-BK2bOScd.css +1 -0
  103. package/out/web/assets/CodeReviewPage-Dp6zHuHu.js +2 -0
  104. package/out/web/assets/{CommandPalette-BD8SlTE5.js → CommandPalette-DaKlzbKs.js} +1 -1
  105. package/out/web/assets/ImageGenCard-BMCJHP9O.js +1 -0
  106. package/out/web/assets/ImageSearchCard-Cld_SOUg.js +1 -0
  107. package/out/web/assets/{ImageStudioPanel-BP7N4rLr.js → ImageStudioPanel-B5N7TjeB.js} +1 -1
  108. package/out/web/assets/LibraryPage-CMB89rJ0.css +1 -0
  109. package/out/web/assets/LibraryPage-DbZEi4W_.js +2 -0
  110. package/out/web/assets/LinkedFoldersView-9B9DIPoZ.js +1 -0
  111. package/out/web/assets/{McpRegistryPicker-CoS83vtc.js → McpRegistryPicker-DnXPlzI7.js} +1 -1
  112. package/out/web/assets/McpServersView-CiNBNUl4.js +1 -0
  113. package/out/web/assets/MermaidCard-BBDNEXbY.js +2 -0
  114. package/out/web/assets/MintDashboard-C_UYPoNV.js +119 -0
  115. package/out/web/assets/MintDashboard-DTd8C_c8.css +1 -0
  116. package/out/web/assets/PlanCard-C2x5pajq.js +1 -0
  117. package/out/web/assets/{PluginsView-jBYmcKh4.js → PluginsView-DoTg9MVa.js} +1 -1
  118. package/out/web/assets/RewindModal-B5oowrR0.js +1 -0
  119. package/out/web/assets/{ScheduledTasksView-5uw9-V9H.js → ScheduledTasksView-BD5DVPkZ.js} +1 -1
  120. package/out/web/assets/{SelectField-DXBQtrUK.js → SelectField-Cy6CghrU.js} +1 -1
  121. package/out/web/assets/SettingsWindow-BYl_oCFh.js +4 -0
  122. package/out/web/assets/SettingsWindow-Ckcgnjt8.css +1 -0
  123. package/out/web/assets/{SkillsView-C-gp9J7m.js → SkillsView-CIeWwq5z.js} +1 -1
  124. package/out/web/assets/StockCard-DxUciKyp.js +1 -0
  125. package/out/web/assets/ToolSurfacePage-qBgs_VHq.css +1 -0
  126. package/out/web/assets/ToolSurfacePage-saVbVrkE.js +38 -0
  127. package/out/web/assets/{UiFeatureCard-6BwxTOCe.js → UiFeatureCard-CdY0hGWy.js} +1 -1
  128. package/out/web/assets/{UiGridCard-DvZcLNxb.js → UiGridCard-BBK3I5hC.js} +1 -1
  129. package/out/web/assets/UiMockupWidget-CpR9EDuc.js +1 -0
  130. package/out/web/assets/{VeoStudioPanel-DOj7_WR3.css → VeoStudioPanel-9kU9YLEN.css} +1 -1
  131. package/out/web/assets/{VeoStudioPanel-DfsOJKv0.js → VeoStudioPanel-Co6-wEWM.js} +2 -2
  132. package/out/web/assets/WeatherCard-Buzi7Vfu.js +1 -0
  133. package/out/web/assets/WorkspacePdfPreview-Bi8Zzyir.js +2 -0
  134. package/out/web/assets/{abnfDiagram-VCTEODGH-BOo3Ckng.js → abnfDiagram-VCTEODGH-CMfR95N2.js} +1 -1
  135. package/out/web/assets/{architecture-7GRP2DOG-ZOwheW3n.js → architecture-7GRP2DOG-DhAM4HyO.js} +1 -1
  136. package/out/web/assets/{architectureDiagram-5GKGNRK7-DC2FDzVd.js → architectureDiagram-5GKGNRK7-Yk3TUJ_F.js} +1 -1
  137. package/out/web/assets/{blockDiagram-I7D4REHJ-BrKFWdAH.js → blockDiagram-I7D4REHJ-X9fBgJik.js} +1 -1
  138. package/out/web/assets/{c4Diagram-7LVT6UL2-BHTHK1Yd.js → c4Diagram-7LVT6UL2-Bk9x7N-8.js} +1 -1
  139. package/out/web/assets/{chunk-4HAMMTFA-BYFkZwNj.js → chunk-4HAMMTFA-Dx5fk1_0.js} +1 -1
  140. package/out/web/assets/{chunk-75Z2AOVW-BSKfSKSA.js → chunk-75Z2AOVW-BszTQoM4.js} +1 -1
  141. package/out/web/assets/{chunk-DU6HZSFF-vIhsiW6n.js → chunk-DU6HZSFF-DK-As3rk.js} +1 -1
  142. package/out/web/assets/{chunk-F27PBJKO-BlYpW9xq.js → chunk-F27PBJKO-LmncZZIS.js} +1 -1
  143. package/out/web/assets/{chunk-GMAD6QVW-BIBz_Ug5.js → chunk-GMAD6QVW-DSQ_sDRJ.js} +1 -1
  144. package/out/web/assets/{chunk-GVQU2GXP-NPSHxeqC.js → chunk-GVQU2GXP-Cno3ulje.js} +1 -1
  145. package/out/web/assets/{chunk-IMKFNOWR-YlJK8_Fp.js → chunk-IMKFNOWR-bIzfY9Jc.js} +1 -1
  146. package/out/web/assets/{chunk-L3NEJ4N5-DMYi4-af.js → chunk-L3NEJ4N5-Dl6eOa0D.js} +1 -1
  147. package/out/web/assets/{chunk-OSK3NFVY-Begd3-jA.js → chunk-OSK3NFVY-BaUGJ-cM.js} +1 -1
  148. package/out/web/assets/{chunk-P2QGCYS3-D1I4xFHN.js → chunk-P2QGCYS3-_066ndhH.js} +1 -1
  149. package/out/web/assets/{chunk-POPQ4Y6H-CafZZzNE.js → chunk-POPQ4Y6H-YT1AKhTv.js} +1 -1
  150. package/out/web/assets/{chunk-PWAF6VOD-Dwh6_Lnt.js → chunk-PWAF6VOD-CrEgDsxh.js} +1 -1
  151. package/out/web/assets/{chunk-SHT3W25Y-B0XrCSEb.js → chunk-SHT3W25Y-_KwaRLOl.js} +1 -1
  152. package/out/web/assets/{chunk-SVP7TREG-CxLsddxC.js → chunk-SVP7TREG-BQ1qb32L.js} +1 -1
  153. package/out/web/assets/{chunk-TICWLB2K-y156QInb.js → chunk-TICWLB2K-BDyehCtg.js} +1 -1
  154. package/out/web/assets/classDiagram-ZZMXUADV-BoSpzRCJ.js +1 -0
  155. package/out/web/assets/classDiagram-v2-VYDZK3BY-BoSpzRCJ.js +1 -0
  156. package/out/web/assets/{config-DqXJXeZM.css → config-2suVFPZg.css} +1 -1
  157. package/out/web/assets/config-CkRCdkxn.js +2 -0
  158. package/out/web/assets/{cynefin-OW5HDTMX-SMVvrLf-.js → cynefin-OW5HDTMX-Dl_31aaN.js} +1 -1
  159. package/out/web/assets/{cynefinDiagram-5FMLGOSQ-rZznN24T.js → cynefinDiagram-5FMLGOSQ-Bpir8jha.js} +1 -1
  160. package/out/web/assets/{dagre-GXQ25YYZ-BOToydFu.js → dagre-GXQ25YYZ-D9xu3nsq.js} +1 -1
  161. package/out/web/assets/{diagram-S7CK7UJ4-TMVaGQEJ.js → diagram-S7CK7UJ4-DeveoEeB.js} +1 -1
  162. package/out/web/assets/{diagram-UQ7AKVKN-C2JK-GP2.js → diagram-UQ7AKVKN-p4xWRESV.js} +1 -1
  163. package/out/web/assets/{diagram-VSXAHHWV-Cw8VSi2K.js → diagram-VSXAHHWV-C7qz9NDF.js} +1 -1
  164. package/out/web/assets/{diagram-VX7I27RA-DXp4fKk9.js → diagram-VX7I27RA-DRiCa3Vd.js} +1 -1
  165. package/out/web/assets/{diagram-Z3DM3KII-CzSicYiW.js → diagram-Z3DM3KII-Bt7zduQX.js} +1 -1
  166. package/out/web/assets/{ebnfDiagram-PWID7BFC-Dqj-zqPu.js → ebnfDiagram-PWID7BFC-DV9WpwdR.js} +1 -1
  167. package/out/web/assets/{erDiagram-RLTQ6QDP-DZwFZAuD.js → erDiagram-RLTQ6QDP-BJ_nwG2m.js} +1 -1
  168. package/out/web/assets/{eventmodeling-NTZA5JFV-C0O-Lvgp.js → eventmodeling-NTZA5JFV-BTBMrfVa.js} +1 -1
  169. package/out/web/assets/flowDiagram-HODETNUW-Cdlq3cJL.js +1 -0
  170. package/out/web/assets/{ganttDiagram-EL5Y4UJY-Da4ULXTl.js → ganttDiagram-EL5Y4UJY-DQLdsXrC.js} +1 -1
  171. package/out/web/assets/{gitGraph-4MIJSDKK-B9wNFZIP.js → gitGraph-4MIJSDKK-CL1OEOQ_.js} +1 -1
  172. package/out/web/assets/{gitGraphDiagram-WWUBYQGX-RjrhB0MP.js → gitGraphDiagram-WWUBYQGX-8cSi42H7.js} +1 -1
  173. package/out/web/assets/index-BocxnrDG.js +168 -0
  174. package/out/web/assets/index-yeh_r55a.css +1 -0
  175. package/out/web/assets/{info-A6RAGUB7-B3dfCpeY.js → info-A6RAGUB7-C1zsX5sc.js} +1 -1
  176. package/out/web/assets/{infoDiagram-27XIBGKW-QVWkLVx7.js → infoDiagram-27XIBGKW-DsRYtIyI.js} +1 -1
  177. package/out/web/assets/{ishikawaDiagram-5VMMS53U-CLFNIRI9.js → ishikawaDiagram-5VMMS53U-B2crwIXj.js} +1 -1
  178. package/out/web/assets/{journeyDiagram-3NMN7TZE-fgOQadYF.js → journeyDiagram-3NMN7TZE-BTH-GyVR.js} +1 -1
  179. package/out/web/assets/{kanban-definition-UXKFOSKX-G3Q_9g9O.js → kanban-definition-UXKFOSKX-BeRfCnuA.js} +1 -1
  180. package/out/web/assets/{mermaid-parser.core-v3Jm7nco.js → mermaid-parser.core-BJwgCBBc.js} +3 -3
  181. package/out/web/assets/{mermaid.core-DTEjLUA1.js → mermaid.core-CsDDodN8.js} +4 -4
  182. package/out/web/assets/{mindmap-definition-YA3MSWOX-C_D42_fF.js → mindmap-definition-YA3MSWOX-B42efOQ1.js} +1 -1
  183. package/out/web/assets/{modelManager-BPLycQrN.js → modelManager-B3ZFMh8v.js} +2 -2
  184. package/out/web/assets/{oauthManager-BUK7ic7q.js → oauthManager-Ch5Du2fF.js} +1 -1
  185. package/out/web/assets/{packet-AYTQ26CC-B-R-SHlF.js → packet-AYTQ26CC-B6xUyE6r.js} +1 -1
  186. package/out/web/assets/{pegDiagram-XKGWAZYB-Da2q_giz.js → pegDiagram-XKGWAZYB-1LabVycL.js} +1 -1
  187. package/out/web/assets/{pie-WAS4IAKB-BC8F0N7-.js → pie-WAS4IAKB-DJwo-nf_.js} +1 -1
  188. package/out/web/assets/{pieDiagram-E7YTZNPT-Iy9REJNC.js → pieDiagram-E7YTZNPT-icmAqzy4.js} +1 -1
  189. package/out/web/assets/{quadrantDiagram-AXDQQJYC-ztsiYw7h.js → quadrantDiagram-AXDQQJYC-CZ-wEx41.js} +1 -1
  190. package/out/web/assets/{radar-RG4KPBEZ-B_1P8Z_z.js → radar-RG4KPBEZ-D7d-Xriw.js} +1 -1
  191. package/out/web/assets/{railroad-74A4TZTK-DuTqczSo.js → railroad-74A4TZTK-viuhdYbs.js} +1 -1
  192. package/out/web/assets/{railroad-abnf-HS5TGJTU-Df29WLmp.js → railroad-abnf-HS5TGJTU-DNXiCNea.js} +1 -1
  193. package/out/web/assets/{railroad-ebnf-LZEXJU2U-ePFMo-qp.js → railroad-ebnf-LZEXJU2U-nkSu1-0C.js} +1 -1
  194. package/out/web/assets/{railroad-peg-WCYAUIDC-DYXLW4_E.js → railroad-peg-WCYAUIDC-BhbMeQzz.js} +1 -1
  195. package/out/web/assets/{railroadDiagram-O6MQD6OU-LStnZf2S.js → railroadDiagram-O6MQD6OU-CLpG1jUX.js} +1 -1
  196. package/out/web/assets/{requirementDiagram-BXWQKSXE-DmzonMH-.js → requirementDiagram-BXWQKSXE-kRDrvWrc.js} +1 -1
  197. package/out/web/assets/{sankeyDiagram-P5KCCOFB-B8vjmUU1.js → sankeyDiagram-P5KCCOFB-DxAwmq4x.js} +1 -1
  198. package/out/web/assets/{sequenceDiagram-WJ2MYXX4-CTnplOAX.js → sequenceDiagram-WJ2MYXX4-aLgY-6Wz.js} +1 -1
  199. package/out/web/assets/{stateDiagram-D77RDMKH-BFrIaLdI.js → stateDiagram-D77RDMKH-D5QWfOhp.js} +1 -1
  200. package/out/web/assets/stateDiagram-v2-MP3YSRHH-D6OiZoAP.js +1 -0
  201. package/out/web/assets/{swimlanes-42K2YHIH-BXGngUNU.js → swimlanes-42K2YHIH-CRs5UyA-.js} +1 -1
  202. package/out/web/assets/swimlanesDiagram-VR7AAH4N-UgEXIsV0.js +8 -0
  203. package/out/web/assets/syntaxHighlight-C-wAGT84.js +3 -0
  204. package/out/web/assets/{timeline-definition-24CTP7MA-CegH7n43.js → timeline-definition-24CTP7MA-Denqd9qb.js} +1 -1
  205. package/out/web/assets/{treeView-Q6P3EWNA-DTpJv2Tw.js → treeView-Q6P3EWNA-0my3Z3s4.js} +1 -1
  206. package/out/web/assets/{treemap-WGGIJYW6-i8M9iJU6.js → treemap-WGGIJYW6-B_EjkLYq.js} +1 -1
  207. package/out/web/assets/{vennDiagram-4TSXK5OY-Dpzo1S8U.js → vennDiagram-4TSXK5OY-DxVg3Ewr.js} +1 -1
  208. package/out/web/assets/{wardley-WFR3VGLG-BrNsgtfw.js → wardley-WFR3VGLG-CGD-Tj4p.js} +1 -1
  209. package/out/web/assets/{wardleyDiagram-VM6X3IG4-lQ92LFE1.js → wardleyDiagram-VM6X3IG4-CmfS39Xm.js} +1 -1
  210. package/out/web/assets/{xychartDiagram-S5SC5T6Z-BaOaEoBd.js → xychartDiagram-S5SC5T6Z-BVM9bKis.js} +1 -1
  211. package/out/web/index-web.html +2 -2
  212. package/out/web/index.html +2 -2
  213. package/package.json +2 -2
  214. package/shared-modules/CODEOWNERS +3 -3
  215. package/shared-modules/SDL2/SDL2_mixer.json +27 -0
  216. package/shared-modules/appstream/README.md +13 -0
  217. package/shared-modules/appstream/appstream-compose.json +111 -0
  218. package/shared-modules/dbus-glib/dbus-glib.json +2 -2
  219. package/shared-modules/libportal/libportal.json +23 -0
  220. package/shared-modules/linux-audio/fluidsynth2-static.json +2 -2
  221. package/shared-modules/linux-audio/fluidsynth2.json +2 -2
  222. package/shared-modules/linux-audio/libinstpatch.json +2 -2
  223. package/shared-modules/linux-audio/liblo-static.json +3 -0
  224. package/shared-modules/luajit/luajit.json +2 -2
  225. package/shared-modules/squashfs-tools/squashfs-tools.json +0 -3
  226. package/slash-commands.json +7 -2
  227. package/src/renderer/node_modules/.vite/vitest/da39a3ee5e6b4b0d3255bfef95601890afd80709/results.json +1 -1
  228. package/src/renderer/shared/agentProgress.ts +51 -3
  229. package/src/renderer/shared/components/Settings/AutomationTab.tsx +2 -56
  230. package/src/renderer/shared/components/Settings/AvatarCropModal.tsx +15 -1
  231. package/src/renderer/shared/components/Settings/GeneralTab.tsx +25 -12
  232. package/src/renderer/shared/components/Settings/ThemeTab.test.tsx +45 -0
  233. package/src/renderer/shared/components/Settings/ThemeTab.tsx +106 -3
  234. package/src/renderer/shared/components/activity/AgentActivityDrawer.tsx +67 -17
  235. package/src/renderer/shared/components/activity/AgentActivityTable.tsx +376 -134
  236. package/src/renderer/shared/components/activity/AskUserActivityCard.test.tsx +122 -0
  237. package/src/renderer/shared/components/activity/AskUserActivityCard.tsx +70 -0
  238. package/src/renderer/shared/components/activity/McpToolResults.tsx +39 -2
  239. package/src/renderer/shared/components/activity/SubagentDagView.tsx +7 -7
  240. package/src/renderer/shared/components/activity/ViewedImages.tsx +41 -2
  241. package/src/renderer/shared/components/app/ChunkErrorBoundary.tsx +3 -3
  242. package/src/renderer/shared/components/app/CommandPalette.tsx +7 -7
  243. package/src/renderer/shared/components/app/DesktopTitlebar.tsx +2 -2
  244. package/src/renderer/shared/components/app/MintDashboard.tsx +27 -17
  245. package/src/renderer/shared/components/app/ModalErrorBoundary.tsx +3 -3
  246. package/src/renderer/shared/components/cards/CalculationCard.tsx +3 -3
  247. package/src/renderer/shared/components/cards/ImageGenCard.tsx +2 -2
  248. package/src/renderer/shared/components/cards/ImageSearchCard.tsx +2 -2
  249. package/src/renderer/shared/components/cards/MermaidCard.tsx +1 -1
  250. package/src/renderer/shared/components/cards/PlanCard.test.tsx +41 -0
  251. package/src/renderer/shared/components/cards/PlanCard.tsx +32 -0
  252. package/src/renderer/shared/components/cards/ReleaseNotesCard.test.tsx +29 -0
  253. package/src/renderer/shared/components/cards/ReleaseNotesCard.tsx +137 -0
  254. package/src/renderer/shared/components/cards/StockCard.tsx +7 -7
  255. package/src/renderer/shared/components/cards/ToolResultCards.tsx +11 -3
  256. package/src/renderer/shared/components/cards/UiMockupWidget.tsx +4 -4
  257. package/src/renderer/shared/components/cards/WeatherCard.tsx +5 -5
  258. package/src/renderer/shared/components/chat/ApprovalCard.test.tsx +11 -0
  259. package/src/renderer/shared/components/chat/ApprovalCard.tsx +21 -2
  260. package/src/renderer/shared/components/chat/ArtifactCards.test.tsx +69 -0
  261. package/src/renderer/shared/components/chat/ArtifactCards.tsx +238 -0
  262. package/src/renderer/shared/components/chat/AttachedDocumentCard.test.tsx +39 -0
  263. package/src/renderer/shared/components/chat/AttachedDocumentCard.tsx +220 -0
  264. package/src/renderer/shared/components/chat/ChatCodeBlock.test.tsx +33 -0
  265. package/src/renderer/shared/components/chat/ChatCodeBlock.tsx +15 -1
  266. package/src/renderer/shared/components/chat/ChatMessageItem.test.tsx +40 -2
  267. package/src/renderer/shared/components/chat/ChatMessageItem.tsx +180 -34
  268. package/src/renderer/shared/components/chat/ChatModeSelector.css +227 -0
  269. package/src/renderer/shared/components/chat/ChatModeSelector.test.tsx +45 -0
  270. package/src/renderer/shared/components/chat/ChatModeSelector.tsx +198 -0
  271. package/src/renderer/shared/components/chat/ChatPanel.test.tsx +22 -0
  272. package/src/renderer/shared/components/chat/ChatPanel.tsx +227 -53
  273. package/src/renderer/shared/components/chat/DiffReviewModal.tsx +6 -6
  274. package/src/renderer/shared/components/chat/GeminiLiveOverlay.test.tsx +142 -1
  275. package/src/renderer/shared/components/chat/GeminiLiveOverlay.tsx +45 -3
  276. package/src/renderer/shared/components/chat/ModelSelectorPopover.tsx +42 -14
  277. package/src/renderer/shared/components/chat/RewindModal.tsx +10 -10
  278. package/src/renderer/shared/components/chat/SlashSuggestions.test.tsx +14 -0
  279. package/src/renderer/shared/components/chat/SourcesBlock.test.tsx +53 -0
  280. package/src/renderer/shared/components/chat/SourcesBlock.tsx +236 -90
  281. package/src/renderer/shared/components/chat/TurnFileChanges.test.tsx +45 -1
  282. package/src/renderer/shared/components/chat/TurnFileChanges.tsx +202 -169
  283. package/src/renderer/shared/components/extensions/CliSessionsView.tsx +5 -4
  284. package/src/renderer/shared/components/extensions/McpRegistryPicker.tsx +3 -3
  285. package/src/renderer/shared/components/studio/LibraryPage.tsx +48 -5
  286. package/src/renderer/shared/components/workspace/ArtifactPreviewPanel.tsx +125 -13
  287. package/src/renderer/shared/components/workspace/CodeReviewPage.test.tsx +50 -0
  288. package/src/renderer/shared/components/workspace/CodeReviewPage.tsx +77 -16
  289. package/src/renderer/shared/components/workspace/GitBranchSelector.tsx +78 -22
  290. package/src/renderer/shared/components/workspace/ToolSurfacePage.test.tsx +13 -0
  291. package/src/renderer/shared/components/workspace/ToolSurfacePage.tsx +48 -28
  292. package/src/renderer/shared/components/workspace/WorkspacePdfPreview.tsx +266 -47
  293. package/src/renderer/shared/components/workspace/WorkspacePreviewActions.test.tsx +18 -6
  294. package/src/renderer/shared/components/workspace/background-terminals.css +11 -11
  295. package/src/renderer/shared/constants/config.ts +1 -5
  296. package/src/renderer/shared/constants/models.test.ts +51 -0
  297. package/src/renderer/shared/constants/models.ts +139 -32
  298. package/src/renderer/shared/conversation/lifecycle.test.ts +91 -3
  299. package/src/renderer/shared/conversation/lifecycle.ts +104 -5
  300. package/src/renderer/shared/conversation/progressiveStream.test.ts +83 -0
  301. package/src/renderer/shared/conversation/progressiveStream.ts +219 -0
  302. package/src/renderer/shared/css/agent-observability.css +133 -0
  303. package/src/renderer/shared/css/chat-ui-cards.css +13 -13
  304. package/src/renderer/shared/css/code-review.css +63 -34
  305. package/src/renderer/shared/css/code-sessions.css +47 -18
  306. package/src/renderer/shared/css/collapsed-paste.css +1 -1
  307. package/src/renderer/shared/css/error-notice.css +1 -1
  308. package/src/renderer/shared/css/file-changes.css +165 -80
  309. package/src/renderer/shared/css/library.css +105 -10
  310. package/src/renderer/shared/css/management-views.css +1 -1
  311. package/src/renderer/shared/css/mcp-results.css +5 -5
  312. package/src/renderer/shared/css/model-selector.css +18 -18
  313. package/src/renderer/shared/css/mods.css +7 -7
  314. package/src/renderer/shared/css/notification-notice.css +2 -2
  315. package/src/renderer/shared/css/queued-messages.css +5 -5
  316. package/src/renderer/shared/css/settings/general.css +18 -13
  317. package/src/renderer/shared/css/settings/profile.css +5 -5
  318. package/src/renderer/shared/css/settings/theme.css +5 -5
  319. package/src/renderer/shared/css/slash-choice.css +2 -2
  320. package/src/renderer/shared/css/slash-suggestions.css +3 -3
  321. package/src/renderer/shared/css/sources-block.css +41 -2
  322. package/src/renderer/shared/css/tools-panel.css +2 -2
  323. package/src/renderer/shared/css/ui-tailwind.css +8 -0
  324. package/src/renderer/shared/css/veo-studio.css +2 -2
  325. package/src/renderer/shared/css/viewed-images.css +7 -7
  326. package/src/renderer/shared/platform.ts +2 -1
  327. package/src/renderer/shared/theme/themeManager.test.ts +17 -0
  328. package/src/renderer/shared/theme/themeManager.ts +21 -4
  329. package/src/renderer/shared/theme/themes.ts +54 -0
  330. package/src/renderer/shared/theme/tokens.css +6 -4
  331. package/src/renderer/shared/types.ts +1 -1
  332. package/src/renderer/shared/utils/agentActivity.test.ts +468 -2
  333. package/src/renderer/shared/utils/agentActivity.ts +602 -35
  334. package/src/renderer/shared/utils/artifactBrowser.test.ts +37 -32
  335. package/src/renderer/shared/utils/artifactBrowser.ts +17 -19
  336. package/src/renderer/shared/utils/attachedDocument.test.ts +73 -0
  337. package/src/renderer/shared/utils/attachedDocument.ts +49 -0
  338. package/src/renderer/shared/utils/fileIcons.test.ts +59 -0
  339. package/src/renderer/shared/utils/fileIcons.ts +149 -16
  340. package/src/renderer/shared/utils/markdown.tsx +72 -19
  341. package/src/renderer/shared/utils/markdown.webImages.test.tsx +16 -0
  342. package/src/renderer/shared/utils/mcpResults.test.tsx +29 -0
  343. package/src/renderer/shared/utils/slashCommandProcessor.ts +4 -1
  344. package/src/renderer/shared/utils/syntaxHighlight.test.tsx +11 -1
  345. package/src/renderer/shared/utils/syntaxHighlight.tsx +51 -3
  346. package/src/renderer/shared/utils/useGeminiLiveVoice.ts +324 -51
  347. package/src/renderer/shared/utils/workspaceDrag.test.ts +153 -0
  348. package/src/renderer/shared/utils/workspaceDrag.ts +142 -0
  349. package/src/renderer/shared/utils/workspaceMedia.ts +10 -2
  350. package/src/renderer/src/App.tsx +14 -8
  351. package/src/renderer/src/agentProgress.ts +1 -0
  352. package/src/renderer/src/components/ScreenPicker.css +1 -1
  353. package/src/renderer/src/components/WorkspacePanel.tsx +6 -5
  354. package/src/renderer/src/css/app-shell.css +4 -4
  355. package/src/renderer/src/css/chat.css +1261 -241
  356. package/src/renderer/src/css/desktop-tools.css +11 -11
  357. package/src/renderer/src/css/sidebar-workspace.css +2 -2
  358. package/src/renderer/src/css/tool-surfaces.css +12 -12
  359. package/src/renderer/src/index.css +38 -20
  360. package/src/renderer/src/tauri.ts +22 -2
  361. package/src/renderer/src-web/App.tsx +14 -0
  362. package/src/renderer/src-web/agentProgress.ts +1 -0
  363. package/src/renderer/src-web/css/app-shell.css +4 -4
  364. package/src/renderer/src-web/css/chat.css +1278 -190
  365. package/src/renderer/src-web/css/mobile.css +29 -13
  366. package/src/renderer/src-web/css/settings/mobile.css +2 -2
  367. package/src/renderer/src-web/css/sidebar-workspace.css +1 -1
  368. package/src/renderer/src-web/index.css +38 -20
  369. package/src/renderer/src-web/tauri.ts +22 -2
  370. package/src/renderer/tests/browserArtifacts.browser.tsx +1 -1
  371. package/src/renderer/tests/library.browser.tsx +3 -0
  372. package/src/renderer/tests/liveVoice.browser.html +1 -0
  373. package/src/renderer/tests/workspaceDrop.browser.tsx +1 -1
  374. package/src-tauri/src/app/lifecycle.rs +1 -14
  375. package/src-tauri/src/background/headless.rs +14 -8
  376. package/src-tauri/src/commands/conversation.rs +38 -0
  377. package/src-tauri/src/native/mod.rs +0 -1
  378. package/src-tauri/src/native/system.rs +4 -47
  379. package/crates/mint-cli/src/interactive/chat_tui.rs +0 -8855
  380. package/crates/mint-core/src/agent/chat.rs +0 -4394
  381. package/crates/mint-core/src/browser/lifecycle.rs +0 -291
  382. package/crates/mint-core/src/browser/logging.rs +0 -20
  383. package/crates/mint-core/src/orchestration/tools/browser.rs +0 -31
  384. package/out/web/assets/ArtifactPreviewPanel-S0dPfYFx.js +0 -2
  385. package/out/web/assets/CalculationCard-CRjP3E1j.js +0 -1
  386. package/out/web/assets/CliSessionsView-C3Br2v5Y.css +0 -1
  387. package/out/web/assets/CodeReviewPage-CUJceQme.css +0 -1
  388. package/out/web/assets/CodeReviewPage-VCUgPla_.js +0 -2
  389. package/out/web/assets/ImageGenCard-BCXxkVJX.js +0 -1
  390. package/out/web/assets/ImageSearchCard-N3yQOr8Z.js +0 -1
  391. package/out/web/assets/LibraryPage-DAxUTAg7.css +0 -1
  392. package/out/web/assets/LibraryPage-WlviRdR8.js +0 -2
  393. package/out/web/assets/LinkedFoldersView-CKRgroWK.js +0 -1
  394. package/out/web/assets/McpServersView-D3wHnuHg.js +0 -1
  395. package/out/web/assets/MermaidCard-NqrHdyJW.js +0 -2
  396. package/out/web/assets/MintDashboard-B2DJsDDO.css +0 -1
  397. package/out/web/assets/MintDashboard-COw_xol7.js +0 -63
  398. package/out/web/assets/RewindModal-DempuDod.js +0 -1
  399. package/out/web/assets/SettingsWindow-2YP3yj7s.js +0 -4
  400. package/out/web/assets/SettingsWindow-Dz8LQVgD.css +0 -1
  401. package/out/web/assets/StockCard-BDMCe7mx.js +0 -1
  402. package/out/web/assets/ToolSurfacePage-B0J_q0Jl.js +0 -38
  403. package/out/web/assets/ToolSurfacePage-CRIQ1owD.css +0 -1
  404. package/out/web/assets/UiMockupWidget-DD73QWg1.js +0 -1
  405. package/out/web/assets/WeatherCard-CPucIfq8.js +0 -1
  406. package/out/web/assets/WorkspacePdfPreview-Dx_lkjNu.js +0 -2
  407. package/out/web/assets/classDiagram-ZZMXUADV-BgJ5WtSp.js +0 -1
  408. package/out/web/assets/classDiagram-v2-VYDZK3BY-BgJ5WtSp.js +0 -1
  409. package/out/web/assets/config-CvIO5hkn.js +0 -2
  410. package/out/web/assets/flowDiagram-HODETNUW-uqCHJond.js +0 -1
  411. package/out/web/assets/index-BmpulIkg.js +0 -168
  412. package/out/web/assets/index-CkvBwhX_.css +0 -1
  413. package/out/web/assets/stateDiagram-v2-MP3YSRHH-uf3kdNW4.js +0 -1
  414. package/out/web/assets/swimlanesDiagram-VR7AAH4N-Y8q5bQce.js +0 -8
  415. package/shared-modules/libsecret/libsecret.json +0 -23
  416. package/shared-modules/libusb/libusb.json +0 -27
  417. package/shared-modules/lzo/lzo.json +0 -27
  418. package/src/renderer/src/components/BrowserShell.tsx +0 -108
  419. package/src/renderer/src/components/BrowserSuggestionsPopup.tsx +0 -91
  420. package/src/renderer/src/components/browser-shell.css +0 -185
  421. package/src-tauri/src/native/browser.rs +0 -252
@@ -120,13 +120,25 @@
120
120
  align-items: flex-start;
121
121
  }
122
122
 
123
- /* Activity dashboards need the chat column, not the reply text's intrinsic width. */
123
+ /* Activity dashboards & file changes need the full chat column, not the reply text's intrinsic width. */
124
124
  .message.ai-message:has(.agent-activity-history),
125
+ .message.ai-message:has(.file-changes-summary-container),
126
+ .message.ai-message:has(.file-changes-card),
127
+ .message.ai-message:has(.chat-artifact-cards),
128
+ .message.ai-message:has(.chat-artifact-card),
125
129
  .message.ai-message.agent-activity-message {
126
130
  align-self: stretch;
127
131
  width: 100%;
128
132
  }
133
+ .message:has(.source-links-popover) {
134
+ position: relative;
135
+ z-index: 30;
136
+ }
129
137
  .message.ai-message:has(.agent-activity-history) > .bubble-wrapper,
138
+ .message.ai-message:has(.file-changes-summary-container) > .bubble-wrapper,
139
+ .message.ai-message:has(.file-changes-card) > .bubble-wrapper,
140
+ .message.ai-message:has(.chat-artifact-cards) > .bubble-wrapper,
141
+ .message.ai-message:has(.chat-artifact-card) > .bubble-wrapper,
130
142
  .agent-activity-history { width: 100%; }
131
143
 
132
144
  .message-time {
@@ -403,10 +415,30 @@
403
415
  .user-message .message-bubble {
404
416
  background: linear-gradient(135deg, var(--accent) 0%, color-mix(in srgb, var(--accent) 70%, #000000) 100%);
405
417
  color: var(--text-on-accent);
406
- border-radius: 22px 22px 6px 22px;
418
+ border-radius: var(--radius-xl) var(--radius-xl) var(--radius-xs, 4px) var(--radius-xl);
407
419
  box-shadow: var(--glow-accent-md), inset 1px 1px 0 rgba(255, 255, 255, 0.2);
408
420
  }
409
421
 
422
+ .chat-attached-document-card {
423
+ width: 100%;
424
+ box-sizing: border-box;
425
+ }
426
+
427
+ .user-message .chat-attached-document-card {
428
+ background: color-mix(in srgb, rgba(0, 0, 0, 0.38) 85%, var(--surface-bg, #18181b));
429
+ border: 1px solid rgba(255, 255, 255, 0.18);
430
+ backdrop-filter: blur(8px);
431
+ -webkit-backdrop-filter: blur(8px);
432
+ }
433
+
434
+ .user-message .chat-attached-document-card:hover {
435
+ border-color: rgba(255, 255, 255, 0.3);
436
+ }
437
+
438
+ .chat-attached-document-toggle-action:hover {
439
+ filter: brightness(1.15);
440
+ }
441
+
410
442
  .ai-message {
411
443
  transform-origin: bottom left;
412
444
  }
@@ -421,6 +453,7 @@
421
453
  box-shadow: none;
422
454
  color: var(--text-chat, var(--text-main));
423
455
  padding: 0; /* keep spacing handled by wrapper */
456
+ width: 100%;
424
457
  }
425
458
 
426
459
  .message.ai-message.thinking-message .message-bubble {
@@ -489,12 +522,17 @@
489
522
  margin-bottom: 8px;
490
523
  }
491
524
 
525
+ .chat-list-block {
526
+ margin: 4px 0;
527
+ white-space: normal;
528
+ }
529
+
492
530
  .chat-list-item {
493
531
  display: flex;
494
532
  align-items: flex-start;
495
533
  gap: 10px;
496
- margin: 4px 0 4px 4px;
497
- line-height: 1.74;
534
+ margin: 3px 0 3px 4px;
535
+ line-height: 1.68;
498
536
  }
499
537
 
500
538
  .chat-list-bullet {
@@ -530,6 +568,11 @@
530
568
  color: var(--text-chat, var(--text-main));
531
569
  }
532
570
 
571
+ .chat-list-text > .chat-list-block {
572
+ margin: 4px 0 2px 0;
573
+ white-space: normal;
574
+ }
575
+
533
576
  .chat-link {
534
577
  color: var(--interactive-fg-hover);
535
578
  text-decoration: underline;
@@ -549,13 +592,13 @@
549
592
  }
550
593
 
551
594
  .chat-inline-code {
552
- background: var(--bg-surface-soft);
553
- border: 1px solid var(--border-default);
554
- padding: 2px 7px;
555
- border-radius: 6px;
556
- font-family: 'Fira Code', monospace;
557
- font-size: 0.86em;
558
- color: var(--text-chat);
595
+ background: var(--bg-surface-hover, rgba(127, 127, 127, 0.14));
596
+ border: none;
597
+ padding: 1.5px 5px;
598
+ border-radius: var(--radius-xs, 4px);
599
+ font-family: 'Fira Code', ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
600
+ font-size: 0.88em;
601
+ color: var(--text-chat, inherit);
559
602
  letter-spacing: -0.01em;
560
603
  }
561
604
 
@@ -607,7 +650,7 @@
607
650
  display: flex;
608
651
  gap: 12px;
609
652
  background: rgba(0, 0, 0, 0.15);
610
- border-radius: var(--radius-2xl);
653
+ border-radius: var(--radius-composer, 24px);
611
654
  padding: 6px;
612
655
  border: 1px solid var(--border);
613
656
  border-top: 1px solid var(--border-light);
@@ -773,7 +816,7 @@
773
816
  .approval-tool-icon-wrapper {
774
817
  width: 28px;
775
818
  height: 28px;
776
- border-radius: 7px;
819
+ border-radius: var(--radius-sm, 8px);
777
820
  background: var(--bg-surface-soft);
778
821
  border: 1px solid var(--border-subtle);
779
822
  display: flex;
@@ -815,12 +858,18 @@
815
858
  border-color: var(--border-subtle);
816
859
  }
817
860
 
861
+ .approval-badge-chip.plan {
862
+ background: var(--accent-subtle, rgba(105, 230, 166, 0.12));
863
+ color: var(--accent, #69e6a6);
864
+ border: 1px solid var(--accent-border, rgba(105, 230, 166, 0.3));
865
+ }
866
+
818
867
  .approval-content-box {
819
868
  width: 100%;
820
869
  box-sizing: border-box;
821
870
  background: var(--bg-surface-soft);
822
871
  border: 1px solid var(--border-subtle);
823
- border-radius: 9px;
872
+ border-radius: var(--radius-md, 10px);
824
873
  padding: 10px 14px;
825
874
  font-family: 'Fira Code', ui-monospace, monospace;
826
875
  font-size: 0.84rem;
@@ -844,6 +893,17 @@
844
893
  text-align: left;
845
894
  }
846
895
 
896
+ .approval-content-box.plan-review-content {
897
+ font-family: inherit;
898
+ font-size: 0.9rem;
899
+ line-height: 1.55;
900
+ background: var(--bg-surface-soft, rgba(255, 255, 255, 0.04));
901
+ border: 1px solid var(--border-subtle, rgba(255, 255, 255, 0.08));
902
+ border-radius: var(--radius-md, 10px);
903
+ padding: 12px 16px;
904
+ white-space: normal;
905
+ }
906
+
847
907
  .approval-reason-text {
848
908
  width: 100%;
849
909
  font-size: 0.78rem;
@@ -879,7 +939,7 @@
879
939
  padding: 10px 13px;
880
940
  background: var(--bg-surface-soft);
881
941
  border: 1px solid var(--border-subtle);
882
- border-radius: 10px;
942
+ border-radius: var(--radius-lg, 14px);
883
943
  cursor: pointer;
884
944
  text-align: left;
885
945
  transition: all 0.16s cubic-bezier(0.16, 1, 0.3, 1);
@@ -916,7 +976,7 @@
916
976
  .claude-choice-key {
917
977
  width: 22px;
918
978
  height: 22px;
919
- border-radius: 6px;
979
+ border-radius: var(--radius-xs, 6px);
920
980
  background: var(--bg-surface-soft);
921
981
  border: 1px solid var(--border-default);
922
982
  display: flex;
@@ -998,7 +1058,7 @@
998
1058
  padding: 9px 12px;
999
1059
  background: var(--bg-input);
1000
1060
  border: 1px solid var(--border-default);
1001
- border-radius: 8px;
1061
+ border-radius: var(--radius-sm, 8px);
1002
1062
  color: var(--text-main);
1003
1063
  font-size: 0.84rem;
1004
1064
  font-family: inherit;
@@ -1121,15 +1181,24 @@
1121
1181
  border-color: color-mix(in srgb, var(--status-error, #ef4444) 50%, transparent);
1122
1182
  }
1123
1183
 
1184
+ .file-changes-summary-container {
1185
+ width: 100%;
1186
+ align-self: stretch;
1187
+ margin: 6px 0;
1188
+ box-sizing: border-box;
1189
+ }
1190
+
1124
1191
  .file-changes-card {
1192
+ width: 100% !important;
1125
1193
  border: 1px solid var(--border) !important;
1126
1194
  border-radius: var(--radius-md, 8px) !important;
1127
1195
  padding: 0 !important;
1128
- background: var(--surface-bg, #1e1e20) !important;
1196
+ background: var(--bg-surface-raised, #18181b) !important;
1129
1197
  margin-top: 4px;
1130
1198
  overflow: hidden;
1131
1199
  display: flex;
1132
1200
  flex-direction: column;
1201
+ box-sizing: border-box;
1133
1202
  }
1134
1203
 
1135
1204
  .file-changes-summary-row {
@@ -1137,72 +1206,92 @@
1137
1206
  display: flex;
1138
1207
  gap: 12px;
1139
1208
  justify-content: space-between;
1140
- min-height: 48px;
1141
- padding: 8px 12px;
1209
+ min-height: 38px;
1210
+ padding: 6px 14px;
1211
+ box-sizing: border-box;
1212
+ cursor: pointer;
1213
+ user-select: none;
1214
+ transition: background 0.15s ease;
1215
+ }
1216
+
1217
+ .file-changes-summary-row:hover {
1218
+ background: color-mix(in srgb, var(--text-main) 3%, transparent);
1219
+ }
1220
+
1221
+ .file-changes-summary-row.is-open {
1142
1222
  border-bottom: 1px solid var(--border);
1143
1223
  }
1144
1224
 
1145
- .file-changes-summary {
1225
+ .file-changes-summary-toggle {
1226
+ display: inline-flex;
1146
1227
  align-items: center;
1147
- display: flex;
1148
1228
  gap: 8px;
1149
1229
  min-width: 0;
1230
+ flex: 1;
1150
1231
  }
1151
1232
 
1152
- .file-changes-summary-copy {
1153
- display: flex;
1154
- flex-direction: column;
1155
- gap: 2px;
1156
- min-width: 0;
1233
+ .file-changes-summary-label {
1234
+ color: var(--text-main, #f1f5f9);
1235
+ font-size: 0.88rem;
1236
+ font-weight: 500;
1237
+ white-space: nowrap;
1157
1238
  }
1158
1239
 
1159
- .file-changes-summary-icon {
1160
- align-items: center;
1161
- background: color-mix(in srgb, var(--accent) 12%, transparent);
1162
- border-radius: 7px;
1163
- color: var(--interactive-fg);
1240
+ .file-changes-summary-counts {
1164
1241
  display: inline-flex;
1165
- flex: 0 0 30px;
1166
- font-size: 1rem;
1167
- font-weight: 700;
1168
- height: 30px;
1169
- justify-content: center;
1242
+ align-items: center;
1243
+ gap: 6px;
1244
+ font-size: 0.84rem;
1245
+ font-weight: 600;
1246
+ line-height: 1;
1170
1247
  }
1171
1248
 
1172
- .file-changes-summary-label {
1173
- color: var(--text-main);
1174
- font-size: 0.84rem;
1249
+ .file-changes-count-add {
1250
+ color: var(--interactive-fg, var(--status-success, #22c55e));
1175
1251
  font-weight: 600;
1176
1252
  }
1177
1253
 
1178
- .file-changes-summary-counts {
1179
- display: inline-flex;
1180
- gap: 5px;
1181
- font-size: 0.75rem;
1182
- line-height: 1.2;
1254
+ .file-changes-count-del {
1255
+ color: var(--status-error, #ef4444);
1256
+ font-weight: 600;
1257
+ }
1258
+
1259
+ .file-changes-chevron {
1260
+ color: var(--text-muted, #94a3b8);
1261
+ transition: transform 0.18s ease;
1262
+ flex-shrink: 0;
1263
+ margin-left: 2px;
1264
+ }
1265
+
1266
+ .file-changes-chevron.is-open {
1267
+ transform: rotate(90deg);
1183
1268
  }
1184
1269
 
1185
1270
  .file-changes-summary-actions {
1186
- align-items: center;
1187
1271
  display: inline-flex;
1188
- flex: 0 0 auto;
1189
- gap: 7px;
1272
+ align-items: center;
1273
+ gap: 8px;
1274
+ flex-shrink: 0;
1190
1275
  }
1191
1276
 
1192
1277
  .file-changes-review-btn {
1193
- background: color-mix(in srgb, var(--text-main) 5%, transparent);
1278
+ display: inline-flex;
1279
+ align-items: center;
1280
+ gap: 6px;
1281
+ background: color-mix(in srgb, var(--text-main) 6%, transparent);
1194
1282
  border: 1px solid var(--border);
1195
- border-radius: var(--radius-xs, 5px);
1196
- color: var(--text-main);
1283
+ border-radius: var(--radius-sm, 6px);
1284
+ color: var(--text-main, #f1f5f9);
1197
1285
  cursor: pointer;
1198
1286
  font: inherit;
1199
- font-size: 0.75rem;
1200
- padding: 5px 10px;
1287
+ font-size: 0.78rem;
1288
+ font-weight: 500;
1289
+ padding: 4px 10px;
1201
1290
  transition: background 0.15s ease, border-color 0.15s ease;
1202
1291
  }
1203
1292
 
1204
1293
  .file-changes-review-btn:hover {
1205
- background: color-mix(in srgb, var(--text-main) 10%, transparent);
1294
+ background: color-mix(in srgb, var(--text-main) 12%, transparent);
1206
1295
  border-color: var(--border-light, var(--border));
1207
1296
  }
1208
1297
 
@@ -1322,56 +1411,72 @@
1322
1411
  color: var(--interactive-fg-hover);
1323
1412
  }
1324
1413
 
1325
- .file-changes-diff-box {
1326
- margin-top: 6px;
1327
- background: var(--input-bg, #0a0a0b);
1328
- border-radius: var(--radius-sm, 6px);
1329
- padding: 8px;
1414
+ .file-changes-item[draggable="true"] {
1415
+ cursor: grab;
1416
+ }
1417
+
1418
+ .file-changes-item[draggable="true"]:active {
1419
+ cursor: grabbing;
1420
+ }
1421
+
1422
+ .file-changes-mention-btn {
1423
+ display: inline-flex;
1424
+ align-items: center;
1425
+ gap: 3px;
1426
+ padding: 1px 6px;
1427
+ font-size: 0.68rem;
1428
+ border-radius: var(--radius-xs, 4px);
1429
+ background: color-mix(in srgb, var(--surface-strong, #1f293d) 60%, transparent);
1430
+ color: var(--text-muted, #94a3b8);
1330
1431
  border: 1px solid var(--border);
1331
- overflow-x: auto;
1332
- max-height: 300px;
1432
+ cursor: pointer;
1433
+ font-weight: 500;
1434
+ transition: all 0.15s ease;
1333
1435
  }
1334
1436
 
1335
- .file-changes-diff-hunk {
1336
- font-size: 0.74rem;
1337
- font-family: 'Fira Code', 'Courier New', Courier, monospace;
1338
- line-height: 1.45;
1437
+ .file-changes-mention-btn:hover {
1438
+ background: color-mix(in srgb, var(--accent) 18%, transparent);
1439
+ color: var(--interactive-fg);
1440
+ border-color: color-mix(in srgb, var(--accent) 35%, transparent);
1339
1441
  }
1340
1442
 
1341
- .file-changes-diff-del {
1342
- background: color-mix(in srgb, var(--status-error, #ef4444) 10%, transparent);
1343
- border-left: 3px solid var(--status-error, #ef4444);
1344
- padding: 4px 6px;
1345
- color: var(--text-chat, var(--text-main));
1346
- white-space: pre-wrap;
1443
+ .agent-activity-target-text.is-file-target,
1444
+ .agent-activity-subitem-target.is-file-target {
1445
+ cursor: grab;
1446
+ text-decoration: underline dotted color-mix(in srgb, var(--text-muted) 50%, transparent);
1347
1447
  }
1348
1448
 
1349
- .file-changes-diff-add {
1350
- background: color-mix(in srgb, var(--accent) 10%, transparent);
1351
- border-left: 3px solid var(--accent);
1352
- padding: 4px 6px;
1353
- color: var(--text-chat, var(--text-main));
1354
- white-space: pre-wrap;
1449
+ .agent-activity-target-text.is-file-target:active,
1450
+ .agent-activity-subitem-target.is-file-target:active {
1451
+ cursor: grabbing;
1355
1452
  }
1356
1453
 
1357
- .file-changes-diff-sign-del {
1358
- color: var(--status-error, #ef4444);
1359
- margin-right: 6px;
1360
- user-select: none;
1454
+ .agent-activity-mention-btn {
1455
+ display: inline-flex;
1456
+ align-items: center;
1457
+ justify-content: center;
1458
+ width: 16px;
1459
+ height: 16px;
1460
+ padding: 0;
1461
+ font-size: 0.65rem;
1361
1462
  font-weight: 600;
1362
- display: inline-block;
1363
- min-width: 10px;
1463
+ border-radius: var(--radius-xs, 4px);
1464
+ background: transparent;
1465
+ color: var(--text-muted);
1466
+ border: 1px solid transparent;
1467
+ cursor: pointer;
1468
+ transition: all 0.15s ease;
1469
+ margin-right: 4px;
1364
1470
  }
1365
1471
 
1366
- .file-changes-diff-sign-add {
1472
+ .agent-activity-mention-btn:hover {
1473
+ background: color-mix(in srgb, var(--accent) 20%, transparent);
1367
1474
  color: var(--interactive-fg);
1368
- margin-right: 6px;
1369
- user-select: none;
1370
- font-weight: 600;
1371
- display: inline-block;
1372
- min-width: 10px;
1475
+ border-color: color-mix(in srgb, var(--accent) 35%, transparent);
1373
1476
  }
1374
1477
 
1478
+
1479
+
1375
1480
  /* Full-panel code review view */
1376
1481
  .code-review-page {
1377
1482
  display: flex;
@@ -1474,7 +1579,7 @@
1474
1579
  .code-review-filetype {
1475
1580
  align-items: center;
1476
1581
  background: color-mix(in srgb, var(--accent) 13%, transparent);
1477
- border-radius: 4px;
1582
+ border-radius: var(--radius-xs, 6px);
1478
1583
  color: var(--interactive-fg);
1479
1584
  display: inline-flex;
1480
1585
  font-size: 0.58rem;
@@ -1762,7 +1867,7 @@
1762
1867
  flex-shrink: 0;
1763
1868
  background: color-mix(in srgb, var(--accent, #38bdf8) 10%, transparent);
1764
1869
  padding: 1px 6px;
1765
- border-radius: 4px;
1870
+ border-radius: var(--radius-xs, 6px);
1766
1871
  border: 1px solid color-mix(in srgb, var(--accent, #38bdf8) 20%, transparent);
1767
1872
  }
1768
1873
 
@@ -1785,7 +1890,7 @@
1785
1890
 
1786
1891
  .agent-activity-badge {
1787
1892
  align-items: center;
1788
- border-radius: 4px;
1893
+ border-radius: var(--radius-xs, 6px);
1789
1894
  display: inline-flex;
1790
1895
  flex-shrink: 0;
1791
1896
  font-size: 0.65rem;
@@ -1873,7 +1978,7 @@
1873
1978
  color: var(--text-muted);
1874
1979
  background: var(--bg-surface-soft);
1875
1980
  border: 1px solid var(--border-subtle);
1876
- border-radius: 10px;
1981
+ border-radius: var(--radius-sm, 8px);
1877
1982
  }
1878
1983
 
1879
1984
  .agent-activity-group-subitems {
@@ -1890,7 +1995,7 @@
1890
1995
  padding: 3px 12px 3px 8px;
1891
1996
  font-size: 0.78rem;
1892
1997
  color: var(--text-muted, #94a3b8);
1893
- border-radius: 4px;
1998
+ border-radius: var(--radius-xs, 6px);
1894
1999
  transition: background 0.12s ease, color 0.12s ease;
1895
2000
  }
1896
2001
 
@@ -1927,7 +2032,7 @@
1927
2032
 
1928
2033
  .agent-activity-subitem-output {
1929
2034
  margin: 2px 10px 6px 24px;
1930
- border-radius: 6px;
2035
+ border-radius: var(--radius-xs, 6px);
1931
2036
  }
1932
2037
 
1933
2038
  .agent-activity-output {
@@ -2057,7 +2162,7 @@
2057
2162
 
2058
2163
  .thinking-block-content::-webkit-scrollbar-thumb {
2059
2164
  background: rgba(148, 163, 184, 0.22);
2060
- border-radius: 2px;
2165
+ border-radius: var(--radius-2xs, 4px);
2061
2166
  }
2062
2167
 
2063
2168
  .thinking-block-step + .thinking-block-step {
@@ -2175,8 +2280,8 @@
2175
2280
  font-size: 11.5px;
2176
2281
  padding: 1px 4px;
2177
2282
  background: rgba(255, 255, 255, 0.05);
2178
- border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
2179
- border-radius: 3px;
2283
+ border: none;
2284
+ border-radius: var(--radius-xs, 4px);
2180
2285
  color: var(--text-muted, #cbd5e1);
2181
2286
  }
2182
2287
 
@@ -2185,7 +2290,7 @@
2185
2290
  .thinking-block-content .chat-code-block {
2186
2291
  margin: 6px 0;
2187
2292
  padding: 8px 10px;
2188
- border-radius: 6px;
2293
+ border-radius: var(--radius-xs, 6px);
2189
2294
  background: rgba(0, 0, 0, 0.2);
2190
2295
  border: 1px solid var(--border, rgba(255, 255, 255, 0.06));
2191
2296
  font-size: 11.5px;
@@ -2647,7 +2752,7 @@ input:checked + .slider:before {
2647
2752
  .user-message .message-bubble {
2648
2753
  background: linear-gradient(135deg, var(--surface-strong), color-mix(in srgb, var(--accent) 16%, var(--surface-strong)));
2649
2754
  border: 1px solid var(--border-default);
2650
- border-radius: 22px 22px 6px 22px;
2755
+ border-radius: var(--radius-xl) var(--radius-xl) var(--radius-xs, 4px) var(--radius-xl);
2651
2756
  color: var(--text-main);
2652
2757
  box-shadow: none;
2653
2758
  }
@@ -2664,6 +2769,7 @@ input:checked + .slider:before {
2664
2769
  box-shadow: none !important;
2665
2770
  border-radius: 0 !important;
2666
2771
  padding: 0 !important;
2772
+ width: 100%;
2667
2773
  }
2668
2774
 
2669
2775
  .input-area {
@@ -2902,14 +3008,38 @@ input:checked + .slider:before {
2902
3008
  display: flex;
2903
3009
  align-items: center;
2904
3010
  gap: 6px;
2905
- min-height: 44px;
2906
- padding: 5px 8px;
3011
+ min-height: 34px;
3012
+ padding: 4px 10px;
2907
3013
  background: var(--input-bg);
2908
3014
  border: 1px solid var(--border);
2909
- border-bottom: 0;
2910
- border-radius: var(--radius-xl) var(--radius-xl) 0 0;
3015
+ border-bottom: 1px solid color-mix(in srgb, var(--border) 45%, transparent);
3016
+ border-radius: var(--radius-composer, 20px) var(--radius-composer, 20px) 0 0;
3017
+ }
3018
+
3019
+ .project-context-row .workspace-select-btn,
3020
+ .project-context-row .git-branch-trigger {
3021
+ min-height: 26px;
3022
+ height: 26px;
3023
+ padding: 0 8px;
3024
+ font-size: 0.76rem;
3025
+ border-radius: var(--radius-sm, 8px);
3026
+ }
3027
+
3028
+ .project-context-row .git-branch-trigger {
3029
+ background: var(--surface-strong);
3030
+ border: 1px solid var(--border-subtle);
3031
+ color: var(--text-primary);
3032
+ transition: background-color 120ms ease, border-color 120ms ease, color 120ms ease;
2911
3033
  }
2912
3034
 
3035
+ .project-context-row .git-branch-trigger:hover:not(:disabled),
3036
+ .project-context-row .git-branch-trigger[aria-expanded='true'] {
3037
+ background: var(--bg-surface-hover);
3038
+ border-color: var(--border);
3039
+ color: var(--text-primary);
3040
+ }
3041
+
3042
+ .project-context-row + #chat-form,
2913
3043
  .project-context-row + .smart-context-bar {
2914
3044
  border-top-color: var(--border-subtle);
2915
3045
  border-radius: 0;
@@ -2931,17 +3061,19 @@ input:checked + .slider:before {
2931
3061
  display: flex;
2932
3062
  align-items: center;
2933
3063
  gap: 7px;
2934
- color: var(--text-secondary);
2935
- background: transparent;
2936
- border: 0;
3064
+ color: var(--text-primary);
3065
+ background: var(--surface-strong);
3066
+ border: 1px solid var(--border-subtle);
2937
3067
  border-radius: var(--radius-md);
2938
3068
  cursor: pointer;
3069
+ transition: background-color 120ms ease, border-color 120ms ease, color 120ms ease;
2939
3070
  }
2940
3071
 
2941
3072
  .git-branch-trigger:hover:not(:disabled),
2942
3073
  .git-branch-trigger[aria-expanded='true'] {
2943
3074
  color: var(--text-primary);
2944
3075
  background: var(--bg-surface-hover);
3076
+ border-color: var(--border);
2945
3077
  }
2946
3078
 
2947
3079
  .git-branch-trigger:focus-visible {
@@ -2989,7 +3121,7 @@ input:checked + .slider:before {
2989
3121
  height: 5px;
2990
3122
  flex: 0 0 5px;
2991
3123
  border-radius: 50%;
2992
- background: var(--accent);
3124
+ background: var(--status-warning, #f59e0b);
2993
3125
  }
2994
3126
 
2995
3127
  .git-branch-menu {
@@ -2998,16 +3130,30 @@ input:checked + .slider:before {
2998
3130
  right: auto;
2999
3131
  bottom: calc(100% + 8px);
3000
3132
  z-index: 80;
3001
- width: min(320px, calc(100vw - 48px));
3133
+ width: min(320px, calc(100vw - 32px));
3002
3134
  padding: 6px;
3003
3135
  color: var(--text-primary);
3004
- background: var(--bg-surface-raised);
3005
- border: 1px solid var(--border-default);
3006
- border-radius: var(--radius-md);
3007
- box-shadow: var(--shadow-lg);
3136
+ background: var(--panel-bg, #18181b);
3137
+ border: 1px solid var(--border);
3138
+ border-radius: var(--radius-xl, 16px);
3139
+ box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.4), 0 8px 10px -6px rgba(0, 0, 0, 0.3);
3140
+ backdrop-filter: var(--glass-blur);
3141
+ -webkit-backdrop-filter: var(--glass-blur);
3142
+ animation: git-branch-popover-in 0.15s cubic-bezier(0.16, 1, 0.3, 1);
3008
3143
  overflow-y: auto;
3009
3144
  }
3010
3145
 
3146
+ @keyframes git-branch-popover-in {
3147
+ from {
3148
+ opacity: 0;
3149
+ transform: translateY(4px) scale(0.98);
3150
+ }
3151
+ to {
3152
+ opacity: 1;
3153
+ transform: translateY(0) scale(1);
3154
+ }
3155
+ }
3156
+
3011
3157
  .git-branch-menu.align-right {
3012
3158
  left: auto;
3013
3159
  right: 0;
@@ -3019,19 +3165,23 @@ input:checked + .slider:before {
3019
3165
  }
3020
3166
 
3021
3167
  .git-branch-search {
3022
- height: 34px;
3023
- padding: 0 10px;
3168
+ height: 32px;
3169
+ padding: 0 9px;
3024
3170
  display: flex;
3025
3171
  align-items: center;
3026
3172
  gap: 8px;
3173
+ margin-bottom: 4px;
3027
3174
  color: var(--text-muted);
3028
- background: var(--input-bg);
3029
- border: 1px solid var(--border);
3030
- border-radius: var(--radius-sm);
3175
+ background: var(--surface-strong, rgba(255, 255, 255, 0.05));
3176
+ border: 1px solid var(--border-default, rgba(255, 255, 255, 0.08));
3177
+ border-radius: var(--radius-md, 10px);
3178
+ transition: all 0.15s ease;
3031
3179
  }
3032
3180
 
3033
3181
  .git-branch-search:focus-within {
3034
- border-color: var(--border-focus, var(--accent));
3182
+ border-color: var(--border-strong, rgba(255, 255, 255, 0.22));
3183
+ background: var(--surface-strong, rgba(255, 255, 255, 0.08));
3184
+ color: var(--text-primary);
3035
3185
  }
3036
3186
 
3037
3187
  .git-branch-search input {
@@ -3042,7 +3192,7 @@ input:checked + .slider:before {
3042
3192
  border: 0;
3043
3193
  outline: 0;
3044
3194
  font: inherit;
3045
- font-size: 0.76rem;
3195
+ font-size: 0.78rem;
3046
3196
  }
3047
3197
 
3048
3198
  .git-branch-search input::placeholder {
@@ -3050,33 +3200,40 @@ input:checked + .slider:before {
3050
3200
  }
3051
3201
 
3052
3202
  .git-branch-menu-heading {
3053
- padding: 10px 8px 5px;
3203
+ padding: 6px 8px 4px;
3054
3204
  color: var(--text-muted);
3055
- font-size: 0.66rem;
3205
+ font-size: 0.68rem;
3056
3206
  font-weight: 600;
3057
- letter-spacing: 0.06em;
3058
- text-transform: none;
3207
+ letter-spacing: 0.05em;
3208
+ text-transform: uppercase;
3059
3209
  }
3060
3210
 
3061
3211
  .git-branch-list {
3062
3212
  max-height: 180px;
3063
3213
  overflow-y: auto;
3214
+ display: flex;
3215
+ flex-direction: column;
3216
+ gap: 2px;
3217
+ scrollbar-width: thin;
3064
3218
  }
3065
3219
 
3066
3220
  .git-branch-option {
3067
3221
  width: 100%;
3068
- min-height: 34px;
3222
+ min-height: 32px;
3069
3223
  padding: 6px 8px;
3070
3224
  display: grid;
3071
- grid-template-columns: 18px minmax(0, 1fr) 16px;
3225
+ grid-template-columns: 16px minmax(0, 1fr) auto;
3072
3226
  align-items: center;
3073
- gap: 7px;
3227
+ gap: 9px;
3074
3228
  color: var(--text-secondary);
3075
3229
  background: transparent;
3076
- border: 0;
3077
- border-radius: var(--radius-sm);
3230
+ border: 1px solid transparent;
3231
+ border-radius: var(--radius-md, 10px);
3078
3232
  text-align: left;
3079
3233
  cursor: pointer;
3234
+ font-size: 0.8rem;
3235
+ font-weight: 500;
3236
+ transition: all 0.12s ease;
3080
3237
  }
3081
3238
 
3082
3239
  .git-branch-option span:nth-child(2) {
@@ -3088,17 +3245,24 @@ input:checked + .slider:before {
3088
3245
  .git-branch-option:hover:not(:disabled),
3089
3246
  .git-branch-option:focus-visible {
3090
3247
  color: var(--text-primary);
3091
- background: var(--bg-surface-hover);
3248
+ background: var(--bg-surface-hover, rgba(255, 255, 255, 0.06));
3092
3249
  outline: 0;
3093
3250
  }
3094
3251
 
3252
+ .git-branch-option:hover:not(:disabled) .git-branch-option-icon,
3253
+ .git-branch-option:focus-visible .git-branch-option-icon {
3254
+ color: var(--text-primary);
3255
+ }
3256
+
3095
3257
  .git-branch-option[aria-selected='true'] {
3096
3258
  color: var(--text-primary);
3097
- background: var(--bg-surface-soft);
3259
+ background: var(--bg-surface-hover, rgba(255, 255, 255, 0.08));
3260
+ border-color: var(--border, rgba(255, 255, 255, 0.16));
3098
3261
  }
3099
3262
 
3100
- .git-branch-option[aria-selected='true'] svg {
3101
- color: var(--interactive-fg);
3263
+ .git-branch-option[aria-selected='true'] .git-branch-option-icon,
3264
+ .git-branch-option[aria-selected='true'] .git-branch-option-check {
3265
+ color: var(--text-primary);
3102
3266
  }
3103
3267
 
3104
3268
  .git-branch-option:disabled {
@@ -3107,8 +3271,42 @@ input:checked + .slider:before {
3107
3271
  }
3108
3272
 
3109
3273
  .git-branch-option-icon {
3110
- color: var(--text-muted);
3111
- font-size: 0.9rem;
3274
+ display: inline-flex;
3275
+ align-items: center;
3276
+ justify-content: center;
3277
+ width: 16px;
3278
+ height: 16px;
3279
+ color: var(--text-muted);
3280
+ flex-shrink: 0;
3281
+ transition: color 0.12s ease;
3282
+ }
3283
+
3284
+ .git-branch-option-check {
3285
+ display: inline-flex;
3286
+ align-items: center;
3287
+ justify-content: center;
3288
+ width: 16px;
3289
+ height: 16px;
3290
+ color: var(--accent, #10b981);
3291
+ flex-shrink: 0;
3292
+ }
3293
+
3294
+ .git-branch-track-label {
3295
+ display: inline-flex;
3296
+ align-items: center;
3297
+ padding: 1px 7px;
3298
+ font-size: 0.66rem;
3299
+ font-weight: 500;
3300
+ color: var(--text-muted);
3301
+ background: var(--surface-strong);
3302
+ border: 1px solid var(--border-subtle);
3303
+ border-radius: var(--radius-full, 999px);
3304
+ transition: all 0.12s ease;
3305
+ }
3306
+
3307
+ .git-branch-option:hover .git-branch-track-label {
3308
+ color: var(--text-primary);
3309
+ border-color: var(--border);
3112
3310
  }
3113
3311
 
3114
3312
  .git-branch-empty {
@@ -3120,14 +3318,16 @@ input:checked + .slider:before {
3120
3318
 
3121
3319
  .git-branch-error {
3122
3320
  margin-top: 6px;
3123
- padding: 8px;
3321
+ padding: 8px 10px;
3124
3322
  display: flex;
3125
3323
  align-items: flex-start;
3126
3324
  justify-content: space-between;
3127
3325
  gap: 10px;
3128
3326
  color: var(--status-error, #ef4444);
3129
- border-top: 1px solid var(--border-subtle);
3130
- font-size: 0.7rem;
3327
+ background: color-mix(in srgb, var(--status-error, #ef4444) 10%, transparent);
3328
+ border-radius: var(--radius-md, 8px);
3329
+ border: 1px solid color-mix(in srgb, var(--status-error, #ef4444) 25%, transparent);
3330
+ font-size: 0.72rem;
3131
3331
  line-height: 1.35;
3132
3332
  }
3133
3333
 
@@ -3139,155 +3339,191 @@ input:checked + .slider:before {
3139
3339
  cursor: pointer;
3140
3340
  font: inherit;
3141
3341
  font-weight: 600;
3142
- }
3143
-
3144
- .git-branch-track-label {
3145
- color: var(--text-muted);
3146
- font-size: 0.64rem;
3147
- text-align: right;
3342
+ text-decoration: underline;
3148
3343
  }
3149
3344
 
3150
3345
  .git-branch-actions {
3151
3346
  margin-top: 6px;
3152
3347
  padding-top: 6px;
3153
- display: grid;
3348
+ display: flex;
3349
+ flex-direction: column;
3350
+ gap: 2px;
3154
3351
  border-top: 1px solid var(--border-subtle);
3155
3352
  }
3156
3353
 
3157
3354
  .git-branch-actions button {
3158
- min-height: 34px;
3355
+ min-height: 32px;
3159
3356
  padding: 6px 8px;
3160
3357
  display: flex;
3161
3358
  align-items: center;
3162
- gap: 8px;
3359
+ gap: 9px;
3163
3360
  color: var(--text-secondary);
3164
3361
  background: transparent;
3165
- border: 0;
3166
- border-radius: var(--radius-sm);
3362
+ border: 1px solid transparent;
3363
+ border-radius: var(--radius-md, 10px);
3364
+ font-size: 0.8rem;
3365
+ font-weight: 500;
3167
3366
  text-align: left;
3168
3367
  cursor: pointer;
3368
+ transition: all 0.12s ease;
3369
+ }
3370
+
3371
+ .git-branch-actions button svg {
3372
+ color: var(--text-muted);
3373
+ flex-shrink: 0;
3374
+ transition: color 0.12s ease;
3169
3375
  }
3170
3376
 
3171
3377
  .git-branch-actions button:hover,
3172
3378
  .git-branch-actions button:focus-visible {
3173
3379
  color: var(--text-primary);
3174
- background: var(--bg-surface-hover);
3380
+ background: var(--bg-surface-hover, rgba(255, 255, 255, 0.06));
3175
3381
  outline: 0;
3176
3382
  }
3177
3383
 
3384
+ .git-branch-actions button:hover svg,
3385
+ .git-branch-actions button:focus-visible svg {
3386
+ color: var(--text-primary);
3387
+ }
3388
+
3178
3389
  .git-branch-view-header {
3179
3390
  min-height: 34px;
3180
- display: grid;
3181
- grid-template-columns: 30px minmax(0, 1fr) auto;
3391
+ display: flex;
3182
3392
  align-items: center;
3183
- gap: 6px;
3393
+ gap: 8px;
3394
+ padding: 2px 2px 8px;
3184
3395
  border-bottom: 1px solid var(--border-subtle);
3185
3396
  }
3186
3397
 
3187
3398
  .git-branch-view-header > button {
3188
- min-width: 30px;
3189
- height: 30px;
3190
- padding: 0 7px;
3399
+ width: 28px;
3400
+ height: 28px;
3401
+ padding: 0;
3402
+ display: inline-flex;
3403
+ align-items: center;
3404
+ justify-content: center;
3191
3405
  color: var(--text-muted);
3192
3406
  background: transparent;
3193
- border: 0;
3194
- border-radius: var(--radius-sm);
3407
+ border: 1px solid transparent;
3408
+ border-radius: var(--radius-md, 8px);
3195
3409
  cursor: pointer;
3410
+ transition: all 0.12s ease;
3196
3411
  }
3197
3412
 
3198
3413
  .git-branch-view-header > button:hover:not(:disabled),
3199
3414
  .git-branch-view-header > button:focus-visible {
3200
3415
  color: var(--text-primary);
3201
3416
  background: var(--bg-surface-hover);
3417
+ border-color: var(--border-subtle);
3202
3418
  outline: 0;
3203
3419
  }
3204
3420
 
3205
3421
  .git-branch-view-header strong {
3206
- overflow: hidden;
3207
- font-size: 0.76rem;
3422
+ flex: 1;
3423
+ color: var(--text-primary);
3424
+ font-size: 0.82rem;
3208
3425
  font-weight: 600;
3209
- text-overflow: ellipsis;
3210
- white-space: nowrap;
3211
3426
  }
3212
3427
 
3213
3428
  .git-branch-create {
3214
- display: grid;
3215
- gap: 9px;
3429
+ display: flex;
3430
+ flex-direction: column;
3431
+ gap: 8px;
3432
+ padding-top: 8px;
3216
3433
  }
3217
3434
 
3218
3435
  .git-branch-create > label {
3219
- margin-top: 3px;
3220
3436
  color: var(--text-muted);
3221
- font-size: 0.68rem;
3222
- font-weight: 600;
3437
+ font-size: 0.72rem;
3438
+ font-weight: 500;
3223
3439
  }
3224
3440
 
3225
3441
  .git-branch-create > input {
3226
- height: 36px;
3442
+ height: 34px;
3227
3443
  padding: 0 10px;
3228
3444
  color: var(--text-primary);
3229
- background: var(--input-bg);
3230
- border: 1px solid var(--border);
3231
- border-radius: var(--radius-sm);
3445
+ background: var(--surface-strong, rgba(255, 255, 255, 0.05));
3446
+ border: 1px solid var(--border-default, rgba(255, 255, 255, 0.08));
3447
+ border-radius: var(--radius-md, 10px);
3232
3448
  outline: 0;
3233
3449
  font: inherit;
3234
- font-size: 0.76rem;
3450
+ font-size: 0.8rem;
3451
+ transition: all 0.15s ease;
3235
3452
  }
3236
3453
 
3237
3454
  .git-branch-create > input:focus {
3238
- border-color: var(--border-focus, var(--accent));
3455
+ border-color: var(--border-strong, rgba(255, 255, 255, 0.22));
3456
+ background: var(--surface-strong, rgba(255, 255, 255, 0.08));
3239
3457
  }
3240
3458
 
3241
3459
  .git-branch-create > p {
3242
3460
  margin: 0;
3243
3461
  color: var(--text-muted);
3244
- font-size: 0.68rem;
3462
+ font-size: 0.72rem;
3245
3463
  line-height: 1.4;
3246
3464
  }
3247
3465
 
3248
3466
  .git-branch-create > p strong {
3249
- color: var(--text-secondary);
3250
- font-weight: 500;
3467
+ color: var(--text-primary);
3468
+ font-weight: 600;
3251
3469
  }
3252
3470
 
3253
3471
  .git-branch-create-submit {
3254
- min-height: 34px;
3255
- color: var(--text-on-accent);
3256
- background: var(--accent);
3472
+ height: 32px;
3473
+ padding: 0 12px;
3474
+ color: var(--accent-contrast, #ffffff);
3475
+ background: linear-gradient(135deg, var(--accent), var(--accent-hover, var(--accent)));
3257
3476
  border: 0;
3258
- border-radius: var(--radius-sm);
3259
- cursor: pointer;
3260
- font: inherit;
3261
- font-size: 0.74rem;
3477
+ border-radius: var(--radius-md, 10px);
3478
+ font-size: 0.78rem;
3262
3479
  font-weight: 600;
3480
+ cursor: pointer;
3481
+ transition: all 0.15s ease;
3263
3482
  }
3264
3483
 
3265
3484
  .git-branch-create-submit:hover:not(:disabled) {
3266
- background: var(--accent-hover);
3485
+ opacity: 0.92;
3486
+ transform: translateY(-1px);
3267
3487
  }
3268
3488
 
3269
3489
  .git-branch-create-submit:focus-visible {
3270
- outline: 2px solid var(--border-focus, var(--accent));
3271
- outline-offset: 2px;
3490
+ outline: 2px solid var(--accent);
3491
+ outline-offset: 1px;
3272
3492
  }
3273
3493
 
3274
3494
  .git-branch-create-submit:disabled {
3275
- cursor: default;
3276
- opacity: 0.45;
3495
+ cursor: not-allowed;
3496
+ opacity: 0.5;
3277
3497
  }
3278
3498
 
3279
3499
  .git-branch-menu.is-graph {
3280
- width: min(540px, calc(100vw - 48px));
3500
+ width: min(540px, calc(100vw - 32px));
3281
3501
  }
3282
3502
 
3283
3503
  .git-graph-view {
3284
- display: grid;
3285
- gap: 6px;
3504
+ display: flex;
3505
+ flex-direction: column;
3506
+ gap: 8px;
3286
3507
  }
3287
3508
 
3288
3509
  .git-graph-refresh {
3289
3510
  width: auto;
3290
- font-size: 0.68rem;
3511
+ height: 26px;
3512
+ padding: 0 9px;
3513
+ font-size: 0.72rem;
3514
+ font-weight: 500;
3515
+ border-radius: var(--radius-sm, 6px);
3516
+ background: var(--surface-strong);
3517
+ border: 1px solid var(--border-subtle);
3518
+ color: var(--text-secondary);
3519
+ cursor: pointer;
3520
+ transition: all 0.12s ease;
3521
+ }
3522
+
3523
+ .git-graph-refresh:hover:not(:disabled) {
3524
+ background: var(--bg-surface-hover);
3525
+ color: var(--text-primary);
3526
+ border-color: var(--border);
3291
3527
  }
3292
3528
 
3293
3529
  .git-graph-output {
@@ -3297,12 +3533,12 @@ input:checked + .slider:before {
3297
3533
  padding: 10px;
3298
3534
  overflow: auto;
3299
3535
  color: var(--text-secondary);
3300
- background: var(--input-bg);
3301
- border: 1px solid var(--border-subtle);
3302
- border-radius: var(--radius-sm);
3536
+ background: var(--surface-strong, rgba(255, 255, 255, 0.04));
3537
+ border: 1px solid var(--border-default, rgba(255, 255, 255, 0.08));
3538
+ border-radius: var(--radius-md, 10px);
3303
3539
  font-family: var(--font-mono, monospace);
3304
- font-size: 0.68rem;
3305
- line-height: 1.65;
3540
+ font-size: 0.72rem;
3541
+ line-height: 1.6;
3306
3542
  tab-size: 14;
3307
3543
  white-space: pre;
3308
3544
  }
@@ -3317,7 +3553,7 @@ input:checked + .slider:before {
3317
3553
  display: grid;
3318
3554
  place-items: center;
3319
3555
  color: var(--text-muted);
3320
- font-size: 0.74rem;
3556
+ font-size: 0.76rem;
3321
3557
  }
3322
3558
 
3323
3559
  @media (max-width: 1100px) {
@@ -3373,7 +3609,7 @@ input:checked + .slider:before {
3373
3609
  background: var(--input-bg);
3374
3610
  border: 1px solid var(--border);
3375
3611
  border-bottom: 0;
3376
- border-radius: var(--radius-xl) var(--radius-xl) 0 0;
3612
+ border-radius: var(--radius-composer, 24px) var(--radius-composer, 24px) 0 0;
3377
3613
  display: flex;
3378
3614
  align-items: center;
3379
3615
  flex-wrap: wrap;
@@ -3466,26 +3702,28 @@ input:checked + .slider:before {
3466
3702
  }
3467
3703
 
3468
3704
  #chat-form {
3469
- min-height: 88px;
3705
+ min-height: 62px;
3470
3706
  display: grid;
3471
3707
  grid-template-columns: 32px 32px minmax(0, 1fr) 32px 32px;
3472
- grid-template-rows: auto minmax(48px, auto) 32px;
3708
+ grid-template-rows: auto minmax(26px, auto) 32px;
3473
3709
  align-items: end;
3474
3710
  gap: 6px;
3475
- padding: 10px 14px 10px 14px;
3711
+ padding: 6px 12px 8px 12px;
3476
3712
  background: var(--input-bg);
3477
3713
  border: 1px solid var(--border);
3478
- border-radius: var(--radius-xl);
3714
+ border-radius: var(--radius-composer, 20px);
3479
3715
  box-shadow: none;
3480
3716
  backdrop-filter: var(--glass-blur);
3481
3717
  -webkit-backdrop-filter: var(--glass-blur);
3482
3718
  }
3483
3719
 
3720
+ .project-context-row + #chat-form,
3484
3721
  .smart-context-bar + #chat-form {
3722
+ border-top: 0;
3485
3723
  border-top-left-radius: 0;
3486
3724
  border-top-right-radius: 0;
3487
- border-bottom-left-radius: var(--radius-xl);
3488
- border-bottom-right-radius: var(--radius-xl);
3725
+ border-bottom-left-radius: var(--radius-composer, 20px);
3726
+ border-bottom-right-radius: var(--radius-composer, 20px);
3489
3727
  }
3490
3728
 
3491
3729
  #chat-form:focus-within {
@@ -3545,8 +3783,62 @@ input:checked + .slider:before {
3545
3783
  cursor: pointer;
3546
3784
  }
3547
3785
 
3786
+ .composer-file-chip {
3787
+ display: inline-flex;
3788
+ align-items: center;
3789
+ gap: 6px;
3790
+ padding: 3px 8px 3px 10px;
3791
+ border-radius: var(--radius-full, 9999px);
3792
+ background: color-mix(in srgb, var(--surface-strong, #1e293b) 82%, var(--accent) 14%);
3793
+ border: 1px solid color-mix(in srgb, var(--accent) 30%, var(--border, rgba(148, 163, 184, 0.2)));
3794
+ color: var(--text-primary, #f1f5f9);
3795
+ font-size: 0.78rem;
3796
+ font-weight: 500;
3797
+ max-width: 260px;
3798
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12);
3799
+ transition: border-color 0.15s ease, background 0.15s ease;
3800
+ }
3801
+
3802
+ .composer-file-chip:hover {
3803
+ border-color: var(--accent);
3804
+ background: color-mix(in srgb, var(--surface-strong, #1e293b) 75%, var(--accent) 20%);
3805
+ }
3806
+
3807
+ .composer-file-chip-icon {
3808
+ display: inline-flex;
3809
+ align-items: center;
3810
+ color: var(--accent);
3811
+ flex-shrink: 0;
3812
+ }
3813
+
3814
+ .composer-file-chip-name {
3815
+ overflow: hidden;
3816
+ text-overflow: ellipsis;
3817
+ white-space: nowrap;
3818
+ }
3819
+
3820
+ .composer-file-chip-remove {
3821
+ background: transparent;
3822
+ border: 0;
3823
+ padding: 2px;
3824
+ margin-left: 2px;
3825
+ color: var(--text-muted, #94a3b8);
3826
+ cursor: pointer;
3827
+ display: inline-flex;
3828
+ align-items: center;
3829
+ justify-content: center;
3830
+ border-radius: 50%;
3831
+ transition: color 0.15s ease, background 0.15s ease;
3832
+ flex-shrink: 0;
3833
+ }
3834
+
3835
+ .composer-file-chip-remove:hover {
3836
+ color: var(--status-error, #ef4444);
3837
+ background: rgba(239, 68, 68, 0.12);
3838
+ }
3839
+
3548
3840
  #chat-form:not(:has(.mint-attachment)) {
3549
- grid-template-rows: minmax(48px, auto) 32px;
3841
+ grid-template-rows: minmax(26px, auto) 32px;
3550
3842
  }
3551
3843
 
3552
3844
  #chat-form:not(:has(.mint-attachment)) #chat-input {
@@ -3556,20 +3848,45 @@ input:checked + .slider:before {
3556
3848
  #chat-form:not(:has(.mint-attachment)) .chat-tool-menu-wrap,
3557
3849
  #chat-form:not(:has(.mint-attachment)) #screen-capture-btn,
3558
3850
  #chat-form:not(:has(.mint-attachment)) .chat-provider-select,
3851
+ #chat-form:not(:has(.mint-attachment)) .chat-composer-pills,
3559
3852
  #chat-form:not(:has(.mint-attachment)) #send-btn {
3560
3853
  grid-row: 2;
3561
3854
  }
3562
3855
 
3856
+ .chat-composer-pills {
3857
+ grid-column: 3;
3858
+ grid-row: 3;
3859
+ display: flex;
3860
+ align-items: center;
3861
+ justify-content: space-between;
3862
+ gap: 8px;
3863
+ min-width: 0;
3864
+ width: 100%;
3865
+ position: static;
3866
+ }
3867
+
3868
+ .chat-composer-pills .model-selector-container {
3869
+ grid-column: auto;
3870
+ grid-row: auto;
3871
+ position: static;
3872
+ min-width: 0;
3873
+ flex-shrink: 1;
3874
+ }
3875
+
3876
+ .chat-composer-pills .chat-mode-selector-wrap {
3877
+ flex-shrink: 0;
3878
+ }
3879
+
3563
3880
  #chat-input {
3564
3881
  grid-column: 1 / -1;
3565
3882
  grid-row: 2;
3566
3883
  align-self: start;
3567
- min-height: 48px;
3568
- max-height: 120px;
3569
- padding: 12px 0;
3884
+ min-height: 26px;
3885
+ max-height: 140px;
3886
+ padding: 3px 2px 2px 2px;
3570
3887
  color: var(--text-main);
3571
- font-size: 1rem;
3572
- line-height: 1.5;
3888
+ font-size: 0.94rem;
3889
+ line-height: 1.45;
3573
3890
  resize: none;
3574
3891
  overflow-y: auto;
3575
3892
  border: 0;
@@ -3904,7 +4221,7 @@ input:checked + .slider:before {
3904
4221
  backdrop-filter: blur(20px) saturate(180%);
3905
4222
  -webkit-backdrop-filter: blur(20px) saturate(180%);
3906
4223
  border: 1px solid var(--border-subtle, rgba(255, 255, 255, 0.08));
3907
- border-radius: var(--radius-xl, 14px);
4224
+ border-radius: var(--radius-full, 9999px);
3908
4225
  box-shadow: 0 8px 24px -4px rgba(0, 0, 0, 0.35),
3909
4226
  0 1px 0 0 rgba(255, 255, 255, 0.04) inset;
3910
4227
  position: sticky;
@@ -3962,7 +4279,7 @@ input:checked + .slider:before {
3962
4279
  padding: 2px 8px;
3963
4280
  background: rgba(255, 255, 255, 0.06);
3964
4281
  border: 1px solid rgba(255, 255, 255, 0.08);
3965
- border-radius: var(--radius-sm, 6px);
4282
+ border-radius: var(--radius-full, 9999px);
3966
4283
  font-size: 0.76rem;
3967
4284
  font-weight: 500;
3968
4285
  color: var(--text-secondary, #94a3b8);
@@ -4012,7 +4329,7 @@ input:checked + .slider:before {
4012
4329
  justify-content: center;
4013
4330
  width: 30px;
4014
4331
  height: 30px;
4015
- border-radius: 8px;
4332
+ border-radius: var(--radius-full, 9999px);
4016
4333
  background: color-mix(in srgb, var(--bg-surface, #202632) 70%, transparent);
4017
4334
  border: 1px solid color-mix(in srgb, var(--border, rgba(255, 255, 255, 0.08)) 80%, transparent);
4018
4335
  color: var(--text-muted, #94a3b8);
@@ -4042,8 +4359,8 @@ input:checked + .slider:before {
4042
4359
  gap: 5px;
4043
4360
  background: color-mix(in srgb, var(--bg-surface, #202632) 80%, transparent);
4044
4361
  border: 1px solid var(--border-default, rgba(255, 255, 255, 0.1));
4045
- border-radius: var(--radius-xs, 6px);
4046
- padding: 3px 9px;
4362
+ border-radius: var(--radius-full, 9999px);
4363
+ padding: 4px 11px;
4047
4364
  color: var(--text-primary);
4048
4365
  font-size: 0.8rem;
4049
4366
  font-weight: 500;
@@ -4069,14 +4386,19 @@ input:checked + .slider:before {
4069
4386
  display: inline-flex;
4070
4387
  align-items: center;
4071
4388
  gap: 6px;
4072
- padding: 2px 8px;
4073
- border-radius: 6px;
4074
- background: color-mix(in srgb, var(--accent, #10b981) 10%, transparent);
4075
- border: 1px solid color-mix(in srgb, var(--accent, #10b981) 20%, transparent);
4389
+ padding: 4px 10px;
4390
+ border-radius: var(--radius-full, 9999px);
4391
+ background: color-mix(in srgb, var(--bg-surface, #202632) 80%, transparent);
4392
+ border: 1px solid var(--border-default, rgba(255, 255, 255, 0.1));
4076
4393
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
4077
- font-size: 0.8rem;
4078
- font-weight: 600;
4079
- color: var(--interactive-fg);
4394
+ font-size: 0.78rem;
4395
+ font-weight: 500;
4396
+ color: var(--text-secondary);
4397
+ user-select: none;
4398
+ }
4399
+
4400
+ .chat-header .tools-panel-toggle {
4401
+ border-radius: var(--radius-full, 9999px);
4080
4402
  }
4081
4403
 
4082
4404
  .drag-drop-overlay {
@@ -4236,38 +4558,82 @@ input:checked + .slider:before {
4236
4558
  color: #dc2626;
4237
4559
  }
4238
4560
 
4239
- [data-theme="light"] .smart-context-bar,
4240
- [data-theme="light"] #chat-form {
4561
+ [data-theme="light"] .project-context-row {
4241
4562
  background: #ffffff;
4242
4563
  border-color: rgba(15, 23, 42, 0.16);
4243
- box-shadow: none;
4244
- }
4245
-
4246
- [data-theme="light"] .smart-context-bar {
4247
- border-bottom: 0;
4248
4564
  }
4249
4565
 
4250
- [data-theme="light"] .smart-context-option {
4566
+ [data-theme="light"] .project-context-row .git-branch-trigger {
4567
+ background: #f1f5f9;
4568
+ border-color: rgba(15, 23, 42, 0.1);
4251
4569
  color: #334155;
4252
4570
  }
4253
4571
 
4254
- [data-theme="light"] .smart-context-option.is-active {
4572
+ [data-theme="light"] .project-context-row .git-branch-trigger:hover,
4573
+ [data-theme="light"] .project-context-row .git-branch-trigger[aria-expanded='true'] {
4574
+ background: #e2e8f0;
4575
+ border-color: rgba(15, 23, 42, 0.18);
4255
4576
  color: #0f172a;
4256
- border-color: color-mix(in srgb, var(--accent) 38%, transparent);
4257
- background: color-mix(in srgb, var(--accent) 10%, white);
4258
4577
  }
4259
4578
 
4260
- [data-theme="light"] .slider {
4261
- background-color: #cbd5e1;
4579
+ [data-theme="light"] .git-branch-menu {
4580
+ background: #ffffff;
4581
+ border-color: rgba(15, 23, 42, 0.12);
4582
+ box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.05);
4262
4583
  }
4263
4584
 
4264
- [data-theme="light"] .input-disclaimer {
4265
- color: #475569;
4266
- opacity: 1;
4585
+ [data-theme="light"] .git-branch-search {
4586
+ background: #f8fafc;
4587
+ border-color: rgba(15, 23, 42, 0.1);
4267
4588
  }
4268
4589
 
4269
- [data-theme="light"] #chat-tool-btn,
4270
- [data-theme="light"] #screen-capture-btn {
4590
+ [data-theme="light"] .git-branch-option:hover,
4591
+ [data-theme="light"] .git-branch-actions button:hover {
4592
+ background: #f1f5f9;
4593
+ }
4594
+
4595
+ [data-theme="light"] .git-branch-option[aria-selected='true'] {
4596
+ background: #e2e8f0;
4597
+ border-color: rgba(15, 23, 42, 0.18);
4598
+ }
4599
+
4600
+ [data-theme="light"] .git-graph-output {
4601
+ background: #f8fafc;
4602
+ border-color: rgba(15, 23, 42, 0.1);
4603
+ }
4604
+
4605
+ [data-theme="light"] .smart-context-bar,
4606
+ [data-theme="light"] #chat-form {
4607
+ background: #ffffff;
4608
+ border-color: rgba(15, 23, 42, 0.16);
4609
+ box-shadow: none;
4610
+ }
4611
+
4612
+ [data-theme="light"] .smart-context-bar {
4613
+ border-bottom: 0;
4614
+ }
4615
+
4616
+ [data-theme="light"] .smart-context-option {
4617
+ color: #334155;
4618
+ }
4619
+
4620
+ [data-theme="light"] .smart-context-option.is-active {
4621
+ color: #0f172a;
4622
+ border-color: color-mix(in srgb, var(--accent) 38%, transparent);
4623
+ background: color-mix(in srgb, var(--accent) 10%, white);
4624
+ }
4625
+
4626
+ [data-theme="light"] .slider {
4627
+ background-color: #cbd5e1;
4628
+ }
4629
+
4630
+ [data-theme="light"] .input-disclaimer {
4631
+ color: #475569;
4632
+ opacity: 1;
4633
+ }
4634
+
4635
+ [data-theme="light"] #chat-tool-btn,
4636
+ [data-theme="light"] #screen-capture-btn {
4271
4637
  background: #f1f5f9;
4272
4638
  border: 1px solid rgba(15, 23, 42, 0.1);
4273
4639
  color: #334155;
@@ -4285,3 +4651,657 @@ input:checked + .slider:before {
4285
4651
  color: #e1e1e1;
4286
4652
  }
4287
4653
 
4654
+ .chat-artifact-open-btn:hover {
4655
+ background: color-mix(in srgb, var(--text-main, #ffffff) 14%, transparent) !important;
4656
+ border-color: var(--border-light, var(--border)) !important;
4657
+ }
4658
+
4659
+ /* Inline Message Editing */
4660
+ .inline-edit-container {
4661
+ display: flex;
4662
+ flex-direction: column;
4663
+ width: 100%;
4664
+ min-width: 300px;
4665
+ max-width: 680px;
4666
+ gap: 8px;
4667
+ margin-bottom: 4px;
4668
+ }
4669
+
4670
+ .inline-edit-textarea {
4671
+ width: 100%;
4672
+ min-height: 58px;
4673
+ max-height: 400px;
4674
+ padding: 12px 14px;
4675
+ font: inherit;
4676
+ font-size: 0.95rem;
4677
+ line-height: 1.5;
4678
+ color: var(--text-main, #ffffff);
4679
+ background: var(--bg-surface-raised, #18181b);
4680
+ border: 1px solid var(--accent);
4681
+ border-radius: var(--radius-xl, 14px);
4682
+ box-shadow: 0 0 0 1px color-mix(in srgb, var(--accent) 30%, transparent), 0 4px 12px rgba(0, 0, 0, 0.15);
4683
+ resize: none;
4684
+ outline: none;
4685
+ box-sizing: border-box;
4686
+ transition: border-color 0.15s ease, box-shadow 0.15s ease;
4687
+ }
4688
+
4689
+ .inline-edit-textarea:focus {
4690
+ border-color: var(--accent);
4691
+ box-shadow: 0 0 0 2px color-mix(in srgb, var(--accent) 45%, transparent), 0 4px 16px rgba(0, 0, 0, 0.2);
4692
+ }
4693
+
4694
+ .inline-edit-footer {
4695
+ display: flex;
4696
+ align-items: center;
4697
+ justify-content: space-between;
4698
+ gap: 12px;
4699
+ padding: 0 2px;
4700
+ }
4701
+
4702
+ .inline-edit-hint {
4703
+ color: var(--text-muted, #71717a);
4704
+ font-size: 0.72rem;
4705
+ letter-spacing: 0.01em;
4706
+ user-select: none;
4707
+ }
4708
+
4709
+ .inline-edit-actions {
4710
+ display: flex;
4711
+ align-items: center;
4712
+ gap: 8px;
4713
+ }
4714
+
4715
+ .inline-edit-btn {
4716
+ display: inline-flex;
4717
+ align-items: center;
4718
+ justify-content: center;
4719
+ padding: 6px 14px;
4720
+ font-size: 0.8rem;
4721
+ font-weight: 500;
4722
+ border-radius: var(--radius-md, 8px);
4723
+ cursor: pointer;
4724
+ transition: all 0.15s ease;
4725
+ border: 1px solid transparent;
4726
+ line-height: 1.2;
4727
+ }
4728
+
4729
+ .inline-edit-btn.cancel {
4730
+ background: transparent;
4731
+ border-color: var(--border, rgba(255, 255, 255, 0.15));
4732
+ color: var(--text-soft, var(--text-muted, #a1a1aa));
4733
+ }
4734
+
4735
+ .inline-edit-btn.cancel:hover {
4736
+ background: var(--bg-surface-soft, rgba(255, 255, 255, 0.08));
4737
+ color: var(--text-main, #ffffff);
4738
+ }
4739
+
4740
+ .inline-edit-btn.submit {
4741
+ background: var(--accent);
4742
+ color: var(--text-on-accent, #ffffff);
4743
+ box-shadow: 0 2px 8px color-mix(in srgb, var(--accent) 35%, transparent);
4744
+ }
4745
+
4746
+ .inline-edit-btn.submit:hover:not(:disabled) {
4747
+ filter: brightness(1.1);
4748
+ transform: translateY(-1px);
4749
+ }
4750
+
4751
+ .inline-edit-btn.submit:disabled {
4752
+ opacity: 0.45;
4753
+ cursor: not-allowed;
4754
+ transform: none;
4755
+ }
4756
+
4757
+ /* Modern Developer-Centric Activity Timeline (Claude Code / Cursor Style) */
4758
+ .modern-activity-history {
4759
+ margin-bottom: 12px;
4760
+ }
4761
+
4762
+ .modern-activity-toggle {
4763
+ display: flex;
4764
+ flex-direction: column;
4765
+ align-items: flex-start;
4766
+ gap: 3px;
4767
+ background: transparent !important;
4768
+ border: none !important;
4769
+ padding: 4px 6px;
4770
+ cursor: pointer;
4771
+ border-radius: var(--radius-xs, 4px);
4772
+ text-align: left;
4773
+ width: 100%;
4774
+ transition: background 0.15s ease;
4775
+ }
4776
+
4777
+ .modern-activity-toggle:hover {
4778
+ background: color-mix(in srgb, var(--panel-soft) 40%, transparent) !important;
4779
+ }
4780
+
4781
+ .modern-activity-header {
4782
+ display: flex;
4783
+ align-items: center;
4784
+ justify-content: space-between;
4785
+ gap: 8px;
4786
+ margin-bottom: 2px;
4787
+ }
4788
+
4789
+ .modern-activity-header-left {
4790
+ display: flex;
4791
+ align-items: center;
4792
+ gap: 6px;
4793
+ }
4794
+
4795
+ .modern-activity-duration {
4796
+ font-size: 0.96rem;
4797
+ font-weight: 500;
4798
+ color: var(--text-soft);
4799
+ letter-spacing: -0.01em;
4800
+ }
4801
+
4802
+ .modern-activity-subheader {
4803
+ display: flex;
4804
+ align-items: center;
4805
+ gap: 6px;
4806
+ font-size: 0.92rem;
4807
+ color: var(--text-muted);
4808
+ user-select: none;
4809
+ padding: 1px 2px;
4810
+ border-radius: var(--radius-xs, 4px);
4811
+ transition: color 0.15s ease;
4812
+ }
4813
+
4814
+ .modern-activity-subheader:hover {
4815
+ color: var(--text-soft);
4816
+ }
4817
+
4818
+ .modern-activity-natural-summary {
4819
+ font-size: 0.92rem;
4820
+ color: var(--text-muted);
4821
+ }
4822
+
4823
+ .modern-activity-subchevron {
4824
+ color: var(--text-muted);
4825
+ transition: transform 0.18s ease;
4826
+ }
4827
+
4828
+ .modern-activity-subchevron.is-open {
4829
+ transform: rotate(180deg);
4830
+ }
4831
+
4832
+ .modern-activity-card {
4833
+ padding: 2px 0 6px 0;
4834
+ border: none !important;
4835
+ background: transparent !important;
4836
+ box-shadow: none !important;
4837
+ }
4838
+
4839
+ .agent-activity-card-history,
4840
+ .modern-activity-content {
4841
+ margin-left: 0 !important;
4842
+ padding: 2px 0 6px 0 !important;
4843
+ border: none !important;
4844
+ box-sizing: border-box;
4845
+ width: 100%;
4846
+ }
4847
+
4848
+ .modern-activity-list {
4849
+ display: flex;
4850
+ flex-direction: column;
4851
+ gap: 3px;
4852
+ padding-top: 4px;
4853
+ margin-left: 12px;
4854
+ padding-left: 8px;
4855
+ border-left: 1.5px solid color-mix(in srgb, var(--border) 60%, transparent);
4856
+ max-width: calc(100% - 12px);
4857
+ box-sizing: border-box;
4858
+ }
4859
+
4860
+ /* 100% Borderless & Transparent Timeline Rows (Eliminating all legacy boxed borders) */
4861
+ .modern-activity-list .agent-activity-item,
4862
+ .modern-activity-list .agent-activity-group,
4863
+ .modern-activity-list .agent-activity-thought-step,
4864
+ .modern-timeline-group,
4865
+ .modern-timeline-thought-item {
4866
+ border: none !important;
4867
+ background: transparent !important;
4868
+ box-shadow: none !important;
4869
+ border-radius: var(--radius-xs, 4px) !important;
4870
+ overflow: visible !important;
4871
+ margin: 0 !important;
4872
+ }
4873
+
4874
+ .modern-timeline-row {
4875
+ display: flex;
4876
+ align-items: center;
4877
+ gap: 9px;
4878
+ min-height: 28px;
4879
+ padding: 3px 6px;
4880
+ border-radius: var(--radius-xs, 4px);
4881
+ font-size: 0.94rem;
4882
+ line-height: 1.45;
4883
+ color: var(--text-soft);
4884
+ transition: background 0.12s ease, color 0.12s ease;
4885
+ user-select: none;
4886
+ border: none !important;
4887
+ background: transparent !important;
4888
+ }
4889
+
4890
+ .modern-timeline-row:hover {
4891
+ background: color-mix(in srgb, var(--panel-soft) 50%, transparent) !important;
4892
+ color: var(--text-main);
4893
+ }
4894
+
4895
+ .modern-activity-list .agent-activity-thought-header,
4896
+ .modern-activity-list .agent-activity-group-header,
4897
+ .modern-thought-row,
4898
+ .modern-group-row {
4899
+ border: none !important;
4900
+ background: transparent !important;
4901
+ min-height: 28px !important;
4902
+ padding: 3px 6px !important;
4903
+ box-shadow: none !important;
4904
+ border-radius: var(--radius-xs, 4px) !important;
4905
+ }
4906
+
4907
+ .modern-activity-list .agent-activity-thought-header:hover,
4908
+ .modern-activity-list .agent-activity-group-header:hover,
4909
+ .modern-thought-row:hover,
4910
+ .modern-group-row:hover {
4911
+ background: color-mix(in srgb, var(--panel-soft) 50%, transparent) !important;
4912
+ }
4913
+
4914
+ .modern-timeline-verb {
4915
+ font-size: 0.92rem;
4916
+ font-weight: 500;
4917
+ color: var(--text-muted);
4918
+ flex-shrink: 0;
4919
+ min-width: 48px;
4920
+ }
4921
+
4922
+ .modern-timeline-icon-wrap {
4923
+ display: inline-flex;
4924
+ align-items: center;
4925
+ justify-content: center;
4926
+ width: 17px;
4927
+ height: 17px;
4928
+ flex-shrink: 0;
4929
+ }
4930
+
4931
+ .modern-timeline-target {
4932
+ flex: 1;
4933
+ min-width: 0;
4934
+ display: flex;
4935
+ align-items: center;
4936
+ gap: 6px;
4937
+ overflow: hidden;
4938
+ text-overflow: ellipsis;
4939
+ white-space: nowrap;
4940
+ font-size: 0.94rem;
4941
+ font-weight: 450;
4942
+ color: var(--text-main);
4943
+ }
4944
+
4945
+ .modern-timeline-line-range {
4946
+ font-family: var(--font-mono, monospace);
4947
+ font-size: 0.85rem;
4948
+ color: var(--text-muted);
4949
+ margin-left: 2px;
4950
+ flex-shrink: 0;
4951
+ }
4952
+
4953
+ .modern-timeline-diff-stats {
4954
+ display: inline-flex;
4955
+ align-items: center;
4956
+ gap: 5px;
4957
+ font-family: var(--font-mono, monospace);
4958
+ font-size: 0.88rem;
4959
+ font-weight: 500;
4960
+ margin-left: 6px;
4961
+ flex-shrink: 0;
4962
+ }
4963
+
4964
+ .diff-stat-add {
4965
+ color: #4ade80;
4966
+ }
4967
+
4968
+ .diff-stat-del {
4969
+ color: #f87171;
4970
+ }
4971
+
4972
+ .modern-timeline-status-col {
4973
+ display: inline-flex;
4974
+ align-items: center;
4975
+ gap: 6px;
4976
+ margin-left: auto;
4977
+ flex-shrink: 0;
4978
+ }
4979
+
4980
+ .modern-timeline-count-badge {
4981
+ display: inline-flex;
4982
+ align-items: center;
4983
+ justify-content: center;
4984
+ padding: 0 6px;
4985
+ min-width: 18px;
4986
+ height: 18px;
4987
+ font-size: 0.74rem;
4988
+ font-weight: 600;
4989
+ border-radius: 9999px;
4990
+ background: color-mix(in srgb, var(--panel-soft) 70%, transparent);
4991
+ color: var(--text-muted);
4992
+ }
4993
+
4994
+ .modern-timeline-chevron {
4995
+ color: var(--text-muted);
4996
+ transition: transform 0.18s ease;
4997
+ flex-shrink: 0;
4998
+ }
4999
+
5000
+ .modern-timeline-chevron.inline-chevron {
5001
+ margin-left: 4px;
5002
+ }
5003
+
5004
+ .modern-timeline-chevron.is-open {
5005
+ transform: rotate(90deg);
5006
+ }
5007
+
5008
+ .modern-timeline-thought-item {
5009
+ display: flex;
5010
+ flex-direction: column;
5011
+ }
5012
+
5013
+ .modern-thought-row {
5014
+ cursor: pointer;
5015
+ display: flex;
5016
+ align-items: center;
5017
+ }
5018
+
5019
+ .modern-timeline-thought-label {
5020
+ font-size: 0.92rem;
5021
+ color: var(--text-muted);
5022
+ font-weight: 500;
5023
+ display: inline-flex;
5024
+ align-items: center;
5025
+ gap: 5px;
5026
+ }
5027
+
5028
+ .modern-activity-list .agent-activity-thought-body,
5029
+ .modern-thought-body {
5030
+ margin-left: 14px !important;
5031
+ margin-top: 3px !important;
5032
+ margin-bottom: 6px !important;
5033
+ padding: 4px 10px 4px 14px !important;
5034
+ border: none !important;
5035
+ background: transparent !important;
5036
+ border-left: 2px solid color-mix(in srgb, var(--text-muted) 35%, transparent) !important;
5037
+ border-radius: 0 !important;
5038
+ color: var(--text-muted) !important;
5039
+ font-size: 0.90rem !important;
5040
+ line-height: 1.55;
5041
+ max-height: 380px;
5042
+ overflow-y: auto;
5043
+ }
5044
+
5045
+ .modern-thought-body .chat-formatted-body {
5046
+ font-size: 0.90rem;
5047
+ line-height: 1.55;
5048
+ color: var(--text-muted);
5049
+ gap: 6px;
5050
+ }
5051
+
5052
+ .modern-thought-body .chat-paragraph {
5053
+ font-size: 0.90rem;
5054
+ line-height: 1.55;
5055
+ color: var(--text-muted);
5056
+ margin-bottom: 6px;
5057
+ }
5058
+
5059
+ .modern-thought-body .chat-heading {
5060
+ font-size: 0.96rem;
5061
+ font-weight: 600;
5062
+ color: var(--text-main);
5063
+ margin-top: 10px;
5064
+ margin-bottom: 4px;
5065
+ }
5066
+
5067
+ .modern-thought-body .chat-heading-1 {
5068
+ font-size: 1.05rem;
5069
+ }
5070
+
5071
+ .modern-thought-body .chat-heading-2 {
5072
+ font-size: 0.98rem;
5073
+ }
5074
+
5075
+ .modern-thought-body .chat-heading-3 {
5076
+ font-size: 0.92rem;
5077
+ }
5078
+
5079
+ .modern-thought-body .chat-list-item {
5080
+ font-size: 0.90rem;
5081
+ line-height: 1.5;
5082
+ margin: 2px 0 2px 4px;
5083
+ color: var(--text-muted);
5084
+ }
5085
+
5086
+ .modern-thought-body blockquote {
5087
+ border-left: 2px solid var(--accent);
5088
+ padding: 4px 10px;
5089
+ margin: 6px 0;
5090
+ background: color-mix(in srgb, var(--accent) 8%, transparent);
5091
+ border-radius: var(--radius-xs, 4px);
5092
+ color: var(--text-soft);
5093
+ font-size: 0.88rem;
5094
+ }
5095
+
5096
+ .modern-timeline-output {
5097
+ margin: 3px 0 6px 14px;
5098
+ padding: 8px 12px;
5099
+ background: color-mix(in srgb, var(--bg-surface-raised, #000) 80%, transparent);
5100
+ border-radius: var(--radius-xs, 4px);
5101
+ border: 1px solid var(--border);
5102
+ font-family: var(--font-mono, monospace);
5103
+ font-size: 0.84rem;
5104
+ max-height: 250px;
5105
+ overflow-y: auto;
5106
+ }
5107
+
5108
+ .modern-directory-listing {
5109
+ display: flex;
5110
+ flex-direction: column;
5111
+ gap: 1px;
5112
+ padding: 2px 0;
5113
+ font-family: var(--font-mono, monospace);
5114
+ font-size: 0.82rem;
5115
+ }
5116
+
5117
+ .modern-directory-item {
5118
+ display: flex;
5119
+ align-items: center;
5120
+ gap: 8px;
5121
+ padding: 3px 6px;
5122
+ border-radius: var(--radius-xs, 4px);
5123
+ color: var(--text-soft);
5124
+ transition: background 0.12s ease, color 0.12s ease;
5125
+ user-select: text;
5126
+ }
5127
+
5128
+ .modern-directory-item:hover {
5129
+ background: color-mix(in srgb, var(--accent, #38bdf8) 8%, transparent);
5130
+ color: var(--text-main, #fff);
5131
+ }
5132
+
5133
+ .modern-directory-item:hover .modern-dir-mention-btn {
5134
+ opacity: 1;
5135
+ }
5136
+
5137
+ .modern-directory-item-icon {
5138
+ width: 15px;
5139
+ height: 15px;
5140
+ flex-shrink: 0;
5141
+ display: inline-flex;
5142
+ align-items: center;
5143
+ justify-content: center;
5144
+ }
5145
+
5146
+ .modern-directory-item-icon img {
5147
+ width: 15px;
5148
+ height: 15px;
5149
+ object-fit: contain;
5150
+ }
5151
+
5152
+ .modern-directory-item-name {
5153
+ flex: 1;
5154
+ min-width: 0;
5155
+ overflow: hidden;
5156
+ text-overflow: ellipsis;
5157
+ white-space: nowrap;
5158
+ }
5159
+
5160
+ .modern-directory-item.is-directory .modern-directory-item-name {
5161
+ color: var(--text-main, #eee);
5162
+ font-weight: 500;
5163
+ }
5164
+
5165
+ .modern-directory-item-size {
5166
+ flex-shrink: 0;
5167
+ font-size: 0.74rem;
5168
+ color: var(--text-muted);
5169
+ font-variant-numeric: tabular-nums;
5170
+ margin-left: auto;
5171
+ }
5172
+
5173
+ .modern-dir-mention-btn {
5174
+ opacity: 0;
5175
+ transition: opacity 0.12s ease;
5176
+ font-size: 0.72rem;
5177
+ padding: 0 4px;
5178
+ height: 18px;
5179
+ margin-left: 4px;
5180
+ }
5181
+
5182
+ .modern-directory-empty {
5183
+ color: var(--text-muted);
5184
+ font-style: italic;
5185
+ padding: 4px 6px;
5186
+ }
5187
+
5188
+ .modern-activity-list .agent-activity-group-subitems,
5189
+ .modern-group-subitems {
5190
+ background: transparent !important;
5191
+ border: none !important;
5192
+ border-top: none !important;
5193
+ border-left: 1px solid color-mix(in srgb, var(--border) 60%, transparent) !important;
5194
+ padding: 2px 0 2px 8px !important;
5195
+ margin-left: 14px !important;
5196
+ margin-top: 2px !important;
5197
+ margin-bottom: 4px !important;
5198
+ }
5199
+
5200
+ /* ==========================================================================
5201
+ Modern Ask-User Completed Activity Card
5202
+ Rendered in the agent activity timeline after questions are answered
5203
+ ========================================================================== */
5204
+ .modern-ask-user-card {
5205
+ margin: 8px 0;
5206
+ padding: 14px 16px;
5207
+ border-radius: var(--radius-lg, 12px);
5208
+ background: var(--surface-subtle, rgba(255, 255, 255, 0.025));
5209
+ border: 1px solid var(--border-subtle, rgba(255, 255, 255, 0.08));
5210
+ display: flex;
5211
+ flex-direction: column;
5212
+ gap: 12px;
5213
+ box-sizing: border-box;
5214
+ width: 100%;
5215
+ text-align: left;
5216
+ }
5217
+
5218
+ .modern-ask-user-header {
5219
+ display: flex;
5220
+ align-items: center;
5221
+ gap: 8px;
5222
+ color: var(--text-muted, #94a3b8);
5223
+ font-size: 0.82rem;
5224
+ font-weight: 500;
5225
+ letter-spacing: -0.01em;
5226
+ user-select: none;
5227
+ }
5228
+
5229
+ .modern-ask-user-header-icon {
5230
+ display: inline-flex;
5231
+ align-items: center;
5232
+ justify-content: center;
5233
+ color: var(--text-muted, #94a3b8);
5234
+ flex-shrink: 0;
5235
+ }
5236
+
5237
+ .modern-ask-user-header-text {
5238
+ line-height: 1;
5239
+ color: var(--text-muted, #94a3b8);
5240
+ }
5241
+
5242
+ .modern-ask-user-items {
5243
+ display: flex;
5244
+ flex-direction: column;
5245
+ gap: 0;
5246
+ }
5247
+
5248
+ .modern-ask-user-item {
5249
+ display: flex;
5250
+ flex-direction: column;
5251
+ gap: 5px;
5252
+ }
5253
+
5254
+ .modern-ask-user-item + .modern-ask-user-item {
5255
+ margin-top: 14px;
5256
+ padding-top: 14px;
5257
+ border-top: 1px solid var(--border-subtle, rgba(255, 255, 255, 0.08));
5258
+ }
5259
+
5260
+ .modern-ask-user-question {
5261
+ color: var(--text-main, #f4f4f5);
5262
+ font-size: 0.86rem;
5263
+ font-weight: 500;
5264
+ line-height: 1.45;
5265
+ word-break: break-word;
5266
+ }
5267
+
5268
+ .modern-ask-user-answer {
5269
+ color: var(--text-soft, #a1a1aa);
5270
+ font-size: 0.82rem;
5271
+ line-height: 1.48;
5272
+ word-break: break-word;
5273
+ }
5274
+
5275
+ /* Light theme overrides */
5276
+ [data-theme='light'] .modern-ask-user-card,
5277
+ body.light-theme .modern-ask-user-card {
5278
+ background: var(--surface-subtle, rgba(0, 0, 0, 0.02));
5279
+ border-color: var(--border-subtle, rgba(0, 0, 0, 0.08));
5280
+ }
5281
+
5282
+ [data-theme='light'] .modern-ask-user-item + .modern-ask-user-item,
5283
+ body.light-theme .modern-ask-user-item + .modern-ask-user-item {
5284
+ border-top-color: var(--border-subtle, rgba(0, 0, 0, 0.08));
5285
+ }
5286
+
5287
+ [data-theme='light'] .modern-ask-user-question,
5288
+ body.light-theme .modern-ask-user-question {
5289
+ color: var(--text-main, #0f172a);
5290
+ }
5291
+
5292
+ [data-theme='light'] .modern-ask-user-answer,
5293
+ body.light-theme .modern-ask-user-answer {
5294
+ color: var(--text-soft, #475569);
5295
+ }
5296
+
5297
+ [data-theme='light'] .modern-ask-user-header,
5298
+ body.light-theme .modern-ask-user-header,
5299
+ [data-theme='light'] .modern-ask-user-header-icon,
5300
+ body.light-theme .modern-ask-user-header-icon,
5301
+ [data-theme='light'] .modern-ask-user-header-text,
5302
+ body.light-theme .modern-ask-user-header-text {
5303
+ color: var(--text-muted, #64748b);
5304
+ }
5305
+
5306
+
5307
+