@ecopages/radiant-themes 0.0.0-stage → 0.2.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.
Files changed (66) hide show
  1. package/README.md +96 -2
  2. package/dist/compiled/themes/cloudflare/compact.css +848 -0
  3. package/dist/compiled/themes/cloudflare.css +831 -0
  4. package/dist/compiled/themes/github/compact.css +819 -0
  5. package/dist/compiled/themes/github.css +802 -0
  6. package/dist/compiled/themes/high-contrast/compact.css +707 -0
  7. package/dist/compiled/themes/high-contrast.css +690 -0
  8. package/dist/compiled/themes/macos/compact.css +815 -0
  9. package/dist/compiled/themes/macos-classic/compact.css +1083 -0
  10. package/dist/compiled/themes/macos-classic.css +1066 -0
  11. package/dist/compiled/themes/macos.css +798 -0
  12. package/dist/compiled/themes/material/compact.css +634 -0
  13. package/dist/compiled/themes/material.css +617 -0
  14. package/dist/compiled/themes/vercel/compact.css +811 -0
  15. package/dist/compiled/themes/vercel.css +794 -0
  16. package/dist/compiled/themes/vscode/compact.css +763 -0
  17. package/dist/compiled/themes/vscode.css +746 -0
  18. package/dist/compiled/themes/windows95/compact.css +959 -0
  19. package/dist/compiled/themes/windows95.css +942 -0
  20. package/dist/foundation.css +11 -0
  21. package/dist/themes/cloudflare/compact.css +2 -0
  22. package/dist/themes/cloudflare.css +4 -0
  23. package/dist/themes/github/compact.css +2 -0
  24. package/dist/themes/github.css +4 -0
  25. package/dist/themes/high-contrast/compact.css +2 -0
  26. package/dist/themes/high-contrast.css +4 -0
  27. package/dist/themes/macos/compact.css +2 -0
  28. package/dist/themes/macos-classic/compact.css +2 -0
  29. package/dist/themes/macos-classic.css +4 -0
  30. package/dist/themes/macos.css +4 -0
  31. package/dist/themes/material/compact.css +2 -0
  32. package/dist/themes/material.css +4 -0
  33. package/dist/themes/vercel/compact.css +2 -0
  34. package/dist/themes/vercel.css +4 -0
  35. package/dist/themes/vscode/compact.css +2 -0
  36. package/dist/themes/vscode.css +4 -0
  37. package/dist/themes/windows95/compact.css +2 -0
  38. package/dist/themes/windows95.css +4 -0
  39. package/dist/tokens/colors/cloudflare.css +53 -0
  40. package/dist/tokens/colors/github.css +33 -0
  41. package/dist/tokens/colors/high-contrast.css +53 -0
  42. package/dist/tokens/colors/macos-classic.css +66 -0
  43. package/dist/tokens/colors/macos.css +40 -0
  44. package/dist/tokens/colors/material.css +25 -0
  45. package/dist/tokens/colors/vercel.css +71 -0
  46. package/dist/tokens/colors/vscode.css +31 -0
  47. package/dist/tokens/colors/windows95.css +54 -0
  48. package/dist/tokens/components/cloudflare.css +147 -0
  49. package/dist/tokens/components/github.css +111 -0
  50. package/dist/tokens/components/high-contrast.css +108 -0
  51. package/dist/tokens/components/macos-classic.css +587 -0
  52. package/dist/tokens/components/macos.css +225 -0
  53. package/dist/tokens/components/material.css +82 -0
  54. package/dist/tokens/components/vercel.css +150 -0
  55. package/dist/tokens/components/vscode.css +72 -0
  56. package/dist/tokens/components/windows95.css +433 -0
  57. package/dist/tokens/roles/cloudflare.css +150 -0
  58. package/dist/tokens/roles/github.css +150 -0
  59. package/dist/tokens/roles/high-contrast.css +155 -0
  60. package/dist/tokens/roles/macos-classic.css +142 -0
  61. package/dist/tokens/roles/macos.css +155 -0
  62. package/dist/tokens/roles/material.css +144 -0
  63. package/dist/tokens/roles/vercel.css +141 -0
  64. package/dist/tokens/roles/vscode.css +143 -0
  65. package/dist/tokens/roles/windows95.css +142 -0
  66. package/package.json +144 -3
@@ -0,0 +1,831 @@
1
+ /*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
2
+ @layer properties;
3
+ :root {
4
+ --shadow-control: 0 1px 2px 0 rgb(0 0 0 / 0.05);
5
+ --shadow-overlay: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
6
+ --shadow-modal: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
7
+ --sheen-highlight: color-mix(in oklab, white 8%, transparent);
8
+ --sheen-shade: color-mix(in oklab, black 7%, transparent);
9
+ --sheen-image: linear-gradient(to bottom, var(--sheen-highlight), transparent 55%, var(--sheen-shade));
10
+ }
11
+ :root, :host {
12
+ --shadow-control: var(--shadow-control);
13
+ --shadow-overlay: var(--shadow-overlay);
14
+ --shadow-modal: var(--shadow-modal);
15
+ --font-sans: var(--font-sans);
16
+ --font-heading: var(--font-heading);
17
+ --font-mono: var(--font-mono);
18
+ --text-xs: var(--text-xs);
19
+ --text-sm: var(--text-sm);
20
+ --text-body: var(--text-body);
21
+ --text-lg: var(--text-lg);
22
+ --text-xl: var(--text-xl);
23
+ --text-2xl: var(--text-2xl);
24
+ --text-3xl: var(--text-3xl);
25
+ --text-4xl: var(--text-4xl);
26
+ --text-5xl: var(--text-5xl);
27
+ --font-weight-medium: var(--weight-medium);
28
+ --opacity-disabled: var(--opacity-disabled);
29
+ --opacity-muted: var(--opacity-muted);
30
+ --color-primary-container: var(--primary-container);
31
+ --color-on-primary-container: var(--on-primary-container);
32
+ --color-secondary: var(--secondary);
33
+ --color-on-secondary: var(--on-secondary);
34
+ --color-surface: var(--surface);
35
+ --color-on-surface: var(--on-surface);
36
+ --color-surface-container-high: var(--surface-container-high);
37
+ --color-border: var(--border);
38
+ --spacing-2: var(--space-2);
39
+ --radius-control: var(--radius-control);
40
+ --radius-container: var(--radius-container);
41
+ --radius-pill: var(--radius-pill);
42
+ }
43
+ :root {
44
+ --text-xs: 0.75rem;
45
+ --text-sm: 0.875rem;
46
+ --text-body: 1rem;
47
+ --text-lg: 1.125rem;
48
+ --text-xl: 1.25rem;
49
+ --text-2xl: 1.5rem;
50
+ --text-3xl: 1.875rem;
51
+ --text-4xl: 2.25rem;
52
+ --text-5xl: 3rem;
53
+ --text-label: 0.875rem;
54
+ --text-control: 0.875rem;
55
+ --text-control-input: 1rem;
56
+ --leading-body: 1.5;
57
+ --leading-relaxed: 1.625;
58
+ --leading-compact: 1.25;
59
+ --weight-regular: 400;
60
+ --weight-medium: 500;
61
+ --weight-semibold: 600;
62
+ --tracking-wide: 0.025em;
63
+ }
64
+ @media (min-width: 640px) {
65
+ :root {
66
+ --text-control-input: var(--text-control);
67
+ }
68
+ }
69
+ :root {
70
+ --duration-fast: 150ms;
71
+ --duration-normal: 200ms;
72
+ --duration-slow: 300ms;
73
+ --ease-standard: cubic-bezier(0.4, 0, 0.2, 1);
74
+ --ease-out: cubic-bezier(0, 0, 0.2, 1);
75
+ --color-black: oklch(0% 0 0);
76
+ --color-white: oklch(100% 0 0);
77
+ --border-width-hairline: 1px;
78
+ --border-width-thin: 1px;
79
+ --border-width-thick: 2px;
80
+ --rui-track-mix: 45%;
81
+ --rui-track-fill: var(--on-background);
82
+ @supports (color: color-mix(in lab, red, red)) {
83
+ --rui-track-fill: color-mix(in oklab, var(--on-background) var(--rui-track-mix), transparent);
84
+ }
85
+ --focus-ring-width: 2px;
86
+ --focus-ring-offset: 2px;
87
+ --opacity-disabled: 0.5;
88
+ --opacity-muted: 0.6;
89
+ --z-dropdown: 10;
90
+ --z-popover: 20;
91
+ --z-overlay: 30;
92
+ --z-modal: 40;
93
+ --z-toast: 50;
94
+ --size-control-sm: var(--space-8, 2rem);
95
+ --size-control-md: var(--space-10, 2.5rem);
96
+ --size-control-lg: var(--space-12, 3rem);
97
+ --size-icon-sm: 1rem;
98
+ --size-icon-md: 1.25rem;
99
+ }
100
+ @layer base {
101
+ :where(a[href], button, input:not([type='hidden']):not(.sr-only), select, textarea, [tabindex]):not(
102
+ [data-rui-focus-managed]
103
+ ):focus-visible {
104
+ outline: var(--focus-ring-width, 3px) solid var(--focus-ring);
105
+ outline-offset: var(--focus-ring-offset, 2px);
106
+ }
107
+ }
108
+ @media (prefers-contrast: more) {
109
+ html:root,
110
+ html:root[data-rui-theme],
111
+ html:root.dark[data-rui-theme] {
112
+ --rui-border-alpha: 100%;
113
+ --rui-control-border-color: var(--on-background);
114
+ --border: var(--rui-border-color);
115
+ @supports (color: color-mix(in lab, red, red)) {
116
+ --border: color-mix(in oklab, var(--rui-border-color) 45%, var(--on-background));
117
+ }
118
+ --opacity-disabled: 0.78;
119
+ --opacity-muted: 0.78;
120
+ --focus-ring-width: 3px;
121
+ --focus-ring-offset: 2px;
122
+ }
123
+ }
124
+ @media (prefers-reduced-motion: reduce) {
125
+ :root {
126
+ --duration-fast: 0ms;
127
+ --duration-normal: 0ms;
128
+ --duration-slow: 0ms;
129
+ }
130
+ *,
131
+ *::before,
132
+ *::after {
133
+ animation-duration: 0.01ms !important;
134
+ animation-iteration-count: 1 !important;
135
+ scroll-behavior: auto !important;
136
+ transition-duration: 0.01ms !important;
137
+ }
138
+ }
139
+ @media (forced-colors: active) {
140
+ html:root,
141
+ html:root.dark,
142
+ html:root[data-rui-theme],
143
+ html:root.dark[data-rui-theme] {
144
+ --primary: Highlight;
145
+ --on-primary: HighlightText;
146
+ --primary-container: Highlight;
147
+ --on-primary-container: HighlightText;
148
+ --primary-light: LinkText;
149
+ --primary-dark: Highlight;
150
+ --secondary: ButtonText;
151
+ --on-secondary: ButtonFace;
152
+ --secondary-container: ButtonFace;
153
+ --on-secondary-container: ButtonText;
154
+ --tertiary: ButtonText;
155
+ --on-tertiary: ButtonFace;
156
+ --tertiary-container: ButtonFace;
157
+ --on-tertiary-container: ButtonText;
158
+ --error: CanvasText;
159
+ --on-error: Canvas;
160
+ --error-container: Canvas;
161
+ --on-error-container: CanvasText;
162
+ --success: CanvasText;
163
+ --on-success: Canvas;
164
+ --success-container: Canvas;
165
+ --on-success-container: CanvasText;
166
+ --info: LinkText;
167
+ --on-info: Canvas;
168
+ --info-container: Canvas;
169
+ --on-info-container: CanvasText;
170
+ --warning: CanvasText;
171
+ --on-warning: Canvas;
172
+ --warning-container: Canvas;
173
+ --on-warning-container: CanvasText;
174
+ --neutral: GrayText;
175
+ --surface: Canvas;
176
+ --on-surface: CanvasText;
177
+ --surface-container-lowest: Canvas;
178
+ --on-surface-container-lowest: CanvasText;
179
+ --surface-container-low: Canvas;
180
+ --on-surface-container-low: CanvasText;
181
+ --surface-container: Canvas;
182
+ --on-surface-container: CanvasText;
183
+ --surface-container-high: Canvas;
184
+ --on-surface-container-high: CanvasText;
185
+ --surface-container-highest: Canvas;
186
+ --on-surface-container-highest: CanvasText;
187
+ --background: Canvas;
188
+ --on-background: CanvasText;
189
+ --border: ButtonText;
190
+ --focus-ring: Highlight;
191
+ --on-focus-ring: HighlightText;
192
+ --link: LinkText;
193
+ --overlay: Canvas;
194
+ --background-code: Canvas;
195
+ --on-background-code: CanvasText;
196
+ }
197
+ :where(.rui-button, .rui-input, .rui-textarea, .rui-select, .rui-checkbox__control, .rui-radio__control) {
198
+ forced-color-adjust: auto;
199
+ border-color: ButtonText;
200
+ }
201
+ :where([aria-selected='true'], [aria-checked='true'], [aria-pressed='true'], [aria-current='page']) {
202
+ border-color: Highlight;
203
+ }
204
+ @layer base {
205
+ :where(a[href], button, input:not([type='hidden']):not(.sr-only), select, textarea, [tabindex]):not(
206
+ [data-rui-focus-managed]
207
+ ):focus-visible {
208
+ outline: 3px solid Highlight !important;
209
+ outline-offset: 2px !important;
210
+ }
211
+ }
212
+ :disabled,
213
+ [aria-disabled='true'] {
214
+ color: GrayText;
215
+ opacity: 1;
216
+ }
217
+ }
218
+ :where(:root) {
219
+ --rui-density: 1;
220
+ }
221
+ :root {
222
+ --space-1: calc(0.25rem * var(--rui-density));
223
+ --space-2: calc(0.5rem * var(--rui-density));
224
+ --space-3: calc(0.75rem * var(--rui-density));
225
+ --space-4: calc(1rem * var(--rui-density));
226
+ --space-5: calc(1.25rem * var(--rui-density));
227
+ --space-6: calc(1.5rem * var(--rui-density));
228
+ --space-8: calc(2rem * var(--rui-density));
229
+ --space-10: calc(2.5rem * var(--rui-density));
230
+ --space-12: calc(3rem * var(--rui-density));
231
+ --space-16: calc(4rem * var(--rui-density));
232
+ --space-control-x: var(--space-3);
233
+ --space-control-y: var(--space-2);
234
+ --space-inline: var(--space-2);
235
+ --space-stack: var(--space-4);
236
+ --space-inset: var(--space-4);
237
+ --rui-radius-scale: 1;
238
+ --border-radius-none: 0;
239
+ --border-radius-xs: calc(0.25rem * var(--rui-radius-scale));
240
+ --border-radius-sm: calc(0.5rem * var(--rui-radius-scale));
241
+ --border-radius-md: calc(0.75rem * var(--rui-radius-scale));
242
+ --border-radius-lg: calc(1rem * var(--rui-radius-scale));
243
+ --border-radius-xl: calc(1.25rem * var(--rui-radius-scale));
244
+ --border-radius-2xl: calc(1.5rem * var(--rui-radius-scale));
245
+ --border-radius-3xl: calc(2rem * var(--rui-radius-scale));
246
+ --border-radius-full: 9999px;
247
+ --radius-control: var(--border-radius-md);
248
+ --radius-container: var(--border-radius-lg);
249
+ --radius-pill: var(--border-radius-full);
250
+ }
251
+ :where(:root) {
252
+ color-scheme: light;
253
+ }
254
+ :where(.dark) {
255
+ color-scheme: dark;
256
+ }
257
+ :where(:root),
258
+ :root[data-rui-theme='cloudflare'] {
259
+ --color-cloudflare-canvas: oklch(98.75% 0 0);
260
+ --color-cloudflare-elevated: oklch(98% 0 0);
261
+ --color-cloudflare-recessed: oklch(96% 0 0);
262
+ --color-cloudflare-base: oklch(100% 0 0);
263
+ --color-cloudflare-tint: oklch(97% 0 0);
264
+ --color-cloudflare-border: oklch(14.5% 0 0 / 10%);
265
+ --color-cloudflare-hairline: oklch(93.5% 0 0);
266
+ --color-cloudflare-shadow-edge: oklch(0% 0 0 / 12%);
267
+ --color-cloudflare-shadow-drop: oklch(0% 0 0 / 8%);
268
+ --color-cloudflare-border-strong: oklch(14.5% 0 0 / 50%);
269
+ --color-cloudflare-fg: oklch(14.5% 0 0);
270
+ --color-cloudflare-muted-fg: oklch(47% 0 0);
271
+ --color-cloudflare-blue: oklch(42.4% 0.199 265.638);
272
+ --color-cloudflare-blue-bright: oklch(57.7% 0.2324 260);
273
+ --color-cloudflare-orange: #cc3a00;
274
+ --color-cloudflare-orange-bright: #ff5e1e;
275
+ --color-cloudflare-orange-deep: #a82f00;
276
+ --color-cloudflare-orange-fill: #cc3a00;
277
+ --color-cloudflare-amber: #f5b400;
278
+ --color-cloudflare-amber-text: #7a5200;
279
+ --color-cloudflare-green: #1a7f37;
280
+ --color-cloudflare-red: #cf222e;
281
+ --color-cloudflare-purple: #8250df;
282
+ }
283
+ :where(.dark),
284
+ :root.dark[data-rui-theme='cloudflare'] {
285
+ --color-cloudflare-canvas: oklch(10% 0 0);
286
+ --color-cloudflare-elevated: oklch(12% 0 0);
287
+ --color-cloudflare-recessed: oklch(15% 0 0);
288
+ --color-cloudflare-base: oklch(17% 0 0);
289
+ --color-cloudflare-tint: oklch(26.9% 0 0);
290
+ --color-cloudflare-border: oklch(32% 0 0);
291
+ --color-cloudflare-hairline: oklch(26.9% 0 0);
292
+ --color-cloudflare-shadow-edge: oklch(100% 0 0 / 10%);
293
+ --color-cloudflare-shadow-drop: oklch(0% 0 0 / 30%);
294
+ --color-cloudflare-border-strong: oklch(100% 0 0 / 50%);
295
+ --color-cloudflare-fg: oklch(96% 0 0);
296
+ --color-cloudflare-muted-fg: oklch(72% 0 0);
297
+ --color-cloudflare-blue: oklch(70.7% 0.165 254.624);
298
+ --color-cloudflare-blue-bright: oklch(80% 0.13 255);
299
+ --color-cloudflare-orange: #ff5e1e;
300
+ --color-cloudflare-orange-bright: #ff8a5c;
301
+ --color-cloudflare-orange-deep: #cc3a00;
302
+ --color-cloudflare-orange-fill: #cc3a00;
303
+ --color-cloudflare-amber: #f5c04a;
304
+ --color-cloudflare-amber-text: #f5c04a;
305
+ --color-cloudflare-green: #3fb950;
306
+ --color-cloudflare-red: #ff7b72;
307
+ --color-cloudflare-purple: #b392f0;
308
+ }
309
+ :where(:root),
310
+ :root[data-rui-theme='cloudflare'] {
311
+ --gray-50: var(--color-cloudflare-canvas);
312
+ @supports (color: color-mix(in lab, red, red)) {
313
+ --gray-50: color-mix(in oklab, var(--color-cloudflare-canvas), var(--color-cloudflare-fg) 4%);
314
+ }
315
+ --gray-100: var(--color-cloudflare-canvas);
316
+ @supports (color: color-mix(in lab, red, red)) {
317
+ --gray-100: color-mix(in oklab, var(--color-cloudflare-canvas), var(--color-cloudflare-fg) 9%);
318
+ }
319
+ --gray-200: var(--color-cloudflare-canvas);
320
+ @supports (color: color-mix(in lab, red, red)) {
321
+ --gray-200: color-mix(in oklab, var(--color-cloudflare-canvas), var(--color-cloudflare-fg) 18%);
322
+ }
323
+ --gray-300: var(--color-cloudflare-canvas);
324
+ @supports (color: color-mix(in lab, red, red)) {
325
+ --gray-300: color-mix(in oklab, var(--color-cloudflare-canvas), var(--color-cloudflare-fg) 32%);
326
+ }
327
+ --gray-400: var(--color-cloudflare-canvas);
328
+ @supports (color: color-mix(in lab, red, red)) {
329
+ --gray-400: color-mix(in oklab, var(--color-cloudflare-canvas), var(--color-cloudflare-fg) 48%);
330
+ }
331
+ --gray-500: var(--color-cloudflare-canvas);
332
+ @supports (color: color-mix(in lab, red, red)) {
333
+ --gray-500: color-mix(in oklab, var(--color-cloudflare-canvas), var(--color-cloudflare-fg) 62%);
334
+ }
335
+ --gray-600: var(--color-cloudflare-canvas);
336
+ @supports (color: color-mix(in lab, red, red)) {
337
+ --gray-600: color-mix(in oklab, var(--color-cloudflare-canvas), var(--color-cloudflare-fg) 72%);
338
+ }
339
+ --gray-700: var(--color-cloudflare-canvas);
340
+ @supports (color: color-mix(in lab, red, red)) {
341
+ --gray-700: color-mix(in oklab, var(--color-cloudflare-canvas), var(--color-cloudflare-fg) 80%);
342
+ }
343
+ --gray-800: var(--color-cloudflare-canvas);
344
+ @supports (color: color-mix(in lab, red, red)) {
345
+ --gray-800: color-mix(in oklab, var(--color-cloudflare-canvas), var(--color-cloudflare-fg) 88%);
346
+ }
347
+ --gray-900: var(--color-cloudflare-canvas);
348
+ @supports (color: color-mix(in lab, red, red)) {
349
+ --gray-900: color-mix(in oklab, var(--color-cloudflare-canvas), var(--color-cloudflare-fg) 94%);
350
+ }
351
+ --gray-950: var(--color-cloudflare-fg);
352
+ --primary: var(--color-cloudflare-orange);
353
+ --on-primary: white;
354
+ --primary-light: var(--color-cloudflare-orange-bright);
355
+ --primary-dark: var(--color-cloudflare-orange-deep);
356
+ --primary-container: var(--color-cloudflare-orange-bright);
357
+ @supports (color: color-mix(in lab, red, red)) {
358
+ --primary-container: color-mix(in oklab, var(--color-cloudflare-orange-bright), white 88%);
359
+ }
360
+ --on-primary-container: var(--color-cloudflare-orange);
361
+ @supports (color: color-mix(in lab, red, red)) {
362
+ --on-primary-container: color-mix(in oklab, var(--color-cloudflare-orange), black 45%);
363
+ }
364
+ --secondary: var(--color-cloudflare-recessed);
365
+ --on-secondary: var(--color-cloudflare-fg);
366
+ --secondary-light: var(--color-cloudflare-elevated);
367
+ --secondary-dark: var(--color-cloudflare-recessed);
368
+ @supports (color: color-mix(in lab, red, red)) {
369
+ --secondary-dark: color-mix(in oklab, var(--color-cloudflare-recessed), black 8%);
370
+ }
371
+ --secondary-container: var(--color-cloudflare-recessed);
372
+ --on-secondary-container: var(--color-cloudflare-fg);
373
+ --tertiary: var(--color-cloudflare-purple);
374
+ --on-tertiary: white;
375
+ --tertiary-container: var(--color-cloudflare-purple);
376
+ @supports (color: color-mix(in lab, red, red)) {
377
+ --tertiary-container: color-mix(in oklab, var(--color-cloudflare-purple), white 90%);
378
+ }
379
+ --on-tertiary-container: var(--color-cloudflare-purple);
380
+ @supports (color: color-mix(in lab, red, red)) {
381
+ --on-tertiary-container: color-mix(in oklab, var(--color-cloudflare-purple), black 60%);
382
+ }
383
+ --error: var(--color-cloudflare-red);
384
+ --on-error: white;
385
+ --error-light: var(--color-cloudflare-red);
386
+ @supports (color: color-mix(in lab, red, red)) {
387
+ --error-light: color-mix(in oklab, var(--color-cloudflare-red), white 30%);
388
+ }
389
+ --error-dark: var(--color-cloudflare-red);
390
+ @supports (color: color-mix(in lab, red, red)) {
391
+ --error-dark: color-mix(in oklab, var(--color-cloudflare-red), black 30%);
392
+ }
393
+ --error-container: var(--color-cloudflare-red);
394
+ @supports (color: color-mix(in lab, red, red)) {
395
+ --error-container: color-mix(in oklab, var(--color-cloudflare-red), white 91%);
396
+ }
397
+ --on-error-container: var(--color-cloudflare-red);
398
+ @supports (color: color-mix(in lab, red, red)) {
399
+ --on-error-container: color-mix(in oklab, var(--color-cloudflare-red), black 60%);
400
+ }
401
+ --success: var(--color-cloudflare-green);
402
+ --on-success: white;
403
+ --success-light: var(--color-cloudflare-green);
404
+ @supports (color: color-mix(in lab, red, red)) {
405
+ --success-light: color-mix(in oklab, var(--color-cloudflare-green), white 30%);
406
+ }
407
+ --success-dark: var(--color-cloudflare-green);
408
+ @supports (color: color-mix(in lab, red, red)) {
409
+ --success-dark: color-mix(in oklab, var(--color-cloudflare-green), black 30%);
410
+ }
411
+ --success-container: var(--color-cloudflare-green);
412
+ @supports (color: color-mix(in lab, red, red)) {
413
+ --success-container: color-mix(in oklab, var(--color-cloudflare-green), white 90%);
414
+ }
415
+ --on-success-container: var(--color-cloudflare-green);
416
+ @supports (color: color-mix(in lab, red, red)) {
417
+ --on-success-container: color-mix(in oklab, var(--color-cloudflare-green), black 60%);
418
+ }
419
+ --info: var(--color-cloudflare-blue);
420
+ --on-info: white;
421
+ --info-light: var(--color-cloudflare-blue);
422
+ @supports (color: color-mix(in lab, red, red)) {
423
+ --info-light: color-mix(in oklab, var(--color-cloudflare-blue), white 30%);
424
+ }
425
+ --info-dark: var(--color-cloudflare-blue);
426
+ @supports (color: color-mix(in lab, red, red)) {
427
+ --info-dark: color-mix(in oklab, var(--color-cloudflare-blue), black 45%);
428
+ }
429
+ --info-container: var(--color-cloudflare-blue);
430
+ @supports (color: color-mix(in lab, red, red)) {
431
+ --info-container: color-mix(in oklab, var(--color-cloudflare-blue), white 90%);
432
+ }
433
+ --on-info-container: var(--color-cloudflare-blue);
434
+ @supports (color: color-mix(in lab, red, red)) {
435
+ --on-info-container: color-mix(in oklab, var(--color-cloudflare-blue), black 60%);
436
+ }
437
+ --warning: var(--color-cloudflare-amber-text);
438
+ --on-warning: white;
439
+ --warning-light: var(--color-cloudflare-amber-text);
440
+ @supports (color: color-mix(in lab, red, red)) {
441
+ --warning-light: color-mix(in oklab, var(--color-cloudflare-amber-text), white 30%);
442
+ }
443
+ --warning-dark: var(--color-cloudflare-amber-text);
444
+ @supports (color: color-mix(in lab, red, red)) {
445
+ --warning-dark: color-mix(in oklab, var(--color-cloudflare-amber-text), black 30%);
446
+ }
447
+ --warning-container: var(--color-cloudflare-amber);
448
+ @supports (color: color-mix(in lab, red, red)) {
449
+ --warning-container: color-mix(in oklab, var(--color-cloudflare-amber), white 88%);
450
+ }
451
+ --on-warning-container: var(--color-cloudflare-amber);
452
+ @supports (color: color-mix(in lab, red, red)) {
453
+ --on-warning-container: color-mix(in oklab, var(--color-cloudflare-amber), black 60%);
454
+ }
455
+ --neutral: var(--color-cloudflare-muted-fg);
456
+ --surface: var(--color-cloudflare-base);
457
+ --on-surface: var(--color-cloudflare-fg);
458
+ --surface-container-lowest: var(--color-cloudflare-base);
459
+ --on-surface-container-lowest: var(--color-cloudflare-fg);
460
+ --surface-container-low: var(--color-cloudflare-elevated);
461
+ --on-surface-container-low: var(--color-cloudflare-fg);
462
+ --surface-container: var(--color-cloudflare-recessed);
463
+ --on-surface-container: var(--color-cloudflare-fg);
464
+ --surface-container-high: var(--color-cloudflare-recessed);
465
+ @supports (color: color-mix(in lab, red, red)) {
466
+ --surface-container-high: color-mix(in oklab, var(--color-cloudflare-recessed), var(--color-cloudflare-tint) 50%);
467
+ }
468
+ --on-surface-container-high: var(--color-cloudflare-fg);
469
+ --surface-container-highest: var(--color-cloudflare-tint);
470
+ --on-surface-container-highest: var(--color-cloudflare-fg);
471
+ --background: var(--color-cloudflare-canvas);
472
+ --on-background: var(--color-cloudflare-fg);
473
+ --rui-border-color: var(--color-cloudflare-border);
474
+ --rui-control-border-color: var(--color-cloudflare-border-strong);
475
+ --border: var(--rui-border-color);
476
+ --focus-ring: var(--color-cloudflare-blue-bright);
477
+ --on-focus-ring: white;
478
+ --link: var(--color-cloudflare-blue);
479
+ --overlay: oklch(0% 0 0 / 0.45);
480
+ --background-code: var(--color-cloudflare-recessed);
481
+ --on-background-code: var(--color-cloudflare-fg);
482
+ }
483
+ :where(.dark),
484
+ :root.dark[data-rui-theme='cloudflare'] {
485
+ --gray-50: var(--color-cloudflare-canvas);
486
+ @supports (color: color-mix(in lab, red, red)) {
487
+ --gray-50: color-mix(in oklab, var(--color-cloudflare-canvas), white 96%);
488
+ }
489
+ --gray-100: var(--color-cloudflare-canvas);
490
+ @supports (color: color-mix(in lab, red, red)) {
491
+ --gray-100: color-mix(in oklab, var(--color-cloudflare-canvas), white 91%);
492
+ }
493
+ --gray-200: var(--color-cloudflare-canvas);
494
+ @supports (color: color-mix(in lab, red, red)) {
495
+ --gray-200: color-mix(in oklab, var(--color-cloudflare-canvas), white 82%);
496
+ }
497
+ --gray-300: var(--color-cloudflare-canvas);
498
+ @supports (color: color-mix(in lab, red, red)) {
499
+ --gray-300: color-mix(in oklab, var(--color-cloudflare-canvas), white 68%);
500
+ }
501
+ --gray-400: var(--color-cloudflare-canvas);
502
+ @supports (color: color-mix(in lab, red, red)) {
503
+ --gray-400: color-mix(in oklab, var(--color-cloudflare-canvas), white 52%);
504
+ }
505
+ --gray-500: var(--color-cloudflare-canvas);
506
+ @supports (color: color-mix(in lab, red, red)) {
507
+ --gray-500: color-mix(in oklab, var(--color-cloudflare-canvas), white 38%);
508
+ }
509
+ --gray-600: var(--color-cloudflare-canvas);
510
+ @supports (color: color-mix(in lab, red, red)) {
511
+ --gray-600: color-mix(in oklab, var(--color-cloudflare-canvas), white 28%);
512
+ }
513
+ --gray-700: var(--color-cloudflare-canvas);
514
+ @supports (color: color-mix(in lab, red, red)) {
515
+ --gray-700: color-mix(in oklab, var(--color-cloudflare-canvas), white 20%);
516
+ }
517
+ --gray-800: var(--color-cloudflare-canvas);
518
+ @supports (color: color-mix(in lab, red, red)) {
519
+ --gray-800: color-mix(in oklab, var(--color-cloudflare-canvas), white 12%);
520
+ }
521
+ --gray-900: var(--color-cloudflare-canvas);
522
+ @supports (color: color-mix(in lab, red, red)) {
523
+ --gray-900: color-mix(in oklab, var(--color-cloudflare-canvas), white 6%);
524
+ }
525
+ --gray-950: var(--color-cloudflare-canvas);
526
+ --primary: var(--color-cloudflare-orange);
527
+ --on-primary: #1a1a1a;
528
+ --primary-light: var(--color-cloudflare-orange-bright);
529
+ --primary-dark: var(--color-cloudflare-orange-deep);
530
+ --primary-container: oklch(30% 0.07 55);
531
+ --on-primary-container: oklch(92% 0.05 65);
532
+ --secondary: var(--color-cloudflare-recessed);
533
+ --on-secondary: var(--color-cloudflare-fg);
534
+ --secondary-light: var(--color-cloudflare-base);
535
+ --secondary-dark: var(--color-cloudflare-tint);
536
+ --secondary-container: var(--color-cloudflare-recessed);
537
+ --on-secondary-container: var(--color-cloudflare-fg);
538
+ --tertiary: var(--color-cloudflare-purple);
539
+ --on-tertiary: oklch(20% 0.03 290);
540
+ --tertiary-container: oklch(32% 0.06 290);
541
+ --on-tertiary-container: oklch(92% 0.04 290);
542
+ --error: var(--color-cloudflare-red);
543
+ --on-error: oklch(20% 0.04 25);
544
+ --error-container: oklch(32% 0.08 25);
545
+ --on-error-container: oklch(92% 0.04 25);
546
+ --success: var(--color-cloudflare-green);
547
+ --on-success: oklch(16% 0.04 150);
548
+ --success-container: oklch(30% 0.06 150);
549
+ --on-success-container: oklch(91% 0.05 150);
550
+ --info: var(--color-cloudflare-blue);
551
+ --on-info: oklch(14% 0.04 255);
552
+ --info-container: oklch(28% 0.07 255);
553
+ --on-info-container: oklch(91% 0.04 255);
554
+ --warning: var(--color-cloudflare-amber-text);
555
+ --on-warning: oklch(22% 0.05 85);
556
+ --warning-container: oklch(33% 0.06 85);
557
+ --on-warning-container: oklch(94% 0.05 90);
558
+ --neutral: var(--color-cloudflare-muted-fg);
559
+ --surface: var(--color-cloudflare-base);
560
+ --on-surface: var(--color-cloudflare-fg);
561
+ --surface-container-lowest: var(--color-cloudflare-canvas);
562
+ --on-surface-container-lowest: var(--color-cloudflare-fg);
563
+ --surface-container-low: var(--color-cloudflare-elevated);
564
+ --on-surface-container-low: var(--color-cloudflare-fg);
565
+ --surface-container: var(--color-cloudflare-recessed);
566
+ --on-surface-container: var(--color-cloudflare-fg);
567
+ --surface-container-high: var(--color-cloudflare-base);
568
+ --on-surface-container-high: var(--color-cloudflare-fg);
569
+ --surface-container-highest: var(--color-cloudflare-tint);
570
+ --on-surface-container-highest: var(--color-cloudflare-fg);
571
+ --background: var(--color-cloudflare-canvas);
572
+ --on-background: var(--color-cloudflare-fg);
573
+ --rui-border-color: var(--color-cloudflare-border);
574
+ --rui-control-border-color: var(--color-cloudflare-border-strong);
575
+ --border: var(--rui-border-color);
576
+ --focus-ring: var(--color-cloudflare-blue-bright);
577
+ --on-focus-ring: oklch(14% 0.04 255);
578
+ --link: var(--color-cloudflare-blue-bright);
579
+ --overlay: oklch(0% 0 0 / 0.72);
580
+ --background-code: var(--color-cloudflare-recessed);
581
+ --on-background-code: var(--color-cloudflare-fg);
582
+ }
583
+ :root,
584
+ :root[data-rui-theme='cloudflare'] {
585
+ --font-sans: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
586
+ --font-heading: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
587
+ --font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
588
+ --rui-border-alpha: 100%;
589
+ --border-radius-xs: 0.125rem;
590
+ --border-radius-sm: 0.25rem;
591
+ --border-radius-md: 0.375rem;
592
+ --border-radius-lg: 0.5rem;
593
+ --border-radius-xl: 0.75rem;
594
+ --border-radius-2xl: 1rem;
595
+ --border-radius-3xl: 1.25rem;
596
+ --radius-control: var(--border-radius-lg);
597
+ --radius-container: var(--border-radius-xl);
598
+ }
599
+ @layer components {
600
+ :root .rui-button--filled {
601
+ background-color: var(--color-cloudflare-orange-fill);
602
+ color: #ffffff;
603
+ box-shadow: 0 0 0 1px var(--color-cloudflare-orange-fill),
604
+ 0 1px 2px oklch(0% 0 0 / 5%);
605
+ @supports (color: color-mix(in lab, red, red)) {
606
+ box-shadow: 0 0 0 1px color-mix(in oklch, var(--color-cloudflare-orange-fill), black 10%),
607
+ 0 1px 2px oklch(0% 0 0 / 5%);
608
+ }
609
+ }
610
+ :root .rui-button--filled:hover:not(:disabled) {
611
+ background-color: #b83400;
612
+ color: #ffffff;
613
+ }
614
+ :root .rui-button--filled:active:not(:disabled),
615
+ :root .rui-button--filled[aria-pressed='true'] {
616
+ background-color: #a32e00;
617
+ color: #ffffff;
618
+ }
619
+ :root.dark .rui-button--destructive {
620
+ background-color: #d1242f;
621
+ color: #ffffff;
622
+ }
623
+ :root.dark .rui-button--destructive:hover:not(:disabled) {
624
+ background-color: #c3272d;
625
+ }
626
+ :root.dark .rui-button--destructive:active:not(:disabled) {
627
+ background-color: #ae1f25;
628
+ }
629
+ :root .rui-button {
630
+ border-radius: var(--radius-control);
631
+ border-style: var(--tw-border-style);
632
+ border-width: 1px;
633
+ border-color: transparent;
634
+ --tw-font-weight: var(--font-weight-medium);
635
+ font-weight: var(--font-weight-medium);
636
+ --tw-shadow: 0 0 #0000;
637
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
638
+ transition: none;
639
+ }
640
+ :root .rui-button--secondary {
641
+ border-style: var(--tw-border-style);
642
+ border-width: 1px;
643
+ border-color: var(--color-border);
644
+ background-color: var(--color-secondary);
645
+ color: var(--color-on-secondary);
646
+ --tw-shadow: 0 0 #0000;
647
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
648
+ }
649
+ :root .rui-button--secondary:hover:not(:disabled),
650
+ :root .rui-button--outline:hover:not(:disabled),
651
+ :root .rui-button--ghost:hover:not(:disabled) {
652
+ background-color: var(--color-surface-container-high);
653
+ }
654
+ :root .rui-button--outline,
655
+ :root .rui-input,
656
+ :root .rui-textarea,
657
+ :root .rui-select__control {
658
+ border-color: var(--color-border);
659
+ background-color: var(--color-surface);
660
+ color: var(--color-on-surface);
661
+ --tw-shadow: 0 0 #0000;
662
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
663
+ border-color: var(--rui-control-border-color);
664
+ }
665
+ :root .rui-checkbox__control,
666
+ :root .rui-radio__control {
667
+ border-color: var(--color-border);
668
+ background-color: var(--color-surface);
669
+ border-color: var(--rui-control-border-color);
670
+ }
671
+ :root .rui-dialog__surface,
672
+ :root .rui-popover-host,
673
+ :root .rui-hover-card__content,
674
+ :root .rui-select__listbox,
675
+ :root .rui-calendar {
676
+ border-radius: var(--radius-container);
677
+ border-style: var(--tw-border-style);
678
+ border-width: 0px;
679
+ background-color: var(--color-surface);
680
+ box-shadow: 0 0 0 1px var(--color-cloudflare-shadow-edge),
681
+ 0 4px 12px var(--color-cloudflare-shadow-drop);
682
+ }
683
+ :root rui-tabs[variant='boxed'] {
684
+ border-radius: var(--radius-container);
685
+ border-style: var(--tw-border-style);
686
+ border-width: 1px;
687
+ border-color: var(--color-border);
688
+ background-color: var(--color-surface);
689
+ --tw-shadow: 0 0 #0000;
690
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
691
+ }
692
+ :root rui-tabs[variant='boxed'] .rui-tabs__list {
693
+ border-bottom-style: var(--tw-border-style);
694
+ border-bottom-width: 1px;
695
+ background-color: transparent;
696
+ padding-inline: var(--spacing-2);
697
+ padding-top: var(--spacing-2);
698
+ border-color: var(--color-cloudflare-hairline);
699
+ }
700
+ :root rui-tabs[variant='boxed'] .rui-tabs__tab:hover:not([aria-selected='true']) {
701
+ background-color: var(--color-cloudflare-tint);
702
+ color: var(--color-cloudflare-fg);
703
+ opacity: 1;
704
+ transition: none;
705
+ }
706
+ :root rui-tabs[variant='boxed'] .rui-tabs__tab[aria-selected='true'] {
707
+ color: var(--color-on-surface);
708
+ border-bottom-color: var(--primary);
709
+ }
710
+ :root .rui-listbox__option[aria-selected='true'],
711
+ :root .rui-menu-button__item[aria-checked='true'],
712
+ :root .rui-sidebar__menu-button--active {
713
+ background-color: var(--color-primary-container);
714
+ color: var(--color-on-primary-container);
715
+ }
716
+ :root .rui-alert {
717
+ border-radius: var(--radius-control);
718
+ --tw-shadow: 0 0 #0000;
719
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
720
+ }
721
+ :root .rui-toast__content {
722
+ border-radius: var(--radius-control);
723
+ border-style: var(--tw-border-style);
724
+ border-width: 1px;
725
+ border-color: var(--color-border);
726
+ background-color: var(--color-surface);
727
+ color: var(--color-on-surface);
728
+ --tw-shadow: 0 0 #0000;
729
+ box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
730
+ }
731
+ :root .rui-separator,
732
+ :root .rui-sidebar__separator {
733
+ background-color: var(--color-border);
734
+ }
735
+ }
736
+ @property --tw-border-style {
737
+ syntax: "*";
738
+ inherits: false;
739
+ initial-value: solid;
740
+ }
741
+ @property --tw-font-weight {
742
+ syntax: "*";
743
+ inherits: false;
744
+ }
745
+ @property --tw-shadow {
746
+ syntax: "*";
747
+ inherits: false;
748
+ initial-value: 0 0 #0000;
749
+ }
750
+ @property --tw-shadow-color {
751
+ syntax: "*";
752
+ inherits: false;
753
+ }
754
+ @property --tw-shadow-alpha {
755
+ syntax: "<percentage>";
756
+ inherits: false;
757
+ initial-value: 100%;
758
+ }
759
+ @property --tw-inset-shadow {
760
+ syntax: "*";
761
+ inherits: false;
762
+ initial-value: 0 0 #0000;
763
+ }
764
+ @property --tw-inset-shadow-color {
765
+ syntax: "*";
766
+ inherits: false;
767
+ }
768
+ @property --tw-inset-shadow-alpha {
769
+ syntax: "<percentage>";
770
+ inherits: false;
771
+ initial-value: 100%;
772
+ }
773
+ @property --tw-ring-color {
774
+ syntax: "*";
775
+ inherits: false;
776
+ }
777
+ @property --tw-ring-shadow {
778
+ syntax: "*";
779
+ inherits: false;
780
+ initial-value: 0 0 #0000;
781
+ }
782
+ @property --tw-inset-ring-color {
783
+ syntax: "*";
784
+ inherits: false;
785
+ }
786
+ @property --tw-inset-ring-shadow {
787
+ syntax: "*";
788
+ inherits: false;
789
+ initial-value: 0 0 #0000;
790
+ }
791
+ @property --tw-ring-inset {
792
+ syntax: "*";
793
+ inherits: false;
794
+ }
795
+ @property --tw-ring-offset-width {
796
+ syntax: "<length>";
797
+ inherits: false;
798
+ initial-value: 0px;
799
+ }
800
+ @property --tw-ring-offset-color {
801
+ syntax: "*";
802
+ inherits: false;
803
+ initial-value: #fff;
804
+ }
805
+ @property --tw-ring-offset-shadow {
806
+ syntax: "*";
807
+ inherits: false;
808
+ initial-value: 0 0 #0000;
809
+ }
810
+ @layer properties {
811
+ @supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
812
+ *, ::before, ::after, ::backdrop {
813
+ --tw-border-style: solid;
814
+ --tw-font-weight: initial;
815
+ --tw-shadow: 0 0 #0000;
816
+ --tw-shadow-color: initial;
817
+ --tw-shadow-alpha: 100%;
818
+ --tw-inset-shadow: 0 0 #0000;
819
+ --tw-inset-shadow-color: initial;
820
+ --tw-inset-shadow-alpha: 100%;
821
+ --tw-ring-color: initial;
822
+ --tw-ring-shadow: 0 0 #0000;
823
+ --tw-inset-ring-color: initial;
824
+ --tw-inset-ring-shadow: 0 0 #0000;
825
+ --tw-ring-inset: initial;
826
+ --tw-ring-offset-width: 0px;
827
+ --tw-ring-offset-color: #fff;
828
+ --tw-ring-offset-shadow: 0 0 #0000;
829
+ }
830
+ }
831
+ }