@gainsight-hub/design-tokens 0.1.0
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.
- package/README.md +305 -0
- package/dist/applyTheme.d.ts +14 -0
- package/dist/applyTheme.js +66 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +3 -0
- package/dist/styles.css +457 -0
- package/dist/tailwind.preset.cjs +289 -0
- package/dist/tailwind.preset.mjs +289 -0
- package/dist/theme-manifest.json +212 -0
- package/dist/themes/antd.css +48 -0
- package/dist/themes/antd.css.d.ts +2 -0
- package/dist/themes/dark.css +47 -0
- package/dist/themes/dark.css.d.ts +2 -0
- package/dist/themes/legacy.css +165 -0
- package/dist/themes/legacy.css.d.ts +2 -0
- package/dist/themes/mui.css +48 -0
- package/dist/themes/mui.css.d.ts +2 -0
- package/dist/themes/spectrum.css +48 -0
- package/dist/themes/spectrum.css.d.ts +2 -0
- package/dist/themes.css +8 -0
- package/dist/token-catalog.json +5107 -0
- package/dist/tokens.d.ts +525 -0
- package/dist/tokens.js +371 -0
- package/dist/tokens.json +617 -0
- package/dist/tokens.scss +360 -0
- package/package.json +55 -0
package/dist/styles.css
ADDED
|
@@ -0,0 +1,457 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Do not edit directly, this file was auto-generated.
|
|
3
|
+
*/
|
|
4
|
+
|
|
5
|
+
:root {
|
|
6
|
+
|
|
7
|
+
/* ───────────────────────────────────────────────────────────────────────── */
|
|
8
|
+
/**
|
|
9
|
+
* THEME VARS
|
|
10
|
+
* Overrideable primitive roots — one set per theme.
|
|
11
|
+
* Override via [data-theme="..."] to swap the full primitive scale.
|
|
12
|
+
*/
|
|
13
|
+
/* ───────────────────────────────────────────────────────────────────────── */
|
|
14
|
+
|
|
15
|
+
/* Brand scale */
|
|
16
|
+
--theme-brand-100: #E9F2FF;
|
|
17
|
+
--theme-brand-200: #CCE0FF;
|
|
18
|
+
--theme-brand-300: #85B8FF;
|
|
19
|
+
--theme-brand-400: #579DFF;
|
|
20
|
+
--theme-brand-500: #388BFF;
|
|
21
|
+
--theme-brand-600: #1D7AFC;
|
|
22
|
+
--theme-brand-700: #0C66E4;
|
|
23
|
+
--theme-brand-800: #0055CC;
|
|
24
|
+
--theme-brand-900: #09326C;
|
|
25
|
+
--theme-brand-1000: #1C2B41;
|
|
26
|
+
|
|
27
|
+
/* Neutral scale */
|
|
28
|
+
--theme-neutral-0: #FFFFFF;
|
|
29
|
+
--theme-neutral-100: #FAFAFA;
|
|
30
|
+
--theme-neutral-200: #F4F5F6;
|
|
31
|
+
--theme-neutral-300: #DEDFE2;
|
|
32
|
+
--theme-neutral-400: #B8BBC2;
|
|
33
|
+
--theme-neutral-500: #8D919B;
|
|
34
|
+
--theme-neutral-600: #7B808E;
|
|
35
|
+
--theme-neutral-700: #696E7C;
|
|
36
|
+
--theme-neutral-800: #4F5663;
|
|
37
|
+
--theme-neutral-900: #3B4254;
|
|
38
|
+
--theme-neutral-1000: #2B3346;
|
|
39
|
+
|
|
40
|
+
/* ───────────────────────────────────────────────────────────────────────── */
|
|
41
|
+
/**
|
|
42
|
+
* PRIMITIVE TOKENS
|
|
43
|
+
* Raw scale values — not intended for direct use in application code.
|
|
44
|
+
* Reference semantic tokens instead.
|
|
45
|
+
*/
|
|
46
|
+
/* ───────────────────────────────────────────────────────────────────────── */
|
|
47
|
+
|
|
48
|
+
/* Color — Brand */
|
|
49
|
+
--color-brand-100: var(--theme-brand-100, #E9F2FF);
|
|
50
|
+
--color-brand-200: var(--theme-brand-200, #CCE0FF);
|
|
51
|
+
--color-brand-300: var(--theme-brand-300, #85B8FF);
|
|
52
|
+
--color-brand-400: var(--theme-brand-400, #579DFF);
|
|
53
|
+
--color-brand-500: var(--theme-brand-500, #388BFF);
|
|
54
|
+
--color-brand-600: var(--theme-brand-600, #1D7AFC);
|
|
55
|
+
--color-brand-700: var(--theme-brand-700, #0C66E4);
|
|
56
|
+
--color-brand-800: var(--theme-brand-800, #0055CC);
|
|
57
|
+
--color-brand-900: var(--theme-brand-900, #09326C);
|
|
58
|
+
--color-brand-1000: var(--theme-brand-1000, #1C2B41);
|
|
59
|
+
|
|
60
|
+
/* Color — Neutral */
|
|
61
|
+
--color-neutral-a100: rgba(43, 51, 70, 0.04);
|
|
62
|
+
--color-neutral-a200: rgba(43, 51, 70, 0.08);
|
|
63
|
+
--color-neutral-a300: rgba(43, 51, 70, 0.16);
|
|
64
|
+
--color-neutral-a400: rgba(43, 51, 70, 0.32);
|
|
65
|
+
--color-neutral-a500: rgba(43, 51, 70, 0.48);
|
|
66
|
+
--color-neutral-0: var(--theme-neutral-0, #FFFFFF);
|
|
67
|
+
--color-neutral-100: var(--theme-neutral-100, #FAFAFA);
|
|
68
|
+
--color-neutral-200: var(--theme-neutral-200, #F4F5F6);
|
|
69
|
+
--color-neutral-300: var(--theme-neutral-300, #DEDFE2);
|
|
70
|
+
--color-neutral-400: var(--theme-neutral-400, #B8BBC2);
|
|
71
|
+
--color-neutral-500: var(--theme-neutral-500, #8D919B);
|
|
72
|
+
--color-neutral-600: var(--theme-neutral-600, #7B808E);
|
|
73
|
+
--color-neutral-700: var(--theme-neutral-700, #696E7C);
|
|
74
|
+
--color-neutral-800: var(--theme-neutral-800, #4F5663);
|
|
75
|
+
--color-neutral-900: var(--theme-neutral-900, #3B4254);
|
|
76
|
+
--color-neutral-1000: var(--theme-neutral-1000, #2B3346);
|
|
77
|
+
|
|
78
|
+
/* Color — Blue */
|
|
79
|
+
--color-blue-100: #e9f2ff;
|
|
80
|
+
--color-blue-200: #cce0ff;
|
|
81
|
+
--color-blue-300: #85b8ff;
|
|
82
|
+
--color-blue-400: #579dff;
|
|
83
|
+
--color-blue-500: #388bff;
|
|
84
|
+
--color-blue-600: #1d7afc;
|
|
85
|
+
--color-blue-700: #0c66e4;
|
|
86
|
+
--color-blue-800: #0055cc;
|
|
87
|
+
--color-blue-900: #09326c;
|
|
88
|
+
--color-blue-1000: #1c2b41;
|
|
89
|
+
|
|
90
|
+
/* Color — Green */
|
|
91
|
+
--color-green-100: #dcffeb;
|
|
92
|
+
--color-green-200: #baf3d2;
|
|
93
|
+
--color-green-300: #7ee2a6;
|
|
94
|
+
--color-green-400: #4bce7f;
|
|
95
|
+
--color-green-500: #2abb62;
|
|
96
|
+
--color-green-600: #22a052;
|
|
97
|
+
--color-green-700: #1f8444;
|
|
98
|
+
--color-green-800: #216e3d;
|
|
99
|
+
--color-green-900: #164b29;
|
|
100
|
+
--color-green-1000: #1c3324;
|
|
101
|
+
|
|
102
|
+
/* Color — Red */
|
|
103
|
+
--color-red-100: #ffeceb;
|
|
104
|
+
--color-red-200: #ffd3d2;
|
|
105
|
+
--color-red-300: #fd9391;
|
|
106
|
+
--color-red-400: #f86a68;
|
|
107
|
+
--color-red-500: #f15050;
|
|
108
|
+
--color-red-600: #e23d3d;
|
|
109
|
+
--color-red-700: #c92c2f;
|
|
110
|
+
--color-red-800: #ae2426;
|
|
111
|
+
--color-red-900: #5d1a1c;
|
|
112
|
+
--color-red-1000: #421f21;
|
|
113
|
+
|
|
114
|
+
/* Color — Yellow */
|
|
115
|
+
--color-yellow-100: #fff7d6;
|
|
116
|
+
--color-yellow-200: #f8e6a0;
|
|
117
|
+
--color-yellow-300: #f5cd47;
|
|
118
|
+
--color-yellow-400: #e2b203;
|
|
119
|
+
--color-yellow-500: #cf9f02;
|
|
120
|
+
--color-yellow-600: #b38600;
|
|
121
|
+
--color-yellow-700: #946f00;
|
|
122
|
+
--color-yellow-800: #7f5f01;
|
|
123
|
+
--color-yellow-900: #533f04;
|
|
124
|
+
--color-yellow-1000: #332e1b;
|
|
125
|
+
|
|
126
|
+
/* Typography */
|
|
127
|
+
--font-family-sans: Roboto;
|
|
128
|
+
--font-family-mono: Roboto Mono;
|
|
129
|
+
--font-weight-regular: 400;
|
|
130
|
+
--font-weight-medium: 500;
|
|
131
|
+
--font-weight-bold: 700;
|
|
132
|
+
--font-size-100: 0.75rem;
|
|
133
|
+
--font-size-200: 0.875rem;
|
|
134
|
+
--font-size-300: 1rem;
|
|
135
|
+
--font-size-400: 1.25rem;
|
|
136
|
+
--font-size-500: 1.5rem;
|
|
137
|
+
--font-size-600: 1.75rem;
|
|
138
|
+
--font-size-700: 2rem;
|
|
139
|
+
--line-height-ratio-tight: 1.25;
|
|
140
|
+
--line-height-ratio-relaxed: 1.5;
|
|
141
|
+
--line-height-grid-100: 1rem;
|
|
142
|
+
--line-height-grid-200: 1.25rem;
|
|
143
|
+
--line-height-grid-300: 1.5rem;
|
|
144
|
+
--line-height-grid-400: 1.75rem;
|
|
145
|
+
--line-height-grid-500: 2rem;
|
|
146
|
+
--line-height-grid-600: 2.25rem;
|
|
147
|
+
--line-height-grid-700: 2.5rem;
|
|
148
|
+
|
|
149
|
+
/* Spacing */
|
|
150
|
+
--space-0: 0px;
|
|
151
|
+
--space-100: 8px;
|
|
152
|
+
--space-125: 12px;
|
|
153
|
+
--space-200: 16px;
|
|
154
|
+
--space-250: 20px;
|
|
155
|
+
--space-300: 24px;
|
|
156
|
+
--space-400: 32px;
|
|
157
|
+
--space-500: 40px;
|
|
158
|
+
--space-600: 48px;
|
|
159
|
+
--space-800: 64px;
|
|
160
|
+
--space-1000: 80px;
|
|
161
|
+
--space-025: 2px;
|
|
162
|
+
--space-050: 4px;
|
|
163
|
+
--space-075: 6px;
|
|
164
|
+
|
|
165
|
+
/* Shape */
|
|
166
|
+
--border-width-100: 1px;
|
|
167
|
+
--border-width-200: 2px;
|
|
168
|
+
--radius-100: 8px;
|
|
169
|
+
--radius-150: 12px;
|
|
170
|
+
--radius-200: 16px;
|
|
171
|
+
--radius-025: 2px;
|
|
172
|
+
--radius-050: 4px;
|
|
173
|
+
--radius-full: 9999px;
|
|
174
|
+
|
|
175
|
+
/* Shadow */
|
|
176
|
+
--shadow-100: 0px 2px 4px -2px rgba(0, 0, 0, 0.1), 0px 4px 6px -1px rgba(0, 0, 0, 0.1);
|
|
177
|
+
--shadow-200: 0px 4px 6px -4px rgba(0, 0, 0, 0.1), 0px 10px 15px -3px rgba(0, 0, 0, 0.1);
|
|
178
|
+
--shadow-300: 0px 8px 10px -6px rgba(0, 0, 0, 0.1), 0px 20px 25px -5px rgba(0, 0, 0, 0.1);
|
|
179
|
+
|
|
180
|
+
/* ───────────────────────────────────────────────────────────────────────── */
|
|
181
|
+
/**
|
|
182
|
+
* SEMANTIC TOKENS
|
|
183
|
+
* Purposeful, context-aware aliases — use these in application code.
|
|
184
|
+
* Each token expresses intent (action, surface, content) not raw scale.
|
|
185
|
+
*/
|
|
186
|
+
/* ───────────────────────────────────────────────────────────────────────── */
|
|
187
|
+
|
|
188
|
+
/* Color — Action */
|
|
189
|
+
--color-action-destructive-default: var(--color-red-700, #c92c2f); /** color used for actions that perform irreversible or potentially harmful operations */
|
|
190
|
+
--color-action-destructive-hover: var(--color-red-800, #ae2426); /** color used when a destructive action is hovered */
|
|
191
|
+
--color-action-destructive-pressed: var(--color-red-900, #5d1a1c); /** color used when a destructive action is actively pressed */
|
|
192
|
+
--color-action-primary-default: var(--color-brand-700, #0C66E4); /** default color used for the most prominent call-to-action in the interface */
|
|
193
|
+
--color-action-primary-hover: var(--color-brand-800, #0055CC); /** color used when a primary action is hovered */
|
|
194
|
+
--color-action-primary-pressed: var(--color-brand-900, #09326C); /** color used when a primary action is actively pressed */
|
|
195
|
+
--color-action-neutral-default: var(--color-neutral-0, #FFFFFF); /** color used for less prominent actions that support the primary action */
|
|
196
|
+
--color-action-neutral-hover: var(--color-neutral-100, #FAFAFA); /** color used when a secondary action is hovered */
|
|
197
|
+
--color-action-neutral-pressed: var(--color-neutral-200, #F4F5F6); /** color used when a secondary action is actively pressed */
|
|
198
|
+
|
|
199
|
+
/* Color — Surface */
|
|
200
|
+
--color-surface-page: var(--color-neutral-100, #FAFAFA); /** application canvas background used behind all UI surfaces */
|
|
201
|
+
--color-surface-default: var(--color-neutral-0, #FFFFFF); /** default container surface for standard UI sections (cards, panels, content areas) */
|
|
202
|
+
--color-surface-muted: var(--color-neutral-200, #F4F5F6); /** sub-surface used inside containers to visually group secondary areas (e.g., comment/reply bubbles) */
|
|
203
|
+
--color-surface-disabled: var(--color-neutral-200, #F4F5F6); /** background of disabled interactive elements such as inputs, buttons, or selection controls */
|
|
204
|
+
--color-surface-overlay: var(--color-neutral-0, #FFFFFF); /** elevated surface for overlays and floating layers (modals, dropdowns, popovers). */
|
|
205
|
+
--color-surface-inverse: var(--color-neutral-1000, #2B3346); /** color used for inverse surfaces such as tooltips and high-contrast floating UI */
|
|
206
|
+
|
|
207
|
+
/* Color — Content */
|
|
208
|
+
--color-content-default: var(--color-neutral-1000, #2B3346); /** default color used for primary body text and high-emphasis content */
|
|
209
|
+
--color-content-subtle: var(--color-neutral-800, #4F5663); /** color used for secondary text such as helper text, metadata, or supporting information */
|
|
210
|
+
--color-content-subtlest: var(--color-neutral-700, #696E7C); /** color used for low-emphasis text such as placeholders or less important UI copy */
|
|
211
|
+
--color-content-heading-default: var(--color-neutral-1000, #2B3346); /** default color used for section and component headings */
|
|
212
|
+
--color-content-heading-hero: var(--color-neutral-0, #FFFFFF); /** color used for prominent page-level headings displayed on hero or banner areas */
|
|
213
|
+
--color-content-inverse: var(--color-neutral-0, #FFFFFF); /** color used for text displayed on high-contrast or brand-colored backgrounds */
|
|
214
|
+
--color-content-disabled: var(--color-neutral-400, #B8BBC2); /** color used for text on disabled elements or unavailable content */
|
|
215
|
+
|
|
216
|
+
/* Color — Line */
|
|
217
|
+
--color-line-default: var(--color-neutral-300, #DEDFE2); /** default border and divider color used for standard UI boundaries, separators, and component outlines */
|
|
218
|
+
--color-line-disabled: var(--color-neutral-300, #DEDFE2); /** border and divider color used for disabled components or non-interactive states where visual emphasis is reduced */
|
|
219
|
+
|
|
220
|
+
/* Color — Status */
|
|
221
|
+
--color-status-success-bold: var(--color-green-700, #1f8444); /** high-emphasis color used to communicate successful outcomes or confirmations */
|
|
222
|
+
--color-status-information-bold: var(--color-blue-700, #0c66e4); /** high-emphasis color used to indicate errors or critical issues */
|
|
223
|
+
--color-status-danger-bold: var(--color-red-700, #c92c2f); /** high-emphasis color used for neutral informational messages */
|
|
224
|
+
|
|
225
|
+
/* Color — Link */
|
|
226
|
+
--color-link-default: var(--color-brand-700, #0C66E4); /** default color used for interactive text links */
|
|
227
|
+
--color-link-hover: var(--color-brand-800, #0055CC); /** color used for interactive text links on hover */
|
|
228
|
+
|
|
229
|
+
/* Color — Focus */
|
|
230
|
+
--color-focus-ring: var(--color-blue-500, #388bff); /** default color used for focus rings on interactive elements */
|
|
231
|
+
|
|
232
|
+
/* Color — Overlay */
|
|
233
|
+
--color-overlay-backdrop: var(--color-neutral-a500, rgba(43, 51, 70, 0.48)); /** semi-transparent color displayed behind modals to obscure background content */
|
|
234
|
+
--color-overlay-interactive-hover: var(--color-neutral-a100, rgba(43, 51, 70, 0.04)); /** overlay color applied to interactive elements to indicate a hover state */
|
|
235
|
+
--color-overlay-interactive-pressed: var(--color-neutral-a200, rgba(43, 51, 70, 0.08)); /** overlay color applied to interactive elements to indicate an active or pressed state */
|
|
236
|
+
|
|
237
|
+
/* Color — Skeleton */
|
|
238
|
+
--color-skeleton-subtle: var(--color-neutral-a100, rgba(43, 51, 70, 0.04)); /** highlight color used in animated skeleton states to simulate loading progress */
|
|
239
|
+
--color-skeleton-default: var(--color-neutral-200, #F4F5F6); /** base color used for loading placeholders while content is being fetched */
|
|
240
|
+
|
|
241
|
+
/* Color — Community */
|
|
242
|
+
--color-community-answered: var(--color-green-700, #1f8444); /** color used to indicate that a question or thread has received an accepted answer */
|
|
243
|
+
--color-community-unanswered: var(--color-neutral-700, #696E7C); /** color used to indicate that a question or thread has not yet received a response */
|
|
244
|
+
--color-community-highlighted: var(--color-brand-700, #0C66E4); /** color used to highlight content that is featured or editorially promoted */
|
|
245
|
+
--color-community-pinned: var(--color-brand-700, #0C66E4); /** color used to indicate content that is pinned and prioritized in listings */
|
|
246
|
+
|
|
247
|
+
/* Typography */
|
|
248
|
+
--text-hero-font-family: var(--font-family-sans, Roboto);
|
|
249
|
+
--text-hero-font-weight: var(--font-weight-bold, 700);
|
|
250
|
+
--text-hero-font-size: var(--font-size-700, 2rem);
|
|
251
|
+
--text-hero-line-height: var(--line-height-ratio-tight, 1.25);
|
|
252
|
+
--text-heading-small-font-family: var(--font-family-sans, Roboto);
|
|
253
|
+
--text-heading-small-font-weight: var(--font-weight-medium, 500);
|
|
254
|
+
--text-heading-small-font-size: var(--font-size-400, 1.25rem);
|
|
255
|
+
--text-heading-small-line-height: var(--line-height-ratio-tight, 1.25);
|
|
256
|
+
--text-heading-medium-font-family: var(--font-family-sans, Roboto);
|
|
257
|
+
--text-heading-medium-font-weight: var(--font-weight-medium, 500);
|
|
258
|
+
--text-heading-medium-font-size: var(--font-size-500, 1.5rem);
|
|
259
|
+
--text-heading-medium-line-height: var(--line-height-ratio-tight, 1.25);
|
|
260
|
+
--text-heading-large-font-family: var(--font-family-sans, Roboto);
|
|
261
|
+
--text-heading-large-font-weight: var(--font-weight-bold, 700);
|
|
262
|
+
--text-heading-large-font-size: var(--font-size-600, 1.75rem);
|
|
263
|
+
--text-heading-large-line-height: var(--line-height-ratio-tight, 1.25);
|
|
264
|
+
--text-heading-xlarge-font-family: var(--font-family-sans, Roboto);
|
|
265
|
+
--text-heading-xlarge-font-weight: var(--font-weight-bold, 700);
|
|
266
|
+
--text-heading-xlarge-font-size: var(--font-size-700, 2rem);
|
|
267
|
+
--text-heading-xlarge-line-height: var(--line-height-ratio-tight, 1.25);
|
|
268
|
+
--text-body-small-font-family: var(--font-family-sans, Roboto);
|
|
269
|
+
--text-body-small-font-weight: var(--font-weight-regular, 400);
|
|
270
|
+
--text-body-small-font-size: var(--font-size-200, 0.875rem);
|
|
271
|
+
--text-body-small-line-height: var(--line-height-ratio-relaxed, 1.5);
|
|
272
|
+
--text-body-medium-font-family: var(--font-family-sans, Roboto);
|
|
273
|
+
--text-body-medium-font-weight: var(--font-weight-regular, 400);
|
|
274
|
+
--text-body-medium-font-size: var(--font-size-300, 1rem);
|
|
275
|
+
--text-body-medium-line-height: var(--line-height-ratio-relaxed, 1.5);
|
|
276
|
+
--text-body-large-font-family: var(--font-family-sans, Roboto);
|
|
277
|
+
--text-body-large-font-weight: var(--font-weight-regular, 400);
|
|
278
|
+
--text-body-large-font-size: var(--font-size-400, 1.25rem);
|
|
279
|
+
--text-body-large-line-height: var(--line-height-ratio-relaxed, 1.5);
|
|
280
|
+
--text-navigation-font-family: var(--font-family-sans, Roboto);
|
|
281
|
+
--text-navigation-font-weight: var(--font-weight-regular, 400);
|
|
282
|
+
--text-navigation-font-size: var(--font-size-200, 0.875rem);
|
|
283
|
+
--text-navigation-line-height: var(--line-height-grid-200, 1.25rem);
|
|
284
|
+
--text-menu-font-family: var(--font-family-sans, Roboto);
|
|
285
|
+
--text-menu-font-weight: var(--font-weight-regular, 400);
|
|
286
|
+
--text-menu-font-size: var(--font-size-200, 0.875rem);
|
|
287
|
+
--text-menu-line-height: var(--line-height-grid-200, 1.25rem);
|
|
288
|
+
--text-button-font-family: var(--font-family-sans, Roboto);
|
|
289
|
+
--text-button-font-weight: var(--font-weight-medium, 500);
|
|
290
|
+
--text-button-font-size: var(--font-size-200, 0.875rem);
|
|
291
|
+
--text-button-line-height: var(--line-height-grid-200, 1.25rem);
|
|
292
|
+
--text-label-small-font-family: var(--font-family-sans, Roboto);
|
|
293
|
+
--text-label-small-font-weight: var(--font-weight-medium, 500);
|
|
294
|
+
--text-label-small-font-size: var(--font-size-200, 0.875rem);
|
|
295
|
+
--text-label-small-line-height: var(--line-height-grid-200, 1.25rem);
|
|
296
|
+
--text-label-medium-font-family: var(--font-family-sans, Roboto);
|
|
297
|
+
--text-label-medium-font-weight: var(--font-weight-medium, 500);
|
|
298
|
+
--text-label-medium-font-size: var(--font-size-300, 1rem);
|
|
299
|
+
--text-label-medium-line-height: var(--line-height-grid-300, 1.5rem);
|
|
300
|
+
--text-caption-font-family: var(--font-family-sans, Roboto);
|
|
301
|
+
--text-caption-font-weight: var(--font-weight-regular, 400);
|
|
302
|
+
--text-caption-font-size: var(--font-size-100, 0.75rem);
|
|
303
|
+
--text-caption-line-height: var(--line-height-grid-100, 1rem);
|
|
304
|
+
--text-code-font-family: var(--font-family-mono, Roboto Mono);
|
|
305
|
+
--text-code-font-weight: var(--font-weight-regular, 400);
|
|
306
|
+
--text-code-font-size: var(--font-size-300, 1rem);
|
|
307
|
+
--text-code-line-height: var(--line-height-ratio-relaxed, 1.5);
|
|
308
|
+
|
|
309
|
+
/* Spacing */
|
|
310
|
+
--space-layout-gutter: var(--space-125, 12px); /** space used as the default gap between columns or layout elements */
|
|
311
|
+
|
|
312
|
+
/* Elevation */
|
|
313
|
+
--elevation-1: var(--shadow-100, 0px 2px 4px -2px rgba(0, 0, 0, 0.1), 0px 4px 6px -1px rgba(0, 0, 0, 0.1)); /** low elevation used for raised surfaces above the base layout */
|
|
314
|
+
--elevation-2: var(--shadow-200, 0px 4px 6px -4px rgba(0, 0, 0, 0.1), 0px 10px 15px -3px rgba(0, 0, 0, 0.1)); /** medium elevation used for floating surfaces above regular content */
|
|
315
|
+
--elevation-3: var(--shadow-300, 0px 8px 10px -6px rgba(0, 0, 0, 0.1), 0px 20px 25px -5px rgba(0, 0, 0, 0.1)); /** high elevation used for top-level surfaces above other floating elements */
|
|
316
|
+
|
|
317
|
+
/* ───────────────────────────────────────────────────────────────────────── */
|
|
318
|
+
/**
|
|
319
|
+
* COMPONENT TOKENS
|
|
320
|
+
* Component-scoped overrides — consume only inside the named component.
|
|
321
|
+
* Fall back to semantic tokens; override here for component-specific behaviour.
|
|
322
|
+
*/
|
|
323
|
+
/* ───────────────────────────────────────────────────────────────────────── */
|
|
324
|
+
|
|
325
|
+
/* Button */
|
|
326
|
+
--button-text-transform: none; /** Text transform applied to button labels (e.g., none/uppercase). */
|
|
327
|
+
--button-primary-border-default: rgba(0, 0, 0, 0); /** Primary button border color in default state (no visible border). */
|
|
328
|
+
--button-primary-border-hover: rgba(0, 0, 0, 0); /** Primary button border color on hover (no visible border). */
|
|
329
|
+
--button-primary-border-pressed: rgba(0, 0, 0, 0); /** Primary button border color on press (no visible border). */
|
|
330
|
+
--button-primary-shadow: none; /** Primary button shadow (none). */
|
|
331
|
+
--button-secondary-shadow: none; /** Secondary button shadow (none). */
|
|
332
|
+
--button-destructive-border-default: rgba(0, 0, 0, 0); /** Destructive button border color in default state (no visible border). */
|
|
333
|
+
--button-destructive-border-hover: rgba(0, 0, 0, 0); /** Destructive button border color on hover (no visible border). */
|
|
334
|
+
--button-destructive-border-pressed: rgba(0, 0, 0, 0); /** Destructive button border color on press (no visible border). */
|
|
335
|
+
--button-destructive-shadow: none; /** Destructive button shadow (none). */
|
|
336
|
+
--button-vote-shadow-default: none; /** Vote button shadow in default state (none). */
|
|
337
|
+
--button-vote-shadow-hover: none; /** Vote button shadow on hover (none). */
|
|
338
|
+
--button-vote-shadow-pressed: none; /** Vote button shadow on press (none). */
|
|
339
|
+
--button-vote-selected-border-default: rgba(0, 0, 0, 0); /** Vote button border when selected (default) (no visible border). */
|
|
340
|
+
--button-vote-selected-border-hover: rgba(0, 0, 0, 0); /** Vote button border when selected (hovered) (no visible border). */
|
|
341
|
+
--button-vote-selected-border-pressed: rgba(0, 0, 0, 0); /** Vote button border when selected (pressed) (no visible border). */
|
|
342
|
+
--button-vote-selected-shadow-default: none; /** Vote button shadow when selected (default) (none). */
|
|
343
|
+
--button-vote-selected-shadow-hover: none; /** Vote button shadow when selected (hovered) (none). */
|
|
344
|
+
--button-vote-selected-shadow-pressed: none; /** Vote button shadow when selected (pressed) (none). */
|
|
345
|
+
--button-radius: var(--radius-100, 8px); /** Border radius used for all button variants. */
|
|
346
|
+
--button-border-width: var(--border-width-100, 1px); /** Border width used for all button variants. */
|
|
347
|
+
--button-font-weight: var(--text-button-font-weight, 500); /** Font weight used for button labels across all variants. */
|
|
348
|
+
--button-destructive-background-default: var(--color-action-destructive-default, #c92c2f); /** Destructive button background in default state. */
|
|
349
|
+
--button-destructive-background-hover: color-mix(in oklch, var(--button-destructive-background-default) 85%, black); /** Destructive button background on hover. */
|
|
350
|
+
--button-destructive-background-pressed: color-mix(in oklch, var(--button-destructive-background-default) 70%, black); /** Destructive button background on press. */
|
|
351
|
+
--button-primary-background-default: var(--color-action-primary-default, #0C66E4); /** Primary button background in default state. */
|
|
352
|
+
--button-primary-background-hover: color-mix(in oklch, var(--button-primary-background-default) 85%, black); /** Primary button background on hover. */
|
|
353
|
+
--button-primary-background-pressed: color-mix(in oklch, var(--button-primary-background-default) 70%, black); /** Primary button background on press. */
|
|
354
|
+
--button-primary-content-default: var(--color-content-inverse, #FFFFFF); /** Primary button label/icon color in default state. */
|
|
355
|
+
--button-primary-content-hover: var(--color-content-inverse, #FFFFFF); /** Primary button label/icon color on hover. */
|
|
356
|
+
--button-primary-content-pressed: var(--color-content-inverse, #FFFFFF); /** Primary button label/icon color on press. */
|
|
357
|
+
--button-secondary-background-default: var(--color-action-neutral-default, #FFFFFF); /** Secondary button background in default state. */
|
|
358
|
+
--button-secondary-background-hover: color-mix(in oklch, var(--button-secondary-background-default) 85%, black); /** Secondary button background on hover. */
|
|
359
|
+
--button-secondary-background-pressed: color-mix(in oklch, var(--button-secondary-background-default) 70%, black); /** Secondary button background on press. */
|
|
360
|
+
--button-secondary-content-default: var(--color-content-default, #2B3346); /** Secondary button label/icon color in default state. */
|
|
361
|
+
--button-secondary-content-hover: var(--color-content-default, #2B3346); /** Secondary button label/icon color on hover. */
|
|
362
|
+
--button-secondary-content-pressed: var(--color-content-default, #2B3346); /** Secondary button label/icon color on press. */
|
|
363
|
+
--button-secondary-border-default: var(--color-line-default, #DEDFE2); /** Secondary button border color in default state. */
|
|
364
|
+
--button-secondary-border-hover: var(--color-line-default, #DEDFE2); /** Secondary button border color on hover. */
|
|
365
|
+
--button-secondary-border-pressed: var(--color-line-default, #DEDFE2); /** Secondary button border color on press. */
|
|
366
|
+
--button-destructive-content-default: var(--color-content-inverse, #FFFFFF); /** Destructive button label/icon color in default state. */
|
|
367
|
+
--button-destructive-content-hover: var(--color-content-inverse, #FFFFFF); /** Destructive button label/icon color on hover. */
|
|
368
|
+
--button-destructive-content-pressed: var(--color-content-inverse, #FFFFFF); /** Destructive button label/icon color on press. */
|
|
369
|
+
--button-vote-background-default: var(--color-action-neutral-default, #FFFFFF); /** Vote button background in default state. */
|
|
370
|
+
--button-vote-background-hover: color-mix(in oklch, var(--button-vote-background-default) 85%, black); /** Vote button background on hover. */
|
|
371
|
+
--button-vote-background-pressed: color-mix(in oklch, var(--button-vote-background-default) 70%, black); /** Vote button background on press. */
|
|
372
|
+
--button-vote-content-default: var(--color-content-default, #2B3346); /** Vote button content color in default state. */
|
|
373
|
+
--button-vote-content-hover: var(--color-content-default, #2B3346); /** Vote button content color on hover. */
|
|
374
|
+
--button-vote-content-pressed: var(--color-content-default, #2B3346); /** Vote button content color on press. */
|
|
375
|
+
--button-vote-border-default: var(--color-line-default, #DEDFE2); /** Vote button border color in default state. */
|
|
376
|
+
--button-vote-border-hover: var(--color-line-default, #DEDFE2); /** Vote button border color on hover. */
|
|
377
|
+
--button-vote-border-pressed: var(--color-line-default, #DEDFE2); /** Vote button border color on press. */
|
|
378
|
+
--button-vote-selected-background-default: var(--color-action-primary-default, #0C66E4); /** Vote button background when selected (default). */
|
|
379
|
+
--button-vote-selected-background-hover: color-mix(in oklch, var(--button-vote-selected-background-default) 85%, black); /** Vote button background when selected (hovered). */
|
|
380
|
+
--button-vote-selected-background-pressed: color-mix(in oklch, var(--button-vote-selected-background-default) 70%, black); /** Vote button background when selected (pressed). */
|
|
381
|
+
--button-vote-selected-content-default: var(--color-content-inverse, #FFFFFF); /** Vote button content color when selected (default). */
|
|
382
|
+
--button-vote-selected-content-hover: var(--color-content-inverse, #FFFFFF); /** Vote button content color when selected (hovered). */
|
|
383
|
+
--button-vote-selected-content-pressed: var(--color-content-inverse, #FFFFFF); /** Vote button content color when selected (pressed). */
|
|
384
|
+
|
|
385
|
+
/* Card */
|
|
386
|
+
--card-shadow-default: none; /** Card shadow in default state (none). */
|
|
387
|
+
--card-radius: var(--radius-100, 8px); /** Border radius used for cards. */
|
|
388
|
+
--card-border-width: var(--border-width-100, 1px); /** Border width used for cards. */
|
|
389
|
+
--card-shadow-hover: var(--elevation-1, 0px 2px 4px -2px rgba(0, 0, 0, 0.1), 0px 4px 6px -1px rgba(0, 0, 0, 0.1)); /** Card shadow on hover. */
|
|
390
|
+
--card-shadow-pressed: var(--elevation-1, 0px 2px 4px -2px rgba(0, 0, 0, 0.1), 0px 4px 6px -1px rgba(0, 0, 0, 0.1)); /** Card shadow on press. */
|
|
391
|
+
--card-border-default: var(--color-line-default, #DEDFE2); /** Card border color in default state. */
|
|
392
|
+
--card-border-hover: var(--color-line-default, #DEDFE2); /** Card border color on hover. */
|
|
393
|
+
--card-border-pressed: var(--color-line-default, #DEDFE2); /** Card border color on press. */
|
|
394
|
+
--card-background-default: var(--color-surface-default, #FFFFFF); /** Card background in default state. */
|
|
395
|
+
--card-background-hover: color-mix(in oklch, var(--card-background-default) 85%, black); /** Card background on hover. */
|
|
396
|
+
--card-background-pressed: color-mix(in oklch, var(--card-background-default) 70%, black); /** Card background on press. */
|
|
397
|
+
--card-title-default: var(--color-content-heading-default, #2B3346); /** Card title color in default state. */
|
|
398
|
+
--card-title-hover: var(--color-link-default, #0C66E4); /** Card title color on hover (link styling). */
|
|
399
|
+
--card-title-pressed: var(--color-content-heading-default, #2B3346); /** Card title color on press. */
|
|
400
|
+
--card-content-default: var(--color-content-default, #2B3346); /** Card body/content color in default state. */
|
|
401
|
+
--card-content-hover: var(--color-content-default, #2B3346); /** Card body/content color on hover. */
|
|
402
|
+
--card-content-pressed: var(--color-link-hover, #0055CC); /** Card body/content color on press (link hovered styling). */
|
|
403
|
+
|
|
404
|
+
/* Feed */
|
|
405
|
+
--feed-container-shadow: none; /** Feed container shadow (none). */
|
|
406
|
+
--feed-item-shadow-default: none; /** Feed item shadow in default state (none). */
|
|
407
|
+
--feed-container-radius: var(--radius-100, 8px); /** Border radius used for the feed container. */
|
|
408
|
+
--feed-container-border-width: var(--border-width-100, 1px); /** Border width used for the feed container. */
|
|
409
|
+
--feed-item-radius: var(--radius-100, 8px); /** Border radius used for feed items. */
|
|
410
|
+
--feed-item-border-width: var(--border-width-100, 1px); /** Border width used for feed items. */
|
|
411
|
+
--feed-item-shadow-hover: var(--elevation-1, 0px 2px 4px -2px rgba(0, 0, 0, 0.1), 0px 4px 6px -1px rgba(0, 0, 0, 0.1)); /** Feed item shadow on hover. */
|
|
412
|
+
--feed-item-shadow-pressed: var(--elevation-1, 0px 2px 4px -2px rgba(0, 0, 0, 0.1), 0px 4px 6px -1px rgba(0, 0, 0, 0.1)); /** Feed item shadow on press. */
|
|
413
|
+
--feed-container-border-color: var(--color-line-default, #DEDFE2); /** Feed container border color. */
|
|
414
|
+
--feed-container-background: var(--color-surface-default, #FFFFFF); /** Feed container background. */
|
|
415
|
+
--feed-item-border-default: var(--color-line-default, #DEDFE2); /** Feed item border color in default state. */
|
|
416
|
+
--feed-item-border-hover: var(--color-line-default, #DEDFE2); /** Feed item border color on hover. */
|
|
417
|
+
--feed-item-border-pressed: var(--color-line-default, #DEDFE2); /** Feed item border color on press. */
|
|
418
|
+
--feed-item-background-default: var(--color-surface-default, #FFFFFF); /** Feed item background in default state. */
|
|
419
|
+
--feed-item-background-hover: color-mix(in oklch, var(--feed-item-background-default) 85%, black); /** Feed item background on hover. */
|
|
420
|
+
--feed-item-background-pressed: color-mix(in oklch, var(--feed-item-background-default) 70%, black); /** Feed item background on press. */
|
|
421
|
+
--feed-item-title-default: var(--color-content-heading-default, #2B3346); /** Feed item title color in default state. */
|
|
422
|
+
--feed-item-title-hover: var(--color-link-default, #0C66E4); /** Feed item title color on hover (link styling). */
|
|
423
|
+
--feed-item-title-pressed: var(--color-link-hover, #0055CC); /** Feed item title color on press (link hovered styling). */
|
|
424
|
+
--feed-item-content-default: var(--color-content-default, #2B3346); /** Feed item content color in default state. */
|
|
425
|
+
--feed-item-content-hover: var(--color-content-default, #2B3346); /** Feed item content color on hover. */
|
|
426
|
+
--feed-item-content-pressed: var(--color-link-hover, #0055CC); /** Feed item content color on press (link hovered styling). */
|
|
427
|
+
|
|
428
|
+
/* Navigation */
|
|
429
|
+
--navigation-border-top: rgba(0, 0, 0, 0); /** Top border of navigation (transparent). */
|
|
430
|
+
--navigation-background: var(--color-surface-default, #FFFFFF); /** Navigation bar background. */
|
|
431
|
+
--navigation-content: var(--color-content-default, #2B3346); /** Navigation bar content color (text/icons). */
|
|
432
|
+
--navigation-dropdown-background: var(--color-surface-overlay, #FFFFFF); /** Navigation dropdown background. */
|
|
433
|
+
--navigation-dropdown-content: var(--color-content-default, #2B3346); /** Navigation dropdown content color. */
|
|
434
|
+
--navigation-border-bottom: var(--color-line-default, #DEDFE2); /** Bottom border of navigation. */
|
|
435
|
+
|
|
436
|
+
/* Widget */
|
|
437
|
+
--widget-shadow: none; /** Default widget shadow (none). */
|
|
438
|
+
--widget-hero-content-shadow: none; /** Hero widget content shadow (none; handled by image/overlay as needed). */
|
|
439
|
+
--widget-hero-background: uploaded image; /** Background of the hero section. */
|
|
440
|
+
--widget-hero-height: 240px; /** Height of the hero section. */
|
|
441
|
+
--widget-featured-background: var(--color-status-information-bold, #0c66e4); /** Featured topic widget background. */
|
|
442
|
+
--widget-introduction-icon-background: var(--color-status-success-bold, #1f8444); /** Introduction widget icon container background. */
|
|
443
|
+
--widget-title: var(--color-content-heading-default, #2B3346); /** Default widget title color. */
|
|
444
|
+
--widget-subtitle: var(--color-content-default, #2B3346); /** Default widget subtitle color. */
|
|
445
|
+
--widget-background: var(--color-surface-page, #FAFAFA); /** Default widget background. */
|
|
446
|
+
--widget-hero-title: var(--color-content-heading-hero, #FFFFFF); /** Hero widget title color. */
|
|
447
|
+
--widget-hero-subtitle: var(--color-content-heading-hero, #FFFFFF); /** Hero widget subtitle color. */
|
|
448
|
+
--widget-featured-content: var(--color-content-inverse, #FFFFFF); /** Featured topic widget content color. */
|
|
449
|
+
--widget-introduction-background: var(--color-surface-default, #FFFFFF); /** Introduction widget background. */
|
|
450
|
+
--widget-introduction-content: var(--color-content-default, #2B3346); /** Introduction widget body/content color. */
|
|
451
|
+
--widget-introduction-icon-content: var(--color-content-inverse, #FFFFFF); /** Introduction widget icon color. */
|
|
452
|
+
--widget-introduction-close-content: var(--color-content-subtlest, #696E7C); /** Introduction widget close button color. */
|
|
453
|
+
|
|
454
|
+
/* Back to Top */
|
|
455
|
+
--backtotop-background: var(--color-surface-inverse, #2B3346); /** Back-to-top button background. */
|
|
456
|
+
--backtotop-content: var(--color-content-inverse, #FFFFFF); /** Back-to-top button icon/content color. */
|
|
457
|
+
}
|