@theoremjs/react 0.0.0-stage → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (320) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +772 -2
  3. package/client/attachment-hover-preview.d.ts +11 -0
  4. package/client/attachment-hover-preview.js +36 -0
  5. package/client/audio-level.d.ts +5 -0
  6. package/client/audio-level.js +24 -0
  7. package/client/composer-attachments.d.ts +30 -0
  8. package/client/composer-attachments.js +33 -0
  9. package/client/composer-drawer.d.ts +19 -0
  10. package/client/composer-drawer.js +15 -0
  11. package/client/composer-hints.d.ts +25 -0
  12. package/client/composer-hints.js +20 -0
  13. package/client/composer-primary.d.ts +16 -0
  14. package/client/composer-primary.js +25 -0
  15. package/client/decision-images.d.ts +76 -0
  16. package/client/decision-images.js +139 -0
  17. package/client/decision-transport.d.ts +70 -0
  18. package/client/decision-transport.js +175 -0
  19. package/client/decode-composer-draft.d.ts +11 -0
  20. package/client/decode-composer-draft.js +12 -0
  21. package/client/embedding-input.d.ts +84 -0
  22. package/client/embedding-input.js +194 -0
  23. package/client/embedding-space.d.ts +82 -0
  24. package/client/embedding-space.js +389 -0
  25. package/client/embedding-transport.d.ts +40 -0
  26. package/client/embedding-transport.js +71 -0
  27. package/client/encode-composer-draft.d.ts +9 -0
  28. package/client/encode-composer-draft.js +34 -0
  29. package/client/encode-files.d.ts +18 -0
  30. package/client/encode-files.js +54 -0
  31. package/client/failure.d.ts +29 -0
  32. package/client/failure.js +34 -0
  33. package/client/generation-selection.d.ts +15 -0
  34. package/client/generation-selection.js +24 -0
  35. package/client/host-call.d.ts +51 -0
  36. package/client/host-call.js +47 -0
  37. package/client/host-transport.d.ts +70 -0
  38. package/client/host-transport.js +75 -0
  39. package/client/image-output.d.ts +6 -0
  40. package/client/image-output.js +13 -0
  41. package/client/index.d.ts +28 -0
  42. package/client/index.js +22 -0
  43. package/client/ink-waveform.d.ts +17 -0
  44. package/client/ink-waveform.js +68 -0
  45. package/client/live/apply-live-turn-tool-event.d.ts +14 -0
  46. package/client/live/apply-live-turn-tool-event.js +39 -0
  47. package/client/live/live-captions.d.ts +53 -0
  48. package/client/live/live-captions.js +174 -0
  49. package/client/live/live-mic-forward.d.ts +30 -0
  50. package/client/live/live-mic-forward.js +46 -0
  51. package/client/live/live-page-tool.d.ts +34 -0
  52. package/client/live/live-page-tool.js +11 -0
  53. package/client/live/live-state.d.ts +13 -0
  54. package/client/live/live-state.js +22 -0
  55. package/client/live/live-tool.d.ts +11 -0
  56. package/client/live/live-tool.js +1 -0
  57. package/client/live/live-video.d.ts +10 -0
  58. package/client/live/live-video.js +71 -0
  59. package/client/live/run-live-tool-call.d.ts +22 -0
  60. package/client/live/run-live-tool-call.js +70 -0
  61. package/client/live/use-live-caption-log.d.ts +17 -0
  62. package/client/live/use-live-caption-log.js +51 -0
  63. package/client/live-client.d.ts +189 -0
  64. package/client/live-client.js +829 -0
  65. package/client/live-errors.d.ts +2 -0
  66. package/client/live-errors.js +9 -0
  67. package/client/live-messages.d.ts +148 -0
  68. package/client/live-messages.js +100 -0
  69. package/client/mic-capture.d.ts +4 -0
  70. package/client/mic-capture.js +6 -0
  71. package/client/oauth-popup.d.ts +26 -0
  72. package/client/oauth-popup.js +30 -0
  73. package/client/page-dispatch.d.ts +15 -0
  74. package/client/page-dispatch.js +63 -0
  75. package/client/pcm-downsample.d.ts +4 -0
  76. package/client/pcm-downsample.js +45 -0
  77. package/client/run-commit.d.ts +34 -0
  78. package/client/run-commit.js +49 -0
  79. package/client/run-session.d.ts +79 -0
  80. package/client/run-session.js +207 -0
  81. package/client/schema-fields.d.ts +63 -0
  82. package/client/schema-fields.js +199 -0
  83. package/client/shaped-data.d.ts +118 -0
  84. package/client/shaped-data.js +343 -0
  85. package/client/source-citations.d.ts +13 -0
  86. package/client/source-citations.js +56 -0
  87. package/client/space-geometry.d.ts +39 -0
  88. package/client/space-geometry.js +183 -0
  89. package/client/state-fields.d.ts +16 -0
  90. package/client/state-fields.js +44 -0
  91. package/client/tool-result.d.ts +78 -0
  92. package/client/tool-result.js +293 -0
  93. package/client/tool-resume.d.ts +50 -0
  94. package/client/tool-resume.js +14 -0
  95. package/client/trace-feed.d.ts +13 -0
  96. package/client/trace-feed.js +18 -0
  97. package/client/trace-story.d.ts +163 -0
  98. package/client/trace-story.js +440 -0
  99. package/client/trace-view.d.ts +130 -0
  100. package/client/trace-view.js +333 -0
  101. package/client/transcript-groups.d.ts +140 -0
  102. package/client/transcript-groups.js +217 -0
  103. package/client/transcript-schema.d.ts +10 -0
  104. package/client/transcript-schema.js +120 -0
  105. package/client/transcript-scroll.d.ts +7 -0
  106. package/client/transcript-scroll.js +6 -0
  107. package/client/transport.d.ts +264 -0
  108. package/client/transport.js +330 -0
  109. package/client/turn-client.d.ts +44 -0
  110. package/client/turn-client.js +88 -0
  111. package/client/voice-label.d.ts +2 -0
  112. package/client/voice-label.js +15 -0
  113. package/client/voice-recorder.d.ts +27 -0
  114. package/client/voice-recorder.js +162 -0
  115. package/client/wire-line.d.ts +56 -0
  116. package/client/wire-line.js +90 -0
  117. package/client/worklets/mic-capture.js +16 -0
  118. package/components/InkWaveform.d.ts +21 -0
  119. package/components/InkWaveform.js +131 -0
  120. package/components/live/use-live-runner-controls.d.ts +47 -0
  121. package/components/live/use-live-runner-controls.js +96 -0
  122. package/components/live/use-live-runner-model.d.ts +49 -0
  123. package/components/live/use-live-runner-model.js +190 -0
  124. package/components/live/use-live-runner-ui.d.ts +67 -0
  125. package/components/live/use-live-runner-ui.js +167 -0
  126. package/components/live/use-live-session-client.d.ts +41 -0
  127. package/components/live/use-live-session-client.js +126 -0
  128. package/components/use-composer-voice.d.ts +28 -0
  129. package/components/use-composer-voice.js +90 -0
  130. package/components/use-editor-selection.d.ts +3 -0
  131. package/components/use-editor-selection.js +19 -0
  132. package/components/use-voice-playback.d.ts +17 -0
  133. package/components/use-voice-playback.js +68 -0
  134. package/hooks/use-described.d.ts +12 -0
  135. package/hooks/use-described.js +25 -0
  136. package/hooks/use-embedding-index.d.ts +27 -0
  137. package/hooks/use-embedding-index.js +43 -0
  138. package/hooks/use-one-call.d.ts +31 -0
  139. package/hooks/use-one-call.js +76 -0
  140. package/hooks/use-page-tool-warnings.d.ts +6 -0
  141. package/hooks/use-page-tool-warnings.js +25 -0
  142. package/hooks/use-second-ticker.d.ts +2 -0
  143. package/hooks/use-second-ticker.js +13 -0
  144. package/hooks/use-theorem-chat-actions.d.ts +79 -0
  145. package/hooks/use-theorem-chat-actions.js +287 -0
  146. package/hooks/use-theorem-chat-state.d.ts +66 -0
  147. package/hooks/use-theorem-chat-state.js +122 -0
  148. package/hooks/use-theorem-chat.d.ts +97 -0
  149. package/hooks/use-theorem-chat.js +528 -0
  150. package/hooks/use-theorem-decision.d.ts +18 -0
  151. package/hooks/use-theorem-decision.js +12 -0
  152. package/hooks/use-theorem-embedding.d.ts +18 -0
  153. package/hooks/use-theorem-embedding.js +12 -0
  154. package/hooks/use-theorem-host.d.ts +45 -0
  155. package/hooks/use-theorem-host.js +135 -0
  156. package/hooks/use-theorem-interface.d.ts +22 -0
  157. package/hooks/use-theorem-interface.js +15 -0
  158. package/hooks/use-trace-records.d.ts +4 -0
  159. package/hooks/use-trace-records.js +7 -0
  160. package/index.d.ts +17 -0
  161. package/index.js +17 -0
  162. package/live.d.ts +9 -0
  163. package/live.js +10 -0
  164. package/package.json +74 -4
  165. package/server/checkpoint-ownership.d.ts +6 -0
  166. package/server/checkpoint-ownership.js +42 -0
  167. package/server/conversation-store.d.ts +92 -0
  168. package/server/conversation-store.js +131 -0
  169. package/server/conversation.d.ts +193 -0
  170. package/server/conversation.js +552 -0
  171. package/server/credential-store.d.ts +24 -0
  172. package/server/credential-store.js +14 -0
  173. package/server/decision-handler.d.ts +42 -0
  174. package/server/decision-handler.js +46 -0
  175. package/server/embedding-handler.d.ts +33 -0
  176. package/server/embedding-handler.js +45 -0
  177. package/server/handler.d.ts +152 -0
  178. package/server/handler.js +771 -0
  179. package/server/json-response.d.ts +2 -0
  180. package/server/json-response.js +7 -0
  181. package/server/mod.d.ts +25 -0
  182. package/server/mod.js +23 -0
  183. package/server/page-dispatch.d.ts +22 -0
  184. package/server/page-dispatch.js +127 -0
  185. package/server/request-body.d.ts +2 -0
  186. package/server/request-body.js +42 -0
  187. package/server/request-check.d.ts +21 -0
  188. package/server/request-check.js +49 -0
  189. package/server/session-authority.d.ts +8 -0
  190. package/server/session-authority.js +78 -0
  191. package/server/session-boundary.d.ts +26 -0
  192. package/server/session-boundary.js +64 -0
  193. package/server/session-identity.d.ts +16 -0
  194. package/server/session-identity.js +41 -0
  195. package/server/session-limits.d.ts +12 -0
  196. package/server/session-limits.js +59 -0
  197. package/server/session-store.d.ts +123 -0
  198. package/server/session-store.js +264 -0
  199. package/server/single-action.d.ts +21 -0
  200. package/server/single-action.js +30 -0
  201. package/server/steer-inbox.d.ts +35 -0
  202. package/server/steer-inbox.js +52 -0
  203. package/server/tool-operations.d.ts +6 -0
  204. package/server/tool-operations.js +132 -0
  205. package/server/turn-input.d.ts +10 -0
  206. package/server/turn-input.js +29 -0
  207. package/styles/ink-controls.css +134 -0
  208. package/ui/CardWall.d.ts +10 -0
  209. package/ui/CardWall.js +61 -0
  210. package/ui/ChatComposerBar.d.ts +62 -0
  211. package/ui/ChatComposerBar.js +306 -0
  212. package/ui/ChatTranscript.d.ts +43 -0
  213. package/ui/ChatTranscript.js +527 -0
  214. package/ui/ConsoleFrame.d.ts +104 -0
  215. package/ui/ConsoleFrame.js +146 -0
  216. package/ui/DecisionAnswers.d.ts +53 -0
  217. package/ui/DecisionAnswers.js +233 -0
  218. package/ui/DecisionImages.d.ts +16 -0
  219. package/ui/DecisionImages.js +46 -0
  220. package/ui/EmbeddingDocuments.d.ts +78 -0
  221. package/ui/EmbeddingDocuments.js +278 -0
  222. package/ui/EmbeddingQuery.d.ts +27 -0
  223. package/ui/EmbeddingQuery.js +95 -0
  224. package/ui/EmbeddingResults.d.ts +41 -0
  225. package/ui/EmbeddingResults.js +165 -0
  226. package/ui/EmbeddingSpace.d.ts +26 -0
  227. package/ui/EmbeddingSpace.js +106 -0
  228. package/ui/LiveCaptionsPanel.d.ts +22 -0
  229. package/ui/LiveCaptionsPanel.js +27 -0
  230. package/ui/LiveRunner.d.ts +30 -0
  231. package/ui/LiveRunner.js +180 -0
  232. package/ui/PaneState.d.ts +33 -0
  233. package/ui/PaneState.js +50 -0
  234. package/ui/SchemaFields.d.ts +10 -0
  235. package/ui/SchemaFields.js +150 -0
  236. package/ui/ShapedData.d.ts +11 -0
  237. package/ui/ShapedData.js +196 -0
  238. package/ui/SidePanel.d.ts +126 -0
  239. package/ui/SidePanel.js +123 -0
  240. package/ui/StateFields.d.ts +44 -0
  241. package/ui/StateFields.js +139 -0
  242. package/ui/TheoremChat.d.ts +122 -0
  243. package/ui/TheoremChat.js +134 -0
  244. package/ui/TheoremDecision.d.ts +30 -0
  245. package/ui/TheoremDecision.js +130 -0
  246. package/ui/TheoremEmbedding.d.ts +27 -0
  247. package/ui/TheoremEmbedding.js +122 -0
  248. package/ui/TheoremHost.d.ts +55 -0
  249. package/ui/TheoremHost.js +240 -0
  250. package/ui/ToolGateCard.d.ts +32 -0
  251. package/ui/ToolGateCard.js +107 -0
  252. package/ui/ToolResult.d.ts +10 -0
  253. package/ui/ToolResult.js +62 -0
  254. package/ui/ToolResultCharts.d.ts +5 -0
  255. package/ui/ToolResultCharts.js +103 -0
  256. package/ui/TraceCharts.d.ts +13 -0
  257. package/ui/TraceCharts.js +266 -0
  258. package/ui/TraceGuardrails.d.ts +11 -0
  259. package/ui/TraceGuardrails.js +74 -0
  260. package/ui/TraceInspector.d.ts +16 -0
  261. package/ui/TraceInspector.js +206 -0
  262. package/ui/TraceInspectorPanel.d.ts +46 -0
  263. package/ui/TraceInspectorPanel.js +95 -0
  264. package/ui/TraceOverview.d.ts +38 -0
  265. package/ui/TraceOverview.js +126 -0
  266. package/ui/TraceSpanDetail.d.ts +10 -0
  267. package/ui/TraceSpanDetail.js +190 -0
  268. package/ui/TraceStory.d.ts +20 -0
  269. package/ui/TraceStory.js +108 -0
  270. package/ui/TraceValues.d.ts +36 -0
  271. package/ui/TraceValues.js +123 -0
  272. package/ui/TraceWaterfall.d.ts +13 -0
  273. package/ui/TraceWaterfall.js +135 -0
  274. package/ui/VoiceNote.d.ts +12 -0
  275. package/ui/VoiceNote.js +28 -0
  276. package/ui/approval-heading.d.ts +4 -0
  277. package/ui/approval-heading.js +9 -0
  278. package/ui/arrive.d.ts +18 -0
  279. package/ui/arrive.js +46 -0
  280. package/ui/built/theme.css +792 -0
  281. package/ui/built/theme.css.d.ts +9 -0
  282. package/ui/built/theorem.d.ts +13 -0
  283. package/ui/built/theorem.js +660 -0
  284. package/ui/built/theorem.variants.d.ts +22 -0
  285. package/ui/code-language.d.ts +12 -0
  286. package/ui/code-language.js +50 -0
  287. package/ui/disclosure-motion.d.ts +6 -0
  288. package/ui/disclosure-motion.js +207 -0
  289. package/ui/embedding-space-gl.d.ts +37 -0
  290. package/ui/embedding-space-gl.js +663 -0
  291. package/ui/embedding-space-view.d.ts +8 -0
  292. package/ui/embedding-space-view.js +8 -0
  293. package/ui/glide.d.ts +7 -0
  294. package/ui/glide.js +44 -0
  295. package/ui/icons.d.ts +4 -0
  296. package/ui/icons.js +38 -0
  297. package/ui/index.d.ts +36 -0
  298. package/ui/index.js +39 -0
  299. package/ui/labels-provider.d.ts +16 -0
  300. package/ui/labels-provider.js +64 -0
  301. package/ui/labels.d.ts +1442 -0
  302. package/ui/labels.js +1443 -0
  303. package/ui/markdown-plugins.d.ts +9 -0
  304. package/ui/markdown-plugins.js +13 -0
  305. package/ui/mcp-icon.d.ts +6 -0
  306. package/ui/mcp-icon.js +8 -0
  307. package/ui/row-keys.d.ts +19 -0
  308. package/ui/row-keys.js +33 -0
  309. package/ui/theme.d.ts +10 -0
  310. package/ui/theme.js +13 -0
  311. package/ui/theorem-theme.d.ts +10 -0
  312. package/ui/theorem-theme.js +105 -0
  313. package/ui/trace-palette.d.ts +10 -0
  314. package/ui/trace-palette.js +10 -0
  315. package/ui/trace-patterns.d.ts +40 -0
  316. package/ui/trace-patterns.js +57 -0
  317. package/ui/transcript-copy-text.d.ts +4 -0
  318. package/ui/transcript-copy-text.js +40 -0
  319. package/ui/wall-columns.d.ts +8 -0
  320. package/ui/wall-columns.js +19 -0
@@ -0,0 +1,792 @@
1
+ /*
2
+ * @generated by `astryx theme build` — do not edit manually.
3
+ * Source: src/ui/theorem-theme.ts
4
+ * Command: astryx theme build src/ui/theorem-theme.ts --out src/ui/built/theme.css
5
+ * CLI: @astryxdesign/cli@0.7.0
6
+ * Core: @astryxdesign/core@0.7.0
7
+ */
8
+
9
+ @layer reset, astryx-base, astryx-theme;
10
+
11
+ @layer reset {
12
+ @scope ([data-astryx-theme="theorem"]) to ([data-astryx-theme]) {
13
+ :where(h1, h2, h3, h4, h5, h6) {
14
+ font-family: var(--font-family-heading);
15
+ color: var(--color-text-primary);
16
+ }
17
+
18
+ :where(h1) {
19
+ font-size: var(--text-heading-1-size);
20
+ font-weight: var(--text-heading-1-weight);
21
+ line-height: var(--text-heading-1-leading);
22
+ }
23
+
24
+ :where(h2) {
25
+ font-size: var(--text-heading-2-size);
26
+ font-weight: var(--text-heading-2-weight);
27
+ line-height: var(--text-heading-2-leading);
28
+ }
29
+
30
+ :where(h3) {
31
+ font-size: var(--text-heading-3-size);
32
+ font-weight: var(--text-heading-3-weight);
33
+ line-height: var(--text-heading-3-leading);
34
+ }
35
+
36
+ :where(h4) {
37
+ font-size: var(--text-heading-4-size);
38
+ font-weight: var(--text-heading-4-weight);
39
+ line-height: var(--text-heading-4-leading);
40
+ }
41
+
42
+ :where(h5) {
43
+ font-size: var(--text-heading-5-size);
44
+ font-weight: var(--text-heading-5-weight);
45
+ line-height: var(--text-heading-5-leading);
46
+ }
47
+
48
+ :where(h6) {
49
+ font-size: var(--text-heading-6-size);
50
+ font-weight: var(--text-heading-6-weight);
51
+ line-height: var(--text-heading-6-leading);
52
+ }
53
+
54
+ :where(p) {
55
+ font-family: var(--font-family-body);
56
+ font-size: var(--text-body-size);
57
+ font-weight: var(--text-body-weight);
58
+ line-height: var(--text-body-leading);
59
+ color: var(--color-text-primary);
60
+ }
61
+
62
+ :where(small) {
63
+ font-size: var(--text-supporting-size);
64
+ font-weight: var(--text-supporting-weight);
65
+ line-height: var(--text-supporting-leading);
66
+ color: var(--color-text-secondary);
67
+ }
68
+
69
+ :where(code, pre) {
70
+ font-family: var(--font-family-code);
71
+ font-size: var(--text-code-size);
72
+ line-height: var(--text-code-leading);
73
+ }
74
+
75
+ :where(hr) {
76
+ border: none;
77
+ border-top: 1px solid var(--color-border);
78
+ }
79
+ }
80
+ }
81
+
82
+ @layer astryx-theme {
83
+ :root { color-scheme: light dark; }
84
+ html[data-theme="light"] { color-scheme: light; }
85
+ html[data-theme="dark"] { color-scheme: dark; }
86
+
87
+ @scope ([data-astryx-theme="theorem"]) to ([data-astryx-theme]) {
88
+ :scope {
89
+ --font-size-4xs: 0.375rem;
90
+ --font-size-3xs: 0.4375rem;
91
+ --font-size-2xs: 0.5rem;
92
+ --font-size-xs: 0.625rem;
93
+ --font-size-sm: 0.75rem;
94
+ --font-size-base: 0.875rem;
95
+ --font-size-lg: 1.0625rem;
96
+ --font-size-xl: 1.25rem;
97
+ --font-size-2xl: 1.5rem;
98
+ --font-size-3xl: 1.8125rem;
99
+ --font-size-4xl: 2.1875rem;
100
+ --font-size-5xl: 2.625rem;
101
+ --text-heading-1-size: var(--font-size-2xl);
102
+ --text-heading-1-weight: var(--font-weight-semibold);
103
+ --text-heading-1-leading: 1.3333;
104
+ --text-heading-2-size: var(--font-size-xl);
105
+ --text-heading-2-weight: var(--font-weight-semibold);
106
+ --text-heading-2-leading: 1.4;
107
+ --text-heading-3-size: var(--font-size-lg);
108
+ --text-heading-3-weight: var(--font-weight-bold);
109
+ --text-heading-3-leading: 1.4118;
110
+ --text-heading-4-size: var(--font-size-base);
111
+ --text-heading-4-weight: var(--font-weight-bold);
112
+ --text-heading-4-leading: 1.4286;
113
+ --text-heading-5-size: var(--font-size-sm);
114
+ --text-heading-5-weight: var(--font-weight-semibold);
115
+ --text-heading-5-leading: 1.6667;
116
+ --text-heading-6-size: var(--font-size-xs);
117
+ --text-heading-6-weight: var(--font-weight-semibold);
118
+ --text-heading-6-leading: 1.6;
119
+ --text-body-size: var(--font-size-base);
120
+ --text-body-weight: var(--font-weight-normal);
121
+ --text-body-leading: 1.4286;
122
+ --text-large-size: var(--font-size-lg);
123
+ --text-large-weight: var(--font-weight-semibold);
124
+ --text-large-leading: 1.4118;
125
+ --text-label-size: var(--font-size-base);
126
+ --text-label-weight: var(--font-weight-medium);
127
+ --text-label-leading: 1.4286;
128
+ --text-code-size: var(--font-size-base);
129
+ --text-code-weight: var(--font-weight-normal);
130
+ --text-code-leading: 1.4286;
131
+ --text-supporting-size: var(--font-size-sm);
132
+ --text-supporting-weight: var(--font-weight-normal);
133
+ --text-supporting-leading: 1.6667;
134
+ --text-display-1-size: var(--font-size-5xl);
135
+ --text-display-1-weight: var(--font-weight-normal);
136
+ --text-display-1-leading: 1.2381;
137
+ --text-display-2-size: var(--font-size-4xl);
138
+ --text-display-2-weight: var(--font-weight-normal);
139
+ --text-display-2-leading: 1.2571;
140
+ --text-display-3-size: var(--font-size-3xl);
141
+ --text-display-3-weight: var(--font-weight-normal);
142
+ --text-display-3-leading: 1.3793;
143
+ --duration-fast-min: 95ms;
144
+ --duration-fast: 125ms;
145
+ --duration-fast-max: 165ms;
146
+ --duration-medium-min: 225ms;
147
+ --duration-medium: 300ms;
148
+ --duration-medium-max: 400ms;
149
+ --duration-slow-min: 525ms;
150
+ --duration-slow: 700ms;
151
+ --duration-slow-max: 935ms;
152
+ --font-family-body: Figtree, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
153
+ --font-family-heading: Figtree, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
154
+ --font-family-code: ui-monospace, "SF Mono", Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
155
+ --color-syntax-keyword: light-dark(#6b187c, #efa8ff);
156
+ --color-syntax-string: light-dark(#0b5615, #a4d6a3);
157
+ --color-syntax-comment: light-dark(#6a6a6a, #9e9e9e);
158
+ --color-syntax-number: light-dark(#733100, #ffb37e);
159
+ --color-syntax-function: light-dark(#00458c, #a1caff);
160
+ --color-syntax-type: light-dark(#6b187c, #efa8ff);
161
+ --color-syntax-variable: light-dark(#111111, #e2e2e2);
162
+ --color-syntax-operator: light-dark(#6a6a6a, #9e9e9e);
163
+ --color-syntax-constant: light-dark(#733100, #ffb37e);
164
+ --color-syntax-tag: light-dark(#8a0011, #ffaea7);
165
+ --color-syntax-attribute: light-dark(#584400, #eec448);
166
+ --color-syntax-property: light-dark(#005348, #90d7c8);
167
+ --color-syntax-punctuation: light-dark(#6a6a6a, #9e9e9e);
168
+ --color-syntax-background: light-dark(#ffffff, #111111);
169
+ --color-background-surface: light-dark(#ffffff, #262626);
170
+ --color-background-body: light-dark(#f1f1f1, #1b1b1b);
171
+ --color-background-card: light-dark(#ffffff, #1b1b1b);
172
+ --color-background-popover: light-dark(#ffffff, #1b1b1b);
173
+ --color-background-muted: light-dark(#f1f1f1, #1b1b1b);
174
+ --color-accent: light-dark(#1b1b1b, #f1f1f1);
175
+ --color-accent-muted: light-dark(#f1f1f1, #262626);
176
+ --color-neutral: light-dark(#0000000F, #ffffff1A);
177
+ --color-overlay: light-dark(#00000080, #000000CC);
178
+ --color-overlay-hover: light-dark(#0000000D, #ffffff0D);
179
+ --color-overlay-pressed: light-dark(#0000001A, #ffffff1A);
180
+ --color-text-primary: light-dark(#000000, #ffffff);
181
+ --color-text-secondary: light-dark(#474747, #9e9e9e);
182
+ --color-text-disabled: light-dark(#919191, #525252);
183
+ --color-text-accent: light-dark(#1b1b1b, #f1f1f1);
184
+ --color-on-dark: #ffffff;
185
+ --color-on-light: #111111;
186
+ --color-on-accent: light-dark(#ffffff, #111111);
187
+ --color-on-success: light-dark(#ffffff, #111111);
188
+ --color-on-error: light-dark(#ffffff, #111111);
189
+ --color-on-warning: #111111;
190
+ --color-icon-accent: light-dark(#1b1b1b, #f1f1f1);
191
+ --color-icon-primary: light-dark(#000000, #ffffff);
192
+ --color-icon-secondary: light-dark(#6a6a6a, #9e9e9e);
193
+ --color-icon-disabled: light-dark(#919191, #525252);
194
+ --color-success: light-dark(#00490b, #a4d6a3);
195
+ --color-error: light-dark(#76000c, #ffc4be);
196
+ --color-warning: light-dark(#4b3900, #f8d36a);
197
+ --color-success-muted: light-dark(#bce0bb, #90ca903D);
198
+ --color-error-muted: light-dark(#ffc4be, #ff98903D);
199
+ --color-warning-muted: light-dark(#fae19e, #e2b6233D);
200
+ --color-border: light-dark(#00000014, #ffffff1A);
201
+ --color-border-emphasized: light-dark(#d4d4d4, #525252);
202
+ --color-skeleton: light-dark(#f1f1f1, #525252);
203
+ --color-shadow: light-dark(#0000001A, #0000004D);
204
+ --color-tint-hover: light-dark(black, white);
205
+ --color-background-red: light-dark(#ffc4be, #5b2b28);
206
+ --color-border-red: light-dark(#ffaea7, #fa6762);
207
+ --color-icon-red: light-dark(#76000c, #ff9890);
208
+ --color-text-red: light-dark(#76000c, #ffaea7);
209
+ --color-background-orange: light-dark(#ffc7a1, #503424);
210
+ --color-border-orange: light-dark(#ffc7a1, #df843f);
211
+ --color-icon-orange: light-dark(#622700, #ff9e55);
212
+ --color-text-orange: light-dark(#622700, #ffb37e);
213
+ --color-background-yellow: light-dark(#fae19e, #453a1c);
214
+ --color-border-yellow: light-dark(#e3c36c, #c29900);
215
+ --color-icon-yellow: light-dark(#4b3900, #e2b623);
216
+ --color-text-yellow: light-dark(#4b3900, #eec448);
217
+ --color-background-green: light-dark(#bce0bb, #2b422b);
218
+ --color-border-green: light-dark(#aad4a9, #6ab26b);
219
+ --color-icon-green: light-dark(#00490b, #90ca90);
220
+ --color-text-green: light-dark(#00490b, #90ca90);
221
+ --color-background-teal: light-dark(#a9e2d6, #28413c);
222
+ --color-border-teal: light-dark(#90d7c8, #4fb1a0);
223
+ --color-icon-teal: light-dark(#00463d, #81c9bb);
224
+ --color-text-teal: light-dark(#00463d, #90d7c8);
225
+ --color-background-cyan: light-dark(#9ae2f4, #274046);
226
+ --color-border-cyan: light-dark(#85d5e9, #49adc4);
227
+ --color-icon-cyan: light-dark(#004351, #71c7dd);
228
+ --color-text-cyan: light-dark(#004351, #85d5e9);
229
+ --color-background-blue: light-dark(#b9d7ff, #253c5a);
230
+ --color-border-blue: light-dark(#a1caff, #5aa0f8);
231
+ --color-icon-blue: light-dark(#003978, #88bcff);
232
+ --color-text-blue: light-dark(#003978, #a1caff);
233
+ --color-background-purple: light-dark(#f7d5ff, #4a2f51);
234
+ --color-border-purple: light-dark(#f3bfff, #d885eb);
235
+ --color-icon-purple: light-dark(#5c0e6c, #e496f6);
236
+ --color-text-purple: light-dark(#5c0e6c, #eaacf8);
237
+ --color-background-pink: light-dark(#ffc0d7, #572b3d);
238
+ --color-border-pink: light-dark(#ffc0d7, #fc78b1);
239
+ --color-icon-pink: light-dark(#70003f, #fd92bd);
240
+ --color-text-pink: light-dark(#70003f, #ffa9ca);
241
+ --color-background-gray: light-dark(#e2e2e2, #303030);
242
+ --color-border-gray: light-dark(#d4d4d4, #262626);
243
+ --color-icon-gray: light-dark(#474747, #9e9e9e);
244
+ --color-text-gray: light-dark(#1b1b1b, #d4d4d4);
245
+ --radius-none: 0px;
246
+ --radius-inner: 0.375rem;
247
+ --radius-element: 0.625rem;
248
+ --radius-container: 0.75rem;
249
+ --radius-page: 1.75rem;
250
+ --radius-full: 9999px;
251
+ --shadow-low: 0 2px 4px light-dark(oklch(0 0 0 / 5%), oklch(0 0 0 / 25%)), 0 4px 8px light-dark(oklch(0 0 0 / 10%), oklch(0 0 0 / 40%)), inset 0 0 0 1px light-dark(transparent, oklch(1 0 0 / 8%));
252
+ --shadow-med: 0 2px 4px light-dark(oklch(0 0 0 / 5%), oklch(0 0 0 / 35%)), 0 4px 12px light-dark(oklch(0 0 0 / 10%), oklch(0 0 0 / 50%)), inset 0 0 0 1px light-dark(transparent, oklch(1 0 0 / 12%));
253
+ --shadow-high: 0 4px 6px light-dark(oklch(0 0 0 / 10%), oklch(0 0 0 / 50%)), 0 12px 24px light-dark(oklch(0 0 0 / 15%), oklch(0 0 0 / 70%)), inset 0 0 0 1px light-dark(transparent, oklch(1 0 0 / 15%));
254
+ --shadow-inset-hover: inset 0px 0px 0px 2px #0074e24D;
255
+ --shadow-inset-selected: inset 0px 0px 0px 2px #0074e280;
256
+ --shadow-inset-success: inset 0px 0px 0px 2px #2f7d334D;
257
+ --shadow-inset-warning: inset 0px 0px 0px 2px #f8d36a4D;
258
+ --shadow-inset-error: inset 0px 0px 0px 2px #de47454D;
259
+ --astryx-theme-neutral-color-status-fill-accent: light-dark(#0074e2, #6d9cfe);
260
+ --astryx-theme-neutral-color-status-fill-success: light-dark(#198100, #64af4c);
261
+ --astryx-theme-neutral-color-status-fill-warning: #ffce2f;
262
+ --astryx-theme-neutral-color-status-fill-error: light-dark(#c9303a, #ff705d);
263
+ --astryx-theme-neutral-color-status-muted-accent: light-dark(#b9d7ff, #88bcff3D);
264
+ --astryx-theme-neutral-color-on-tint-neutral: light-dark(#fafafa4D, #0a0a0a4D);
265
+ --astryx-theme-neutral-color-on-tint-overlay-hover: light-dark(#fafafa1A, #0a0a0a1A);
266
+ --astryx-theme-neutral-color-on-tint-overlay-pressed: light-dark(#fafafa33, #0a0a0a33);
267
+ --astryx-theme-neutral-color-destructive-overlay-hover: light-dark(#ff7f770D, #ee736c0D);
268
+ --astryx-theme-neutral-color-destructive-overlay-pressed: light-dark(#ff7f771A, #ee736c1A);
269
+ }
270
+
271
+ :scope {
272
+ font-family: var(--font-family-body);
273
+ }
274
+
275
+ .astryx-heading[data-level="1"] {
276
+ font-family: var(--font-family-heading);
277
+ font-size: var(--text-heading-1-size);
278
+ font-weight: var(--text-heading-1-weight);
279
+ line-height: var(--text-heading-1-leading);
280
+ }
281
+
282
+ .astryx-heading[data-level="2"] {
283
+ font-family: var(--font-family-heading);
284
+ font-size: var(--text-heading-2-size);
285
+ font-weight: var(--text-heading-2-weight);
286
+ line-height: var(--text-heading-2-leading);
287
+ }
288
+
289
+ .astryx-heading[data-level="3"] {
290
+ font-family: var(--font-family-heading);
291
+ font-size: var(--text-heading-3-size);
292
+ font-weight: var(--text-heading-3-weight);
293
+ line-height: var(--text-heading-3-leading);
294
+ }
295
+
296
+ .astryx-heading[data-level="4"] {
297
+ font-family: var(--font-family-heading);
298
+ font-size: var(--text-heading-4-size);
299
+ font-weight: var(--text-heading-4-weight);
300
+ line-height: var(--text-heading-4-leading);
301
+ }
302
+
303
+ .astryx-heading[data-level="5"] {
304
+ font-family: var(--font-family-heading);
305
+ font-size: var(--text-heading-5-size);
306
+ font-weight: var(--text-heading-5-weight);
307
+ line-height: var(--text-heading-5-leading);
308
+ }
309
+
310
+ .astryx-heading[data-level="6"] {
311
+ font-family: var(--font-family-heading);
312
+ font-size: var(--text-heading-6-size);
313
+ font-weight: var(--text-heading-6-weight);
314
+ line-height: var(--text-heading-6-leading);
315
+ }
316
+
317
+ .astryx-heading[data-type="display-1"] {
318
+ font-family: var(--font-family-heading);
319
+ font-size: var(--text-display-1-size);
320
+ line-height: var(--text-display-1-leading);
321
+ }
322
+
323
+ .astryx-heading[data-type="display-2"] {
324
+ font-family: var(--font-family-heading);
325
+ font-size: var(--text-display-2-size);
326
+ line-height: var(--text-display-2-leading);
327
+ }
328
+
329
+ .astryx-heading[data-type="display-3"] {
330
+ font-family: var(--font-family-heading);
331
+ font-size: var(--text-display-3-size);
332
+ line-height: var(--text-display-3-leading);
333
+ }
334
+
335
+ .astryx-text[data-type="body"] {
336
+ font-family: var(--font-family-body);
337
+ font-size: var(--text-body-size);
338
+ line-height: var(--text-body-leading);
339
+ }
340
+
341
+ .astryx-text[data-type="large"] {
342
+ font-family: var(--font-family-body);
343
+ font-size: var(--text-large-size);
344
+ line-height: var(--text-large-leading);
345
+ }
346
+
347
+ .astryx-text[data-type="label"] {
348
+ font-family: var(--font-family-body);
349
+ font-size: var(--text-label-size);
350
+ line-height: var(--text-label-leading);
351
+ }
352
+
353
+ .astryx-text[data-type="code"] {
354
+ font-family: var(--font-family-code);
355
+ font-size: var(--text-code-size);
356
+ line-height: var(--text-code-leading);
357
+ }
358
+
359
+ .astryx-text[data-type="supporting"] {
360
+ font-family: var(--font-family-body);
361
+ font-size: var(--text-supporting-size);
362
+ line-height: var(--text-supporting-leading);
363
+ }
364
+
365
+ .astryx-text[data-type="display-1"] {
366
+ font-family: var(--font-family-heading);
367
+ font-size: var(--text-display-1-size);
368
+ line-height: var(--text-display-1-leading);
369
+ }
370
+
371
+ .astryx-text[data-type="display-2"] {
372
+ font-family: var(--font-family-heading);
373
+ font-size: var(--text-display-2-size);
374
+ line-height: var(--text-display-2-leading);
375
+ }
376
+
377
+ .astryx-text[data-type="display-3"] {
378
+ font-family: var(--font-family-heading);
379
+ font-size: var(--text-display-3-size);
380
+ line-height: var(--text-display-3-leading);
381
+ }
382
+
383
+ .astryx-button[data-variant="destructive"] {
384
+ background-color: var(--color-error-muted);
385
+ color: var(--color-error);
386
+ --color-overlay-hover: var(--astryx-theme-neutral-color-destructive-overlay-hover);
387
+ --color-overlay-pressed: var(--astryx-theme-neutral-color-destructive-overlay-pressed);
388
+ }
389
+
390
+ .astryx-badge[data-variant="info"] {
391
+ background-color: var(--astryx-theme-neutral-color-status-fill-accent);
392
+ color: var(--color-on-accent);
393
+ }
394
+
395
+ .astryx-badge[data-variant="neutral"] {
396
+ background-color: var(--color-background-gray);
397
+ color: var(--color-text-gray);
398
+ }
399
+
400
+ .astryx-badge[data-variant="success"] {
401
+ background-color: var(--astryx-theme-neutral-color-status-fill-success);
402
+ color: var(--color-on-success);
403
+ }
404
+
405
+ .astryx-badge[data-variant="warning"] {
406
+ background-color: var(--astryx-theme-neutral-color-status-fill-warning);
407
+ color: var(--color-on-warning);
408
+ }
409
+
410
+ .astryx-badge[data-variant="error"] {
411
+ background-color: var(--astryx-theme-neutral-color-status-fill-error);
412
+ color: var(--color-on-error);
413
+ }
414
+
415
+ .astryx-badge[data-variant="red"] {
416
+ background-color: var(--color-background-red);
417
+ color: var(--color-text-red);
418
+ }
419
+
420
+ .astryx-badge[data-variant="orange"] {
421
+ background-color: var(--color-background-orange);
422
+ color: var(--color-text-orange);
423
+ }
424
+
425
+ .astryx-badge[data-variant="yellow"] {
426
+ background-color: var(--color-background-yellow);
427
+ color: var(--color-text-yellow);
428
+ }
429
+
430
+ .astryx-badge[data-variant="green"] {
431
+ background-color: var(--color-background-green);
432
+ color: var(--color-text-green);
433
+ }
434
+
435
+ .astryx-badge[data-variant="teal"] {
436
+ background-color: var(--color-background-teal);
437
+ color: var(--color-text-teal);
438
+ }
439
+
440
+ .astryx-badge[data-variant="cyan"] {
441
+ background-color: var(--color-background-cyan);
442
+ color: var(--color-text-cyan);
443
+ }
444
+
445
+ .astryx-badge[data-variant="blue"] {
446
+ background-color: var(--color-background-blue);
447
+ color: var(--color-text-blue);
448
+ }
449
+
450
+ .astryx-badge[data-variant="purple"] {
451
+ background-color: var(--color-background-purple);
452
+ color: var(--color-text-purple);
453
+ }
454
+
455
+ .astryx-badge[data-variant="pink"] {
456
+ background-color: var(--color-background-pink);
457
+ color: var(--color-text-pink);
458
+ }
459
+
460
+ .astryx-badge[data-variant="gray"] {
461
+ background-color: var(--color-background-gray);
462
+ color: var(--color-text-gray);
463
+ }
464
+
465
+ .astryx-status-dot[data-variant="success"] {
466
+ background-color: var(--astryx-theme-neutral-color-status-fill-success);
467
+ }
468
+
469
+ .astryx-status-dot[data-variant="warning"] {
470
+ background-color: var(--astryx-theme-neutral-color-status-fill-warning);
471
+ }
472
+
473
+ .astryx-status-dot[data-variant="error"] {
474
+ background-color: var(--astryx-theme-neutral-color-status-fill-error);
475
+ }
476
+
477
+ .astryx-status-dot[data-variant="accent"] {
478
+ background-color: var(--astryx-theme-neutral-color-status-fill-accent);
479
+ }
480
+
481
+ .astryx-avatar-status-dot[data-variant="success"] {
482
+ background-color: var(--astryx-theme-neutral-color-status-fill-success);
483
+ }
484
+
485
+ .astryx-avatar-status-dot[data-variant="error"] {
486
+ background-color: var(--astryx-theme-neutral-color-status-fill-error);
487
+ }
488
+
489
+ .astryx-segmented-control {
490
+ padding: var(--spacing-1);
491
+ --_segmented-control-padding: var(--spacing-1);
492
+ }
493
+
494
+ .astryx-segmented-control-item[data-size="sm"] {
495
+ height: calc(var(--size-element-sm) - 8px);
496
+ }
497
+
498
+ .astryx-segmented-control-item[data-size="md"] {
499
+ height: calc(var(--size-element-md) - 8px);
500
+ }
501
+
502
+ .astryx-segmented-control-item[data-size="lg"] {
503
+ height: calc(var(--size-element-lg) - 8px);
504
+ }
505
+
506
+ .astryx-segmented-control-item[data-selected="selected"] {
507
+ box-shadow: none;
508
+ }
509
+
510
+ .astryx-banner {
511
+ --color-neutral: var(--astryx-theme-neutral-color-on-tint-neutral);
512
+ --color-overlay-hover: var(--astryx-theme-neutral-color-on-tint-overlay-hover);
513
+ --color-overlay-pressed: var(--astryx-theme-neutral-color-on-tint-overlay-pressed);
514
+ }
515
+
516
+ .astryx-banner[data-status="info"] {
517
+ --color-accent-muted: var(--astryx-theme-neutral-color-status-muted-accent);
518
+ --color-text-primary: var(--color-text-blue);
519
+ --color-text-secondary: var(--color-text-blue);
520
+ --color-accent: var(--color-text-blue);
521
+ }
522
+
523
+ .astryx-banner[data-status="success"] {
524
+ --color-text-primary: var(--color-text-green);
525
+ --color-text-secondary: var(--color-text-green);
526
+ --color-success: var(--color-text-green);
527
+ }
528
+
529
+ .astryx-banner[data-status="warning"] {
530
+ --color-text-primary: var(--color-text-yellow);
531
+ --color-text-secondary: var(--color-text-yellow);
532
+ --color-warning: var(--color-text-yellow);
533
+ }
534
+
535
+ .astryx-banner[data-status="error"] {
536
+ --color-text-primary: var(--color-text-red);
537
+ --color-text-secondary: var(--color-text-red);
538
+ --color-error: var(--color-text-red);
539
+ }
540
+
541
+ .astryx-step-indicator[data-status="accent"] {
542
+ --color-accent: var(--astryx-theme-neutral-color-status-fill-accent);
543
+ }
544
+
545
+ .astryx-step-indicator[data-status="success"] {
546
+ --color-success: var(--astryx-theme-neutral-color-status-fill-success);
547
+ }
548
+
549
+ .astryx-step-indicator[data-status="warning"] {
550
+ --color-warning: var(--astryx-theme-neutral-color-status-fill-warning);
551
+ }
552
+
553
+ .astryx-step-indicator[data-status="error"] {
554
+ --color-error: var(--astryx-theme-neutral-color-status-fill-error);
555
+ }
556
+
557
+ .astryx-switch {
558
+ --color-background-gray: var(--color-border-emphasized);
559
+ }
560
+
561
+ .astryx-progress-bar {
562
+ --color-background-muted: var(--color-border-emphasized);
563
+ }
564
+
565
+ .astryx-progress-bar[data-variant="accent"] {
566
+ --color-accent: var(--astryx-theme-neutral-color-status-fill-accent);
567
+ }
568
+
569
+ .astryx-progress-bar[data-variant="success"] {
570
+ --color-success: var(--astryx-theme-neutral-color-status-fill-success);
571
+ }
572
+
573
+ .astryx-progress-bar[data-variant="warning"] {
574
+ --color-warning: var(--astryx-theme-neutral-color-status-fill-warning);
575
+ }
576
+
577
+ .astryx-progress-bar[data-variant="error"] {
578
+ --color-error: var(--astryx-theme-neutral-color-status-fill-error);
579
+ }
580
+
581
+ .astryx-card {
582
+ --astryx-card-padding: var(--spacing-3);
583
+ }
584
+
585
+ .astryx-card[data-variant="bubble"] {
586
+ background-color: var(--color-neutral);
587
+ border-radius: var(--radius-chat);
588
+ --astryx-card-padding-inline: var(--spacing-4);
589
+ --astryx-card-padding-block-start: var(--spacing-3);
590
+ --astryx-card-padding-block-end: var(--spacing-3);
591
+ --_card-radius: var(--radius-chat);
592
+ }
593
+
594
+ .astryx-section {
595
+ --astryx-section-padding: var(--spacing-3);
596
+ }
597
+
598
+ .astryx-lightbox {
599
+ padding: var(--spacing-12);
600
+ }
601
+
602
+ .astryx-lightbox::backdrop {
603
+ background-color: light-dark(#00000059, #00000099);
604
+ }
605
+
606
+ .astryx-collapsible-content {
607
+ display: block;
608
+ overflow: clip;
609
+ interpolate-size: allow-keywords;
610
+ transition: height var(--duration-medium) var(--ease-standard), padding-top var(--duration-medium) var(--ease-standard), content-visibility var(--duration-medium) allow-discrete;
611
+ }
612
+
613
+ .astryx-collapsible-content:where([aria-expanded="false"] + *) {
614
+ height: 0;
615
+ padding-top: 0;
616
+ content-visibility: hidden;
617
+ }
618
+
619
+ .astryx-citation:where(*) > [aria-hidden="true"] {
620
+ background-color: transparent;
621
+ border-width: 0;
622
+ border-radius: 0;
623
+ }
624
+
625
+ .astryx-citation:where(*) > [aria-hidden="true"] > img {
626
+ width: 100%;
627
+ height: 100%;
628
+ }
629
+
630
+ .astryx-chat-tool-calls:where(*) [role="button"][aria-expanded] > span:not(:first-child):not(:has(svg)) {
631
+ align-self: baseline;
632
+ }
633
+
634
+ .astryx-code-block[data-container="card"] {
635
+ border-radius: var(--radius-container);
636
+ }
637
+
638
+ .astryx-layout-panel:where([role="complementary"]) {
639
+ transition: width var(--duration-medium) var(--ease-standard);
640
+ }
641
+
642
+ .astryx-layout-panel:where([data-resizing] + [role="complementary"], [role="complementary"]:has(+ [data-resizing])) {
643
+ transition: none;
644
+ }
645
+
646
+ .astryx-text[data-color="primary"] { color: var(--color-text-primary); }
647
+
648
+ .astryx-heading[data-color="primary"] { color: var(--color-text-primary); }
649
+
650
+ .astryx-text[data-color="secondary"] { color: var(--color-text-secondary); }
651
+
652
+ .astryx-heading[data-color="secondary"] { color: var(--color-text-secondary); }
653
+
654
+ .astryx-text[data-color="disabled"] { color: var(--color-text-disabled); }
655
+
656
+ .astryx-heading[data-color="disabled"] { color: var(--color-text-disabled); }
657
+
658
+ .astryx-text[data-color="placeholder"] { color: var(--color-text-secondary); }
659
+
660
+ .astryx-heading[data-color="placeholder"] { color: var(--color-text-secondary); }
661
+
662
+ .astryx-text[data-color="accent"] { color: var(--color-text-accent); }
663
+
664
+ .astryx-heading[data-color="accent"] { color: var(--color-text-accent); }
665
+
666
+ .astryx-text[data-size="4xs"] { font-size: var(--font-size-4xs); }
667
+
668
+ .astryx-text[data-size="3xs"] { font-size: var(--font-size-3xs); }
669
+
670
+ .astryx-text[data-size="2xs"] { font-size: var(--font-size-2xs); }
671
+
672
+ .astryx-text[data-size="xsm"] { font-size: var(--font-size-xs); }
673
+
674
+ .astryx-text[data-size="sm"] { font-size: var(--font-size-sm); }
675
+
676
+ .astryx-text[data-size="base"] { font-size: var(--font-size-base); }
677
+
678
+ .astryx-text[data-size="lg"] { font-size: var(--font-size-lg); }
679
+
680
+ .astryx-text[data-size="xl"] { font-size: var(--font-size-xl); }
681
+
682
+ .astryx-text[data-size="2xl"] { font-size: var(--font-size-2xl); }
683
+
684
+ .astryx-text[data-size="3xl"] { font-size: var(--font-size-3xl); }
685
+
686
+ .astryx-text[data-size="4xl"] { font-size: var(--font-size-4xl); }
687
+
688
+ .astryx-heading[data-weight="normal"] { font-weight: var(--font-weight-normal); }
689
+
690
+ .astryx-heading[data-weight="medium"] { font-weight: var(--font-weight-medium); }
691
+
692
+ .astryx-heading[data-weight="semibold"] { font-weight: var(--font-weight-semibold); }
693
+
694
+ .astryx-heading[data-weight="bold"] { font-weight: var(--font-weight-bold); }
695
+ }
696
+ }
697
+
698
+ @layer astryx-theme {
699
+ @media (width < 1024px) and (pointer: coarse) {
700
+ @scope ([data-astryx-theme="theorem"]) to ([data-astryx-theme]) {
701
+ :scope {
702
+ --font-size-4xs: 0.4375rem;
703
+ --font-size-3xs: 0.5rem;
704
+ --font-size-2xs: 0.625rem;
705
+ --font-size-xs: 0.75rem;
706
+ --font-size-sm: 0.875rem;
707
+ --font-size-base: 1rem;
708
+ --font-size-lg: 1.1875rem;
709
+ --font-size-xl: 1.375rem;
710
+ --font-size-2xl: 1.625rem;
711
+ --font-size-3xl: 1.875rem;
712
+ --font-size-4xl: 2.25rem;
713
+ --font-size-5xl: 2.625rem;
714
+ --text-heading-1-size: var(--font-size-2xl);
715
+ --text-heading-1-weight: var(--font-weight-semibold);
716
+ --text-heading-1-leading: 1.3846;
717
+ --text-heading-2-size: var(--font-size-xl);
718
+ --text-heading-2-weight: var(--font-weight-semibold);
719
+ --text-heading-2-leading: 1.4545;
720
+ --text-heading-3-size: var(--font-size-lg);
721
+ --text-heading-3-weight: var(--font-weight-bold);
722
+ --text-heading-3-leading: 1.4737;
723
+ --text-heading-4-size: var(--font-size-base);
724
+ --text-heading-4-weight: var(--font-weight-bold);
725
+ --text-heading-4-leading: 1.5;
726
+ --text-heading-5-size: var(--font-size-sm);
727
+ --text-heading-5-weight: var(--font-weight-semibold);
728
+ --text-heading-5-leading: 1.4286;
729
+ --text-heading-6-size: var(--font-size-xs);
730
+ --text-heading-6-weight: var(--font-weight-semibold);
731
+ --text-heading-6-leading: 1.6667;
732
+ --text-body-size: var(--font-size-base);
733
+ --text-body-weight: var(--font-weight-normal);
734
+ --text-body-leading: 1.5;
735
+ --text-large-size: var(--font-size-lg);
736
+ --text-large-weight: var(--font-weight-semibold);
737
+ --text-large-leading: 1.4737;
738
+ --text-label-size: var(--font-size-base);
739
+ --text-label-weight: var(--font-weight-medium);
740
+ --text-label-leading: 1.5;
741
+ --text-code-size: var(--font-size-base);
742
+ --text-code-weight: var(--font-weight-normal);
743
+ --text-code-leading: 1.5;
744
+ --text-supporting-size: var(--font-size-sm);
745
+ --text-supporting-weight: var(--font-weight-normal);
746
+ --text-supporting-leading: 1.4286;
747
+ --text-display-1-size: var(--font-size-5xl);
748
+ --text-display-1-weight: var(--font-weight-normal);
749
+ --text-display-1-leading: 1.2381;
750
+ --text-display-2-size: var(--font-size-4xl);
751
+ --text-display-2-weight: var(--font-weight-normal);
752
+ --text-display-2-leading: 1.2222;
753
+ --text-display-3-size: var(--font-size-3xl);
754
+ --text-display-3-weight: var(--font-weight-normal);
755
+ --text-display-3-leading: 1.4667;
756
+ --font-family-body: Figtree, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
757
+ --font-family-heading: Figtree, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
758
+ --font-family-code: ui-monospace, "SF Mono", Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
759
+ }
760
+ }
761
+ }
762
+
763
+ @media (prefers-reduced-motion: reduce) {
764
+ @scope ([data-astryx-theme="theorem"]) to ([data-astryx-theme]) {
765
+ .astryx-collapsible-content {
766
+ transition: none;
767
+ }
768
+
769
+ .astryx-layout-panel:where([role="complementary"]) {
770
+ transition: none;
771
+ }
772
+ }
773
+ }
774
+ }
775
+
776
+ @layer astryx-theme {
777
+ @scope ([data-astryx-theme="theorem"]) to ([data-astryx-theme]) {
778
+ [data-astryx-media="dark"] {
779
+ color-scheme: dark;
780
+ --color-text-primary: var(--color-on-dark);
781
+ --color-icon-primary: var(--color-on-dark);
782
+ --color-accent: var(--color-on-dark);
783
+ }
784
+
785
+ [data-astryx-media="light"] {
786
+ color-scheme: light;
787
+ --color-text-primary: var(--color-on-light);
788
+ --color-icon-primary: var(--color-on-light);
789
+ --color-accent: var(--color-on-light);
790
+ }
791
+ }
792
+ }