@syncupsuite/themes 0.3.0 → 0.4.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/dist/index.cjs +11364 -4488
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +9 -1
- package/dist/index.d.ts +9 -1
- package/dist/index.js +11359 -4487
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
- package/src/art-deco/tailwind.css +22 -0
- package/src/art-deco/tokens.css +16 -2
- package/src/de-stijl/meta.json +50 -0
- package/src/de-stijl/tailwind.css +391 -0
- package/src/de-stijl/tokens.css +319 -0
- package/src/de-stijl/tokens.json +840 -0
- package/src/milanese-design/meta.json +50 -0
- package/src/milanese-design/tailwind.css +391 -0
- package/src/milanese-design/tokens.css +319 -0
- package/src/milanese-design/tokens.json +840 -0
- package/src/nihon-minimal/tailwind.css +22 -0
- package/src/nihon-minimal/tokens.css +16 -2
- package/src/nihon-traditional/tailwind.css +22 -0
- package/src/nihon-traditional/tokens.css +16 -2
- package/src/nordic-modern/tailwind.css +22 -0
- package/src/nordic-modern/tokens.css +16 -2
- package/src/renaissance/tailwind.css +22 -0
- package/src/renaissance/tokens.css +16 -2
- package/src/shuimo-modern/tailwind.css +22 -0
- package/src/shuimo-modern/tokens.css +16 -2
- package/src/swiss-international/tailwind.css +22 -0
- package/src/swiss-international/tokens.css +16 -2
- package/src/swiss-modernist/meta.json +62 -0
- package/src/swiss-modernist/tailwind.css +451 -0
- package/src/swiss-modernist/tokens.css +359 -0
- package/src/swiss-modernist/tokens.json +960 -0
- package/src/tang-imperial/tailwind.css +22 -0
- package/src/tang-imperial/tokens.css +16 -2
- package/src/wiener-werkstaette/meta.json +44 -0
- package/src/wiener-werkstaette/tailwind.css +361 -0
- package/src/wiener-werkstaette/tokens.css +299 -0
- package/src/wiener-werkstaette/tokens.json +780 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@syncupsuite/themes",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"description": "Pre-built, culturally-grounded design themes — ready to use",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -53,8 +53,8 @@
|
|
|
53
53
|
"tsup": "^8.3.0",
|
|
54
54
|
"typescript": "^5.7.0",
|
|
55
55
|
"vitest": "^4.0.18",
|
|
56
|
-
"@syncupsuite/
|
|
57
|
-
"@syncupsuite/
|
|
56
|
+
"@syncupsuite/transformers": "0.2.1",
|
|
57
|
+
"@syncupsuite/foundations": "0.2.0"
|
|
58
58
|
},
|
|
59
59
|
"scripts": {
|
|
60
60
|
"build": "tsup",
|
|
@@ -215,6 +215,28 @@
|
|
|
215
215
|
|
|
216
216
|
}
|
|
217
217
|
|
|
218
|
+
/* === Semantic Color API — theme-aware Tailwind utilities === */
|
|
219
|
+
@theme {
|
|
220
|
+
--color-canvas: var(--background-canvas);
|
|
221
|
+
--color-surface: var(--background-surface);
|
|
222
|
+
--color-muted: var(--background-muted);
|
|
223
|
+
--color-foreground: var(--text-primary);
|
|
224
|
+
--color-foreground-secondary: var(--text-secondary);
|
|
225
|
+
--color-foreground-muted: var(--text-muted);
|
|
226
|
+
--color-foreground-inverse: var(--text-inverse);
|
|
227
|
+
--color-primary: var(--interactive-primary);
|
|
228
|
+
--color-primary-hover: var(--interactive-primary-hover);
|
|
229
|
+
--color-primary-active: var(--interactive-primary-active);
|
|
230
|
+
--color-border: var(--border-default);
|
|
231
|
+
--color-border-strong: var(--border-strong);
|
|
232
|
+
--color-error: var(--status-error);
|
|
233
|
+
--color-success: var(--status-success);
|
|
234
|
+
--color-warning: var(--status-warning);
|
|
235
|
+
--color-info: var(--status-info);
|
|
236
|
+
--color-ring: var(--focus-ring);
|
|
237
|
+
--color-focus-visible: var(--accessibility-focus-visible);
|
|
238
|
+
}
|
|
239
|
+
|
|
218
240
|
/* Primitive aliases + light mode semantic tokens */
|
|
219
241
|
:root {
|
|
220
242
|
/* --primitive-color-* aliases → @theme --color-* (for semantic var() resolution) */
|
package/src/art-deco/tokens.css
CHANGED
|
@@ -1,5 +1,19 @@
|
|
|
1
|
-
/*
|
|
2
|
-
|
|
1
|
+
/* ═══════════════════════════════════════════════════════════════
|
|
2
|
+
* art-deco — Design Tokens
|
|
3
|
+
* Generated by @syncupsuite/transformers
|
|
4
|
+
*
|
|
5
|
+
* CONSUMER API — Use these semantic tokens in your styles:
|
|
6
|
+
*
|
|
7
|
+
* Backgrounds: var(--background-canvas | surface | muted)
|
|
8
|
+
* Text: var(--text-primary | secondary | muted | inverse)
|
|
9
|
+
* Interactive: var(--interactive-primary | primary-hover | primary-active)
|
|
10
|
+
* Borders: var(--border-default | strong)
|
|
11
|
+
* Status: var(--status-error | success | warning | info)
|
|
12
|
+
* Focus: var(--focus-ring)
|
|
13
|
+
*
|
|
14
|
+
* Dark mode: Add [data-theme="dark"] to a parent element.
|
|
15
|
+
* Primitives: --primitive-color-*, --primitive-spacing-*, etc.
|
|
16
|
+
* ═══════════════════════════════════════════════════════════════ */
|
|
3
17
|
|
|
4
18
|
:root {
|
|
5
19
|
/* --- Primitive Colors --- */
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
{
|
|
2
|
+
"id": "de-stijl",
|
|
3
|
+
"name": "De Stijl",
|
|
4
|
+
"description": "De Stijl — Dutch Neo-Plasticism, founded Leiden 1917. Mondrian's primary colors and Rietveld's spatial geometry reduced to irreducible elements.",
|
|
5
|
+
"foundation": {
|
|
6
|
+
"story": "Piet Mondrian and Theo van Doesburg reduced painting to its irreducible elements: the primary colors, the horizontal and vertical line. Gerrit Rietveld built a chair from this philosophy. The result is not minimal — it is maximal through constraint. Every decision becomes visible because there are so few of them.",
|
|
7
|
+
"philosophy": "Absolute abstraction, universal harmony — beauty through the elimination of everything that is not essential",
|
|
8
|
+
"era": "Early Modernist — De Stijl to International Style, 1917–1931",
|
|
9
|
+
"harmonyMode": "triadic",
|
|
10
|
+
"radiusTendency": "none",
|
|
11
|
+
"typographyCategory": "neo-grotesque"
|
|
12
|
+
},
|
|
13
|
+
"seedColors": [
|
|
14
|
+
{
|
|
15
|
+
"hex": "#0D3B8C",
|
|
16
|
+
"name": "Blue (Mondriaan Blauw)",
|
|
17
|
+
"tradition": "Mondrian primary blue — the exact blue of Composition with Red, Blue and Yellow (1930). The structural anchor.",
|
|
18
|
+
"source": "Piet Mondrian: Life and Work, M. Seuphor"
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"hex": "#D42B2B",
|
|
22
|
+
"name": "Red (Rietveld Rood)",
|
|
23
|
+
"tradition": "Mondrian primary red — vermilion of the Rietveld Red Blue Chair (1917). Warmth within the grid.",
|
|
24
|
+
"source": "De Stijl 1917–1931: The Dutch Contribution to Modern Art, H. Jaffé"
|
|
25
|
+
},
|
|
26
|
+
{
|
|
27
|
+
"hex": "#F5D800",
|
|
28
|
+
"name": "Yellow (Cadmium Geel)",
|
|
29
|
+
"tradition": "Mondrian primary yellow — cadmium yellow of Neo-Plasticism theory. The light source in the composition.",
|
|
30
|
+
"source": "Mondrian: The Art of Destruction, C. Blotkamp"
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"hex": "#1A1A1A",
|
|
34
|
+
"name": "Black (Raster Zwart)",
|
|
35
|
+
"tradition": "De Stijl grid lines — the black bars that define spatial relationships in Mondrian's grids. Structure made visible.",
|
|
36
|
+
"source": "Theo van Doesburg: A New Expression of Life, Art, and Technology, J. Baljeu"
|
|
37
|
+
},
|
|
38
|
+
{
|
|
39
|
+
"hex": "#F7F7F5",
|
|
40
|
+
"name": "White (Doek Wit)",
|
|
41
|
+
"tradition": "Canvas ground — the neutral field that makes all relationships visible. Not empty but active.",
|
|
42
|
+
"source": "The New Art — The New Life: Collected Writings of Piet Mondrian"
|
|
43
|
+
}
|
|
44
|
+
],
|
|
45
|
+
"validation": {
|
|
46
|
+
"schema": true,
|
|
47
|
+
"contrast": false,
|
|
48
|
+
"completeness": true
|
|
49
|
+
}
|
|
50
|
+
}
|
|
@@ -0,0 +1,391 @@
|
|
|
1
|
+
@import "tailwindcss";
|
|
2
|
+
|
|
3
|
+
@theme {
|
|
4
|
+
/* --- Colors --- */
|
|
5
|
+
/* Blue (Mondriaan Blauw) 50 */
|
|
6
|
+
--color-blue-mondriaan-blauw-50: #E8F6FF;
|
|
7
|
+
/* Blue (Mondriaan Blauw) 100 */
|
|
8
|
+
--color-blue-mondriaan-blauw-100: #B9CFF5;
|
|
9
|
+
/* Blue (Mondriaan Blauw) 200 */
|
|
10
|
+
--color-blue-mondriaan-blauw-200: #8DA9DB;
|
|
11
|
+
/* Blue (Mondriaan Blauw) 300 */
|
|
12
|
+
--color-blue-mondriaan-blauw-300: #6284C1;
|
|
13
|
+
/* Blue (Mondriaan Blauw) 400 */
|
|
14
|
+
--color-blue-mondriaan-blauw-400: #3860A7;
|
|
15
|
+
/* Blue (Mondriaan Blauw) 500 */
|
|
16
|
+
--color-blue-mondriaan-blauw-500: #0D3B8C;
|
|
17
|
+
/* Blue (Mondriaan Blauw) 600 */
|
|
18
|
+
--color-blue-mondriaan-blauw-600: #032A71;
|
|
19
|
+
/* Blue (Mondriaan Blauw) 700 */
|
|
20
|
+
--color-blue-mondriaan-blauw-700: #001A57;
|
|
21
|
+
/* Blue (Mondriaan Blauw) 800 */
|
|
22
|
+
--color-blue-mondriaan-blauw-800: #000A3E;
|
|
23
|
+
/* Blue (Mondriaan Blauw) 900 */
|
|
24
|
+
--color-blue-mondriaan-blauw-900: #000026;
|
|
25
|
+
/* Red (Rietveld Rood) 50 */
|
|
26
|
+
--color-red-rietveld-rood-50: #FFE9E3;
|
|
27
|
+
/* Red (Rietveld Rood) 100 */
|
|
28
|
+
--color-red-rietveld-rood-100: #FFC6BE;
|
|
29
|
+
/* Red (Rietveld Rood) 200 */
|
|
30
|
+
--color-red-rietveld-rood-200: #FFA499;
|
|
31
|
+
/* Red (Rietveld Rood) 300 */
|
|
32
|
+
--color-red-rietveld-rood-300: #F48075;
|
|
33
|
+
/* Red (Rietveld Rood) 400 */
|
|
34
|
+
--color-red-rietveld-rood-400: #E55B52;
|
|
35
|
+
/* Red (Rietveld Rood) 500 */
|
|
36
|
+
--color-red-rietveld-rood-500: #D42B2B;
|
|
37
|
+
/* Red (Rietveld Rood) 600 */
|
|
38
|
+
--color-red-rietveld-rood-600: #A50311;
|
|
39
|
+
/* Red (Rietveld Rood) 700 */
|
|
40
|
+
--color-red-rietveld-rood-700: #780000;
|
|
41
|
+
/* Red (Rietveld Rood) 800 */
|
|
42
|
+
--color-red-rietveld-rood-800: #4D0000;
|
|
43
|
+
/* Red (Rietveld Rood) 900 */
|
|
44
|
+
--color-red-rietveld-rood-900: #250000;
|
|
45
|
+
/* Yellow (Cadmium Geel) 50 */
|
|
46
|
+
--color-yellow-cadmium-geel-50: #FCF6D4;
|
|
47
|
+
/* Yellow (Cadmium Geel) 100 */
|
|
48
|
+
--color-yellow-cadmium-geel-100: #FBF1B8;
|
|
49
|
+
/* Yellow (Cadmium Geel) 200 */
|
|
50
|
+
--color-yellow-cadmium-geel-200: #F9EB9C;
|
|
51
|
+
/* Yellow (Cadmium Geel) 300 */
|
|
52
|
+
--color-yellow-cadmium-geel-300: #F8E57C;
|
|
53
|
+
/* Yellow (Cadmium Geel) 400 */
|
|
54
|
+
--color-yellow-cadmium-geel-400: #F6DF55;
|
|
55
|
+
/* Yellow (Cadmium Geel) 500 */
|
|
56
|
+
--color-yellow-cadmium-geel-500: #F5D800;
|
|
57
|
+
/* Yellow (Cadmium Geel) 600 */
|
|
58
|
+
--color-yellow-cadmium-geel-600: #B59B00;
|
|
59
|
+
/* Yellow (Cadmium Geel) 700 */
|
|
60
|
+
--color-yellow-cadmium-geel-700: #786200;
|
|
61
|
+
/* Yellow (Cadmium Geel) 800 */
|
|
62
|
+
--color-yellow-cadmium-geel-800: #412E00;
|
|
63
|
+
/* Yellow (Cadmium Geel) 900 */
|
|
64
|
+
--color-yellow-cadmium-geel-900: #100300;
|
|
65
|
+
/* Black (Raster Zwart) 50 */
|
|
66
|
+
--color-black-raster-zwart-50: #F5F5F5;
|
|
67
|
+
/* Black (Raster Zwart) 100 */
|
|
68
|
+
--color-black-raster-zwart-100: #C4C4C4;
|
|
69
|
+
/* Black (Raster Zwart) 200 */
|
|
70
|
+
--color-black-raster-zwart-200: #959595;
|
|
71
|
+
/* Black (Raster Zwart) 300 */
|
|
72
|
+
--color-black-raster-zwart-300: #686868;
|
|
73
|
+
/* Black (Raster Zwart) 400 */
|
|
74
|
+
--color-black-raster-zwart-400: #3F3F3F;
|
|
75
|
+
/* Black (Raster Zwart) 500 */
|
|
76
|
+
--color-black-raster-zwart-500: #1A1A1A;
|
|
77
|
+
/* Black (Raster Zwart) 600 */
|
|
78
|
+
--color-black-raster-zwart-600: #141414;
|
|
79
|
+
/* Black (Raster Zwart) 700 */
|
|
80
|
+
--color-black-raster-zwart-700: #0F0F0F;
|
|
81
|
+
/* Black (Raster Zwart) 800 */
|
|
82
|
+
--color-black-raster-zwart-800: #0A0A0A;
|
|
83
|
+
/* Black (Raster Zwart) 900 */
|
|
84
|
+
--color-black-raster-zwart-900: #060606;
|
|
85
|
+
/* White (Doek Wit) 50 */
|
|
86
|
+
--color-white-doek-wit-50: #F5F5F4;
|
|
87
|
+
/* White (Doek Wit) 100 */
|
|
88
|
+
--color-white-doek-wit-100: #F5F5F5;
|
|
89
|
+
/* White (Doek Wit) 200 */
|
|
90
|
+
--color-white-doek-wit-200: #F6F6F5;
|
|
91
|
+
/* White (Doek Wit) 300 */
|
|
92
|
+
--color-white-doek-wit-300: #F6F6F5;
|
|
93
|
+
/* White (Doek Wit) 400 */
|
|
94
|
+
--color-white-doek-wit-400: #F7F7F5;
|
|
95
|
+
/* White (Doek Wit) 500 */
|
|
96
|
+
--color-white-doek-wit-500: #F7F7F5;
|
|
97
|
+
/* White (Doek Wit) 600 */
|
|
98
|
+
--color-white-doek-wit-600: #B2B2B0;
|
|
99
|
+
/* White (Doek Wit) 700 */
|
|
100
|
+
--color-white-doek-wit-700: #717170;
|
|
101
|
+
/* White (Doek Wit) 800 */
|
|
102
|
+
--color-white-doek-wit-800: #363635;
|
|
103
|
+
/* White (Doek Wit) 900 */
|
|
104
|
+
--color-white-doek-wit-900: #060605;
|
|
105
|
+
/* Neutral 50 */
|
|
106
|
+
--color-neutral-50: #F4F9FF;
|
|
107
|
+
/* Neutral 100 */
|
|
108
|
+
--color-neutral-100: #EAEFF6;
|
|
109
|
+
/* Neutral 200 */
|
|
110
|
+
--color-neutral-200: #DADEE6;
|
|
111
|
+
/* Neutral 300 */
|
|
112
|
+
--color-neutral-300: #C0C4CC;
|
|
113
|
+
/* Neutral 400 */
|
|
114
|
+
--color-neutral-400: #9498A0;
|
|
115
|
+
/* Neutral 500 */
|
|
116
|
+
--color-neutral-500: #6B6F76;
|
|
117
|
+
/* Neutral 600 */
|
|
118
|
+
--color-neutral-600: #4A4D54;
|
|
119
|
+
/* Neutral 700 */
|
|
120
|
+
--color-neutral-700: #303339;
|
|
121
|
+
/* Neutral 800 */
|
|
122
|
+
--color-neutral-800: #181B20;
|
|
123
|
+
/* Neutral 900 */
|
|
124
|
+
--color-neutral-900: #05070C;
|
|
125
|
+
/* Accent 50 */
|
|
126
|
+
--color-accent-50: #FFEBF0;
|
|
127
|
+
/* Accent 100 */
|
|
128
|
+
--color-accent-100: #F7C0C9;
|
|
129
|
+
/* Accent 200 */
|
|
130
|
+
--color-accent-200: #DE96A3;
|
|
131
|
+
/* Accent 300 */
|
|
132
|
+
--color-accent-300: #C46D7F;
|
|
133
|
+
/* Accent 400 */
|
|
134
|
+
--color-accent-400: #A9435D;
|
|
135
|
+
/* Accent 500 */
|
|
136
|
+
--color-accent-500: #8C0D3C;
|
|
137
|
+
/* Accent 600 */
|
|
138
|
+
--color-accent-600: #6E002B;
|
|
139
|
+
/* Accent 700 */
|
|
140
|
+
--color-accent-700: #52001A;
|
|
141
|
+
/* Accent 800 */
|
|
142
|
+
--color-accent-800: #37000B;
|
|
143
|
+
/* Accent 900 */
|
|
144
|
+
--color-accent-900: #1D0002;
|
|
145
|
+
|
|
146
|
+
/* --- Spacing (8px grid) --- */
|
|
147
|
+
/* Spacing 0 (0px) */
|
|
148
|
+
--spacing-0: 0px;
|
|
149
|
+
/* Spacing 1 (4px) */
|
|
150
|
+
--spacing-1: 4px;
|
|
151
|
+
/* Spacing 2 (8px) */
|
|
152
|
+
--spacing-2: 8px;
|
|
153
|
+
/* Spacing 3 (12px) */
|
|
154
|
+
--spacing-3: 12px;
|
|
155
|
+
/* Spacing 4 (16px) */
|
|
156
|
+
--spacing-4: 16px;
|
|
157
|
+
/* Spacing 5 (20px) */
|
|
158
|
+
--spacing-5: 20px;
|
|
159
|
+
/* Spacing 6 (24px) */
|
|
160
|
+
--spacing-6: 24px;
|
|
161
|
+
/* Spacing 8 (32px) */
|
|
162
|
+
--spacing-8: 32px;
|
|
163
|
+
/* Spacing 10 (40px) */
|
|
164
|
+
--spacing-10: 40px;
|
|
165
|
+
/* Spacing 12 (48px) */
|
|
166
|
+
--spacing-12: 48px;
|
|
167
|
+
/* Spacing 16 (64px) */
|
|
168
|
+
--spacing-16: 64px;
|
|
169
|
+
/* Spacing 20 (80px) */
|
|
170
|
+
--spacing-20: 80px;
|
|
171
|
+
/* Spacing 0.5 (2px) */
|
|
172
|
+
--spacing-0-5: 2px;
|
|
173
|
+
/* Spacing 1.5 (6px) */
|
|
174
|
+
--spacing-1-5: 6px;
|
|
175
|
+
|
|
176
|
+
/* --- Font Families --- */
|
|
177
|
+
/* Heading font family */
|
|
178
|
+
--font-heading: "Inter", "Helvetica Neue", "Arial", sans-serif;
|
|
179
|
+
/* Body font family */
|
|
180
|
+
--font-body: "Inter", "Helvetica Neue", "Arial", sans-serif;
|
|
181
|
+
/* Monospace font family */
|
|
182
|
+
--font-mono: "JetBrains Mono", "SF Mono", monospace;
|
|
183
|
+
|
|
184
|
+
/* --- Font Sizes --- */
|
|
185
|
+
/* Font size xs */
|
|
186
|
+
--text-xs: 0.75rem;
|
|
187
|
+
/* Font size sm */
|
|
188
|
+
--text-sm: 0.875rem;
|
|
189
|
+
/* Font size base */
|
|
190
|
+
--text-base: 1rem;
|
|
191
|
+
/* Font size lg */
|
|
192
|
+
--text-lg: 1.125rem;
|
|
193
|
+
/* Font size xl */
|
|
194
|
+
--text-xl: 1.25rem;
|
|
195
|
+
/* Font size 2xl */
|
|
196
|
+
--text-2xl: 1.5rem;
|
|
197
|
+
/* Font size 3xl */
|
|
198
|
+
--text-3xl: 1.875rem;
|
|
199
|
+
/* Font size 4xl */
|
|
200
|
+
--text-4xl: 2.25rem;
|
|
201
|
+
|
|
202
|
+
/* --- Border Radius --- */
|
|
203
|
+
/* Border radius none */
|
|
204
|
+
--radius-none: 0px;
|
|
205
|
+
/* Border radius sm */
|
|
206
|
+
--radius-sm: 0px;
|
|
207
|
+
/* Border radius md */
|
|
208
|
+
--radius-md: 0px;
|
|
209
|
+
/* Border radius lg */
|
|
210
|
+
--radius-lg: 0px;
|
|
211
|
+
/* Border radius xl */
|
|
212
|
+
--radius-xl: 0px;
|
|
213
|
+
/* Border radius full */
|
|
214
|
+
--radius-full: 9999px;
|
|
215
|
+
|
|
216
|
+
}
|
|
217
|
+
|
|
218
|
+
/* === Semantic Color API — theme-aware Tailwind utilities === */
|
|
219
|
+
@theme {
|
|
220
|
+
--color-canvas: var(--background-canvas);
|
|
221
|
+
--color-surface: var(--background-surface);
|
|
222
|
+
--color-muted: var(--background-muted);
|
|
223
|
+
--color-foreground: var(--text-primary);
|
|
224
|
+
--color-foreground-secondary: var(--text-secondary);
|
|
225
|
+
--color-foreground-muted: var(--text-muted);
|
|
226
|
+
--color-foreground-inverse: var(--text-inverse);
|
|
227
|
+
--color-primary: var(--interactive-primary);
|
|
228
|
+
--color-primary-hover: var(--interactive-primary-hover);
|
|
229
|
+
--color-primary-active: var(--interactive-primary-active);
|
|
230
|
+
--color-border: var(--border-default);
|
|
231
|
+
--color-border-strong: var(--border-strong);
|
|
232
|
+
--color-error: var(--status-error);
|
|
233
|
+
--color-success: var(--status-success);
|
|
234
|
+
--color-warning: var(--status-warning);
|
|
235
|
+
--color-info: var(--status-info);
|
|
236
|
+
--color-ring: var(--focus-ring);
|
|
237
|
+
--color-focus-visible: var(--accessibility-focus-visible);
|
|
238
|
+
}
|
|
239
|
+
|
|
240
|
+
/* Primitive aliases + light mode semantic tokens */
|
|
241
|
+
:root {
|
|
242
|
+
/* --primitive-color-* aliases → @theme --color-* (for semantic var() resolution) */
|
|
243
|
+
--primitive-color-blue-mondriaan-blauw-50: var(--color-blue-mondriaan-blauw-50);
|
|
244
|
+
--primitive-color-blue-mondriaan-blauw-100: var(--color-blue-mondriaan-blauw-100);
|
|
245
|
+
--primitive-color-blue-mondriaan-blauw-200: var(--color-blue-mondriaan-blauw-200);
|
|
246
|
+
--primitive-color-blue-mondriaan-blauw-300: var(--color-blue-mondriaan-blauw-300);
|
|
247
|
+
--primitive-color-blue-mondriaan-blauw-400: var(--color-blue-mondriaan-blauw-400);
|
|
248
|
+
--primitive-color-blue-mondriaan-blauw-500: var(--color-blue-mondriaan-blauw-500);
|
|
249
|
+
--primitive-color-blue-mondriaan-blauw-600: var(--color-blue-mondriaan-blauw-600);
|
|
250
|
+
--primitive-color-blue-mondriaan-blauw-700: var(--color-blue-mondriaan-blauw-700);
|
|
251
|
+
--primitive-color-blue-mondriaan-blauw-800: var(--color-blue-mondriaan-blauw-800);
|
|
252
|
+
--primitive-color-blue-mondriaan-blauw-900: var(--color-blue-mondriaan-blauw-900);
|
|
253
|
+
--primitive-color-red-rietveld-rood-50: var(--color-red-rietveld-rood-50);
|
|
254
|
+
--primitive-color-red-rietveld-rood-100: var(--color-red-rietveld-rood-100);
|
|
255
|
+
--primitive-color-red-rietveld-rood-200: var(--color-red-rietveld-rood-200);
|
|
256
|
+
--primitive-color-red-rietveld-rood-300: var(--color-red-rietveld-rood-300);
|
|
257
|
+
--primitive-color-red-rietveld-rood-400: var(--color-red-rietveld-rood-400);
|
|
258
|
+
--primitive-color-red-rietveld-rood-500: var(--color-red-rietveld-rood-500);
|
|
259
|
+
--primitive-color-red-rietveld-rood-600: var(--color-red-rietveld-rood-600);
|
|
260
|
+
--primitive-color-red-rietveld-rood-700: var(--color-red-rietveld-rood-700);
|
|
261
|
+
--primitive-color-red-rietveld-rood-800: var(--color-red-rietveld-rood-800);
|
|
262
|
+
--primitive-color-red-rietveld-rood-900: var(--color-red-rietveld-rood-900);
|
|
263
|
+
--primitive-color-yellow-cadmium-geel-50: var(--color-yellow-cadmium-geel-50);
|
|
264
|
+
--primitive-color-yellow-cadmium-geel-100: var(--color-yellow-cadmium-geel-100);
|
|
265
|
+
--primitive-color-yellow-cadmium-geel-200: var(--color-yellow-cadmium-geel-200);
|
|
266
|
+
--primitive-color-yellow-cadmium-geel-300: var(--color-yellow-cadmium-geel-300);
|
|
267
|
+
--primitive-color-yellow-cadmium-geel-400: var(--color-yellow-cadmium-geel-400);
|
|
268
|
+
--primitive-color-yellow-cadmium-geel-500: var(--color-yellow-cadmium-geel-500);
|
|
269
|
+
--primitive-color-yellow-cadmium-geel-600: var(--color-yellow-cadmium-geel-600);
|
|
270
|
+
--primitive-color-yellow-cadmium-geel-700: var(--color-yellow-cadmium-geel-700);
|
|
271
|
+
--primitive-color-yellow-cadmium-geel-800: var(--color-yellow-cadmium-geel-800);
|
|
272
|
+
--primitive-color-yellow-cadmium-geel-900: var(--color-yellow-cadmium-geel-900);
|
|
273
|
+
--primitive-color-black-raster-zwart-50: var(--color-black-raster-zwart-50);
|
|
274
|
+
--primitive-color-black-raster-zwart-100: var(--color-black-raster-zwart-100);
|
|
275
|
+
--primitive-color-black-raster-zwart-200: var(--color-black-raster-zwart-200);
|
|
276
|
+
--primitive-color-black-raster-zwart-300: var(--color-black-raster-zwart-300);
|
|
277
|
+
--primitive-color-black-raster-zwart-400: var(--color-black-raster-zwart-400);
|
|
278
|
+
--primitive-color-black-raster-zwart-500: var(--color-black-raster-zwart-500);
|
|
279
|
+
--primitive-color-black-raster-zwart-600: var(--color-black-raster-zwart-600);
|
|
280
|
+
--primitive-color-black-raster-zwart-700: var(--color-black-raster-zwart-700);
|
|
281
|
+
--primitive-color-black-raster-zwart-800: var(--color-black-raster-zwart-800);
|
|
282
|
+
--primitive-color-black-raster-zwart-900: var(--color-black-raster-zwart-900);
|
|
283
|
+
--primitive-color-white-doek-wit-50: var(--color-white-doek-wit-50);
|
|
284
|
+
--primitive-color-white-doek-wit-100: var(--color-white-doek-wit-100);
|
|
285
|
+
--primitive-color-white-doek-wit-200: var(--color-white-doek-wit-200);
|
|
286
|
+
--primitive-color-white-doek-wit-300: var(--color-white-doek-wit-300);
|
|
287
|
+
--primitive-color-white-doek-wit-400: var(--color-white-doek-wit-400);
|
|
288
|
+
--primitive-color-white-doek-wit-500: var(--color-white-doek-wit-500);
|
|
289
|
+
--primitive-color-white-doek-wit-600: var(--color-white-doek-wit-600);
|
|
290
|
+
--primitive-color-white-doek-wit-700: var(--color-white-doek-wit-700);
|
|
291
|
+
--primitive-color-white-doek-wit-800: var(--color-white-doek-wit-800);
|
|
292
|
+
--primitive-color-white-doek-wit-900: var(--color-white-doek-wit-900);
|
|
293
|
+
--primitive-color-neutral-50: var(--color-neutral-50);
|
|
294
|
+
--primitive-color-neutral-100: var(--color-neutral-100);
|
|
295
|
+
--primitive-color-neutral-200: var(--color-neutral-200);
|
|
296
|
+
--primitive-color-neutral-300: var(--color-neutral-300);
|
|
297
|
+
--primitive-color-neutral-400: var(--color-neutral-400);
|
|
298
|
+
--primitive-color-neutral-500: var(--color-neutral-500);
|
|
299
|
+
--primitive-color-neutral-600: var(--color-neutral-600);
|
|
300
|
+
--primitive-color-neutral-700: var(--color-neutral-700);
|
|
301
|
+
--primitive-color-neutral-800: var(--color-neutral-800);
|
|
302
|
+
--primitive-color-neutral-900: var(--color-neutral-900);
|
|
303
|
+
--primitive-color-accent-50: var(--color-accent-50);
|
|
304
|
+
--primitive-color-accent-100: var(--color-accent-100);
|
|
305
|
+
--primitive-color-accent-200: var(--color-accent-200);
|
|
306
|
+
--primitive-color-accent-300: var(--color-accent-300);
|
|
307
|
+
--primitive-color-accent-400: var(--color-accent-400);
|
|
308
|
+
--primitive-color-accent-500: var(--color-accent-500);
|
|
309
|
+
--primitive-color-accent-600: var(--color-accent-600);
|
|
310
|
+
--primitive-color-accent-700: var(--color-accent-700);
|
|
311
|
+
--primitive-color-accent-800: var(--color-accent-800);
|
|
312
|
+
--primitive-color-accent-900: var(--color-accent-900);
|
|
313
|
+
|
|
314
|
+
/* Semantic tokens */
|
|
315
|
+
/* Page background */
|
|
316
|
+
--background-canvas: var(--primitive-color-neutral-50);
|
|
317
|
+
/* Card/surface background */
|
|
318
|
+
--background-surface: #FFFFFF;
|
|
319
|
+
/* Muted background */
|
|
320
|
+
--background-muted: var(--primitive-color-neutral-100);
|
|
321
|
+
/* Primary text */
|
|
322
|
+
--text-primary: var(--primitive-color-neutral-900);
|
|
323
|
+
/* Secondary text */
|
|
324
|
+
--text-secondary: var(--primitive-color-neutral-600);
|
|
325
|
+
/* Muted/disabled text */
|
|
326
|
+
--text-muted: var(--primitive-color-neutral-500);
|
|
327
|
+
/* Text on dark backgrounds */
|
|
328
|
+
--text-inverse: var(--primitive-color-neutral-50);
|
|
329
|
+
/* Primary interactive (buttons, links) */
|
|
330
|
+
--interactive-primary: var(--primitive-color-blue-mondriaan-blauw-500);
|
|
331
|
+
/* Primary interactive hover */
|
|
332
|
+
--interactive-primary-hover: var(--primitive-color-blue-mondriaan-blauw-600);
|
|
333
|
+
/* Primary interactive active */
|
|
334
|
+
--interactive-primary-active: var(--primitive-color-blue-mondriaan-blauw-700);
|
|
335
|
+
/* Default border */
|
|
336
|
+
--border-default: var(--primitive-color-neutral-200);
|
|
337
|
+
/* Strong border */
|
|
338
|
+
--border-strong: var(--primitive-color-neutral-400);
|
|
339
|
+
/* Error — WCAG-compliant red */
|
|
340
|
+
--status-error: #DC2626;
|
|
341
|
+
/* Success — WCAG-compliant green */
|
|
342
|
+
--status-success: #16A34A;
|
|
343
|
+
/* Warning — WCAG AA amber (4.5:1+ on white) */
|
|
344
|
+
--status-warning: #A16207;
|
|
345
|
+
/* Info status */
|
|
346
|
+
--status-info: var(--primitive-color-blue-mondriaan-blauw-500);
|
|
347
|
+
/* Focus ring color */
|
|
348
|
+
--focus-ring: var(--primitive-color-blue-mondriaan-blauw-500);
|
|
349
|
+
/* Keyboard focus indicator */
|
|
350
|
+
--accessibility-focus-visible: var(--primitive-color-blue-mondriaan-blauw-500);
|
|
351
|
+
}
|
|
352
|
+
|
|
353
|
+
/* Dark mode semantic tokens */
|
|
354
|
+
[data-theme="dark"] {
|
|
355
|
+
/* Page background — dark */
|
|
356
|
+
--background-canvas: var(--primitive-color-neutral-900);
|
|
357
|
+
/* Card/surface — dark */
|
|
358
|
+
--background-surface: var(--primitive-color-neutral-800);
|
|
359
|
+
/* Muted background — dark */
|
|
360
|
+
--background-muted: var(--primitive-color-neutral-700);
|
|
361
|
+
/* Primary text — dark */
|
|
362
|
+
--text-primary: var(--primitive-color-neutral-50);
|
|
363
|
+
/* Secondary text — dark */
|
|
364
|
+
--text-secondary: var(--primitive-color-neutral-300);
|
|
365
|
+
/* Muted text — dark */
|
|
366
|
+
--text-muted: var(--primitive-color-neutral-500);
|
|
367
|
+
/* Text on light backgrounds — dark */
|
|
368
|
+
--text-inverse: var(--primitive-color-neutral-900);
|
|
369
|
+
/* Primary interactive — dark */
|
|
370
|
+
--interactive-primary: var(--primitive-color-blue-mondriaan-blauw-400);
|
|
371
|
+
/* Primary hover — dark */
|
|
372
|
+
--interactive-primary-hover: var(--primitive-color-blue-mondriaan-blauw-300);
|
|
373
|
+
/* Primary active — dark */
|
|
374
|
+
--interactive-primary-active: var(--primitive-color-blue-mondriaan-blauw-200);
|
|
375
|
+
/* Default border — dark */
|
|
376
|
+
--border-default: var(--primitive-color-neutral-700);
|
|
377
|
+
/* Strong border — dark */
|
|
378
|
+
--border-strong: var(--primitive-color-neutral-500);
|
|
379
|
+
/* Error — WCAG-compliant red (dark) */
|
|
380
|
+
--status-error: #EF4444;
|
|
381
|
+
/* Success — WCAG-compliant green (dark) */
|
|
382
|
+
--status-success: #22C55E;
|
|
383
|
+
/* Warning — WCAG-compliant amber (dark) */
|
|
384
|
+
--status-warning: #EAB308;
|
|
385
|
+
/* Info — dark */
|
|
386
|
+
--status-info: var(--primitive-color-blue-mondriaan-blauw-400);
|
|
387
|
+
/* Focus ring — dark */
|
|
388
|
+
--focus-ring: var(--primitive-color-blue-mondriaan-blauw-400);
|
|
389
|
+
/* Keyboard focus — dark */
|
|
390
|
+
--accessibility-focus-visible: var(--primitive-color-blue-mondriaan-blauw-400);
|
|
391
|
+
}
|