sid-ui 0.0.0-stage → 0.1.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 (122) hide show
  1. package/README.md +54 -2
  2. package/package.json +51 -4
  3. package/src/brand/BrandFooter.tsx +45 -0
  4. package/src/brand/BrandHeading.tsx +24 -0
  5. package/src/brand/BrandLockup.tsx +47 -0
  6. package/src/brand/JoinedLogo.tsx +67 -0
  7. package/src/brand/JoinedMark.tsx +76 -0
  8. package/src/brand/geometry.ts +26 -0
  9. package/src/brand/index.ts +11 -0
  10. package/src/brand/name.ts +5 -0
  11. package/src/brand/paint.tsx +56 -0
  12. package/src/components/Action.tsx +44 -0
  13. package/src/components/AddressSelector.tsx +99 -0
  14. package/src/components/BarChart.tsx +132 -0
  15. package/src/components/Calendar.tsx +284 -0
  16. package/src/components/CalendarAgenda.tsx +87 -0
  17. package/src/components/CalendarMonth.tsx +223 -0
  18. package/src/components/CalendarSchedule.tsx +210 -0
  19. package/src/components/Card.tsx +80 -0
  20. package/src/components/Charts.tsx +64 -0
  21. package/src/components/Chat.tsx +35 -0
  22. package/src/components/CitySelector.tsx +81 -0
  23. package/src/components/Clock.tsx +196 -0
  24. package/src/components/CodeInput.tsx +183 -0
  25. package/src/components/Container.tsx +20 -0
  26. package/src/components/Content.tsx +50 -0
  27. package/src/components/Data.tsx +43 -0
  28. package/src/components/DataInput.tsx +107 -0
  29. package/src/components/DateField.tsx +162 -0
  30. package/src/components/DonutChart.tsx +123 -0
  31. package/src/components/Drawer.tsx +110 -0
  32. package/src/components/Feedback.tsx +37 -0
  33. package/src/components/FileUploader.tsx +377 -0
  34. package/src/components/FunnelChart.tsx +83 -0
  35. package/src/components/Glyph.tsx +330 -0
  36. package/src/components/GoogleSignIn.tsx +67 -0
  37. package/src/components/GridSystem.tsx +131 -0
  38. package/src/components/HeatmapCalendar.tsx +167 -0
  39. package/src/components/KanbanBoard.tsx +421 -0
  40. package/src/components/Kpi.tsx +61 -0
  41. package/src/components/LayoutPrimitives.tsx +86 -0
  42. package/src/components/Lists.tsx +19 -0
  43. package/src/components/LocationSelector.tsx +49 -0
  44. package/src/components/MessageList.tsx +80 -0
  45. package/src/components/Nav.tsx +69 -0
  46. package/src/components/Navigation.tsx +52 -0
  47. package/src/components/Notification.tsx +115 -0
  48. package/src/components/NotificationTrigger.tsx +248 -0
  49. package/src/components/Overlay.tsx +50 -0
  50. package/src/components/Page.tsx +143 -0
  51. package/src/components/PageTabs.tsx +28 -0
  52. package/src/components/PickerShell.tsx +138 -0
  53. package/src/components/PillNav.tsx +194 -0
  54. package/src/components/Primitives.tsx +30 -0
  55. package/src/components/Rating.tsx +78 -0
  56. package/src/components/Responsive.tsx +128 -0
  57. package/src/components/ResponsiveFrame.tsx +122 -0
  58. package/src/components/Segment.tsx +190 -0
  59. package/src/components/Sparkline.tsx +52 -0
  60. package/src/components/StateSelector.tsx +39 -0
  61. package/src/components/Sticky.tsx +95 -0
  62. package/src/components/Table.tsx +344 -0
  63. package/src/components/ThemeToggle.tsx +48 -0
  64. package/src/components/Tile.tsx +23 -0
  65. package/src/components/TimeColumns.tsx +155 -0
  66. package/src/components/TimeDial.tsx +260 -0
  67. package/src/components/TimeField.tsx +196 -0
  68. package/src/components/TimeInput.tsx +213 -0
  69. package/src/components/TimeSlots.tsx +83 -0
  70. package/src/components/Timeline.tsx +111 -0
  71. package/src/components/TokenDemo.tsx +378 -0
  72. package/src/components/Tree.tsx +283 -0
  73. package/src/components/TrendChart.tsx +211 -0
  74. package/src/components/breakpoints.ts +42 -0
  75. package/src/components/calendarTypes.ts +26 -0
  76. package/src/components/chartMath.ts +125 -0
  77. package/src/components/chartParts.tsx +116 -0
  78. package/src/components/codeInputRules.ts +58 -0
  79. package/src/components/date.ts +87 -0
  80. package/src/components/hooks.ts +53 -0
  81. package/src/components/index.ts +195 -0
  82. package/src/components/kanban.ts +78 -0
  83. package/src/components/motion.ts +78 -0
  84. package/src/components/places-search.tsx +73 -0
  85. package/src/components/places.ts +209 -0
  86. package/src/components/size.ts +3 -0
  87. package/src/components/time.ts +83 -0
  88. package/src/components/useFileDrop.ts +104 -0
  89. package/src/places/geoapify.ts +129 -0
  90. package/src/styles/astryx.css +5 -0
  91. package/src/styles/components/brand.css +98 -0
  92. package/src/styles/components/calendar.css +680 -0
  93. package/src/styles/components/charts.css +659 -0
  94. package/src/styles/components/code-input.css +233 -0
  95. package/src/styles/components/google.css +11 -0
  96. package/src/styles/components/message-list.css +153 -0
  97. package/src/styles/components/notification.css +350 -0
  98. package/src/styles/components/picker.css +114 -0
  99. package/src/styles/components/pill-nav.css +179 -0
  100. package/src/styles/components/responsive.css +419 -0
  101. package/src/styles/components/sticky.css +23 -0
  102. package/src/styles/components/table.css +267 -0
  103. package/src/styles/components/time.css +526 -0
  104. package/src/styles/components/timeline.css +426 -0
  105. package/src/styles/components/tree.css +269 -0
  106. package/src/styles/components.css +423 -0
  107. package/src/styles/joined.css +4 -0
  108. package/src/styles/theme.css +79 -0
  109. package/src/styles/tokens.css +338 -0
  110. package/src/theme/JoinedProvider.tsx +50 -0
  111. package/src/theme/index.ts +3 -0
  112. package/src/theme/joined.d.ts +11 -0
  113. package/src/theme/joined.js +569 -0
  114. package/src/theme/joined.theme.ts +74 -0
  115. package/src/theme/joined.variants.d.ts +16 -0
  116. package/src/theme/theme.css +786 -0
  117. package/styles/astryx.css +1 -0
  118. package/styles/components.css +1 -0
  119. package/styles/joined.css +1 -0
  120. package/styles/theme.css +1 -0
  121. package/styles/tokens.css +1 -0
  122. package/styles.css +1 -0
@@ -0,0 +1,786 @@
1
+ /*
2
+ * @generated by `astryx theme build` — do not edit manually.
3
+ * Source: src/theme/joined.theme.ts
4
+ * Command: astryx theme build src/theme/joined.theme.ts --out src/theme/theme.css
5
+ * CLI: @astryxdesign/cli@0.6.2
6
+ * Core: @astryxdesign/core@0.6.2
7
+ */
8
+
9
+ @layer reset {
10
+ @scope ([data-astryx-theme="joined"]) to ([data-astryx-theme]) {
11
+ :where(h1, h2, h3, h4, h5, h6) {
12
+ font-family: var(--font-family-heading);
13
+ color: var(--color-text-primary);
14
+ }
15
+
16
+ :where(h1) {
17
+ font-size: var(--text-heading-1-size);
18
+ font-weight: var(--text-heading-1-weight);
19
+ line-height: var(--text-heading-1-leading);
20
+ }
21
+
22
+ :where(h2) {
23
+ font-size: var(--text-heading-2-size);
24
+ font-weight: var(--text-heading-2-weight);
25
+ line-height: var(--text-heading-2-leading);
26
+ }
27
+
28
+ :where(h3) {
29
+ font-size: var(--text-heading-3-size);
30
+ font-weight: var(--text-heading-3-weight);
31
+ line-height: var(--text-heading-3-leading);
32
+ }
33
+
34
+ :where(h4) {
35
+ font-size: var(--text-heading-4-size);
36
+ font-weight: var(--text-heading-4-weight);
37
+ line-height: var(--text-heading-4-leading);
38
+ }
39
+
40
+ :where(h5) {
41
+ font-size: var(--text-heading-5-size);
42
+ font-weight: var(--text-heading-5-weight);
43
+ line-height: var(--text-heading-5-leading);
44
+ }
45
+
46
+ :where(h6) {
47
+ font-size: var(--text-heading-6-size);
48
+ font-weight: var(--text-heading-6-weight);
49
+ line-height: var(--text-heading-6-leading);
50
+ }
51
+
52
+ :where(p) {
53
+ font-family: var(--font-family-body);
54
+ font-size: var(--text-body-size);
55
+ font-weight: var(--text-body-weight);
56
+ line-height: var(--text-body-leading);
57
+ color: var(--color-text-primary);
58
+ }
59
+
60
+ :where(small) {
61
+ font-size: var(--text-supporting-size);
62
+ font-weight: var(--text-supporting-weight);
63
+ line-height: var(--text-supporting-leading);
64
+ color: var(--color-text-secondary);
65
+ }
66
+
67
+ :where(code, pre) {
68
+ font-family: var(--font-family-code);
69
+ font-size: var(--text-code-size);
70
+ line-height: var(--text-code-leading);
71
+ }
72
+
73
+ :where(hr) {
74
+ border: none;
75
+ border-top: 1px solid var(--color-border);
76
+ }
77
+ }
78
+ }
79
+
80
+ @layer astryx-base {
81
+ :root {
82
+ --color-data-categorical-blue: light-dark(#0171e3, #0171e3);
83
+ --color-data-categorical-orange: light-dark(#eb6e00, #eb6e00);
84
+ --color-data-categorical-purple: light-dark(#6b1efd, #6b1efd);
85
+ --color-data-categorical-green: light-dark(#0b991f, #0b991f);
86
+ --color-data-categorical-pink: light-dark(#f351c0, #f351c0);
87
+ --color-data-categorical-cyan: light-dark(#0171a4, #0171a4);
88
+ --color-data-categorical-red: light-dark(#f5394f, #f5394f);
89
+ --color-data-categorical-teal: light-dark(#08a3a3, #08a3a3);
90
+ --color-data-categorical-brown: light-dark(#965e03, #965e03);
91
+ --color-data-categorical-indigo: light-dark(#6f8aff, #6f8aff);
92
+ --color-data-neutral: light-dark(#8494a3, #8c939b);
93
+ --color-data-blue-5: light-dark(#02165e, #02165e);
94
+ --color-data-blue-4: light-dark(#004cbc, #004cbc);
95
+ --color-data-blue-3: light-dark(#2694fe, #2694fe);
96
+ --color-data-blue-2: light-dark(#78beff, #78beff);
97
+ --color-data-blue-1: light-dark(#dbecff, #dbecff);
98
+ --color-data-shamrock-5: light-dark(#0b603d, #0b603d);
99
+ --color-data-shamrock-4: light-dark(#138546, #138546);
100
+ --color-data-shamrock-3: light-dark(#24bb5e, #24bb5e);
101
+ --color-data-shamrock-2: light-dark(#8ef7aa, #8ef7aa);
102
+ --color-data-shamrock-1: light-dark(#d6fee4, #d6fee4);
103
+ --color-data-orange-5: light-dark(#a13f04, #a13f04);
104
+ --color-data-orange-4: light-dark(#d66100, #d66100);
105
+ --color-data-orange-3: light-dark(#fd9537, #fd9537);
106
+ --color-data-orange-2: light-dark(#fdb876, #fdb876);
107
+ --color-data-orange-1: light-dark(#ffe6cf, #ffe6cf);
108
+ --color-data-pink-5: light-dark(#8e1073, #8e1073);
109
+ --color-data-pink-4: light-dark(#d123a1, #d123a1);
110
+ --color-data-pink-3: light-dark(#f989d3, #f989d3);
111
+ --color-data-pink-2: light-dark(#feade3, #feade3);
112
+ --color-data-pink-1: light-dark(#fce3f4, #fce3f4);
113
+ --color-data-purple-5: light-dark(#3e0697, #3e0697);
114
+ --color-data-purple-4: light-dark(#6b1efd, #6b1efd);
115
+ --color-data-purple-3: light-dark(#9081ff, #9081ff);
116
+ --color-data-purple-2: light-dark(#b3b0fe, #b3b0fe);
117
+ --color-data-purple-1: light-dark(#e8e8fb, #e8e8fb);
118
+ --color-data-red-5: light-dark(#9d0519, #9d0519);
119
+ --color-data-red-4: light-dark(#d31130, #d31130);
120
+ --color-data-red-3: light-dark(#fb7d87, #fb7d87);
121
+ --color-data-red-2: light-dark(#ffb2b8, #ffb2b8);
122
+ --color-data-red-1: light-dark(#fee4e6, #fee4e6);
123
+ --color-data-teal-5: light-dark(#08767d, #08767d);
124
+ --color-data-teal-4: light-dark(#0c9293, #0c9293);
125
+ --color-data-teal-3: light-dark(#0db7af, #0db7af);
126
+ --color-data-teal-2: light-dark(#6ce6d8, #6ce6d8);
127
+ --color-data-teal-1: light-dark(#d7fcf8, #d7fcf8);
128
+ --color-data-yellow-5: light-dark(#8a5001, #8a5001);
129
+ --color-data-yellow-4: light-dark(#d69804, #d69804);
130
+ --color-data-yellow-3: light-dark(#fbce03, #fbce03);
131
+ --color-data-yellow-2: light-dark(#fcec85, #fcec85);
132
+ --color-data-yellow-1: light-dark(#fdf6ba, #fdf6ba);
133
+ --color-data-gray-5: light-dark(#25363f, #333338);
134
+ --color-data-gray-4: light-dark(#5d6c7b, #666a72);
135
+ --color-data-gray-3: light-dark(#afb9c4, #b2b8be);
136
+ --color-data-gray-2: light-dark(#ccd3db, #d0d3d6);
137
+ --color-data-gray-1: light-dark(#f1f4f7, #f2f4f6);
138
+ }
139
+ }
140
+
141
+ @layer astryx-theme {
142
+ :root {
143
+ color-scheme: light dark;
144
+ }
145
+ html[data-theme="light"] {
146
+ color-scheme: light;
147
+ }
148
+ html[data-theme="dark"] {
149
+ color-scheme: dark;
150
+ }
151
+
152
+ @scope ([data-astryx-theme="joined"]) to ([data-astryx-theme]) {
153
+ :scope {
154
+ --font-size-4xs: 0.375rem;
155
+ --font-size-3xs: 0.4375rem;
156
+ --font-size-2xs: 0.5rem;
157
+ --font-size-xs: 0.625rem;
158
+ --font-size-sm: 0.75rem;
159
+ --font-size-base: 0.875rem;
160
+ --font-size-lg: 1.0625rem;
161
+ --font-size-xl: 1.25rem;
162
+ --font-size-2xl: 1.5rem;
163
+ --font-size-3xl: 1.8125rem;
164
+ --font-size-4xl: 2.1875rem;
165
+ --font-size-5xl: 2.625rem;
166
+ --text-heading-1-size: var(--font-size-2xl);
167
+ --text-heading-1-weight: var(--font-weight-semibold);
168
+ --text-heading-1-leading: 1.3333;
169
+ --text-heading-2-size: var(--font-size-xl);
170
+ --text-heading-2-weight: var(--font-weight-semibold);
171
+ --text-heading-2-leading: 1.4;
172
+ --text-heading-3-size: var(--font-size-lg);
173
+ --text-heading-3-weight: var(--font-weight-bold);
174
+ --text-heading-3-leading: 1.4118;
175
+ --text-heading-4-size: var(--font-size-base);
176
+ --text-heading-4-weight: var(--font-weight-bold);
177
+ --text-heading-4-leading: 1.4286;
178
+ --text-heading-5-size: var(--font-size-sm);
179
+ --text-heading-5-weight: var(--font-weight-semibold);
180
+ --text-heading-5-leading: 1.6667;
181
+ --text-heading-6-size: var(--font-size-xs);
182
+ --text-heading-6-weight: var(--font-weight-semibold);
183
+ --text-heading-6-leading: 1.6;
184
+ --text-body-size: var(--font-size-base);
185
+ --text-body-weight: var(--font-weight-normal);
186
+ --text-body-leading: 1.4286;
187
+ --text-large-size: var(--font-size-lg);
188
+ --text-large-weight: var(--font-weight-semibold);
189
+ --text-large-leading: 1.4118;
190
+ --text-label-size: var(--font-size-base);
191
+ --text-label-weight: var(--font-weight-medium);
192
+ --text-label-leading: 1.4286;
193
+ --text-code-size: var(--font-size-base);
194
+ --text-code-weight: var(--font-weight-normal);
195
+ --text-code-leading: 1.4286;
196
+ --text-supporting-size: var(--font-size-sm);
197
+ --text-supporting-weight: var(--font-weight-normal);
198
+ --text-supporting-leading: 1.6667;
199
+ --text-display-1-size: var(--font-size-5xl);
200
+ --text-display-1-weight: var(--font-weight-normal);
201
+ --text-display-1-leading: 1.2381;
202
+ --text-display-2-size: var(--font-size-4xl);
203
+ --text-display-2-weight: var(--font-weight-normal);
204
+ --text-display-2-leading: 1.2571;
205
+ --text-display-3-size: var(--font-size-3xl);
206
+ --text-display-3-weight: var(--font-weight-normal);
207
+ --text-display-3-leading: 1.3793;
208
+ --duration-fast-min: 95ms;
209
+ --duration-fast: 125ms;
210
+ --duration-fast-max: 165ms;
211
+ --duration-medium-min: 225ms;
212
+ --duration-medium: 300ms;
213
+ --duration-medium-max: 400ms;
214
+ --duration-slow-min: 525ms;
215
+ --duration-slow: 700ms;
216
+ --duration-slow-max: 935ms;
217
+ --font-family-body:
218
+ system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial,
219
+ sans-serif;
220
+ --font-family-heading:
221
+ system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial,
222
+ sans-serif;
223
+ --font-family-code:
224
+ ui-monospace, "SF Mono", Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
225
+ --color-syntax-keyword: light-dark(#6b187c, #efa8ff);
226
+ --color-syntax-string: light-dark(#0b5615, #a4d6a3);
227
+ --color-syntax-comment: light-dark(#6a6a6a, #9e9e9e);
228
+ --color-syntax-number: light-dark(#733100, #ffb37e);
229
+ --color-syntax-function: light-dark(#00458c, #a1caff);
230
+ --color-syntax-type: light-dark(#6b187c, #efa8ff);
231
+ --color-syntax-variable: light-dark(#111111, #e2e2e2);
232
+ --color-syntax-operator: light-dark(#6a6a6a, #9e9e9e);
233
+ --color-syntax-constant: light-dark(#733100, #ffb37e);
234
+ --color-syntax-tag: light-dark(#8a0011, #ffaea7);
235
+ --color-syntax-attribute: light-dark(#584400, #eec448);
236
+ --color-syntax-property: light-dark(#005348, #90d7c8);
237
+ --color-syntax-punctuation: light-dark(#6a6a6a, #9e9e9e);
238
+ --color-syntax-background: light-dark(#ffffff, #111111);
239
+ --color-background-surface: light-dark(#fbfcff, #1a1b22);
240
+ --color-background-body: light-dark(#eff0fa, #0f1118);
241
+ --color-background-card: light-dark(#fbfcff, #1a1b22);
242
+ --color-background-popover: light-dark(#fbfcff, #2e3037);
243
+ --color-background-muted: light-dark(#1a1b220d, #1a1b2280);
244
+ --color-accent: light-dark(#1877f2, #2e89ff);
245
+ --color-accent-muted: light-dark(#e7f3ff, #253c5a);
246
+ --color-neutral: light-dark(#1a1b221a, #e0e2ec33);
247
+ --color-overlay: light-dark(#1a1b2266, #1a1b2299);
248
+ --color-overlay-hover: light-dark(#1a1b220d, #ffffff0d);
249
+ --color-overlay-pressed: light-dark(#1a1b221a, #ffffff1a);
250
+ --color-text-primary: light-dark(#1a1b22, #e0e2ec);
251
+ --color-text-secondary: light-dark(#444652, #a8abb9);
252
+ --color-text-disabled: light-dark(#8e909e, #5b5e6b);
253
+ --color-text-accent: light-dark(#003978, #a1caff);
254
+ --color-on-dark: #ffffff;
255
+ --color-on-light: #111111;
256
+ --color-on-accent: #ffffff;
257
+ --color-on-success: light-dark(#ffffff, #111111);
258
+ --color-on-error: light-dark(#ffffff, #111111);
259
+ --color-on-warning: #111111;
260
+ --color-icon-accent: light-dark(#003978, #88bcff);
261
+ --color-icon-primary: light-dark(#1a1b22, #e0e2ec);
262
+ --color-icon-secondary: light-dark(#444652, #a8abb9);
263
+ --color-icon-disabled: light-dark(#8e909e, #5b5e6b);
264
+ --color-success: light-dark(#00490b, #a4d6a3);
265
+ --color-error: light-dark(#76000c, #ffc4be);
266
+ --color-warning: light-dark(#4b3900, #f8d36a);
267
+ --color-success-muted: light-dark(#bce0bb, #90ca903d);
268
+ --color-error-muted: light-dark(#ffc4be, #ff98903d);
269
+ --color-warning-muted: light-dark(#fae19e, #e2b6233d);
270
+ --color-border: light-dark(#1a1b221a, #eef0fa1a);
271
+ --color-border-emphasized: light-dark(#8e909e, #656875);
272
+ --color-skeleton: light-dark(#a9aab9, #434653);
273
+ --color-shadow: light-dark(#0000001a, #0000004d);
274
+ --color-tint-hover: light-dark(black, white);
275
+ --color-background-red: light-dark(#ffc4be, #5b2b28);
276
+ --color-border-red: light-dark(#ffaea7, #fa6762);
277
+ --color-icon-red: light-dark(#76000c, #ff9890);
278
+ --color-text-red: light-dark(#76000c, #ffaea7);
279
+ --color-background-orange: light-dark(#ffc7a1, #503424);
280
+ --color-border-orange: light-dark(#ffc7a1, #df843f);
281
+ --color-icon-orange: light-dark(#622700, #ff9e55);
282
+ --color-text-orange: light-dark(#622700, #ffb37e);
283
+ --color-background-yellow: light-dark(#fae19e, #453a1c);
284
+ --color-border-yellow: light-dark(#e3c36c, #c29900);
285
+ --color-icon-yellow: light-dark(#4b3900, #e2b623);
286
+ --color-text-yellow: light-dark(#4b3900, #eec448);
287
+ --color-background-green: light-dark(#bce0bb, #2b422b);
288
+ --color-border-green: light-dark(#aad4a9, #6ab26b);
289
+ --color-icon-green: light-dark(#00490b, #90ca90);
290
+ --color-text-green: light-dark(#00490b, #90ca90);
291
+ --color-background-teal: light-dark(#a9e2d6, #28413c);
292
+ --color-border-teal: light-dark(#90d7c8, #4fb1a0);
293
+ --color-icon-teal: light-dark(#00463d, #81c9bb);
294
+ --color-text-teal: light-dark(#00463d, #90d7c8);
295
+ --color-background-cyan: light-dark(#9ae2f4, #274046);
296
+ --color-border-cyan: light-dark(#85d5e9, #49adc4);
297
+ --color-icon-cyan: light-dark(#004351, #71c7dd);
298
+ --color-text-cyan: light-dark(#004351, #85d5e9);
299
+ --color-background-blue: light-dark(#b9d7ff, #253c5a);
300
+ --color-border-blue: light-dark(#a1caff, #5aa0f8);
301
+ --color-icon-blue: light-dark(#003978, #88bcff);
302
+ --color-text-blue: light-dark(#003978, #a1caff);
303
+ --color-background-purple: light-dark(#f7d5ff, #4a2f51);
304
+ --color-border-purple: light-dark(#f3bfff, #d885eb);
305
+ --color-icon-purple: light-dark(#5c0e6c, #e496f6);
306
+ --color-text-purple: light-dark(#5c0e6c, #eaacf8);
307
+ --color-background-pink: light-dark(#ffc0d7, #572b3d);
308
+ --color-border-pink: light-dark(#ffc0d7, #fc78b1);
309
+ --color-icon-pink: light-dark(#70003f, #fd92bd);
310
+ --color-text-pink: light-dark(#70003f, #ffa9ca);
311
+ --color-background-gray: light-dark(#e2e2e2, #303030);
312
+ --color-border-gray: light-dark(#d4d4d4, #262626);
313
+ --color-icon-gray: light-dark(#474747, #9e9e9e);
314
+ --color-text-gray: light-dark(#1b1b1b, #d4d4d4);
315
+ --radius-none: 0px;
316
+ --radius-inner: 0.375rem;
317
+ --radius-element: 0.625rem;
318
+ --radius-container: 0.75rem;
319
+ --radius-page: 1.75rem;
320
+ --radius-full: 9999px;
321
+ --shadow-low:
322
+ 0 2px 4px light-dark(oklch(0 0 0 / 5%), oklch(0 0 0 / 25%)),
323
+ 0 4px 8px light-dark(oklch(0 0 0 / 10%), oklch(0 0 0 / 40%)),
324
+ inset 0 0 0 1px light-dark(transparent, oklch(1 0 0 / 8%));
325
+ --shadow-med:
326
+ 0 2px 4px light-dark(oklch(0 0 0 / 5%), oklch(0 0 0 / 35%)),
327
+ 0 4px 12px light-dark(oklch(0 0 0 / 10%), oklch(0 0 0 / 50%)),
328
+ inset 0 0 0 1px light-dark(transparent, oklch(1 0 0 / 12%));
329
+ --shadow-high:
330
+ 0 4px 6px light-dark(oklch(0 0 0 / 10%), oklch(0 0 0 / 50%)),
331
+ 0 12px 24px light-dark(oklch(0 0 0 / 15%), oklch(0 0 0 / 70%)),
332
+ inset 0 0 0 1px light-dark(transparent, oklch(1 0 0 / 15%));
333
+ --shadow-inset-hover: inset 0px 0px 0px 2px #0074e24d;
334
+ --shadow-inset-selected: inset 0px 0px 0px 2px #0074e280;
335
+ --shadow-inset-success: inset 0px 0px 0px 2px #2f7d334d;
336
+ --shadow-inset-warning: inset 0px 0px 0px 2px #f8d36a4d;
337
+ --shadow-inset-error: inset 0px 0px 0px 2px #de47454d;
338
+ --color-background-inverted: light-dark(#1a1b22, #fbfcff);
339
+ --color-track: light-dark(#a9aab9, #434653);
340
+ --astryx-theme-neutral-color-status-fill-accent: light-dark(#0074e2, #6d9cfe);
341
+ --astryx-theme-neutral-color-status-fill-success: light-dark(#198100, #64af4c);
342
+ --astryx-theme-neutral-color-status-fill-warning: #ffce2f;
343
+ --astryx-theme-neutral-color-status-fill-error: light-dark(#c9303a, #ff705d);
344
+ --astryx-theme-neutral-color-status-muted-accent: light-dark(#b9d7ff, #88bcff3d);
345
+ --astryx-theme-neutral-color-on-tint-neutral: light-dark(#fafafa4d, #0a0a0a4d);
346
+ --astryx-theme-neutral-color-on-tint-overlay-hover: light-dark(#fafafa1a, #0a0a0a1a);
347
+ --astryx-theme-neutral-color-on-tint-overlay-pressed: light-dark(#fafafa33, #0a0a0a33);
348
+ --astryx-theme-neutral-color-destructive-overlay-hover: light-dark(#ff7f770d, #ee736c0d);
349
+ --astryx-theme-neutral-color-destructive-overlay-pressed: light-dark(#ff7f771a, #ee736c1a);
350
+ }
351
+
352
+ .astryx-heading[data-level="1"] {
353
+ font-family: var(--font-family-heading);
354
+ font-size: var(--text-heading-1-size);
355
+ font-weight: var(--text-heading-1-weight);
356
+ line-height: var(--text-heading-1-leading);
357
+ }
358
+
359
+ .astryx-heading[data-level="2"] {
360
+ font-family: var(--font-family-heading);
361
+ font-size: var(--text-heading-2-size);
362
+ font-weight: var(--text-heading-2-weight);
363
+ line-height: var(--text-heading-2-leading);
364
+ }
365
+
366
+ .astryx-heading[data-level="3"] {
367
+ font-family: var(--font-family-heading);
368
+ font-size: var(--text-heading-3-size);
369
+ font-weight: var(--text-heading-3-weight);
370
+ line-height: var(--text-heading-3-leading);
371
+ }
372
+
373
+ .astryx-heading[data-level="4"] {
374
+ font-family: var(--font-family-heading);
375
+ font-size: var(--text-heading-4-size);
376
+ font-weight: var(--text-heading-4-weight);
377
+ line-height: var(--text-heading-4-leading);
378
+ }
379
+
380
+ .astryx-heading[data-level="5"] {
381
+ font-family: var(--font-family-heading);
382
+ font-size: var(--text-heading-5-size);
383
+ font-weight: var(--text-heading-5-weight);
384
+ line-height: var(--text-heading-5-leading);
385
+ }
386
+
387
+ .astryx-heading[data-level="6"] {
388
+ font-family: var(--font-family-heading);
389
+ font-size: var(--text-heading-6-size);
390
+ font-weight: var(--text-heading-6-weight);
391
+ line-height: var(--text-heading-6-leading);
392
+ }
393
+
394
+ .astryx-heading[data-type="display-1"] {
395
+ font-family: var(--font-family-heading);
396
+ font-size: var(--text-display-1-size);
397
+ line-height: var(--text-display-1-leading);
398
+ }
399
+
400
+ .astryx-heading[data-type="display-2"] {
401
+ font-family: var(--font-family-heading);
402
+ font-size: var(--text-display-2-size);
403
+ line-height: var(--text-display-2-leading);
404
+ }
405
+
406
+ .astryx-heading[data-type="display-3"] {
407
+ font-family: var(--font-family-heading);
408
+ font-size: var(--text-display-3-size);
409
+ line-height: var(--text-display-3-leading);
410
+ }
411
+
412
+ .astryx-text[data-type="body"] {
413
+ font-family: var(--font-family-body);
414
+ font-size: var(--text-body-size);
415
+ line-height: var(--text-body-leading);
416
+ }
417
+
418
+ .astryx-text[data-type="large"] {
419
+ font-family: var(--font-family-body);
420
+ font-size: var(--text-large-size);
421
+ line-height: var(--text-large-leading);
422
+ }
423
+
424
+ .astryx-text[data-type="label"] {
425
+ font-family: var(--font-family-body);
426
+ font-size: var(--text-label-size);
427
+ line-height: var(--text-label-leading);
428
+ }
429
+
430
+ .astryx-text[data-type="code"] {
431
+ font-family: var(--font-family-code);
432
+ font-size: var(--text-code-size);
433
+ line-height: var(--text-code-leading);
434
+ }
435
+
436
+ .astryx-text[data-type="supporting"] {
437
+ font-family: var(--font-family-body);
438
+ font-size: var(--text-supporting-size);
439
+ line-height: var(--text-supporting-leading);
440
+ }
441
+
442
+ .astryx-text[data-type="display-1"] {
443
+ font-family: var(--font-family-heading);
444
+ font-size: var(--text-display-1-size);
445
+ line-height: var(--text-display-1-leading);
446
+ }
447
+
448
+ .astryx-text[data-type="display-2"] {
449
+ font-family: var(--font-family-heading);
450
+ font-size: var(--text-display-2-size);
451
+ line-height: var(--text-display-2-leading);
452
+ }
453
+
454
+ .astryx-text[data-type="display-3"] {
455
+ font-family: var(--font-family-heading);
456
+ font-size: var(--text-display-3-size);
457
+ line-height: var(--text-display-3-leading);
458
+ }
459
+
460
+ .astryx-button[data-variant="destructive"] {
461
+ background-color: var(--color-error-muted);
462
+ color: var(--color-error);
463
+ --color-overlay-hover: var(--astryx-theme-neutral-color-destructive-overlay-hover);
464
+ --color-overlay-pressed: var(--astryx-theme-neutral-color-destructive-overlay-pressed);
465
+ }
466
+
467
+ .astryx-badge[data-variant="info"] {
468
+ background-color: var(--astryx-theme-neutral-color-status-fill-accent);
469
+ color: var(--color-on-accent);
470
+ }
471
+
472
+ .astryx-badge[data-variant="neutral"] {
473
+ background-color: var(--color-background-gray);
474
+ color: var(--color-text-gray);
475
+ }
476
+
477
+ .astryx-badge[data-variant="success"] {
478
+ background-color: var(--astryx-theme-neutral-color-status-fill-success);
479
+ color: var(--color-on-success);
480
+ }
481
+
482
+ .astryx-badge[data-variant="warning"] {
483
+ background-color: var(--astryx-theme-neutral-color-status-fill-warning);
484
+ color: var(--color-on-warning);
485
+ }
486
+
487
+ .astryx-badge[data-variant="error"] {
488
+ background-color: var(--astryx-theme-neutral-color-status-fill-error);
489
+ color: var(--color-on-error);
490
+ }
491
+
492
+ .astryx-badge[data-variant="red"] {
493
+ background-color: var(--color-background-red);
494
+ color: var(--color-text-red);
495
+ }
496
+
497
+ .astryx-badge[data-variant="orange"] {
498
+ background-color: var(--color-background-orange);
499
+ color: var(--color-text-orange);
500
+ }
501
+
502
+ .astryx-badge[data-variant="yellow"] {
503
+ background-color: var(--color-background-yellow);
504
+ color: var(--color-text-yellow);
505
+ }
506
+
507
+ .astryx-badge[data-variant="green"] {
508
+ background-color: var(--color-background-green);
509
+ color: var(--color-text-green);
510
+ }
511
+
512
+ .astryx-badge[data-variant="teal"] {
513
+ background-color: var(--color-background-teal);
514
+ color: var(--color-text-teal);
515
+ }
516
+
517
+ .astryx-badge[data-variant="cyan"] {
518
+ background-color: var(--color-background-cyan);
519
+ color: var(--color-text-cyan);
520
+ }
521
+
522
+ .astryx-badge[data-variant="blue"] {
523
+ background-color: var(--color-background-blue);
524
+ color: var(--color-text-blue);
525
+ }
526
+
527
+ .astryx-badge[data-variant="purple"] {
528
+ background-color: var(--color-background-purple);
529
+ color: var(--color-text-purple);
530
+ }
531
+
532
+ .astryx-badge[data-variant="pink"] {
533
+ background-color: var(--color-background-pink);
534
+ color: var(--color-text-pink);
535
+ }
536
+
537
+ .astryx-badge[data-variant="gray"] {
538
+ background-color: var(--color-background-gray);
539
+ color: var(--color-text-gray);
540
+ }
541
+
542
+ .astryx-status-dot[data-variant="success"] {
543
+ background-color: var(--astryx-theme-neutral-color-status-fill-success);
544
+ }
545
+
546
+ .astryx-status-dot[data-variant="warning"] {
547
+ background-color: var(--astryx-theme-neutral-color-status-fill-warning);
548
+ }
549
+
550
+ .astryx-status-dot[data-variant="error"] {
551
+ background-color: var(--astryx-theme-neutral-color-status-fill-error);
552
+ }
553
+
554
+ .astryx-status-dot[data-variant="accent"] {
555
+ background-color: var(--astryx-theme-neutral-color-status-fill-accent);
556
+ }
557
+
558
+ .astryx-avatar-status-dot[data-variant="success"] {
559
+ background-color: var(--astryx-theme-neutral-color-status-fill-success);
560
+ }
561
+
562
+ .astryx-avatar-status-dot[data-variant="error"] {
563
+ background-color: var(--astryx-theme-neutral-color-status-fill-error);
564
+ }
565
+
566
+ .astryx-segmented-control {
567
+ padding: var(--spacing-1);
568
+ --_segmented-control-padding: var(--spacing-1);
569
+ border-radius: var(--radius-full);
570
+ --_segmented-control-radius: var(--radius-full);
571
+ }
572
+
573
+ .astryx-segmented-control-item[data-size="sm"] {
574
+ height: var(--size-element-sm);
575
+ }
576
+
577
+ .astryx-segmented-control-item[data-size="md"] {
578
+ height: var(--size-element-md);
579
+ }
580
+
581
+ .astryx-segmented-control-item[data-size="lg"] {
582
+ height: var(--size-element-lg);
583
+ }
584
+
585
+ .astryx-segmented-control-item[data-selected="selected"] {
586
+ box-shadow: none;
587
+ }
588
+
589
+ .astryx-banner {
590
+ --color-neutral: var(--astryx-theme-neutral-color-on-tint-neutral);
591
+ --color-overlay-hover: var(--astryx-theme-neutral-color-on-tint-overlay-hover);
592
+ --color-overlay-pressed: var(--astryx-theme-neutral-color-on-tint-overlay-pressed);
593
+ }
594
+
595
+ .astryx-banner[data-status="info"] {
596
+ --color-accent-muted: var(--astryx-theme-neutral-color-status-muted-accent);
597
+ --color-text-primary: var(--color-text-blue);
598
+ --color-text-secondary: var(--color-text-blue);
599
+ --color-accent: var(--color-text-blue);
600
+ }
601
+
602
+ .astryx-banner[data-status="success"] {
603
+ --color-text-primary: var(--color-text-green);
604
+ --color-text-secondary: var(--color-text-green);
605
+ --color-success: var(--color-text-green);
606
+ }
607
+
608
+ .astryx-banner[data-status="warning"] {
609
+ --color-text-primary: var(--color-text-yellow);
610
+ --color-text-secondary: var(--color-text-yellow);
611
+ --color-warning: var(--color-text-yellow);
612
+ }
613
+
614
+ .astryx-banner[data-status="error"] {
615
+ --color-text-primary: var(--color-text-red);
616
+ --color-text-secondary: var(--color-text-red);
617
+ --color-error: var(--color-text-red);
618
+ }
619
+
620
+ .astryx-step-indicator[data-status="accent"] {
621
+ --color-accent: var(--astryx-theme-neutral-color-status-fill-accent);
622
+ }
623
+
624
+ .astryx-step-indicator[data-status="success"] {
625
+ --color-success: var(--astryx-theme-neutral-color-status-fill-success);
626
+ }
627
+
628
+ .astryx-step-indicator[data-status="warning"] {
629
+ --color-warning: var(--astryx-theme-neutral-color-status-fill-warning);
630
+ }
631
+
632
+ .astryx-step-indicator[data-status="error"] {
633
+ --color-error: var(--astryx-theme-neutral-color-status-fill-error);
634
+ }
635
+
636
+ .astryx-switch {
637
+ --color-background-gray: var(--color-border-emphasized);
638
+ }
639
+
640
+ .astryx-progress-bar {
641
+ --color-background-muted: var(--color-border-emphasized);
642
+ }
643
+
644
+ .astryx-progress-bar[data-variant="accent"] {
645
+ --color-accent: var(--astryx-theme-neutral-color-status-fill-accent);
646
+ }
647
+
648
+ .astryx-progress-bar[data-variant="success"] {
649
+ --color-success: var(--astryx-theme-neutral-color-status-fill-success);
650
+ }
651
+
652
+ .astryx-progress-bar[data-variant="warning"] {
653
+ --color-warning: var(--astryx-theme-neutral-color-status-fill-warning);
654
+ }
655
+
656
+ .astryx-progress-bar[data-variant="error"] {
657
+ --color-error: var(--astryx-theme-neutral-color-status-fill-error);
658
+ }
659
+
660
+ .astryx-card {
661
+ --astryx-card-padding: var(--spacing-3);
662
+ }
663
+
664
+ .astryx-section {
665
+ --astryx-section-padding: var(--spacing-3);
666
+ }
667
+
668
+ .astryx-text[data-color="primary"] {
669
+ color: var(--color-text-primary);
670
+ }
671
+
672
+ .astryx-heading[data-color="primary"] {
673
+ color: var(--color-text-primary);
674
+ }
675
+
676
+ .astryx-text[data-color="secondary"] {
677
+ color: var(--color-text-secondary);
678
+ }
679
+
680
+ .astryx-heading[data-color="secondary"] {
681
+ color: var(--color-text-secondary);
682
+ }
683
+
684
+ .astryx-text[data-color="disabled"] {
685
+ color: var(--color-text-disabled);
686
+ }
687
+
688
+ .astryx-heading[data-color="disabled"] {
689
+ color: var(--color-text-disabled);
690
+ }
691
+
692
+ .astryx-text[data-color="placeholder"] {
693
+ color: var(--color-text-secondary);
694
+ }
695
+
696
+ .astryx-heading[data-color="placeholder"] {
697
+ color: var(--color-text-secondary);
698
+ }
699
+
700
+ .astryx-text[data-color="accent"] {
701
+ color: var(--color-text-accent);
702
+ }
703
+
704
+ .astryx-heading[data-color="accent"] {
705
+ color: var(--color-text-accent);
706
+ }
707
+
708
+ .astryx-text[data-size="4xs"] {
709
+ font-size: var(--font-size-4xs);
710
+ }
711
+
712
+ .astryx-text[data-size="3xs"] {
713
+ font-size: var(--font-size-3xs);
714
+ }
715
+
716
+ .astryx-text[data-size="2xs"] {
717
+ font-size: var(--font-size-2xs);
718
+ }
719
+
720
+ .astryx-text[data-size="xsm"] {
721
+ font-size: var(--font-size-xs);
722
+ }
723
+
724
+ .astryx-text[data-size="sm"] {
725
+ font-size: var(--font-size-sm);
726
+ }
727
+
728
+ .astryx-text[data-size="base"] {
729
+ font-size: var(--font-size-base);
730
+ }
731
+
732
+ .astryx-text[data-size="lg"] {
733
+ font-size: var(--font-size-lg);
734
+ }
735
+
736
+ .astryx-text[data-size="xl"] {
737
+ font-size: var(--font-size-xl);
738
+ }
739
+
740
+ .astryx-text[data-size="2xl"] {
741
+ font-size: var(--font-size-2xl);
742
+ }
743
+
744
+ .astryx-text[data-size="3xl"] {
745
+ font-size: var(--font-size-3xl);
746
+ }
747
+
748
+ .astryx-text[data-size="4xl"] {
749
+ font-size: var(--font-size-4xl);
750
+ }
751
+
752
+ .astryx-heading[data-weight="normal"] {
753
+ font-weight: var(--font-weight-normal);
754
+ }
755
+
756
+ .astryx-heading[data-weight="medium"] {
757
+ font-weight: var(--font-weight-medium);
758
+ }
759
+
760
+ .astryx-heading[data-weight="semibold"] {
761
+ font-weight: var(--font-weight-semibold);
762
+ }
763
+
764
+ .astryx-heading[data-weight="bold"] {
765
+ font-weight: var(--font-weight-bold);
766
+ }
767
+ }
768
+ }
769
+
770
+ @layer astryx-theme {
771
+ @scope ([data-astryx-theme="joined"]) to ([data-astryx-theme]) {
772
+ [data-astryx-media="dark"] {
773
+ color-scheme: dark;
774
+ --color-text-primary: var(--color-on-dark);
775
+ --color-icon-primary: var(--color-on-dark);
776
+ --color-accent: var(--color-on-dark);
777
+ }
778
+
779
+ [data-astryx-media="light"] {
780
+ color-scheme: light;
781
+ --color-text-primary: var(--color-on-light);
782
+ --color-icon-primary: var(--color-on-light);
783
+ --color-accent: var(--color-on-light);
784
+ }
785
+ }
786
+ }