tyrell-components 1.0.0-RC11 → 1.0.0-RC13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/css/tyrell-colors-static.css +316 -0
- package/css/tyrell-theme.css +1454 -0
- package/css/tyrell.css +112 -420
- package/dist/tyrell-colors-static.css +316 -0
- package/dist/tyrell-theme.css +1454 -0
- package/dist/tyrell.css +112 -420
- package/dist/tyrell.js +1 -1
- package/lib/base/ty-component.d.ts +7 -0
- package/lib/base/ty-component.d.ts.map +1 -1
- package/lib/base/ty-component.js +27 -0
- package/lib/base/ty-component.js.map +1 -1
- package/lib/components/button.d.ts +16 -1
- package/lib/components/button.d.ts.map +1 -1
- package/lib/components/button.js +34 -4
- package/lib/components/button.js.map +1 -1
- package/lib/components/calendar-month.d.ts +23 -0
- package/lib/components/calendar-month.d.ts.map +1 -1
- package/lib/components/calendar-month.js +168 -11
- package/lib/components/calendar-month.js.map +1 -1
- package/lib/components/calendar-navigation.d.ts +31 -5
- package/lib/components/calendar-navigation.d.ts.map +1 -1
- package/lib/components/calendar-navigation.js +71 -31
- package/lib/components/calendar-navigation.js.map +1 -1
- package/lib/components/calendar.d.ts +17 -2
- package/lib/components/calendar.d.ts.map +1 -1
- package/lib/components/calendar.js +83 -12
- package/lib/components/calendar.js.map +1 -1
- package/lib/components/checkbox.d.ts +14 -3
- package/lib/components/checkbox.d.ts.map +1 -1
- package/lib/components/checkbox.js +86 -57
- package/lib/components/checkbox.js.map +1 -1
- package/lib/components/copy.d.ts +14 -3
- package/lib/components/copy.d.ts.map +1 -1
- package/lib/components/copy.js +47 -25
- package/lib/components/copy.js.map +1 -1
- package/lib/components/date-picker.d.ts +26 -1
- package/lib/components/date-picker.d.ts.map +1 -1
- package/lib/components/date-picker.js +151 -32
- package/lib/components/date-picker.js.map +1 -1
- package/lib/components/input.d.ts +17 -2
- package/lib/components/input.d.ts.map +1 -1
- package/lib/components/input.js +104 -25
- package/lib/components/input.js.map +1 -1
- package/lib/components/modal.d.ts.map +1 -1
- package/lib/components/modal.js +28 -3
- package/lib/components/modal.js.map +1 -1
- package/lib/components/option.d.ts +0 -27
- package/lib/components/option.d.ts.map +1 -1
- package/lib/components/option.js +11 -102
- package/lib/components/option.js.map +1 -1
- package/lib/components/popup.d.ts.map +1 -1
- package/lib/components/popup.js +36 -2
- package/lib/components/popup.js.map +1 -1
- package/lib/components/radio.d.ts +6 -2
- package/lib/components/radio.d.ts.map +1 -1
- package/lib/components/radio.js +55 -13
- package/lib/components/radio.js.map +1 -1
- package/lib/components/scroll-container.d.ts +16 -0
- package/lib/components/scroll-container.d.ts.map +1 -1
- package/lib/components/scroll-container.js +105 -1
- package/lib/components/scroll-container.js.map +1 -1
- package/lib/components/select.d.ts +550 -0
- package/lib/components/select.d.ts.map +1 -0
- package/lib/components/select.js +2115 -0
- package/lib/components/select.js.map +1 -0
- package/lib/components/selected-tags.d.ts +93 -0
- package/lib/components/selected-tags.d.ts.map +1 -0
- package/lib/components/selected-tags.js +286 -0
- package/lib/components/selected-tags.js.map +1 -0
- package/lib/components/switch.d.ts +6 -3
- package/lib/components/switch.d.ts.map +1 -1
- package/lib/components/switch.js +54 -36
- package/lib/components/switch.js.map +1 -1
- package/lib/components/tabs.d.ts.map +1 -1
- package/lib/components/tabs.js +190 -25
- package/lib/components/tabs.js.map +1 -1
- package/lib/components/tag.d.ts +9 -1
- package/lib/components/tag.d.ts.map +1 -1
- package/lib/components/tag.js +41 -5
- package/lib/components/tag.js.map +1 -1
- package/lib/components/textarea.d.ts +3 -0
- package/lib/components/textarea.d.ts.map +1 -1
- package/lib/components/textarea.js +61 -6
- package/lib/components/textarea.js.map +1 -1
- package/lib/components/tooltip.d.ts +4 -2
- package/lib/components/tooltip.d.ts.map +1 -1
- package/lib/components/tooltip.js +109 -70
- package/lib/components/tooltip.js.map +1 -1
- package/lib/components/wizard.d.ts.map +1 -1
- package/lib/components/wizard.js +22 -3
- package/lib/components/wizard.js.map +1 -1
- package/lib/index.d.ts +3 -2
- package/lib/index.d.ts.map +1 -1
- package/lib/index.js +3 -2
- package/lib/index.js.map +1 -1
- package/lib/styles/button.d.ts +41 -6
- package/lib/styles/button.d.ts.map +1 -1
- package/lib/styles/button.js +294 -254
- package/lib/styles/button.js.map +1 -1
- package/lib/styles/calendar-month.d.ts +3 -1
- package/lib/styles/calendar-month.d.ts.map +1 -1
- package/lib/styles/calendar-month.js +100 -67
- package/lib/styles/calendar-month.js.map +1 -1
- package/lib/styles/calendar-navigation.d.ts +1 -1
- package/lib/styles/calendar-navigation.d.ts.map +1 -1
- package/lib/styles/calendar-navigation.js +20 -28
- package/lib/styles/calendar-navigation.js.map +1 -1
- package/lib/styles/checkbox.d.ts +7 -5
- package/lib/styles/checkbox.d.ts.map +1 -1
- package/lib/styles/checkbox.js +125 -8
- package/lib/styles/checkbox.js.map +1 -1
- package/lib/styles/copy.d.ts +3 -1
- package/lib/styles/copy.d.ts.map +1 -1
- package/lib/styles/copy.js +61 -6
- package/lib/styles/copy.js.map +1 -1
- package/lib/styles/custom-scrollbar.d.ts +1 -1
- package/lib/styles/custom-scrollbar.d.ts.map +1 -1
- package/lib/styles/custom-scrollbar.js +2 -2
- package/lib/styles/date-picker.d.ts +3 -1
- package/lib/styles/date-picker.d.ts.map +1 -1
- package/lib/styles/date-picker.js +65 -103
- package/lib/styles/date-picker.js.map +1 -1
- package/lib/styles/file-upload.d.ts +1 -1
- package/lib/styles/file-upload.d.ts.map +1 -1
- package/lib/styles/file-upload.js +3 -3
- package/lib/styles/input.d.ts +3 -1
- package/lib/styles/input.d.ts.map +1 -1
- package/lib/styles/input.js +93 -419
- package/lib/styles/input.js.map +1 -1
- package/lib/styles/multiselect.d.ts +3 -1
- package/lib/styles/multiselect.d.ts.map +1 -1
- package/lib/styles/multiselect.js +26 -2
- package/lib/styles/multiselect.js.map +1 -1
- package/lib/styles/option.d.ts +1 -1
- package/lib/styles/option.d.ts.map +1 -1
- package/lib/styles/option.js +20 -47
- package/lib/styles/option.js.map +1 -1
- package/lib/styles/radio.d.ts +3 -1
- package/lib/styles/radio.d.ts.map +1 -1
- package/lib/styles/radio.js +24 -21
- package/lib/styles/radio.js.map +1 -1
- package/lib/styles/scroll-container.d.ts +1 -1
- package/lib/styles/scroll-container.d.ts.map +1 -1
- package/lib/styles/scroll-container.js +6 -0
- package/lib/styles/scroll-container.js.map +1 -1
- package/lib/styles/select-base.d.ts +9 -0
- package/lib/styles/select-base.d.ts.map +1 -0
- package/lib/styles/select-base.js +973 -0
- package/lib/styles/select-base.js.map +1 -0
- package/lib/styles/select.d.ts +12 -0
- package/lib/styles/select.d.ts.map +1 -0
- package/lib/styles/select.js +308 -0
- package/lib/styles/select.js.map +1 -0
- package/lib/styles/step.d.ts +1 -1
- package/lib/styles/step.d.ts.map +1 -1
- package/lib/styles/switch.d.ts +3 -1
- package/lib/styles/switch.d.ts.map +1 -1
- package/lib/styles/switch.js +25 -10
- package/lib/styles/switch.js.map +1 -1
- package/lib/styles/tab.d.ts +1 -1
- package/lib/styles/tab.d.ts.map +1 -1
- package/lib/styles/tabs.d.ts +1 -1
- package/lib/styles/tabs.d.ts.map +1 -1
- package/lib/styles/tabs.js +71 -1
- package/lib/styles/tabs.js.map +1 -1
- package/lib/styles/tag.d.ts +1 -1
- package/lib/styles/tag.d.ts.map +1 -1
- package/lib/styles/tag.js +40 -141
- package/lib/styles/tag.js.map +1 -1
- package/lib/styles/textarea.d.ts +1 -1
- package/lib/styles/textarea.d.ts.map +1 -1
- package/lib/styles/textarea.js +71 -37
- package/lib/styles/textarea.js.map +1 -1
- package/lib/styles/tooltip.d.ts +4 -2
- package/lib/styles/tooltip.d.ts.map +1 -1
- package/lib/styles/tooltip.js +4 -119
- package/lib/styles/tooltip.js.map +1 -1
- package/lib/styles/wizard.d.ts +1 -1
- package/lib/styles/wizard.d.ts.map +1 -1
- package/lib/styles/wizard.js +18 -6
- package/lib/styles/wizard.js.map +1 -1
- package/lib/types/common.d.ts +2 -1
- package/lib/types/common.d.ts.map +1 -1
- package/lib/types/common.js +15 -1
- package/lib/types/common.js.map +1 -1
- package/lib/utils/calendar-utils.d.ts +0 -48
- package/lib/utils/calendar-utils.d.ts.map +1 -1
- package/lib/utils/calendar-utils.js +0 -69
- package/lib/utils/calendar-utils.js.map +1 -1
- package/lib/utils/flavor-sheet.d.ts +32 -0
- package/lib/utils/flavor-sheet.d.ts.map +1 -0
- package/lib/utils/flavor-sheet.js +40 -0
- package/lib/utils/flavor-sheet.js.map +1 -0
- package/lib/utils/icon-registry.d.ts +0 -13
- package/lib/utils/icon-registry.d.ts.map +1 -1
- package/lib/utils/icon-registry.js +0 -35
- package/lib/utils/icon-registry.js.map +1 -1
- package/lib/utils/icons.d.ts +10 -0
- package/lib/utils/icons.d.ts.map +1 -0
- package/lib/utils/icons.js +10 -0
- package/lib/utils/icons.js.map +1 -0
- package/lib/utils/loader-registry.d.ts +2 -2
- package/lib/utils/loader-registry.js +2 -2
- package/lib/utils/locale.d.ts +0 -57
- package/lib/utils/locale.d.ts.map +1 -1
- package/lib/utils/locale.js +0 -89
- package/lib/utils/locale.js.map +1 -1
- package/lib/utils/number-format.d.ts +0 -21
- package/lib/utils/number-format.d.ts.map +1 -1
- package/lib/utils/number-format.js +0 -27
- package/lib/utils/number-format.js.map +1 -1
- package/lib/utils/positioning.d.ts +29 -22
- package/lib/utils/positioning.d.ts.map +1 -1
- package/lib/utils/positioning.js +23 -87
- package/lib/utils/positioning.js.map +1 -1
- package/lib/utils/scroll-lock.d.ts.map +1 -1
- package/lib/utils/scroll-lock.js +0 -1
- package/lib/utils/scroll-lock.js.map +1 -1
- package/lib/utils/styles.d.ts +0 -5
- package/lib/utils/styles.d.ts.map +1 -1
- package/lib/utils/styles.js +0 -7
- package/lib/utils/styles.js.map +1 -1
- package/lib/version.d.ts +1 -1
- package/lib/version.js +1 -1
- package/package.json +22 -11
- package/css/tyrell-brand.css +0 -913
- package/dist/tyrell-brand.css +0 -913
- package/lib/components/dropdown.d.ts +0 -424
- package/lib/components/dropdown.d.ts.map +0 -1
- package/lib/components/dropdown.js +0 -1640
- package/lib/components/dropdown.js.map +0 -1
- package/lib/components/multiselect.d.ts +0 -397
- package/lib/components/multiselect.d.ts.map +0 -1
- package/lib/components/multiselect.js +0 -1595
- package/lib/components/multiselect.js.map +0 -1
- package/lib/styles/dropdown.d.ts +0 -12
- package/lib/styles/dropdown.d.ts.map +0 -1
- package/lib/styles/dropdown.js +0 -1081
- package/lib/styles/dropdown.js.map +0 -1
package/css/tyrell.css
CHANGED
|
@@ -124,59 +124,10 @@ CSS VARIABLES - DESIGN TOKENS
|
|
|
124
124
|
|
|
125
125
|
/* Default theme (light) */
|
|
126
126
|
html {
|
|
127
|
-
/*
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
-bold = Moderate emphasis - hover states, focus rings
|
|
132
|
-
= Base color - default appearance
|
|
133
|
-
-soft = Reduced emphasis - muted backgrounds, secondary
|
|
134
|
-
-faint = Minimal emphasis - subtle hints, disabled states
|
|
135
|
-
================================================================= */
|
|
136
|
-
|
|
137
|
-
/* Primary */
|
|
138
|
-
--ty-color-primary-strong: #163793;
|
|
139
|
-
--ty-color-primary-bold: #304c9f;
|
|
140
|
-
--ty-color-primary: #466bce;
|
|
141
|
-
--ty-color-primary-soft: #60a5fa;
|
|
142
|
-
--ty-color-primary-faint: #93c5fd;
|
|
143
|
-
|
|
144
|
-
/* Secondary */
|
|
145
|
-
--ty-color-secondary-strong: #7442c2;
|
|
146
|
-
--ty-color-secondary-bold: #8153cf;
|
|
147
|
-
--ty-color-secondary: #9774e7;
|
|
148
|
-
--ty-color-secondary-soft: #a78bfa;
|
|
149
|
-
--ty-color-secondary-faint: #c4b5fd;
|
|
150
|
-
|
|
151
|
-
/* Success */
|
|
152
|
-
--ty-color-success-strong: #177858;
|
|
153
|
-
--ty-color-success-bold: #3e9779;
|
|
154
|
-
--ty-color-success: #3eaa86;
|
|
155
|
-
--ty-color-success-soft: #64b399;
|
|
156
|
-
--ty-color-success-faint: #7fd4b2;
|
|
157
|
-
|
|
158
|
-
/* Danger */
|
|
159
|
-
--ty-color-danger-strong: #b91c1c;
|
|
160
|
-
--ty-color-danger-bold: #dc2626;
|
|
161
|
-
--ty-color-danger: #ef4444;
|
|
162
|
-
--ty-color-danger-soft: #f87171;
|
|
163
|
-
--ty-color-danger-faint: #fca5a5;
|
|
164
|
-
|
|
165
|
-
/* Warning */
|
|
166
|
-
--ty-color-warning-strong: #e86400;
|
|
167
|
-
--ty-color-warning-bold: #ee7f00;
|
|
168
|
-
--ty-color-warning: #f59e0b;
|
|
169
|
-
--ty-color-warning-soft: #fbbf24;
|
|
170
|
-
--ty-color-warning-faint: #fcd34d;
|
|
171
|
-
|
|
172
|
-
/* Neutral */
|
|
173
|
-
--ty-color-neutral-strong: #000000;
|
|
174
|
-
--ty-color-neutral-bold: #000000;
|
|
175
|
-
--ty-color-neutral: #111827;
|
|
176
|
-
--ty-color-neutral-soft: #374151;
|
|
177
|
-
--ty-color-neutral-faint: #9ca3af;
|
|
178
|
-
|
|
179
|
-
/* Accent - brand highlights, focus rings, selection states */
|
|
127
|
+
/* Color tokens (--ty-color-*, --ty-bg-{flavor}-*, --ty-border-*,
|
|
128
|
+
--ty-surface-*, --ty-text-*, --ty-input-{color}-*, --ty-solid-*) live
|
|
129
|
+
in tyrell-colors-static.css or tyrell-theme.css — load one of those
|
|
130
|
+
alongside this file. See CSS_GUIDE.md. */
|
|
180
131
|
|
|
181
132
|
/* =================================================================
|
|
182
133
|
BACKGROUND COLORS
|
|
@@ -196,59 +147,13 @@ BACKGROUND COLORS
|
|
|
196
147
|
/* Focus ring gap - matches page background for button focus ring effect */
|
|
197
148
|
--ty-focus-ring-gap: #ffffff;
|
|
198
149
|
|
|
199
|
-
/* Primary backgrounds */
|
|
200
|
-
--ty-bg-primary: #e3eefc;
|
|
201
|
-
--ty-bg-primary-bold: #d5e4f8;
|
|
202
|
-
--ty-bg-primary-soft: #eff6ff;
|
|
203
|
-
|
|
204
|
-
/* Secondary backgrounds */
|
|
205
|
-
--ty-bg-secondary: #e9d5ff;
|
|
206
|
-
--ty-bg-secondary-bold: #ddd6fe;
|
|
207
|
-
--ty-bg-secondary-soft: #f3e8ff;
|
|
208
|
-
|
|
209
|
-
/* Success backgrounds */
|
|
210
|
-
--ty-bg-success: #d1fae5;
|
|
211
|
-
--ty-bg-success-bold: #a7f3d0;
|
|
212
|
-
--ty-bg-success-soft: #ecfdf5;
|
|
213
|
-
|
|
214
|
-
/* Danger backgrounds */
|
|
215
|
-
--ty-bg-danger: #fee2e2;
|
|
216
|
-
--ty-bg-danger-bold: #fecaca;
|
|
217
|
-
--ty-bg-danger-soft: #fef2f2;
|
|
218
|
-
|
|
219
|
-
/* Warning backgrounds */
|
|
220
|
-
--ty-bg-warning: #fef3c7;
|
|
221
|
-
--ty-bg-warning-bold: #fde68a;
|
|
222
|
-
--ty-bg-warning-soft: #fffbeb;
|
|
223
|
-
|
|
224
|
-
/* Neutral backgrounds */
|
|
225
|
-
--ty-bg-neutral: #e0e0e0;
|
|
226
|
-
--ty-bg-neutral-bold: #cecece;
|
|
227
|
-
--ty-bg-neutral-soft: #ededed;
|
|
228
|
-
|
|
229
|
-
/* Accent backgrounds */
|
|
230
|
-
|
|
231
150
|
/* =================================================================
|
|
232
151
|
BORDER COLORS
|
|
233
152
|
================================================================= */
|
|
234
153
|
|
|
235
|
-
--ty-border: #e5e7eb;
|
|
236
|
-
--ty-border-bold: #d1d5db;
|
|
237
|
-
--ty-border-strong: #6b7280;
|
|
238
|
-
--ty-border-soft: #f3f4f6;
|
|
239
|
-
--ty-border-faint: #fafafa;
|
|
240
|
-
|
|
241
154
|
/* Border width — used as fallback by surface utilities (--ty-{surface}-border-width) */
|
|
242
155
|
--ty-border-width: 1px;
|
|
243
156
|
|
|
244
|
-
/* Semantic borders */
|
|
245
|
-
--ty-border-primary: var(--ty-color-primary);
|
|
246
|
-
--ty-border-secondary: var(--ty-color-secondary);
|
|
247
|
-
--ty-border-success: var(--ty-color-success);
|
|
248
|
-
--ty-border-danger: var(--ty-color-danger);
|
|
249
|
-
--ty-border-warning: var(--ty-color-warning);
|
|
250
|
-
--ty-border-neutral: var(--ty-color-neutral);
|
|
251
|
-
|
|
252
157
|
/* =================================================================
|
|
253
158
|
SCROLLBAR
|
|
254
159
|
================================================================= */
|
|
@@ -263,19 +168,11 @@ SCROLLBAR
|
|
|
263
168
|
SURFACE SYSTEM
|
|
264
169
|
================================================================= */
|
|
265
170
|
|
|
266
|
-
--ty-surface-canvas: #fcfcfc;
|
|
267
|
-
--ty-surface-content: #ffffff;
|
|
268
|
-
--ty-surface-elevated: #ffffff;
|
|
269
|
-
--ty-surface-floating: #ffffff;
|
|
270
|
-
--ty-surface-input: #ffffff;
|
|
271
|
-
|
|
272
171
|
/* Surface borders — opt-in. Set color to make a surface's border visible.
|
|
273
172
|
Width and style fall back to --ty-border-width and `solid` if unset. */
|
|
274
|
-
--ty-elevated-border: #e5e7eb;
|
|
275
173
|
--ty-elevated-border-width: var(--ty-border-width);
|
|
276
174
|
--ty-elevated-border-style: solid;
|
|
277
175
|
|
|
278
|
-
--ty-floating-border: #e5e7eb;
|
|
279
176
|
--ty-floating-border-width: var(--ty-border-width);
|
|
280
177
|
--ty-floating-border-style: solid;
|
|
281
178
|
|
|
@@ -283,12 +180,12 @@ SURFACE SYSTEM
|
|
|
283
180
|
--ty-canvas-border-width: var(--ty-border-width);
|
|
284
181
|
--ty-canvas-border-style: solid;
|
|
285
182
|
|
|
286
|
-
--ty-content-border: #e5e7eb;
|
|
287
183
|
--ty-content-border-width: var(--ty-border-width);
|
|
288
184
|
--ty-content-border-style: solid;
|
|
289
185
|
|
|
290
|
-
/* --ty-input-border is
|
|
291
|
-
<ty-input> shadow DOM
|
|
186
|
+
/* --ty-input-border is a color token (tyrell-colors-static.css /
|
|
187
|
+
tyrell-theme.css) used by <ty-input> shadow DOM and .ty-input utility.
|
|
188
|
+
Width/style live here. */
|
|
292
189
|
--ty-input-border-width: var(--ty-border-width);
|
|
293
190
|
--ty-input-border-style: solid;
|
|
294
191
|
|
|
@@ -299,17 +196,6 @@ SURFACE SYSTEM
|
|
|
299
196
|
--ty-divide-color: var(--ty-border);
|
|
300
197
|
--ty-divide-width: var(--ty-border-width);
|
|
301
198
|
|
|
302
|
-
/* =================================================================
|
|
303
|
-
TEXT HIERARCHY
|
|
304
|
-
================================================================= */
|
|
305
|
-
|
|
306
|
-
/* Text hierarchy - emphasis based, not semantic */
|
|
307
|
-
--ty-text: #111827;
|
|
308
|
-
--ty-text-bold: #000000;
|
|
309
|
-
--ty-text-strong: #000000;
|
|
310
|
-
--ty-text-soft: #374151;
|
|
311
|
-
--ty-text-faint: #9ca3af;
|
|
312
|
-
|
|
313
199
|
/* =================================================================
|
|
314
200
|
COMPONENT TOKENS
|
|
315
201
|
================================================================= */
|
|
@@ -334,70 +220,8 @@ COMPONENT TOKENS
|
|
|
334
220
|
--ty-modal-full-height: 95vh;
|
|
335
221
|
|
|
336
222
|
/* Input component tokens */
|
|
337
|
-
--ty-input-bg: #ffffff;
|
|
338
|
-
--ty-input-color: #111827;
|
|
339
|
-
--ty-input-border: #d1d5db;
|
|
340
|
-
--ty-input-border-hover: #9ca3af;
|
|
341
|
-
--ty-input-border-focus: var(--ty-color-primary);
|
|
342
|
-
--ty-input-shadow-focus: rgba(59, 130, 246, 0.1);
|
|
343
|
-
--ty-input-placeholder: #9ca3af;
|
|
344
|
-
--ty-input-disabled-bg: #f9fafb;
|
|
345
|
-
--ty-input-disabled-border: #e5e7eb;
|
|
346
|
-
--ty-input-disabled-color: #9ca3af;
|
|
347
223
|
--ty-label-color: #374151;
|
|
348
224
|
|
|
349
|
-
/* Input semantic states */
|
|
350
|
-
--ty-input-success-border: var(--ty-color-success);
|
|
351
|
-
--ty-input-danger-border: var(--ty-color-danger);
|
|
352
|
-
--ty-input-warning-border: var(--ty-color-warning);
|
|
353
|
-
|
|
354
|
-
/* =================================================================
|
|
355
|
-
SOLID BUTTON FILLS — saturated brand backgrounds for appearance="solid"
|
|
356
|
-
Each flavor defines:
|
|
357
|
-
--ty-solid-{flavor} base saturated fill
|
|
358
|
-
--ty-solid-{flavor}-strong stronger fill (for solid+ tone)
|
|
359
|
-
--ty-solid-{flavor}-soft softer fill (for solid- tone)
|
|
360
|
-
--ty-solid-{flavor}-fg paired text color (default white)
|
|
361
|
-
Strong/soft default to var(--ty-color-{flavor}-strong/-soft) so they
|
|
362
|
-
inherit from the existing color hierarchy. Override per flavor if needed.
|
|
363
|
-
================================================================= */
|
|
364
|
-
|
|
365
|
-
/* Primary */
|
|
366
|
-
--ty-solid-primary: #4076b9;
|
|
367
|
-
--ty-solid-primary-strong: var(--ty-color-primary-bold);
|
|
368
|
-
--ty-solid-primary-soft: #7ea7d9;
|
|
369
|
-
--ty-solid-primary-fg: white;
|
|
370
|
-
|
|
371
|
-
/* Secondary */
|
|
372
|
-
--ty-solid-secondary: #7e67b4;
|
|
373
|
-
--ty-solid-secondary-strong: #7d58d1;
|
|
374
|
-
--ty-solid-secondary-soft: #9f8ec5;
|
|
375
|
-
--ty-solid-secondary-fg: white;
|
|
376
|
-
|
|
377
|
-
/* Success */
|
|
378
|
-
--ty-solid-success: #3bb68d;
|
|
379
|
-
--ty-solid-success-strong: #27956e;
|
|
380
|
-
--ty-solid-success-soft: #69b99e;
|
|
381
|
-
--ty-solid-success-fg: white;
|
|
382
|
-
|
|
383
|
-
/* Danger */
|
|
384
|
-
--ty-solid-danger: #df5b5b;
|
|
385
|
-
--ty-solid-danger-strong: #cc3e3e;
|
|
386
|
-
--ty-solid-danger-soft: #d57a7a;
|
|
387
|
-
--ty-solid-danger-fg: white;
|
|
388
|
-
|
|
389
|
-
/* Warning */
|
|
390
|
-
--ty-solid-warning: #e1a644;
|
|
391
|
-
--ty-solid-warning-strong: #f59e0b;
|
|
392
|
-
--ty-solid-warning-soft: #fbc56d;
|
|
393
|
-
--ty-solid-warning-fg: white;
|
|
394
|
-
|
|
395
|
-
/* Neutral */
|
|
396
|
-
--ty-solid-neutral: #414141;
|
|
397
|
-
--ty-solid-neutral-strong: #000000;
|
|
398
|
-
--ty-solid-neutral-soft: #6e6e6e;
|
|
399
|
-
--ty-solid-neutral-fg: white;
|
|
400
|
-
|
|
401
225
|
/* =================================================================
|
|
402
226
|
DESIGN SYSTEM TOKENS
|
|
403
227
|
================================================================= */
|
|
@@ -497,6 +321,39 @@ DESIGN SYSTEM TOKENS
|
|
|
497
321
|
--ty-font-bold: 680;
|
|
498
322
|
--ty-font-extrabold: 800;
|
|
499
323
|
|
|
324
|
+
/* Semantic weight dials — MODE-FLIPPED (see the html.dark block).
|
|
325
|
+
Light text on dark surfaces optically blooms (halation), so dark mode
|
|
326
|
+
wants genuinely lighter weights than light mode; a single fixed weight
|
|
327
|
+
can't be right in both. Components consume these instead of the raw
|
|
328
|
+
scale above:
|
|
329
|
+
--ty-weight-action buttons, interactive chrome
|
|
330
|
+
--ty-weight-label tags, chips, badges
|
|
331
|
+
Theme these like any other token — per :root, html.dark, a named theme
|
|
332
|
+
pack, or one element. The theme layer registers them as typed numbers,
|
|
333
|
+
so with a variable font, weight crossfades during theme transitions
|
|
334
|
+
along with the colors. */
|
|
335
|
+
--ty-weight-action: var(--ty-font-medium);
|
|
336
|
+
--ty-weight-label: 440;
|
|
337
|
+
|
|
338
|
+
/* Solid-button depth chrome (consumed in button.ts):
|
|
339
|
+
--ty-button-depth master intensity 0–1. 0 = pixel-flat (the old
|
|
340
|
+
look), 1 = full tactile gloss. Scales the
|
|
341
|
+
derived border offset, top sheen and drop
|
|
342
|
+
shadow together. Themable per mode / theme
|
|
343
|
+
pack / element like any other dial.
|
|
344
|
+
--ty-button-border-l L-offset of the fill-derived 1px border,
|
|
345
|
+
mode-flipped below: dark mode needs a LIGHTER-
|
|
346
|
+
than-fill hairline (solids wash out against
|
|
347
|
+
dark surfaces without a lit edge), light mode
|
|
348
|
+
a slightly darker one. */
|
|
349
|
+
--ty-button-depth: 0.35;
|
|
350
|
+
--ty-button-border-l: -0.08;
|
|
351
|
+
/* Neutral (ink) gets its own, stronger edge: it has no hue separating it
|
|
352
|
+
from the canvas, so the same offset that reads fine on colored fills
|
|
353
|
+
nearly vanishes on it — especially in dark mode, where the ink fill
|
|
354
|
+
sits close to the page. */
|
|
355
|
+
--ty-button-border-l-neutral: -0.25;
|
|
356
|
+
|
|
500
357
|
--ty-line-height-none: 1;
|
|
501
358
|
--ty-line-height-tight: 1.25;
|
|
502
359
|
--ty-line-height-snug: 1.375;
|
|
@@ -504,26 +361,33 @@ DESIGN SYSTEM TOKENS
|
|
|
504
361
|
--ty-line-height-relaxed: 1.625;
|
|
505
362
|
--ty-line-height-loose: 2;
|
|
506
363
|
|
|
507
|
-
/* Transitions
|
|
364
|
+
/* Transitions. Each routes through --ty-local-transition first — unset by
|
|
365
|
+
default (falls through to the real value below), but the theme engine's
|
|
366
|
+
.ty-theme-switching sets it to `none` for the duration of a theme swap,
|
|
367
|
+
so components using these tokens don't run their own hover/focus
|
|
368
|
+
transition at the same time as the coordinated theme crossfade. See
|
|
369
|
+
tyrell-theme.css SECTION 3 — THEME TRANSITIONS. */
|
|
508
370
|
--ty-transition-none: none;
|
|
509
|
-
--ty-transition-all: all 150ms cubic-bezier(0.4, 0, 0.2, 1);
|
|
510
|
-
--ty-transition-colors:
|
|
371
|
+
--ty-transition-all: var(--ty-local-transition, all 150ms cubic-bezier(0.4, 0, 0.2, 1));
|
|
372
|
+
--ty-transition-colors: var(--ty-local-transition,
|
|
511
373
|
bg-color, border-color, color, fill,
|
|
512
|
-
stroke 150ms cubic-bezier(0.4, 0, 0.2, 1);
|
|
513
|
-
--ty-transition-shadow: box-shadow 150ms cubic-bezier(0.4, 0, 0.2, 1);
|
|
514
|
-
--ty-transition-transform: transform 150ms cubic-bezier(0.4, 0, 0.2, 1);
|
|
515
|
-
|
|
516
|
-
/* Component Sizes
|
|
517
|
-
|
|
518
|
-
|
|
374
|
+
stroke 150ms cubic-bezier(0.4, 0, 0.2, 1));
|
|
375
|
+
--ty-transition-shadow: var(--ty-local-transition, box-shadow 150ms cubic-bezier(0.4, 0, 0.2, 1));
|
|
376
|
+
--ty-transition-transform: var(--ty-local-transition, transform 150ms cubic-bezier(0.4, 0, 0.2, 1));
|
|
377
|
+
|
|
378
|
+
/* Component Sizes — single source of truth for FIELD heights.
|
|
379
|
+
Fields (ty-input, ty-select, ty-date-picker) come in exactly three
|
|
380
|
+
sizes and consume these via min-height: var(--ty-size-*), so the same
|
|
381
|
+
`size` attribute is the same height on every field. Shared scale with
|
|
382
|
+
ty-button's 4px ladder (see button.ts): field sm = button md (32px),
|
|
383
|
+
field md = button lg (36px), field lg = button xl (40px) — a button
|
|
384
|
+
and a field of the paired size sit flush, same height, in a row. */
|
|
519
385
|
--ty-size-sm: 2rem;
|
|
520
386
|
/* 32px */
|
|
521
|
-
--ty-size-md: 2.
|
|
387
|
+
--ty-size-md: 2.25rem;
|
|
388
|
+
/* 36px */
|
|
389
|
+
--ty-size-lg: 2.5rem;
|
|
522
390
|
/* 40px */
|
|
523
|
-
--ty-size-lg: 3rem;
|
|
524
|
-
/* 48px */
|
|
525
|
-
--ty-size-xl: 3.5rem;
|
|
526
|
-
/* 56px */
|
|
527
391
|
|
|
528
392
|
/* Z-Index Scale */
|
|
529
393
|
--ty-z-auto: auto;
|
|
@@ -558,6 +422,34 @@ DESIGN SYSTEM TOKENS
|
|
|
558
422
|
transparent
|
|
559
423
|
);
|
|
560
424
|
--ty-scroll-shadow-transition: opacity 0.2s ease-out;
|
|
425
|
+
|
|
426
|
+
/* =================================================================
|
|
427
|
+
TOOLTIP (default/"dark" flavor)
|
|
428
|
+
Deliberately theme-INDEPENDENT — defined once here, not redeclared in
|
|
429
|
+
html.dark below. A tooltip's job is to pop against whatever it's sitting
|
|
430
|
+
on, light page or dark; every major library (Material, Bootstrap, Ant,
|
|
431
|
+
Shoelace) keeps its default tooltip a fixed dark chip regardless of page
|
|
432
|
+
theme. Override on :root (or scope to a container) to retheme globally
|
|
433
|
+
without touching flavor="light"/"info"/other components.
|
|
434
|
+
Values are pure achromatic gray (R=G=B, no hue) — matches
|
|
435
|
+
--ty-solid-neutral's "no tint" convention. Don't reuse a Tailwind
|
|
436
|
+
slate/cool-gray hex here (e.g. #1f2937) — those carry a real blue
|
|
437
|
+
undertone (blue channel > red/green) and read as a color flavor next to
|
|
438
|
+
genuinely neutral buttons, which was exactly the bug being fixed.
|
|
439
|
+
================================================================= */
|
|
440
|
+
--ty-tooltip-bg: #262626;
|
|
441
|
+
--ty-tooltip-color: #f5f5f5;
|
|
442
|
+
--ty-tooltip-border: #404040;
|
|
443
|
+
|
|
444
|
+
/* =================================================================
|
|
445
|
+
CALENDAR — "other month" day de-emphasis
|
|
446
|
+
--ty-color-neutral-faint alone is only ~2.5:1 against white — already
|
|
447
|
+
below the 4.5:1 WCAG AA text minimum before the (now-removed) opacity
|
|
448
|
+
fade made it worse still. This is its own token, calibrated to actually
|
|
449
|
+
pass, rather than reusing -faint here. Real bug, caught by adding
|
|
450
|
+
axe-core coverage for the first time, not a design choice being revised.
|
|
451
|
+
================================================================= */
|
|
452
|
+
--ty-calendar-other-month-color: #6b7280; /* 4.83:1 vs white */
|
|
561
453
|
}
|
|
562
454
|
|
|
563
455
|
/* =================================================================
|
|
@@ -566,54 +458,20 @@ DARK THEME OVERRIDES
|
|
|
566
458
|
|
|
567
459
|
html.dark,
|
|
568
460
|
html[data-theme="dark"] {
|
|
569
|
-
/*
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
/*
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
|
|
579
|
-
|
|
580
|
-
|
|
581
|
-
|
|
582
|
-
--ty-
|
|
583
|
-
--ty-color-secondary-bold: #c4b5fd;
|
|
584
|
-
--ty-color-secondary: #a78bfa;
|
|
585
|
-
--ty-color-secondary-soft: #8269bc;
|
|
586
|
-
--ty-color-secondary-faint: #76619f;
|
|
587
|
-
|
|
588
|
-
/* Success */
|
|
589
|
-
--ty-color-success-strong: #c2f0df;
|
|
590
|
-
--ty-color-success-bold: #6ee7b7;
|
|
591
|
-
--ty-color-success: #3aba8b;
|
|
592
|
-
--ty-color-success-soft: #459679;
|
|
593
|
-
--ty-color-success-faint: #1b795c;
|
|
594
|
-
|
|
595
|
-
/* Danger */
|
|
596
|
-
--ty-color-danger-strong: #ffabab;
|
|
597
|
-
--ty-color-danger-bold: #e58787;
|
|
598
|
-
--ty-color-danger: #d06f6f;
|
|
599
|
-
--ty-color-danger-soft: #b06666;
|
|
600
|
-
--ty-color-danger-faint: #aa6e6e;
|
|
601
|
-
|
|
602
|
-
/* Warning */
|
|
603
|
-
--ty-color-warning-strong: #fde68a;
|
|
604
|
-
--ty-color-warning-bold: #fcd34d;
|
|
605
|
-
--ty-color-warning: #fbbf24;
|
|
606
|
-
--ty-color-warning-soft: #f59e0b;
|
|
607
|
-
--ty-color-warning-faint: #a06726;
|
|
608
|
-
|
|
609
|
-
/* Neutral */
|
|
610
|
-
--ty-color-neutral-strong: #ffffff;
|
|
611
|
-
--ty-color-neutral-bold: #f9fafb;
|
|
612
|
-
--ty-color-neutral: #d6d6d6;
|
|
613
|
-
--ty-color-neutral-soft: #696969;
|
|
614
|
-
--ty-color-neutral-faint: #474747;
|
|
615
|
-
|
|
616
|
-
/* Accent - dark mode (emphasis inverted) */
|
|
461
|
+
/* Weight dials flip with the mode — light-on-dark text blooms, so dark
|
|
462
|
+
mode runs genuinely lighter. See the :root definitions. */
|
|
463
|
+
--ty-weight-action: var(--ty-font-normal);
|
|
464
|
+
--ty-weight-label: var(--ty-font-normal);
|
|
465
|
+
|
|
466
|
+
/* Colored solid buttons: no border in dark mode — border color equals
|
|
467
|
+
the fill exactly, so it's geometrically present (depth 0 keeps
|
|
468
|
+
geometry stable) but invisible. Neutral keeps its own separate,
|
|
469
|
+
stronger dial (below) since its dark ink fill needs the lit edge to
|
|
470
|
+
read as a shape at all against a near-black canvas; colored fills
|
|
471
|
+
don't have that problem (their own hue/saturation already separates
|
|
472
|
+
them from the page), so no border reads as cleaner. */
|
|
473
|
+
--ty-button-border-l: 0;
|
|
474
|
+
--ty-button-border-l-neutral: 0.5;
|
|
617
475
|
|
|
618
476
|
/* Backgrounds for dark mode */
|
|
619
477
|
--ty-bg-faint: #0f1419;
|
|
@@ -625,63 +483,12 @@ Emphasis logic inverts: lighter = more emphasis
|
|
|
625
483
|
/* Focus ring gap */
|
|
626
484
|
--ty-focus-ring-gap: #1f2937;
|
|
627
485
|
|
|
628
|
-
/* Semantic backgrounds - much darker in dark mode */
|
|
629
|
-
--ty-bg-primary-bold: #43517a;
|
|
630
|
-
--ty-bg-primary: #394159;
|
|
631
|
-
--ty-bg-primary-soft: #323a4f;
|
|
632
|
-
|
|
633
|
-
--ty-bg-secondary-bold: #58368e;
|
|
634
|
-
--ty-bg-secondary: #4a3c65;
|
|
635
|
-
--ty-bg-secondary-soft: #3b3645;
|
|
636
|
-
|
|
637
|
-
--ty-bg-success: #3a4442;
|
|
638
|
-
--ty-bg-success-bold: #405752;
|
|
639
|
-
--ty-bg-success-soft: #2f3b38;
|
|
640
|
-
|
|
641
|
-
--ty-bg-danger-bold: #853535;
|
|
642
|
-
--ty-bg-danger: #522828;
|
|
643
|
-
--ty-bg-danger-soft: #483c3c;
|
|
644
|
-
|
|
645
|
-
--ty-bg-warning-bold: #743953;
|
|
646
|
-
--ty-bg-warning: #694555;
|
|
647
|
-
--ty-bg-warning-soft: #45333b;
|
|
648
|
-
|
|
649
|
-
--ty-bg-neutral-bold: #414141;
|
|
650
|
-
--ty-bg-neutral: #323232;
|
|
651
|
-
--ty-bg-neutral-soft: #242424;
|
|
652
|
-
|
|
653
|
-
/* Accent backgrounds - dark mode */
|
|
654
|
-
|
|
655
|
-
/* Borders for dark mode */
|
|
656
|
-
--ty-border-strong: #8c8c8c;
|
|
657
|
-
--ty-border-bold: #666666;
|
|
658
|
-
--ty-border: #535353;
|
|
659
|
-
--ty-border-soft: #1f2937;
|
|
660
|
-
--ty-border-faint: #030712;
|
|
661
|
-
|
|
662
486
|
/* Scrollbar - dark mode */
|
|
663
|
-
--ty-scrollbar-thumb: rgba(255, 255, 255, 0.
|
|
664
|
-
--ty-scrollbar-thumb-hover: rgba(255, 255, 255, 0.
|
|
665
|
-
--ty-scrollbar-thumb-active: rgba(255, 255, 255, 0.
|
|
487
|
+
--ty-scrollbar-thumb: rgba(255, 255, 255, 0.13);
|
|
488
|
+
--ty-scrollbar-thumb-hover: rgba(255, 255, 255, 0.22);
|
|
489
|
+
--ty-scrollbar-thumb-active: rgba(255, 255, 255, 0.3);
|
|
666
490
|
--ty-scrollbar-track: transparent;
|
|
667
|
-
--ty-scrollbar-track-hover: rgba(255, 255, 255, 0.
|
|
668
|
-
|
|
669
|
-
--ty-surface-canvas: black;
|
|
670
|
-
--ty-surface-content: #1a1a1a;
|
|
671
|
-
--ty-surface-elevated: #282828;
|
|
672
|
-
--ty-surface-floating: #343434;
|
|
673
|
-
--ty-surface-input: #1f2937;
|
|
674
|
-
|
|
675
|
-
--ty-content-border: #030712;
|
|
676
|
-
--ty-elevated-border: #414141;
|
|
677
|
-
--ty-border: #3e3e3e;
|
|
678
|
-
--ty-floating-border: #494949;
|
|
679
|
-
|
|
680
|
-
--ty-text-bold: #f9fafb;
|
|
681
|
-
--ty-text-strong: #ffffff;
|
|
682
|
-
--ty-text: #d6d6d6;
|
|
683
|
-
--ty-text-soft: #7f8590;
|
|
684
|
-
--ty-text-faint: #555a63;
|
|
491
|
+
--ty-scrollbar-track-hover: rgba(255, 255, 255, 0.04);
|
|
685
492
|
|
|
686
493
|
/* Shadows need to be darker/more prominent in dark mode */
|
|
687
494
|
--ty-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.2);
|
|
@@ -695,55 +502,7 @@ Emphasis logic inverts: lighter = more emphasis
|
|
|
695
502
|
0 20px 25px -5px rgba(0, 0, 0, 0.3), 0 8px 10px -6px rgba(0, 0, 0, 0.3);
|
|
696
503
|
--ty-shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, 0.5);
|
|
697
504
|
|
|
698
|
-
/* Solid button fills for dark mode — strong/soft/fg chain through automatically.
|
|
699
|
-
Note: --ty-color-{flavor}-strong is light-toned in dark mode (emphasis
|
|
700
|
-
inverts), so solid+ buttons will have a light bg with white text — low
|
|
701
|
-
contrast for some flavors. Override per flavor via --ty-solid-{flavor}-fg
|
|
702
|
-
if a specific brand needs darker text. */
|
|
703
|
-
--ty-solid-primary: #3e536c;
|
|
704
|
-
--ty-solid-primary-strong: #426084;
|
|
705
|
-
--ty-solid-primary-soft: #343f4c;
|
|
706
|
-
--ty-solid-primary-fg: white;
|
|
707
|
-
|
|
708
|
-
--ty-solid-secondary: #7e67b4;
|
|
709
|
-
--ty-solid-secondary-strong: #8269bc;
|
|
710
|
-
--ty-solid-secondary-soft: #52466a;
|
|
711
|
-
--ty-solid-secondary-fg: white;
|
|
712
|
-
|
|
713
|
-
/* Success */
|
|
714
|
-
--ty-solid-success: #3bb68d;
|
|
715
|
-
--ty-solid-success-strong: #459679;
|
|
716
|
-
--ty-solid-success-soft: #285748;
|
|
717
|
-
--ty-solid-success-fg: white;
|
|
718
|
-
|
|
719
|
-
/* Danger */
|
|
720
|
-
--ty-solid-danger: #df5b5b;
|
|
721
|
-
--ty-solid-danger-strong: #cc3e3e;
|
|
722
|
-
--ty-solid-danger-soft: #875656;
|
|
723
|
-
--ty-solid-danger-fg: white;
|
|
724
|
-
|
|
725
|
-
/* Warning */
|
|
726
|
-
--ty-solid-warning: #e1a644;
|
|
727
|
-
--ty-solid-warning-strong: #f59e0b;
|
|
728
|
-
--ty-solid-warning-soft: #8b6334;
|
|
729
|
-
--ty-solid-warning-fg: white;
|
|
730
|
-
|
|
731
|
-
--ty-solid-neutral: #414141;
|
|
732
|
-
--ty-solid-neutral-strong: #4c4c4c;
|
|
733
|
-
--ty-solid-neutral-soft: #2a2a2a;
|
|
734
|
-
--ty-solid-neutral-fg: white;
|
|
735
|
-
|
|
736
505
|
/* Input component tokens - dark mode */
|
|
737
|
-
--ty-input-bg: #1b1b1b;
|
|
738
|
-
--ty-input-color: #f9fafb;
|
|
739
|
-
--ty-input-border: #505050;
|
|
740
|
-
--ty-input-border-hover: #7f7f7f;
|
|
741
|
-
--ty-input-border-focus: var(--ty-color-primary);
|
|
742
|
-
--ty-input-shadow-focus: rgba(96, 165, 250, 0.1);
|
|
743
|
-
--ty-input-placeholder: #717171;
|
|
744
|
-
--ty-input-disabled-bg: #282828;
|
|
745
|
-
--ty-input-disabled-border: #2e2e2e;
|
|
746
|
-
--ty-input-disabled-color: #717171;
|
|
747
506
|
--ty-label-color: #d1d5db;
|
|
748
507
|
|
|
749
508
|
/* Modal - dark mode */
|
|
@@ -767,6 +526,10 @@ Emphasis logic inverts: lighter = more emphasis
|
|
|
767
526
|
rgba(0, 0, 0, 0),
|
|
768
527
|
transparent
|
|
769
528
|
);
|
|
529
|
+
|
|
530
|
+
/* Calendar "other month" de-emphasis — see the :root definition for why
|
|
531
|
+
this is its own token instead of --ty-color-neutral-faint. */
|
|
532
|
+
--ty-calendar-other-month-color: #8a8a8a; /* 5.04:1 vs dark content bg (#1a1a1a) */
|
|
770
533
|
}
|
|
771
534
|
|
|
772
535
|
/* =================================================================
|
|
@@ -826,11 +589,6 @@ html.dark textarea::-moz-selection {
|
|
|
826
589
|
color: var(--ty-color-primary-strong);
|
|
827
590
|
}
|
|
828
591
|
|
|
829
|
-
.ty-selection-secondary ::selection,
|
|
830
|
-
.ty-selection-secondary::-moz-selection {
|
|
831
|
-
background-color: var(--ty-color-secondary-soft);
|
|
832
|
-
color: var(--ty-color-secondary-strong);
|
|
833
|
-
}
|
|
834
592
|
|
|
835
593
|
.ty-selection-success ::selection,
|
|
836
594
|
.ty-selection-success::-moz-selection {
|
|
@@ -863,11 +621,6 @@ html.dark .ty-selection-primary::-moz-selection {
|
|
|
863
621
|
color: white;
|
|
864
622
|
}
|
|
865
623
|
|
|
866
|
-
html.dark .ty-selection-secondary ::selection,
|
|
867
|
-
html.dark .ty-selection-secondary::-moz-selection {
|
|
868
|
-
background-color: var(--ty-color-secondary);
|
|
869
|
-
color: white;
|
|
870
|
-
}
|
|
871
624
|
|
|
872
625
|
html.dark .ty-selection-success ::selection,
|
|
873
626
|
html.dark .ty-selection-success::-moz-selection {
|
|
@@ -1024,17 +777,8 @@ SEMANTIC BACKGROUND UTILITIES
|
|
|
1024
777
|
background-color: var(--ty-bg-primary-soft);
|
|
1025
778
|
}
|
|
1026
779
|
|
|
1027
|
-
.ty-bg-secondary {
|
|
1028
|
-
background-color: var(--ty-bg-secondary);
|
|
1029
|
-
}
|
|
1030
780
|
|
|
1031
|
-
.ty-bg-secondary\+ {
|
|
1032
|
-
background-color: var(--ty-bg-secondary-bold);
|
|
1033
|
-
}
|
|
1034
781
|
|
|
1035
|
-
.ty-bg-secondary- {
|
|
1036
|
-
background-color: var(--ty-bg-secondary-soft);
|
|
1037
|
-
}
|
|
1038
782
|
|
|
1039
783
|
.ty-bg-success {
|
|
1040
784
|
background-color: var(--ty-bg-success);
|
|
@@ -1084,7 +828,6 @@ SEMANTIC BACKGROUND UTILITIES
|
|
|
1084
828
|
background-color: var(--ty-bg-neutral-soft);
|
|
1085
829
|
}
|
|
1086
830
|
|
|
1087
|
-
/* Accent backgrounds */
|
|
1088
831
|
/* =================================================================
|
|
1089
832
|
TEXT HIERARCHY UTILITIES
|
|
1090
833
|
================================================================= */
|
|
@@ -1135,26 +878,9 @@ SEMANTIC TEXT COLORS - 5-VARIANT SYSTEM
|
|
|
1135
878
|
color: var(--ty-color-primary-faint) !important;
|
|
1136
879
|
}
|
|
1137
880
|
|
|
1138
|
-
/* Secondary text colors */
|
|
1139
|
-
.ty-text-secondary\+\+ {
|
|
1140
|
-
color: var(--ty-color-secondary-strong) !important;
|
|
1141
|
-
}
|
|
1142
881
|
|
|
1143
|
-
.ty-text-secondary\+ {
|
|
1144
|
-
color: var(--ty-color-secondary-bold) !important;
|
|
1145
|
-
}
|
|
1146
882
|
|
|
1147
|
-
.ty-text-secondary {
|
|
1148
|
-
color: var(--ty-color-secondary) !important;
|
|
1149
|
-
}
|
|
1150
883
|
|
|
1151
|
-
.ty-text-secondary- {
|
|
1152
|
-
color: var(--ty-color-secondary-soft) !important;
|
|
1153
|
-
}
|
|
1154
|
-
|
|
1155
|
-
.ty-text-secondary-- {
|
|
1156
|
-
color: var(--ty-color-secondary-faint) !important;
|
|
1157
|
-
}
|
|
1158
884
|
|
|
1159
885
|
/* Success text colors */
|
|
1160
886
|
.ty-text-success\+\+ {
|
|
@@ -1240,7 +966,6 @@ SEMANTIC TEXT COLORS - 5-VARIANT SYSTEM
|
|
|
1240
966
|
color: var(--ty-color-neutral-faint) !important;
|
|
1241
967
|
}
|
|
1242
968
|
|
|
1243
|
-
/* Accent text colors */
|
|
1244
969
|
/* =================================================================
|
|
1245
970
|
BORDER UTILITIES
|
|
1246
971
|
================================================================= */
|
|
@@ -1271,9 +996,6 @@ BORDER UTILITIES
|
|
|
1271
996
|
border-color: var(--ty-border-primary);
|
|
1272
997
|
}
|
|
1273
998
|
|
|
1274
|
-
.ty-border-secondary {
|
|
1275
|
-
border-color: var(--ty-border-secondary);
|
|
1276
|
-
}
|
|
1277
999
|
|
|
1278
1000
|
.ty-border-success {
|
|
1279
1001
|
border-color: var(--ty-border-success);
|
|
@@ -1360,13 +1082,7 @@ INTERACTIVE STATES
|
|
|
1360
1082
|
background-color: var(--ty-bg-primary-bold) !important;
|
|
1361
1083
|
}
|
|
1362
1084
|
|
|
1363
|
-
.hover\:ty-bg-secondary:hover {
|
|
1364
|
-
background-color: var(--ty-bg-secondary) !important;
|
|
1365
|
-
}
|
|
1366
1085
|
|
|
1367
|
-
.hover\:ty-bg-secondary\+:hover {
|
|
1368
|
-
background-color: var(--ty-bg-secondary-bold) !important;
|
|
1369
|
-
}
|
|
1370
1086
|
|
|
1371
1087
|
.hover\:ty-bg-success:hover {
|
|
1372
1088
|
background-color: var(--ty-bg-success) !important;
|
|
@@ -1431,26 +1147,9 @@ INTERACTIVE STATES
|
|
|
1431
1147
|
color: var(--ty-color-primary-faint) !important;
|
|
1432
1148
|
}
|
|
1433
1149
|
|
|
1434
|
-
/* Secondary text hover states */
|
|
1435
|
-
.hover\:ty-text-secondary\+\+:hover {
|
|
1436
|
-
color: var(--ty-color-secondary-strong) !important;
|
|
1437
|
-
}
|
|
1438
|
-
|
|
1439
|
-
.hover\:ty-text-secondary\+:hover {
|
|
1440
|
-
color: var(--ty-color-secondary-bold) !important;
|
|
1441
|
-
}
|
|
1442
1150
|
|
|
1443
|
-
.hover\:ty-text-secondary:hover {
|
|
1444
|
-
color: var(--ty-color-secondary) !important;
|
|
1445
|
-
}
|
|
1446
1151
|
|
|
1447
|
-
.hover\:ty-text-secondary-:hover {
|
|
1448
|
-
color: var(--ty-color-secondary-soft) !important;
|
|
1449
|
-
}
|
|
1450
1152
|
|
|
1451
|
-
.hover\:ty-text-secondary--:hover {
|
|
1452
|
-
color: var(--ty-color-secondary-faint) !important;
|
|
1453
|
-
}
|
|
1454
1153
|
|
|
1455
1154
|
/* Success text hover states */
|
|
1456
1155
|
.hover\:ty-text-success\+\+:hover {
|
|
@@ -1536,7 +1235,6 @@ INTERACTIVE STATES
|
|
|
1536
1235
|
color: var(--ty-color-neutral-faint) !important;
|
|
1537
1236
|
}
|
|
1538
1237
|
|
|
1539
|
-
/* Accent text hover states */
|
|
1540
1238
|
/* Hover states for borders */
|
|
1541
1239
|
/* Base border hover states */
|
|
1542
1240
|
.hover\:ty-border\+\+:hover {
|
|
@@ -1564,9 +1262,6 @@ INTERACTIVE STATES
|
|
|
1564
1262
|
border-color: var(--ty-border-primary) !important;
|
|
1565
1263
|
}
|
|
1566
1264
|
|
|
1567
|
-
.hover\:ty-border-secondary:hover {
|
|
1568
|
-
border-color: var(--ty-border-secondary) !important;
|
|
1569
|
-
}
|
|
1570
1265
|
|
|
1571
1266
|
.hover\:ty-border-success:hover {
|
|
1572
1267
|
border-color: var(--ty-border-success) !important;
|
|
@@ -1609,9 +1304,6 @@ INTERACTIVE STATES
|
|
|
1609
1304
|
border-color: var(--ty-border-primary) !important;
|
|
1610
1305
|
}
|
|
1611
1306
|
|
|
1612
|
-
.focus\:ty-border-secondary:focus {
|
|
1613
|
-
border-color: var(--ty-border-secondary) !important;
|
|
1614
|
-
}
|
|
1615
1307
|
|
|
1616
1308
|
.focus\:ty-border-success:focus {
|
|
1617
1309
|
border-color: var(--ty-border-success) !important;
|