lemma-sdk 0.2.28 → 0.2.31

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 (122) hide show
  1. package/README.md +241 -201
  2. package/bin/lemma-sdk.js +108 -0
  3. package/dist/browser/lemma-client.js +125 -4
  4. package/dist/client.d.ts +2 -0
  5. package/dist/client.js +3 -0
  6. package/dist/config.d.ts +2 -2
  7. package/dist/config.js +2 -2
  8. package/dist/datastore-query.d.ts +54 -0
  9. package/dist/datastore-query.js +157 -0
  10. package/dist/index.d.ts +7 -0
  11. package/dist/index.js +3 -0
  12. package/dist/namespaces/datastore.d.ts +9 -0
  13. package/dist/namespaces/datastore.js +13 -0
  14. package/dist/namespaces/records.d.ts +1 -1
  15. package/dist/openapi_client/index.d.ts +4 -0
  16. package/dist/openapi_client/index.js +1 -0
  17. package/dist/openapi_client/models/ConvertedArtifactResponse.d.ts +6 -0
  18. package/dist/openapi_client/models/ConvertedFileResponse.d.ts +10 -0
  19. package/dist/openapi_client/models/ConvertedFileResponse.js +1 -0
  20. package/dist/openapi_client/models/CreateFolderRequest.d.ts +3 -1
  21. package/dist/openapi_client/models/FlowRunEntity.d.ts +1 -0
  22. package/dist/openapi_client/models/ScheduledFlowStart.d.ts +3 -6
  23. package/dist/openapi_client/models/ScheduledFlowStartType.d.ts +4 -0
  24. package/dist/openapi_client/models/ScheduledFlowStartType.js +9 -0
  25. package/dist/openapi_client/models/WorkflowInstallRequest.d.ts +5 -0
  26. package/dist/openapi_client/models/WorkflowTimeInstallConfig.d.ts +19 -0
  27. package/dist/openapi_client/models/WorkflowTimeInstallConfig.js +1 -0
  28. package/dist/openapi_client/services/FilesService.d.ts +27 -1
  29. package/dist/openapi_client/services/FilesService.js +69 -1
  30. package/dist/openapi_client/services/WorkflowsService.d.ts +1 -1
  31. package/dist/openapi_client/services/WorkflowsService.js +1 -1
  32. package/dist/react/assistant-output.d.ts +6 -0
  33. package/dist/react/assistant-output.js +90 -0
  34. package/dist/react/index.d.ts +62 -8
  35. package/dist/react/index.js +31 -4
  36. package/dist/react/useAgentInputSchema.d.ts +19 -0
  37. package/dist/react/useAgentInputSchema.js +73 -0
  38. package/dist/react/useAgentRun.d.ts +17 -0
  39. package/dist/react/useAgentRun.js +56 -0
  40. package/dist/react/useAgentRuns.d.ts +33 -0
  41. package/dist/react/useAgentRuns.js +149 -0
  42. package/dist/react/useAssistantRun.d.ts +9 -0
  43. package/dist/react/useAssistantRun.js +28 -17
  44. package/dist/react/useAssistantSession.d.ts +5 -0
  45. package/dist/react/useAssistantSession.js +135 -86
  46. package/dist/react/useBulkRecords.d.ts +20 -0
  47. package/dist/react/useBulkRecords.js +65 -0
  48. package/dist/react/useConversation.d.ts +18 -0
  49. package/dist/react/useConversation.js +75 -0
  50. package/dist/react/useConversationMessages.d.ts +59 -0
  51. package/dist/react/useConversationMessages.js +167 -0
  52. package/dist/react/useConversations.d.ts +52 -0
  53. package/dist/react/useConversations.js +228 -0
  54. package/dist/react/useCreateRecord.d.ts +18 -0
  55. package/dist/react/useCreateRecord.js +51 -0
  56. package/dist/react/useCurrentUser.d.ts +14 -0
  57. package/dist/react/useCurrentUser.js +68 -0
  58. package/dist/react/useDeleteRecord.d.ts +21 -0
  59. package/dist/react/useDeleteRecord.js +52 -0
  60. package/dist/react/useFlowRunHistory.js +1 -5
  61. package/dist/react/useFlowSession.js +41 -33
  62. package/dist/react/useForeignKeyOptions.d.ts +31 -0
  63. package/dist/react/useForeignKeyOptions.js +161 -0
  64. package/dist/react/useFunctionRun.d.ts +19 -0
  65. package/dist/react/useFunctionRun.js +30 -0
  66. package/dist/react/useFunctionRuns.d.ts +33 -0
  67. package/dist/react/useFunctionRuns.js +149 -0
  68. package/dist/react/useFunctionSession.js +37 -29
  69. package/dist/react/useJoinedRecords.d.ts +18 -0
  70. package/dist/react/useJoinedRecords.js +80 -0
  71. package/dist/react/useMembers.d.ts +26 -0
  72. package/dist/react/useMembers.js +98 -0
  73. package/dist/react/useOrganizationMembers.d.ts +26 -0
  74. package/dist/react/useOrganizationMembers.js +113 -0
  75. package/dist/react/usePodAccess.d.ts +22 -0
  76. package/dist/react/usePodAccess.js +128 -0
  77. package/dist/react/useRecord.d.ts +18 -0
  78. package/dist/react/useRecord.js +75 -0
  79. package/dist/react/useRecordForm.d.ts +42 -0
  80. package/dist/react/useRecordForm.js +221 -0
  81. package/dist/react/useRecordSchema.d.ts +20 -0
  82. package/dist/react/useRecordSchema.js +24 -0
  83. package/dist/react/useRecords.d.ts +20 -0
  84. package/dist/react/useRecords.js +146 -0
  85. package/dist/react/useRelatedRecords.d.ts +43 -0
  86. package/dist/react/useRelatedRecords.js +239 -0
  87. package/dist/react/useReverseRelatedRecords.d.ts +47 -0
  88. package/dist/react/useReverseRelatedRecords.js +235 -0
  89. package/dist/react/useSchemaForm.d.ts +24 -0
  90. package/dist/react/useSchemaForm.js +104 -0
  91. package/dist/react/useTable.d.ts +16 -0
  92. package/dist/react/useTable.js +70 -0
  93. package/dist/react/useTables.d.ts +26 -0
  94. package/dist/react/useTables.js +113 -0
  95. package/dist/react/useTaskSession.js +11 -22
  96. package/dist/react/useUpdateRecord.d.ts +21 -0
  97. package/dist/react/useUpdateRecord.js +55 -0
  98. package/dist/react/useWorkflowResume.d.ts +18 -0
  99. package/dist/react/useWorkflowResume.js +45 -0
  100. package/dist/react/useWorkflowRun.d.ts +21 -0
  101. package/dist/react/useWorkflowRun.js +49 -0
  102. package/dist/react/useWorkflowRuns.d.ts +33 -0
  103. package/dist/react/useWorkflowRuns.js +149 -0
  104. package/dist/react/useWorkflowStart.d.ts +33 -0
  105. package/dist/react/useWorkflowStart.js +148 -0
  106. package/dist/react/utils.d.ts +5 -0
  107. package/dist/react/utils.js +25 -0
  108. package/dist/record-form.d.ts +30 -0
  109. package/dist/record-form.js +199 -0
  110. package/dist/schema-form.d.ts +41 -0
  111. package/dist/schema-form.js +200 -0
  112. package/dist/types.d.ts +6 -1
  113. package/package.json +11 -8
  114. package/dist/react/components/AssistantChrome.d.ts +0 -86
  115. package/dist/react/components/AssistantChrome.js +0 -48
  116. package/dist/react/components/AssistantEmbedded.d.ts +0 -10
  117. package/dist/react/components/AssistantEmbedded.js +0 -15
  118. package/dist/react/components/AssistantExperience.d.ts +0 -96
  119. package/dist/react/components/AssistantExperience.js +0 -1294
  120. package/dist/react/components/assistant-types.d.ts +0 -80
  121. package/dist/react/styles.css +0 -2407
  122. /package/dist/{react/components/assistant-types.js → openapi_client/models/ConvertedArtifactResponse.js} +0 -0
@@ -1,2407 +0,0 @@
1
- .lemma-assistant-theme {
2
- color-scheme: light;
3
- --bg-canvas: #f5f7fb;
4
- --bg-surface: #ffffff;
5
- --bg-subtle: #f3f4f6;
6
- --border-default: #d4dae5;
7
- --border-subtle: #e6ebf2;
8
- --text-primary: #111827;
9
- --text-secondary: #374151;
10
- --text-tertiary: #6b7280;
11
- --text-inverse: #ffffff;
12
- --text-on-brand: #ffffff;
13
- --brand-primary: #1d4ed8;
14
- --brand-secondary: #1e3a8a;
15
- --brand-accent: #2563eb;
16
- --brand-glow: #dbeafe;
17
- --state-success: #15803d;
18
- --state-error: #b91c1c;
19
- --state-info: #1d4ed8;
20
- --state-warning: #b45309;
21
- --shadow-xs: 0 1px 2px rgba(15, 23, 42, 0.08);
22
- --assistant-radius-shell: 6px;
23
- --assistant-radius-item: 4px;
24
- --assistant-radius-bubble: 4px;
25
- --assistant-radius-inline: 3px;
26
- --shadow-sm: 0 2px 6px rgba(15, 23, 42, 0.08);
27
- --shadow-md: 0 6px 16px rgba(15, 23, 42, 0.1);
28
- --shadow-lg: 0 8px 24px rgba(15, 23, 42, 0.12);
29
- color: var(--text-primary);
30
- font-family:
31
- "Inter",
32
- "Segoe UI",
33
- ui-sans-serif,
34
- system-ui,
35
- -apple-system,
36
- BlinkMacSystemFont,
37
- sans-serif;
38
- font-size: 16px;
39
- line-height: 1.5;
40
- }
41
-
42
- .lemma-assistant-theme,
43
- .lemma-assistant-theme * {
44
- box-sizing: border-box;
45
- }
46
-
47
- .lemma-assistant-theme button,
48
- .lemma-assistant-theme input,
49
- .lemma-assistant-theme select,
50
- .lemma-assistant-theme textarea {
51
- font: inherit;
52
- }
53
-
54
- .lemma-assistant-theme a {
55
- color: inherit;
56
- }
57
-
58
- .lemma-assistant-theme textarea::placeholder,
59
- .lemma-assistant-theme input::placeholder {
60
- color: var(--text-tertiary);
61
- }
62
-
63
- @media (prefers-color-scheme: dark) {
64
- .lemma-assistant-theme:not([data-lemma-theme="light"]):not([data-lemma-theme="dark"]),
65
- .lemma-assistant-theme[data-lemma-theme="auto"] {
66
- color-scheme: dark;
67
- --bg-canvas: #0f172a;
68
- --bg-surface: #111827;
69
- --bg-subtle: #1f2937;
70
- --border-default: #334155;
71
- --border-subtle: #273448;
72
- --text-primary: #f8fafc;
73
- --text-secondary: #d1d5db;
74
- --text-tertiary: #94a3b8;
75
- --text-inverse: #0f172a;
76
- --text-on-brand: #ffffff;
77
- --brand-primary: #2563eb;
78
- --brand-secondary: #1d4ed8;
79
- --brand-accent: #60a5fa;
80
- --brand-glow: rgba(30, 64, 175, 0.24);
81
- --state-success: #4ade80;
82
- --state-error: #f87171;
83
- --state-info: #60a5fa;
84
- --state-warning: #fbbf24;
85
- --shadow-xs: 0 1px 2px rgba(2, 6, 23, 0.35);
86
- --shadow-sm: 0 2px 8px rgba(2, 6, 23, 0.35);
87
- --shadow-md: 0 8px 20px rgba(2, 6, 23, 0.45);
88
- --shadow-lg: 0 12px 28px rgba(2, 6, 23, 0.55);
89
- }
90
- }
91
-
92
- :where(.light, [data-theme="light"], [data-color-scheme="light"], [data-mode="light"]) .lemma-assistant-theme:not([data-lemma-theme="dark"]),
93
- .lemma-assistant-theme[data-lemma-theme="light"] {
94
- color-scheme: light;
95
- --bg-canvas: #f5f7fb;
96
- --bg-surface: #ffffff;
97
- --bg-subtle: #f3f4f6;
98
- --border-default: #d4dae5;
99
- --border-subtle: #e6ebf2;
100
- --text-primary: #111827;
101
- --text-secondary: #374151;
102
- --text-tertiary: #6b7280;
103
- --text-inverse: #ffffff;
104
- --text-on-brand: #ffffff;
105
- --brand-primary: #1d4ed8;
106
- --brand-secondary: #1e3a8a;
107
- --brand-accent: #2563eb;
108
- --brand-glow: #dbeafe;
109
- --state-success: #15803d;
110
- --state-error: #b91c1c;
111
- --state-info: #1d4ed8;
112
- --state-warning: #b45309;
113
- --shadow-xs: 0 1px 2px rgba(15, 23, 42, 0.08);
114
- --assistant-radius-shell: 6px;
115
- --assistant-radius-item: 4px;
116
- --assistant-radius-bubble: 4px;
117
- --assistant-radius-inline: 3px;
118
- --shadow-sm: 0 2px 6px rgba(15, 23, 42, 0.08);
119
- --shadow-md: 0 6px 16px rgba(15, 23, 42, 0.1);
120
- --shadow-lg: 0 8px 24px rgba(15, 23, 42, 0.12);
121
- }
122
-
123
- :where(.dark, [data-theme="dark"], [data-color-scheme="dark"], [data-mode="dark"]) .lemma-assistant-theme:not([data-lemma-theme="light"]),
124
- .lemma-assistant-theme[data-lemma-theme="dark"] {
125
- color-scheme: dark;
126
- --bg-canvas: #0f172a;
127
- --bg-surface: #111827;
128
- --bg-subtle: #1f2937;
129
- --border-default: #334155;
130
- --border-subtle: #273448;
131
- --text-primary: #f8fafc;
132
- --text-secondary: #d1d5db;
133
- --text-tertiary: #94a3b8;
134
- --text-inverse: #0f172a;
135
- --text-on-brand: #ffffff;
136
- --brand-primary: #2563eb;
137
- --brand-secondary: #1d4ed8;
138
- --brand-accent: #60a5fa;
139
- --brand-glow: rgba(30, 64, 175, 0.24);
140
- --state-success: #4ade80;
141
- --state-error: #f87171;
142
- --state-info: #60a5fa;
143
- --state-warning: #fbbf24;
144
- --shadow-xs: 0 1px 2px rgba(2, 6, 23, 0.35);
145
- --shadow-sm: 0 2px 8px rgba(2, 6, 23, 0.35);
146
- --shadow-md: 0 8px 20px rgba(2, 6, 23, 0.45);
147
- --shadow-lg: 0 12px 28px rgba(2, 6, 23, 0.55);
148
- }
149
-
150
- .lemma-assistant-embedded {
151
- display: flex;
152
- flex-direction: column;
153
- min-height: 0;
154
- height: 100%;
155
- }
156
-
157
- .lemma-assistant-experience[data-radius="none"] {
158
- --assistant-radius-shell: 0px;
159
- --assistant-radius-item: 0px;
160
- --assistant-radius-bubble: 0px;
161
- --assistant-radius-inline: 0px;
162
- }
163
-
164
- .lemma-assistant-experience[data-radius="sm"] {
165
- --assistant-radius-shell: 6px;
166
- --assistant-radius-item: 4px;
167
- --assistant-radius-bubble: 4px;
168
- --assistant-radius-inline: 3px;
169
- }
170
-
171
- .lemma-assistant-experience[data-radius="md"] {
172
- --assistant-radius-shell: 10px;
173
- --assistant-radius-item: 8px;
174
- --assistant-radius-bubble: 8px;
175
- --assistant-radius-inline: 6px;
176
- }
177
-
178
- .lemma-assistant-experience[data-radius="lg"] {
179
- --assistant-radius-shell: 14px;
180
- --assistant-radius-item: 12px;
181
- --assistant-radius-bubble: 12px;
182
- --assistant-radius-inline: 8px;
183
- }
184
-
185
- .lemma-assistant-experience[data-radius="xl"] {
186
- --assistant-radius-shell: 18px;
187
- --assistant-radius-item: 16px;
188
- --assistant-radius-bubble: 16px;
189
- --assistant-radius-inline: 10px;
190
- }
191
-
192
- .lemma-assistant-markdown {
193
- color: inherit;
194
- line-height: 1.7;
195
- word-break: break-word;
196
- }
197
-
198
- .lemma-assistant-markdown > :first-child {
199
- margin-top: 0;
200
- }
201
-
202
- .lemma-assistant-markdown > :last-child {
203
- margin-bottom: 0;
204
- }
205
-
206
- .lemma-assistant-markdown p,
207
- .lemma-assistant-markdown ul,
208
- .lemma-assistant-markdown ol,
209
- .lemma-assistant-markdown pre,
210
- .lemma-assistant-markdown blockquote,
211
- .lemma-assistant-markdown table,
212
- .lemma-assistant-markdown hr {
213
- margin: 0 0 0.95em;
214
- }
215
-
216
- .lemma-assistant-markdown h1,
217
- .lemma-assistant-markdown h2,
218
- .lemma-assistant-markdown h3,
219
- .lemma-assistant-markdown h4 {
220
- margin: 1.15em 0 0.55em;
221
- line-height: 1.25;
222
- color: var(--text-primary);
223
- }
224
-
225
- .lemma-assistant-markdown h1 {
226
- font-size: 1.4rem;
227
- }
228
-
229
- .lemma-assistant-markdown h2 {
230
- font-size: 1.2rem;
231
- }
232
-
233
- .lemma-assistant-markdown h3 {
234
- font-size: 1.05rem;
235
- }
236
-
237
- .lemma-assistant-markdown h4 {
238
- font-size: 0.95rem;
239
- }
240
-
241
- .lemma-assistant-markdown ul,
242
- .lemma-assistant-markdown ol {
243
- padding-left: 1.35rem;
244
- }
245
-
246
- .lemma-assistant-markdown ul {
247
- list-style: disc;
248
- }
249
-
250
- .lemma-assistant-markdown ol {
251
- list-style: decimal;
252
- }
253
-
254
- .lemma-assistant-markdown li + li {
255
- margin-top: 0.3rem;
256
- }
257
-
258
- .lemma-assistant-markdown li > ul,
259
- .lemma-assistant-markdown li > ol {
260
- margin-top: 0.35rem;
261
- margin-bottom: 0;
262
- }
263
-
264
- .lemma-assistant-markdown a {
265
- color: var(--state-info);
266
- text-decoration: underline;
267
- text-decoration-color: color-mix(in srgb, var(--state-info) 56%, transparent);
268
- text-underline-offset: 0.16em;
269
- }
270
-
271
- .lemma-assistant-markdown a:hover {
272
- color: color-mix(in srgb, var(--state-info) 82%, var(--text-primary));
273
- }
274
-
275
- .lemma-assistant-markdown strong {
276
- color: var(--text-primary);
277
- font-weight: 650;
278
- }
279
-
280
- .lemma-assistant-markdown em {
281
- color: var(--text-secondary);
282
- }
283
-
284
- .lemma-assistant-markdown hr {
285
- border: 0;
286
- border-top: 1px solid color-mix(in srgb, var(--border-default) 88%, transparent);
287
- }
288
-
289
- .lemma-assistant-markdown blockquote {
290
- padding: 0.15rem 0 0.15rem 0.9rem;
291
- border-left: 3px solid color-mix(in srgb, var(--brand-accent) 60%, var(--border-default));
292
- color: var(--text-secondary);
293
- }
294
-
295
- .lemma-assistant-markdown :not(pre) > code {
296
- display: inline-block;
297
- margin: 0 0.08rem;
298
- padding: 0.1rem 0.42rem;
299
- border: 1px solid color-mix(in srgb, var(--border-default) 82%, transparent);
300
- border-radius: var(--assistant-radius-inline);
301
- background: color-mix(in srgb, var(--bg-subtle) 88%, transparent);
302
- color: var(--text-primary);
303
- font-size: 0.92em;
304
- line-height: 1.45;
305
- }
306
-
307
- .lemma-assistant-markdown pre {
308
- overflow-x: auto;
309
- padding: 0.9rem 1rem;
310
- border: 1px solid color-mix(in srgb, var(--border-default) 82%, transparent);
311
- border-radius: var(--assistant-radius-item);
312
- background: color-mix(in srgb, var(--bg-canvas) 74%, var(--bg-surface));
313
- box-shadow: inset 0 1px 0 color-mix(in srgb, var(--bg-surface) 60%, transparent);
314
- }
315
-
316
- .lemma-assistant-markdown pre code {
317
- padding: 0;
318
- border: 0;
319
- background: transparent;
320
- color: inherit;
321
- font-size: 0.92em;
322
- line-height: 1.65;
323
- }
324
-
325
- .lemma-assistant-markdown table {
326
- display: block;
327
- width: 100%;
328
- overflow-x: auto;
329
- border-collapse: separate;
330
- border-spacing: 0;
331
- border: 1px solid color-mix(in srgb, var(--border-default) 82%, transparent);
332
- border-radius: var(--assistant-radius-inline);
333
- background: color-mix(in srgb, var(--bg-surface) 96%, transparent);
334
- }
335
-
336
- .lemma-assistant-markdown thead {
337
- background: color-mix(in srgb, var(--bg-subtle) 76%, transparent);
338
- }
339
-
340
- .lemma-assistant-markdown th,
341
- .lemma-assistant-markdown td {
342
- padding: 0.7rem 0.85rem;
343
- border-bottom: 1px solid color-mix(in srgb, var(--border-default) 72%, transparent);
344
- text-align: left;
345
- vertical-align: top;
346
- }
347
-
348
- .lemma-assistant-markdown tr:last-child td {
349
- border-bottom: 0;
350
- }
351
-
352
- .lemma-assistant-markdown img {
353
- max-width: 100%;
354
- border-radius: var(--assistant-radius-inline);
355
- }
356
-
357
- .lemma-assistant-message-user-bubble .lemma-assistant-markdown,
358
- .lemma-assistant-message-user-bubble .lemma-assistant-markdown h1,
359
- .lemma-assistant-message-user-bubble .lemma-assistant-markdown h2,
360
- .lemma-assistant-message-user-bubble .lemma-assistant-markdown h3,
361
- .lemma-assistant-message-user-bubble .lemma-assistant-markdown h4,
362
- .lemma-assistant-message-user-bubble .lemma-assistant-markdown strong,
363
- .lemma-assistant-message-user-bubble .lemma-assistant-markdown em,
364
- .lemma-assistant-message-user-bubble .lemma-assistant-markdown a,
365
- .lemma-assistant-message-user-bubble .lemma-assistant-markdown code,
366
- .lemma-assistant-message-user-bubble .lemma-assistant-markdown pre code {
367
- color: inherit;
368
- }
369
-
370
- .lemma-assistant-message-user-bubble .lemma-assistant-markdown a {
371
- text-decoration-color: color-mix(in srgb, currentColor 40%, transparent);
372
- }
373
-
374
- .lemma-assistant-message-user-bubble .lemma-assistant-markdown blockquote {
375
- border-left-color: color-mix(in srgb, currentColor 34%, transparent);
376
- color: inherit;
377
- }
378
-
379
- .lemma-assistant-message-user-bubble .lemma-assistant-markdown :not(pre) > code {
380
- border-color: color-mix(in srgb, currentColor 18%, transparent);
381
- background: color-mix(in srgb, currentColor 10%, transparent);
382
- color: inherit;
383
- }
384
-
385
- .lemma-assistant-message-user-bubble .lemma-assistant-markdown pre {
386
- border-color: color-mix(in srgb, currentColor 18%, transparent);
387
- background: color-mix(in srgb, currentColor 8%, transparent);
388
- }
389
-
390
- .lemma-assistant-shell,
391
- .lemma-assistant-experience,
392
- .lemma-assistant-shell-sidebar,
393
- .lemma-assistant-experience-sidebar,
394
- .lemma-assistant-experience-main,
395
- .lemma-assistant-experience-card,
396
- .lemma-assistant-viewport,
397
- .lemma-assistant-experience-viewport {
398
- min-width: 0;
399
- min-height: 0;
400
- }
401
-
402
- .lemma-assistant-shell {
403
- display: flex;
404
- flex-direction: column;
405
- gap: 12px;
406
- }
407
-
408
- .lemma-assistant-shell-sidebar {
409
- display: none;
410
- }
411
-
412
- @media (min-width: 1024px) {
413
- .lemma-assistant-shell.lemma-assistant-shell--with-sidebar.lemma-assistant-shell--sidebar-visible {
414
- display: grid;
415
- grid-template-columns: 280px minmax(0, 1fr);
416
- gap: 12px;
417
- align-items: stretch;
418
- }
419
-
420
- .lemma-assistant-shell.lemma-assistant-shell--with-sidebar.lemma-assistant-shell--sidebar-visible > .lemma-assistant-shell-sidebar {
421
- display: block;
422
- height: 100%;
423
- }
424
- }
425
-
426
- .lemma-assistant-header,
427
- .lemma-assistant-experience-header {
428
- display: flex;
429
- align-items: center;
430
- justify-content: space-between;
431
- gap: 12px;
432
- background: transparent;
433
- border-bottom: 0;
434
- box-shadow: none;
435
- }
436
-
437
-
438
- .lemma-assistant-header[data-tone="default"],
439
- .lemma-assistant-experience-header[data-tone="default"] {
440
- background: var(--bg-surface);
441
- border-bottom: 1px solid var(--border-default);
442
- }
443
-
444
- .lemma-assistant-header[data-tone="flat"],
445
- .lemma-assistant-experience-header[data-tone="flat"] {
446
- background: transparent;
447
- border-bottom: 0;
448
- box-shadow: none;
449
- padding-bottom: 0;
450
- }
451
-
452
- .lemma-assistant-header-copy,
453
- .lemma-assistant-experience-header-copy {
454
- display: flex;
455
- align-items: center;
456
- gap: 10px;
457
- min-width: 0;
458
- }
459
-
460
- .lemma-assistant-header-titles,
461
- .lemma-assistant-experience-header-titles,
462
- .lemma-assistant-conversation-list-copy,
463
- .lemma-assistant-experience-sidebar-copy {
464
- min-width: 0;
465
- }
466
-
467
- .lemma-assistant-header-title,
468
- .lemma-assistant-header-subtitle,
469
- .lemma-assistant-experience-header-title,
470
- .lemma-assistant-experience-header-subtitle {
471
- margin: 0;
472
- }
473
-
474
- .lemma-assistant-header-controls,
475
- .lemma-assistant-experience-header-controls {
476
- display: flex;
477
- align-items: center;
478
- gap: 6px;
479
- flex-wrap: wrap;
480
- justify-content: flex-end;
481
- }
482
-
483
- .lemma-assistant-conversation-list,
484
- .lemma-assistant-experience-sidebar,
485
- .lemma-assistant-experience-card {
486
- background: var(--bg-surface);
487
- border: 1px solid var(--border-default);
488
- border-radius: var(--assistant-radius-shell);
489
- box-shadow: var(--shadow-sm);
490
- }
491
-
492
- .lemma-assistant-conversation-list-header,
493
- .lemma-assistant-experience-sidebar-header {
494
- border-bottom: 1px solid var(--border-default);
495
- }
496
-
497
- .lemma-assistant-conversation-list-header-row,
498
- .lemma-assistant-experience-sidebar-header-row {
499
- display: flex;
500
- align-items: center;
501
- justify-content: space-between;
502
- gap: 12px;
503
- }
504
-
505
- .lemma-assistant-conversation-list-items,
506
- .lemma-assistant-experience-sidebar-items {
507
- flex: 1 1 auto;
508
- min-height: 0;
509
- overflow-y: auto;
510
- }
511
-
512
- .lemma-assistant-conversation-list-item,
513
- .lemma-assistant-experience-sidebar-item {
514
- display: block;
515
- width: 100%;
516
- border-radius: var(--assistant-radius-item);
517
- }
518
-
519
- .lemma-assistant-conversation-list-item-title,
520
- .lemma-assistant-experience-sidebar-item-title {
521
- white-space: nowrap;
522
- overflow: hidden;
523
- text-overflow: ellipsis;
524
- }
525
-
526
- .lemma-assistant-model-picker,
527
- .lemma-assistant-experience-model-picker {
528
- appearance: none;
529
- min-width: 132px;
530
- border-color: color-mix(in srgb, var(--border-default) 86%, transparent);
531
- background: var(--bg-surface);
532
- }
533
-
534
- .lemma-assistant-viewport,
535
- .lemma-assistant-experience-viewport {
536
- overflow-y: auto;
537
- min-height: 0;
538
- }
539
-
540
- .lemma-assistant-viewport-inner {
541
- width: 100%;
542
- max-width: 80rem;
543
- margin: 0 auto;
544
- }
545
-
546
- .lemma-assistant-composer,
547
- .lemma-assistant-experience-composer {
548
- position: relative;
549
- padding: 0;
550
- background: transparent;
551
- border: 0;
552
- border-radius: 0;
553
- box-shadow: none;
554
- }
555
-
556
-
557
- .lemma-assistant-composer[data-tone="subtle"],
558
- .lemma-assistant-experience-composer[data-tone="subtle"] {
559
- background: transparent;
560
- border: 0;
561
- box-shadow: none;
562
- }
563
-
564
- .lemma-assistant-composer[data-tone="flat"],
565
- .lemma-assistant-experience-composer[data-tone="flat"] {
566
- background: transparent;
567
- border: 0;
568
- box-shadow: none;
569
- padding: 0;
570
- }
571
-
572
- .lemma-assistant-composer-floating,
573
- .lemma-assistant-experience-plan {
574
- position: absolute;
575
- left: 0;
576
- right: 0;
577
- bottom: calc(100% + 8px);
578
- z-index: 20;
579
- pointer-events: auto;
580
- }
581
-
582
- .lemma-assistant-composer-status-rail {
583
- min-height: 34px;
584
- }
585
-
586
- .lemma-assistant-composer-status,
587
- .lemma-assistant-experience-status {
588
- min-height: 26px;
589
- }
590
-
591
- .lemma-assistant-composer-pending,
592
- .lemma-assistant-experience-pending {
593
- display: flex;
594
- flex-wrap: wrap;
595
- gap: 6px;
596
- }
597
-
598
- .lemma-assistant-conversation-list-new,
599
- .lemma-assistant-experience-sidebar-new {
600
- border-color: color-mix(in srgb, var(--border-default) 88%, transparent);
601
- }
602
-
603
-
604
- .lemma-assistant-experience-new,
605
- .lemma-assistant-conversation-list-new,
606
- .lemma-assistant-experience-sidebar-new {
607
- background: var(--bg-surface);
608
- border: 1px solid color-mix(in srgb, var(--border-default) 88%, transparent);
609
- }
610
-
611
- .lemma-assistant-experience-new {
612
- border: 1px solid color-mix(in srgb, var(--border-default) 88%, transparent);
613
- }
614
-
615
- .lemma-assistant-experience[data-chrome-style="subtle"] .lemma-assistant-experience-card,
616
- .lemma-assistant-experience[data-chrome-style="subtle"] .lemma-assistant-experience-sidebar {
617
- box-shadow: var(--shadow-sm);
618
- }
619
-
620
- .lemma-assistant-experience[data-chrome-style="flat"] .lemma-assistant-experience-card,
621
- .lemma-assistant-experience[data-chrome-style="flat"] .lemma-assistant-experience-sidebar {
622
- background: transparent;
623
- border-color: transparent;
624
- box-shadow: none;
625
- }
626
-
627
- .lemma-assistant-plan-strip {
628
- background: var(--bg-surface);
629
- border-color: color-mix(in srgb, var(--border-default) 88%, transparent);
630
- box-shadow: none;
631
- border-radius: var(--assistant-radius-shell);
632
- }
633
-
634
- .lemma-assistant-pending-file-chip {
635
- display: inline-flex;
636
- align-items: center;
637
- gap: 6px;
638
- max-width: 100%;
639
- border-radius: var(--assistant-radius-inline);
640
- }
641
-
642
- .lemma-assistant-pending-file-chip-label {
643
- overflow: hidden;
644
- text-overflow: ellipsis;
645
- white-space: nowrap;
646
- }
647
-
648
- .lemma-assistant-pending-file-chip-remove {
649
- border: 0;
650
- background: transparent;
651
- color: inherit;
652
- cursor: pointer;
653
- }
654
-
655
- .lemma-assistant-status-pill {
656
- display: inline-flex;
657
- align-items: center;
658
- gap: 8px;
659
- }
660
-
661
- .lemma-assistant-status-pill-dot {
662
- position: relative;
663
- }
664
-
665
- .lemma-assistant-status-pill-dot-ping {
666
- animation: lemma-assistant-ping 1.4s ease-out infinite;
667
- }
668
-
669
- .lemma-assistant-ask-overlay-header,
670
- .lemma-assistant-ask-overlay-actions,
671
- .lemma-assistant-experience-input-row {
672
- display: flex;
673
- }
674
-
675
- .lemma-assistant-ask-overlay-header {
676
- align-items: flex-start;
677
- justify-content: space-between;
678
- gap: 12px;
679
- }
680
-
681
- .lemma-assistant-ask-overlay-options {
682
- overflow-y: auto;
683
- }
684
-
685
- .lemma-assistant-ask-overlay-option {
686
- display: block;
687
- width: 100%;
688
- }
689
-
690
- .lemma-assistant-ask-overlay-option-label {
691
- display: inline-flex;
692
- align-items: center;
693
- gap: 8px;
694
- }
695
-
696
- .lemma-assistant-plan-strip-header,
697
- .lemma-assistant-plan-strip-summary,
698
- .lemma-assistant-thinking-label,
699
- .lemma-assistant-widget-card-header,
700
- .lemma-assistant-message-header,
701
- .lemma-assistant-tool-rollup-toggle {
702
- display: flex;
703
- align-items: center;
704
- }
705
-
706
- .lemma-assistant-plan-strip-header,
707
- .lemma-assistant-widget-card-header {
708
- justify-content: space-between;
709
- gap: 8px;
710
- }
711
-
712
- .lemma-assistant-plan-strip-steps,
713
- .lemma-assistant-message-body,
714
- .lemma-assistant-presented-files,
715
- .lemma-assistant-tool-rollup,
716
- .lemma-assistant-tool-rollup-details,
717
- .lemma-assistant-widget-card,
718
- .lemma-assistant-reasoning,
719
- .lemma-assistant-empty-state {
720
- min-width: 0;
721
- }
722
-
723
- .lemma-assistant-message {
724
- max-width: 78ch;
725
- }
726
-
727
- .lemma-assistant-message-user {
728
- display: flex;
729
- justify-content: flex-end;
730
- max-width: none;
731
- }
732
-
733
- .lemma-assistant-message-user-bubble {
734
- max-width: 72ch;
735
- border-radius: var(--assistant-radius-bubble);
736
- }
737
-
738
- .lemma-assistant-message-text {
739
- line-height: 1.65;
740
- }
741
-
742
- .lemma-assistant-tool-rollup-toggle,
743
- .lemma-assistant-message-header,
744
- .lemma-assistant-thinking-label,
745
- .lemma-assistant-reasoning-summary {
746
- gap: 6px;
747
- }
748
-
749
- .lemma-assistant-tool-rollup-details,
750
- .lemma-assistant-reasoning-body {
751
- border-left: 1px solid var(--border-default);
752
- }
753
-
754
- .lemma-assistant-tool-rollup-thinking,
755
- .lemma-assistant-widget-card-frame,
756
- .lemma-assistant-presented-file > *:first-child {
757
- border-radius: var(--assistant-radius-inline);
758
- }
759
-
760
- .lemma-assistant-widget-card-frame {
761
- width: 100%;
762
- }
763
-
764
- .lemma-assistant-empty-state {
765
- padding: 20px 8px;
766
- text-align: center;
767
- }
768
-
769
- .lemma-assistant-empty-state-hero {
770
- display: flex;
771
- flex-direction: column;
772
- align-items: center;
773
- justify-content: center;
774
- }
775
-
776
- .lemma-assistant-empty-state-suggestions {
777
- display: grid;
778
- grid-template-columns: repeat(1, minmax(0, 1fr));
779
- gap: 10px;
780
- max-width: 500px;
781
- margin: 0 auto;
782
- }
783
-
784
- @media (min-width: 640px) {
785
- .lemma-assistant-empty-state-suggestions {
786
- grid-template-columns: repeat(2, minmax(0, 1fr));
787
- }
788
- }
789
-
790
- .lemma-assistant-empty-state-suggestion {
791
- display: flex;
792
- align-items: center;
793
- gap: 10px;
794
- }
795
-
796
- .lemma-assistant-experience-composer-body,
797
- .lemma-assistant-composer-body {
798
- min-width: 0;
799
- }
800
-
801
- .lemma-assistant-experience-input-row {
802
- align-items: center;
803
- gap: 8px;
804
- }
805
-
806
- .lemma-assistant-experience-textarea {
807
- width: 100%;
808
- resize: none;
809
- }
810
-
811
- .lemma-assistant-experience-upload,
812
- .lemma-assistant-experience-send,
813
- .lemma-assistant-experience-new,
814
- .lemma-assistant-conversation-list-new {
815
- cursor: pointer;
816
- }
817
-
818
- .lemma-assistant-experience-upload:disabled,
819
- .lemma-assistant-experience-send:disabled,
820
- .lemma-assistant-model-picker:disabled {
821
- cursor: default;
822
- }
823
-
824
- .lemma-assistant-shell,
825
- .lemma-assistant-experience {
826
- width: 100%;
827
- height: 100%;
828
- font-family: inherit;
829
- -webkit-font-smoothing: antialiased;
830
- }
831
-
832
- .lemma-assistant-viewport,
833
- .lemma-assistant-experience-viewport {
834
- flex: 1 1 auto;
835
- padding: 16px;
836
- background: var(--bg-surface);
837
- }
838
-
839
- .lemma-assistant-viewport-inner {
840
- display: flex;
841
- flex-direction: column;
842
- gap: 12px;
843
- }
844
-
845
- .lemma-assistant-experience-live-region {
846
- display: flex;
847
- flex-direction: column;
848
- gap: 12px;
849
- min-width: 0;
850
- }
851
-
852
- .lemma-assistant-scroll-to-bottom {
853
- position: sticky;
854
- bottom: 12px;
855
- margin-left: auto;
856
- width: 34px;
857
- height: 34px;
858
- border: 1px solid color-mix(in srgb, var(--border-default) 84%, transparent);
859
- border-radius: var(--assistant-radius-inline);
860
- background: var(--bg-surface);
861
- color: var(--text-secondary);
862
- box-shadow: var(--shadow-sm);
863
- cursor: pointer;
864
- z-index: 10;
865
- transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
866
- }
867
-
868
- .lemma-assistant-scroll-to-bottom:hover {
869
- border-color: color-mix(in srgb, var(--brand-primary) 52%, var(--border-default));
870
- color: var(--text-primary);
871
- background: color-mix(in srgb, var(--bg-subtle) 90%, var(--bg-surface));
872
- }
873
-
874
- .lemma-assistant-header,
875
- .lemma-assistant-experience-header,
876
- .lemma-assistant-conversation-list-header,
877
- .lemma-assistant-experience-sidebar-header {
878
- padding: 12px 16px;
879
- }
880
-
881
- .lemma-assistant-header-badge {
882
- display: inline-flex;
883
- align-items: center;
884
- justify-content: center;
885
- width: 28px;
886
- height: 28px;
887
- border-radius: var(--assistant-radius-inline);
888
- background: linear-gradient(135deg, var(--brand-primary), var(--brand-secondary));
889
- box-shadow: var(--shadow-xs);
890
- flex: 0 0 auto;
891
- }
892
-
893
- .lemma-assistant-header-title,
894
- .lemma-assistant-conversation-list-title,
895
- .lemma-assistant-experience-sidebar-title {
896
- font-size: 14px;
897
- font-weight: 600;
898
- line-height: 1.2;
899
- color: var(--text-primary);
900
- }
901
-
902
- .lemma-assistant-header-subtitle,
903
- .lemma-assistant-conversation-list-meta,
904
- .lemma-assistant-experience-sidebar-meta {
905
- margin-top: 4px;
906
- font-size: 12px;
907
- color: var(--text-tertiary);
908
- }
909
-
910
- .lemma-assistant-conversation-list,
911
- .lemma-assistant-experience-sidebar {
912
- display: flex;
913
- flex-direction: column;
914
- overflow: hidden;
915
- }
916
-
917
- .lemma-assistant-conversation-list-items,
918
- .lemma-assistant-experience-sidebar-items {
919
- padding: 12px;
920
- display: flex;
921
- flex-direction: column;
922
- gap: 8px;
923
- }
924
-
925
- .lemma-assistant-conversation-list-item,
926
- .lemma-assistant-experience-sidebar-item {
927
- cursor: pointer;
928
- border: 1px solid var(--border-default);
929
- background: var(--bg-surface);
930
- padding: 10px 12px;
931
- text-align: left;
932
- color: inherit;
933
- transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
934
- }
935
-
936
- .lemma-assistant-conversation-list-item:hover,
937
- .lemma-assistant-experience-sidebar-item:hover {
938
- background: var(--bg-subtle);
939
- }
940
-
941
- .lemma-assistant-conversation-list-item-active,
942
- .lemma-assistant-experience-sidebar-item-active {
943
- border-color: color-mix(in srgb, var(--brand-primary) 44%, var(--border-default));
944
- background: color-mix(in srgb, var(--brand-glow) 42%, var(--bg-surface));
945
- }
946
-
947
- .lemma-assistant-conversation-list-item-title,
948
- .lemma-assistant-experience-sidebar-item-title {
949
- font-size: 13px;
950
- font-weight: 500;
951
- color: var(--text-primary);
952
- }
953
-
954
- .lemma-assistant-conversation-list-item-status,
955
- .lemma-assistant-experience-sidebar-item-status {
956
- margin-top: 4px;
957
- font-size: 11px;
958
- letter-spacing: 0.08em;
959
- text-transform: uppercase;
960
- color: var(--text-tertiary);
961
- }
962
-
963
- .lemma-assistant-conversation-list-new,
964
- .lemma-assistant-experience-sidebar-new,
965
- .lemma-assistant-experience-plan-button {
966
- display: inline-flex;
967
- align-items: center;
968
- justify-content: center;
969
- gap: 8px;
970
- border-radius: var(--assistant-radius-inline);
971
- border: 1px solid color-mix(in srgb, var(--border-default) 88%, transparent);
972
- background: var(--bg-surface);
973
- padding: 6px 12px;
974
- font-size: 12px;
975
- font-weight: 500;
976
- color: var(--text-secondary);
977
- box-shadow: none;
978
- transition: background-color 160ms ease, color 160ms ease, border-color 160ms ease, transform 160ms ease;
979
- }
980
-
981
- .lemma-assistant-conversation-list-new:hover,
982
- .lemma-assistant-experience-sidebar-new:hover,
983
- .lemma-assistant-experience-plan-button:hover {
984
- color: var(--text-primary);
985
- background: var(--bg-subtle);
986
- }
987
-
988
- .lemma-assistant-model-picker,
989
- .lemma-assistant-experience-model-picker {
990
- height: 32px;
991
- border-radius: var(--assistant-radius-inline);
992
- border: 1px solid color-mix(in srgb, var(--border-default) 80%, transparent);
993
- padding: 0 12px;
994
- font-size: 12px;
995
- color: var(--text-secondary);
996
- }
997
-
998
- .lemma-assistant-ask-overlay {
999
- display: flex;
1000
- flex-direction: column;
1001
- gap: 8px;
1002
- }
1003
-
1004
- .lemma-assistant-ask-overlay-kicker {
1005
- font-size: 11px;
1006
- letter-spacing: 0.12em;
1007
- text-transform: uppercase;
1008
- color: var(--text-tertiary);
1009
- }
1010
-
1011
- .lemma-assistant-ask-overlay-copy {
1012
- min-width: 0;
1013
- }
1014
-
1015
- .lemma-assistant-ask-overlay-question {
1016
- margin: 4px 0 0;
1017
- font-size: 14px;
1018
- font-weight: 500;
1019
- line-height: 1.5;
1020
- color: var(--text-primary);
1021
- }
1022
-
1023
- .lemma-assistant-ask-overlay-skip,
1024
- .lemma-assistant-ask-overlay-continue {
1025
- border: 0;
1026
- border-radius: var(--assistant-radius-inline);
1027
- background: transparent;
1028
- padding: 6px 10px;
1029
- font-size: 12px;
1030
- transition: background-color 160ms ease, color 160ms ease;
1031
- }
1032
-
1033
- .lemma-assistant-ask-overlay-skip {
1034
- color: var(--text-tertiary);
1035
- }
1036
-
1037
- .lemma-assistant-ask-overlay-skip:hover {
1038
- background: var(--bg-subtle);
1039
- color: var(--text-primary);
1040
- }
1041
-
1042
- .lemma-assistant-ask-overlay-options {
1043
- max-height: 260px;
1044
- padding-right: 4px;
1045
- display: flex;
1046
- flex-direction: column;
1047
- gap: 6px;
1048
- }
1049
-
1050
- .lemma-assistant-ask-overlay-option {
1051
- border: 1px solid var(--border-default);
1052
- border-radius: calc(var(--assistant-radius-inline) + 2px);
1053
- background: var(--bg-canvas);
1054
- padding: 8px 10px;
1055
- text-align: left;
1056
- font-size: 13px;
1057
- color: var(--text-secondary);
1058
- transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease;
1059
- }
1060
-
1061
- .lemma-assistant-ask-overlay-option:hover {
1062
- background: var(--bg-subtle);
1063
- color: var(--text-primary);
1064
- }
1065
-
1066
- .lemma-assistant-ask-overlay-option-selected {
1067
- border-color: color-mix(in srgb, var(--brand-primary) 64%, var(--border-subtle));
1068
- background: color-mix(in srgb, var(--brand-primary) 14%, transparent);
1069
- color: var(--text-primary);
1070
- }
1071
-
1072
- .lemma-assistant-ask-overlay-option-rank {
1073
- display: inline-flex;
1074
- align-items: center;
1075
- justify-content: center;
1076
- min-width: 16px;
1077
- height: 16px;
1078
- border-radius: 999px;
1079
- padding: 0 4px;
1080
- background: var(--brand-primary);
1081
- color: var(--text-on-brand);
1082
- font-size: 10px;
1083
- font-weight: 600;
1084
- }
1085
-
1086
- .lemma-assistant-ask-overlay-option-indicator {
1087
- display: inline-block;
1088
- width: 10px;
1089
- height: 10px;
1090
- border-radius: 999px;
1091
- border: 1px solid var(--border-default);
1092
- background: transparent;
1093
- }
1094
-
1095
- .lemma-assistant-ask-overlay-option-indicator-selected {
1096
- border-color: var(--brand-primary);
1097
- background: var(--brand-primary);
1098
- }
1099
-
1100
- .lemma-assistant-ask-overlay-actions {
1101
- justify-content: flex-end;
1102
- }
1103
-
1104
- .lemma-assistant-ask-overlay-continue {
1105
- background: var(--bg-subtle);
1106
- color: var(--text-tertiary);
1107
- font-weight: 500;
1108
- }
1109
-
1110
- .lemma-assistant-ask-overlay-continue-enabled {
1111
- background: var(--brand-primary);
1112
- color: var(--text-on-brand);
1113
- }
1114
-
1115
- .lemma-assistant-ask-overlay-continue-enabled:hover {
1116
- background: color-mix(in srgb, var(--brand-primary) 88%, var(--text-primary));
1117
- }
1118
-
1119
- .lemma-assistant-composer-status-rail {
1120
- padding: 0 8px 4px;
1121
- }
1122
-
1123
- .lemma-assistant-composer-status,
1124
- .lemma-assistant-experience-status {
1125
- display: flex;
1126
- align-items: center;
1127
- transition: opacity 160ms ease;
1128
- }
1129
-
1130
- .lemma-assistant-composer-pending,
1131
- .lemma-assistant-experience-pending {
1132
- align-items: center;
1133
- padding: 0 4px 6px;
1134
- }
1135
-
1136
- .lemma-assistant-pending-file-chip {
1137
- padding: 4px 8px;
1138
- background: var(--bg-subtle);
1139
- color: var(--text-secondary);
1140
- font-size: 12px;
1141
- }
1142
-
1143
- .lemma-assistant-pending-file-chip-label {
1144
- max-width: 180px;
1145
- }
1146
-
1147
- .lemma-assistant-pending-file-chip-remove {
1148
- display: inline-flex;
1149
- align-items: center;
1150
- justify-content: center;
1151
- width: 16px;
1152
- height: 16px;
1153
- border-radius: var(--assistant-radius-inline);
1154
- }
1155
-
1156
- .lemma-assistant-pending-file-chip-remove:hover {
1157
- background: var(--bg-canvas);
1158
- }
1159
-
1160
- .lemma-assistant-status-pill {
1161
- min-height: 30px;
1162
- max-width: 100%;
1163
- padding: 6px 12px;
1164
- border-radius: var(--assistant-radius-inline);
1165
- border: 1px solid color-mix(in srgb, var(--brand-primary) 24%, var(--border-default));
1166
- background: color-mix(in srgb, var(--brand-glow) 28%, var(--bg-surface));
1167
- color: var(--text-secondary);
1168
- font-size: 13px;
1169
- transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, opacity 160ms ease;
1170
- }
1171
-
1172
- .lemma-assistant-status-pill-subtle {
1173
- border-color: color-mix(in srgb, var(--border-default) 72%, transparent);
1174
- background: color-mix(in srgb, var(--bg-surface) 90%, transparent);
1175
- color: var(--text-tertiary);
1176
- }
1177
-
1178
- .lemma-assistant-status-pill-dot,
1179
- .lemma-assistant-status-pill-dot-core,
1180
- .lemma-assistant-status-pill-dot-ping {
1181
- display: inline-flex;
1182
- width: 10px;
1183
- height: 10px;
1184
- border-radius: 999px;
1185
- }
1186
-
1187
- .lemma-assistant-status-pill-dot {
1188
- position: relative;
1189
- flex: 0 0 auto;
1190
- }
1191
-
1192
- .lemma-assistant-status-pill-dot-ping {
1193
- position: absolute;
1194
- inset: 0;
1195
- background: color-mix(in srgb, var(--brand-primary) 45%, transparent);
1196
- }
1197
-
1198
- .lemma-assistant-status-pill-dot-core {
1199
- position: relative;
1200
- background: var(--brand-primary);
1201
- }
1202
-
1203
- .lemma-assistant-status-pill-label {
1204
- overflow: hidden;
1205
- text-overflow: ellipsis;
1206
- white-space: nowrap;
1207
- }
1208
-
1209
- .lemma-assistant-presented-files {
1210
- padding-top: 4px;
1211
- display: flex;
1212
- flex-direction: column;
1213
- gap: 8px;
1214
- }
1215
-
1216
- .lemma-assistant-presented-file-card {
1217
- border: 1px solid color-mix(in srgb, var(--border-default) 78%, transparent);
1218
- border-radius: var(--assistant-radius-shell);
1219
- background: linear-gradient(
1220
- 180deg,
1221
- color-mix(in srgb, var(--bg-surface) 96%, transparent),
1222
- color-mix(in srgb, var(--bg-canvas) 76%, transparent)
1223
- );
1224
- padding: 10px 12px;
1225
- }
1226
-
1227
- .lemma-assistant-presented-file-name {
1228
- font-size: 14px;
1229
- font-weight: 500;
1230
- color: var(--text-primary);
1231
- }
1232
-
1233
- .lemma-assistant-presented-file-path {
1234
- margin-top: 4px;
1235
- font-size: 12px;
1236
- color: var(--text-tertiary);
1237
- word-break: break-word;
1238
- }
1239
-
1240
- .lemma-assistant-plan-strip {
1241
- padding: 10px 12px;
1242
- }
1243
-
1244
- .lemma-assistant-plan-strip-summary {
1245
- gap: 8px;
1246
- }
1247
-
1248
- .lemma-assistant-plan-strip-title {
1249
- font-size: 12px;
1250
- font-weight: 600;
1251
- color: var(--text-primary);
1252
- }
1253
-
1254
- .lemma-assistant-plan-strip-count,
1255
- .lemma-assistant-plan-strip-current {
1256
- font-size: 11px;
1257
- color: var(--text-tertiary);
1258
- }
1259
-
1260
- .lemma-assistant-plan-strip-current {
1261
- margin-top: 6px;
1262
- color: var(--text-secondary);
1263
- white-space: nowrap;
1264
- overflow: hidden;
1265
- text-overflow: ellipsis;
1266
- }
1267
-
1268
- .lemma-assistant-plan-strip-active {
1269
- display: inline-flex;
1270
- align-items: center;
1271
- border-radius: var(--assistant-radius-inline);
1272
- background: color-mix(in srgb, var(--brand-primary) 16%, transparent);
1273
- padding: 2px 6px;
1274
- font-size: 10px;
1275
- font-weight: 500;
1276
- color: var(--brand-primary);
1277
- }
1278
-
1279
- .lemma-assistant-plan-strip-hide,
1280
- .lemma-assistant-plan-strip-toggle {
1281
- border: 0;
1282
- background: transparent;
1283
- padding: 0;
1284
- font-size: 11px;
1285
- font-weight: 500;
1286
- color: var(--text-tertiary);
1287
- transition: color 160ms ease;
1288
- }
1289
-
1290
- .lemma-assistant-plan-strip-toggle {
1291
- font-size: 10px;
1292
- color: var(--brand-primary);
1293
- }
1294
-
1295
- .lemma-assistant-plan-strip-hide:hover,
1296
- .lemma-assistant-plan-strip-toggle:hover {
1297
- color: var(--text-primary);
1298
- }
1299
-
1300
- .lemma-assistant-plan-strip-steps {
1301
- margin-top: 8px;
1302
- display: flex;
1303
- flex-direction: column;
1304
- gap: 4px;
1305
- }
1306
-
1307
- .lemma-assistant-plan-strip-step {
1308
- display: flex;
1309
- align-items: flex-start;
1310
- gap: 8px;
1311
- font-size: 11px;
1312
- }
1313
-
1314
- .lemma-assistant-plan-strip-step-dot {
1315
- margin-top: 4px;
1316
- width: 8px;
1317
- height: 8px;
1318
- border-radius: 999px;
1319
- flex: 0 0 auto;
1320
- }
1321
-
1322
- .lemma-assistant-plan-strip-step-dot-completed {
1323
- background: var(--state-success);
1324
- }
1325
-
1326
- .lemma-assistant-plan-strip-step-dot-in-progress {
1327
- background: var(--brand-primary);
1328
- }
1329
-
1330
- .lemma-assistant-plan-strip-step-dot-pending {
1331
- background: var(--border-default);
1332
- }
1333
-
1334
- .lemma-assistant-plan-strip-step-label {
1335
- line-height: 1.45;
1336
- }
1337
-
1338
- .lemma-assistant-plan-strip-step-label-completed {
1339
- color: var(--text-tertiary);
1340
- text-decoration: line-through;
1341
- }
1342
-
1343
- .lemma-assistant-plan-strip-step-label-in-progress {
1344
- color: var(--brand-primary);
1345
- font-weight: 500;
1346
- }
1347
-
1348
- .lemma-assistant-plan-strip-step-label-pending {
1349
- color: var(--text-secondary);
1350
- }
1351
-
1352
- .lemma-assistant-plan-strip-footer {
1353
- display: flex;
1354
- align-items: center;
1355
- gap: 8px;
1356
- padding-top: 2px;
1357
- }
1358
-
1359
- .lemma-assistant-plan-strip-hidden-count {
1360
- font-size: 10px;
1361
- color: var(--text-tertiary);
1362
- }
1363
-
1364
- .lemma-assistant-thinking {
1365
- padding: 0 4px;
1366
- animation: lemma-assistant-fade-in 220ms ease;
1367
- }
1368
-
1369
- .lemma-assistant-thinking-label {
1370
- gap: 10px;
1371
- font-size: 12px;
1372
- line-height: 1.4;
1373
- color: var(--text-tertiary);
1374
- }
1375
-
1376
- .lemma-assistant-thinking-dot,
1377
- .lemma-assistant-tool-rollup-dot {
1378
- display: inline-flex;
1379
- width: 8px;
1380
- height: 8px;
1381
- border-radius: 999px;
1382
- background: var(--brand-accent);
1383
- flex: 0 0 auto;
1384
- }
1385
-
1386
- .lemma-assistant-thinking-dot {
1387
- animation: lemma-assistant-dot-pulse 1.25s ease-in-out infinite;
1388
- }
1389
-
1390
- .lemma-assistant-thinking-text {
1391
- font-weight: 600;
1392
- color: var(--text-secondary);
1393
- }
1394
-
1395
- .lemma-assistant-reasoning-label-streaming {
1396
- font-weight: 600;
1397
- color: transparent;
1398
- background: linear-gradient(110deg, var(--text-secondary), 35%, var(--brand-accent), 50%, var(--text-secondary), 65%);
1399
- background-size: 250% 100%;
1400
- -webkit-background-clip: text;
1401
- background-clip: text;
1402
- animation: lemma-assistant-shimmer 1.6s linear infinite;
1403
- }
1404
-
1405
- .lemma-assistant-empty-state-hero {
1406
- margin-bottom: 24px;
1407
- }
1408
-
1409
- .lemma-assistant-empty-state-badge {
1410
- display: inline-flex;
1411
- align-items: center;
1412
- justify-content: center;
1413
- width: 40px;
1414
- height: 40px;
1415
- margin-bottom: 12px;
1416
- border-radius: var(--assistant-radius-inline);
1417
- background: linear-gradient(135deg, var(--brand-primary), var(--brand-secondary));
1418
- box-shadow: var(--shadow-xs);
1419
- }
1420
-
1421
- .lemma-assistant-empty-state-badge-icon,
1422
- .lemma-assistant-experience-header-badge-icon {
1423
- display: block;
1424
- width: 18px;
1425
- height: 18px;
1426
- color: var(--text-on-brand);
1427
- }
1428
-
1429
- .lemma-assistant-empty-state-badge-icon {
1430
- width: 20px;
1431
- height: 20px;
1432
- }
1433
-
1434
- .lemma-assistant-empty-state-title {
1435
- margin: 0;
1436
- font-size: 15px;
1437
- font-weight: 600;
1438
- color: var(--text-primary);
1439
- }
1440
-
1441
- .lemma-assistant-empty-state-copy {
1442
- max-width: 24rem;
1443
- margin: 6px auto 0;
1444
- font-size: 13px;
1445
- line-height: 1.6;
1446
- color: var(--text-tertiary);
1447
- }
1448
-
1449
- .lemma-assistant-empty-state-suggestion {
1450
- cursor: pointer;
1451
- justify-content: flex-start;
1452
- border: 1px solid var(--border-default);
1453
- border-left: 3px solid transparent;
1454
- border-radius: calc(var(--assistant-radius-inline) + 2px);
1455
- background: var(--bg-surface);
1456
- padding: 10px 12px;
1457
- text-align: left;
1458
- font-size: 12px;
1459
- color: var(--text-secondary);
1460
- transition: border-color 160ms ease, background-color 160ms ease, color 160ms ease, transform 160ms ease;
1461
- }
1462
-
1463
- .lemma-assistant-empty-state-suggestion:hover {
1464
- border-color: color-mix(in srgb, var(--brand-accent) 52%, var(--border-subtle));
1465
- border-left-color: color-mix(in srgb, var(--brand-accent) 72%, var(--brand-primary));
1466
- background: color-mix(in srgb, var(--brand-glow) 72%, var(--bg-surface));
1467
- color: var(--text-primary);
1468
- }
1469
-
1470
- .lemma-assistant-empty-state-suggestion-icon {
1471
- font-size: 16px;
1472
- opacity: 0.72;
1473
- transition: opacity 160ms ease;
1474
- }
1475
-
1476
- .lemma-assistant-empty-state-suggestion:hover .lemma-assistant-empty-state-suggestion-icon {
1477
- opacity: 1;
1478
- }
1479
-
1480
- .lemma-assistant-empty-state-suggestion-text {
1481
- flex: 1 1 auto;
1482
- line-height: 1.35;
1483
- }
1484
-
1485
- .lemma-assistant-empty-state-suggestion-arrow {
1486
- color: var(--text-tertiary);
1487
- opacity: 0;
1488
- transform: translateX(0);
1489
- transition: color 160ms ease, opacity 160ms ease, transform 160ms ease;
1490
- }
1491
-
1492
- .lemma-assistant-empty-state-suggestion:hover .lemma-assistant-empty-state-suggestion-arrow {
1493
- opacity: 1;
1494
- color: var(--state-warning);
1495
- transform: translateX(2px);
1496
- }
1497
-
1498
- .lemma-assistant-reasoning,
1499
- .lemma-assistant-widget-card,
1500
- .lemma-assistant-tool-rollup,
1501
- .lemma-assistant-tool-rollup-item {
1502
- display: flex;
1503
- flex-direction: column;
1504
- gap: 8px;
1505
- }
1506
-
1507
- .lemma-assistant-reasoning-summary {
1508
- list-style: none;
1509
- cursor: pointer;
1510
- gap: 6px;
1511
- font-size: 12px;
1512
- line-height: 1.4;
1513
- color: var(--text-tertiary);
1514
- }
1515
-
1516
- .lemma-assistant-reasoning-summary::-webkit-details-marker {
1517
- display: none;
1518
- }
1519
-
1520
- .lemma-assistant-reasoning-caret,
1521
- .lemma-assistant-tool-rollup-caret,
1522
- .lemma-assistant-inline-tool-call-caret {
1523
- transition: transform 160ms ease;
1524
- }
1525
-
1526
- .lemma-assistant-reasoning[open] .lemma-assistant-reasoning-caret {
1527
- transform: rotate(90deg);
1528
- }
1529
-
1530
- .lemma-assistant-reasoning-label {
1531
- font-weight: 600;
1532
- color: var(--text-secondary);
1533
- }
1534
-
1535
- .lemma-assistant-reasoning-body {
1536
- margin-top: 4px;
1537
- padding-left: 16px;
1538
- border-left: 1px solid var(--border-default);
1539
- }
1540
-
1541
- .lemma-assistant-tool-rollup-details {
1542
- display: flex;
1543
- flex-direction: column;
1544
- gap: 8px;
1545
- margin-left: 4px;
1546
- padding-left: 12px;
1547
- border-left: 1px solid color-mix(in srgb, var(--border-default) 86%, transparent);
1548
- }
1549
-
1550
- .lemma-assistant-tool-rollup-details-single {
1551
- margin-left: 0;
1552
- padding-left: 0;
1553
- border-left: 0;
1554
- }
1555
-
1556
- .lemma-assistant-tool-details-panel {
1557
- margin-top: 6px;
1558
- padding: 10px 12px;
1559
- border: 1px solid color-mix(in srgb, var(--border-default) 86%, transparent);
1560
- border-radius: var(--assistant-radius-inline);
1561
- background: color-mix(in srgb, var(--bg-surface) 96%, var(--bg-canvas));
1562
- }
1563
-
1564
- .lemma-assistant-reasoning-text,
1565
- .lemma-assistant-tool-rollup-thinking-text,
1566
- .lemma-assistant-tool-details-code-text {
1567
- margin: 0;
1568
- white-space: pre-wrap;
1569
- font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
1570
- }
1571
-
1572
- .lemma-assistant-reasoning-text {
1573
- font-size: 11px;
1574
- line-height: 1.45;
1575
- color: var(--text-tertiary);
1576
- }
1577
-
1578
- .lemma-assistant-tool-details-header {
1579
- display: flex;
1580
- align-items: flex-start;
1581
- justify-content: space-between;
1582
- gap: 8px;
1583
- margin-bottom: 8px;
1584
- }
1585
-
1586
- .lemma-assistant-tool-details-heading {
1587
- display: flex;
1588
- flex-direction: column;
1589
- gap: 2px;
1590
- min-width: 0;
1591
- }
1592
-
1593
- .lemma-assistant-tool-details-title {
1594
- font-size: 14px;
1595
- font-weight: 600;
1596
- letter-spacing: 0;
1597
- text-transform: none;
1598
- color: var(--text-primary);
1599
- }
1600
-
1601
- .lemma-assistant-tool-details-meta {
1602
- font-size: 12px;
1603
- color: var(--text-tertiary);
1604
- }
1605
-
1606
- .lemma-assistant-tool-details-label,
1607
- .lemma-assistant-tool-rollup-thinking-title {
1608
- font-size: 12px;
1609
- font-weight: 600;
1610
- letter-spacing: 0.02em;
1611
- text-transform: none;
1612
- color: color-mix(in srgb, var(--text-tertiary) 88%, var(--text-secondary));
1613
- }
1614
-
1615
- .lemma-assistant-tool-details-link {
1616
- border: 1px solid color-mix(in srgb, var(--border-default) 85%, transparent);
1617
- border-radius: var(--assistant-radius-inline);
1618
- background: var(--bg-surface);
1619
- padding: 3px 8px;
1620
- font-size: 11px;
1621
- font-weight: 600;
1622
- color: var(--text-secondary);
1623
- }
1624
-
1625
- .lemma-assistant-tool-details-panel-custom {
1626
- min-width: 0;
1627
- }
1628
-
1629
- .lemma-assistant-tool-details-stack {
1630
- display: flex;
1631
- flex-direction: column;
1632
- gap: 0;
1633
- }
1634
-
1635
- .lemma-assistant-tool-details-section {
1636
- min-width: 0;
1637
- padding: 8px 0;
1638
- }
1639
-
1640
- .lemma-assistant-tool-details-section + .lemma-assistant-tool-details-section {
1641
- border-top: 1px solid color-mix(in srgb, var(--border-default) 82%, transparent);
1642
- }
1643
-
1644
- .lemma-assistant-tool-details-list {
1645
- margin: 6px 0 0;
1646
- display: flex;
1647
- flex-direction: column;
1648
- gap: 6px;
1649
- }
1650
-
1651
- .lemma-assistant-tool-details-list-item {
1652
- display: grid;
1653
- grid-template-columns: minmax(96px, auto) minmax(0, 1fr);
1654
- gap: 8px;
1655
- align-items: start;
1656
- }
1657
-
1658
- .lemma-assistant-tool-details-key {
1659
- margin: 0;
1660
- font-size: 12px;
1661
- font-weight: 600;
1662
- color: var(--text-tertiary);
1663
- text-transform: none;
1664
- }
1665
-
1666
- .lemma-assistant-tool-details-value {
1667
- margin: 0;
1668
- font-size: 13px;
1669
- line-height: 1.55;
1670
- color: var(--text-primary);
1671
- overflow-wrap: anywhere;
1672
- }
1673
-
1674
- .lemma-assistant-tool-details-empty {
1675
- margin: 6px 0 0;
1676
- font-size: 12px;
1677
- color: var(--text-tertiary);
1678
- }
1679
-
1680
- .lemma-assistant-tool-details-more {
1681
- margin-top: 6px;
1682
- font-size: 11px;
1683
- color: var(--text-tertiary);
1684
- }
1685
-
1686
- .lemma-assistant-tool-details-raw {
1687
- margin-top: 8px;
1688
- }
1689
-
1690
- .lemma-assistant-tool-details-raw-row {
1691
- display: flex;
1692
- flex-wrap: wrap;
1693
- gap: 14px;
1694
- }
1695
-
1696
- .lemma-assistant-tool-details-raw-summary {
1697
- cursor: pointer;
1698
- list-style: none;
1699
- font-size: 12px;
1700
- font-weight: 600;
1701
- color: color-mix(in srgb, var(--text-tertiary) 84%, var(--text-secondary));
1702
- }
1703
-
1704
- .lemma-assistant-tool-details-raw-summary::-webkit-details-marker {
1705
- display: none;
1706
- }
1707
-
1708
- .lemma-assistant-tool-details-code {
1709
- margin-top: 6px;
1710
- max-height: 180px;
1711
- overflow: auto;
1712
- border-radius: var(--assistant-radius-inline);
1713
- background: color-mix(in srgb, var(--bg-canvas) 70%, transparent);
1714
- padding: 10px;
1715
- font-size: 12px;
1716
- }
1717
-
1718
- .lemma-assistant-tool-details-code-text,
1719
- .lemma-assistant-tool-rollup-thinking-text {
1720
- color: var(--text-secondary);
1721
- }
1722
-
1723
- .lemma-assistant-inline-tool-call {
1724
- border: 0;
1725
- background: transparent;
1726
- padding: 4px 0;
1727
- width: 100%;
1728
- display: grid;
1729
- grid-template-columns: 18px minmax(0, 1fr);
1730
- gap: 10px;
1731
- text-align: left;
1732
- font-size: 14px;
1733
- line-height: 1.5;
1734
- color: var(--text-secondary);
1735
- transition: color 160ms ease, background-color 160ms ease;
1736
- }
1737
-
1738
- .lemma-assistant-inline-tool-call:hover {
1739
- color: var(--text-primary);
1740
- }
1741
-
1742
- .lemma-assistant-inline-tool-call[data-state="executing"] {
1743
- color: var(--state-info);
1744
- }
1745
-
1746
- .lemma-assistant-inline-tool-call[data-state="complete"] {
1747
- color: var(--state-success);
1748
- }
1749
-
1750
- .lemma-assistant-inline-tool-call[data-state="failed"] {
1751
- color: var(--state-error);
1752
- }
1753
-
1754
- .lemma-assistant-inline-tool-call-rail {
1755
- display: flex;
1756
- flex-direction: column;
1757
- align-items: center;
1758
- padding-top: 6px;
1759
- }
1760
-
1761
- .lemma-assistant-inline-tool-call-node {
1762
- width: 9px;
1763
- height: 9px;
1764
- border-radius: 999px;
1765
- background: color-mix(in srgb, currentColor 80%, var(--text-tertiary));
1766
- }
1767
-
1768
- .lemma-assistant-inline-tool-call-stem {
1769
- width: 1px;
1770
- flex: 1 1 auto;
1771
- min-height: 18px;
1772
- margin-top: 6px;
1773
- background: color-mix(in srgb, var(--border-default) 86%, transparent);
1774
- }
1775
-
1776
- .lemma-assistant-inline-tool-call-main {
1777
- display: flex;
1778
- flex-direction: column;
1779
- gap: 3px;
1780
- min-width: 0;
1781
- }
1782
-
1783
- .lemma-assistant-inline-tool-call-head {
1784
- display: flex;
1785
- align-items: flex-start;
1786
- gap: 8px;
1787
- min-width: 0;
1788
- }
1789
-
1790
- .lemma-assistant-inline-tool-call-name {
1791
- font-size: 14px;
1792
- font-weight: 600;
1793
- white-space: normal;
1794
- color: var(--text-primary);
1795
- flex: 1 1 auto;
1796
- }
1797
-
1798
- .lemma-assistant-inline-tool-call-status {
1799
- display: inline-flex;
1800
- align-items: center;
1801
- border-radius: var(--assistant-radius-inline);
1802
- padding: 2px 8px;
1803
- font-size: 12px;
1804
- font-weight: 600;
1805
- white-space: nowrap;
1806
- color: var(--text-secondary);
1807
- background: color-mix(in srgb, var(--bg-subtle) 82%, var(--bg-surface));
1808
- }
1809
-
1810
- .lemma-assistant-inline-tool-call[data-state="executing"] .lemma-assistant-inline-tool-call-status {
1811
- color: var(--state-info);
1812
- background: color-mix(in srgb, var(--state-info) 14%, transparent);
1813
- }
1814
-
1815
- .lemma-assistant-inline-tool-call[data-state="complete"] .lemma-assistant-inline-tool-call-status {
1816
- color: var(--state-success);
1817
- background: color-mix(in srgb, var(--state-success) 14%, transparent);
1818
- }
1819
-
1820
- .lemma-assistant-inline-tool-call[data-state="failed"] .lemma-assistant-inline-tool-call-status {
1821
- color: var(--state-error);
1822
- background: color-mix(in srgb, var(--state-error) 14%, transparent);
1823
- }
1824
-
1825
- .lemma-assistant-inline-tool-call-meta {
1826
- font-size: 12px;
1827
- color: var(--text-tertiary);
1828
- }
1829
-
1830
- .lemma-assistant-inline-tool-call-summary {
1831
- display: inline-flex;
1832
- align-items: center;
1833
- width: fit-content;
1834
- max-width: 100%;
1835
- border-radius: var(--assistant-radius-inline);
1836
- padding: 3px 9px;
1837
- font-size: 12px;
1838
- color: color-mix(in srgb, currentColor 82%, var(--text-tertiary));
1839
- background: color-mix(in srgb, var(--bg-subtle) 78%, var(--bg-surface));
1840
- overflow-wrap: anywhere;
1841
- white-space: normal;
1842
- }
1843
-
1844
- .lemma-assistant-inline-tool-call-caret {
1845
- color: var(--text-tertiary);
1846
- margin-top: 1px;
1847
- }
1848
-
1849
- .lemma-assistant-inline-tool-call[data-selected="true"] .lemma-assistant-inline-tool-call-caret {
1850
- transform: rotate(90deg);
1851
- }
1852
-
1853
- .lemma-assistant-tool-rollup-banner {
1854
- border: 0;
1855
- background: transparent;
1856
- width: 100%;
1857
- padding: 4px 0 6px;
1858
- display: flex;
1859
- align-items: center;
1860
- gap: 12px;
1861
- cursor: pointer;
1862
- color: var(--text-tertiary);
1863
- }
1864
-
1865
- .lemma-assistant-tool-rollup-banner:hover {
1866
- color: var(--text-secondary);
1867
- }
1868
-
1869
- .lemma-assistant-tool-rollup-banner:focus-visible {
1870
- outline: 2px solid color-mix(in srgb, var(--brand-primary) 64%, transparent);
1871
- outline-offset: 2px;
1872
- border-radius: var(--assistant-radius-inline);
1873
- }
1874
-
1875
- .lemma-assistant-tool-rollup-banner-line {
1876
- flex: 1 1 auto;
1877
- min-width: 18px;
1878
- height: 1px;
1879
- background: color-mix(in srgb, var(--border-default) 84%, transparent);
1880
- }
1881
-
1882
- .lemma-assistant-tool-rollup-banner-copy {
1883
- display: inline-flex;
1884
- align-items: center;
1885
- gap: 8px;
1886
- min-width: 0;
1887
- }
1888
-
1889
- .lemma-assistant-tool-rollup-banner-label {
1890
- font-size: 13px;
1891
- line-height: 1.4;
1892
- white-space: nowrap;
1893
- overflow: hidden;
1894
- text-overflow: ellipsis;
1895
- }
1896
-
1897
- .lemma-assistant-tool-rollup-banner-label-working {
1898
- color: color-mix(in srgb, var(--text-secondary) 82%, var(--text-primary));
1899
- }
1900
-
1901
- .lemma-assistant-tool-rollup-banner-caret {
1902
- font-size: 16px;
1903
- line-height: 1;
1904
- transition: transform 160ms ease;
1905
- }
1906
-
1907
- .lemma-assistant-tool-rollup-banner-caret[data-expanded="true"] {
1908
- transform: rotate(90deg);
1909
- }
1910
-
1911
- .lemma-assistant-tool-rollup-header {
1912
- display: flex;
1913
- align-items: center;
1914
- gap: 8px;
1915
- margin-bottom: 2px;
1916
- }
1917
-
1918
- .lemma-assistant-tool-rollup-summary {
1919
- font-size: 12px;
1920
- color: color-mix(in srgb, var(--text-tertiary) 92%, var(--text-secondary));
1921
- }
1922
-
1923
- .lemma-assistant-tool-rollup-summary-working {
1924
- font-weight: 500;
1925
- color: color-mix(in srgb, var(--text-secondary) 88%, var(--text-primary));
1926
- }
1927
-
1928
- .lemma-assistant-tool-rollup-thinking {
1929
- border-radius: var(--assistant-radius-inline);
1930
- border: 1px solid color-mix(in srgb, var(--border-default) 72%, transparent);
1931
- border-left: 2px solid color-mix(in srgb, var(--border-default) 86%, transparent);
1932
- background: color-mix(in srgb, var(--bg-subtle) 42%, transparent);
1933
- padding: 7px 10px;
1934
- }
1935
-
1936
- .lemma-assistant-tool-rollup-thinking-text {
1937
- max-height: 7rem;
1938
- overflow: auto;
1939
- font-size: 12px;
1940
- line-height: 1.5;
1941
- color: color-mix(in srgb, var(--text-tertiary) 92%, var(--text-secondary));
1942
- }
1943
-
1944
- .lemma-assistant-tool-rollup-thinking-title {
1945
- font-size: 11px;
1946
- font-weight: 500;
1947
- color: color-mix(in srgb, var(--text-tertiary) 94%, var(--text-secondary));
1948
- }
1949
-
1950
- .lemma-assistant-widget-card-header {
1951
- align-items: center;
1952
- }
1953
-
1954
- .lemma-assistant-widget-card-title {
1955
- font-size: 9.5px;
1956
- font-weight: 500;
1957
- letter-spacing: 0.02em;
1958
- color: color-mix(in srgb, var(--text-tertiary) 84%, var(--text-secondary));
1959
- }
1960
-
1961
- .lemma-assistant-widget-card-badge {
1962
- display: inline-flex;
1963
- align-items: center;
1964
- gap: 4px;
1965
- border-radius: var(--assistant-radius-inline);
1966
- padding: 2px 6px;
1967
- font-size: 10px;
1968
- font-weight: 500;
1969
- }
1970
-
1971
- .lemma-assistant-widget-card-badge-rendering {
1972
- background: color-mix(in srgb, var(--state-info) 16%, transparent);
1973
- color: var(--state-info);
1974
- }
1975
-
1976
- .lemma-assistant-widget-card-badge-failed {
1977
- background: color-mix(in srgb, var(--state-error) 12%, transparent);
1978
- color: var(--state-error);
1979
- }
1980
-
1981
- .lemma-assistant-widget-card-badge-ready {
1982
- background: color-mix(in srgb, var(--state-success) 12%, transparent);
1983
- color: var(--state-success);
1984
- }
1985
-
1986
- .lemma-assistant-widget-card-error,
1987
- .lemma-assistant-widget-card-missing {
1988
- margin: 0;
1989
- font-size: 11px;
1990
- }
1991
-
1992
- .lemma-assistant-widget-card-error {
1993
- color: var(--state-error);
1994
- }
1995
-
1996
- .lemma-assistant-widget-card-missing {
1997
- color: var(--text-secondary);
1998
- }
1999
-
2000
- .lemma-assistant-widget-card-frame {
2001
- display: block;
2002
- border: 0;
2003
- background: transparent;
2004
- }
2005
-
2006
- .lemma-assistant-message {
2007
- display: flex;
2008
- flex-direction: column;
2009
- gap: 6px;
2010
- position: relative;
2011
- }
2012
-
2013
- .lemma-assistant-message-timestamp {
2014
- position: static;
2015
- font-size: 11px;
2016
- color: var(--text-tertiary);
2017
- line-height: 1.2;
2018
- }
2019
-
2020
- .lemma-assistant-message-timestamp-user {
2021
- align-self: flex-end;
2022
- margin-right: 4px;
2023
- opacity: 0.78;
2024
- }
2025
-
2026
- .lemma-assistant-message-assistant {
2027
- padding: 2px 4px;
2028
- }
2029
-
2030
- .lemma-assistant-message-user {
2031
- display: flex;
2032
- align-items: flex-end;
2033
- justify-content: flex-end;
2034
- max-width: none;
2035
- }
2036
-
2037
- .lemma-assistant-message-user-bubble {
2038
- margin-left: auto;
2039
- max-width: 72ch;
2040
- border-radius: var(--assistant-radius-bubble);
2041
- padding: 10px 14px;
2042
- background: var(--brand-primary);
2043
- color: var(--text-on-brand);
2044
- }
2045
-
2046
- .lemma-assistant-message-header {
2047
- font-size: 12px;
2048
- color: var(--text-tertiary);
2049
- }
2050
-
2051
- .lemma-assistant-message-header-dot {
2052
- display: inline-block;
2053
- width: 6px;
2054
- height: 6px;
2055
- border-radius: var(--assistant-radius-inline);
2056
- background: color-mix(in srgb, var(--brand-primary) 40%, transparent);
2057
- flex: 0 0 auto;
2058
- }
2059
-
2060
- .lemma-assistant-message-body {
2061
- display: flex;
2062
- flex-direction: column;
2063
- gap: 8px;
2064
- }
2065
-
2066
- .lemma-assistant-message-text {
2067
- font-size: 14px;
2068
- line-height: 1.6;
2069
- color: var(--text-secondary);
2070
- }
2071
-
2072
- .lemma-assistant-experience {
2073
- display: flex;
2074
- flex-direction: column;
2075
- gap: 12px;
2076
- }
2077
-
2078
- .lemma-assistant-experience-sidebar {
2079
- display: none;
2080
- }
2081
-
2082
- .lemma-assistant-experience-main {
2083
- display: flex;
2084
- flex: 1 1 auto;
2085
- min-height: 0;
2086
- flex-direction: column;
2087
- gap: 12px;
2088
- }
2089
-
2090
- .lemma-assistant-experience-card {
2091
- display: flex;
2092
- flex: 1 1 auto;
2093
- min-height: 0;
2094
- flex-direction: column;
2095
- overflow: hidden;
2096
- }
2097
-
2098
- .lemma-assistant-experience-new {
2099
- border: 1px solid color-mix(in srgb, var(--border-default) 88%, transparent);
2100
- background: var(--bg-surface);
2101
- width: 32px;
2102
- height: 32px;
2103
- border-radius: var(--assistant-radius-inline);
2104
- color: var(--text-tertiary);
2105
- }
2106
-
2107
- .lemma-assistant-experience-new:hover {
2108
- background: var(--bg-subtle);
2109
- color: var(--text-secondary);
2110
- }
2111
-
2112
- .lemma-assistant-experience-viewport {
2113
- min-height: 180px;
2114
- }
2115
-
2116
- .lemma-assistant-experience-loading,
2117
- .lemma-assistant-experience-loading-older {
2118
- display: flex;
2119
- justify-content: center;
2120
- }
2121
-
2122
- .lemma-assistant-experience-loading {
2123
- padding: 24px 0;
2124
- }
2125
-
2126
- .lemma-assistant-experience-loading-older {
2127
- padding: 4px 0;
2128
- }
2129
-
2130
- .lemma-assistant-experience-loading-text {
2131
- font-size: 14px;
2132
- color: var(--text-tertiary);
2133
- }
2134
-
2135
- .lemma-assistant-experience-loading-older-text {
2136
- font-size: 12px;
2137
- color: var(--text-tertiary);
2138
- }
2139
-
2140
- .lemma-assistant-experience-inline-status {
2141
- display: flex;
2142
- align-items: center;
2143
- min-height: 38px;
2144
- padding: 0 4px;
2145
- }
2146
-
2147
- .lemma-assistant-experience-inline-status-pill {
2148
- transition: opacity 160ms ease;
2149
- }
2150
-
2151
- .lemma-assistant-experience-inline-status-pill[data-has-content="true"] {
2152
- opacity: 0.8;
2153
- }
2154
-
2155
- .lemma-assistant-experience-error {
2156
- display: flex;
2157
- align-items: flex-start;
2158
- gap: 10px;
2159
- border: 1px solid color-mix(in srgb, var(--state-error) 48%, var(--border-subtle));
2160
- border-radius: calc(var(--assistant-radius-inline) + 2px);
2161
- background: color-mix(in srgb, var(--state-error) 12%, transparent);
2162
- padding: 12px;
2163
- font-size: 12px;
2164
- color: var(--state-error);
2165
- }
2166
-
2167
- .lemma-assistant-experience-error-title {
2168
- margin: 0;
2169
- font-weight: 600;
2170
- }
2171
-
2172
- .lemma-assistant-experience-error-copy {
2173
- margin: 4px 0 0;
2174
- }
2175
-
2176
- .lemma-assistant-experience-bottom-spacer {
2177
- height: 56px;
2178
- flex: 0 0 auto;
2179
- }
2180
-
2181
- .lemma-assistant-experience-bottom-anchor {
2182
- height: 1px;
2183
- }
2184
-
2185
- .lemma-assistant-experience-composer-body {
2186
- display: flex;
2187
- flex-direction: column;
2188
- gap: 6px;
2189
- }
2190
-
2191
- .lemma-assistant-experience-input-row {
2192
- position: relative;
2193
- padding: 6px 8px;
2194
- border: 1px solid color-mix(in srgb, var(--border-default) 88%, transparent);
2195
- border-radius: var(--assistant-radius-inline);
2196
- background: var(--bg-surface);
2197
- transition: border-color 160ms ease, box-shadow 160ms ease;
2198
- }
2199
-
2200
- .lemma-assistant-experience-input-row:focus-within {
2201
- border-color: color-mix(in srgb, var(--brand-primary) 62%, var(--border-default));
2202
- box-shadow: 0 0 0 1px color-mix(in srgb, var(--brand-primary) 22%, transparent);
2203
- }
2204
-
2205
- .lemma-assistant-experience-file-input {
2206
- display: none;
2207
- }
2208
-
2209
- .lemma-assistant-experience-upload,
2210
- .lemma-assistant-experience-send {
2211
- border: 1px solid color-mix(in srgb, var(--border-default) 88%, transparent);
2212
- display: inline-flex;
2213
- align-items: center;
2214
- justify-content: center;
2215
- width: 36px;
2216
- height: 36px;
2217
- border-radius: var(--assistant-radius-inline);
2218
- transition: background-color 160ms ease, color 160ms ease, transform 160ms ease, box-shadow 160ms ease;
2219
- }
2220
-
2221
- .lemma-assistant-experience-upload {
2222
- align-self: center;
2223
- margin: 0;
2224
- background: var(--bg-subtle);
2225
- color: var(--text-secondary);
2226
- }
2227
-
2228
- .lemma-assistant-experience-upload:hover:not(:disabled):not([data-disabled="true"]) {
2229
- background: var(--bg-canvas);
2230
- color: var(--text-primary);
2231
- }
2232
-
2233
- .lemma-assistant-experience-upload:disabled,
2234
- .lemma-assistant-experience-upload[data-disabled="true"] {
2235
- color: var(--text-tertiary);
2236
- }
2237
-
2238
- .lemma-assistant-experience-textarea {
2239
- flex: 1 1 auto;
2240
- min-height: 48px;
2241
- max-height: 220px;
2242
- border: 0;
2243
- background: transparent;
2244
- padding: 10px 12px;
2245
- font-size: 15px;
2246
- line-height: 1.6;
2247
- color: var(--text-primary);
2248
- outline: none;
2249
- transition: height 140ms ease;
2250
- }
2251
-
2252
- .lemma-assistant-experience-textarea::placeholder {
2253
- color: var(--text-tertiary);
2254
- }
2255
-
2256
- .lemma-assistant-experience-send-wrap {
2257
- align-self: center;
2258
- padding: 0;
2259
- }
2260
-
2261
- .lemma-assistant-experience-send[data-state="busy"] {
2262
- background: var(--text-primary);
2263
- color: var(--text-inverse);
2264
- }
2265
-
2266
- .lemma-assistant-experience-send[data-state="busy"]:hover {
2267
- background: color-mix(in srgb, var(--text-primary) 80%, transparent);
2268
- transform: scale(1.05);
2269
- }
2270
-
2271
- .lemma-assistant-experience-send[data-state="ready"] {
2272
- background: var(--brand-primary);
2273
- color: var(--text-on-brand);
2274
- box-shadow: var(--shadow-xs);
2275
- }
2276
-
2277
- .lemma-assistant-experience-send[data-state="ready"]:hover {
2278
- background: color-mix(in srgb, var(--brand-primary) 88%, var(--text-primary));
2279
- }
2280
-
2281
- .lemma-assistant-experience-send[data-state="idle"] {
2282
- background: var(--bg-subtle);
2283
- color: var(--text-tertiary);
2284
- }
2285
-
2286
- @media (min-width: 1024px) {
2287
- .lemma-assistant-experience[data-show-conversation-list="true"] {
2288
- display: grid;
2289
- grid-template-columns: 280px minmax(0, 1fr);
2290
- align-items: stretch;
2291
- }
2292
-
2293
- .lemma-assistant-experience[data-show-conversation-list="true"] .lemma-assistant-experience-sidebar {
2294
- display: flex;
2295
- min-height: 0;
2296
- }
2297
- }
2298
-
2299
- @media (prefers-color-scheme: dark) {
2300
- .lemma-assistant-theme:not([data-lemma-theme="light"]):not([data-lemma-theme="dark"]) .lemma-assistant-status-pill,
2301
- .lemma-assistant-theme[data-lemma-theme="auto"] .lemma-assistant-status-pill {
2302
- background: color-mix(in srgb, var(--brand-glow) 45%, var(--bg-surface));
2303
- }
2304
-
2305
- .lemma-assistant-theme:not([data-lemma-theme="light"]):not([data-lemma-theme="dark"]) .lemma-assistant-experience-sidebar-item-active,
2306
- .lemma-assistant-theme[data-lemma-theme="auto"] .lemma-assistant-experience-sidebar-item-active,
2307
- .lemma-assistant-theme:not([data-lemma-theme="light"]):not([data-lemma-theme="dark"]) .lemma-assistant-conversation-list-item-active,
2308
- .lemma-assistant-theme[data-lemma-theme="auto"] .lemma-assistant-conversation-list-item-active {
2309
- background: var(--bg-surface);
2310
- border-color: color-mix(in srgb, var(--brand-primary) 52%, var(--border-default));
2311
- }
2312
-
2313
- .lemma-assistant-theme:not([data-lemma-theme="light"]):not([data-lemma-theme="dark"]) .lemma-assistant-markdown pre,
2314
- .lemma-assistant-theme[data-lemma-theme="auto"] .lemma-assistant-markdown pre,
2315
- .lemma-assistant-theme:not([data-lemma-theme="light"]):not([data-lemma-theme="dark"]) .lemma-assistant-tool-details-code,
2316
- .lemma-assistant-theme[data-lemma-theme="auto"] .lemma-assistant-tool-details-code {
2317
- background: color-mix(in srgb, var(--bg-canvas) 88%, var(--bg-surface));
2318
- }
2319
-
2320
- .lemma-assistant-theme:not([data-lemma-theme="light"]):not([data-lemma-theme="dark"]) .lemma-assistant-tool-rollup-thinking,
2321
- .lemma-assistant-theme[data-lemma-theme="auto"] .lemma-assistant-tool-rollup-thinking {
2322
- background: color-mix(in srgb, var(--bg-subtle) 34%, transparent);
2323
- border-color: color-mix(in srgb, var(--border-default) 74%, transparent);
2324
- border-left-color: color-mix(in srgb, var(--border-default) 88%, transparent);
2325
- }
2326
- }
2327
-
2328
- :where(.dark, [data-theme="dark"], [data-color-scheme="dark"], [data-mode="dark"]) .lemma-assistant-theme:not([data-lemma-theme="light"]) .lemma-assistant-status-pill,
2329
- .lemma-assistant-theme[data-lemma-theme="dark"] .lemma-assistant-status-pill {
2330
- background: color-mix(in srgb, var(--brand-glow) 45%, var(--bg-surface));
2331
- }
2332
-
2333
- :where(.dark, [data-theme="dark"], [data-color-scheme="dark"], [data-mode="dark"]) .lemma-assistant-theme:not([data-lemma-theme="light"]) .lemma-assistant-experience-sidebar-item-active,
2334
- .lemma-assistant-theme[data-lemma-theme="dark"] .lemma-assistant-experience-sidebar-item-active,
2335
- :where(.dark, [data-theme="dark"], [data-color-scheme="dark"], [data-mode="dark"]) .lemma-assistant-theme:not([data-lemma-theme="light"]) .lemma-assistant-conversation-list-item-active,
2336
- .lemma-assistant-theme[data-lemma-theme="dark"] .lemma-assistant-conversation-list-item-active {
2337
- background: var(--bg-surface);
2338
- border-color: color-mix(in srgb, var(--brand-primary) 52%, var(--border-default));
2339
- }
2340
-
2341
- :where(.dark, [data-theme="dark"], [data-color-scheme="dark"], [data-mode="dark"]) .lemma-assistant-theme:not([data-lemma-theme="light"]) .lemma-assistant-markdown pre,
2342
- .lemma-assistant-theme[data-lemma-theme="dark"] .lemma-assistant-markdown pre,
2343
- :where(.dark, [data-theme="dark"], [data-color-scheme="dark"], [data-mode="dark"]) .lemma-assistant-theme:not([data-lemma-theme="light"]) .lemma-assistant-tool-details-code,
2344
- .lemma-assistant-theme[data-lemma-theme="dark"] .lemma-assistant-tool-details-code {
2345
- background: color-mix(in srgb, var(--bg-canvas) 88%, var(--bg-surface));
2346
- }
2347
-
2348
- :where(.dark, [data-theme="dark"], [data-color-scheme="dark"], [data-mode="dark"]) .lemma-assistant-theme:not([data-lemma-theme="light"]) .lemma-assistant-tool-rollup-thinking,
2349
- .lemma-assistant-theme[data-lemma-theme="dark"] .lemma-assistant-tool-rollup-thinking {
2350
- background: color-mix(in srgb, var(--bg-subtle) 34%, transparent);
2351
- border-color: color-mix(in srgb, var(--border-default) 74%, transparent);
2352
- border-left-color: color-mix(in srgb, var(--border-default) 88%, transparent);
2353
- }
2354
-
2355
- @keyframes lemma-assistant-fade-in {
2356
- from {
2357
- opacity: 0;
2358
- }
2359
-
2360
- to {
2361
- opacity: 1;
2362
- }
2363
- }
2364
-
2365
- @keyframes lemma-assistant-shimmer {
2366
- 0% {
2367
- background-position: 0% 50%;
2368
- }
2369
-
2370
- 100% {
2371
- background-position: 250% 50%;
2372
- }
2373
- }
2374
-
2375
- @keyframes lemma-assistant-dot-pulse {
2376
- 0% {
2377
- transform: scale(0.9);
2378
- opacity: 0.55;
2379
- }
2380
-
2381
- 50% {
2382
- transform: scale(1.15);
2383
- opacity: 1;
2384
- }
2385
-
2386
- 100% {
2387
- transform: scale(0.9);
2388
- opacity: 0.55;
2389
- }
2390
- }
2391
-
2392
- @keyframes lemma-assistant-ping {
2393
- 0% {
2394
- opacity: 0.55;
2395
- transform: scale(0.8);
2396
- }
2397
-
2398
- 70% {
2399
- opacity: 0;
2400
- transform: scale(1.8);
2401
- }
2402
-
2403
- 100% {
2404
- opacity: 0;
2405
- transform: scale(1.8);
2406
- }
2407
- }