@codesweep-ai/ui 0.2.1-dev.20260830023458.856ea8f

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 (215) hide show
  1. package/LICENSE +202 -0
  2. package/NOTICE +2 -0
  3. package/README.md +124 -0
  4. package/dist/BUILD.json +1 -0
  5. package/dist/chart.d.ts +3 -0
  6. package/dist/chart.d.ts.map +1 -0
  7. package/dist/chart.js +3 -0
  8. package/dist/code.d.ts +2 -0
  9. package/dist/code.d.ts.map +1 -0
  10. package/dist/code.js +2 -0
  11. package/dist/components/AgentStatus.d.ts +15 -0
  12. package/dist/components/AgentStatus.d.ts.map +1 -0
  13. package/dist/components/AgentStatus.js +38 -0
  14. package/dist/components/AgentTrace.d.ts +42 -0
  15. package/dist/components/AgentTrace.d.ts.map +1 -0
  16. package/dist/components/AgentTrace.js +140 -0
  17. package/dist/components/AppShell.d.ts +29 -0
  18. package/dist/components/AppShell.d.ts.map +1 -0
  19. package/dist/components/AppShell.js +71 -0
  20. package/dist/components/Button.d.ts +10 -0
  21. package/dist/components/Button.d.ts.map +1 -0
  22. package/dist/components/Button.js +41 -0
  23. package/dist/components/Card.d.ts +19 -0
  24. package/dist/components/Card.d.ts.map +1 -0
  25. package/dist/components/Card.js +96 -0
  26. package/dist/components/CardGroup.d.ts +16 -0
  27. package/dist/components/CardGroup.d.ts.map +1 -0
  28. package/dist/components/CardGroup.js +33 -0
  29. package/dist/components/CardGroupContext.d.ts +14 -0
  30. package/dist/components/CardGroupContext.d.ts.map +1 -0
  31. package/dist/components/CardGroupContext.js +8 -0
  32. package/dist/components/ChartFrame.d.ts +30 -0
  33. package/dist/components/ChartFrame.d.ts.map +1 -0
  34. package/dist/components/ChartFrame.js +96 -0
  35. package/dist/components/ChartTooltip.d.ts +22 -0
  36. package/dist/components/ChartTooltip.d.ts.map +1 -0
  37. package/dist/components/ChartTooltip.js +26 -0
  38. package/dist/components/CheckboxGroup.d.ts +37 -0
  39. package/dist/components/CheckboxGroup.d.ts.map +1 -0
  40. package/dist/components/CheckboxGroup.js +198 -0
  41. package/dist/components/Chip.d.ts +9 -0
  42. package/dist/components/Chip.d.ts.map +1 -0
  43. package/dist/components/Chip.js +31 -0
  44. package/dist/components/CodeBlock.d.ts +30 -0
  45. package/dist/components/CodeBlock.d.ts.map +1 -0
  46. package/dist/components/CodeBlock.js +112 -0
  47. package/dist/components/Dropdown.d.ts +28 -0
  48. package/dist/components/Dropdown.d.ts.map +1 -0
  49. package/dist/components/Dropdown.js +50 -0
  50. package/dist/components/EventLanes.d.ts +93 -0
  51. package/dist/components/EventLanes.d.ts.map +1 -0
  52. package/dist/components/EventLanes.js +445 -0
  53. package/dist/components/FormGroup.d.ts +29 -0
  54. package/dist/components/FormGroup.d.ts.map +1 -0
  55. package/dist/components/FormGroup.js +48 -0
  56. package/dist/components/HighlightText.d.ts +15 -0
  57. package/dist/components/HighlightText.d.ts.map +1 -0
  58. package/dist/components/HighlightText.js +28 -0
  59. package/dist/components/Input.d.ts +35 -0
  60. package/dist/components/Input.d.ts.map +1 -0
  61. package/dist/components/Input.js +61 -0
  62. package/dist/components/Legend.d.ts +21 -0
  63. package/dist/components/Legend.d.ts.map +1 -0
  64. package/dist/components/Legend.js +61 -0
  65. package/dist/components/LightweightMarkdown.d.ts +3 -0
  66. package/dist/components/LightweightMarkdown.d.ts.map +1 -0
  67. package/dist/components/LightweightMarkdown.js +249 -0
  68. package/dist/components/MarkdownMinimap.d.ts +7 -0
  69. package/dist/components/MarkdownMinimap.d.ts.map +1 -0
  70. package/dist/components/MarkdownMinimap.js +84 -0
  71. package/dist/components/MarkdownViewer.d.ts +51 -0
  72. package/dist/components/MarkdownViewer.d.ts.map +1 -0
  73. package/dist/components/MarkdownViewer.js +455 -0
  74. package/dist/components/MermaidDiagram.d.ts +11 -0
  75. package/dist/components/MermaidDiagram.d.ts.map +1 -0
  76. package/dist/components/MermaidDiagram.js +119 -0
  77. package/dist/components/Modal.d.ts +13 -0
  78. package/dist/components/Modal.d.ts.map +1 -0
  79. package/dist/components/Modal.js +91 -0
  80. package/dist/components/Panel.d.ts +13 -0
  81. package/dist/components/Panel.d.ts.map +1 -0
  82. package/dist/components/Panel.js +44 -0
  83. package/dist/components/PulseBadge.d.ts +15 -0
  84. package/dist/components/PulseBadge.d.ts.map +1 -0
  85. package/dist/components/PulseBadge.js +22 -0
  86. package/dist/components/RadioGroup.d.ts +20 -0
  87. package/dist/components/RadioGroup.d.ts.map +1 -0
  88. package/dist/components/RadioGroup.js +63 -0
  89. package/dist/components/RichMarkdownRenderer.d.ts +10 -0
  90. package/dist/components/RichMarkdownRenderer.d.ts.map +1 -0
  91. package/dist/components/RichMarkdownRenderer.js +18 -0
  92. package/dist/components/SearchInput.d.ts +25 -0
  93. package/dist/components/SearchInput.d.ts.map +1 -0
  94. package/dist/components/SearchInput.js +92 -0
  95. package/dist/components/SectionedTree.d.ts +36 -0
  96. package/dist/components/SectionedTree.d.ts.map +1 -0
  97. package/dist/components/SectionedTree.js +173 -0
  98. package/dist/components/SegmentedControl.d.ts +16 -0
  99. package/dist/components/SegmentedControl.d.ts.map +1 -0
  100. package/dist/components/SegmentedControl.js +48 -0
  101. package/dist/components/Skeleton.d.ts +8 -0
  102. package/dist/components/Skeleton.d.ts.map +1 -0
  103. package/dist/components/Skeleton.js +25 -0
  104. package/dist/components/SplitPane.d.ts +16 -0
  105. package/dist/components/SplitPane.d.ts.map +1 -0
  106. package/dist/components/SplitPane.js +118 -0
  107. package/dist/components/StatusBadge.d.ts +15 -0
  108. package/dist/components/StatusBadge.d.ts.map +1 -0
  109. package/dist/components/StatusBadge.js +40 -0
  110. package/dist/components/StreamingText.d.ts +20 -0
  111. package/dist/components/StreamingText.d.ts.map +1 -0
  112. package/dist/components/StreamingText.js +50 -0
  113. package/dist/components/Table.d.ts +62 -0
  114. package/dist/components/Table.d.ts.map +1 -0
  115. package/dist/components/Table.js +256 -0
  116. package/dist/components/ThemeToggle.d.ts +11 -0
  117. package/dist/components/ThemeToggle.d.ts.map +1 -0
  118. package/dist/components/ThemeToggle.js +55 -0
  119. package/dist/components/Toast.d.ts +8 -0
  120. package/dist/components/Toast.d.ts.map +1 -0
  121. package/dist/components/Toast.js +51 -0
  122. package/dist/components/ToastContainer.d.ts +5 -0
  123. package/dist/components/ToastContainer.d.ts.map +1 -0
  124. package/dist/components/ToastContainer.js +29 -0
  125. package/dist/components/Tree.d.ts +50 -0
  126. package/dist/components/Tree.d.ts.map +1 -0
  127. package/dist/components/Tree.js +528 -0
  128. package/dist/components/TreeDnd.d.ts +18 -0
  129. package/dist/components/TreeDnd.d.ts.map +1 -0
  130. package/dist/components/TreeDnd.js +39 -0
  131. package/dist/index.d.ts +50 -0
  132. package/dist/index.d.ts.map +1 -0
  133. package/dist/index.js +35 -0
  134. package/dist/lib/accentToken.d.ts +3 -0
  135. package/dist/lib/accentToken.d.ts.map +1 -0
  136. package/dist/lib/accentToken.js +12 -0
  137. package/dist/lib/chartTheme.d.ts +45 -0
  138. package/dist/lib/chartTheme.d.ts.map +1 -0
  139. package/dist/lib/chartTheme.js +64 -0
  140. package/dist/lib/cn.d.ts +6 -0
  141. package/dist/lib/cn.d.ts.map +1 -0
  142. package/dist/lib/cn.js +11 -0
  143. package/dist/lib/forwardRefToRoot.d.ts +8 -0
  144. package/dist/lib/forwardRefToRoot.d.ts.map +1 -0
  145. package/dist/lib/forwardRefToRoot.js +18 -0
  146. package/dist/lib/markdownUrl.d.ts +5 -0
  147. package/dist/lib/markdownUrl.d.ts.map +1 -0
  148. package/dist/lib/markdownUrl.js +24 -0
  149. package/dist/lib/toast.d.ts +30 -0
  150. package/dist/lib/toast.d.ts.map +1 -0
  151. package/dist/lib/toast.js +34 -0
  152. package/dist/lib/useTheme.d.ts +22 -0
  153. package/dist/lib/useTheme.d.ts.map +1 -0
  154. package/dist/lib/useTheme.js +62 -0
  155. package/dist/markdown/rich.d.ts +10 -0
  156. package/dist/markdown/rich.d.ts.map +1 -0
  157. package/dist/markdown/rich.js +8 -0
  158. package/dist/markdown.d.ts +3 -0
  159. package/dist/markdown.d.ts.map +1 -0
  160. package/dist/markdown.js +2 -0
  161. package/dist/mermaid.d.ts +2 -0
  162. package/dist/mermaid.d.ts.map +1 -0
  163. package/dist/mermaid.js +2 -0
  164. package/dist/minimap.d.ts +2 -0
  165. package/dist/minimap.d.ts.map +1 -0
  166. package/dist/minimap.js +2 -0
  167. package/dist/styles/base.css +98 -0
  168. package/dist/styles/components/agent-status.css +52 -0
  169. package/dist/styles/components/agent-trace.css +206 -0
  170. package/dist/styles/components/app-shell.css +195 -0
  171. package/dist/styles/components/button.css +172 -0
  172. package/dist/styles/components/card-group.css +20 -0
  173. package/dist/styles/components/card.css +200 -0
  174. package/dist/styles/components/chart-frame.css +144 -0
  175. package/dist/styles/components/chart-tooltip.css +54 -0
  176. package/dist/styles/components/checkbox-group.css +281 -0
  177. package/dist/styles/components/chip.css +61 -0
  178. package/dist/styles/components/code-block.css +215 -0
  179. package/dist/styles/components/dropdown.css +131 -0
  180. package/dist/styles/components/event-lanes.css +159 -0
  181. package/dist/styles/components/form-group.css +34 -0
  182. package/dist/styles/components/highlight-text.css +17 -0
  183. package/dist/styles/components/input.css +168 -0
  184. package/dist/styles/components/legend.css +80 -0
  185. package/dist/styles/components/markdown-minimap.css +13 -0
  186. package/dist/styles/components/markdown-viewer.css +354 -0
  187. package/dist/styles/components/mermaid-diagram.css +8 -0
  188. package/dist/styles/components/modal.css +167 -0
  189. package/dist/styles/components/panel.css +126 -0
  190. package/dist/styles/components/pulse-badge.css +56 -0
  191. package/dist/styles/components/radio-group.css +89 -0
  192. package/dist/styles/components/search-input.css +153 -0
  193. package/dist/styles/components/sectioned-tree.css +183 -0
  194. package/dist/styles/components/segmented-control.css +54 -0
  195. package/dist/styles/components/skeleton.css +21 -0
  196. package/dist/styles/components/split-pane.css +78 -0
  197. package/dist/styles/components/status-badge.css +94 -0
  198. package/dist/styles/components/streaming-text.css +38 -0
  199. package/dist/styles/components/table.css +235 -0
  200. package/dist/styles/components/theme-toggle.css +123 -0
  201. package/dist/styles/components/toast-container.css +34 -0
  202. package/dist/styles/components/toast.css +169 -0
  203. package/dist/styles/components/tree.css +375 -0
  204. package/dist/styles/components.css +37 -0
  205. package/dist/styles/core.css +3 -0
  206. package/dist/styles/markdown-content.css +368 -0
  207. package/dist/styles/print.css +55 -0
  208. package/dist/styles/reset.css +202 -0
  209. package/dist/styles/syntax.css +62 -0
  210. package/dist/styles/tokens.css +344 -0
  211. package/dist/styles/utilities.css +7 -0
  212. package/dist/testing/index.d.ts +39 -0
  213. package/dist/testing/index.d.ts.map +1 -0
  214. package/dist/testing/index.js +119 -0
  215. package/package.json +138 -0
@@ -0,0 +1,368 @@
1
+ /* ── Scoped Markdown Typography ──────────────────────────── */
2
+ /* All styles scoped under .markdown-content. Uses DS tokens. */
3
+
4
+ .markdown-content {
5
+ color: var(--fg);
6
+ font-size: var(--font-size-prose-body);
7
+ line-height: var(--line-height-prose);
8
+ word-wrap: break-word;
9
+ overflow-wrap: break-word;
10
+ }
11
+
12
+ /* ── Headings ───────────────────────────────────────────── */
13
+
14
+ .markdown-content h1,
15
+ .markdown-content h2,
16
+ .markdown-content h3,
17
+ .markdown-content h4,
18
+ .markdown-content h5,
19
+ .markdown-content h6 {
20
+ font-weight: var(--font-weight-semibold);
21
+ color: var(--fg);
22
+ margin: var(--space-6) 0 var(--space-3);
23
+ line-height: var(--line-height-tight);
24
+ }
25
+
26
+ .markdown-content h1 {
27
+ font-size: var(--font-size-prose-h1);
28
+ padding-bottom: var(--space-2);
29
+ border-bottom: 1px solid var(--border);
30
+ }
31
+
32
+ .markdown-content h2 {
33
+ font-size: var(--font-size-prose-h2);
34
+ padding-bottom: var(--space-2);
35
+ border-bottom: 1px solid var(--border);
36
+ }
37
+
38
+ .markdown-content h3 {
39
+ font-size: var(--font-size-prose-h3);
40
+ }
41
+
42
+ .markdown-content h4 {
43
+ font-size: var(--font-size-prose-h4);
44
+ }
45
+
46
+ .markdown-content h5 {
47
+ font-size: var(--font-size-prose-small);
48
+ }
49
+
50
+ .markdown-content h6 {
51
+ font-size: var(--font-size-prose-small);
52
+ color: var(--muted);
53
+ }
54
+
55
+ .markdown-content > :first-child {
56
+ margin-top: 0;
57
+ }
58
+
59
+ /* Compact variant for inspector/detail side panes. */
60
+ .markdown-content--dense {
61
+ font-size: var(--font-size-sm);
62
+ }
63
+
64
+ .markdown-content--dense h1 {
65
+ font-size: var(--font-size-xl);
66
+ }
67
+
68
+ .markdown-content--dense h2 {
69
+ font-size: var(--font-size-lg);
70
+ }
71
+
72
+ .markdown-content--dense h3,
73
+ .markdown-content--dense h4 {
74
+ font-size: var(--font-size-md);
75
+ }
76
+
77
+ .markdown-content--dense h1,
78
+ .markdown-content--dense h2,
79
+ .markdown-content--dense h3,
80
+ .markdown-content--dense h4,
81
+ .markdown-content--dense h5,
82
+ .markdown-content--dense h6 {
83
+ margin-top: var(--space-4);
84
+ margin-bottom: var(--space-2);
85
+ }
86
+
87
+ .markdown-content--dense p,
88
+ .markdown-content--dense ul,
89
+ .markdown-content--dense ol,
90
+ .markdown-content--dense blockquote,
91
+ .markdown-content--dense .md-code-block {
92
+ margin-bottom: var(--space-3);
93
+ }
94
+
95
+ /* ── Paragraphs ─────────────────────────────────────────── */
96
+
97
+ .markdown-content p {
98
+ margin: 0 0 var(--space-4);
99
+ }
100
+
101
+ /* ── Lists ──────────────────────────────────────────────── */
102
+
103
+ .markdown-content ul,
104
+ .markdown-content ol {
105
+ padding-left: var(--space-6);
106
+ margin: 0 0 var(--space-4);
107
+ }
108
+
109
+ .markdown-content li {
110
+ margin-bottom: var(--space-1);
111
+ }
112
+
113
+ .markdown-content li > ul,
114
+ .markdown-content li > ol {
115
+ margin-top: var(--space-1);
116
+ margin-bottom: 0;
117
+ }
118
+
119
+ /* ── Task lists ─────────────────────────────────────────── */
120
+
121
+ .markdown-content ul:has(> li > input[type="checkbox"]) {
122
+ list-style: none;
123
+ padding-left: 0;
124
+ }
125
+
126
+ .markdown-content li > input[type="checkbox"] {
127
+ margin-right: var(--space-2);
128
+ accent-color: var(--color-accent);
129
+ }
130
+
131
+ /* ── Blockquotes ────────────────────────────────────────── */
132
+
133
+ .markdown-content blockquote {
134
+ border-left: 4px solid var(--color-link);
135
+ background: var(--color-bg-subtle);
136
+ padding: var(--space-3) var(--space-4);
137
+ margin: 0 0 var(--space-4);
138
+ color: var(--fg);
139
+ }
140
+
141
+ .markdown-content blockquote > :last-child {
142
+ margin-bottom: 0;
143
+ }
144
+
145
+ /* ── Links ──────────────────────────────────────────────── */
146
+
147
+ .markdown-content a {
148
+ color: var(--color-link);
149
+ text-decoration: none;
150
+ }
151
+
152
+ .markdown-content a:hover {
153
+ text-decoration: underline;
154
+ color: var(--color-link-hover);
155
+ }
156
+
157
+ /* ── Inline code ────────────────────────────────────────── */
158
+
159
+ .markdown-content :not(pre) > code {
160
+ font-family: var(--font-family-mono);
161
+ background: var(--color-bg-muted);
162
+ padding: var(--space-0-5) var(--space-1);
163
+ border-radius: var(--radius-xs);
164
+ font-size: var(--font-size-xs);
165
+ }
166
+
167
+ /* ── Code blocks ────────────────────────────────────────── */
168
+
169
+ .md-code-block {
170
+ border-radius: var(--radius-md);
171
+ overflow: hidden;
172
+ border: 1px solid var(--border);
173
+ margin: 0 0 var(--space-4);
174
+ }
175
+
176
+ .md-code-block__header {
177
+ display: flex;
178
+ align-items: center;
179
+ justify-content: space-between;
180
+ padding: var(--space-2) var(--space-3);
181
+ background: var(--card);
182
+ border-bottom: 1px solid var(--border);
183
+ }
184
+
185
+ .md-code-block__body {
186
+ background: var(--color-bg-subtle);
187
+ overflow-x: auto;
188
+ }
189
+
190
+ .md-code-block__body pre {
191
+ margin: 0;
192
+ padding: var(--space-3) var(--space-4);
193
+ font-family: var(--font-family-mono);
194
+ font-size: var(--font-size-xs);
195
+ line-height: var(--line-height-code);
196
+ }
197
+
198
+ .md-code-block__body code {
199
+ font-family: inherit;
200
+ background: none;
201
+ padding: 0;
202
+ }
203
+
204
+ /* ── Tables ─────────────────────────────────────────────── */
205
+
206
+ .markdown-content table {
207
+ border-collapse: collapse;
208
+ width: 100%;
209
+ margin: 0 0 var(--space-4);
210
+ font-size: var(--font-size-xs);
211
+ }
212
+
213
+ .markdown-content th {
214
+ background: var(--card);
215
+ font-weight: var(--font-weight-semibold);
216
+ text-align: left;
217
+ }
218
+
219
+ .markdown-content th,
220
+ .markdown-content td {
221
+ border: 1px solid var(--border);
222
+ padding: var(--space-2) var(--space-3);
223
+ }
224
+
225
+ .markdown-content tr:nth-child(even) {
226
+ background: var(--color-bg-subtle);
227
+ }
228
+
229
+ /* ── Horizontal rule ────────────────────────────────────── */
230
+
231
+ .markdown-content hr {
232
+ border: none;
233
+ border-top: 1px solid var(--border);
234
+ margin: var(--space-6) 0;
235
+ }
236
+
237
+ /* ── Images ─────────────────────────────────────────────── */
238
+
239
+ .markdown-content img {
240
+ max-width: 100%;
241
+ border-radius: var(--radius-md);
242
+ }
243
+
244
+ /* ── GitHub Alerts ──────────────────────────────────────── */
245
+
246
+ .md-alert {
247
+ padding: var(--space-3) var(--space-4);
248
+ margin: 0 0 var(--space-4);
249
+ border-left: 4px solid;
250
+ border-radius: var(--radius-sm);
251
+ }
252
+
253
+ .md-alert__title {
254
+ display: flex;
255
+ align-items: center;
256
+ gap: var(--space-2);
257
+ font-weight: var(--font-weight-semibold);
258
+ margin-bottom: var(--space-2);
259
+ font-size: var(--font-size-sm);
260
+ }
261
+
262
+ .md-alert__body > :last-child {
263
+ margin-bottom: 0;
264
+ }
265
+
266
+ .md-alert--note {
267
+ border-color: var(--color-link);
268
+ background: var(--color-accent-bg-strong);
269
+ }
270
+
271
+ .md-alert--note .md-alert__title {
272
+ color: var(--color-link);
273
+ }
274
+
275
+ .md-alert--tip {
276
+ border-color: var(--color-success);
277
+ background: var(--color-success-bg);
278
+ }
279
+
280
+ .md-alert--tip .md-alert__title {
281
+ color: var(--color-success);
282
+ }
283
+
284
+ .md-alert--important {
285
+ border-color: var(--color-cat-5);
286
+ background: var(--color-bg-subtle);
287
+ }
288
+
289
+ .md-alert--important .md-alert__title {
290
+ color: var(--color-cat-5);
291
+ }
292
+
293
+ .md-alert--warning {
294
+ border-color: var(--color-warning);
295
+ background: var(--color-warning-bg);
296
+ }
297
+
298
+ .md-alert--warning .md-alert__title {
299
+ color: var(--color-warning);
300
+ }
301
+
302
+ .md-alert--caution {
303
+ border-color: var(--color-error);
304
+ background: var(--color-error-bg);
305
+ }
306
+
307
+ .md-alert--caution .md-alert__title {
308
+ color: var(--color-error);
309
+ }
310
+
311
+ /* ── Mermaid containers ─────────────────────────────────── */
312
+
313
+ .md-mermaid {
314
+ display: flex;
315
+ justify-content: center;
316
+ background: var(--card);
317
+ border: 1px solid var(--border);
318
+ border-radius: var(--radius-md);
319
+ padding: var(--space-4);
320
+ margin: 0 0 var(--space-4);
321
+ overflow-x: auto;
322
+ }
323
+
324
+ .md-mermaid svg {
325
+ max-width: 100%;
326
+ height: auto;
327
+ }
328
+
329
+ .md-mermaid-error {
330
+ background: var(--color-error-bg);
331
+ border: 1px solid var(--color-error);
332
+ border-radius: var(--radius-md);
333
+ padding: var(--space-4);
334
+ margin: 0 0 var(--space-4);
335
+ }
336
+
337
+ .md-mermaid-error__header {
338
+ display: flex;
339
+ align-items: center;
340
+ gap: var(--space-2);
341
+ color: var(--color-error);
342
+ font-weight: var(--font-weight-semibold);
343
+ font-size: var(--font-size-sm);
344
+ margin-bottom: var(--space-2);
345
+ }
346
+
347
+ .md-mermaid-error__code {
348
+ margin: 0;
349
+ padding: var(--space-3);
350
+ background: var(--color-bg-subtle);
351
+ border-radius: var(--radius-sm);
352
+ font-family: var(--font-family-mono);
353
+ font-size: var(--font-size-xs);
354
+ overflow-x: auto;
355
+ color: var(--fg);
356
+ }
357
+
358
+ /* ── KaTeX ──────────────────────────────────────────────── */
359
+
360
+ .markdown-content .katex {
361
+ font-size: var(--font-size-md);
362
+ }
363
+
364
+ .markdown-content .katex-display {
365
+ overflow-x: auto;
366
+ overflow-y: hidden;
367
+ padding: var(--space-2) 0;
368
+ }
@@ -0,0 +1,55 @@
1
+ /* Print stylesheet — sensible defaults for clean PDF / paper export.
2
+ Opt-in: import "@codesweep-ai/ui/styles/print.css" once at the app root.
3
+ Hides app chrome (Header / Footer + anything marked `.no-print`), forces
4
+ light theme so it's readable on paper, and lets long-form prose fill the
5
+ page width. Add `.no-print` to anything else you want suppressed. */
6
+
7
+ @media print {
8
+ :root {
9
+ color-scheme: light;
10
+ }
11
+
12
+ body {
13
+ background: white;
14
+ color: black;
15
+ }
16
+
17
+ /* Suppress app chrome and anything opted out via .no-print */
18
+ [data-component="Header"],
19
+ [data-component="Footer"],
20
+ .no-print {
21
+ display: none !important;
22
+ }
23
+
24
+ /* Long-form prose fills the page width on paper */
25
+ .prose,
26
+ .markdown-content {
27
+ max-width: none;
28
+ }
29
+
30
+ /* Avoid orphaned headings / split rows */
31
+ h1,
32
+ h2,
33
+ h3,
34
+ h4 {
35
+ page-break-after: avoid;
36
+ break-after: avoid;
37
+ }
38
+ tr,
39
+ img,
40
+ pre {
41
+ page-break-inside: avoid;
42
+ break-inside: avoid;
43
+ }
44
+
45
+ /* Link URLs after the link text, so printed pages aren't dead-ends */
46
+ a[href]::after {
47
+ content: " (" attr(href) ")";
48
+ font-size: 0.85em;
49
+ color: var(--muted);
50
+ }
51
+ a[href^="#"]::after,
52
+ a[href^="javascript:"]::after {
53
+ content: "";
54
+ }
55
+ }
@@ -0,0 +1,202 @@
1
+ /* Browser normalization required by the component layer. */
2
+ *,
3
+ *::before,
4
+ *::after {
5
+ box-sizing: border-box;
6
+ border-width: 0;
7
+ border-style: solid;
8
+ border-color: currentColor;
9
+ }
10
+
11
+ html,
12
+ :host {
13
+ line-height: 1.5;
14
+ -webkit-text-size-adjust: 100%;
15
+ tab-size: 4;
16
+ font-feature-settings: normal;
17
+ font-variation-settings: normal;
18
+ -webkit-tap-highlight-color: transparent;
19
+ }
20
+
21
+ body {
22
+ margin: 0;
23
+ line-height: inherit;
24
+ }
25
+
26
+ hr {
27
+ height: 0;
28
+ color: inherit;
29
+ border-top-width: thin;
30
+ }
31
+
32
+ abbr:where([title]) {
33
+ text-decoration: underline dotted;
34
+ }
35
+
36
+ h1,
37
+ h2,
38
+ h3,
39
+ h4,
40
+ h5,
41
+ h6 {
42
+ font-size: inherit;
43
+ font-weight: inherit;
44
+ }
45
+
46
+ a {
47
+ color: inherit;
48
+ text-decoration: inherit;
49
+ }
50
+
51
+ b,
52
+ strong {
53
+ font-weight: bolder;
54
+ }
55
+
56
+ code,
57
+ kbd,
58
+ samp,
59
+ pre {
60
+ font-family: var(--font-family-mono);
61
+ font-feature-settings: normal;
62
+ font-variation-settings: normal;
63
+ font-size: 1em;
64
+ }
65
+
66
+ small {
67
+ font-size: 80%;
68
+ }
69
+
70
+ sub,
71
+ sup {
72
+ font-size: 75%;
73
+ line-height: 0;
74
+ position: relative;
75
+ vertical-align: baseline;
76
+ }
77
+
78
+ sub {
79
+ bottom: -0.25em;
80
+ }
81
+
82
+ sup {
83
+ top: -0.5em;
84
+ }
85
+
86
+ table {
87
+ text-indent: 0;
88
+ border-color: inherit;
89
+ border-collapse: collapse;
90
+ }
91
+
92
+ button,
93
+ input,
94
+ optgroup,
95
+ select,
96
+ textarea {
97
+ font-family: inherit;
98
+ font-feature-settings: inherit;
99
+ font-variation-settings: inherit;
100
+ font-size: 100%;
101
+ font-weight: inherit;
102
+ line-height: inherit;
103
+ letter-spacing: inherit;
104
+ color: inherit;
105
+ margin: 0;
106
+ padding: 0;
107
+ }
108
+
109
+ input::placeholder,
110
+ textarea::placeholder {
111
+ color: var(--color-neutral);
112
+ opacity: 1;
113
+ }
114
+
115
+ button,
116
+ select {
117
+ text-transform: none;
118
+ }
119
+
120
+ button,
121
+ input:where([type="button"], [type="reset"], [type="submit"]) {
122
+ appearance: button;
123
+ background-color: transparent;
124
+ background-image: none;
125
+ }
126
+
127
+ progress {
128
+ vertical-align: baseline;
129
+ }
130
+
131
+ summary {
132
+ display: list-item;
133
+ }
134
+
135
+ blockquote,
136
+ dl,
137
+ dd,
138
+ h1,
139
+ h2,
140
+ h3,
141
+ h4,
142
+ h5,
143
+ h6,
144
+ hr,
145
+ figure,
146
+ p,
147
+ pre {
148
+ margin: 0;
149
+ }
150
+
151
+ ol,
152
+ ul,
153
+ menu {
154
+ list-style: none;
155
+ margin: 0;
156
+ padding: 0;
157
+ }
158
+
159
+ dialog {
160
+ padding: 0;
161
+ }
162
+
163
+ textarea {
164
+ resize: vertical;
165
+ }
166
+
167
+ input::placeholder,
168
+ textarea::placeholder {
169
+ opacity: 1;
170
+ color: var(--muted);
171
+ }
172
+
173
+ button,
174
+ [role="button"] {
175
+ cursor: pointer;
176
+ }
177
+
178
+ :disabled {
179
+ cursor: default;
180
+ }
181
+
182
+ img,
183
+ svg,
184
+ video,
185
+ canvas,
186
+ audio,
187
+ iframe,
188
+ embed,
189
+ object {
190
+ display: block;
191
+ vertical-align: middle;
192
+ }
193
+
194
+ img,
195
+ video {
196
+ max-width: 100%;
197
+ height: auto;
198
+ }
199
+
200
+ [hidden] {
201
+ display: none;
202
+ }
@@ -0,0 +1,62 @@
1
+ .hljs {
2
+ color: var(--fg);
3
+ background: transparent;
4
+ }
5
+
6
+ .hljs-comment,
7
+ .hljs-quote {
8
+ color: var(--syntax-comment);
9
+ font-style: italic;
10
+ }
11
+
12
+ .hljs-keyword,
13
+ .hljs-selector-tag,
14
+ .hljs-addition {
15
+ color: var(--syntax-keyword);
16
+ }
17
+
18
+ .hljs-string,
19
+ .hljs-doctag,
20
+ .hljs-regexp {
21
+ color: var(--syntax-string);
22
+ }
23
+
24
+ .hljs-number,
25
+ .hljs-literal {
26
+ color: var(--syntax-number);
27
+ }
28
+
29
+ .hljs-title,
30
+ .hljs-section,
31
+ .hljs-name,
32
+ .hljs-selector-id,
33
+ .hljs-selector-class {
34
+ color: var(--syntax-title);
35
+ }
36
+
37
+ .hljs-attribute,
38
+ .hljs-attr {
39
+ color: var(--syntax-attr);
40
+ }
41
+
42
+ .hljs-variable,
43
+ .hljs-template-variable,
44
+ .hljs-built_in {
45
+ color: var(--syntax-builtin);
46
+ }
47
+
48
+ .hljs-type,
49
+ .hljs-params {
50
+ color: var(--syntax-attr);
51
+ }
52
+
53
+ .hljs-meta {
54
+ color: var(--syntax-builtin);
55
+ }
56
+
57
+ .code-query-match {
58
+ background: var(--color-highlight);
59
+ color: var(--fg);
60
+ border-radius: var(--radius-xs);
61
+ padding: 0 var(--space-px);
62
+ }