@vanduo-oss/framework 1.3.8 → 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 (119) hide show
  1. package/README.md +87 -41
  2. package/css/components/affix.css +1 -1
  3. package/css/components/alerts.css +40 -40
  4. package/css/components/avatar.css +33 -33
  5. package/css/components/badges.css +42 -42
  6. package/css/components/breadcrumbs.css +5 -5
  7. package/css/components/bubble.css +4 -4
  8. package/css/components/buttons.css +124 -124
  9. package/css/components/cards.css +10 -10
  10. package/css/components/chips.css +28 -28
  11. package/css/components/code-snippet.css +18 -18
  12. package/css/components/collapsible.css +28 -20
  13. package/css/components/collections.css +21 -21
  14. package/css/components/datepicker.css +13 -13
  15. package/css/components/doc-search.css +46 -53
  16. package/css/components/doc-tabs.css +10 -10
  17. package/css/components/draggable.css +34 -34
  18. package/css/components/dropdown.css +14 -14
  19. package/css/components/expanding-cards.css +1 -1
  20. package/css/components/fab.css +7 -7
  21. package/css/components/flow.css +3 -3
  22. package/css/components/footer.css +26 -26
  23. package/css/components/forms.css +95 -83
  24. package/css/components/image-box.css +13 -17
  25. package/css/components/modals.css +8 -8
  26. package/css/components/music-player.css +26 -26
  27. package/css/components/navbar.css +27 -27
  28. package/css/components/pagination.css +15 -15
  29. package/css/components/preloader.css +10 -10
  30. package/css/components/progress.css +8 -8
  31. package/css/components/rating.css +4 -4
  32. package/css/components/sidenav.css +14 -14
  33. package/css/components/skeleton.css +10 -9
  34. package/css/components/spinner.css +10 -10
  35. package/css/components/spotlight.css +7 -7
  36. package/css/components/stepper.css +13 -13
  37. package/css/components/suggest.css +10 -10
  38. package/css/components/tabs.css +22 -22
  39. package/css/components/theme-customizer.css +87 -87
  40. package/css/components/timeline.css +14 -14
  41. package/css/components/timepicker.css +7 -7
  42. package/css/components/toast.css +31 -31
  43. package/css/components/tooltips.css +11 -11
  44. package/css/components/transfer.css +12 -12
  45. package/css/components/tree.css +9 -9
  46. package/css/components/waypoint.css +3 -3
  47. package/css/core/colors.css +61 -35
  48. package/css/core/grid.css +1 -6
  49. package/css/core/helpers.css +11 -11
  50. package/css/core/tokens.css +114 -36
  51. package/css/core/typography.css +15 -13
  52. package/css/core/vd-aliases.css +100 -52
  53. package/css/effects/morph.css +5 -5
  54. package/css/utilities/media.css +2 -2
  55. package/css/utilities/table.css +34 -34
  56. package/css/utilities/transitions.css +22 -10
  57. package/css/vanduo.css +14 -34
  58. package/dist/build-info.json +3 -3
  59. package/dist/vanduo.cjs.js +935 -294
  60. package/dist/vanduo.cjs.js.map +3 -3
  61. package/dist/vanduo.cjs.min.js +7 -7
  62. package/dist/vanduo.cjs.min.js.map +3 -3
  63. package/dist/vanduo.css +7942 -7824
  64. package/dist/vanduo.css.map +1 -1
  65. package/dist/vanduo.esm.js +935 -294
  66. package/dist/vanduo.esm.js.map +3 -3
  67. package/dist/vanduo.esm.min.js +7 -7
  68. package/dist/vanduo.esm.min.js.map +3 -3
  69. package/dist/vanduo.js +935 -294
  70. package/dist/vanduo.js.map +3 -3
  71. package/dist/vanduo.min.css +2 -2
  72. package/dist/vanduo.min.css.map +1 -1
  73. package/dist/vanduo.min.js +7 -7
  74. package/dist/vanduo.min.js.map +3 -3
  75. package/js/components/affix.js +2 -2
  76. package/js/components/bubble.js +3 -3
  77. package/js/components/code-snippet.js +129 -5
  78. package/js/components/collapsible.js +2 -3
  79. package/js/components/datepicker.js +2 -2
  80. package/js/components/doc-search.js +69 -11
  81. package/js/components/draggable.js +4 -4
  82. package/js/components/dropdown.js +2 -3
  83. package/js/components/expanding-cards.js +2 -2
  84. package/js/components/flow.js +2 -2
  85. package/js/components/font-switcher.js +26 -16
  86. package/js/components/glass.js +2 -2
  87. package/js/components/grid.js +19 -8
  88. package/js/components/image-box.js +49 -10
  89. package/js/components/lazy-load.js +81 -9
  90. package/js/components/modals.js +28 -12
  91. package/js/components/morph.js +2 -2
  92. package/js/components/music-player.js +2 -2
  93. package/js/components/navbar.js +2 -2
  94. package/js/components/pagination.js +2 -3
  95. package/js/components/parallax.js +9 -10
  96. package/js/components/preloader.js +14 -5
  97. package/js/components/rating.js +2 -2
  98. package/js/components/ripple.js +2 -2
  99. package/js/components/select.js +2 -3
  100. package/js/components/sidenav.js +43 -14
  101. package/js/components/spotlight.js +2 -2
  102. package/js/components/stepper.js +2 -2
  103. package/js/components/suggest.js +9 -3
  104. package/js/components/tabs.js +2 -2
  105. package/js/components/theme-customizer.js +154 -23
  106. package/js/components/theme-switcher.js +27 -16
  107. package/js/components/timeline.js +41 -12
  108. package/js/components/timepicker.js +2 -2
  109. package/js/components/toast.js +1 -1
  110. package/js/components/tooltips.js +4 -4
  111. package/js/components/transfer.js +2 -2
  112. package/js/components/tree.js +2 -2
  113. package/js/components/validate.js +2 -2
  114. package/js/components/vd-hex.js +12 -6
  115. package/js/components/waypoint.js +2 -2
  116. package/js/utils/helpers.js +7 -4
  117. package/js/utils/lifecycle.js +158 -83
  118. package/js/vanduo.js +203 -34
  119. package/package.json +3 -4
@@ -11,49 +11,94 @@
11
11
  * ============================================ */
12
12
 
13
13
  /* Primary Colors */
14
- --vd-color-primary: #0d6efd;
15
- --vd-color-primary-rgb: 13, 110, 253;
16
- --vd-color-primary-hover: #0b5ed7;
17
- --vd-color-primary-active: #0a58ca;
18
- --vd-color-primary-alpha-10: rgba(13, 110, 253, 0.1);
19
- --vd-color-primary-alpha-20: rgba(13, 110, 253, 0.2);
20
- --vd-color-primary-alpha-50: rgba(13, 110, 253, 0.5);
14
+ --vd-color-primary: var(--primary-5);
15
+ --vd-color-primary-light: var(--primary-3);
16
+ --vd-color-primary-dark: var(--primary-7);
17
+ --vd-color-primary-hover: var(--primary-6);
18
+ --vd-color-primary-active: var(--primary-7);
19
+ --vd-color-primary-rgb: 92, 124, 250;
20
+ --vd-color-primary-alpha-5: rgba(92, 124, 250, 0.05);
21
+ --vd-color-primary-alpha-08: rgba(92, 124, 250, 0.08);
22
+ --vd-color-primary-alpha-10: rgba(92, 124, 250, 0.1);
23
+ --vd-color-primary-alpha-15: rgba(92, 124, 250, 0.15);
24
+ --vd-color-primary-alpha-20: rgba(92, 124, 250, 0.2);
25
+ --vd-color-primary-alpha-30: rgba(92, 124, 250, 0.3);
26
+ --vd-color-primary-alpha-40: rgba(92, 124, 250, 0.4);
27
+ --vd-color-primary-alpha-50: rgba(92, 124, 250, 0.5);
21
28
 
22
29
  /* Secondary Colors */
23
- --vd-color-secondary: #6c757d;
24
- --vd-color-secondary-hover: #5c636a;
25
- --vd-color-secondary-active: #565e64;
30
+ --vd-color-secondary: var(--secondary-5);
31
+ --vd-color-secondary-light: var(--secondary-3);
32
+ --vd-color-secondary-dark: var(--secondary-7);
33
+ --vd-color-secondary-hover: var(--secondary-6);
34
+ --vd-color-secondary-active: var(--secondary-7);
35
+ --vd-color-secondary-alpha-10: rgba(32, 201, 151, 0.1);
36
+ --vd-color-secondary-alpha-20: rgba(32, 201, 151, 0.2);
37
+
38
+ /* Accent */
39
+ --vd-color-accent: var(--vd-color-primary);
40
+ --vd-color-accent-light: var(--vd-color-primary-light);
41
+ --vd-color-accent-dark: var(--vd-color-primary-dark);
26
42
 
27
43
  /* Semantic Colors */
28
- --vd-color-success: #198754;
29
- --vd-color-success-rgb: 25, 135, 84;
30
- --vd-color-success-alpha-10: rgba(25, 135, 84, 0.1);
31
-
32
- --vd-color-warning: #ffc107;
33
- --vd-color-warning-rgb: 255, 193, 7;
34
- --vd-color-warning-alpha-10: rgba(255, 193, 7, 0.1);
35
- --vd-color-warning-alpha-30: rgba(255, 193, 7, 0.3);
36
-
37
- --vd-color-error: #dc3545;
38
- --vd-color-error-rgb: 220, 53, 69;
39
- --vd-color-error-alpha-10: rgba(220, 53, 69, 0.1);
40
-
41
- --vd-color-info: #0dcaf0;
42
- --vd-color-info-rgb: 13, 202, 240;
43
- --vd-color-info-alpha-10: rgba(13, 202, 240, 0.1);
44
+ --vd-color-success: var(--success-6);
45
+ --vd-color-success-light: var(--success-4);
46
+ --vd-color-success-dark: var(--success-7);
47
+ --vd-color-success-hover: var(--success-7);
48
+ --vd-color-success-active: var(--success-8);
49
+ --vd-color-success-rgb: 64, 192, 87;
50
+ --vd-color-success-alpha-10: rgba(64, 192, 87, 0.1);
51
+ --vd-color-success-alpha-20: rgba(64, 192, 87, 0.2);
52
+
53
+ --vd-color-warning: var(--warning-6);
54
+ --vd-color-warning-light: var(--warning-4);
55
+ --vd-color-warning-dark: var(--warning-7);
56
+ --vd-color-warning-hover: var(--warning-7);
57
+ --vd-color-warning-active: var(--warning-8);
58
+ --vd-color-warning-rgb: 250, 176, 5;
59
+ --vd-color-warning-alpha-10: rgba(250, 176, 5, 0.1);
60
+ --vd-color-warning-alpha-20: rgba(250, 176, 5, 0.2);
61
+ --vd-color-warning-alpha-30: rgba(250, 176, 5, 0.3);
62
+
63
+ --vd-color-error: var(--danger-6);
64
+ --vd-color-error-light: var(--danger-4);
65
+ --vd-color-error-dark: var(--danger-7);
66
+ --vd-color-error-hover: var(--danger-7);
67
+ --vd-color-error-active: var(--danger-8);
68
+ --vd-color-error-rgb: 250, 82, 82;
69
+ --vd-color-error-alpha-10: rgba(250, 82, 82, 0.1);
70
+ --vd-color-error-alpha-20: rgba(250, 82, 82, 0.2);
71
+
72
+ --vd-color-danger: var(--vd-color-error);
73
+ --vd-color-danger-light: var(--vd-color-error-light);
74
+ --vd-color-danger-dark: var(--vd-color-error-dark);
75
+ --vd-color-danger-hover: var(--vd-color-error-hover);
76
+ --vd-color-danger-active: var(--vd-color-error-active);
77
+ --vd-color-danger-alpha-10: var(--vd-color-error-alpha-10);
78
+ --vd-color-danger-alpha-20: var(--vd-color-error-alpha-20);
79
+
80
+ --vd-color-info: var(--info-6);
81
+ --vd-color-info-light: var(--info-4);
82
+ --vd-color-info-dark: var(--info-7);
83
+ --vd-color-info-hover: var(--info-7);
84
+ --vd-color-info-active: var(--info-8);
85
+ --vd-color-info-rgb: 34, 139, 230;
86
+ --vd-color-info-alpha-10: rgba(34, 139, 230, 0.1);
87
+ --vd-color-info-alpha-20: rgba(34, 139, 230, 0.2);
44
88
 
45
89
  /* Neutral Colors (Open Color) */
46
90
  --vd-color-white: #ffffff;
47
- --vd-color-gray-100: #f8f9fa;
48
- --vd-color-gray-200: #e9ecef;
49
- --vd-color-gray-300: #dee2e6;
50
- --vd-color-gray-400: #ced4da;
51
- --vd-color-gray-500: #adb5bd;
52
- --vd-color-gray-600: #6c757d;
53
- --vd-color-gray-700: #495057;
54
- --vd-color-gray-800: #343a40;
55
- --vd-color-gray-900: #212529;
56
91
  --vd-color-black: #000000;
92
+ --vd-color-gray-50: var(--gray-0);
93
+ --vd-color-gray-100: var(--gray-2);
94
+ --vd-color-gray-200: var(--gray-3);
95
+ --vd-color-gray-300: var(--gray-4);
96
+ --vd-color-gray-400: var(--gray-5);
97
+ --vd-color-gray-500: var(--gray-6);
98
+ --vd-color-gray-600: var(--gray-7);
99
+ --vd-color-gray-700: var(--gray-8);
100
+ --vd-color-gray-800: var(--gray-9);
101
+ --vd-color-gray-900: #1a1d20;
57
102
 
58
103
  /* ============================================
59
104
  * BACKGROUND TOKENS
@@ -61,6 +106,8 @@
61
106
  --vd-bg-primary: var(--vd-color-white);
62
107
  --vd-bg-secondary: var(--vd-color-gray-100);
63
108
  --vd-bg-tertiary: var(--vd-color-gray-200);
109
+ --vd-bg-dark: var(--vd-color-gray-800);
110
+ --vd-bg-darker: var(--vd-color-gray-900);
64
111
 
65
112
  /* ============================================
66
113
  * TEXT TOKENS
@@ -68,13 +115,18 @@
68
115
  --vd-text-primary: var(--vd-color-gray-900);
69
116
  --vd-text-secondary: var(--vd-color-gray-600);
70
117
  --vd-text-muted: var(--vd-color-gray-500);
118
+ --vd-text-light: var(--vd-color-gray-400);
119
+ --vd-text-tertiary: var(--vd-text-secondary);
120
+ --vd-text-disabled: var(--vd-text-muted);
71
121
  --vd-text-on-primary: var(--vd-color-white);
122
+ --vd-text-inverse: var(--vd-color-white);
72
123
 
73
124
  /* ============================================
74
125
  * BORDER TOKENS
75
126
  * ============================================ */
76
127
  --vd-border-color: var(--vd-color-gray-300);
77
128
  --vd-border-color-light: var(--vd-color-gray-200);
129
+ --vd-border-color-dark: var(--vd-color-gray-400);
78
130
  --vd-border-width: 1px;
79
131
  --vd-border-radius-sm: 0.25rem;
80
132
  --vd-border-radius-md: 0.5rem;
@@ -84,7 +136,7 @@
84
136
  /* ============================================
85
137
  * TYPOGRAPHY TOKENS
86
138
  * ============================================ */
87
- --vd-font-family-base: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
139
+ --vd-font-family-base: 'Ubuntu', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
88
140
  --vd-font-family-mono: 'JetBrains Mono', 'Fira Code', monospace;
89
141
 
90
142
  /* Font Sizes (Fibonacci scale) */
@@ -206,13 +258,26 @@
206
258
  --vd-bg-primary: var(--vd-color-gray-900);
207
259
  --vd-bg-secondary: var(--vd-color-gray-800);
208
260
  --vd-bg-tertiary: var(--vd-color-gray-700);
261
+ --vd-bg-dark: var(--vd-color-black);
262
+ --vd-bg-darker: #000000;
209
263
 
210
264
  --vd-text-primary: var(--vd-color-gray-100);
211
265
  --vd-text-secondary: var(--vd-color-gray-400);
212
266
  --vd-text-muted: var(--vd-color-gray-500);
267
+ --vd-text-light: var(--vd-color-gray-600);
268
+ --vd-text-inverse: var(--vd-color-gray-900);
213
269
 
214
270
  --vd-border-color: var(--vd-color-gray-700);
215
271
  --vd-border-color-light: var(--vd-color-gray-800);
272
+ --vd-border-color-dark: var(--vd-color-gray-600);
273
+
274
+ --vd-color-primary: var(--primary-4);
275
+ --vd-color-primary-light: var(--primary-3);
276
+ --vd-color-primary-dark: var(--primary-5);
277
+ --vd-color-primary-hover: var(--primary-5);
278
+ --vd-color-primary-active: var(--primary-6);
279
+ --vd-color-primary-alpha-10: rgba(116, 143, 252, 0.15);
280
+ --vd-color-primary-alpha-20: rgba(116, 143, 252, 0.25);
216
281
 
217
282
  --vd-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.3);
218
283
  --vd-shadow-md: 0 4px 6px rgba(0, 0, 0, 0.4);
@@ -230,13 +295,26 @@
230
295
  --vd-bg-primary: var(--vd-color-gray-900);
231
296
  --vd-bg-secondary: var(--vd-color-gray-800);
232
297
  --vd-bg-tertiary: var(--vd-color-gray-700);
298
+ --vd-bg-dark: var(--vd-color-black);
299
+ --vd-bg-darker: #000000;
233
300
 
234
301
  --vd-text-primary: var(--vd-color-gray-100);
235
302
  --vd-text-secondary: var(--vd-color-gray-400);
236
303
  --vd-text-muted: var(--vd-color-gray-500);
304
+ --vd-text-light: var(--vd-color-gray-600);
305
+ --vd-text-inverse: var(--vd-color-gray-900);
237
306
 
238
307
  --vd-border-color: var(--vd-color-gray-700);
239
308
  --vd-border-color-light: var(--vd-color-gray-800);
309
+ --vd-border-color-dark: var(--vd-color-gray-600);
310
+
311
+ --vd-color-primary: var(--primary-4);
312
+ --vd-color-primary-light: var(--primary-3);
313
+ --vd-color-primary-dark: var(--primary-5);
314
+ --vd-color-primary-hover: var(--primary-5);
315
+ --vd-color-primary-active: var(--primary-6);
316
+ --vd-color-primary-alpha-10: rgba(116, 143, 252, 0.15);
317
+ --vd-color-primary-alpha-20: rgba(116, 143, 252, 0.25);
240
318
 
241
319
  --vd-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.3);
242
320
  --vd-shadow-md: 0 4px 6px rgba(0, 0, 0, 0.4);
@@ -3,9 +3,10 @@
3
3
  * Font system, headings, and text utilities
4
4
  */
5
5
 
6
+ /* stylelint-disable-next-line no-duplicate-selectors -- token families stay grouped by concern. */
6
7
  :root {
7
8
  /* Font Families */
8
- --font-family-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
9
+ --font-family-sans: 'Ubuntu', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
9
10
  --font-family-serif: Georgia, "Times New Roman", Times, serif;
10
11
  --font-family-mono: "SF Mono", Monaco, "Cascadia Code", "Roboto Mono", Consolas, "Courier New", monospace;
11
12
  }
@@ -56,6 +57,7 @@
56
57
  --font-family-sans: 'Titillium Web', -apple-system, BlinkMacSystemFont, sans-serif;
57
58
  }
58
59
 
60
+ /* stylelint-disable-next-line no-duplicate-selectors -- type scale tokens stay grouped separately from font-family tokens. */
59
61
  :root {
60
62
 
61
63
  /* Golden Ratio Type Scale (Fluid)
@@ -119,8 +121,8 @@ body {
119
121
  font-size: var(--font-size-base);
120
122
  font-weight: var(--font-weight-normal);
121
123
  line-height: var(--line-height-normal);
122
- color: var(--text-primary);
123
- background-color: var(--bg-primary);
124
+ color: var(--vd-text-primary);
125
+ background-color: var(--vd-bg-primary);
124
126
  }
125
127
 
126
128
  /* Headings */
@@ -134,7 +136,7 @@ h6 {
134
136
  margin-bottom: 0.5em;
135
137
  font-weight: var(--font-weight-bold);
136
138
  line-height: var(--line-height-tight);
137
- color: var(--text-primary);
139
+ color: var(--vd-text-primary);
138
140
  }
139
141
 
140
142
  h1 {
@@ -169,18 +171,18 @@ p {
169
171
 
170
172
  /* Links */
171
173
  a {
172
- color: var(--color-primary);
174
+ color: var(--vd-color-primary);
173
175
  text-decoration: none;
174
176
  transition: color 0.2s ease;
175
177
  }
176
178
 
177
179
  a:hover {
178
- color: var(--color-primary-dark);
180
+ color: var(--vd-color-primary-dark);
179
181
  text-decoration: underline;
180
182
  }
181
183
 
182
184
  a:focus-visible {
183
- outline: 2px solid var(--color-primary);
185
+ outline: 2px solid var(--vd-color-primary);
184
186
  outline-offset: 2px;
185
187
  }
186
188
 
@@ -217,9 +219,9 @@ blockquote {
217
219
  margin: 1em 0;
218
220
  padding-left: 0.8125rem;
219
221
  /* 13px - fib */
220
- border-left: 3px solid var(--color-primary);
222
+ border-left: 3px solid var(--vd-color-primary);
221
223
  /* fib(3) */
222
- color: var(--text-secondary);
224
+ color: var(--vd-text-secondary);
223
225
  font-style: italic;
224
226
  }
225
227
 
@@ -227,17 +229,17 @@ blockquote {
227
229
  code {
228
230
  font-family: var(--font-family-mono);
229
231
  font-size: 0.875em;
230
- background-color: var(--bg-secondary);
232
+ background-color: var(--vd-bg-secondary);
231
233
  padding: 0.125em 0.1875em;
232
234
  /* 2px 3px - fib pair */
233
235
  border-radius: var(--radius-fib-3);
234
- color: var(--color-primary-dark);
236
+ color: var(--vd-color-primary-dark);
235
237
  }
236
238
 
237
239
  pre {
238
240
  font-family: var(--font-family-mono);
239
241
  font-size: 0.875em;
240
- background-color: var(--bg-secondary);
242
+ background-color: var(--vd-bg-secondary);
241
243
  padding: 0.8125rem;
242
244
  /* 13px - fib */
243
245
  border-radius: var(--radius-fib-5);
@@ -414,4 +416,4 @@ pre code {
414
416
 
415
417
  .tracking-widest {
416
418
  letter-spacing: var(--letter-spacing-widest);
417
- }
419
+ }
@@ -1,60 +1,108 @@
1
1
  /**
2
- * Vanduo Framework - Legacy vd-* Token Aliases
3
- * Maps vd-* custom properties to the current token names.
2
+ * Vanduo Framework - Semantic Compatibility Aliases
3
+ * Maps legacy unprefixed semantic tokens to the canonical `--vd-*` API.
4
4
  */
5
5
 
6
6
  :root {
7
7
  /* Colors */
8
- --vd-color-primary: var(--color-primary);
9
- --vd-color-secondary: var(--color-secondary);
10
- --vd-color-success: var(--color-success);
11
- --vd-color-warning: var(--color-warning);
12
- --vd-color-error: var(--color-error);
13
- --vd-color-info: var(--color-info);
14
- --vd-color-white: var(--color-white);
15
- --vd-color-black: var(--color-black);
16
- --vd-color-primary-alpha-10: var(--color-primary-alpha-10);
17
- --vd-color-primary-alpha-20: var(--color-primary-alpha-20);
18
-
19
- /* Backgrounds + Text */
20
- --vd-bg-primary: var(--bg-primary);
21
- --vd-bg-secondary: var(--bg-secondary);
22
- --vd-bg-tertiary: var(--bg-tertiary);
23
- --vd-text-primary: var(--text-primary);
24
- --vd-text-secondary: var(--text-secondary);
25
- --vd-text-muted: var(--text-muted);
8
+ --color-primary: var(--vd-color-primary);
9
+ --color-primary-light: var(--vd-color-primary-light);
10
+ --color-primary-dark: var(--vd-color-primary-dark);
11
+ --color-primary-hover: var(--vd-color-primary-hover);
12
+ --color-primary-active: var(--vd-color-primary-active);
13
+ --color-primary-rgb: var(--vd-color-primary-rgb);
14
+ --color-primary-alpha-5: var(--vd-color-primary-alpha-5);
15
+ --color-primary-alpha-08: var(--vd-color-primary-alpha-08);
16
+ --color-primary-alpha-10: var(--vd-color-primary-alpha-10);
17
+ --color-primary-alpha-15: var(--vd-color-primary-alpha-15);
18
+ --color-primary-alpha-20: var(--vd-color-primary-alpha-20);
19
+ --color-primary-alpha-30: var(--vd-color-primary-alpha-30);
20
+ --color-primary-alpha-40: var(--vd-color-primary-alpha-40);
21
+ --color-primary-alpha-50: var(--vd-color-primary-alpha-50);
22
+
23
+ --color-secondary: var(--vd-color-secondary);
24
+ --color-secondary-light: var(--vd-color-secondary-light);
25
+ --color-secondary-dark: var(--vd-color-secondary-dark);
26
+ --color-secondary-hover: var(--vd-color-secondary-hover);
27
+ --color-secondary-active: var(--vd-color-secondary-active);
28
+ --color-secondary-alpha-10: var(--vd-color-secondary-alpha-10);
29
+ --color-secondary-alpha-20: var(--vd-color-secondary-alpha-20);
30
+
31
+ --color-accent: var(--vd-color-accent);
32
+ --color-accent-light: var(--vd-color-accent-light);
33
+ --color-accent-dark: var(--vd-color-accent-dark);
34
+
35
+ --color-success: var(--vd-color-success);
36
+ --color-success-light: var(--vd-color-success-light);
37
+ --color-success-dark: var(--vd-color-success-dark);
38
+ --color-success-hover: var(--vd-color-success-hover);
39
+ --color-success-active: var(--vd-color-success-active);
40
+ --color-success-alpha-10: var(--vd-color-success-alpha-10);
41
+ --color-success-alpha-20: var(--vd-color-success-alpha-20);
42
+
43
+ --color-warning: var(--vd-color-warning);
44
+ --color-warning-light: var(--vd-color-warning-light);
45
+ --color-warning-dark: var(--vd-color-warning-dark);
46
+ --color-warning-hover: var(--vd-color-warning-hover);
47
+ --color-warning-active: var(--vd-color-warning-active);
48
+ --color-warning-alpha-10: var(--vd-color-warning-alpha-10);
49
+ --color-warning-alpha-20: var(--vd-color-warning-alpha-20);
50
+ --color-warning-alpha-30: var(--vd-color-warning-alpha-30);
51
+
52
+ --color-error: var(--vd-color-error);
53
+ --color-error-light: var(--vd-color-error-light);
54
+ --color-error-dark: var(--vd-color-error-dark);
55
+ --color-error-hover: var(--vd-color-error-hover);
56
+ --color-error-active: var(--vd-color-error-active);
57
+ --color-error-alpha-10: var(--vd-color-error-alpha-10);
58
+ --color-error-alpha-20: var(--vd-color-error-alpha-20);
59
+
60
+ --color-danger: var(--vd-color-danger);
61
+ --color-danger-light: var(--vd-color-danger-light);
62
+ --color-danger-dark: var(--vd-color-danger-dark);
63
+ --color-danger-hover: var(--vd-color-danger-hover);
64
+ --color-danger-active: var(--vd-color-danger-active);
65
+
66
+ --color-info: var(--vd-color-info);
67
+ --color-info-light: var(--vd-color-info-light);
68
+ --color-info-dark: var(--vd-color-info-dark);
69
+ --color-info-hover: var(--vd-color-info-hover);
70
+ --color-info-active: var(--vd-color-info-active);
71
+ --color-info-alpha-10: var(--vd-color-info-alpha-10);
72
+ --color-info-alpha-20: var(--vd-color-info-alpha-20);
73
+
74
+ --color-white: var(--vd-color-white);
75
+ --color-black: var(--vd-color-black);
76
+ --color-gray-50: var(--vd-color-gray-50);
77
+ --color-gray-100: var(--vd-color-gray-100);
78
+ --color-gray-200: var(--vd-color-gray-200);
79
+ --color-gray-300: var(--vd-color-gray-300);
80
+ --color-gray-400: var(--vd-color-gray-400);
81
+ --color-gray-500: var(--vd-color-gray-500);
82
+ --color-gray-600: var(--vd-color-gray-600);
83
+ --color-gray-700: var(--vd-color-gray-700);
84
+ --color-gray-800: var(--vd-color-gray-800);
85
+ --color-gray-900: var(--vd-color-gray-900);
86
+
87
+ /* Backgrounds */
88
+ --bg-primary: var(--vd-bg-primary);
89
+ --bg-secondary: var(--vd-bg-secondary);
90
+ --bg-tertiary: var(--vd-bg-tertiary);
91
+ --bg-dark: var(--vd-bg-dark);
92
+ --bg-darker: var(--vd-bg-darker);
93
+
94
+ /* Text */
95
+ --text-primary: var(--vd-text-primary);
96
+ --text-secondary: var(--vd-text-secondary);
97
+ --text-tertiary: var(--vd-text-tertiary);
98
+ --text-muted: var(--vd-text-muted);
99
+ --text-light: var(--vd-text-light);
100
+ --text-disabled: var(--vd-text-disabled);
101
+ --text-on-primary: var(--vd-text-on-primary);
102
+ --text-inverse: var(--vd-text-inverse);
26
103
 
27
104
  /* Borders */
28
- --vd-border-color: var(--border-color);
29
- --vd-border-color-light: var(--border-color-light);
30
-
31
- /* Shadows */
32
- --vd-shadow-sm: var(--shadow-sm);
33
- --vd-shadow-md: var(--shadow-md);
34
- --vd-shadow-lg: var(--shadow-lg);
35
-
36
- /* Glass */
37
- --vd-glass-blur: var(--glass-blur, 12px);
38
- --vd-glass-saturate: var(--glass-saturate, 1.8);
39
- --vd-glass-bg-opacity: var(--glass-bg-opacity, 0.65);
40
- --vd-glass-bg-light: var(--glass-bg-light, rgba(255, 255, 255, var(--vd-glass-bg-opacity)));
41
- --vd-glass-bg-dark: var(--glass-bg-dark, rgba(30, 30, 30, var(--vd-glass-bg-opacity)));
42
- --vd-glass-border-alpha: var(--glass-border-alpha, 0.18);
43
- --vd-glass-border-light: var(--glass-border-light, rgba(255, 255, 255, var(--vd-glass-border-alpha)));
44
- --vd-glass-border-dark: var(--glass-border-dark, rgba(255, 255, 255, 0.08));
45
- --vd-glass-highlight-alpha: var(--glass-highlight-alpha, 0.25);
46
- --vd-glass-shadow: var(--glass-shadow, 0 8px 32px rgba(0, 0, 0, 0.12));
47
- --vd-glass-noise-opacity: var(--glass-noise-opacity, 0.03);
48
-
49
- /* Typography */
50
- --vd-font-family-base: var(--font-family-sans);
51
- --vd-font-family-mono: var(--font-family-mono);
52
- --vd-font-size-xs: var(--font-size-xs);
53
- --vd-font-size-sm: var(--font-size-sm);
54
- --vd-font-size-base: var(--font-size-base);
55
-
56
- /* Radii */
57
- --vd-btn-border-radius: var(--btn-border-radius);
58
- --vd-btn-border-radius-sm: var(--btn-border-radius-sm);
59
- --vd-btn-border-radius-lg: var(--btn-border-radius-lg);
105
+ --border-color: var(--vd-border-color);
106
+ --border-color-light: var(--vd-border-color-light);
107
+ --border-color-dark: var(--vd-border-color-dark);
60
108
  }
@@ -15,7 +15,7 @@
15
15
  --morph-duration: 0.75s;
16
16
  --morph-easing: cubic-bezier(0.2, 0.8, 0.35, 1);
17
17
  --morph-blur-peak: 11px;
18
- --morph-wave-color: var(--color-primary, #3b82f6);
18
+ --morph-wave-color: var(--vd-color-primary, #3b82f6);
19
19
  }
20
20
 
21
21
  /* ========== Base ========== */
@@ -79,7 +79,7 @@
79
79
  width: 0;
80
80
  height: 0;
81
81
  opacity: 0;
82
- filter: blur(0px) saturate(2);
82
+ filter: blur(0) saturate(2);
83
83
  }
84
84
  6% {
85
85
  opacity: 1;
@@ -108,7 +108,7 @@
108
108
  width: 0;
109
109
  height: 0;
110
110
  opacity: 0;
111
- filter: blur(0px);
111
+ filter: blur(0);
112
112
  }
113
113
  10% {
114
114
  opacity: 0.7;
@@ -187,7 +187,7 @@
187
187
  .vd-morph-current {
188
188
  opacity: 1;
189
189
  transform: scale(1) translateY(0);
190
- filter: blur(0px);
190
+ filter: blur(0);
191
191
  z-index: 2;
192
192
  transition:
193
193
  opacity 0.28s cubic-bezier(0.4, 0, 0.6, 1),
@@ -217,7 +217,7 @@
217
217
  .vd-morph.is-morphing .vd-morph-next {
218
218
  opacity: 1;
219
219
  transform: scale(1) translateY(0);
220
- filter: blur(0px);
220
+ filter: blur(0);
221
221
  transition-duration: 0.3s;
222
222
  transition-delay: 0.25s;
223
223
  }
@@ -132,8 +132,8 @@
132
132
 
133
133
  .img-thumbnail {
134
134
  padding: 0.1875rem; /* 3px - fib */
135
- background-color: var(--color-white);
136
- border: 1px solid var(--border-color);
135
+ background-color: var(--vd-color-white);
136
+ border: 1px solid var(--vd-border-color);
137
137
  border-radius: var(--radius-fib-5);
138
138
  max-width: 100%;
139
139
  height: auto;