@reliability-design/web 1.3.0 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (123) hide show
  1. package/dist/components/rel-accordion/README.md +13 -13
  2. package/dist/components/rel-accordion/rel-accordion.ts +80 -45
  3. package/dist/components/rel-alert/README.md +15 -15
  4. package/dist/components/rel-alert/rel-alert.ts +161 -159
  5. package/dist/components/rel-avatar/README.md +15 -15
  6. package/dist/components/rel-avatar/rel-avatar.ts +42 -38
  7. package/dist/components/rel-badge/README.md +5 -5
  8. package/dist/components/rel-badge/rel-badge.ts +69 -17
  9. package/dist/components/rel-breadcrumb/README.md +7 -7
  10. package/dist/components/rel-breadcrumb/rel-breadcrumb.ts +16 -13
  11. package/dist/components/rel-button/README.md +20 -20
  12. package/dist/components/rel-button/rel-button.ts +327 -105
  13. package/dist/components/rel-calendar/README.md +5 -5
  14. package/dist/components/rel-calendar/rel-calendar.ts +61 -45
  15. package/dist/components/rel-card/README.md +6 -6
  16. package/dist/components/rel-card/rel-card.ts +88 -35
  17. package/dist/components/rel-cardmedia/README.md +9 -9
  18. package/dist/components/rel-cardmedia/rel-cardmedia.ts +27 -20
  19. package/dist/components/rel-carousel/README.md +3 -3
  20. package/dist/components/rel-carousel/rel-carousel.ts +174 -90
  21. package/dist/components/rel-chart/README.md +8 -8
  22. package/dist/components/rel-chart/rel-chart.ts +59 -41
  23. package/dist/components/rel-checkbox/README.md +7 -7
  24. package/dist/components/rel-checkbox/rel-checkbox.ts +61 -61
  25. package/dist/components/rel-chip/README.md +16 -16
  26. package/dist/components/rel-chip/rel-chip.ts +143 -111
  27. package/dist/components/rel-container/README.md +11 -11
  28. package/dist/components/rel-container/rel-container.ts +35 -9
  29. package/dist/components/rel-date-picker/README.md +43 -7
  30. package/dist/components/rel-date-picker/date-format.test.ts +43 -0
  31. package/dist/components/rel-date-picker/date-format.ts +47 -0
  32. package/dist/components/rel-date-picker/rel-date-picker.ts +257 -83
  33. package/dist/components/rel-divider/README.md +9 -9
  34. package/dist/components/rel-divider/rel-divider.ts +10 -9
  35. package/dist/components/rel-drawer/README.md +1 -1
  36. package/dist/components/rel-drawer/rel-drawer-footer.ts +1 -1
  37. package/dist/components/rel-drawer/rel-drawer.ts +56 -28
  38. package/dist/components/rel-kbd/README.md +20 -20
  39. package/dist/components/rel-kbd/rel-kbd.ts +119 -25
  40. package/dist/components/rel-layout/README.md +1 -1
  41. package/dist/components/rel-layout/rel-layout.ts +2 -2
  42. package/dist/components/rel-menu/README.md +15 -15
  43. package/dist/components/rel-menu/rel-menu.ts +155 -88
  44. package/dist/components/rel-menubar/README.md +20 -20
  45. package/dist/components/rel-menubar/rel-menubar.ts +47 -31
  46. package/dist/components/rel-nav-menu/README.md +21 -21
  47. package/dist/components/rel-nav-menu/rel-nav-menu-item.ts +17 -14
  48. package/dist/components/rel-nav-menu/rel-nav-menu-panel.ts +33 -14
  49. package/dist/components/rel-nav-menu/rel-nav-menu.ts +14 -7
  50. package/dist/components/rel-navbar/README.md +7 -7
  51. package/dist/components/rel-navbar/rel-navbar.ts +12 -11
  52. package/dist/components/rel-otp/README.md +3 -3
  53. package/dist/components/rel-otp/rel-otp.ts +46 -30
  54. package/dist/components/rel-pagination/README.md +18 -18
  55. package/dist/components/rel-pagination/rel-pagination.ts +141 -90
  56. package/dist/components/rel-popover/README.md +13 -13
  57. package/dist/components/rel-popover/rel-popover-content.ts +39 -14
  58. package/dist/components/rel-popover/rel-popover.ts +18 -7
  59. package/dist/components/rel-progress/README.md +5 -5
  60. package/dist/components/rel-progress/rel-progress.ts +16 -12
  61. package/dist/components/rel-radio/README.md +9 -9
  62. package/dist/components/rel-radio/rel-radio.ts +64 -50
  63. package/dist/components/rel-range-picker/rel-range-picker.ts +120 -117
  64. package/dist/components/rel-resizable/README.md +4 -4
  65. package/dist/components/rel-resizable/rel-resizable-group.ts +15 -4
  66. package/dist/components/rel-resizable/rel-resizable-handle.ts +13 -9
  67. package/dist/components/rel-resizable/rel-resizable-panel.ts +11 -0
  68. package/dist/components/rel-segmented-button/README.md +10 -10
  69. package/dist/components/rel-segmented-button/rel-segmented-button.ts +39 -40
  70. package/dist/components/rel-select/README.md +14 -14
  71. package/dist/components/rel-select/rel-select.ts +120 -188
  72. package/dist/components/rel-sheet/README.md +10 -10
  73. package/dist/components/rel-sheet/rel-sheet.ts +82 -23
  74. package/dist/components/rel-sidebar/README.md +5 -5
  75. package/dist/components/rel-sidebar/rel-sidebar.ts +75 -60
  76. package/dist/components/rel-skeleton/rel-skeleton.ts +8 -13
  77. package/dist/components/rel-slider/README.md +10 -10
  78. package/dist/components/rel-slider/rel-slider.ts +230 -57
  79. package/dist/components/rel-snackbar/README.md +9 -9
  80. package/dist/components/rel-snackbar/rel-snackbar.ts +44 -32
  81. package/dist/components/rel-stepper/README.md +10 -10
  82. package/dist/components/rel-stepper/rel-stepper.ts +110 -46
  83. package/dist/components/rel-switch/README.md +5 -5
  84. package/dist/components/rel-switch/rel-switch.ts +23 -12
  85. package/dist/components/rel-tab/README.md +13 -13
  86. package/dist/components/rel-tab/rel-tab.ts +73 -23
  87. package/dist/components/rel-table/README.md +7 -7
  88. package/dist/components/rel-table/rel-table-body.ts +2 -1
  89. package/dist/components/rel-table/rel-table-caption.ts +10 -7
  90. package/dist/components/rel-table/rel-table-cell.ts +7 -6
  91. package/dist/components/rel-table/rel-table-footer.ts +4 -3
  92. package/dist/components/rel-table/rel-table-head.ts +11 -9
  93. package/dist/components/rel-table/rel-table-header.ts +2 -1
  94. package/dist/components/rel-table/rel-table-row.ts +5 -4
  95. package/dist/components/rel-table/rel-table.ts +16 -7
  96. package/dist/components/rel-textfield/README.md +11 -11
  97. package/dist/components/rel-textfield/rel-textfield.ts +718 -397
  98. package/dist/components/rel-toast/README.md +11 -11
  99. package/dist/components/rel-toast/rel-toast.ts +33 -30
  100. package/dist/components/rel-tooltip/README.md +7 -7
  101. package/dist/components/rel-tooltip/rel-tooltip.ts +160 -123
  102. package/dist/components/rel-topbar/rel-topbar-actions.ts +5 -2
  103. package/dist/components/rel-topbar/rel-topbar-brand.ts +12 -5
  104. package/dist/components/rel-topbar/rel-topbar-dropdown-item.ts +14 -8
  105. package/dist/components/rel-topbar/rel-topbar-dropdown.ts +8 -5
  106. package/dist/components/rel-topbar/rel-topbar-item.ts +27 -22
  107. package/dist/components/rel-topbar/rel-topbar-mobile-panel.ts +4 -1
  108. package/dist/components/rel-topbar/rel-topbar-profile.ts +71 -50
  109. package/dist/components/rel-topbar/rel-topbar-utilities.ts +5 -2
  110. package/dist/components/rel-topbar/rel-topbar.ts +37 -29
  111. package/dist/index.d.mts +227 -40
  112. package/dist/index.d.ts +227 -40
  113. package/dist/index.js +3930 -2247
  114. package/dist/index.js.map +1 -1
  115. package/dist/index.mjs +4311 -2629
  116. package/dist/index.mjs.map +1 -1
  117. package/dist/styles/vars.css +653 -346
  118. package/dist/vars-WY2XCF5G.css +653 -0
  119. package/package.json +3 -2
  120. package/dist/components/rel-range-picker/rel-range-picker.css +0 -349
  121. package/dist/styles/vars-v2.css +0 -525
  122. package/dist/vars-I2PC74XD.css +0 -346
  123. package/dist/vars-v2-VMGWTFJZ.css +0 -525
@@ -1,525 +0,0 @@
1
- /* vars-v2.css — Figma-aligned token file */
2
- /* Source of truth: semantic-vars.css (Figma export) + vars.css primitives */
3
- /* Changes from vars.css: */
4
- /* - Dark grayscale now uses Figma neutral scale (no blue tint) */
5
- /* - Added 7 opacity tokens (--rel-opacity-*) */
6
- /* - Added semantic-vars.css grayscale aliases (--rel-gray-*) */
7
- /* - Added semantic-vars.css status aliases (--rel-error-*, --rel-warning-* */
8
- /* --rel-success-*) */
9
- /* - Fixed --rel-background-success: #E8F5E8 → #E2FEEE (Figma value) */
10
- /* - Fixed --rel-error-surface-default dark: was unpinned → #FF5252 */
11
- /* - Fixed --rel-error-surface-light dark: was #2a1116 → #FFDEDE */
12
- /* - Warning dark: removed incorrect dark tint — all warning tokens */
13
- /* stay at light values (Figma has no dark overrides for warning) */
14
- /* - Dark grayscale surfaces/text/borders replaced with Figma neutral scale */
15
- /* DO NOT USE IN PRODUCTION YET — migration happens component by component */
16
-
17
- /* ------------------ THEME TRANSITIONS ------------------ */
18
- * {
19
- transition-property: color, background-color, border-color, box-shadow, fill, stroke;
20
- transition-duration: 0.2s;
21
- transition-timing-function: ease;
22
- }
23
-
24
- @media (prefers-reduced-motion: reduce) {
25
- * {
26
- transition-property: none;
27
- transition-duration: 0s;
28
- }
29
- }
30
-
31
- :root {
32
-
33
- /* ------------------ BORDER RADII ------------------ */
34
- --rel-borders-radius-border-radius-0: 0px;
35
- --rel-borders-radius-border-radius-100: 2px;
36
- --rel-borders-radius-border-radius-200: 8px;
37
- --rel-borders-radius-border-radius-300: 16px;
38
- --rel-borders-radius-border-radius-400: 24px;
39
- --rel-borders-radius-border-radius-500: 1000px;
40
-
41
- /* ------------------ BORDER WIDTHS ------------------ */
42
- --rel-borders-width-stroke-050: 0.5px;
43
- --rel-borders-width-stroke-100: 1px;
44
- --rel-borders-width-stroke-150: 1.5px;
45
- --rel-borders-width-stroke-200: 2px;
46
- --rel-borders-width-stroke-300: 3px;
47
- --rel-borders-width-stroke-400: 4px;
48
-
49
- /* ------------------ OPACITY ------------------ */
50
- /* NEW — was missing from vars.css entirely */
51
- /* In light mode: black overlays at increasing alpha */
52
- --rel-opacity-5pct: rgba(0, 0, 0, 0.05);
53
- --rel-opacity-10pct: rgba(0, 0, 0, 0.10);
54
- --rel-opacity-15pct: rgba(0, 0, 0, 0.15);
55
- --rel-opacity-20pct: rgba(0, 0, 0, 0.20);
56
- --rel-opacity-25pct: rgba(0, 0, 0, 0.25);
57
- --rel-opacity-30pct: rgba(0, 0, 0, 0.30);
58
- --rel-opacity-50pct: rgba(0, 0, 0, 0.50);
59
-
60
- /* ------------------ PRIMITIVE COLORS ------------------ */
61
- --rel-colors-green-primary: #00F49C;
62
- --rel-colors-green-secondary: #06D98C;
63
- --rel-colors-green-tertiary: #00A86B;
64
- --rel-colors-green-success: #22C55E;
65
- --rel-colors-green-credited: #4CAA47;
66
- --rel-colors-green-bg-light: #E2FEEE;
67
- /* FIXED: was #E8F5E8 — now matches Figma */
68
- --rel-colors-black: #000000;
69
- --rel-colors-gray-primary: #333333;
70
- --rel-colors-gray-heading: #2B2B2B;
71
- --rel-colors-gray-placeholder: #A9A9A9;
72
- --rel-colors-gray-dark-placeholder: #373737;
73
- --rel-colors-gray-toast-bg: #404040;
74
- --rel-colors-gray-light: #FAFAFA;
75
- --rel-colors-gray-warm: #F5F5F4;
76
- --rel-colors-gray-border: #DDDDDD;
77
- --rel-colors-gray-disabled-text: #9E9E9E;
78
- --rel-colors-gray-divider: #BDBDBD;
79
- --rel-colors-gray-tab-border: #C4C4C4;
80
- --rel-colors-gray-surface: #F5F5F5;
81
- --rel-colors-gray-screen-bg: #EEEEEE;
82
- --rel-colors-red-primary: #CC0000;
83
- --rel-colors-red-secondary: #D50000;
84
- --rel-colors-red-tertiary: #9C1E33;
85
- --rel-colors-red-bg-alert: #FFE8EB;
86
- --rel-colors-red-light: #FFDEDE;
87
- --rel-colors-white: #FFFFFF;
88
- --rel-colors-blue-primary: #0091EA;
89
- --rel-colors-blue-secondary: #4A90E2;
90
- --rel-colors-blue-tertiary: #0059F4;
91
- --rel-colors-blue-light: #80D8FF;
92
- --rel-colors-blue-bg: #E1F2FF;
93
- --rel-colors-orange-warning: #FF6D00;
94
- --rel-colors-orange-expired: #F2915C;
95
- --rel-colors-orange-bg-light: #FFE9D9;
96
- --rel-colors-orange-bg-counter: #FFF3E0;
97
- --rel-colors-yellow-pending: #FFBF43;
98
- --rel-colors-gold: #D6BA00;
99
- --rel-colors-gold-light: #F6EFD7;
100
- --rel-colors-gold-secondary: #F5F0D3;
101
- --rel-colors-platinum: #8392C9;
102
- --rel-colors-platinum-secondary: #E4E6F2;
103
- --rel-colors-silver: #BABABA;
104
- --rel-colors-silver-secondary: #F0F0F0;
105
- --rel-colors-bronze: #7D5300;
106
- --rel-colors-bronze-secondary: #E2DAC7;
107
-
108
- /* ------------------ SEMANTIC GRAYSCALE ALIASES (Figma layer) ----------- */
109
- /* NEW — sourced directly from semantic-vars.css, same resolved values */
110
- --rel-gray-text-primary: #333333;
111
- /* = --rel-colors-gray-primary */
112
- --rel-gray-text-heading: #2B2B2B;
113
- /* = --rel-colors-gray-heading */
114
- --rel-gray-text-placeholder: #A9A9A9;
115
- /* = --rel-colors-gray-placeholder*/
116
- --rel-gray-disabled-text: #9E9E9E;
117
- /* = --rel-colors-gray-disabled-text */
118
- --rel-gray-bg-light: #FAFAFA;
119
- /* = --rel-colors-gray-light */
120
- --rel-gray-bg-screen: #EEEEEE;
121
- /* = --rel-colors-gray-screen-bg */
122
- --rel-gray-bg-surface: #F5F5F5;
123
- /* = --rel-colors-gray-surface */
124
- --rel-gray-bg-toast: #404040;
125
- /* = --rel-colors-gray-toast-bg */
126
- --rel-gray-border: #DDDDDD;
127
- /* = --rel-colors-gray-border */
128
- --rel-gray-divider-default: #BDBDBD;
129
- /* = --rel-colors-gray-divider */
130
-
131
- /* ------------------ SEMANTIC STATUS ALIASES (Figma layer) -------------- */
132
- /* NEW — sourced from semantic-vars.css */
133
-
134
- /* Error */
135
- --rel-error-text: #CC0000;
136
- /* = --rel-colors-red-primary */
137
- --rel-error-border: #CC0000;
138
- --rel-error-icon: #CC0000;
139
- --rel-error-surface-dark: #9C1E33;
140
- /* = --rel-colors-red-tertiary */
141
- --rel-error-surface-default: #D50000;
142
- /* = --rel-colors-red-secondary */
143
- --rel-error-surface-light: #FFE8EB;
144
- /* = --rel-colors-red-bg-alert */
145
-
146
- /* Warning */
147
- --rel-warning-text: #FF6D00;
148
- /* = --rel-colors-orange-warning */
149
- --rel-warning-icon: #FF6D00;
150
- --rel-warning-border: #FF6D00;
151
- --rel-warning-surface-dark: #F2915C;
152
- /* = --rel-colors-orange-expired */
153
- --rel-warning-surface-default: #FFBF43;
154
- /* = --rel-colors-yellow-pending */
155
- --rel-warning-surface-light: #FFF3E0;
156
- /* = --rel-colors-orange-bg-counter */
157
-
158
- /* Success */
159
- --rel-success-text: #4CAA47;
160
- /* = --rel-colors-green-credited */
161
- --rel-success-icon: #4CAA47;
162
- --rel-success-border: #4CAA47;
163
- --rel-success-surface-dark: #00A86B;
164
- /* = --rel-colors-green-tertiary */
165
- --rel-success-surface-default: #22C55E;
166
- /* = --rel-colors-green-success */
167
- --rel-success-surface-light: #E2FEEE;
168
- /* FIXED: was #E8F5E8 */
169
-
170
- /* ------------------ SEMANTIC TEXT ------------------ */
171
- --rel-text-primary: var(--rel-colors-gray-primary);
172
- --rel-text-heading: var(--rel-colors-gray-heading);
173
- --rel-text-error: var(--rel-colors-red-primary);
174
- --rel-text-error-small: var(--rel-colors-red-secondary);
175
- --rel-text-error-medium: var(--rel-colors-red-tertiary);
176
- --rel-text-error-large: var(--rel-colors-red-tertiary);
177
- --rel-text-warning: var(--rel-colors-orange-warning);
178
- --rel-text-warning-small: var(--rel-colors-orange-expired);
179
- --rel-text-warning-medium: var(--rel-colors-yellow-pending);
180
- --rel-text-warning-large: var(--rel-colors-orange-warning);
181
- --rel-text-success: var(--rel-colors-green-success);
182
- --rel-text-success-small: var(--rel-colors-green-secondary);
183
- --rel-text-success-medium: var(--rel-colors-green-tertiary);
184
- --rel-text-success-large: var(--rel-colors-green-success);
185
- --rel-text-info: var(--rel-colors-blue-primary);
186
- --rel-text-info-secondary: var(--rel-colors-blue-secondary);
187
- --rel-text-info-hover: var(--rel-colors-blue-tertiary);
188
- --rel-text-placeholder: var(--rel-colors-gray-placeholder);
189
- --rel-text-dark-placeholder: var(--rel-colors-gray-dark-placeholder);
190
- --rel-text-disabled: var(--rel-colors-gray-disabled-text);
191
- --rel-text-credited: var(--rel-colors-green-credited);
192
-
193
- /* ------------------ SEMANTIC ICONS ------------------ */
194
- --rel-icon-info: var(--rel-colors-blue-primary);
195
- --rel-icon-error: var(--rel-colors-red-primary);
196
- --rel-icon-warning: var(--rel-colors-orange-warning);
197
- --rel-icon-success: var(--rel-colors-green-success);
198
-
199
- /* ------------------ SEMANTIC BORDERS ------------------ */
200
- --rel-border-default: var(--rel-colors-gray-border);
201
- --rel-border-error: var(--rel-colors-red-primary);
202
- --rel-border-warning: var(--rel-colors-orange-warning);
203
- --rel-border-success: var(--rel-colors-green-primary);
204
- --rel-border-info: var(--rel-colors-blue-primary);
205
- --rel-border-divider: var(--rel-colors-gray-divider);
206
- --rel-border-tab: var(--rel-colors-gray-tab-border);
207
-
208
- /* ------------------ SEMANTIC BACKGROUNDS ------------------ */
209
- --rel-background-error: var(--rel-colors-red-bg-alert);
210
- --rel-background-error-light: var(--rel-colors-red-light);
211
- --rel-background-warning: var(--rel-colors-orange-bg-light);
212
- --rel-background-warning-counter: var(--rel-colors-orange-bg-counter);
213
- --rel-background-success: var(--rel-colors-green-bg-light);
214
- /* FIXED: now #E2FEEE */
215
- --rel-background-info: var(--rel-colors-blue-bg);
216
- --rel-background-info-accent: var(--rel-colors-blue-light);
217
-
218
- /* ------------------ SEMANTIC SURFACES ------------------ */
219
- --rel-surface-secondary: var(--rel-colors-gray-light);
220
- --rel-surface-screen: var(--rel-colors-gray-screen-bg);
221
- --rel-surface-surface: var(--rel-colors-gray-surface);
222
- --rel-surface-warm: var(--rel-colors-gray-warm);
223
- --rel-surface-toast: var(--rel-colors-gray-toast-bg);
224
-
225
- /* ------------------ SHADOWS ------------------ */
226
- --rel-shadows-shadow-100: 0px 1px 2px 0px rgba(0, 0, 0, 0.3), 0px 1px 3px 1px rgba(0, 0, 0, 0.15);
227
- --rel-shadows-shadow-200: 0px 1px 2px 0px rgba(0, 0, 0, 0.3), 0px 2px 6px 2px rgba(0, 0, 0, 0.15);
228
- --rel-shadows-shadow-300: 0px 1px 2px 0px rgba(0, 0, 0, 0.3), 0px 4px 8px 3px rgba(0, 0, 0, 0.15);
229
- --rel-shadows-shadow-400: 0px 2px 3px 0px rgba(0, 0, 0, 0.3), 0px 6px 10px 4px rgba(0, 0, 0, 0.15);
230
- --rel-shadows-shadow-500: 0px 4px 4px 0px rgba(0, 0, 0, 0.3), 0px 8px 12px 6px rgba(0, 0, 0, 0.15);
231
-
232
- /* ------------------ SPACING ------------------ */
233
- --rel-spacing-space-3xs: 2px;
234
- --rel-spacing-space-2xs: 4px;
235
- --rel-spacing-space-xs: 8px;
236
- --rel-spacing-space-sm: 12px;
237
- --rel-spacing-space-md: 16px;
238
- --rel-spacing-space-lg: 20px;
239
- --rel-spacing-space-xl: 24px;
240
- --rel-spacing-space-2xl: 32px;
241
- --rel-spacing-space-3xl: 48px;
242
-
243
- /* ------------------ TYPOGRAPHY ------------------ */
244
- --rel-fontFamilies-primary: Poppins, sans-serif;
245
-
246
- --rel-fontWeights-regular: 400;
247
- --rel-fontWeights-medium: 500;
248
- --rel-fontWeights-semibold: 600;
249
- --rel-fontWeights-bold: 700;
250
-
251
- --rel-fontSizes-3xl: 36px;
252
- --rel-fontSizes-2xl: 28px;
253
- --rel-fontSizes-xl: 24px;
254
- --rel-fontSizes-lg: 20px;
255
- --rel-fontSizes-md: 14px;
256
- --rel-fontSizes-sm: 12px;
257
- --rel-fontSizes-xs: 10px;
258
-
259
- --rel-lineHeights-3xl: 48px;
260
- --rel-lineHeights-2xl: 42px;
261
- --rel-lineHeights-xl: 36px;
262
- --rel-lineHeights-lg: 28px;
263
- --rel-lineHeights-md: 20px;
264
- --rel-lineHeights-sm: 18px;
265
- --rel-lineHeights-xs: 16px;
266
- --rel-lineHeights-2xs: 12px;
267
-
268
- --rel-letterSpacing-normal: 0px;
269
- --rel-letterSpacing-dense: -0.2px;
270
- --rel-letterSpacing-denser: -0.3px;
271
- --rel-letterSpacing-densest: -0.54px;
272
-
273
- /* ------------------ OVERLAYS ------------------ */
274
- --rel-overlay-scrim: rgba(0, 0, 0, 0.5);
275
-
276
- /* ------------------ COMPAT / LEGACY ALIASES ------------------ */
277
- --rel-colors-primary-500: var(--rel-colors-blue-primary);
278
- --rel-colors-gray-body: var(--rel-text-primary);
279
-
280
- /* ------------------ SEMANTIC ALIAS LAYER — LIGHT MODE ------------------ */
281
- /* Components reference these. They flip automatically in dark mode. */
282
-
283
- /* Backgrounds */
284
- --rel-color-bg-primary: var(--rel-colors-white);
285
- /* #FFFFFF */
286
- --rel-color-bg-secondary: var(--rel-colors-gray-light);
287
- /* #FAFAFA */
288
- --rel-color-bg-tertiary: var(--rel-colors-gray-surface);
289
- /* #F5F5F5 */
290
- --rel-color-bg-hover: var(--rel-colors-gray-surface);
291
- /* #F5F5F5 */
292
- --rel-color-bg-selected: var(--rel-colors-gray-screen-bg);
293
- /* #EEEEEE */
294
-
295
- /* Text */
296
- --rel-color-text-primary: var(--rel-text-primary);
297
- /* #333333 */
298
- --rel-color-text-secondary: var(--rel-colors-gray-disabled-text);
299
- /* #9E9E9E */
300
- --rel-color-text-heading: var(--rel-text-heading);
301
- /* #2B2B2B */
302
- --rel-color-text-inverse: var(--rel-colors-white);
303
- /* #FFFFFF — pinned */
304
- --rel-color-text-disabled: var(--rel-text-disabled);
305
- /* #9E9E9E */
306
- --rel-color-text-placeholder: var(--rel-text-placeholder);
307
- /* #A9A9A9 */
308
-
309
- /* Borders */
310
- --rel-color-border-default: var(--rel-border-default);
311
- /* #DDDDDD */
312
- --rel-color-border-strong: var(--rel-colors-black);
313
- /* #000000 */
314
- --rel-color-border-focus: var(--rel-colors-blue-primary);
315
- /* #0091EA */
316
- --rel-color-border-divider: var(--rel-border-divider);
317
- /* #BDBDBD */
318
-
319
- /* Icons */
320
- --rel-color-icon-primary: var(--rel-colors-gray-placeholder);
321
- /* #A9A9A9 */
322
- --rel-color-icon-hover: var(--rel-colors-black);
323
- /* #000000 */
324
-
325
- /* Brand — pinned, never flips */
326
- --rel-color-brand: var(--rel-colors-green-primary);
327
- /* #00F49C */
328
- --rel-color-brand-hover: var(--rel-colors-green-secondary);
329
- /* #06D98C */
330
- }
331
-
332
-
333
- /* =============================================================================
334
- DARK MODE
335
- Activate by: <html data-theme="dark"> OR <html class="dark">
336
- ============================================================================= */
337
- :root[data-theme="dark"],
338
- .dark {
339
-
340
- /* ------------------ OPACITY (dark: white overlays) ------------------ */
341
- /* CHANGED: flipped from black to white-based overlays for dark mode */
342
- --rel-opacity-5pct: rgba(255, 255, 255, 0.05);
343
- --rel-opacity-10pct: rgba(255, 255, 255, 0.10);
344
- --rel-opacity-15pct: rgba(255, 255, 255, 0.15);
345
- --rel-opacity-20pct: rgba(255, 255, 255, 0.20);
346
- --rel-opacity-25pct: rgba(255, 255, 255, 0.25);
347
- --rel-opacity-30pct: rgba(255, 255, 255, 0.30);
348
- --rel-opacity-50pct: rgba(255, 255, 255, 0.50);
349
-
350
- /* ------------------ PRIMITIVE OVERRIDES — Figma neutral scale --------- */
351
- /* CHANGED: replaced blue-tinted grays with Figma's pure neutral scale */
352
- --rel-colors-white: #1A1A1A;
353
- /* was #0f1115 (blue-tinted) */
354
- --rel-colors-black: #F5F5F5;
355
- /* was #e6e8ee (blue-tinted) */
356
-
357
- --rel-colors-gray-primary: #F5F5F5;
358
- /* was #e6e8ee */
359
- --rel-colors-gray-heading: #D4D4D4;
360
- /* was #f5f7ff */
361
- --rel-colors-gray-placeholder: #A3A3A3;
362
- /* was #8b95a7 */
363
- --rel-colors-gray-dark-placeholder: #737373;
364
- /* was #707a8c */
365
- --rel-colors-gray-disabled-text: #737373;
366
- /* was #667085 */
367
-
368
- --rel-colors-gray-border: #404040;
369
- /* was #2a3241 */
370
- --rel-colors-gray-divider: #525252;
371
- /* was #2a3241 */
372
- --rel-colors-gray-tab-border: #404040;
373
- /* was #323b4b */
374
-
375
- --rel-colors-gray-screen-bg: #262626;
376
- /* was #0f1115 */
377
- --rel-colors-gray-surface: #2E2E2E;
378
- /* was #141821 */
379
- --rel-colors-gray-light: #1A1A1A;
380
- /* was #1a1f2b */
381
- --rel-colors-gray-warm: #1A1A1A;
382
- /* was #161b22 — no Figma equivalent, using bg-light */
383
- --rel-colors-gray-toast-bg: #525252;
384
- /* was #1d2430 */
385
-
386
- /* ------------------ SEMANTIC GRAYSCALE ALIASES (dark) ----------------- */
387
- --rel-gray-text-primary: #F5F5F5;
388
- --rel-gray-text-heading: #D4D4D4;
389
- --rel-gray-text-placeholder: #A3A3A3;
390
- --rel-gray-disabled-text: #737373;
391
- --rel-gray-bg-light: #1A1A1A;
392
- --rel-gray-bg-screen: #262626;
393
- --rel-gray-bg-surface: #2E2E2E;
394
- --rel-gray-bg-toast: #525252;
395
- --rel-gray-border: #404040;
396
- --rel-gray-divider-default: #525252;
397
-
398
- /* ------------------ STATUS BACKGROUNDS (DARK) ------------------------- */
399
- /* Error: adopt Figma dark values */
400
- --rel-colors-red-bg-alert: #FFE8EB;
401
- /* CHANGED: was #2a1116 — Figma keeps light */
402
- --rel-colors-red-light: #FFDEDE;
403
- /* CHANGED: was #3a151c — Figma keeps light */
404
- --rel-colors-red-secondary: #FF5252;
405
- /* CHANGED: dark surface-default override */
406
-
407
- /* Warning: Figma has NO dark overrides — keep light values */
408
- --rel-colors-orange-bg-light: #FFE9D9;
409
- /* CHANGED: was #2a1a10 — Figma unchanged */
410
- --rel-colors-orange-bg-counter: #FFF3E0;
411
- /* CHANGED: was #241a10 — Figma unchanged */
412
-
413
- /* Success: no Figma dark override for surface-light */
414
- --rel-colors-green-bg-light: #E2FEEE;
415
- /* was #0f231a — matches Figma light value */
416
-
417
- /* Info: no Figma semantic token — preserved as-is */
418
- --rel-colors-blue-bg: #0f1e2c;
419
- --rel-colors-blue-light: #1b6ea8;
420
-
421
- /* ------------------ SEMANTIC STATUS ALIASES (dark) -------------------- */
422
- /* Error dark overrides from semantic-vars.css */
423
- --rel-error-surface-default: #FF5252;
424
- /* FIXED: was not overridden in dark */
425
- --rel-error-surface-light: #FFDEDE;
426
- /* FIXED: was #2a1116 dark tint */
427
-
428
- /* Warning: unchanged in dark (Figma has no dark overrides) */
429
- /* --rel-warning-* tokens stay at light values — no override needed */
430
-
431
- /* Success: no dark overrides in Figma */
432
- /* --rel-success-* tokens stay at light values — no override needed */
433
-
434
- /* ------------------ SEMANTIC TEXT (dark) ------------------------------ */
435
- --rel-text-primary: var(--rel-colors-gray-primary);
436
- --rel-text-heading: var(--rel-colors-gray-heading);
437
- --rel-text-placeholder: var(--rel-colors-gray-placeholder);
438
- --rel-text-dark-placeholder: var(--rel-colors-gray-dark-placeholder);
439
- --rel-text-disabled: var(--rel-colors-gray-disabled-text);
440
- --rel-text-error-small: var(--rel-colors-red-secondary);
441
- /* now #FF5252 in dark */
442
-
443
- /* ------------------ SEMANTIC BORDERS (dark) --------------------------- */
444
- --rel-border-default: var(--rel-colors-gray-border);
445
- --rel-border-divider: var(--rel-colors-gray-divider);
446
- --rel-border-tab: var(--rel-colors-gray-tab-border);
447
-
448
- /* ------------------ SEMANTIC BACKGROUNDS (dark) ----------------------- */
449
- --rel-background-error: var(--rel-colors-red-bg-alert);
450
- --rel-background-error-light: var(--rel-colors-red-light);
451
- --rel-background-warning: var(--rel-colors-orange-bg-light);
452
- --rel-background-warning-counter: var(--rel-colors-orange-bg-counter);
453
- --rel-background-success: var(--rel-colors-green-bg-light);
454
- --rel-background-info: var(--rel-colors-blue-bg);
455
- --rel-background-info-accent: var(--rel-colors-blue-light);
456
-
457
- /* ------------------ SEMANTIC SURFACES (dark) -------------------------- */
458
- --rel-surface-secondary: var(--rel-colors-gray-light);
459
- --rel-surface-screen: var(--rel-colors-gray-screen-bg);
460
- --rel-surface-surface: var(--rel-colors-gray-surface);
461
- --rel-surface-warm: var(--rel-colors-gray-warm);
462
- --rel-surface-toast: var(--rel-colors-gray-toast-bg);
463
-
464
- /* ------------------ SHADOWS (dark-tuned) ------------------------------ */
465
- --rel-shadows-shadow-100: 0px 1px 2px rgba(0, 0, 0, 0.6);
466
- --rel-shadows-shadow-200: 0px 2px 6px rgba(0, 0, 0, 0.6);
467
- --rel-shadows-shadow-300: 0px 4px 10px rgba(0, 0, 0, 0.65);
468
- --rel-shadows-shadow-400: 0px 6px 16px rgba(0, 0, 0, 0.7);
469
- --rel-shadows-shadow-500: 0px 10px 24px rgba(0, 0, 0, 0.75);
470
-
471
- /* ------------------ OVERLAYS (dark) ----------------------------------- */
472
- --rel-overlay-scrim: rgba(0, 0, 0, 0.6);
473
-
474
- /* ------------------ COMPAT / LEGACY (dark) ---------------------------- */
475
- --rel-colors-primary-500: var(--rel-colors-blue-primary);
476
- --rel-colors-gray-body: var(--rel-text-primary);
477
-
478
- /* ------------------ SEMANTIC ALIAS LAYER — DARK OVERRIDES ------------- */
479
- /* Sourced from Figma neutral dark scale */
480
-
481
- /* Backgrounds */
482
- --rel-color-bg-primary: #1A1A1A;
483
- /* dark-50 — was same */
484
- --rel-color-bg-secondary: #262626;
485
- /* dark-100 — was same */
486
- --rel-color-bg-tertiary: #2E2E2E;
487
- /* dark-200 — was same */
488
- --rel-color-bg-hover: #2E2E2E;
489
- /* dark-200 — was same */
490
- --rel-color-bg-selected: #404040;
491
- /* dark-300 — was same */
492
-
493
- /* Text */
494
- --rel-color-text-primary: #F5F5F5;
495
- /* dark-900 */
496
- --rel-color-text-secondary: #D4D4D4;
497
- /* dark-700 */
498
- --rel-color-text-heading: #F5F5F5;
499
- /* dark-900 */
500
- --rel-color-text-inverse: #212121;
501
- /* gray-900 */
502
- --rel-color-text-disabled: #737373;
503
- /* dark-500 */
504
- --rel-color-text-placeholder: #737373;
505
- /* dark-500 */
506
-
507
- /* Borders */
508
- --rel-color-border-default: #404040;
509
- /* dark-300 */
510
- --rel-color-border-strong: #D4D4D4;
511
- /* dark-700 */
512
- --rel-color-border-focus: #D4D4D4;
513
- /* dark-700 */
514
- --rel-color-border-divider: #404040;
515
- /* dark-300 */
516
-
517
- /* Icons */
518
- --rel-color-icon-primary: #A3A3A3;
519
- /* dark-600 */
520
- --rel-color-icon-hover: #F5F5F5;
521
- /* dark-900 */
522
-
523
- /* Brand — intentionally pinned, no dark override */
524
- /* --rel-color-brand and --rel-color-brand-hover stay green in dark mode */
525
- }