@c2n/theme 0.0.6

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/theme.css ADDED
@@ -0,0 +1,662 @@
1
+ /* GENERATED by @c2n/theme scripts/theme-generator. Do not edit by hand. */
2
+ /*
3
+ * Design tokens of @c2n/theme. Light values on the root, dark values under [data-theme='dark'] / .c2-dark and
4
+ * as the OS preference fallback. Override any token on :root (or on a subtree) to theme every component.
5
+ */
6
+ :root,
7
+ :host,
8
+ [data-theme='light'],
9
+ .c2-light {
10
+ color-scheme: light;
11
+ --c2-theme--color-primary: #0265dc;
12
+ --c2-theme--color-primary-hover: #0154b8;
13
+ --c2-theme--color-primary-active: #01469a;
14
+ --c2-theme--color-on-primary: #ffffff;
15
+ --c2-theme--color-primary-container: #edf1fe;
16
+ --c2-theme--color-surface: #ffffff;
17
+ --c2-theme--color-surface-container-low: #fafafa;
18
+ --c2-theme--color-surface-container: #f4f4f5;
19
+ --c2-theme--color-on-surface: #18181b;
20
+ --c2-theme--color-on-surface-variant: #71717a;
21
+ --c2-theme--color-outline: #d4d4d8;
22
+ --c2-theme--color-outline-variant: #e4e4e7;
23
+ --c2-theme--color-outline-strong: #a1a1aa;
24
+ --c2-theme--color-error: #dc2626;
25
+ --c2-theme--color-scrim: rgba(9, 9, 11, 0.45);
26
+ --c2-theme--color-inverse-surface: #18181b;
27
+ --c2-theme--color-on-inverse-surface: #fafafa;
28
+ --c2-theme--font-size-sm: 12px;
29
+ --c2-theme--font-size-md: 14px;
30
+ --c2-theme--font-weight-medium: 500;
31
+ --c2-theme--font-weight-semibold: 600;
32
+ --c2-theme--radius-sm: 4px;
33
+ --c2-theme--radius-md: 6px;
34
+ --c2-theme--radius-lg: 8px;
35
+ --c2-theme--radius-xl: 14px;
36
+ --c2-theme--radius-full: 999px;
37
+ --c2-theme--border-width: 1px;
38
+ --c2-theme--focus-ring: 2px solid rgba(2, 101, 220, 0.4);
39
+ --c2-theme--disabled-opacity: 0.38;
40
+ --c2-theme--motion-scale: 1;
41
+ --c2-theme--shadow-md: 0 8px 24px rgba(24, 24, 27, 0.08);
42
+ --c2-theme--shadow-lg: 0 24px 60px rgba(0, 0, 0, 0.25);
43
+ }
44
+
45
+ [data-theme='dark'],
46
+ .c2-dark {
47
+ color-scheme: dark;
48
+ --c2-theme--color-primary: #5aa3ff;
49
+ --c2-theme--color-primary-hover: #7bb6ff;
50
+ --c2-theme--color-primary-active: #9cc9ff;
51
+ --c2-theme--color-on-primary: #032a5c;
52
+ --c2-theme--color-primary-container: #0f2d5c;
53
+ --c2-theme--color-surface: #18181b;
54
+ --c2-theme--color-surface-container-low: #1f1f23;
55
+ --c2-theme--color-surface-container: #27272a;
56
+ --c2-theme--color-on-surface: #f4f4f5;
57
+ --c2-theme--color-on-surface-variant: #a1a1aa;
58
+ --c2-theme--color-outline: #3f3f46;
59
+ --c2-theme--color-outline-variant: #27272a;
60
+ --c2-theme--color-outline-strong: #52525b;
61
+ --c2-theme--color-error: #f87171;
62
+ --c2-theme--color-scrim: rgba(0, 0, 0, 0.6);
63
+ --c2-theme--color-inverse-surface: #f4f4f5;
64
+ --c2-theme--color-on-inverse-surface: #18181b;
65
+ --c2-theme--focus-ring: 2px solid rgba(90, 163, 255, 0.5);
66
+ --c2-theme--shadow-md: 0 8px 24px rgba(0, 0, 0, 0.45);
67
+ --c2-theme--shadow-lg: 0 24px 60px rgba(0, 0, 0, 0.6);
68
+ }
69
+
70
+ @media (prefers-color-scheme: dark) {
71
+ :root:not([data-theme='light']):not(.c2-light) {
72
+ color-scheme: dark;
73
+ --c2-theme--color-primary: #5aa3ff;
74
+ --c2-theme--color-primary-hover: #7bb6ff;
75
+ --c2-theme--color-primary-active: #9cc9ff;
76
+ --c2-theme--color-on-primary: #032a5c;
77
+ --c2-theme--color-primary-container: #0f2d5c;
78
+ --c2-theme--color-surface: #18181b;
79
+ --c2-theme--color-surface-container-low: #1f1f23;
80
+ --c2-theme--color-surface-container: #27272a;
81
+ --c2-theme--color-on-surface: #f4f4f5;
82
+ --c2-theme--color-on-surface-variant: #a1a1aa;
83
+ --c2-theme--color-outline: #3f3f46;
84
+ --c2-theme--color-outline-variant: #27272a;
85
+ --c2-theme--color-outline-strong: #52525b;
86
+ --c2-theme--color-error: #f87171;
87
+ --c2-theme--color-scrim: rgba(0, 0, 0, 0.6);
88
+ --c2-theme--color-inverse-surface: #f4f4f5;
89
+ --c2-theme--color-on-inverse-surface: #18181b;
90
+ --c2-theme--focus-ring: 2px solid rgba(90, 163, 255, 0.5);
91
+ --c2-theme--shadow-md: 0 8px 24px rgba(0, 0, 0, 0.45);
92
+ --c2-theme--shadow-lg: 0 24px 60px rgba(0, 0, 0, 0.6);
93
+ }
94
+ }
95
+
96
+ /* GENERATED by @c2n/theme scripts/theme-generator. Do not edit by hand. */
97
+ /*
98
+ * Base theme: maps every @c2n component CSS variable onto the --c2-theme--* tokens, keeping the component's
99
+ * original default as the innermost fallback. Setting a component variable yourself always wins.
100
+ */
101
+ /* @c2n/accordion */
102
+ :root,
103
+ :host {
104
+ --c2-accordion--border-radius: var(--c2-theme--radius-lg, 8px);
105
+ --c2-accordion--transition-duration: calc(300ms * var(--c2-theme--motion-scale, 1));
106
+ }
107
+
108
+ /* @c2n/avatar */
109
+ :root,
110
+ :host {
111
+ --c2-avatar--border-top-left-radius: var(--c2-theme--radius-full, 999px);
112
+ --c2-avatar--border-top-right-radius: var(--c2-theme--radius-full, 999px);
113
+ --c2-avatar--border-bottom-left-radius: var(--c2-theme--radius-full, 999px);
114
+ --c2-avatar--border-bottom-right-radius: var(--c2-theme--radius-full, 999px);
115
+ --c2-avatar--font-weight: var(--c2-theme--font-weight-semibold, 600);
116
+ --c2-avatar__badge--border: 2px solid var(--c2-theme--color-surface, #ffffff);
117
+ }
118
+
119
+ /* @c2n/badge */
120
+ :root,
121
+ :host {
122
+ --c2-badge--border-radius: var(--c2-theme--radius-full, 999px);
123
+ --c2-badge--font-size: var(--c2-theme--font-size-sm, 12px);
124
+ --c2-badge--font-weight: var(--c2-theme--font-weight-medium, 500);
125
+ --c2-badge__neutral--background: var(--c2-theme--color-surface-container, #f4f4f5);
126
+ --c2-badge__neutral--color: var(--c2-theme--color-on-surface-variant, #52525b);
127
+ --c2-badge__primary--background: var(--c2-theme--color-primary-container, #edf1fe);
128
+ --c2-badge__primary--color: var(--c2-theme--color-primary, #0265dc);
129
+ --c2-badge__danger--color: var(--c2-theme--color-error, #dc2626);
130
+ --c2-badge__pulse--animation-duration: calc(1.5s * var(--c2-theme--motion-scale, 1));
131
+ --c2-badge__anchor--border: 2px solid var(--c2-theme--color-surface, #ffffff);
132
+ }
133
+
134
+ /* @c2n/breadcrumb */
135
+ :root,
136
+ :host {
137
+ --c2-breadcrumb__separator--color: var(--c2-theme--color-on-surface-variant, #a1a1aa);
138
+ --c2-breadcrumb__item--color: var(--c2-theme--color-on-surface-variant, #71717a);
139
+ --c2-breadcrumb__item--font-size: var(--c2-theme--font-size-md, 14px);
140
+ --c2-breadcrumb__item--font-weight: var(--c2-theme--font-weight-medium, 500);
141
+ --c2-breadcrumb__item--border-radius: var(--c2-theme--radius-sm, 4px);
142
+ --c2-breadcrumb__item__hover--color: var(--c2-theme--color-on-surface, #18181b);
143
+ --c2-breadcrumb__item__current--color: var(--c2-theme--color-on-surface, #18181b);
144
+ --c2-breadcrumb__item__current--font-weight: var(--c2-theme--font-weight-medium, 500);
145
+ }
146
+
147
+ /* @c2n/button */
148
+ :root,
149
+ :host {
150
+ --c2-button__container--border-radius: var(--c2-theme--radius-md, 6px);
151
+ --c2-button__container--background-color: var(--c2-theme--color-primary, rgb(2, 101, 220));
152
+ --c2-button__container--color: var(--c2-theme--color-on-primary, #ffffff);
153
+ --c2-button__container--font-size: var(--c2-theme--font-size-md, 14px);
154
+ --c2-button__container--font-weight: var(--c2-theme--font-weight-medium, 500);
155
+ --c2-button__container__hover--background-color: var(--c2-theme--color-primary-hover, rgb(1, 84, 184));
156
+ --c2-button__container__active--background-color: var(--c2-theme--color-primary-active, rgb(1, 70, 154));
157
+ --c2-button__container__focus--outline: var(--c2-theme--focus-ring, 2px solid rgba(2, 101, 220, 0.4));
158
+ --c2-button__container__disabled--opacity: var(--c2-theme--disabled-opacity, 0.38);
159
+ --c2-button__running-icon--animation-duration: calc(800ms * var(--c2-theme--motion-scale, 1));
160
+ }
161
+
162
+ /* @c2n/button-group */
163
+ :root,
164
+ :host {
165
+ --c2-button-group--border-radius: var(--c2-theme--radius-md, 6px);
166
+ }
167
+
168
+ /* @c2n/card */
169
+ :root,
170
+ :host {
171
+ --c2-card--border-top-left-radius: var(--c2-theme--radius-lg, 8px);
172
+ --c2-card--border-top-right-radius: var(--c2-theme--radius-lg, 8px);
173
+ --c2-card--border-bottom-left-radius: var(--c2-theme--radius-lg, 8px);
174
+ --c2-card--border-bottom-right-radius: var(--c2-theme--radius-lg, 8px);
175
+ --c2-card--border-top: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, rgb(213, 213, 213)));
176
+ --c2-card--border-bottom: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, rgb(213, 213, 213)));
177
+ --c2-card--border-right: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, rgb(213, 213, 213)));
178
+ --c2-card--border-left: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, rgb(213, 213, 213)));
179
+ --c2-card--background: var(--c2-theme--color-surface, rgb(255, 255, 255));
180
+ --c2-card__focus--outline: var(--c2-theme--focus-ring, 2px solid rgba(2, 101, 220, 0.4));
181
+ --c2-card__disabled--opacity: var(--c2-theme--disabled-opacity, 0.38);
182
+ }
183
+
184
+ /* @c2n/chat-input */
185
+ :root,
186
+ :host {
187
+ --c2-chat-input--border-top-left-radius: var(--c2-theme--radius-sm, 4px);
188
+ --c2-chat-input--border-top-right-radius: var(--c2-theme--radius-sm, 4px);
189
+ --c2-chat-input--border-bottom-left-radius: var(--c2-theme--radius-sm, 4px);
190
+ --c2-chat-input--border-bottom-right-radius: var(--c2-theme--radius-sm, 4px);
191
+ --c2-chat-input--border-top: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, rgb(177, 177, 177)));
192
+ --c2-chat-input--border-right: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, rgb(177, 177, 177)));
193
+ --c2-chat-input--border-bottom: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, rgb(177, 177, 177)));
194
+ --c2-chat-input--border-left: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, rgb(177, 177, 177)));
195
+ --c2-chat-input--color: var(--c2-theme--color-on-surface, rgb(34, 34, 34));
196
+ --c2-chat-input--background: var(--c2-theme--color-surface, rgb(255, 255, 255));
197
+ --c2-chat-input--font-size: var(--c2-theme--font-size-md, 14px);
198
+ }
199
+
200
+ /* @c2n/chat-message */
201
+ :root,
202
+ :host {
203
+ --c2-chat-message--font-size: var(--c2-theme--font-size-md, 14px);
204
+ --c2-chat-message__time--font-size: var(--c2-theme--font-size-sm, 12px);
205
+ }
206
+
207
+ /* @c2n/checkbox */
208
+ :root,
209
+ :host {
210
+ --c2-checkbox__container--border-top-left-radius: var(--c2-theme--radius-sm, 4px);
211
+ --c2-checkbox__container--border-top-right-radius: var(--c2-theme--radius-sm, 4px);
212
+ --c2-checkbox__container--border-bottom-left-radius: var(--c2-theme--radius-sm, 4px);
213
+ --c2-checkbox__container--border-bottom-right-radius: var(--c2-theme--radius-sm, 4px);
214
+ --c2-checkbox__container--border-top: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, #bcbcc6));
215
+ --c2-checkbox__container--border-right: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, #bcbcc6));
216
+ --c2-checkbox__container--border-bottom: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, #bcbcc6));
217
+ --c2-checkbox__container--border-left: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, #bcbcc6));
218
+ --c2-checkbox__container__selected--background-color: var(--c2-theme--color-primary, #476ef9);
219
+ --c2-checkbox__container__focus--outline: var(--c2-theme--focus-ring, 2px solid rgba(71, 110, 249, 0.4));
220
+ --c2-checkbox__container__disabled--opacity: var(--c2-theme--disabled-opacity, 0.38);
221
+ --c2-checkbox__checkmark--color: var(--c2-theme--color-on-primary, #ffffff);
222
+ --c2-checkbox__mixedmark--color: var(--c2-theme--color-on-primary, #ffffff);
223
+ --c2-checkbox__uncheckmark--color: var(--c2-theme--color-on-primary, #ffffff);
224
+ --c2-checkbox__state-layer--border-top-left-radius: var(--c2-theme--radius-md, 6px);
225
+ --c2-checkbox__state-layer--border-top-right-radius: var(--c2-theme--radius-md, 6px);
226
+ --c2-checkbox__state-layer--border-bottom-left-radius: var(--c2-theme--radius-md, 6px);
227
+ --c2-checkbox__state-layer--border-bottom-right-radius: var(--c2-theme--radius-md, 6px);
228
+ }
229
+
230
+ /* @c2n/code-viewer */
231
+ :root,
232
+ :host {
233
+ --c2-code-viewer--border-top: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, rgb(213, 213, 213)));
234
+ --c2-code-viewer--border-right: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, rgb(213, 213, 213)));
235
+ --c2-code-viewer--border-bottom: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, rgb(213, 213, 213)));
236
+ --c2-code-viewer--border-left: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, rgb(213, 213, 213)));
237
+ --c2-code-viewer--border-top-left-radius: var(--c2-theme--radius-lg, 8px);
238
+ --c2-code-viewer--border-top-right-radius: var(--c2-theme--radius-lg, 8px);
239
+ --c2-code-viewer--border-bottom-left-radius: var(--c2-theme--radius-lg, 8px);
240
+ --c2-code-viewer--border-bottom-right-radius: var(--c2-theme--radius-lg, 8px);
241
+ --c2-code-viewer__header--font-size: var(--c2-theme--font-size-sm, 12px);
242
+ --c2-code-viewer__copy--border-radius: var(--c2-theme--radius-md, 6px);
243
+ }
244
+
245
+ /* @c2n/color-select */
246
+ :root,
247
+ :host {
248
+ --c2-color-select__popover--background-color: var(--c2-theme--color-surface, rgb(255, 255, 255));
249
+ --c2-color-select__popover--border-top: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, rgb(177, 177, 177)));
250
+ --c2-color-select__popover--border-right: var(
251
+ --c2-theme--border,
252
+ var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, rgb(177, 177, 177))
253
+ );
254
+ --c2-color-select__popover--border-bottom: var(
255
+ --c2-theme--border,
256
+ var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, rgb(177, 177, 177))
257
+ );
258
+ --c2-color-select__popover--border-left: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, rgb(177, 177, 177)));
259
+ --c2-color-select__popover--border-top-left-radius: var(--c2-theme--radius-sm, 4px);
260
+ --c2-color-select__popover--border-top-right-radius: var(--c2-theme--radius-sm, 4px);
261
+ --c2-color-select__popover--border-bottom-left-radius: var(--c2-theme--radius-sm, 4px);
262
+ --c2-color-select__popover--border-bottom-right-radius: var(--c2-theme--radius-sm, 4px);
263
+ --c2-color-select__color__sample--border-top: var(
264
+ --c2-theme--border,
265
+ var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, rgb(177, 177, 177))
266
+ );
267
+ --c2-color-select__color__sample--border-right: var(
268
+ --c2-theme--border,
269
+ var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, rgb(177, 177, 177))
270
+ );
271
+ --c2-color-select__color__sample--border-bottom: var(
272
+ --c2-theme--border,
273
+ var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, rgb(177, 177, 177))
274
+ );
275
+ --c2-color-select__color__sample--border-left: var(
276
+ --c2-theme--border,
277
+ var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, rgb(177, 177, 177))
278
+ );
279
+ --c2-color-select__color__sample--border-radius: var(--c2-theme--radius-sm, 4px);
280
+ }
281
+
282
+ /* @c2n/color-slider */
283
+ :root,
284
+ :host {
285
+ --c2-color-slider--border-radius: var(--c2-theme--radius-lg, 8px);
286
+ --c2-color-slider--border-top-left-radius: var(--c2-theme--radius-lg, 8px);
287
+ --c2-color-slider--border-top-right-radius: var(--c2-theme--radius-lg, 8px);
288
+ --c2-color-slider--border-bottom-left-radius: var(--c2-theme--radius-lg, 8px);
289
+ --c2-color-slider--border-bottom-right-radius: var(--c2-theme--radius-lg, 8px);
290
+ --c2-color-slider--border-top: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, rgb(177, 177, 177)));
291
+ --c2-color-slider--border-right: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, rgb(177, 177, 177)));
292
+ --c2-color-slider--border-bottom: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, rgb(177, 177, 177)));
293
+ --c2-color-slider--borde-leftr: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, rgb(177, 177, 177)));
294
+ --c2-color-slider__color-handle--border-top-left-radius: var(--c2-theme--radius-md, 6px);
295
+ --c2-color-slider__color-handle--border-top-right-radius: var(--c2-theme--radius-md, 6px);
296
+ --c2-color-slider__color-handle--border-bottom-left-radius: var(--c2-theme--radius-md, 6px);
297
+ --c2-color-slider__color-handle--border-bottom-right-radius: var(--c2-theme--radius-md, 6px);
298
+ }
299
+
300
+ /* @c2n/copy-button */
301
+ :root,
302
+ :host {
303
+ --c2-copy-button__container--color: var(--c2-theme--color-on-surface, rgb(34, 34, 34));
304
+ --c2-copy-button__container--border-radius: var(--c2-theme--radius-md, 6px);
305
+ --c2-copy-button__container--font-size: var(--c2-theme--font-size-sm, 12px);
306
+ --c2-copy-button__container--font-weight: var(--c2-theme--font-weight-medium, 500);
307
+ --c2-copy-button__container__hover--background-color: var(--c2-theme--color-surface-container, rgb(230, 230, 230));
308
+ --c2-copy-button__container__active--background-color: color-mix(
309
+ in srgb,
310
+ var(--c2-theme--color-surface-container, #f4f4f5),
311
+ var(--c2-theme--color-on-surface, #18181b) 8%
312
+ );
313
+ --c2-copy-button__container__focus--outline: var(--c2-theme--focus-ring, 2px solid rgba(2, 101, 220, 0.4));
314
+ --c2-copy-button__container__disabled--opacity: var(--c2-theme--disabled-opacity, 0.38);
315
+ --c2-copy-button--transition-duration: calc(150ms * var(--c2-theme--motion-scale, 1));
316
+ }
317
+
318
+ /* @c2n/details */
319
+ :root,
320
+ :host {
321
+ --c2-details--border-top: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, rgb(213, 213, 213)));
322
+ --c2-details--border-right: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, rgb(213, 213, 213)));
323
+ --c2-details--border-bottom: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, rgb(213, 213, 213)));
324
+ --c2-details--border-left: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, rgb(213, 213, 213)));
325
+ --c2-details--border-top-left-radius: var(--c2-theme--radius-lg, 8px);
326
+ --c2-details--border-top-right-radius: var(--c2-theme--radius-lg, 8px);
327
+ --c2-details--border-bottom-left-radius: var(--c2-theme--radius-lg, 8px);
328
+ --c2-details--border-bottom-right-radius: var(--c2-theme--radius-lg, 8px);
329
+ --c2-details--background: var(--c2-theme--color-surface, rgb(255, 255, 255));
330
+ --c2-details--transition-duration: calc(250ms * var(--c2-theme--motion-scale, 1));
331
+ --c2-details__header--font-weight: var(--c2-theme--font-weight-medium, 500);
332
+ --c2-details__header__icon--color: var(--c2-theme--color-on-surface-variant, rgb(109, 109, 109));
333
+ --c2-details__header__content--color: var(--c2-theme--color-on-surface-variant, rgb(109, 109, 109));
334
+ --c2-details__header__hover--background: var(--c2-theme--color-surface-container-low, rgb(248, 248, 248));
335
+ --c2-details__header__focus--outline: var(--c2-theme--focus-ring, 2px solid rgba(2, 101, 220, 0.4));
336
+ --c2-details__header__disabled--opacity: var(--c2-theme--disabled-opacity, 0.38);
337
+ }
338
+
339
+ /* @c2n/icon-button */
340
+ :root,
341
+ :host {
342
+ --c2-icon-button--border-radius: var(--c2-theme--radius-full, 999px);
343
+ --c2-icon-button__hover--background-color: var(--c2-theme--color-surface-container, rgb(230, 230, 230));
344
+ --c2-icon-button__focus--outline: var(--c2-theme--focus-ring, 2px solid rgba(2, 101, 220, 0.4));
345
+ --c2-icon-button__disabled--opacity: var(--c2-theme--disabled-opacity, 0.38);
346
+ --c2-icon-button__selected--background-color: var(--c2-theme--color-surface-container, rgb(230, 230, 230));
347
+ }
348
+
349
+ /* @c2n/label */
350
+ :root,
351
+ :host {
352
+ --c2-label__container__disabled--opacity: var(--c2-theme--disabled-opacity, 0.38);
353
+ --c2-label__required-indicator--color: var(--c2-theme--color-error, rgb(211, 21, 16));
354
+ }
355
+
356
+ /* @c2n/link-button */
357
+ :root,
358
+ :host {
359
+ --c2-link-button__container--border-radius: var(--c2-theme--radius-sm, 4px);
360
+ --c2-link-button__container--font-size: var(--c2-theme--font-size-md, 14px);
361
+ --c2-link-button__container--font-weight: var(--c2-theme--font-weight-medium, 500);
362
+ --c2-link-button__container--text-decoration-color: var(--c2-theme--color-primary, rgb(2, 101, 220));
363
+ --c2-link-button__container__hover--color: var(--c2-theme--color-primary, rgb(2, 101, 220));
364
+ --c2-link-button__container__focus--outline: var(--c2-theme--focus-ring, 2px solid rgba(2, 101, 220, 0.4));
365
+ --c2-link-button__container__selected--color: var(--c2-theme--color-primary, rgb(2, 101, 220));
366
+ --c2-link-button__container__selected--font-weight: var(--c2-theme--font-weight-semibold, 600);
367
+ --c2-link-button__container__disabled--opacity: var(--c2-theme--disabled-opacity, 0.38);
368
+ }
369
+
370
+ /* @c2n/list */
371
+ :root,
372
+ :host {
373
+ --c2-list--background: var(--c2-theme--color-surface, #ffffff);
374
+ --c2-list__divider--color: var(--c2-theme--color-outline-variant, #e4e4e7);
375
+ --c2-list__heading--color: var(--c2-theme--color-on-surface-variant, #71717a);
376
+ --c2-list__heading--font-weight: var(--c2-theme--font-weight-semibold, 600);
377
+ }
378
+
379
+ /* @c2n/list-item */
380
+ :root,
381
+ :host {
382
+ --c2-list-item--border-top-left-radius: var(--c2-theme--radius-md, 6px);
383
+ --c2-list-item--border-top-right-radius: var(--c2-theme--radius-md, 6px);
384
+ --c2-list-item--border-bottom-left-radius: var(--c2-theme--radius-md, 6px);
385
+ --c2-list-item--border-bottom-right-radius: var(--c2-theme--radius-md, 6px);
386
+ --c2-list-item--font-size: var(--c2-theme--font-size-md, 14px);
387
+ --c2-list-item--color: var(--c2-theme--color-on-surface, #18181b);
388
+ --c2-list-item__description--color: var(--c2-theme--color-on-surface-variant, #71717a);
389
+ --c2-list-item__description--font-size: var(--c2-theme--font-size-sm, 12px);
390
+ --c2-list-item__hover--background: var(--c2-theme--color-surface-container, #f4f4f5);
391
+ --c2-list-item__selected--color: var(--c2-theme--color-primary, #2f56e6);
392
+ --c2-list-item__selected--background: var(--c2-theme--color-primary-container, #edf1fe);
393
+ --c2-list-item__selected__hover--background: color-mix(
394
+ in srgb,
395
+ var(--c2-theme--color-primary-container, #edf1fe),
396
+ var(--c2-theme--color-primary, #0265dc) 8%
397
+ );
398
+ --c2-list-item__focus--outline: var(--c2-theme--focus-ring, 2px solid rgba(2, 101, 220, 0.4));
399
+ --c2-list-item__disabled--opacity: var(--c2-theme--disabled-opacity, 0.38);
400
+ }
401
+
402
+ /* @c2n/modal */
403
+ :root,
404
+ :host {
405
+ --c2-modal--background: var(--c2-theme--color-surface, #ffffff);
406
+ --c2-modal--color: var(--c2-theme--color-on-surface, #18181b);
407
+ --c2-modal--border-top-left-radius: var(--c2-theme--radius-xl, 14px);
408
+ --c2-modal--border-top-right-radius: var(--c2-theme--radius-xl, 14px);
409
+ --c2-modal--border-bottom-left-radius: var(--c2-theme--radius-xl, 14px);
410
+ --c2-modal--border-bottom-right-radius: var(--c2-theme--radius-xl, 14px);
411
+ --c2-modal--box-shadow: var(--c2-theme--shadow-lg, 0 24px 60px rgba(0, 0, 0, 0.25));
412
+ --c2-modal--transition-duration: calc(200ms * var(--c2-theme--motion-scale, 1));
413
+ --c2-modal__header--font-weight: var(--c2-theme--font-weight-semibold, 600);
414
+ --c2-modal__body--font-size: var(--c2-theme--font-size-md, 14px);
415
+ --c2-modal__close--border-radius: var(--c2-theme--radius-lg, 8px);
416
+ --c2-modal__close--color: var(--c2-theme--color-on-surface-variant, #71717a);
417
+ --c2-modal__close__hover--background: var(--c2-theme--color-surface-container, #f4f4f5);
418
+ --c2-modal__close__hover--color: var(--c2-theme--color-on-surface, #18181b);
419
+ --c2-modal__close__focus--outline: var(--c2-theme--focus-ring, 2px solid rgba(2, 101, 220, 0.4));
420
+ --c2-modal__backdrop--background: var(--c2-theme--color-scrim, rgba(9, 9, 11, 0.45));
421
+ }
422
+
423
+ /* @c2n/overlay */
424
+ :root,
425
+ :host {
426
+ --c2-overlay--transition-duration: calc(150ms * var(--c2-theme--motion-scale, 1));
427
+ }
428
+
429
+ /* @c2n/radio */
430
+ :root,
431
+ :host {
432
+ --c2-radio__container--border-radius: var(--c2-theme--radius-lg, 8px);
433
+ --c2-radio__control--border-radius: var(--c2-theme--radius-full, 999px);
434
+ --c2-radio__control--border: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, #bcbcc6));
435
+ --c2-radio__control__hover--border: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline-strong, #a1a1aa);
436
+ --c2-radio__control__checked--background-color: var(--c2-theme--color-primary, #0265dc);
437
+ --c2-radio__control__checked__hover--background-color: var(--c2-theme--color-primary-hover, #0154b8);
438
+ --c2-radio__control__focus--outline: var(--c2-theme--focus-ring, 2px solid rgba(2, 101, 220, 0.4));
439
+ --c2-radio__control__disabled--opacity: var(--c2-theme--disabled-opacity, 0.38);
440
+ --c2-radio__dot--color: var(--c2-theme--color-on-primary, #ffffff);
441
+ --c2-radio__icon--color: var(--c2-theme--color-on-surface-variant, #71717a);
442
+ --c2-radio__icon__checked--color: var(--c2-theme--color-primary, #0265dc);
443
+ --c2-radio__state-layer--border-radius: var(--c2-theme--radius-full, 999px);
444
+ --c2-radio__label__disabled--opacity: var(--c2-theme--disabled-opacity, 0.38);
445
+ --c2-radio__description--color: var(--c2-theme--color-on-surface-variant, #71717a);
446
+ --c2-radio__description--font-size: var(--c2-theme--font-size-sm, 12px);
447
+ --c2-radio-group__label--color: var(--c2-theme--color-on-surface, #18181b);
448
+ --c2-radio-group__label--font-size: var(--c2-theme--font-size-md, 14px);
449
+ --c2-radio-group__label--font-weight: var(--c2-theme--font-weight-medium, 500);
450
+ --c2-radio-group__description--color: var(--c2-theme--color-on-surface-variant, #71717a);
451
+ --c2-radio-group__description--font-size: var(--c2-theme--font-size-sm, 12px);
452
+ --c2-radio-group__header__disabled--opacity: var(--c2-theme--disabled-opacity, 0.38);
453
+ }
454
+
455
+ /* @c2n/select */
456
+ :root,
457
+ :host {
458
+ --c2-select__button--background: var(--c2-theme--color-surface, #ffffff);
459
+ --c2-select__button--color: var(--c2-theme--color-on-surface, #18181b);
460
+ --c2-select__button--font-size: var(--c2-theme--font-size-md, 14px);
461
+ --c2-select__button--border-top-left-radius: var(--c2-theme--radius-md, 6px);
462
+ --c2-select__button--border-top-right-radius: var(--c2-theme--radius-md, 6px);
463
+ --c2-select__button--border-bottom-left-radius: var(--c2-theme--radius-md, 6px);
464
+ --c2-select__button--border-bottom-right-radius: var(--c2-theme--radius-md, 6px);
465
+ --c2-select__button--border-top: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, #bcbcc6));
466
+ --c2-select__button--border-right: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, #bcbcc6));
467
+ --c2-select__button--border-bottom: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, #bcbcc6));
468
+ --c2-select__button--border-left: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, #bcbcc6));
469
+ --c2-select__button__hover--border-top: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline-strong, #a1a1aa);
470
+ --c2-select__button__hover--border-right: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline-strong, #a1a1aa);
471
+ --c2-select__button__hover--border-bottom: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline-strong, #a1a1aa);
472
+ --c2-select__button__hover--border-left: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline-strong, #a1a1aa);
473
+ --c2-select__button__hover--background: var(--c2-theme--color-surface-container-low, #fafafa);
474
+ --c2-select__button__hover--color: var(--c2-theme--color-on-surface, #18181b);
475
+ --c2-select__button__open--border-top: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-primary, #476ef9);
476
+ --c2-select__button__open--border-right: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-primary, #476ef9);
477
+ --c2-select__button__open--border-bottom: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-primary, #476ef9);
478
+ --c2-select__button__open--border-left: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-primary, #476ef9);
479
+ --c2-select__button__focus--outline: var(--c2-theme--focus-ring, 2px solid rgba(71, 110, 249, 0.4));
480
+ --c2-select__button__disabled--opacity: var(--c2-theme--disabled-opacity, 0.38);
481
+ --c2-select__button__suffix-icon--color: var(--c2-theme--color-on-surface-variant, #71717a);
482
+ --c2-select__placeholder--color: var(--c2-theme--color-on-surface-variant, #71717a);
483
+ --c2-select__list--background: var(--c2-theme--color-surface, #ffffff);
484
+ --c2-select__list--border-top: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline-variant, #e4e4e7);
485
+ --c2-select__list--border-right: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline-variant, #e4e4e7);
486
+ --c2-select__list--border-bottom: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline-variant, #e4e4e7);
487
+ --c2-select__list--border-left: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline-variant, #e4e4e7);
488
+ --c2-select__list--border-top-left-radius: var(--c2-theme--radius-lg, 8px);
489
+ --c2-select__list--border-top-right-radius: var(--c2-theme--radius-lg, 8px);
490
+ --c2-select__list--border-bottom-left-radius: var(--c2-theme--radius-lg, 8px);
491
+ --c2-select__list--border-bottom-right-radius: var(--c2-theme--radius-lg, 8px);
492
+ --c2-select__list--box-shadow: var(--c2-theme--shadow-md, 0 8px 24px rgba(24, 24, 27, 0.08));
493
+ }
494
+
495
+ /* @c2n/seperator */
496
+ :root,
497
+ :host {
498
+ --c2-seperator--color: var(--c2-theme--color-outline-variant, #e4e4e7);
499
+ --c2-seperator__label--color: var(--c2-theme--color-on-surface-variant, #71717a);
500
+ --c2-seperator__label--font-size: var(--c2-theme--font-size-sm, 12px);
501
+ --c2-seperator__label--font-weight: var(--c2-theme--font-weight-medium, 500);
502
+ }
503
+
504
+ /* @c2n/side-nav */
505
+ :root,
506
+ :host {
507
+ --c2-side-nav--transition-duration: calc(250ms * var(--c2-theme--motion-scale, 1));
508
+ --c2-side-nav--background-color: var(--c2-theme--color-surface-container-low, #fafafa);
509
+ --c2-side-nav__divider--color: var(--c2-theme--color-outline-variant, #e4e4e7);
510
+ --c2-side-nav__over--box-shadow: var(--c2-theme--shadow-lg, 0 12px 40px rgba(0, 0, 0, 0.18));
511
+ --c2-side-nav__backdrop--background-color: var(--c2-theme--color-scrim, rgba(0, 0, 0, 0.32));
512
+ }
513
+
514
+ /* @c2n/slider */
515
+ :root,
516
+ :host {
517
+ --c2-slider__container__disabled--opacity: var(--c2-theme--disabled-opacity, 0.38);
518
+ --c2-slider__track--border-radius: var(--c2-theme--radius-full, 999px);
519
+ --c2-slider__track--color: var(--c2-theme--color-outline-variant, #e4e4e7);
520
+ --c2-slider__fill--color: var(--c2-theme--color-primary, #0265dc);
521
+ --c2-slider__thumb--border-radius: var(--c2-theme--radius-full, 999px);
522
+ --c2-slider__thumb--color: var(--c2-theme--color-surface, #ffffff);
523
+ --c2-slider__thumb--border: 2px solid var(--c2-theme--color-primary, #0265dc);
524
+ --c2-slider__thumb__focus--outline: var(--c2-theme--focus-ring, 2px solid rgba(2, 101, 220, 0.4));
525
+ --c2-slider__tick--color: var(--c2-theme--color-on-surface-variant, #a1a1aa);
526
+ --c2-slider__tick__filled--color: var(--c2-theme--color-on-primary, #ffffff);
527
+ --c2-slider__value--background: var(--c2-theme--color-inverse-surface, #18181b);
528
+ --c2-slider__value--color: var(--c2-theme--color-on-inverse-surface, #fafafa);
529
+ --c2-slider__value--font-size: var(--c2-theme--font-size-sm, 12px);
530
+ --c2-slider__value--font-weight: var(--c2-theme--font-weight-medium, 500);
531
+ --c2-slider__value--border-radius: var(--c2-theme--radius-md, 6px);
532
+ }
533
+
534
+ /* @c2n/spinner */
535
+ :root,
536
+ :host {
537
+ --c2-spinner--color: var(--c2-theme--color-primary, #0265dc);
538
+ --c2-spinner__track--color: var(--c2-theme--color-outline-variant, #e4e4e7);
539
+ --c2-spinner--animation-duration: calc(1.4s * var(--c2-theme--motion-scale, 1));
540
+ --c2-spinner__label--color: var(--c2-theme--color-on-surface-variant, #71717a);
541
+ --c2-spinner__label--font-size: var(--c2-theme--font-size-md, 14px);
542
+ }
543
+
544
+ /* @c2n/switch */
545
+ :root,
546
+ :host {
547
+ --c2-switch__container__disabled--opacity: var(--c2-theme--disabled-opacity, 0.38);
548
+ --c2-switch__track--border-radius: var(--c2-theme--radius-full, 999px);
549
+ --c2-switch__track--color: var(--c2-theme--color-outline-variant, #e4e4e7);
550
+ --c2-switch__track__hover--color: var(--c2-theme--color-outline, #d4d4d8);
551
+ --c2-switch__track__checked--color: var(--c2-theme--color-primary, #0265dc);
552
+ --c2-switch__track__checked__hover--color: var(--c2-theme--color-primary, #0154b8);
553
+ --c2-switch__track__focus--outline: var(--c2-theme--focus-ring, 2px solid rgba(2, 101, 220, 0.4));
554
+ --c2-switch__thumb--border-radius: var(--c2-theme--radius-full, 999px);
555
+ --c2-switch__thumb--color: var(--c2-theme--color-surface, #ffffff);
556
+ --c2-switch__icon--color: var(--c2-theme--color-on-surface-variant, #71717a);
557
+ --c2-switch__icon__checked--color: var(--c2-theme--color-primary, #0265dc);
558
+ --c2-switch__description--color: var(--c2-theme--color-on-surface-variant, #71717a);
559
+ --c2-switch__description--font-size: var(--c2-theme--font-size-sm, 12px);
560
+ --c2-switch--transition-duration: calc(200ms * var(--c2-theme--motion-scale, 1));
561
+ }
562
+
563
+ /* @c2n/tabs */
564
+ :root,
565
+ :host {
566
+ --c2-tabs--box-shadow: inset 0px -2px 0px 0px var(--c2-theme--color-outline-variant, rgb(230, 230, 230));
567
+ --c2-tabs__indicator--color: var(--c2-theme--color-primary, rgb(109, 109, 109));
568
+ --c2-tabs__tab__hover--color: var(--c2-theme--color-primary, rgb(2, 101, 220));
569
+ --c2-tabs__tab__selected--color: var(--c2-theme--color-primary, rgb(2, 101, 220));
570
+ --c2-tabs__tab__focus--outline: var(--c2-theme--focus-ring, 2px solid rgba(2, 101, 220, 0.4));
571
+ --c2-tabs__tab__disabled--opacity: var(--c2-theme--disabled-opacity, 0.38);
572
+ }
573
+
574
+ /* @c2n/text-field */
575
+ :root,
576
+ :host {
577
+ --c2-text-field--border-top-left-radius: var(--c2-theme--radius-md, 6px);
578
+ --c2-text-field--border-top-right-radius: var(--c2-theme--radius-md, 6px);
579
+ --c2-text-field--border-bottom-left-radius: var(--c2-theme--radius-md, 6px);
580
+ --c2-text-field--border-bottom-right-radius: var(--c2-theme--radius-md, 6px);
581
+ --c2-text-field--border-top: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, #bcbcc6));
582
+ --c2-text-field--border-right: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, #bcbcc6));
583
+ --c2-text-field--border-bottom: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, #bcbcc6));
584
+ --c2-text-field--border-left: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, #bcbcc6));
585
+ --c2-text-field--color: var(--c2-theme--color-on-surface, #18181b);
586
+ --c2-text-field--background: var(--c2-theme--color-surface, #ffffff);
587
+ --c2-text-field--font-size: var(--c2-theme--font-size-md, 14px);
588
+ --c2-text-field__placeholder--color: var(--c2-theme--color-on-surface-variant, #71717a);
589
+ --c2-text-field__hover--border-top: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline-strong, #a1a1aa);
590
+ --c2-text-field__hover--border-right: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline-strong, #a1a1aa);
591
+ --c2-text-field__hover--border-bottom: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline-strong, #a1a1aa);
592
+ --c2-text-field__hover--border-left: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline-strong, #a1a1aa);
593
+ --c2-text-field__focus--border-top: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-primary, #476ef9);
594
+ --c2-text-field__focus--border-right: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-primary, #476ef9);
595
+ --c2-text-field__focus--border-bottom: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-primary, #476ef9);
596
+ --c2-text-field__focus--border-left: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-primary, #476ef9);
597
+ --c2-text-field__focus--outline: var(--c2-theme--focus-ring, 3px solid rgba(71, 110, 249, 0.2));
598
+ --c2-text-field__error--border-top: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-error, #dc2626);
599
+ --c2-text-field__error--border-right: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-error, #dc2626);
600
+ --c2-text-field__error--border-bottom: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-error, #dc2626);
601
+ --c2-text-field__error--border-left: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-error, #dc2626);
602
+ --c2-text-field__read-only--border-top: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline-variant, #e4e4e7);
603
+ --c2-text-field__read-only--border-right: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline-variant, #e4e4e7);
604
+ --c2-text-field__read-only--border-bottom: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline-variant, #e4e4e7);
605
+ --c2-text-field__read-only--border-left: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline-variant, #e4e4e7);
606
+ --c2-text-field__read-only--background: var(--c2-theme--color-surface-container-low, #fafafa);
607
+ --c2-text-field__disabled--opacity: var(--c2-theme--disabled-opacity, 0.38);
608
+ --c2-text-field__icon--color: var(--c2-theme--color-on-surface-variant, #71717a);
609
+ --c2-text-field__clear-icon--color: var(--c2-theme--color-on-surface-variant, #a1a1aa);
610
+ --c2-text-field__clear-icon__hover--color: var(--c2-theme--color-on-surface, #18181b);
611
+ --c2-text-field__help-icon--color: var(--c2-theme--color-on-surface-variant, #71717a);
612
+ --c2-text-field__supporting-text--font-size: var(--c2-theme--font-size-sm, 12px);
613
+ --c2-text-field__supporting-text--color: var(--c2-theme--color-on-surface-variant, #71717a);
614
+ --c2-text-field__supporting-text__error--color: var(--c2-theme--color-error, #dc2626);
615
+ }
616
+
617
+ /* @c2n/textarea */
618
+ :root,
619
+ :host {
620
+ --c2-textarea__container--border: var(--c2-theme--border, var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline, #bcbcc6));
621
+ --c2-textarea__container--border-radius: var(--c2-theme--radius-md, 6px);
622
+ --c2-textarea__container--background: var(--c2-theme--color-surface, #ffffff);
623
+ --c2-textarea__container--color: var(--c2-theme--color-on-surface, #18181b);
624
+ --c2-textarea__container--font-size: var(--c2-theme--font-size-md, 14px);
625
+ --c2-textarea__container__hover--border: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline-strong, #a1a1aa);
626
+ --c2-textarea__container__focus--border: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-primary, #476ef9);
627
+ --c2-textarea__container__focus--outline: var(--c2-theme--focus-ring, 3px solid rgba(71, 110, 249, 0.2));
628
+ --c2-textarea__container__error--border: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-error, #dc2626);
629
+ --c2-textarea__container__read-only--background: var(--c2-theme--color-surface-container-low, #fafafa);
630
+ --c2-textarea__container__disabled--opacity: var(--c2-theme--disabled-opacity, 0.38);
631
+ --c2-textarea__placeholder--color: var(--c2-theme--color-on-surface-variant, #71717a);
632
+ --c2-textarea__supporting-text--font-size: var(--c2-theme--font-size-sm, 12px);
633
+ --c2-textarea__supporting-text--color: var(--c2-theme--color-on-surface-variant, #71717a);
634
+ --c2-textarea__supporting-text__error--color: var(--c2-theme--color-error, #dc2626);
635
+ }
636
+
637
+ /* @c2n/toast */
638
+ :root,
639
+ :host {
640
+ --c2-toast__container--background: var(--c2-theme--color-surface, #ffffff);
641
+ --c2-toast__container--color: var(--c2-theme--color-on-surface, #18181b);
642
+ --c2-toast__container--border: var(--c2-theme--border-width, 1px) solid var(--c2-theme--color-outline-variant, #e4e4e7);
643
+ --c2-toast__container--font-size: var(--c2-theme--font-size-md, 14px);
644
+ --c2-toast__heading--font-weight: var(--c2-theme--font-weight-semibold, 600);
645
+ --c2-toast__icon--color: var(--c2-theme--color-on-surface-variant, #71717a);
646
+ --c2-toast__icon__error--color: var(--c2-theme--color-error, #dc2626);
647
+ --c2-toast__close--color: var(--c2-theme--color-on-surface-variant, #71717a);
648
+ --c2-toast__close__hover--background: var(--c2-theme--color-surface-container, #f4f4f5);
649
+ --c2-toast__button__focus--outline: var(--c2-theme--focus-ring, 2px solid #476ef9);
650
+ }
651
+
652
+ /* @c2n/tooltip */
653
+ :root,
654
+ :host {
655
+ --c2-tooltip--background-color: var(--c2-theme--color-inverse-surface, #18181b);
656
+ --c2-tooltip--color: var(--c2-theme--color-on-inverse-surface, #fafafa);
657
+ --c2-tooltip--border-radius: var(--c2-theme--radius-md, 6px);
658
+ --c2-tooltip--box-shadow: var(--c2-theme--shadow-md, 0 4px 12px rgba(0, 0, 0, 0.15));
659
+ --c2-tooltip--font-size: var(--c2-theme--font-size-sm, 12px);
660
+ --c2-tooltip--font-weight: var(--c2-theme--font-weight-medium, 500);
661
+ --c2-tooltip--transition-duration: calc(120ms * var(--c2-theme--motion-scale, 1));
662
+ }