@caribeng/ui 22.1.0 → 22.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (253) hide show
  1. package/README.md +52 -12
  2. package/fesm2022/caribeng-ui-accordion.mjs +2 -2
  3. package/fesm2022/caribeng-ui-anchor.mjs +169 -0
  4. package/fesm2022/caribeng-ui-autocomplete.mjs +10 -8
  5. package/fesm2022/caribeng-ui-avatargroup.mjs +9 -3
  6. package/fesm2022/caribeng-ui-blockui.mjs +12 -4
  7. package/fesm2022/caribeng-ui-breadcrumb.mjs +5 -2
  8. package/fesm2022/caribeng-ui-button.mjs +22 -2
  9. package/fesm2022/caribeng-ui-caribe-alert.mjs +5 -2
  10. package/fesm2022/caribeng-ui-caribe-animation-lottie.mjs +6 -3
  11. package/fesm2022/caribeng-ui-caribe-button-group.mjs +6 -3
  12. package/fesm2022/caribeng-ui-caribe-calendar.mjs +11 -6
  13. package/fesm2022/caribeng-ui-caribe-card-content.mjs +6 -3
  14. package/fesm2022/caribeng-ui-caribe-card-move.mjs +29 -7
  15. package/fesm2022/caribeng-ui-caribe-card-select.mjs +56 -14
  16. package/fesm2022/caribeng-ui-caribe-circle-loading.mjs +10 -7
  17. package/fesm2022/caribeng-ui-caribe-coachmark.mjs +42 -19
  18. package/fesm2022/caribeng-ui-caribe-data-table.mjs +15 -9
  19. package/fesm2022/caribeng-ui-caribe-dots-indicator.mjs +38 -5
  20. package/fesm2022/caribeng-ui-caribe-expansion-panel.mjs +16 -5
  21. package/fesm2022/caribeng-ui-caribe-fab-menu.mjs +56 -7
  22. package/fesm2022/caribeng-ui-caribe-file-download.mjs +68 -27
  23. package/fesm2022/caribeng-ui-caribe-file-select.mjs +22 -17
  24. package/fesm2022/caribeng-ui-caribe-float-menu.mjs +6 -3
  25. package/fesm2022/caribeng-ui-caribe-footer.mjs +8 -4
  26. package/fesm2022/caribeng-ui-caribe-header.mjs +6 -3
  27. package/fesm2022/caribeng-ui-caribe-icon-button.mjs +6 -3
  28. package/fesm2022/caribeng-ui-caribe-illustration.mjs +6 -3
  29. package/fesm2022/caribeng-ui-caribe-inline-alert.mjs +5 -2
  30. package/fesm2022/caribeng-ui-caribe-input-search.mjs +14 -10
  31. package/fesm2022/caribeng-ui-caribe-input-select.mjs +12 -10
  32. package/fesm2022/caribeng-ui-caribe-input-token.mjs +61 -11
  33. package/fesm2022/caribeng-ui-caribe-link.mjs +7 -2
  34. package/fesm2022/caribeng-ui-caribe-loader.mjs +8 -5
  35. package/fesm2022/caribeng-ui-caribe-modal.mjs +32 -16
  36. package/fesm2022/caribeng-ui-caribe-off-canvas.mjs +26 -12
  37. package/fesm2022/caribeng-ui-caribe-onboarding.mjs +44 -19
  38. package/fesm2022/caribeng-ui-caribe-pictogram.mjs +6 -3
  39. package/fesm2022/caribeng-ui-caribe-pop-over.mjs +34 -10
  40. package/fesm2022/caribeng-ui-caribe-preloader.mjs +9 -6
  41. package/fesm2022/caribeng-ui-caribe-progress-bar.mjs +5 -2
  42. package/fesm2022/caribeng-ui-caribe-shortcut.mjs +8 -3
  43. package/fesm2022/caribeng-ui-caribe-step-indicator.mjs +12 -5
  44. package/fesm2022/caribeng-ui-caribe-stroke.mjs +6 -3
  45. package/fesm2022/caribeng-ui-caribe-switch.mjs +5 -3
  46. package/fesm2022/caribeng-ui-caribe-tag-button.mjs +1 -1
  47. package/fesm2022/caribeng-ui-caribe-tracker.mjs +5 -2
  48. package/fesm2022/caribeng-ui-caribe-transaction-status.mjs +1 -1
  49. package/fesm2022/caribeng-ui-caribe-voucher.mjs +11 -8
  50. package/fesm2022/caribeng-ui-carousel.mjs +49 -14
  51. package/fesm2022/caribeng-ui-cascadeselect.mjs +22 -8
  52. package/fesm2022/caribeng-ui-chart.mjs +2598 -303
  53. package/fesm2022/caribeng-ui-chip.mjs +9 -4
  54. package/fesm2022/caribeng-ui-chips.mjs +9 -5
  55. package/fesm2022/caribeng-ui-colorpicker.mjs +9 -7
  56. package/fesm2022/caribeng-ui-confirmdialog.mjs +74 -9
  57. package/fesm2022/caribeng-ui-confirmpopup.mjs +134 -9
  58. package/fesm2022/caribeng-ui-contextmenu.mjs +6 -3
  59. package/fesm2022/caribeng-ui-dataview.mjs +211 -6
  60. package/fesm2022/caribeng-ui-datepicker.mjs +1630 -393
  61. package/fesm2022/caribeng-ui-descriptions.mjs +124 -0
  62. package/fesm2022/caribeng-ui-dialog.mjs +10 -7
  63. package/fesm2022/caribeng-ui-dock.mjs +6 -3
  64. package/fesm2022/caribeng-ui-drawer.mjs +10 -7
  65. package/fesm2022/caribeng-ui-dynamicdialog.mjs +210 -6
  66. package/fesm2022/caribeng-ui-editor.mjs +4392 -243
  67. package/fesm2022/caribeng-ui-empty.mjs +80 -0
  68. package/fesm2022/caribeng-ui-file-card.mjs +2 -2
  69. package/fesm2022/caribeng-ui-fileupload.mjs +96 -19
  70. package/fesm2022/caribeng-ui-floatlabel.mjs +4 -2
  71. package/fesm2022/caribeng-ui-folder-card.mjs +10 -3
  72. package/fesm2022/caribeng-ui-galleria.mjs +76 -45
  73. package/fesm2022/caribeng-ui-image.mjs +52 -29
  74. package/fesm2022/caribeng-ui-inplace.mjs +22 -6
  75. package/fesm2022/caribeng-ui-input-number.mjs +9 -7
  76. package/fesm2022/caribeng-ui-inputgroup.mjs +2 -2
  77. package/fesm2022/caribeng-ui-inputmask.mjs +14 -11
  78. package/fesm2022/caribeng-ui-inputotp.mjs +12 -6
  79. package/fesm2022/caribeng-ui-keyfilter.mjs +72 -0
  80. package/fesm2022/caribeng-ui-listbox.mjs +13 -11
  81. package/fesm2022/caribeng-ui-megamenu.mjs +222 -30
  82. package/fesm2022/caribeng-ui-menu.mjs +11 -5
  83. package/fesm2022/caribeng-ui-menubar.mjs +10 -5
  84. package/fesm2022/caribeng-ui-message.mjs +7 -4
  85. package/fesm2022/caribeng-ui-metergroup.mjs +29 -11
  86. package/fesm2022/caribeng-ui-multiselect.mjs +399 -97
  87. package/fesm2022/caribeng-ui-orderlist.mjs +230 -11
  88. package/fesm2022/caribeng-ui-organizationchart.mjs +12 -7
  89. package/fesm2022/caribeng-ui-paginator.mjs +18 -15
  90. package/fesm2022/caribeng-ui-panel.mjs +5 -2
  91. package/fesm2022/caribeng-ui-panelmenu.mjs +6 -3
  92. package/fesm2022/caribeng-ui-password.mjs +8 -6
  93. package/fesm2022/caribeng-ui-pdfviewer.mjs +1553 -0
  94. package/fesm2022/caribeng-ui-picklist.mjs +251 -14
  95. package/fesm2022/caribeng-ui-pricing.mjs +17 -14
  96. package/fesm2022/caribeng-ui-rating.mjs +7 -3
  97. package/fesm2022/caribeng-ui-repeater.mjs +223 -0
  98. package/fesm2022/caribeng-ui-result.mjs +91 -0
  99. package/fesm2022/caribeng-ui-scrollpanel.mjs +6 -3
  100. package/fesm2022/caribeng-ui-scrolltop.mjs +6 -3
  101. package/fesm2022/caribeng-ui-select.mjs +379 -87
  102. package/fesm2022/caribeng-ui-selectbutton.mjs +2 -2
  103. package/fesm2022/caribeng-ui-slider.mjs +171 -75
  104. package/fesm2022/caribeng-ui-speeddial.mjs +7 -4
  105. package/fesm2022/caribeng-ui-spinner.mjs +5 -2
  106. package/fesm2022/caribeng-ui-splitbutton.mjs +163 -0
  107. package/fesm2022/caribeng-ui-splitter.mjs +5 -2
  108. package/fesm2022/caribeng-ui-statistic.mjs +183 -0
  109. package/fesm2022/caribeng-ui-stepper.mjs +8 -5
  110. package/fesm2022/caribeng-ui-steps.mjs +6 -3
  111. package/fesm2022/caribeng-ui-table.mjs +708 -82
  112. package/fesm2022/caribeng-ui-tabmenu.mjs +6 -3
  113. package/fesm2022/caribeng-ui-tag.mjs +2 -2
  114. package/fesm2022/caribeng-ui-terminal.mjs +45 -9
  115. package/fesm2022/caribeng-ui-themetoggle.mjs +82 -0
  116. package/fesm2022/caribeng-ui-tieredmenu.mjs +9 -6
  117. package/fesm2022/caribeng-ui-timeline.mjs +175 -6
  118. package/fesm2022/caribeng-ui-toast.mjs +7 -4
  119. package/fesm2022/caribeng-ui-togglebutton.mjs +8 -6
  120. package/fesm2022/caribeng-ui-toolbar.mjs +6 -3
  121. package/fesm2022/caribeng-ui-tree.mjs +302 -6
  122. package/fesm2022/caribeng-ui-treeselect.mjs +26 -10
  123. package/fesm2022/caribeng-ui-treetable.mjs +269 -6
  124. package/fesm2022/caribeng-ui-virtualscroller.mjs +123 -10
  125. package/fesm2022/caribeng-ui.mjs +829 -6
  126. package/package.json +70 -11
  127. package/schematics/collection.json +10 -0
  128. package/schematics/ng-add/index.js +125 -0
  129. package/schematics/ng-add/schema.js +2 -0
  130. package/schematics/ng-add/schema.json +66 -0
  131. package/styles/caribeng.css +380 -0
  132. package/styles/scss/_mixins.scss +46 -0
  133. package/styles/scss/_overlay.scss +15 -0
  134. package/styles/scss/_tokens.scss +267 -0
  135. package/styles/scss/_utilities.scss +73 -0
  136. package/styles/scss/_variables.scss +33 -0
  137. package/styles/scss/index.scss +16 -0
  138. package/types/caribeng-ui-anchor.d.ts +50 -0
  139. package/types/caribeng-ui-autocomplete.d.ts +4 -2
  140. package/types/caribeng-ui-avatargroup.d.ts +3 -1
  141. package/types/caribeng-ui-blockui.d.ts +9 -4
  142. package/types/caribeng-ui-breadcrumb.d.ts +3 -0
  143. package/types/caribeng-ui-button.d.ts +9 -1
  144. package/types/caribeng-ui-caribe-alert.d.ts +3 -0
  145. package/types/caribeng-ui-caribe-animation-lottie.d.ts +4 -1
  146. package/types/caribeng-ui-caribe-button-group.d.ts +4 -1
  147. package/types/caribeng-ui-caribe-calendar.d.ts +5 -1
  148. package/types/caribeng-ui-caribe-card-content.d.ts +4 -1
  149. package/types/caribeng-ui-caribe-card-move.d.ts +13 -13
  150. package/types/caribeng-ui-caribe-card-select.d.ts +10 -1
  151. package/types/caribeng-ui-caribe-circle-loading.d.ts +4 -1
  152. package/types/caribeng-ui-caribe-coachmark.d.ts +6 -0
  153. package/types/caribeng-ui-caribe-data-table.d.ts +7 -2
  154. package/types/caribeng-ui-caribe-dots-indicator.d.ts +9 -0
  155. package/types/caribeng-ui-caribe-expansion-panel.d.ts +7 -10
  156. package/types/caribeng-ui-caribe-fab-menu.d.ts +10 -1
  157. package/types/caribeng-ui-caribe-file-download.d.ts +8 -10
  158. package/types/caribeng-ui-caribe-file-select.d.ts +7 -1
  159. package/types/caribeng-ui-caribe-float-menu.d.ts +4 -1
  160. package/types/caribeng-ui-caribe-header.d.ts +3 -0
  161. package/types/caribeng-ui-caribe-icon-button.d.ts +4 -1
  162. package/types/caribeng-ui-caribe-illustration.d.ts +4 -1
  163. package/types/caribeng-ui-caribe-inline-alert.d.ts +3 -0
  164. package/types/caribeng-ui-caribe-input-search.d.ts +4 -2
  165. package/types/caribeng-ui-caribe-input-select.d.ts +4 -2
  166. package/types/caribeng-ui-caribe-input-token.d.ts +16 -1
  167. package/types/caribeng-ui-caribe-link.d.ts +3 -0
  168. package/types/caribeng-ui-caribe-loader.d.ts +4 -1
  169. package/types/caribeng-ui-caribe-modal.d.ts +7 -10
  170. package/types/caribeng-ui-caribe-off-canvas.d.ts +6 -1
  171. package/types/caribeng-ui-caribe-onboarding.d.ts +6 -0
  172. package/types/caribeng-ui-caribe-pictogram.d.ts +4 -1
  173. package/types/caribeng-ui-caribe-pop-over.d.ts +7 -10
  174. package/types/caribeng-ui-caribe-preloader.d.ts +4 -1
  175. package/types/caribeng-ui-caribe-progress-bar.d.ts +3 -0
  176. package/types/caribeng-ui-caribe-shortcut.d.ts +3 -1
  177. package/types/caribeng-ui-caribe-step-indicator.d.ts +6 -0
  178. package/types/caribeng-ui-caribe-stroke.d.ts +4 -1
  179. package/types/caribeng-ui-caribe-switch.d.ts +3 -1
  180. package/types/caribeng-ui-caribe-tracker.d.ts +3 -0
  181. package/types/caribeng-ui-caribe-voucher.d.ts +5 -2
  182. package/types/caribeng-ui-carousel.d.ts +10 -1
  183. package/types/caribeng-ui-cascadeselect.d.ts +7 -2
  184. package/types/caribeng-ui-chart.d.ts +469 -44
  185. package/types/caribeng-ui-chip.d.ts +6 -0
  186. package/types/caribeng-ui-chips.d.ts +6 -2
  187. package/types/caribeng-ui-colorpicker.d.ts +3 -1
  188. package/types/caribeng-ui-confirmdialog.d.ts +25 -6
  189. package/types/caribeng-ui-confirmpopup.d.ts +37 -5
  190. package/types/caribeng-ui-contextmenu.d.ts +4 -1
  191. package/types/caribeng-ui-dataview.d.ts +63 -5
  192. package/types/caribeng-ui-datepicker.d.ts +186 -21
  193. package/types/caribeng-ui-descriptions.d.ts +63 -0
  194. package/types/caribeng-ui-dialog.d.ts +4 -1
  195. package/types/caribeng-ui-dock.d.ts +4 -1
  196. package/types/caribeng-ui-drawer.d.ts +4 -1
  197. package/types/caribeng-ui-dynamicdialog.d.ts +93 -3
  198. package/types/caribeng-ui-editor.d.ts +486 -13
  199. package/types/caribeng-ui-empty.d.ts +34 -0
  200. package/types/caribeng-ui-file-card.d.ts +1 -1
  201. package/types/caribeng-ui-fileupload.d.ts +27 -4
  202. package/types/caribeng-ui-folder-card.d.ts +4 -1
  203. package/types/caribeng-ui-galleria.d.ts +9 -0
  204. package/types/caribeng-ui-image.d.ts +10 -0
  205. package/types/caribeng-ui-inplace.d.ts +8 -0
  206. package/types/caribeng-ui-input-number.d.ts +3 -1
  207. package/types/caribeng-ui-inputmask.d.ts +5 -0
  208. package/types/caribeng-ui-inputotp.d.ts +7 -2
  209. package/types/caribeng-ui-keyfilter.d.ts +30 -0
  210. package/types/caribeng-ui-listbox.d.ts +5 -3
  211. package/types/caribeng-ui-megamenu.d.ts +26 -2
  212. package/types/caribeng-ui-menu.d.ts +7 -2
  213. package/types/caribeng-ui-menubar.d.ts +5 -1
  214. package/types/caribeng-ui-message.d.ts +3 -0
  215. package/types/caribeng-ui-metergroup.d.ts +9 -1
  216. package/types/caribeng-ui-multiselect.d.ts +71 -10
  217. package/types/caribeng-ui-orderlist.d.ts +58 -6
  218. package/types/caribeng-ui-organizationchart.d.ts +7 -1
  219. package/types/caribeng-ui-paginator.d.ts +3 -0
  220. package/types/caribeng-ui-panel.d.ts +3 -0
  221. package/types/caribeng-ui-panelmenu.d.ts +4 -1
  222. package/types/caribeng-ui-password.d.ts +4 -2
  223. package/types/caribeng-ui-pdfviewer.d.ts +258 -0
  224. package/types/caribeng-ui-picklist.d.ts +67 -7
  225. package/types/caribeng-ui-pricing.d.ts +8 -5
  226. package/types/caribeng-ui-rating.d.ts +6 -2
  227. package/types/caribeng-ui-repeater.d.ts +79 -0
  228. package/types/caribeng-ui-result.d.ts +35 -0
  229. package/types/caribeng-ui-scrollpanel.d.ts +4 -1
  230. package/types/caribeng-ui-scrolltop.d.ts +4 -1
  231. package/types/caribeng-ui-select.d.ts +73 -9
  232. package/types/caribeng-ui-slider.d.ts +63 -10
  233. package/types/caribeng-ui-speeddial.d.ts +5 -2
  234. package/types/caribeng-ui-spinner.d.ts +3 -0
  235. package/types/caribeng-ui-splitbutton.d.ts +49 -0
  236. package/types/caribeng-ui-splitter.d.ts +3 -0
  237. package/types/caribeng-ui-statistic.d.ts +65 -0
  238. package/types/caribeng-ui-stepper.d.ts +3 -0
  239. package/types/caribeng-ui-steps.d.ts +4 -1
  240. package/types/caribeng-ui-table.d.ts +184 -16
  241. package/types/caribeng-ui-tabmenu.d.ts +4 -1
  242. package/types/caribeng-ui-terminal.d.ts +10 -0
  243. package/types/caribeng-ui-themetoggle.d.ts +32 -0
  244. package/types/caribeng-ui-tieredmenu.d.ts +5 -2
  245. package/types/caribeng-ui-timeline.d.ts +63 -4
  246. package/types/caribeng-ui-toast.d.ts +3 -0
  247. package/types/caribeng-ui-togglebutton.d.ts +5 -3
  248. package/types/caribeng-ui-toolbar.d.ts +7 -4
  249. package/types/caribeng-ui-tree.d.ts +76 -4
  250. package/types/caribeng-ui-treeselect.d.ts +10 -2
  251. package/types/caribeng-ui-treetable.d.ts +68 -4
  252. package/types/caribeng-ui-virtualscroller.d.ts +45 -5
  253. package/types/caribeng-ui.d.ts +501 -12
@@ -0,0 +1,380 @@
1
+ /*! CaribeNG · @caribeng/ui/styles · MIT */
2
+ :root {
3
+ --cb-color-primary-50: #ecfdf5;
4
+ --cb-color-primary-100: #d1fae5;
5
+ --cb-color-primary-200: #a7f3d0;
6
+ --cb-color-primary-300: #6ee7b7;
7
+ --cb-color-primary-400: #34d399;
8
+ --cb-color-primary-500: #10b981;
9
+ --cb-color-primary-600: #059669;
10
+ --cb-color-primary-700: #047857;
11
+ --cb-color-primary-800: #065f46;
12
+ --cb-color-primary-900: #064e3b;
13
+ --cb-color-primary-950: #022c22;
14
+ --cb-color-surface-0: #ffffff;
15
+ --cb-color-surface-50: #f8fafc;
16
+ --cb-color-surface-100: #f1f5f9;
17
+ --cb-color-surface-200: #e2e8f0;
18
+ --cb-color-surface-300: #cbd5e1;
19
+ --cb-color-surface-400: #94a3b8;
20
+ --cb-color-surface-500: #64748b;
21
+ --cb-color-surface-600: #475569;
22
+ --cb-color-surface-700: #334155;
23
+ --cb-color-surface-800: #1e293b;
24
+ --cb-color-surface-900: #0f172a;
25
+ --cb-color-surface-950: #020617;
26
+ --cb-color-success-50: #f0fdf4;
27
+ --cb-color-success-100: #dcfce7;
28
+ --cb-color-success-200: #bbf7d0;
29
+ --cb-color-success-300: #86efac;
30
+ --cb-color-success-400: #4ade80;
31
+ --cb-color-success-500: #22c55e;
32
+ --cb-color-success-600: #16a34a;
33
+ --cb-color-success-700: #15803d;
34
+ --cb-color-success-800: #166534;
35
+ --cb-color-success-900: #14532d;
36
+ --cb-color-success-950: #052e16;
37
+ --cb-color-info-50: #f0f9ff;
38
+ --cb-color-info-100: #e0f2fe;
39
+ --cb-color-info-200: #bae6fd;
40
+ --cb-color-info-300: #7dd3fc;
41
+ --cb-color-info-400: #38bdf8;
42
+ --cb-color-info-500: #0ea5e9;
43
+ --cb-color-info-600: #0284c7;
44
+ --cb-color-info-700: #0369a1;
45
+ --cb-color-info-800: #075985;
46
+ --cb-color-info-900: #0c4a6e;
47
+ --cb-color-info-950: #082f49;
48
+ --cb-color-warning-50: #fff7ed;
49
+ --cb-color-warning-100: #ffedd5;
50
+ --cb-color-warning-200: #fed7aa;
51
+ --cb-color-warning-300: #fdba74;
52
+ --cb-color-warning-400: #fb923c;
53
+ --cb-color-warning-500: #f97316;
54
+ --cb-color-warning-600: #ea580c;
55
+ --cb-color-warning-700: #c2410c;
56
+ --cb-color-warning-800: #9a3412;
57
+ --cb-color-warning-900: #7c2d12;
58
+ --cb-color-warning-950: #431407;
59
+ --cb-color-danger-50: #fef2f2;
60
+ --cb-color-danger-100: #fee2e2;
61
+ --cb-color-danger-200: #fecaca;
62
+ --cb-color-danger-300: #fca5a5;
63
+ --cb-color-danger-400: #f87171;
64
+ --cb-color-danger-500: #ef4444;
65
+ --cb-color-danger-600: #dc2626;
66
+ --cb-color-danger-700: #b91c1c;
67
+ --cb-color-danger-800: #991b1b;
68
+ --cb-color-danger-900: #7f1d1d;
69
+ --cb-color-danger-950: #450a0a;
70
+ --cb-color-help-50: #faf5ff;
71
+ --cb-color-help-100: #f3e8ff;
72
+ --cb-color-help-200: #e9d5ff;
73
+ --cb-color-help-300: #d8b4fe;
74
+ --cb-color-help-400: #c084fc;
75
+ --cb-color-help-500: #a855f7;
76
+ --cb-color-help-600: #9333ea;
77
+ --cb-color-help-700: #7e22ce;
78
+ --cb-color-help-800: #6b21a8;
79
+ --cb-color-help-900: #581c87;
80
+ --cb-color-help-950: #3b0764;
81
+ --cb-color-primary: var(--cb-color-primary-500);
82
+ --cb-color-primary-contrast: #ffffff;
83
+ --cb-color-success: var(--cb-color-success-500);
84
+ --cb-color-success-contrast: #ffffff;
85
+ --cb-color-info: var(--cb-color-info-500);
86
+ --cb-color-info-contrast: #ffffff;
87
+ --cb-color-warning: var(--cb-color-warning-500);
88
+ --cb-color-warning-contrast: #ffffff;
89
+ --cb-color-danger: var(--cb-color-danger-500);
90
+ --cb-color-danger-contrast: #ffffff;
91
+ --cb-color-help: var(--cb-color-help-500);
92
+ --cb-color-help-contrast: #ffffff;
93
+ --cb-color-bg: var(--cb-color-surface-0);
94
+ --cb-color-surface: var(--cb-color-surface-50);
95
+ --cb-color-surface-raised: var(--cb-color-surface-0);
96
+ --cb-color-surface-hover: var(--cb-color-surface-100);
97
+ --cb-color-surface-subtle: var(--cb-color-surface-50);
98
+ --cb-color-border: var(--cb-color-surface-200);
99
+ --cb-color-border-strong: var(--cb-color-surface-300);
100
+ --cb-color-text: var(--cb-color-surface-700);
101
+ --cb-color-text-strong: var(--cb-color-surface-900);
102
+ --cb-color-text-muted: var(--cb-color-surface-500);
103
+ --cb-color-overlay: rgb(2 6 23 / 0.5);
104
+ --cb-color-focus-ring: var(--cb-color-primary-500);
105
+ --cb-font-sans: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial,
106
+ sans-serif, "Apple Color Emoji", "Segoe UI Emoji";
107
+ --cb-font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas,
108
+ "Liberation Mono", monospace;
109
+ --cb-text-xs: 0.75rem;
110
+ --cb-text-sm: 0.875rem;
111
+ --cb-text-base: 1rem;
112
+ --cb-text-lg: 1.125rem;
113
+ --cb-text-xl: 1.25rem;
114
+ --cb-text-2xl: 1.5rem;
115
+ --cb-font-weight-regular: 400;
116
+ --cb-font-weight-medium: 500;
117
+ --cb-font-weight-semibold: 600;
118
+ --cb-font-weight-bold: 700;
119
+ --cb-line-height-tight: 1.25;
120
+ --cb-line-height-normal: 1.5;
121
+ --cb-line-height-relaxed: 1.75;
122
+ --cb-space-1: 0.25rem;
123
+ --cb-space-2: 0.5rem;
124
+ --cb-space-3: 0.75rem;
125
+ --cb-space-4: 1rem;
126
+ --cb-space-5: 1.25rem;
127
+ --cb-space-6: 1.5rem;
128
+ --cb-space-7: 1.75rem;
129
+ --cb-space-8: 2rem;
130
+ --cb-space-10: 2.5rem;
131
+ --cb-space-12: 3rem;
132
+ --cb-space-16: 4rem;
133
+ --cb-radius-sm: 0.25rem;
134
+ --cb-radius-md: 0.5rem;
135
+ --cb-radius-lg: 0.75rem;
136
+ --cb-radius-full: 9999px;
137
+ --cb-border-width: 1px;
138
+ --cb-shadow-sm: 0 1px 2px 0 rgb(18 18 23 / 0.08);
139
+ --cb-shadow-md: 0 4px 6px -1px rgb(18 18 23 / 0.1),
140
+ 0 2px 4px -2px rgb(18 18 23 / 0.1);
141
+ --cb-shadow-lg: 0 10px 15px -3px rgb(18 18 23 / 0.1),
142
+ 0 4px 6px -4px rgb(18 18 23 / 0.1);
143
+ --cb-duration-fast: 120ms;
144
+ --cb-duration-normal: 200ms;
145
+ --cb-duration-slow: 320ms;
146
+ --cb-ease: cubic-bezier(0.4, 0, 0.2, 1);
147
+ --cb-ease-out: cubic-bezier(0, 0, 0.2, 1);
148
+ --cb-ease-in: cubic-bezier(0.4, 0, 1, 1);
149
+ --cb-z-dropdown: 1000;
150
+ --cb-z-overlay: 1100;
151
+ --cb-z-modal: 1200;
152
+ --cb-z-popover: 1300;
153
+ --cb-z-toast: 1400;
154
+ --cb-z-tooltip: 1500;
155
+ --cb-breakpoint-sm: 576px;
156
+ --cb-breakpoint-md: 768px;
157
+ --cb-breakpoint-lg: 992px;
158
+ --cb-breakpoint-xl: 1200px;
159
+ --cb-breakpoint-2xl: 1400px;
160
+ }
161
+
162
+ :root[data-theme=dark] {
163
+ --cb-color-bg: var(--cb-color-surface-950);
164
+ --cb-color-surface: var(--cb-color-surface-900);
165
+ --cb-color-surface-raised: var(--cb-color-surface-900);
166
+ --cb-color-surface-hover: var(--cb-color-surface-700);
167
+ --cb-color-surface-subtle: var(--cb-color-surface-800);
168
+ --cb-color-border: var(--cb-color-surface-700);
169
+ --cb-color-border-strong: var(--cb-color-surface-600);
170
+ --cb-color-text: var(--cb-color-surface-0);
171
+ --cb-color-text-strong: var(--cb-color-surface-0);
172
+ --cb-color-text-muted: var(--cb-color-surface-400);
173
+ --cb-color-overlay: rgb(0 0 0 / 0.6);
174
+ --cb-color-primary: var(--cb-color-primary-400);
175
+ --cb-color-primary-contrast: var(--cb-color-surface-950);
176
+ --cb-color-focus-ring: var(--cb-color-primary-400);
177
+ --cb-shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.4);
178
+ --cb-shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.5), 0 2px 4px -2px rgb(0 0 0 / 0.5);
179
+ --cb-shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.5),
180
+ 0 4px 6px -4px rgb(0 0 0 / 0.5);
181
+ }
182
+
183
+ @media (prefers-reduced-motion: reduce) {
184
+ :root {
185
+ --cb-duration-fast: 0ms;
186
+ --cb-duration-normal: 0ms;
187
+ --cb-duration-slow: 0ms;
188
+ }
189
+ }
190
+ .cb-flex {
191
+ display: flex;
192
+ }
193
+
194
+ .cb-inline-flex {
195
+ display: inline-flex;
196
+ }
197
+
198
+ .cb-grid {
199
+ display: grid;
200
+ }
201
+
202
+ .cb-block {
203
+ display: block;
204
+ }
205
+
206
+ .cb-inline-block {
207
+ display: inline-block;
208
+ }
209
+
210
+ .cb-hidden {
211
+ display: none;
212
+ }
213
+
214
+ .cb-flex-col {
215
+ flex-direction: column;
216
+ }
217
+
218
+ .cb-flex-row {
219
+ flex-direction: row;
220
+ }
221
+
222
+ .cb-flex-wrap {
223
+ flex-wrap: wrap;
224
+ }
225
+
226
+ .cb-flex-1 {
227
+ flex: 1 1 0%;
228
+ }
229
+
230
+ .cb-items-center {
231
+ align-items: center;
232
+ }
233
+
234
+ .cb-items-start {
235
+ align-items: flex-start;
236
+ }
237
+
238
+ .cb-items-end {
239
+ align-items: flex-end;
240
+ }
241
+
242
+ .cb-items-stretch {
243
+ align-items: stretch;
244
+ }
245
+
246
+ .cb-justify-center {
247
+ justify-content: center;
248
+ }
249
+
250
+ .cb-justify-between {
251
+ justify-content: space-between;
252
+ }
253
+
254
+ .cb-justify-start {
255
+ justify-content: flex-start;
256
+ }
257
+
258
+ .cb-justify-end {
259
+ justify-content: flex-end;
260
+ }
261
+
262
+ .cb-gap-1 {
263
+ gap: var(--cb-space-1);
264
+ }
265
+
266
+ .cb-gap-2 {
267
+ gap: var(--cb-space-2);
268
+ }
269
+
270
+ .cb-gap-3 {
271
+ gap: var(--cb-space-3);
272
+ }
273
+
274
+ .cb-gap-4 {
275
+ gap: var(--cb-space-4);
276
+ }
277
+
278
+ .cb-gap-5 {
279
+ gap: var(--cb-space-5);
280
+ }
281
+
282
+ .cb-gap-6 {
283
+ gap: var(--cb-space-6);
284
+ }
285
+
286
+ .cb-gap-8 {
287
+ gap: var(--cb-space-8);
288
+ }
289
+
290
+ .cb-p-1 {
291
+ padding: var(--cb-space-1);
292
+ }
293
+
294
+ .cb-p-2 {
295
+ padding: var(--cb-space-2);
296
+ }
297
+
298
+ .cb-p-3 {
299
+ padding: var(--cb-space-3);
300
+ }
301
+
302
+ .cb-p-4 {
303
+ padding: var(--cb-space-4);
304
+ }
305
+
306
+ .cb-p-5 {
307
+ padding: var(--cb-space-5);
308
+ }
309
+
310
+ .cb-p-6 {
311
+ padding: var(--cb-space-6);
312
+ }
313
+
314
+ .cb-p-8 {
315
+ padding: var(--cb-space-8);
316
+ }
317
+
318
+ .cb-m-1 {
319
+ margin: var(--cb-space-1);
320
+ }
321
+
322
+ .cb-m-2 {
323
+ margin: var(--cb-space-2);
324
+ }
325
+
326
+ .cb-m-3 {
327
+ margin: var(--cb-space-3);
328
+ }
329
+
330
+ .cb-m-4 {
331
+ margin: var(--cb-space-4);
332
+ }
333
+
334
+ .cb-m-5 {
335
+ margin: var(--cb-space-5);
336
+ }
337
+
338
+ .cb-m-6 {
339
+ margin: var(--cb-space-6);
340
+ }
341
+
342
+ .cb-m-8 {
343
+ margin: var(--cb-space-8);
344
+ }
345
+
346
+ .cb-w-full {
347
+ width: 100%;
348
+ }
349
+
350
+ .cb-h-full {
351
+ height: 100%;
352
+ }
353
+
354
+ .cb-max-w-full {
355
+ max-width: 100%;
356
+ }
357
+
358
+ .cb-min-w-0 {
359
+ min-width: 0;
360
+ }
361
+
362
+ .cb-sr-only {
363
+ position: absolute;
364
+ width: 1px;
365
+ height: 1px;
366
+ padding: 0;
367
+ margin: -1px;
368
+ overflow: hidden;
369
+ clip: rect(0, 0, 0, 0);
370
+ white-space: nowrap;
371
+ border: 0;
372
+ }
373
+
374
+ .cb-dialog-backdrop {
375
+ background-color: var(--cb-color-overlay);
376
+ }
377
+
378
+ .cb-dialog-backdrop.cdk-overlay-backdrop-showing {
379
+ opacity: 1;
380
+ }
@@ -0,0 +1,46 @@
1
+ // =============================================================================
2
+ // CaribeNG · Mixins SCSS (opcionales)
3
+ // El consumidor NO necesita SCSS si usa la versión CSS compilada.
4
+ // =============================================================================
5
+
6
+ // Breakpoints mobile-first (coinciden con --cb-breakpoint-*)
7
+ $cb-breakpoints: (
8
+ "sm": 576px,
9
+ "md": 768px,
10
+ "lg": 992px,
11
+ "xl": 1200px,
12
+ "2xl": 1400px,
13
+ );
14
+
15
+ /// Aplica estilos a partir del breakpoint indicado (mobile-first, min-width).
16
+ /// @example scss
17
+ /// .foo { @include cb-media("md") { display: flex; } }
18
+ @mixin cb-media($name) {
19
+ @if map-has-key($cb-breakpoints, $name) {
20
+ $min: map-get($cb-breakpoints, $name);
21
+ @media (min-width: $min) {
22
+ @content;
23
+ }
24
+ } @else {
25
+ @error "cb-media: breakpoint `#{$name}` no existe. Usa: #{map-keys($cb-breakpoints)}.";
26
+ }
27
+ }
28
+
29
+ /// Anillo de foco accesible y consistente.
30
+ @mixin cb-focus-ring($color: var(--cb-color-focus-ring), $offset: 2px) {
31
+ outline: 2px solid $color;
32
+ outline-offset: $offset;
33
+ }
34
+
35
+ /// Oculta visualmente pero mantiene accesible para lectores de pantalla.
36
+ @mixin cb-visually-hidden {
37
+ position: absolute;
38
+ width: 1px;
39
+ height: 1px;
40
+ padding: 0;
41
+ margin: -1px;
42
+ overflow: hidden;
43
+ clip: rect(0, 0, 0, 0);
44
+ white-space: nowrap;
45
+ border: 0;
46
+ }
@@ -0,0 +1,15 @@
1
+ // =============================================================================
2
+ // CaribeNG · Estilos globales de overlay
3
+ // El backdrop de CDK Overlay se añade al contenedor global (fuera del
4
+ // componente), por lo que su color debe declararse globalmente.
5
+ // Requiere también: @angular/cdk/overlay-prebuilt.css
6
+ // =============================================================================
7
+
8
+ .cb-dialog-backdrop {
9
+ background-color: var(--cb-color-overlay);
10
+ }
11
+
12
+ // Animación de aparición del backdrop (respeta reduce-motion).
13
+ .cb-dialog-backdrop.cdk-overlay-backdrop-showing {
14
+ opacity: 1;
15
+ }
@@ -0,0 +1,267 @@
1
+ // =============================================================================
2
+ // CaribeNG · Design Tokens
3
+ // Variables CSS con prefijo --cb-*. No dependas de SCSS: la versión CSS
4
+ // compilada (caribeng-tokens.css) contiene exactamente estas declaraciones.
5
+ //
6
+ // Paleta alineada con PrimeNG "Aura" (MIT): primary = emerald, surface = slate,
7
+ // success = green, info = sky, warning = orange, danger = red, help = purple.
8
+ // =============================================================================
9
+
10
+ :root {
11
+ // ---------------------------------------------------------------------------
12
+ // Escala primaria (marca) · emerald
13
+ // ---------------------------------------------------------------------------
14
+ --cb-color-primary-50: #ecfdf5;
15
+ --cb-color-primary-100: #d1fae5;
16
+ --cb-color-primary-200: #a7f3d0;
17
+ --cb-color-primary-300: #6ee7b7;
18
+ --cb-color-primary-400: #34d399;
19
+ --cb-color-primary-500: #10b981;
20
+ --cb-color-primary-600: #059669;
21
+ --cb-color-primary-700: #047857;
22
+ --cb-color-primary-800: #065f46;
23
+ --cb-color-primary-900: #064e3b;
24
+ --cb-color-primary-950: #022c22;
25
+
26
+ // ---------------------------------------------------------------------------
27
+ // Escala neutra · surface (slate + surface-0 blanco)
28
+ // Usada por fondos, textos, bordes y por las severidades secondary/contrast.
29
+ // ---------------------------------------------------------------------------
30
+ --cb-color-surface-0: #ffffff;
31
+ --cb-color-surface-50: #f8fafc;
32
+ --cb-color-surface-100: #f1f5f9;
33
+ --cb-color-surface-200: #e2e8f0;
34
+ --cb-color-surface-300: #cbd5e1;
35
+ --cb-color-surface-400: #94a3b8;
36
+ --cb-color-surface-500: #64748b;
37
+ --cb-color-surface-600: #475569;
38
+ --cb-color-surface-700: #334155;
39
+ --cb-color-surface-800: #1e293b;
40
+ --cb-color-surface-900: #0f172a;
41
+ --cb-color-surface-950: #020617;
42
+
43
+ // ---------------------------------------------------------------------------
44
+ // Escalas de severidad
45
+ // ---------------------------------------------------------------------------
46
+ // success · green
47
+ --cb-color-success-50: #f0fdf4;
48
+ --cb-color-success-100: #dcfce7;
49
+ --cb-color-success-200: #bbf7d0;
50
+ --cb-color-success-300: #86efac;
51
+ --cb-color-success-400: #4ade80;
52
+ --cb-color-success-500: #22c55e;
53
+ --cb-color-success-600: #16a34a;
54
+ --cb-color-success-700: #15803d;
55
+ --cb-color-success-800: #166534;
56
+ --cb-color-success-900: #14532d;
57
+ --cb-color-success-950: #052e16;
58
+
59
+ // info · sky
60
+ --cb-color-info-50: #f0f9ff;
61
+ --cb-color-info-100: #e0f2fe;
62
+ --cb-color-info-200: #bae6fd;
63
+ --cb-color-info-300: #7dd3fc;
64
+ --cb-color-info-400: #38bdf8;
65
+ --cb-color-info-500: #0ea5e9;
66
+ --cb-color-info-600: #0284c7;
67
+ --cb-color-info-700: #0369a1;
68
+ --cb-color-info-800: #075985;
69
+ --cb-color-info-900: #0c4a6e;
70
+ --cb-color-info-950: #082f49;
71
+
72
+ // warning · orange
73
+ --cb-color-warning-50: #fff7ed;
74
+ --cb-color-warning-100: #ffedd5;
75
+ --cb-color-warning-200: #fed7aa;
76
+ --cb-color-warning-300: #fdba74;
77
+ --cb-color-warning-400: #fb923c;
78
+ --cb-color-warning-500: #f97316;
79
+ --cb-color-warning-600: #ea580c;
80
+ --cb-color-warning-700: #c2410c;
81
+ --cb-color-warning-800: #9a3412;
82
+ --cb-color-warning-900: #7c2d12;
83
+ --cb-color-warning-950: #431407;
84
+
85
+ // danger · red
86
+ --cb-color-danger-50: #fef2f2;
87
+ --cb-color-danger-100: #fee2e2;
88
+ --cb-color-danger-200: #fecaca;
89
+ --cb-color-danger-300: #fca5a5;
90
+ --cb-color-danger-400: #f87171;
91
+ --cb-color-danger-500: #ef4444;
92
+ --cb-color-danger-600: #dc2626;
93
+ --cb-color-danger-700: #b91c1c;
94
+ --cb-color-danger-800: #991b1b;
95
+ --cb-color-danger-900: #7f1d1d;
96
+ --cb-color-danger-950: #450a0a;
97
+
98
+ // help · purple
99
+ --cb-color-help-50: #faf5ff;
100
+ --cb-color-help-100: #f3e8ff;
101
+ --cb-color-help-200: #e9d5ff;
102
+ --cb-color-help-300: #d8b4fe;
103
+ --cb-color-help-400: #c084fc;
104
+ --cb-color-help-500: #a855f7;
105
+ --cb-color-help-600: #9333ea;
106
+ --cb-color-help-700: #7e22ce;
107
+ --cb-color-help-800: #6b21a8;
108
+ --cb-color-help-900: #581c87;
109
+ --cb-color-help-950: #3b0764;
110
+
111
+ // ---------------------------------------------------------------------------
112
+ // Tokens semánticos de color (tema claro)
113
+ // ---------------------------------------------------------------------------
114
+ // Severidades — atajo al tono base + contraste de texto.
115
+ --cb-color-primary: var(--cb-color-primary-500);
116
+ --cb-color-primary-contrast: #ffffff;
117
+ --cb-color-success: var(--cb-color-success-500);
118
+ --cb-color-success-contrast: #ffffff;
119
+ --cb-color-info: var(--cb-color-info-500);
120
+ --cb-color-info-contrast: #ffffff;
121
+ --cb-color-warning: var(--cb-color-warning-500);
122
+ --cb-color-warning-contrast: #ffffff;
123
+ --cb-color-danger: var(--cb-color-danger-500);
124
+ --cb-color-danger-contrast: #ffffff;
125
+ --cb-color-help: var(--cb-color-help-500);
126
+ --cb-color-help-contrast: #ffffff;
127
+
128
+ // Superficie y texto
129
+ --cb-color-bg: var(--cb-color-surface-0);
130
+ --cb-color-surface: var(--cb-color-surface-50);
131
+ --cb-color-surface-raised: var(--cb-color-surface-0);
132
+ // Estados: las escalas son absolutas, así que hover y fondos suaves usan estos
133
+ // tokens semánticos, que cambian con el tema (surface-100 es casi blanco en dark).
134
+ --cb-color-surface-hover: var(--cb-color-surface-100);
135
+ --cb-color-surface-subtle: var(--cb-color-surface-50);
136
+ --cb-color-border: var(--cb-color-surface-200);
137
+ --cb-color-border-strong: var(--cb-color-surface-300);
138
+ --cb-color-text: var(--cb-color-surface-700);
139
+ --cb-color-text-strong: var(--cb-color-surface-900);
140
+ --cb-color-text-muted: var(--cb-color-surface-500);
141
+ --cb-color-overlay: rgb(2 6 23 / 0.5);
142
+ --cb-color-focus-ring: var(--cb-color-primary-500);
143
+
144
+ // ---------------------------------------------------------------------------
145
+ // Tipografía
146
+ // ---------------------------------------------------------------------------
147
+ --cb-font-sans: system-ui, -apple-system, "Segoe UI", Roboto, Helvetica, Arial,
148
+ sans-serif, "Apple Color Emoji", "Segoe UI Emoji";
149
+ --cb-font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas,
150
+ "Liberation Mono", monospace;
151
+
152
+ --cb-text-xs: 0.75rem;
153
+ --cb-text-sm: 0.875rem;
154
+ --cb-text-base: 1rem;
155
+ --cb-text-lg: 1.125rem;
156
+ --cb-text-xl: 1.25rem;
157
+ --cb-text-2xl: 1.5rem;
158
+
159
+ --cb-font-weight-regular: 400;
160
+ --cb-font-weight-medium: 500;
161
+ --cb-font-weight-semibold: 600;
162
+ --cb-font-weight-bold: 700;
163
+
164
+ --cb-line-height-tight: 1.25;
165
+ --cb-line-height-normal: 1.5;
166
+ --cb-line-height-relaxed: 1.75;
167
+
168
+ // ---------------------------------------------------------------------------
169
+ // Espaciado · escala base 4px
170
+ // ---------------------------------------------------------------------------
171
+ --cb-space-1: 0.25rem;
172
+ --cb-space-2: 0.5rem;
173
+ --cb-space-3: 0.75rem;
174
+ --cb-space-4: 1rem;
175
+ --cb-space-5: 1.25rem;
176
+ --cb-space-6: 1.5rem;
177
+ --cb-space-7: 1.75rem;
178
+ --cb-space-8: 2rem;
179
+ --cb-space-10: 2.5rem;
180
+ --cb-space-12: 3rem;
181
+ --cb-space-16: 4rem;
182
+
183
+ // ---------------------------------------------------------------------------
184
+ // Bordes / radios
185
+ // ---------------------------------------------------------------------------
186
+ --cb-radius-sm: 0.25rem;
187
+ --cb-radius-md: 0.5rem;
188
+ --cb-radius-lg: 0.75rem;
189
+ --cb-radius-full: 9999px;
190
+
191
+ --cb-border-width: 1px;
192
+
193
+ // ---------------------------------------------------------------------------
194
+ // Sombras
195
+ // ---------------------------------------------------------------------------
196
+ --cb-shadow-sm: 0 1px 2px 0 rgb(18 18 23 / 0.08);
197
+ --cb-shadow-md: 0 4px 6px -1px rgb(18 18 23 / 0.1),
198
+ 0 2px 4px -2px rgb(18 18 23 / 0.1);
199
+ --cb-shadow-lg: 0 10px 15px -3px rgb(18 18 23 / 0.1),
200
+ 0 4px 6px -4px rgb(18 18 23 / 0.1);
201
+
202
+ // ---------------------------------------------------------------------------
203
+ // Movimiento
204
+ // ---------------------------------------------------------------------------
205
+ --cb-duration-fast: 120ms;
206
+ --cb-duration-normal: 200ms;
207
+ --cb-duration-slow: 320ms;
208
+ --cb-ease: cubic-bezier(0.4, 0, 0.2, 1);
209
+ --cb-ease-out: cubic-bezier(0, 0, 0.2, 1);
210
+ --cb-ease-in: cubic-bezier(0.4, 0, 1, 1);
211
+
212
+ // ---------------------------------------------------------------------------
213
+ // Z-index
214
+ // ---------------------------------------------------------------------------
215
+ --cb-z-dropdown: 1000;
216
+ --cb-z-overlay: 1100;
217
+ --cb-z-modal: 1200;
218
+ --cb-z-popover: 1300;
219
+ --cb-z-toast: 1400;
220
+ --cb-z-tooltip: 1500;
221
+
222
+ // ---------------------------------------------------------------------------
223
+ // Breakpoints de referencia
224
+ // ---------------------------------------------------------------------------
225
+ --cb-breakpoint-sm: 576px;
226
+ --cb-breakpoint-md: 768px;
227
+ --cb-breakpoint-lg: 992px;
228
+ --cb-breakpoint-xl: 1200px;
229
+ --cb-breakpoint-2xl: 1400px;
230
+ }
231
+
232
+ // =============================================================================
233
+ // Dark mode · [data-theme="dark"] en el elemento raíz
234
+ // Las escalas de color son absolutas; solo cambian los tokens semánticos.
235
+ // =============================================================================
236
+ :root[data-theme="dark"] {
237
+ --cb-color-bg: var(--cb-color-surface-950);
238
+ --cb-color-surface: var(--cb-color-surface-900);
239
+ --cb-color-surface-raised: var(--cb-color-surface-900);
240
+ --cb-color-surface-hover: var(--cb-color-surface-700);
241
+ --cb-color-surface-subtle: var(--cb-color-surface-800);
242
+ --cb-color-border: var(--cb-color-surface-700);
243
+ --cb-color-border-strong: var(--cb-color-surface-600);
244
+ --cb-color-text: var(--cb-color-surface-0);
245
+ --cb-color-text-strong: var(--cb-color-surface-0);
246
+ --cb-color-text-muted: var(--cb-color-surface-400);
247
+ --cb-color-overlay: rgb(0 0 0 / 0.6);
248
+
249
+ // En dark, el primary efectivo usa el tono 400 (igual que Aura).
250
+ --cb-color-primary: var(--cb-color-primary-400);
251
+ --cb-color-primary-contrast: var(--cb-color-surface-950);
252
+ --cb-color-focus-ring: var(--cb-color-primary-400);
253
+
254
+ --cb-shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.4);
255
+ --cb-shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.5), 0 2px 4px -2px rgb(0 0 0 / 0.5);
256
+ --cb-shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.5),
257
+ 0 4px 6px -4px rgb(0 0 0 / 0.5);
258
+ }
259
+
260
+ // Respeto de prefers-reduced-motion
261
+ @media (prefers-reduced-motion: reduce) {
262
+ :root {
263
+ --cb-duration-fast: 0ms;
264
+ --cb-duration-normal: 0ms;
265
+ --cb-duration-slow: 0ms;
266
+ }
267
+ }