@repobit/dex-system-design 0.23.95 → 0.23.96

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 (84) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/package.json +4 -4
  3. package/src/blog/assets/articles/fbi-crypto-scam-1.jpeg +0 -0
  4. package/src/blog/assets/articles/fbi-crypto-scam-cover.png +0 -0
  5. package/src/blog/assets/fonts/IBMPlexSans-Bold.woff2 +0 -0
  6. package/src/blog/assets/fonts/IBMPlexSans-BoldItalic.woff2 +0 -0
  7. package/src/blog/assets/fonts/IBMPlexSans-Italic.woff2 +0 -0
  8. package/src/blog/assets/fonts/IBMPlexSans-Light.woff2 +0 -0
  9. package/src/blog/assets/fonts/IBMPlexSans-LightItalic.woff2 +0 -0
  10. package/src/blog/assets/fonts/IBMPlexSans-Medium.woff2 +0 -0
  11. package/src/blog/assets/fonts/IBMPlexSans-MediumItalic.woff2 +0 -0
  12. package/src/blog/assets/fonts/IBMPlexSans-Regular.woff2 +0 -0
  13. package/src/blog/assets/fonts/IBMPlexSans-SemiBold.woff2 +0 -0
  14. package/src/blog/assets/fonts/IBMPlexSans-SemiBoldItalic.woff2 +0 -0
  15. package/src/blog/assets/fonts/IBMPlexSansCondensed-Bold.woff2 +0 -0
  16. package/src/blog/assets/fonts/IBMPlexSansCondensed-BoldItalic.woff2 +0 -0
  17. package/src/blog/assets/fonts/IBMPlexSansCondensed-Italic.woff2 +0 -0
  18. package/src/blog/assets/fonts/IBMPlexSansCondensed-Light.woff2 +0 -0
  19. package/src/blog/assets/fonts/IBMPlexSansCondensed-LightItalic.woff2 +0 -0
  20. package/src/blog/assets/fonts/IBMPlexSansCondensed-Medium.woff2 +0 -0
  21. package/src/blog/assets/fonts/IBMPlexSansCondensed-MediumItalic.woff2 +0 -0
  22. package/src/blog/assets/fonts/IBMPlexSansCondensed-Regular.woff2 +0 -0
  23. package/src/blog/assets/fonts/IBMPlexSansCondensed-SemiBold.woff2 +0 -0
  24. package/src/blog/assets/fonts/IBMPlexSansCondensed-SemiBoldItalic.woff2 +0 -0
  25. package/src/blog/assets/global-scam-intelligence-report-2026.png +0 -0
  26. package/src/blog/assets/psd-4.jpg +0 -0
  27. package/src/blog/src/articles/FBI warns of crypto investment scam that sends couriers to collect victims' cash-editedAB.docx +0 -0
  28. package/src/blog/src/articles/FBI-crypto-scam-courier-cash.png +0 -0
  29. package/src/blog/src/articles/fbi-crypto-scam.js +324 -0
  30. package/src/blog/src/articles/~$I warns of crypto investment scam that sends couriers to collect victims' cash-editedAB.docx +0 -0
  31. package/src/blog/src/atoms/blog-abstract.js +51 -0
  32. package/src/blog/src/atoms/blog-atoms.stories.js +519 -0
  33. package/src/blog/src/atoms/blog-authors.js +70 -0
  34. package/src/blog/src/atoms/blog-avatar.js +44 -0
  35. package/src/blog/src/atoms/blog-blockquote.js +92 -0
  36. package/src/blog/src/atoms/blog-caption.js +31 -0
  37. package/src/blog/src/atoms/blog-code-block.js +89 -0
  38. package/src/blog/src/atoms/blog-dek.js +30 -0
  39. package/src/blog/src/atoms/blog-featured-image.js +65 -0
  40. package/src/blog/src/atoms/blog-heading.js +63 -0
  41. package/src/blog/src/atoms/blog-image.js +50 -0
  42. package/src/blog/src/atoms/blog-key-takeaways.js +101 -0
  43. package/src/blog/src/atoms/blog-link.js +68 -0
  44. package/src/blog/src/atoms/blog-meta.js +87 -0
  45. package/src/blog/src/atoms/blog-most-popular.js +146 -0
  46. package/src/blog/src/atoms/blog-newsletter-signup.js +342 -0
  47. package/src/blog/src/atoms/blog-paragraph.js +61 -0
  48. package/src/blog/src/atoms/blog-product-upsell.js +168 -0
  49. package/src/blog/src/atoms/blog-related-articles.js +326 -0
  50. package/src/blog/src/atoms/blog-related-label.js +30 -0
  51. package/src/blog/src/atoms/blog-report-promo.js +250 -0
  52. package/src/blog/src/atoms/blog-standout.js +78 -0
  53. package/src/blog/src/atoms/blog-subhead.js +32 -0
  54. package/src/blog/src/atoms/blog-table-of-contents.js +447 -0
  55. package/src/blog/src/atoms/blog-tag.js +86 -0
  56. package/src/blog/src/atoms/blog-title.js +31 -0
  57. package/src/blog/src/base/blog-element.js +10 -0
  58. package/src/blog/src/breakpoints.js +23 -0
  59. package/src/blog/src/content/blog-article.js +736 -0
  60. package/src/blog/src/content/blog-atoms-showcase.js +401 -0
  61. package/src/blog/src/content/blog-page-layout.js +73 -0
  62. package/src/blog/src/content/blog-pages.stories.js +101 -0
  63. package/src/blog/src/content/render-inline-content.js +18 -0
  64. package/src/blog/src/data/popular-articles.js +43 -0
  65. package/src/blog/src/data/related-articles.js +58 -0
  66. package/src/blog/src/index.js +104 -0
  67. package/src/blog/src/lib/article-toc.js +206 -0
  68. package/src/blog/src/lib/load-prism.js +23 -0
  69. package/src/blog/src/shell/blog-shell.js +31 -0
  70. package/src/blog/src/styles/prism-theme.js +65 -0
  71. package/src/blog/src/tokens/blog.js +406 -0
  72. package/src/blog/src/tokens/core.js +811 -0
  73. package/src/blog/src/tokens/fonts.css +241 -0
  74. package/src/blog/src/tokens/index.js +27 -0
  75. package/src/blog/src/tokens/legacy.js +58 -0
  76. package/src/blog/tokens/blog.js +406 -0
  77. package/src/blog/tokens/core.js +811 -0
  78. package/src/blog/tokens/fonts.css +241 -0
  79. package/src/blog/tokens/index.js +27 -0
  80. package/src/blog/tokens/legacy.js +58 -0
  81. package/src/blog/tokens.css +1512 -0
  82. package/src/blog/tokens.js +1 -0
  83. package/src/blog/vendor/prism/prism.css +120 -0
  84. package/src/blog/vendor/prism/prism.js +300 -0
@@ -0,0 +1,811 @@
1
+ /** Core design system tokens — source of truth. Run npm run build:tokens to sync tokens.css */
2
+ export const coreTokens = `
3
+ /* ================================
4
+ CORE TYPOGRAPHY TOKENS
5
+ ================================ */
6
+
7
+ --typography-fontFamily-sans: "IBM Plex Sans", system-ui, -apple-system,
8
+ BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
9
+ --typography-fontFamily-sans-condensed: "IBM Plex Sans Condensed", system-ui,
10
+ -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial,
11
+ sans-serif;
12
+ --typography-fontFamily-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular,
13
+ Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
14
+
15
+ --typography-fontSize-xxs: 0.6875rem; /* 11px */
16
+ --typography-fontSize-xs: 0.75rem; /* 12px */
17
+ --typography-fontSize-sm: 0.875rem; /* 14px */
18
+ --typography-fontSize-base: 1rem; /* 16px */
19
+ --typography-fontSize-lg: 1.125rem; /* 18px */
20
+ --typography-fontSize-xl: 1.25rem; /* 20px */
21
+ --typography-fontSize-2xl: 1.5rem; /* 24px */
22
+ --typography-fontSize-3xl: 2rem; /* 32px */
23
+ --typography-fontSize-4xl: 2.25rem; /* 36px */
24
+ --typography-fontSize-5xl: 3rem; /* 48px */
25
+ --typography-fontSize-6xl: 3.75rem; /* 60px */
26
+ --typography-fontSize-7xl: 4.5rem; /* 72px */
27
+ --typography-fontSize-8xl: 6rem; /* 96px */
28
+ --typography-fontSize-9xl: 8rem; /* 128px */
29
+
30
+ --typography-fontWeight-light: 300;
31
+ --typography-fontWeight-normal: 400;
32
+ --typography-fontWeight-medium: 500;
33
+ --typography-fontWeight-semibold: 600;
34
+ --typography-fontWeight-bold: 700;
35
+
36
+ --typography-lineHeight-none: 1;
37
+ --typography-lineHeight-tight: 1.25;
38
+ --typography-lineHeight-snug: 1.375;
39
+ --typography-lineHeight-normal: 1.5;
40
+ --typography-lineHeight-relaxed: 1.625;
41
+ --typography-lineHeight-loose: 2;
42
+
43
+ --typography-letterSpacing-tighter: -0.05em;
44
+ --typography-letterSpacing-tight: -0.025em;
45
+ --typography-letterSpacing-normal: 0em;
46
+ --typography-letterSpacing-wide: 0.025em;
47
+ --typography-letterSpacing-wider: 0.05em;
48
+ --typography-letterSpacing-widest: 0.1em;
49
+
50
+ /* =====================
51
+ COLORS (PRIMITIVE)
52
+ ====================== */
53
+ --color-blue-50: #f0f7ff;
54
+ --color-blue-100: #d6e8ff;
55
+ --color-blue-200: #9ec8ff;
56
+ --color-blue-300: #6babff;
57
+ --color-blue-400: #338bff;
58
+ --color-blue-500: #006dff;
59
+ --color-blue-600: #0059d6;
60
+ --color-blue-700: #0045ad;
61
+ --color-blue-800: #003385;
62
+ --color-blue-900: #00225c;
63
+ --color-blue-950: #001947;
64
+
65
+ --color-red-50: #fff0f0;
66
+ --color-red-100: #ffd6d6;
67
+ --color-red-200: #ff9e9e;
68
+ --color-red-300: #ff6b6b;
69
+ --color-red-400: #ff3333;
70
+ --color-red-500: #ff0000;
71
+ --color-red-600: #d60000;
72
+ --color-red-700: #ad0000;
73
+ --color-red-800: #850000;
74
+ --color-red-900: #5c0000;
75
+ --color-red-950: #470000;
76
+
77
+ --color-green-50: #edfdf1;
78
+ --color-green-100: #d1fadc;
79
+ --color-green-200: #9af4b4;
80
+ --color-green-300: #63ee8d;
81
+ --color-green-400: #2ce767;
82
+ --color-green-500: #15c14f;
83
+ --color-green-600: #12a641;
84
+ --color-green-700: #0e8532;
85
+ --color-green-800: #0b6a26;
86
+ --color-green-900: #084a1a;
87
+ --color-green-950: #063c14;
88
+
89
+ --color-yellow-50: #fffbf0;
90
+ --color-yellow-100: #fff5d6;
91
+ --color-yellow-200: #ffe89e;
92
+ --color-yellow-300: #ffdc6b;
93
+ --color-yellow-400: #ffcf33;
94
+ --color-yellow-500: #ffc400;
95
+ --color-yellow-600: #d6a000;
96
+ --color-yellow-700: #ad7f00;
97
+ --color-yellow-800: #855f00;
98
+ --color-yellow-900: #5c4000;
99
+ --color-yellow-950: #473100;
100
+
101
+ --color-orange-50: #fef7f1;
102
+ --color-orange-100: #ffe9d6;
103
+ --color-orange-200: #ffcb9e;
104
+ --color-orange-300: #ffaf6b;
105
+ --color-orange-400: #ff9133;
106
+ --color-orange-500: #ff7500;
107
+ --color-orange-600: #d66200;
108
+ --color-orange-700: #ad4f00;
109
+ --color-orange-800: #853d00;
110
+ --color-orange-900: #5c2a00;
111
+ --color-orange-950: #472100;
112
+
113
+ --color-neutral-0: #ffffff;
114
+ --color-neutral-25: #fafafa;
115
+ --color-neutral-50: #f1f2f3;
116
+ --color-neutral-100: #e1e3e5;
117
+ --color-neutral-200: #c5c9ce;
118
+ --color-neutral-300: #a6adb4;
119
+ --color-neutral-400: #88909b;
120
+ --color-neutral-500: #6c7580;
121
+ --color-neutral-600: #565e66;
122
+ --color-neutral-700: #41474d;
123
+ --color-neutral-800: #2c3035;
124
+ --color-neutral-900: #151719;
125
+ --color-neutral-950: #0c0d0e;
126
+ --color-neutral-1000: #000000;
127
+
128
+ /* =====================
129
+ COLORS (SEMANTIC)
130
+ ====================== */
131
+ --color-text-primary: var(--color-neutral-900);
132
+ --color-text-secondary: var(--color-neutral-600);
133
+ --color-text-muted: var(--color-neutral-500);
134
+ --color-text-inverse: var(--color-neutral-0);
135
+ --color-text-link: var(--color-blue-600);
136
+ --color-text-link-hover: var(--color-blue-700);
137
+
138
+ --color-surface: var(--color-neutral-0);
139
+ --color-surface-subtle: var(--color-neutral-50);
140
+ --color-surface-muted: var(--color-neutral-100);
141
+ --color-surface-inverse: var(--color-neutral-950);
142
+ --color-surface-brand: var(--color-blue-50);
143
+
144
+ --color-border-default: var(--color-neutral-300);
145
+ --color-border-subtle: var(--color-neutral-100);
146
+ --color-border-strong: var(--color-neutral-600);
147
+ --color-border-focus: var(--color-blue-500);
148
+
149
+ --color-interactive-primary: var(--color-blue-500);
150
+ --color-interactive-primary-hover: var(--color-blue-600);
151
+ --color-interactive-primary-active: var(--color-blue-700);
152
+
153
+ --color-feedback-error: var(--color-red-500);
154
+ --color-feedback-success: var(--color-green-500);
155
+ --color-feedback-warning: var(--color-yellow-500);
156
+
157
+ /* ================================
158
+ CORE SPACING TOKENS
159
+ ================================ */
160
+
161
+ --spacing-0: 0;
162
+ --spacing-1: 0.0625rem; /* 1px */
163
+ --spacing-2: 0.125rem; /* 2px */
164
+ --spacing-4: 0.25rem; /* 4px */
165
+ --spacing-6: 0.375rem; /* 6px */
166
+ --spacing-8: 0.5rem; /* 8px */
167
+ --spacing-10: 0.625rem; /* 10px */
168
+ --spacing-12: 0.75rem; /* 12px */
169
+ --spacing-14: 0.875rem; /* 14px */
170
+ --spacing-16: 1rem; /* 16px */
171
+ --spacing-18: 1.125rem; /* 18px */
172
+ --spacing-20: 1.25rem; /* 20px */
173
+ --spacing-22: 1.375rem; /* 22px */
174
+ --spacing-24: 1.5rem; /* 24px */
175
+ --spacing-28: 1.75rem; /* 28px */
176
+ --spacing-32: 2rem; /* 32px */
177
+ --spacing-36: 2.25rem; /* 36px */
178
+ --spacing-40: 2.5rem; /* 40px */
179
+ --spacing-44: 2.75rem; /* 44px */
180
+ --spacing-48: 3rem; /* 48px */
181
+ --spacing-52: 3.25rem; /* 52px */
182
+ --spacing-56: 3.5rem; /* 56px */
183
+ --spacing-64: 4rem; /* 64px */
184
+ --spacing-80: 5rem; /* 80px */
185
+ --spacing-96: 6rem; /* 96px */
186
+ --spacing-112: 7rem; /* 112px */
187
+ --spacing-128: 8rem; /* 128px */
188
+
189
+ /* Semantic spacing aliases (canonical: --spacing-*) */
190
+ --space-none: var(--spacing-0);
191
+ --space-4xs: var(--spacing-2);
192
+ --space-3xs: var(--spacing-4);
193
+ --space-2xs: var(--spacing-8);
194
+ --space-xs: var(--spacing-12);
195
+ --space-sm: var(--spacing-16);
196
+ --space-md: var(--spacing-24);
197
+ --space-lg: var(--spacing-32);
198
+ --space-xl: var(--spacing-40);
199
+ --space-2xl: var(--spacing-48);
200
+ --space-3xl: var(--spacing-64);
201
+ --space-4xl: var(--spacing-96);
202
+ --space-5xl: var(--spacing-128);
203
+
204
+ /* ================================
205
+ CORE BORDER TOKENS
206
+ ================================ */
207
+
208
+ --border-width-0: 0;
209
+ --border-width-1: 1px;
210
+ --border-width-2: 2px;
211
+ --border-width-3: 3px;
212
+ --border-width-4: 4px;
213
+ --border-width-8: 8px;
214
+
215
+ --radius-none: 0;
216
+ --radius-sm: 0.25rem; /* 4px */
217
+ --radius-md: 0.375rem; /* 6px */
218
+ --radius-lg: 0.5rem; /* 8px */
219
+ --radius-xl: 0.75rem; /* 12px */
220
+ --radius-2xl: 1rem; /* 16px */
221
+ --radius-3xl: 1.5rem; /* 24px */
222
+ --radius-full: 9999px;
223
+
224
+ /* ================================
225
+ CORE DIMENSION TOKENS
226
+ ================================ */
227
+
228
+ --dimension-2px: 2px;
229
+ --dimension-4px: 4px;
230
+ --dimension-8px: 8px;
231
+ --dimension-12px: 12px;
232
+ --dimension-16px: 16px;
233
+ --dimension-20px: 20px;
234
+ --dimension-24px: 24px;
235
+ --dimension-32px: 32px;
236
+ --dimension-34px: 34px;
237
+ --dimension-40px: 40px;
238
+ --dimension-45px: 45px;
239
+ --dimension-48px: 48px;
240
+ --dimension-55px: 55px;
241
+ --dimension-64px: 64px;
242
+
243
+ /* ================================
244
+ CORE TRANSITION TOKENS
245
+ ================================ */
246
+
247
+ --transition-duration-fast: 150ms;
248
+ --transition-duration-normal: 200ms;
249
+ --transition-duration-slow: 300ms;
250
+ --transition-duration-slower: 500ms;
251
+
252
+ --transition-easing-linear: linear;
253
+ --transition-easing-smooth: ease-in-out;
254
+ --transition-easing-ease-in: ease-in;
255
+ --transition-easing-ease-out: ease-out;
256
+ --transition-easing-bounce: cubic-bezier(0.68, -0.55, 0.265, 1.55);
257
+
258
+ /* ================================
259
+ CORE SHADOW TOKENS
260
+ ================================ */
261
+
262
+ --shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
263
+ --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
264
+ --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1),
265
+ 0 4px 6px -4px rgb(0 0 0 / 0.1);
266
+ --shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1),
267
+ 0 8px 10px -6px rgb(0 0 0 / 0.1);
268
+ --shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / 0.25);
269
+ --shadow-inner: inset 0 2px 4px 0 rgb(0 0 0 / 0.05);
270
+
271
+ --shadow-focus-outline-blue: 0 0 0 3px rgba(6, 109, 255, 0.15);
272
+ --shadow-focus-outline-red: 0 0 0 3px rgba(239, 68, 68, 0.15);
273
+ --shadow-focus-outline-green: 0 0 0 3px rgba(34, 197, 94, 0.15);
274
+
275
+ --focus-outline-primary: 0 0 0 2px var(--color-neutral-0),
276
+ 0 0 0 4px var(--color-blue-500);
277
+ --focus-outline-secondary: 0 0 0 2px var(--color-neutral-0),
278
+ 0 0 0 4px var(--color-neutral-600);
279
+ --focus-outline-error: 0 0 0 2px var(--color-neutral-0),
280
+ 0 0 0 4px var(--color-red-500);
281
+ --focus-outline-success: 0 0 0 2px var(--color-neutral-0),
282
+ 0 0 0 4px var(--color-green-500);
283
+
284
+ --focus-outline-traditional: 2px solid var(--color-blue-500);
285
+ --focus-outline-offset: 2px;
286
+
287
+ /* ================================
288
+ LAYOUT & GRID
289
+ ================================ */
290
+
291
+ --padding-button: var(--space-xs) var(--space-md);
292
+ --padding-input: var(--space-xs);
293
+ --padding-card: var(--space-md);
294
+ --padding-card-sm: var(--space-sm);
295
+ --padding-card-lg: var(--space-lg);
296
+
297
+ --padding-section: var(--space-3xl) 0;
298
+ --padding-section-sm: var(--space-2xl) 0;
299
+ --padding-section-lg: var(--space-4xl) 0;
300
+
301
+ --container-padding: var(--space-md);
302
+ --container-padding-sm: var(--space-sm);
303
+ --container-padding-lg: var(--space-lg);
304
+
305
+ --inset-xs: var(--space-xs);
306
+ --inset-sm: var(--space-sm);
307
+ --inset-md: var(--space-md);
308
+ --inset-lg: var(--space-lg);
309
+
310
+ --stack-xs: var(--space-xs);
311
+ --stack-sm: var(--space-sm);
312
+ --stack-md: var(--space-md);
313
+ --stack-lg: var(--space-lg);
314
+ --stack-xl: var(--space-xl);
315
+
316
+ --inline-xs: var(--space-xs);
317
+ --inline-sm: var(--space-sm);
318
+ --inline-md: var(--space-md);
319
+ --inline-lg: var(--space-lg);
320
+
321
+ --touch-target-size: 44px;
322
+ --touch-target-spacing: 8px;
323
+
324
+ --content-width-readable: 70ch;
325
+ --content-width-max: 1200px;
326
+
327
+ --grid-container-max-xs: 100%;
328
+ --grid-container-max-sm: 540px;
329
+ --grid-container-max-md: 720px;
330
+ --grid-container-max-lg: 960px;
331
+ --grid-container-max-xl: 1140px;
332
+ --grid-container-max-xxl: 1320px;
333
+
334
+ --grid-columns: 12;
335
+
336
+ --grid-gutter-xs: 16px;
337
+ --grid-gutter-sm: 24px;
338
+ --grid-gutter-md: 32px;
339
+ --grid-gutter-lg: 40px;
340
+
341
+ --grid-padding-xs: 16px;
342
+ --grid-padding-sm: 24px;
343
+ --grid-padding-md: 32px;
344
+ --grid-padding-lg: 40px;
345
+
346
+ --breakpoint-xs: 0px;
347
+ --breakpoint-sm: 576px;
348
+ --breakpoint-md: 768px;
349
+ --breakpoint-lg: 992px;
350
+ --breakpoint-xl: 1200px;
351
+ --breakpoint-xxl: 1400px;
352
+
353
+ /* ================================
354
+ COMPONENT TOKENS - TYPOGRAPHY
355
+ ================================ */
356
+
357
+ --typography-heading-h1-fontSize: var(--typography-fontSize-5xl);
358
+ --typography-heading-h1-fontWeight: var(--typography-fontWeight-bold);
359
+ --typography-heading-h1-lineHeight: var(--typography-lineHeight-snug);
360
+ --typography-heading-h1-letterSpacing: var(--typography-letterSpacing-normal);
361
+ --typography-heading-h1-fontFamily: var(--typography-fontFamily-sans-condensed);
362
+
363
+ --typography-heading-h2-fontSize: var(--typography-fontSize-4xl);
364
+ --typography-heading-h2-fontWeight: var(--typography-fontWeight-bold);
365
+ --typography-heading-h2-lineHeight: var(--typography-lineHeight-snug);
366
+ --typography-heading-h2-letterSpacing: var(--typography-letterSpacing-normal);
367
+ --typography-heading-h2-fontFamily: var(--typography-fontFamily-sans-condensed);
368
+
369
+ --typography-heading-h3-fontSize: var(--typography-fontSize-3xl);
370
+ --typography-heading-h3-fontWeight: var(--typography-fontWeight-semibold);
371
+ --typography-heading-h3-lineHeight: var(--typography-lineHeight-snug);
372
+ --typography-heading-h3-letterSpacing: var(--typography-letterSpacing-normal);
373
+ --typography-heading-h3-fontFamily: var(--typography-fontFamily-sans-condensed);
374
+
375
+ --typography-heading-h4-fontSize: var(--typography-fontSize-2xl);
376
+ --typography-heading-h4-fontWeight: var(--typography-fontWeight-semibold);
377
+ --typography-heading-h4-lineHeight: var(--typography-lineHeight-snug);
378
+ --typography-heading-h4-letterSpacing: var(--typography-letterSpacing-normal);
379
+ --typography-heading-h4-fontFamily: var(--typography-fontFamily-sans-condensed);
380
+
381
+ --typography-heading-h5-fontSize: var(--typography-fontSize-xl);
382
+ --typography-heading-h5-fontWeight: var(--typography-fontWeight-medium);
383
+ --typography-heading-h5-lineHeight: var(--typography-lineHeight-normal);
384
+ --typography-heading-h5-letterSpacing: var(--typography-letterSpacing-normal);
385
+ --typography-heading-h5-fontFamily: var(--typography-fontFamily-sans-condensed);
386
+
387
+ --typography-heading-h6-fontSize: var(--typography-fontSize-lg);
388
+ --typography-heading-h6-fontWeight: var(--typography-fontWeight-medium);
389
+ --typography-heading-h6-lineHeight: var(--typography-lineHeight-normal);
390
+ --typography-heading-h6-letterSpacing: var(--typography-letterSpacing-normal);
391
+ --typography-heading-h6-fontFamily: var(--typography-fontFamily-sans-condensed);
392
+
393
+ --typography-body-large-fontSize: var(--typography-fontSize-lg);
394
+ --typography-body-large-fontWeight: var(--typography-fontWeight-normal);
395
+ --typography-body-large-lineHeight: var(--typography-lineHeight-relaxed);
396
+ --typography-body-large-letterSpacing: var(--typography-letterSpacing-normal);
397
+ --typography-body-large-fontFamily: var(--typography-fontFamily-sans);
398
+
399
+ --typography-body-regular-fontSize: var(--typography-fontSize-base);
400
+ --typography-body-regular-fontWeight: var(--typography-fontWeight-normal);
401
+ --typography-body-regular-lineHeight: var(--typography-lineHeight-normal);
402
+ --typography-body-regular-letterSpacing: var(--typography-letterSpacing-normal);
403
+ --typography-body-regular-fontFamily: var(--typography-fontFamily-sans);
404
+
405
+ --typography-body-small-fontSize: var(--typography-fontSize-sm);
406
+ --typography-body-small-fontWeight: var(--typography-fontWeight-normal);
407
+ --typography-body-small-lineHeight: var(--typography-lineHeight-normal);
408
+ --typography-body-small-letterSpacing: var(--typography-letterSpacing-normal);
409
+ --typography-body-small-fontFamily: var(--typography-fontFamily-sans);
410
+
411
+ --typography-body-lead-fontSize: var(--typography-fontSize-xl);
412
+ --typography-body-lead-fontWeight: var(--typography-fontWeight-normal);
413
+ --typography-body-lead-lineHeight: var(--typography-lineHeight-relaxed);
414
+ --typography-body-lead-letterSpacing: var(--typography-letterSpacing-normal);
415
+ --typography-body-lead-fontFamily: var(--typography-fontFamily-sans);
416
+
417
+ --typography-label-default-fontSize: var(--typography-fontSize-sm);
418
+ --typography-label-default-fontWeight: var(--typography-fontWeight-medium);
419
+ --typography-label-default-lineHeight: var(--typography-lineHeight-normal);
420
+ --typography-label-default-letterSpacing: var(--typography-letterSpacing-normal);
421
+ --typography-label-default-fontFamily: var(--typography-fontFamily-sans);
422
+
423
+ --typography-label-small-fontSize: var(--typography-fontSize-xs);
424
+ --typography-label-small-fontWeight: var(--typography-fontWeight-medium);
425
+ --typography-label-small-lineHeight: var(--typography-lineHeight-normal);
426
+ --typography-label-small-letterSpacing: var(--typography-letterSpacing-wide);
427
+ --typography-label-small-fontFamily: var(--typography-fontFamily-sans);
428
+
429
+ --typography-label-extra-small-fontSize: var(--typography-fontSize-xxs);
430
+ --typography-label-xsmall-fontSize: var(--typography-fontSize-xs);
431
+
432
+ --typography-label-large-fontSize: var(--typography-fontSize-base);
433
+ --typography-label-large-fontWeight: var(--typography-fontWeight-medium);
434
+ --typography-label-large-lineHeight: var(--typography-lineHeight-normal);
435
+ --typography-label-large-letterSpacing: var(--typography-letterSpacing-normal);
436
+ --typography-label-large-fontFamily: var(--typography-fontFamily-sans);
437
+
438
+ --typography-label-xl-fontSize: var(--typography-fontSize-lg);
439
+ --typography-label-xl-fontWeight: var(--typography-fontWeight-medium);
440
+ --typography-label-xl-lineHeight: var(--typography-lineHeight-normal);
441
+ --typography-label-xl-letterSpacing: var(--typography-letterSpacing-normal);
442
+ --typography-label-xl-fontFamily: var(--typography-fontFamily-sans);
443
+
444
+ --typography-caption-default-fontSize: var(--typography-fontSize-xs);
445
+ --typography-caption-default-fontWeight: var(--typography-fontWeight-normal);
446
+ --typography-caption-default-lineHeight: var(--typography-lineHeight-normal);
447
+ --typography-caption-default-letterSpacing: var(--typography-letterSpacing-normal);
448
+ --typography-caption-default-fontFamily: var(--typography-fontFamily-sans);
449
+
450
+ --typography-caption-small-fontSize: var(--typography-fontSize-xs);
451
+ --typography-caption-small-fontWeight: var(--typography-fontWeight-normal);
452
+ --typography-caption-small-lineHeight: var(--typography-lineHeight-normal);
453
+ --typography-caption-small-letterSpacing: var(--typography-letterSpacing-wide);
454
+ --typography-caption-small-fontFamily: var(--typography-fontFamily-sans);
455
+
456
+ --typography-link-default-fontSize: inherit;
457
+ --typography-link-default-fontWeight: var(--typography-fontWeight-normal);
458
+ --typography-link-default-lineHeight: inherit;
459
+ --typography-link-default-letterSpacing: inherit;
460
+ --typography-link-default-fontFamily: inherit;
461
+ --typography-link-default-textDecoration-default: underline;
462
+ --typography-link-default-textDecoration-hover: none;
463
+
464
+ --typography-link-standalone-fontSize: var(--typography-fontSize-base);
465
+ --typography-link-standalone-fontWeight: var(--typography-fontWeight-medium);
466
+ --typography-link-standalone-lineHeight: var(--typography-lineHeight-normal);
467
+ --typography-link-standalone-letterSpacing: var(--typography-letterSpacing-normal);
468
+ --typography-link-standalone-fontFamily: var(--typography-fontFamily-sans);
469
+ --typography-link-standalone-textDecoration-default: underline;
470
+ --typography-link-standalone-textDecoration-hover: none;
471
+
472
+ --typography-code-inline-fontSize: 0.875em;
473
+ --typography-code-inline-fontWeight: var(--typography-fontWeight-normal);
474
+ --typography-code-inline-lineHeight: inherit;
475
+ --typography-code-inline-letterSpacing: var(--typography-letterSpacing-normal);
476
+ --typography-code-inline-fontFamily: var(--typography-fontFamily-mono);
477
+
478
+ --typography-code-block-fontSize: var(--typography-fontSize-sm);
479
+ --typography-code-block-fontWeight: var(--typography-fontWeight-normal);
480
+ --typography-code-block-lineHeight: var(--typography-lineHeight-relaxed);
481
+ --typography-code-block-letterSpacing: var(--typography-letterSpacing-normal);
482
+ --typography-code-block-fontFamily: var(--typography-fontFamily-mono);
483
+
484
+ --typography-display-3xl-fontSize: var(--typography-fontSize-9xl);
485
+ --typography-display-3xl-fontWeight: var(--typography-fontWeight-bold);
486
+ --typography-display-3xl-lineHeight: var(--typography-lineHeight-tight);
487
+ --typography-display-3xl-letterSpacing: var(--typography-letterSpacing-tight);
488
+ --typography-display-3xl-fontFamily: var(--typography-fontFamily-sans-condensed);
489
+
490
+ --typography-display-2xl-fontSize: var(--typography-fontSize-8xl);
491
+ --typography-display-2xl-fontWeight: var(--typography-fontWeight-bold);
492
+ --typography-display-2xl-lineHeight: var(--typography-lineHeight-tight);
493
+ --typography-display-2xl-letterSpacing: var(--typography-letterSpacing-tight);
494
+ --typography-display-2xl-fontFamily: var(--typography-fontFamily-sans-condensed);
495
+
496
+ --typography-display-xl-fontSize: var(--typography-fontSize-7xl);
497
+ --typography-display-xl-fontWeight: var(--typography-fontWeight-bold);
498
+ --typography-display-xl-lineHeight: var(--typography-lineHeight-tight);
499
+ --typography-display-xl-letterSpacing: var(--typography-letterSpacing-tight);
500
+ --typography-display-xl-fontFamily: var(--typography-fontFamily-sans-condensed);
501
+
502
+ --typography-display-lg-fontSize: var(--typography-fontSize-6xl);
503
+ --typography-display-lg-fontWeight: var(--typography-fontWeight-bold);
504
+ --typography-display-lg-lineHeight: var(--typography-lineHeight-tight);
505
+ --typography-display-lg-letterSpacing: var(--typography-letterSpacing-tight);
506
+ --typography-display-lg-fontFamily: var(--typography-fontFamily-sans-condensed);
507
+
508
+ --typography-display-md-fontSize: var(--typography-fontSize-5xl);
509
+ --typography-display-md-fontWeight: var(--typography-fontWeight-bold);
510
+ --typography-display-md-lineHeight: var(--typography-lineHeight-tight);
511
+ --typography-display-md-letterSpacing: var(--typography-letterSpacing-tight);
512
+ --typography-display-md-fontFamily: var(--typography-fontFamily-sans-condensed);
513
+
514
+ --typography-display-sm-fontSize: var(--typography-fontSize-4xl);
515
+ --typography-display-sm-fontWeight: var(--typography-fontWeight-bold);
516
+ --typography-display-sm-lineHeight: var(--typography-lineHeight-tight);
517
+ --typography-display-sm-letterSpacing: var(--typography-letterSpacing-tight);
518
+ --typography-display-sm-fontFamily: var(--typography-fontFamily-sans-condensed);
519
+
520
+ /* ================================
521
+ COMPONENT TOKENS - FORM
522
+ ================================ */
523
+
524
+ --form-label-default-fontSize: var(--typography-fontSize-sm);
525
+ --form-label-default-fontWeight: var(--typography-fontWeight-medium);
526
+ --form-label-default-lineHeight: var(--typography-lineHeight-normal);
527
+ --form-label-default-letterSpacing: var(--typography-letterSpacing-normal);
528
+ --form-label-default-fontFamily: var(--typography-fontFamily-sans);
529
+ --form-label-default-color: var(--color-text-primary);
530
+ --form-label-default-marginBottom: var(--spacing-1);
531
+
532
+ --form-label-large-fontSize: var(--typography-fontSize-lg);
533
+ --form-label-large-fontWeight: var(--typography-fontWeight-medium);
534
+ --form-label-large-lineHeight: var(--typography-lineHeight-normal);
535
+ --form-label-large-letterSpacing: var(--typography-letterSpacing-normal);
536
+ --form-label-large-fontFamily: var(--typography-fontFamily-sans);
537
+ --form-label-large-color: var(--color-text-primary);
538
+ --form-label-large-marginBottom: var(--spacing-2);
539
+
540
+ --form-label-small-fontSize: var(--typography-fontSize-xs);
541
+ --form-label-small-fontWeight: var(--typography-fontWeight-medium);
542
+ --form-label-small-lineHeight: var(--typography-lineHeight-normal);
543
+ --form-label-small-letterSpacing: var(--typography-letterSpacing-wide);
544
+ --form-label-small-fontFamily: var(--typography-fontFamily-sans);
545
+ --form-label-small-color: var(--color-text-primary);
546
+ --form-label-small-marginBottom: var(--spacing-1);
547
+
548
+ --form-label-required-color: var(--color-red-500);
549
+ --form-label-required-marginLeft: var(--spacing-1);
550
+
551
+ --form-input-small-height: var(--dimension-34px);
552
+ --form-input-small-fontSize: var(--typography-fontSize-sm);
553
+ --form-input-small-padding: var(--spacing-8) var(--spacing-12);
554
+ --form-input-small-borderRadius: var(--radius-sm);
555
+
556
+ --form-input-medium-height: var(--dimension-45px);
557
+ --form-input-medium-fontSize: var(--typography-fontSize-base);
558
+ --form-input-medium-padding: var(--spacing-12) var(--spacing-16);
559
+ --form-input-medium-borderRadius: var(--radius-md);
560
+
561
+ --form-input-large-height: var(--dimension-55px);
562
+ --form-input-large-fontSize: var(--typography-fontSize-lg);
563
+ --form-input-large-padding: var(--spacing-16) var(--spacing-20);
564
+ --form-input-large-borderRadius: var(--radius-lg);
565
+
566
+ --form-input-default-backgroundColor: var(--color-surface);
567
+ --form-input-default-borderColor: var(--color-border-default);
568
+ --form-input-default-borderWidth: var(--border-width-1);
569
+ --form-input-default-color: var(--color-text-primary);
570
+ --form-input-default-fontFamily: var(--typography-fontFamily-sans);
571
+ --form-input-default-lineHeight: var(--typography-lineHeight-normal);
572
+
573
+ --form-input-focus-borderColor: var(--color-border-focus);
574
+ --form-input-focus-boxShadow: var(--shadow-focus-outline-blue);
575
+
576
+ --form-input-error-backgroundColor: var(--color-red-50);
577
+ --form-input-error-borderColor: var(--color-red-500);
578
+ --form-input-error-placeholderColor: var(--color-red-400);
579
+
580
+ --form-input-success-backgroundColor: var(--color-green-50);
581
+ --form-input-success-borderColor: var(--color-green-500);
582
+ --form-input-success-placeholderColor: var(--color-green-400);
583
+
584
+ --form-input-disabled-backgroundColor: var(--color-neutral-100);
585
+ --form-input-disabled-borderColor: var(--color-border-default);
586
+ --form-input-disabled-color: var(--color-text-muted);
587
+ --form-input-disabled-placeholderColor: var(--color-neutral-400);
588
+
589
+ --form-help-text-default-fontSize: var(--typography-fontSize-xs);
590
+ --form-help-text-default-fontWeight: var(--typography-fontWeight-normal);
591
+ --form-help-text-default-lineHeight: var(--typography-lineHeight-normal);
592
+ --form-help-text-default-letterSpacing: var(--typography-letterSpacing-normal);
593
+ --form-help-text-default-fontFamily: var(--typography-fontFamily-sans);
594
+ --form-help-text-default-color: var(--color-text-secondary);
595
+ --form-help-text-default-marginTop: var(--spacing-1);
596
+
597
+ --form-help-text-error-color: var(--color-red-600);
598
+ --form-help-text-success-color: var(--color-green-600);
599
+
600
+ --form-fieldSpacing: var(--spacing-6);
601
+ --form-sectionSpacing: var(--spacing-8);
602
+ --form-labelSpacing: var(--spacing-1);
603
+ --form-helpTextSpacing: var(--spacing-1);
604
+
605
+ /* ================================
606
+ COMPONENT TOKENS - BUTTON
607
+ ================================ */
608
+
609
+ --button-size-small-padding-vertical: var(--spacing-2);
610
+ --button-size-small-padding-horizontal: var(--spacing-4);
611
+ --button-size-small-fontSize: var(--typography-fontSize-sm);
612
+ --button-size-small-height: var(--dimension-34px);
613
+ --button-size-small-borderRadius: var(--radius-sm);
614
+ --button-size-small-gap: var(--spacing-1);
615
+
616
+ --button-size-medium-padding-vertical: var(--spacing-12);
617
+ --button-size-medium-padding-horizontal: var(--spacing-20);
618
+ --button-size-medium-fontSize: var(--typography-fontSize-base);
619
+ --button-size-medium-height: var(--dimension-45px);
620
+ --button-size-medium-borderRadius: var(--radius-md);
621
+ --button-size-medium-gap: var(--spacing-2);
622
+
623
+ --button-size-large-padding-vertical: var(--spacing-4);
624
+ --button-size-large-padding-horizontal: var(--spacing-6);
625
+ --button-size-large-fontSize: var(--typography-fontSize-lg);
626
+ --button-size-large-height: var(--dimension-55px);
627
+ --button-size-large-borderRadius: var(--radius-lg);
628
+ --button-size-large-gap: var(--spacing-2);
629
+
630
+ --button-shared-fontFamily: var(--typography-fontFamily-sans);
631
+ --button-shared-fontWeight: var(--typography-fontWeight-medium);
632
+ --button-shared-lineHeight: var(--typography-lineHeight-tight);
633
+ --button-shared-letterSpacing: var(--typography-letterSpacing-normal);
634
+ --button-shared-borderWidth: var(--border-width-1);
635
+ --button-shared-transition-properties: background-color, border-color, color,
636
+ box-shadow;
637
+ --button-shared-transition-duration: var(--transition-duration-normal);
638
+ --button-shared-transition-easing: var(--transition-easing-smooth);
639
+ --button-shared-focus-outline: var(--focus-outline-traditional);
640
+ --button-shared-focus-outlineOffset: var(--focus-outline-offset);
641
+ --button-shared-focus-boxShadow: var(--focus-outline-primary);
642
+ --button-shared-disabled-opacity: 0.6;
643
+ --button-shared-disabled-cursor: not-allowed;
644
+
645
+ --button-primary-background-default: var(--color-blue-500);
646
+ --button-primary-text-default: var(--color-neutral-0);
647
+ --button-primary-border-default: var(--color-blue-500);
648
+ --button-primary-background-hover: var(--color-blue-600);
649
+ --button-primary-border-hover: var(--color-blue-600);
650
+ --button-primary-background-active: var(--color-blue-700);
651
+ --button-primary-border-active: var(--color-blue-700);
652
+ --button-primary-border-focus: var(--color-blue-500);
653
+ --button-primary-background-disabled: var(--color-neutral-300);
654
+ --button-primary-text-disabled: var(--color-neutral-500);
655
+ --button-primary-border-disabled: var(--color-neutral-300);
656
+
657
+ --button-secondary-background-default: var(--color-neutral-950);
658
+ --button-secondary-text-default: var(--color-neutral-0);
659
+ --button-secondary-border-default: var(--color-neutral-950);
660
+ --button-secondary-background-hover: var(--color-neutral-900);
661
+ --button-secondary-text-hover: var(--color-neutral-0);
662
+ --button-secondary-border-hover: var(--color-neutral-900);
663
+ --button-secondary-background-active: var(--color-neutral-800);
664
+ --button-secondary-text-active: var(--color-neutral-0);
665
+ --button-secondary-border-active: var(--color-neutral-800);
666
+ --button-secondary-border-focus: var(--color-neutral-950);
667
+ --button-secondary-background-disabled: var(--color-neutral-300);
668
+ --button-secondary-text-disabled: var(--color-neutral-500);
669
+ --button-secondary-border-disabled: var(--color-neutral-300);
670
+
671
+ --button-tertiaryPrimary-background-default: transparent;
672
+ --button-tertiaryPrimary-text-default: var(--color-blue-500);
673
+ --button-tertiaryPrimary-border-default: var(--color-blue-500);
674
+ --button-tertiaryPrimary-borderWidth: var(--border-width-2);
675
+ --button-tertiaryPrimary-background-hover: var(--color-blue-50);
676
+ --button-tertiaryPrimary-text-hover: var(--color-blue-500);
677
+ --button-tertiaryPrimary-border-hover: var(--color-blue-500);
678
+ --button-tertiaryPrimary-background-active: var(--color-blue-500);
679
+ --button-tertiaryPrimary-text-active: var(--color-neutral-0);
680
+ --button-tertiaryPrimary-border-active: var(--color-blue-500);
681
+ --button-tertiaryPrimary-border-focus: var(--color-blue-500);
682
+ --button-tertiaryPrimary-background-disabled: transparent;
683
+ --button-tertiaryPrimary-text-disabled: var(--color-neutral-400);
684
+ --button-tertiaryPrimary-border-disabled: var(--color-neutral-300);
685
+
686
+ --button-tertiarySecondary-background-default: transparent;
687
+ --button-tertiarySecondary-text-default: var(--color-neutral-900);
688
+ --button-tertiarySecondary-border-default: var(--color-neutral-900);
689
+ --button-tertiarySecondary-borderWidth: var(--border-width-2);
690
+ --button-tertiarySecondary-background-hover: var(--color-neutral-100);
691
+ --button-tertiarySecondary-text-hover: var(--color-neutral-900);
692
+ --button-tertiarySecondary-border-hover: var(--color-neutral-900);
693
+ --button-tertiarySecondary-background-active: var(--color-neutral-900);
694
+ --button-tertiarySecondary-text-active: var(--color-neutral-0);
695
+ --button-tertiarySecondary-border-active: var(--color-neutral-900);
696
+ --button-tertiarySecondary-border-focus: var(--color-neutral-900);
697
+ --button-tertiarySecondary-background-disabled: transparent;
698
+ --button-tertiarySecondary-text-disabled: var(--color-neutral-400);
699
+ --button-tertiarySecondary-border-disabled: var(--color-neutral-300);
700
+
701
+ --button-cta-background-default: var(--color-red-500);
702
+ --button-cta-text-default: var(--color-neutral-0);
703
+ --button-cta-border-default: var(--color-red-500);
704
+ --button-cta-background-hover: var(--color-red-600);
705
+ --button-cta-border-hover: var(--color-red-600);
706
+ --button-cta-background-active: var(--color-red-700);
707
+ --button-cta-border-active: var(--color-red-700);
708
+ --button-cta-border-focus: var(--color-red-500);
709
+ --button-cta-background-disabled: var(--color-neutral-300);
710
+ --button-cta-text-disabled: var(--color-neutral-500);
711
+ --button-cta-border-disabled: var(--color-neutral-300);
712
+
713
+ --button-empty-background-default: var(--color-neutral-200);
714
+ --button-empty-text-default: transparent;
715
+ --button-empty-border-default: var(--color-neutral-200);
716
+
717
+ --button-disabled-backgroundColor: var(--color-neutral-100);
718
+ --button-disabled-borderColor: var(--color-neutral-300);
719
+ --button-disabled-color: var(--color-neutral-500);
720
+
721
+ --button-focus-boxShadow: var(--shadow-focus-outline-blue);
722
+
723
+ /* Deprecated button size aliases */
724
+ --button-small-height: var(--button-size-small-height);
725
+ --button-small-fontSize: var(--button-size-small-fontSize);
726
+ --button-small-padding: var(--spacing-8) var(--spacing-12);
727
+ --button-small-borderRadius: var(--button-size-small-borderRadius);
728
+
729
+ --button-medium-height: var(--button-size-medium-height);
730
+ --button-medium-fontSize: var(--button-size-medium-fontSize);
731
+ --button-medium-padding: var(--spacing-12) var(--spacing-16);
732
+ --button-medium-borderRadius: var(--button-size-medium-borderRadius);
733
+
734
+ --button-large-height: var(--button-size-large-height);
735
+ --button-large-fontSize: var(--button-size-large-fontSize);
736
+ --button-large-padding: var(--spacing-16) var(--spacing-20);
737
+ --button-large-borderRadius: var(--button-size-large-borderRadius);
738
+
739
+ --button-default-backgroundColor: var(--color-surface);
740
+ --button-default-borderColor: var(--color-border-default);
741
+ --button-default-borderWidth: var(--border-width-1);
742
+ --button-default-color: var(--color-text-primary);
743
+ --button-default-fontFamily: var(--typography-fontFamily-sans);
744
+ --button-default-fontWeight: var(--typography-fontWeight-medium);
745
+ --button-default-lineHeight: var(--typography-lineHeight-normal);
746
+
747
+ /* ================================
748
+ COMPONENT TOKENS - ANNOTATION
749
+ ================================ */
750
+
751
+ --footnote-reference-fontSize: 0.75em;
752
+ --footnote-reference-fontWeight: var(--typography-fontWeight-normal);
753
+ --footnote-reference-lineHeight: 1;
754
+ --footnote-reference-verticalAlign: super;
755
+ --footnote-reference-color: inherit;
756
+ --footnote-reference-marginLeft: 0.1em;
757
+ --footnote-reference-marginRight: 0.2em;
758
+
759
+ --citation-reference-fontSize: inherit;
760
+ --citation-reference-fontWeight: var(--typography-fontWeight-normal);
761
+ --citation-reference-lineHeight: inherit;
762
+ --citation-reference-color: var(--color-text-link);
763
+ --citation-reference-textDecoration: underline;
764
+ --citation-reference-hover-color: var(--color-text-link-hover);
765
+ --citation-reference-hover-textDecoration: none;
766
+
767
+ --math-superscript-fontSize: 0.75em;
768
+ --math-superscript-fontWeight: var(--typography-fontWeight-normal);
769
+ --math-superscript-lineHeight: 1;
770
+ --math-superscript-verticalAlign: super;
771
+ --math-superscript-marginLeft: 0.05em;
772
+
773
+ --math-subscript-fontSize: 0.75em;
774
+ --math-subscript-fontWeight: var(--typography-fontWeight-normal);
775
+ --math-subscript-lineHeight: 1;
776
+ --math-subscript-verticalAlign: sub;
777
+ --math-subscript-marginLeft: 0.05em;
778
+
779
+ /* ================================
780
+ COMPONENT TOKENS - ICON
781
+ ================================ */
782
+
783
+ --icon-xs-size: var(--dimension-12px);
784
+ --icon-sm-size: var(--dimension-16px);
785
+ --icon-md-size: var(--dimension-20px);
786
+ --icon-lg-size: var(--dimension-24px);
787
+ --icon-xl-size: var(--dimension-32px);
788
+ --icon-2xl-size: var(--dimension-48px);
789
+ --icon-3xl-size: var(--dimension-64px);
790
+
791
+ --icon-button-small-size: var(--dimension-16px);
792
+ --icon-button-medium-size: var(--dimension-20px);
793
+ --icon-button-large-size: var(--dimension-24px);
794
+
795
+ --icon-form-small-size: var(--dimension-16px);
796
+ --icon-form-medium-size: var(--dimension-20px);
797
+ --icon-form-large-size: var(--dimension-24px);
798
+
799
+ --icon-default-color: var(--color-text-secondary);
800
+ --icon-hover-color: var(--color-neutral-700);
801
+ --icon-active-color: var(--color-neutral-800);
802
+ --icon-disabled-color: var(--color-neutral-400);
803
+
804
+ --icon-primary-color: var(--color-blue-500);
805
+ --icon-primary-hover-color: var(--color-blue-600);
806
+ --icon-primary-active-color: var(--color-blue-700);
807
+
808
+ --icon-success-color: var(--color-green-500);
809
+ --icon-warning-color: var(--color-yellow-500);
810
+ --icon-error-color: var(--color-red-500);
811
+ `;