@shohojdhara/atomix 0.3.15 → 0.4.1

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 (276) hide show
  1. package/build-tools/index.d.ts +31 -30
  2. package/build-tools/package.json +4 -21
  3. package/dist/atomix.css +20234 -2027
  4. package/dist/atomix.css.map +1 -1
  5. package/dist/atomix.min.css +76 -2
  6. package/dist/atomix.min.css.map +1 -1
  7. package/dist/build-tools/index.d.ts +31 -30
  8. package/dist/build-tools/package.json +4 -21
  9. package/dist/charts.js +4 -5
  10. package/dist/charts.js.map +1 -1
  11. package/dist/core.d.ts +87 -10
  12. package/dist/core.js +673 -480
  13. package/dist/core.js.map +1 -1
  14. package/dist/forms.d.ts +15 -3
  15. package/dist/forms.js +530 -97
  16. package/dist/forms.js.map +1 -1
  17. package/dist/heavy.js +5 -6
  18. package/dist/heavy.js.map +1 -1
  19. package/dist/index.d.ts +644 -277
  20. package/dist/index.esm.js +1948 -1347
  21. package/dist/index.esm.js.map +1 -1
  22. package/dist/index.js +3333 -2728
  23. package/dist/index.js.map +1 -1
  24. package/dist/index.min.js +1 -1
  25. package/dist/index.min.js.map +1 -1
  26. package/dist/layout.js.map +1 -1
  27. package/dist/theme.d.ts +9 -9
  28. package/dist/theme.js.map +1 -1
  29. package/package.json +2 -2
  30. package/scripts/atomix-cli.js +10 -1
  31. package/scripts/cli/__tests__/utils.test.js +6 -2
  32. package/scripts/cli/migration-tools.js +2 -2
  33. package/scripts/cli/theme-bridge.js +7 -9
  34. package/scripts/cli/utils.js +2 -1
  35. package/src/components/Accordion/Accordion.stories.tsx +72 -23
  36. package/src/components/Accordion/Accordion.test.tsx +70 -50
  37. package/src/components/Accordion/Accordion.tsx +219 -96
  38. package/src/components/Accordion/AccordionCompound.test.tsx +70 -0
  39. package/src/components/AtomixGlass/AtomixGlass.test.tsx +1 -1
  40. package/src/components/AtomixGlass/GlassFilter.tsx +9 -16
  41. package/src/components/AtomixGlass/glass-utils.ts +4 -3
  42. package/src/components/AtomixGlass/shader-utils.ts +128 -52
  43. package/src/components/AtomixGlass/stories/Playground.stories.tsx +1 -1
  44. package/src/components/AtomixGlass/stories/Shaders.stories.tsx +1 -1
  45. package/src/components/Avatar/Avatar.stories.tsx +45 -62
  46. package/src/components/Avatar/Avatar.tsx +58 -56
  47. package/src/components/Badge/Badge.stories.tsx +20 -9
  48. package/src/components/Badge/Badge.test.tsx +41 -41
  49. package/src/components/Badge/Badge.tsx +64 -62
  50. package/src/components/Block/Block.stories.tsx +14 -4
  51. package/src/components/Breadcrumb/Breadcrumb.stories.tsx +9 -8
  52. package/src/components/Breadcrumb/Breadcrumb.tsx +173 -65
  53. package/src/components/Breadcrumb/BreadcrumbCompound.test.tsx +84 -0
  54. package/src/components/Button/Button.stories.tsx +13 -22
  55. package/src/components/Button/Button.test.tsx +97 -81
  56. package/src/components/Button/Button.tsx +46 -14
  57. package/src/components/Button/ButtonGroup.stories.tsx +37 -32
  58. package/src/components/Button/ButtonGroup.tsx +4 -15
  59. package/src/components/Callout/Callout.stories.tsx +166 -918
  60. package/src/components/Callout/Callout.tsx +196 -84
  61. package/src/components/Callout/CalloutCompound.test.tsx +72 -0
  62. package/src/components/Card/Card.stories.tsx +67 -36
  63. package/src/components/Card/Card.tsx +30 -14
  64. package/src/components/Chart/AreaChart.tsx +1 -1
  65. package/src/components/Chart/CandlestickChart.tsx +23 -16
  66. package/src/components/Chart/Chart.stories.tsx +4 -9
  67. package/src/components/Chart/Chart.tsx +40 -44
  68. package/src/components/Chart/ChartRenderer.tsx +39 -12
  69. package/src/components/Chart/ChartToolbar.tsx +21 -5
  70. package/src/components/Chart/DonutChart.tsx +1 -1
  71. package/src/components/Chart/FunnelChart.tsx +4 -1
  72. package/src/components/Chart/GaugeChart.tsx +3 -1
  73. package/src/components/Chart/HeatmapChart.tsx +50 -37
  74. package/src/components/Chart/LineChart.tsx +3 -2
  75. package/src/components/Chart/MultiAxisChart.tsx +24 -16
  76. package/src/components/Chart/RadarChart.tsx +19 -17
  77. package/src/components/Chart/ScatterChart.tsx +29 -21
  78. package/src/components/ColorModeToggle/ColorModeToggle.stories.tsx +6 -2
  79. package/src/components/ColorModeToggle/ColorModeToggle.tsx +15 -3
  80. package/src/components/Countdown/Countdown.stories.tsx +7 -7
  81. package/src/components/DataTable/DataTable.stories.tsx +43 -38
  82. package/src/components/DataTable/DataTable.test.tsx +26 -148
  83. package/src/components/DataTable/DataTable.tsx +485 -456
  84. package/src/components/DatePicker/DatePicker.stories.tsx +32 -47
  85. package/src/components/DatePicker/DatePicker.tsx +31 -26
  86. package/src/components/Dropdown/Dropdown.stories.tsx +2 -5
  87. package/src/components/Dropdown/Dropdown.tsx +425 -298
  88. package/src/components/Dropdown/DropdownCompound.test.tsx +64 -0
  89. package/src/components/EdgePanel/EdgePanel.stories.tsx +6 -19
  90. package/src/components/EdgePanel/EdgePanel.tsx +163 -113
  91. package/src/components/EdgePanel/EdgePanelCompound.test.tsx +53 -0
  92. package/src/components/Footer/Footer.stories.tsx +21 -16
  93. package/src/components/Footer/Footer.tsx +130 -128
  94. package/src/components/Footer/FooterLink.tsx +2 -2
  95. package/src/components/Form/Checkbox.test.tsx +49 -49
  96. package/src/components/Form/Checkbox.tsx +108 -100
  97. package/src/components/Form/Form.stories.tsx +2 -10
  98. package/src/components/Form/Input.stories.tsx +22 -39
  99. package/src/components/Form/Input.test.tsx +38 -44
  100. package/src/components/Form/Radio.stories.tsx +6 -12
  101. package/src/components/Form/Radio.tsx +68 -66
  102. package/src/components/Form/Select.stories.tsx +23 -0
  103. package/src/components/Form/Select.test.tsx +99 -0
  104. package/src/components/Form/Select.tsx +239 -186
  105. package/src/components/Form/SelectOption.tsx +88 -0
  106. package/src/components/Form/Textarea.test.tsx +27 -32
  107. package/src/components/Hero/Hero.stories.tsx +93 -23
  108. package/src/components/Hero/Hero.test.tsx +142 -0
  109. package/src/components/Hero/Hero.tsx +343 -58
  110. package/src/components/Icon/index.ts +7 -1
  111. package/src/components/List/List.test.tsx +62 -0
  112. package/src/components/List/List.tsx +32 -25
  113. package/src/components/List/ListItem.tsx +20 -0
  114. package/src/components/Modal/Modal.stories.tsx +67 -2
  115. package/src/components/Modal/Modal.tsx +208 -125
  116. package/src/components/Modal/ModalCompound.test.tsx +94 -0
  117. package/src/components/Navigation/Menu/MegaMenu.tsx +70 -70
  118. package/src/components/Navigation/Nav/NavDropdown.tsx +1 -5
  119. package/src/components/Navigation/SideMenu/SideMenu.stories.tsx +128 -28
  120. package/src/components/Navigation/SideMenu/SideMenu.tsx +5 -7
  121. package/src/components/Navigation/SideMenu/SideMenuItem.tsx +4 -5
  122. package/src/components/Pagination/Pagination.stories.tsx +7 -4
  123. package/src/components/Pagination/Pagination.tsx +199 -202
  124. package/src/components/PhotoViewer/PhotoViewer.tsx +4 -1
  125. package/src/components/Popover/Popover.stories.tsx +99 -192
  126. package/src/components/Popover/Popover.tsx +41 -37
  127. package/src/components/Progress/Progress.stories.tsx +35 -44
  128. package/src/components/River/River.stories.tsx +2 -1
  129. package/src/components/SectionIntro/SectionIntro.stories.tsx +71 -71
  130. package/src/components/Slider/Slider.stories.tsx +12 -4
  131. package/src/components/Spinner/Spinner.stories.tsx +3 -1
  132. package/src/components/Spinner/Spinner.test.tsx +23 -23
  133. package/src/components/Spinner/Spinner.tsx +43 -46
  134. package/src/components/Steps/Steps.stories.tsx +8 -6
  135. package/src/components/Steps/Steps.tsx +124 -21
  136. package/src/components/Steps/StepsCompound.test.tsx +81 -0
  137. package/src/components/Tabs/Tabs.stories.tsx +12 -9
  138. package/src/components/Tabs/Tabs.tsx +230 -75
  139. package/src/components/Tabs/TabsCompound.test.tsx +64 -0
  140. package/src/components/Toggle/Toggle.stories.tsx +27 -13
  141. package/src/components/Toggle/Toggle.test.tsx +65 -70
  142. package/src/components/Toggle/Toggle.tsx +4 -1
  143. package/src/components/Tooltip/Tooltip.stories.tsx +24 -20
  144. package/src/components/Tooltip/Tooltip.tsx +104 -106
  145. package/src/components/Upload/Upload.stories.tsx +129 -127
  146. package/src/components/Upload/Upload.tsx +287 -283
  147. package/src/components/VideoPlayer/VideoPlayer.tsx +6 -1
  148. package/src/components/index.ts +13 -2
  149. package/src/layouts/Grid/Grid.stories.tsx +9 -3
  150. package/src/layouts/MasonryGrid/MasonryGrid.tsx +5 -1
  151. package/src/lib/__tests__/theme-tools.test.ts +32 -6
  152. package/src/lib/composables/index.ts +0 -4
  153. package/src/lib/composables/shared-mouse-tracker.ts +13 -14
  154. package/src/lib/composables/useAtomixGlass.ts +102 -60
  155. package/src/lib/composables/useChartExport.ts +1 -1
  156. package/src/lib/composables/useDataTable.ts +29 -17
  157. package/src/lib/composables/useHero.ts +58 -14
  158. package/src/lib/composables/useHeroBackgroundSlider.ts +2 -9
  159. package/src/lib/composables/useInput.ts +10 -8
  160. package/src/lib/composables/useSideMenu.ts +6 -5
  161. package/src/lib/composables/useTooltip.ts +1 -2
  162. package/src/lib/composables/useVideoPlayer.ts +44 -35
  163. package/src/lib/config/index.ts +154 -154
  164. package/src/lib/constants/cssVariables.ts +29 -29
  165. package/src/lib/hooks/__tests__/useComponentCustomization.test.ts +2 -6
  166. package/src/lib/hooks/index.ts +1 -1
  167. package/src/lib/hooks/useComponentCustomization.ts +11 -17
  168. package/src/lib/hooks/usePerformanceMonitor.ts +6 -7
  169. package/src/lib/patterns/__tests__/slots.test.ts +1 -1
  170. package/src/lib/patterns/index.ts +1 -1
  171. package/src/lib/patterns/slots.tsx +8 -13
  172. package/src/lib/storybook/InteractiveDemo.tsx +13 -18
  173. package/src/lib/storybook/PreviewContainer.tsx +1 -1
  174. package/src/lib/storybook/VariantsGrid.tsx +3 -7
  175. package/src/lib/storybook/index.ts +1 -1
  176. package/src/lib/theme/adapters/cssVariableMapper.ts +47 -74
  177. package/src/lib/theme/adapters/index.ts +3 -9
  178. package/src/lib/theme/adapters/themeAdapter.ts +41 -26
  179. package/src/lib/theme/config/index.ts +1 -1
  180. package/src/lib/theme/config/types.ts +2 -2
  181. package/src/lib/theme/config/validator.ts +10 -5
  182. package/src/lib/theme/constants/constants.ts +2 -2
  183. package/src/lib/theme/constants/index.ts +1 -2
  184. package/src/lib/theme/core/__tests__/createTheme.test.ts +20 -22
  185. package/src/lib/theme/core/composeTheme.ts +32 -26
  186. package/src/lib/theme/core/createTheme.ts +1 -1
  187. package/src/lib/theme/core/createThemeObject.ts +308 -301
  188. package/src/lib/theme/core/index.ts +3 -3
  189. package/src/lib/theme/devtools/CLI.ts +105 -111
  190. package/src/lib/theme/devtools/Comparator.tsx +50 -32
  191. package/src/lib/theme/devtools/DesignTokensCustomizer.stories.tsx +50 -48
  192. package/src/lib/theme/devtools/DesignTokensCustomizer.tsx +257 -63
  193. package/src/lib/theme/devtools/Inspector.tsx +75 -60
  194. package/src/lib/theme/devtools/LiveEditor.tsx +97 -76
  195. package/src/lib/theme/devtools/Preview.tsx +150 -106
  196. package/src/lib/theme/devtools/ThemeValidator.ts +29 -21
  197. package/src/lib/theme/devtools/index.ts +3 -9
  198. package/src/lib/theme/devtools/useHistory.ts +23 -21
  199. package/src/lib/theme/errors/errors.ts +12 -11
  200. package/src/lib/theme/errors/index.ts +2 -7
  201. package/src/lib/theme/generators/generateCSS.ts +9 -13
  202. package/src/lib/theme/generators/generateCSSNested.ts +1 -6
  203. package/src/lib/theme/generators/generateCSSVariables.ts +673 -630
  204. package/src/lib/theme/generators/index.ts +1 -4
  205. package/src/lib/theme/i18n/index.ts +1 -1
  206. package/src/lib/theme/i18n/rtl.ts +13 -13
  207. package/src/lib/theme/index.ts +7 -16
  208. package/src/lib/theme/runtime/ThemeApplicator.ts +4 -4
  209. package/src/lib/theme/runtime/ThemeContext.tsx +1 -1
  210. package/src/lib/theme/runtime/ThemeErrorBoundary.tsx +19 -23
  211. package/src/lib/theme/runtime/ThemeProvider.tsx +230 -239
  212. package/src/lib/theme/runtime/__tests__/ThemeProvider.integration.test.tsx +1 -1
  213. package/src/lib/theme/runtime/__tests__/ThemeProvider.test.tsx +24 -29
  214. package/src/lib/theme/runtime/index.ts +2 -5
  215. package/src/lib/theme/runtime/useTheme.ts +18 -18
  216. package/src/lib/theme/runtime/useThemeTokens.ts +22 -22
  217. package/src/lib/theme/test/testTheme.ts +15 -16
  218. package/src/lib/theme/tokens/index.ts +2 -7
  219. package/src/lib/theme/tokens/tokens.ts +25 -24
  220. package/src/lib/theme/types.ts +428 -411
  221. package/src/lib/theme/utils/__tests__/themeValidation.test.ts +3 -3
  222. package/src/lib/theme/utils/componentTheming.ts +18 -18
  223. package/src/lib/theme/utils/domUtils.ts +277 -289
  224. package/src/lib/theme/utils/index.ts +1 -2
  225. package/src/lib/theme/utils/injectCSS.ts +10 -14
  226. package/src/lib/theme/utils/naming.ts +20 -16
  227. package/src/lib/theme/utils/themeHelpers.ts +10 -12
  228. package/src/lib/theme/utils/themeUtils.ts +85 -86
  229. package/src/lib/theme/utils/themeValidation.ts +82 -33
  230. package/src/lib/theme-tools.ts +8 -6
  231. package/src/lib/types/components.ts +180 -73
  232. package/src/lib/types/partProps.ts +1 -1
  233. package/src/lib/utils/__tests__/componentUtils.test.ts +57 -2
  234. package/src/lib/utils/__tests__/csv.test.ts +1 -1
  235. package/src/lib/utils/__tests__/themeNaming.test.ts +117 -0
  236. package/src/lib/utils/componentUtils.ts +8 -12
  237. package/src/lib/utils/csv.ts +3 -1
  238. package/src/lib/utils/dataTableExport.ts +1 -5
  239. package/src/lib/utils/fontPreloader.ts +10 -19
  240. package/src/lib/utils/icons.ts +4 -1
  241. package/src/lib/utils/index.ts +2 -6
  242. package/src/lib/utils/memoryMonitor.ts +10 -8
  243. package/src/lib/utils/themeNaming.ts +3 -3
  244. package/src/styles/01-settings/_index.scss +0 -1
  245. package/src/styles/01-settings/_settings.colors.scss +8 -8
  246. package/src/styles/01-settings/_settings.design-tokens.scss +61 -50
  247. package/src/styles/01-settings/_settings.navbar.scss +1 -1
  248. package/src/styles/01-settings/_settings.spacing.scss +3 -4
  249. package/src/styles/01-settings/_settings.tooltip.scss +1 -1
  250. package/src/styles/01-settings/_settings.typography.scss +1 -1
  251. package/src/styles/02-tools/_tools.breakpoints.scss +1 -1
  252. package/src/styles/02-tools/_tools.button.scss +51 -21
  253. package/src/styles/02-tools/_tools.utility-api.scss +36 -24
  254. package/src/styles/03-generic/_generic.root.scss +4 -3
  255. package/src/styles/06-components/_components.atomix-glass.scss +13 -9
  256. package/src/styles/06-components/_components.button.scss +16 -4
  257. package/src/styles/06-components/_components.callout.scss +27 -21
  258. package/src/styles/06-components/_components.card.scss +5 -14
  259. package/src/styles/06-components/_components.chart.scss +22 -19
  260. package/src/styles/06-components/_components.checkbox.scss +3 -1
  261. package/src/styles/06-components/_components.color-mode-toggle.scss +3 -1
  262. package/src/styles/06-components/_components.edge-panel.scss +9 -2
  263. package/src/styles/06-components/_components.footer.scss +1 -1
  264. package/src/styles/06-components/_components.side-menu.scss +5 -5
  265. package/src/styles/06-components/_components.toggle.scss +18 -0
  266. package/src/styles/06-components/_index.scss +1 -1
  267. package/src/styles/06-components/old.chart.styles.scss +0 -2
  268. package/src/styles/99-utilities/_utilities.border.scss +69 -27
  269. package/src/styles/99-utilities/_utilities.display.scss +1 -1
  270. package/src/styles/99-utilities/_utilities.opacity.scss +10 -0
  271. package/src/styles/99-utilities/_utilities.position.scss +16 -9
  272. package/src/styles/99-utilities/_utilities.scss +1 -1
  273. package/src/styles/99-utilities/_utilities.sizes.scss +47 -18
  274. package/src/styles/99-utilities/_utilities.spacing.scss +118 -66
  275. package/src/styles/99-utilities/_utilities.text-gradient.scss +30 -30
  276. package/src/styles/99-utilities/_utilities.text.scss +67 -47
@@ -33,11 +33,23 @@
33
33
  --#{config.$prefix}btn-bg: var(--#{config.$prefix}#{$color}, #{$background});
34
34
  --#{config.$prefix}btn-border-color: var(--#{config.$prefix}#{$color}, #{$border});
35
35
  --#{config.$prefix}btn-hover-color: #{$btn-text-hover-color};
36
- --#{config.$prefix}btn-hover-bg: var(--#{config.$prefix}#{$color}-hover, #{color.scale($background, $lightness: -15%)});
37
- --#{config.$prefix}btn-hover-border-color: var(--#{config.$prefix}#{$color}-hover, #{color.scale($border, $lightness: -10%)});
36
+ --#{config.$prefix}btn-hover-bg: var(
37
+ --#{config.$prefix}#{$color}-hover,
38
+ #{color.scale($background, $lightness: -15%)}
39
+ );
40
+ --#{config.$prefix}btn-hover-border-color: var(
41
+ --#{config.$prefix}#{$color}-hover,
42
+ #{color.scale($border, $lightness: -10%)}
43
+ );
38
44
  --#{config.$prefix}btn-active-color: var(--#{config.$prefix}white, #{colors.$white});
39
- --#{config.$prefix}btn-active-bg: var(--#{config.$prefix}#{$color}-hover, #{color.scale($background, $lightness: -20%)});
40
- --#{config.$prefix}btn-active-border-color: var(--#{config.$prefix}#{$color}-hover, #{color.scale($border, $lightness: -25%)});
45
+ --#{config.$prefix}btn-active-bg: var(
46
+ --#{config.$prefix}#{$color}-hover,
47
+ #{color.scale($background, $lightness: -20%)}
48
+ );
49
+ --#{config.$prefix}btn-active-border-color: var(
50
+ --#{config.$prefix}#{$color}-hover,
51
+ #{color.scale($border, $lightness: -25%)}
52
+ );
41
53
  --#{config.$prefix}btn-disabled-color: var(--#{config.$prefix}white, #{colors.$white});
42
54
  --#{config.$prefix}btn-disabled-bg: var(--#{config.$prefix}#{$color}, #{$background});
43
55
  --#{config.$prefix}btn-disabled-border-color: var(--#{config.$prefix}#{$color}, #{$border});
@@ -54,34 +66,52 @@
54
66
  ) {
55
67
  $btn-color: var(--#{config.$prefix}#{$color}, #{map.get(tokens.$theme-colors, $color)});
56
68
  $btn-hover-color: if(
57
- $color-hover,
58
- var(--#{config.$prefix}#{$color-hover}, #{map.get(tokens.$theme-colors, $color-hover)}),
69
+ $color-hover,
70
+ var(--#{config.$prefix}#{$color-hover}, #{map.get(tokens.$theme-colors, $color-hover)}),
59
71
  var(--#{config.$prefix}white, #{colors.$white})
60
72
  );
61
73
  $btn-hover-bg: if(
62
- $hover-background,
63
- var(--#{config.$prefix}#{$hover-background}, #{map.get(tokens.$theme-colors, $hover-background)}),
64
- var(--#{config.$prefix}#{$color}-hover, #{color.scale(map.get(tokens.$theme-colors, $color), $lightness: -15%)})
74
+ $hover-background,
75
+ var(
76
+ --#{config.$prefix}#{$hover-background},
77
+ #{map.get(tokens.$theme-colors, $hover-background)}
78
+ ),
79
+ var(
80
+ --#{config.$prefix}#{$color}-hover,
81
+ #{color.scale(map.get(tokens.$theme-colors, $color), $lightness: -15%)}
82
+ )
65
83
  );
66
84
  $btn-hover-border: if(
67
- $hover-border,
68
- var(--#{config.$prefix}#{$hover-border}, #{map.get(tokens.$theme-colors, $hover-border)}),
69
- var(--#{config.$prefix}#{$color}-hover, #{color.scale(map.get(tokens.$theme-colors, $color), $lightness: -10%)})
85
+ $hover-border,
86
+ var(--#{config.$prefix}#{$hover-border}, #{map.get(tokens.$theme-colors, $hover-border)}),
87
+ var(
88
+ --#{config.$prefix}#{$color}-hover,
89
+ #{color.scale(map.get(tokens.$theme-colors, $color), $lightness: -10%)}
90
+ )
70
91
  );
71
92
  $btn-active-color: if(
72
- $color-hover,
73
- var(--#{config.$prefix}#{$color-hover}, #{map.get(tokens.$theme-colors, $color-hover)}),
93
+ $color-hover,
94
+ var(--#{config.$prefix}#{$color-hover}, #{map.get(tokens.$theme-colors, $color-hover)}),
74
95
  var(--#{config.$prefix}white, #{colors.$white})
75
96
  );
76
97
  $btn-active-bg: if(
77
- $active-background,
78
- var(--#{config.$prefix}#{$active-background}, #{map.get(tokens.$theme-colors, $active-background)}),
79
- var(--#{config.$prefix}#{$color}-hover, #{color.scale(map.get(tokens.$theme-colors, $color), $lightness: -20%)})
98
+ $active-background,
99
+ var(
100
+ --#{config.$prefix}#{$active-background},
101
+ #{map.get(tokens.$theme-colors, $active-background)}
102
+ ),
103
+ var(
104
+ --#{config.$prefix}#{$color}-hover,
105
+ #{color.scale(map.get(tokens.$theme-colors, $color), $lightness: -20%)}
106
+ )
80
107
  );
81
108
  $btn-active-border: if(
82
- $active-border,
83
- var(--#{config.$prefix}#{$active-border}, #{map.get(tokens.$theme-colors, $active-border)}),
84
- var(--#{config.$prefix}#{$color}-hover, #{color.scale(map.get(tokens.$theme-colors, $color), $lightness: -25%)})
109
+ $active-border,
110
+ var(--#{config.$prefix}#{$active-border}, #{map.get(tokens.$theme-colors, $active-border)}),
111
+ var(
112
+ --#{config.$prefix}#{$color}-hover,
113
+ #{color.scale(map.get(tokens.$theme-colors, $color), $lightness: -25%)}
114
+ )
85
115
  );
86
116
 
87
117
  --#{config.$prefix}btn-color: #{$btn-color};
@@ -104,4 +134,4 @@
104
134
  --#{config.$prefix}btn-padding-x: #{$padding-x};
105
135
  --#{config.$prefix}btn-font-size: #{$font-size};
106
136
  --#{config.$prefix}btn-border-radius: #{$border-radius};
107
- }
137
+ }
@@ -11,6 +11,7 @@
11
11
  @use 'sass:meta';
12
12
  @use '../01-settings/settings.config' as *;
13
13
  @use '../01-settings/settings.breakpoints' as *;
14
+ @use 'tools.breakpoints' as *;
14
15
 
15
16
  // Default config for utilities
16
17
  $utility-defaults: (
@@ -21,7 +22,7 @@ $utility-defaults: (
21
22
  class: null,
22
23
  state: null,
23
24
  local-vars: (),
24
- rtl: true,
25
+ is-important: true,
25
26
  ) !default;
26
27
 
27
28
  // Core function to generate utility classes
@@ -62,9 +63,10 @@ $utility-defaults: (
62
63
 
63
64
  @if map.get($utility, class) == null {
64
65
  // Generate class with property name as class
66
+ // Responsive infix goes between prefix and value: .u-prefix-{bp}-{value}
65
67
  $class-name: if(
66
68
  $key,
67
- '#{$property-class}-#{$escaped-key}#{$local-infix}',
69
+ '#{$property-class}#{$local-infix}-#{$escaped-key}',
68
70
  '#{$property-class}#{$local-infix}'
69
71
  );
70
72
 
@@ -75,15 +77,17 @@ $utility-defaults: (
75
77
  --atomix-u-#{$css-variable-name}: #{$value};
76
78
  } @else if $properties {
77
79
  @each $property in $properties {
78
- #{$property}: $value if(map.get($utility, rtl), null, !important);
80
+ #{$property}: $value if(map.get($utility, is-important), !important, null);
79
81
  }
80
- } @else {
81
- #{$property-class}: $value if(map.get($utility, rtl), null, !important);
82
+ } @else if $value != null {
83
+ // Guard: only emit property declaration if value is not null
84
+ #{$property-class}: $value if(map.get($utility, is-important), !important, null);
82
85
  }
83
-
86
+
84
87
  // Add local CSS variables if specified
85
- @if map.get($utility, local-vars) {
86
- @each $local-var-name, $local-var-value in map.get($utility, local-vars) {
88
+ $local-vars: map.get($utility, local-vars);
89
+ @if $local-vars and list.length($local-vars) > 0 {
90
+ @each $local-var-name, $local-var-value in $local-vars {
87
91
  --#{$local-var-name}: #{$local-var-value};
88
92
  }
89
93
  }
@@ -93,6 +97,7 @@ $utility-defaults: (
93
97
  $base-class: map.get($utility, class);
94
98
  $modifier: if($key, '-#{$escaped-key}', '');
95
99
 
100
+ // Responsive infix goes between class and modifier: .u-class-{bp}-{value}
96
101
  .#{$base-class}#{$local-infix}#{$modifier} {
97
102
  @if $css-var and $properties {
98
103
  // Handle CSS variable generation with properties
@@ -106,15 +111,17 @@ $utility-defaults: (
106
111
  --atomix-u-#{$css-variable-name}#{$modifier}: #{$value};
107
112
  } @else if $properties {
108
113
  @each $property in $properties {
109
- #{$property}: $value if(map.get($utility, rtl), null, !important);
114
+ #{$property}: $value if(map.get($utility, is-important), !important, null);
110
115
  }
111
- } @else {
112
- #{$base-class}: $value if(map.get($utility, rtl), null, !important);
116
+ } @else if $value != null {
117
+ // Guard: only emit property declaration if value is not null
118
+ #{$base-class}: $value if(map.get($utility, is-important), !important, null);
113
119
  }
114
-
120
+
115
121
  // Add local CSS variables if specified
116
- @if map.get($utility, local-vars) {
117
- @each $local-var-name, $local-var-value in map.get($utility, local-vars) {
122
+ $local-vars: map.get($utility, local-vars);
123
+ @if $local-vars and list.length($local-vars) > 0 {
124
+ @each $local-var-name, $local-var-value in $local-vars {
118
125
  --#{$local-var-name}: #{$local-var-value};
119
126
  }
120
127
  }
@@ -129,7 +136,7 @@ $utility-defaults: (
129
136
 
130
137
  @if $responsive {
131
138
  @each $breakpoint in map.keys($breakpoints) {
132
- $infix: call($breakpoint-infix-generator, $breakpoint);
139
+ $infix: meta.call($breakpoint-infix-generator, $breakpoint);
133
140
 
134
141
  @include media-breakpoint-up($breakpoint) {
135
142
  @include generate-utility($utility, $infix);
@@ -147,11 +154,9 @@ $utility-defaults: (
147
154
  $breakpoint-infix-generator: null
148
155
  ) {
149
156
  // Set default breakpoint infix generator if not provided
150
- $breakpoint-infix-generator: if(
151
- $breakpoint-infix-generator,
152
- $breakpoint-infix-generator,
153
- get-breakpoint-infix
154
- );
157
+ @if not $breakpoint-infix-generator {
158
+ $breakpoint-infix-generator: meta.get-function('breakpoint-infix');
159
+ }
155
160
 
156
161
  @each $utility, $config in $utilities {
157
162
  // Merge default config
@@ -164,9 +169,10 @@ $utility-defaults: (
164
169
  values: map.get($config, values),
165
170
  class: map.get($config, class),
166
171
  state: map.get($config, state),
167
- rtl: map.get($config, rtl),
172
+ is-important: map.get($config, is-important),
168
173
  css-var: map.get($config, css-var),
169
174
  local-vars: map.get($config, local-vars),
175
+ responsive: map.get($config, responsive),
170
176
  );
171
177
 
172
178
  @include generate-responsive-utilities(
@@ -174,14 +180,20 @@ $utility-defaults: (
174
180
  $breakpoints,
175
181
  $breakpoint-infix-generator
176
182
  );
183
+
184
+ // Generate print utilities if requested
185
+ @if map.get($config, print) == true {
186
+ @media print {
187
+ @include generate-utility($utility-map);
188
+ }
189
+ }
177
190
  }
178
191
  }
179
192
  }
180
193
 
181
194
  // Helper function to get breakpoint infix
182
- @function get-breakpoint-infix($breakpoint) {
183
- @return if($breakpoint == null, '', '-#{$breakpoint}');
184
- }
195
+ // Uses breakpoint-infix from _tools.breakpoints.scss
196
+ // Returns '' for the smallest breakpoint (xs), '-sm', '-md', etc. for others
185
197
 
186
198
  // Helper function to escape keys for safe CSS class names
187
199
  @function _escape-key($key) {
@@ -117,7 +117,9 @@
117
117
  --#{config.$prefix}border-radius-lg: #{border-radius.$border-radius-lg};
118
118
  --#{config.$prefix}border-radius-xl: #{border-radius.$border-radius-xl};
119
119
  --#{config.$prefix}border-radius-xxl: #{border-radius.$border-radius-xxl};
120
- --#{config.$prefix}border-radius-2xl: var(--#{config.$prefix}border-radius-xxl); // Deprecated in v5.3.0 for consistency
120
+ --#{config.$prefix}border-radius-2xl: var(
121
+ --#{config.$prefix}border-radius-xxl
122
+ ); // Deprecated in v5.3.0 for consistency
121
123
  --#{config.$prefix}border-radius-3xl: #{border-radius.$border-radius-3xl};
122
124
  --#{config.$prefix}border-radius-4xl: #{border-radius.$border-radius-4xl};
123
125
  --#{config.$prefix}border-radius-pill: #{border-radius.$border-radius-pill};
@@ -212,7 +214,6 @@
212
214
  @each $property, $value in color-maps.$focus-ring {
213
215
  --#{config.$prefix}focus-ring-#{$property}: #{$value};
214
216
  }
215
-
216
217
  }
217
218
 
218
219
  // Dark mode overrides
@@ -276,4 +277,4 @@
276
277
  --#{config.$prefix}form-valid-border-color: #{colors.$form-valid-border-color-dark};
277
278
  --#{config.$prefix}form-invalid-color: #{colors.$form-invalid-color-dark};
278
279
  --#{config.$prefix}form-invalid-border-color: #{colors.$form-invalid-border-color-dark};
279
- }
280
+ }
@@ -121,20 +121,24 @@
121
121
  mix-blend-mode: screen;
122
122
  z-index: var(--atomix-z-index-5, 5);
123
123
  background: var(--atomix-glass-border-gradient-1, none);
124
- box-shadow: var(--atomix-glass-border-shadow,
125
- 0 0 0 0.03125rem rgba(255, 255, 255, 0.5) inset,
126
- 0 0.25rem 0.75rem rgba(255, 255, 255, 0.25) inset,
127
- 0 0.25rem 1rem rgba(0, 0, 0, 0.35));
124
+ box-shadow: var(
125
+ --atomix-glass-border-shadow,
126
+ 0 0 0 0.03125rem rgba(255, 255, 255, 0.5) inset,
127
+ 0 0.25rem 0.75rem rgba(255, 255, 255, 0.25) inset,
128
+ 0 0.25rem 1rem rgba(0, 0, 0, 0.35)
129
+ );
128
130
  }
129
131
 
130
132
  &__border-2 {
131
133
  mix-blend-mode: overlay;
132
134
  z-index: var(--atomix-z-index-6, 6);
133
135
  background: var(--atomix-glass-border-gradient-2, none);
134
- box-shadow: var(--atomix-glass-border-shadow,
135
- 0 0 0 0.03125rem rgba(255, 255, 255, 0.5) inset,
136
- 0 0.25rem 0.75rem rgba(255, 255, 255, 0.25) inset,
137
- 0 0.25rem 1rem rgba(0, 0, 0, 0.35));
136
+ box-shadow: var(
137
+ --atomix-glass-border-shadow,
138
+ 0 0 0 0.03125rem rgba(255, 255, 255, 0.5) inset,
139
+ 0 0.25rem 0.75rem rgba(255, 255, 255, 0.25) inset,
140
+ 0 0.25rem 1rem rgba(0, 0, 0, 0.35)
141
+ );
138
142
  }
139
143
 
140
144
  // Container styles
@@ -254,4 +258,4 @@
254
258
  @media (prefers-contrast: high) {
255
259
  border-width: var(--atomix-spacing-0-5, 0.125rem);
256
260
  }
257
- }
261
+ }
@@ -149,15 +149,27 @@
149
149
  }
150
150
 
151
151
  &--active {
152
- --#{config.$prefix}btn-bg: var(--#{config.$prefix}btn-active-bg, var(--#{config.$prefix}btn-hover-bg));
153
- --#{config.$prefix}btn-color: var(--#{config.$prefix}btn-active-color, var(--#{config.$prefix}btn-hover-color));
154
- --#{config.$prefix}btn-border-color: var(--#{config.$prefix}btn-active-border-color, var(--#{config.$prefix}btn-hover-border-color));
152
+ --#{config.$prefix}btn-bg: var(
153
+ --#{config.$prefix}btn-active-bg,
154
+ var(--#{config.$prefix}btn-hover-bg)
155
+ );
156
+ --#{config.$prefix}btn-color: var(
157
+ --#{config.$prefix}btn-active-color,
158
+ var(--#{config.$prefix}btn-hover-color)
159
+ );
160
+ --#{config.$prefix}btn-border-color: var(
161
+ --#{config.$prefix}btn-active-border-color,
162
+ var(--#{config.$prefix}btn-hover-border-color)
163
+ );
155
164
  box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.1);
156
165
  }
157
166
 
158
167
  &--selected {
159
168
  --#{config.$prefix}btn-border-width: 2px;
160
- --#{config.$prefix}btn-border-color: var(--#{config.$prefix}brand-border-subtle, var(--#{config.$prefix}primary));
169
+ --#{config.$prefix}btn-border-color: var(
170
+ --#{config.$prefix}brand-border-subtle,
171
+ var(--#{config.$prefix}primary)
172
+ );
161
173
  box-shadow: 0 0 0 2px rgba(var(--#{config.$prefix}primary-rgb, 124, 58, 237), 0.2);
162
174
  }
163
175
 
@@ -43,9 +43,13 @@
43
43
  padding: var(--#{config.$prefix}callout-padding-y) var(--#{config.$prefix}callout-padding-x);
44
44
  @include dynamic-background(var(--#{config.$prefix}callout-bg));
45
45
  border-radius: var(--#{config.$prefix}callout-border-radius);
46
- border: var(--#{config.$prefix}callout-border-witdh) solid var(--#{config.$prefix}callout-border-color);
47
- transition: opacity var(--#{config.$prefix}callout-transition-duration) var(--#{config.$prefix}callout-transition-timing),
48
- transform var(--#{config.$prefix}callout-transition-duration) var(--#{config.$prefix}callout-transition-timing);
46
+ border: var(--#{config.$prefix}callout-border-witdh) solid
47
+ var(--#{config.$prefix}callout-border-color);
48
+ transition:
49
+ opacity var(--#{config.$prefix}callout-transition-duration)
50
+ var(--#{config.$prefix}callout-transition-timing),
51
+ transform var(--#{config.$prefix}callout-transition-duration)
52
+ var(--#{config.$prefix}callout-transition-timing);
49
53
 
50
54
  &__content {
51
55
  width: 100%;
@@ -135,7 +139,8 @@
135
139
  position: relative;
136
140
  max-width: rem.rem(350px);
137
141
  width: 100%;
138
- padding: var(--#{config.$prefix}callout-tost-padding-y) var(--#{config.$prefix}callout-tost-padding-x);
142
+ padding: var(--#{config.$prefix}callout-tost-padding-y)
143
+ var(--#{config.$prefix}callout-tost-padding-x);
139
144
  flex-direction: column;
140
145
  align-items: flex-start;
141
146
  justify-content: flex-start;
@@ -151,7 +156,9 @@
151
156
  }
152
157
 
153
158
  &__actions {
154
- padding-left: calc(var(--#{config.$prefix}callout-icon-size) + var(--#{config.$prefix}callout-message-spacer));
159
+ padding-left: calc(
160
+ var(--#{config.$prefix}callout-icon-size) + var(--#{config.$prefix}callout-message-spacer)
161
+ );
155
162
  margin-top: var(--#{config.$prefix}callout-actions-spacer-y);
156
163
  }
157
164
 
@@ -170,29 +177,23 @@
170
177
 
171
178
  @each $color, $value in maps.$theme-colors {
172
179
  &--#{$color} {
173
- @if ($color =='primary') {
180
+ @if ($color == 'primary') {
174
181
  --#{config.$prefix}callout-bg: var(--#{config.$prefix}brand-bg-subtle);
175
182
  --#{config.$prefix}callout-border-color: var(--#{config.$prefix}brand-border-subtle);
176
183
  --#{config.$prefix}callout-icon-color: var(--#{config.$prefix}brand-text-emphasis);
177
- }
178
-
179
- @else if($color =='light') {
184
+ } @else if($color == 'light') {
180
185
  --#{config.$prefix}callout-title-color: var(--#{config.$prefix}dark);
181
186
  --#{config.$prefix}callout-text-color: var(--#{config.$prefix}dark);
182
187
  --#{config.$prefix}callout-bg: var(--#{config.$prefix}light);
183
188
  --#{config.$prefix}callout-border-color: var(--#{config.$prefix}primary-border-subtle);
184
189
  --#{config.$prefix}callout-icon-color: var(--#{config.$prefix}tertiary-text-emphasis);
185
- }
186
-
187
- @else if($color =='dark') {
190
+ } @else if($color == 'dark') {
188
191
  --#{config.$prefix}callout-title-color: var(--#{config.$prefix}light);
189
192
  --#{config.$prefix}callout-text-color: #{$gray-4};
190
193
  --#{config.$prefix}callout-bg: var(--#{config.$prefix}dark);
191
194
  --#{config.$prefix}callout-border-color: var(--#{config.$prefix}dark-border-subtle);
192
195
  --#{config.$prefix}callout-icon-color: var(--#{config.$prefix}light);
193
- }
194
-
195
- @else {
196
+ } @else {
196
197
  --#{config.$prefix}callout-bg: var(--#{config.$prefix}#{$color}-bg-subtle);
197
198
  --#{config.$prefix}callout-border-color: var(--#{config.$prefix}#{$color}-border-subtle);
198
199
  --#{config.$prefix}callout-icon-color: var(--#{config.$prefix}#{$color}-text-emphasis);
@@ -212,12 +213,15 @@
212
213
  justify-content: center;
213
214
  align-items: center;
214
215
  padding: var(--#{config.$prefix}callout-padding-y) var(--#{config.$prefix}callout-padding-x);
215
- border: var(--#{config.$prefix}callout-border-width) solid color-mix(in srgb, var(--#{config.$prefix}callout-border-color) 20%, transparent);
216
+ border: var(--#{config.$prefix}callout-border-width) solid
217
+ color-mix(in srgb, var(--#{config.$prefix}callout-border-color) 20%, transparent);
216
218
  max-width: var(--#{config.$prefix}callout-width);
217
219
  border-radius: var(--#{config.$prefix}callout-border-radius);
218
220
  width: 100%;
219
- @include dynamic-background(var(--#{config.$prefix}callout-bg),
220
- $background-transparency-enable: true);
221
+ @include dynamic-background(
222
+ var(--#{config.$prefix}callout-bg),
223
+ $background-transparency-enable: true
224
+ );
221
225
  }
222
226
 
223
227
  // Adjust text colors for glass effect
@@ -231,8 +235,10 @@
231
235
 
232
236
  // Glass effect for toast variant
233
237
  &#{$root}--toast {
234
- @include dynamic-background(var(--#{config.$prefix}callout-bg),
235
- $background-transparency-enable: true);
238
+ @include dynamic-background(
239
+ var(--#{config.$prefix}callout-bg),
240
+ $background-transparency-enable: true
241
+ );
236
242
  box-shadow:
237
243
  0 8px 32px rgba(0, 0, 0, 0.1),
238
244
  0 0 0 1px rgba(255, 255, 255, 0.1) inset;
@@ -311,4 +317,4 @@
311
317
  opacity: 1;
312
318
  transform: translateY(0);
313
319
  }
314
- }
320
+ }
@@ -199,8 +199,6 @@
199
199
  }
200
200
  }
201
201
 
202
-
203
-
204
202
  &--sm {
205
203
  --#{$prefix}card-spacer-y: #{rem(map.get(spacing.$spacing-sizes, 2))}; // 8px
206
204
  --#{$prefix}card-spacer-x: #{rem(map.get(spacing.$spacing-sizes, 2))}; // 8px
@@ -222,7 +220,6 @@
222
220
  @include dynamic-background(var(--#{$prefix}card-bg));
223
221
  }
224
222
 
225
-
226
223
  &--glass {
227
224
  max-width: none;
228
225
  @include dynamic-background(var(--#{$prefix}card-bg), $background-transparency-enable: true);
@@ -350,16 +347,14 @@
350
347
 
351
348
  @each $color, $value in maps.$theme-colors {
352
349
  &--#{$color} {
353
- @if ($color =='primary') {
350
+ @if ($color == 'primary') {
354
351
  --#{$prefix}card-bg: var(--#{$prefix}brand-bg-subtle);
355
352
  --#{$prefix}card-bg-hover: var(--#{$prefix}brand-bg-subtle);
356
353
  --#{$prefix}card-border-color: var(--#{$prefix}brand-border-subtle);
357
354
  --#{$prefix}card-title-color: var(--#{$prefix}brand-text-emphasis);
358
355
  --#{$prefix}card-icon-bg: var(--#{$prefix}brand-text-emphasis);
359
356
  --#{$prefix}card-icon-color: var(--#{$prefix}brand-bg-subtle);
360
- }
361
-
362
- @else if ($color =='dark') {
357
+ } @else if ($color == 'dark') {
363
358
  --#{$prefix}card-bg: var(--#{$prefix}dark);
364
359
  --#{$prefix}card-bg-hover: var(--#{$prefix}dark-hover);
365
360
  --#{$prefix}card-border-color: var(--#{$prefix}dark);
@@ -367,9 +362,7 @@
367
362
  --#{$prefix}card-text-color: var(--#{$prefix}light);
368
363
  --#{$prefix}card-icon-bg: var(--#{$prefix}light);
369
364
  --#{$prefix}card-icon-color: var(--#{$prefix}dark);
370
- }
371
-
372
- @else if ($color =='light') {
365
+ } @else if ($color == 'light') {
373
366
  --#{$prefix}card-bg: var(--#{$prefix}light);
374
367
  --#{$prefix}card-bg-hover: var(--#{$prefix}light-hover);
375
368
  --#{$prefix}card-border-color: var(--#{$prefix}light);
@@ -377,9 +370,7 @@
377
370
  --#{$prefix}card-text-color: var(--#{$prefix}dark);
378
371
  --#{$prefix}card-icon-bg: var(--#{$prefix}dark);
379
372
  --#{$prefix}card-icon-color: var(--#{$prefix}light);
380
- }
381
-
382
- @else {
373
+ } @else {
383
374
  --#{$prefix}card-bg: var(--#{$prefix}#{$color}-bg-subtle);
384
375
  --#{$prefix}card-bg-hover: var(--#{$prefix}#{$color}-bg-subtle);
385
376
  --#{$prefix}card-border-color: var(--#{$prefix}#{$color}-border-subtle);
@@ -456,4 +447,4 @@
456
447
  to {
457
448
  transform: rotate(360deg);
458
449
  }
459
- }
450
+ }
@@ -31,7 +31,7 @@
31
31
  border: var(--#{$prefix}chart-border-width) solid var(--#{$prefix}chart-border-color);
32
32
  border-radius: var(--#{$prefix}chart-border-radius);
33
33
  overflow: hidden;
34
- box-shadow:
34
+ box-shadow:
35
35
  0 1px 3px rgba(0, 0, 0, 0.12),
36
36
  0 1px 2px rgba(0, 0, 0, 0.24),
37
37
  0 0 0 1px rgba(var(--#{$prefix}primary-rgb), 0.05);
@@ -48,7 +48,7 @@
48
48
  content: '';
49
49
  position: absolute;
50
50
  inset: 0;
51
- background:
51
+ background:
52
52
  linear-gradient(
53
53
  135deg,
54
54
  rgba(var(--#{$prefix}primary-rgb), 0.08) 0%,
@@ -85,9 +85,13 @@
85
85
  rgba(var(--#{$prefix}secondary-rgb), 0.05),
86
86
  transparent
87
87
  );
88
- -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
88
+ -webkit-mask:
89
+ linear-gradient(#fff 0 0) content-box,
90
+ linear-gradient(#fff 0 0);
89
91
  -webkit-mask-composite: xor;
90
- mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
92
+ mask:
93
+ linear-gradient(#fff 0 0) content-box,
94
+ linear-gradient(#fff 0 0);
91
95
  mask-composite: exclude;
92
96
  pointer-events: none;
93
97
  z-index: 2;
@@ -96,7 +100,7 @@
96
100
  }
97
101
 
98
102
  &:hover {
99
- box-shadow:
103
+ box-shadow:
100
104
  0 8px 24px rgba(0, 0, 0, 0.12),
101
105
  0 4px 8px rgba(0, 0, 0, 0.16),
102
106
  0 0 0 1px rgba(var(--#{$prefix}primary-rgb), 0.1),
@@ -143,14 +147,14 @@
143
147
  background: var(--#{$prefix}body-bg);
144
148
  }
145
149
  &--elevated {
146
- box-shadow:
150
+ box-shadow:
147
151
  0 12px 32px rgba(0, 0, 0, 0.15),
148
152
  0 6px 12px rgba(0, 0, 0, 0.2),
149
153
  0 0 0 1px rgba(var(--#{$prefix}primary-rgb), 0.1),
150
154
  0 0 60px rgba(var(--#{$prefix}primary-rgb), 0.12);
151
155
 
152
156
  &:hover {
153
- box-shadow:
157
+ box-shadow:
154
158
  0 16px 40px rgba(0, 0, 0, 0.18),
155
159
  0 8px 16px rgba(0, 0, 0, 0.24),
156
160
  0 0 0 1px rgba(var(--#{$prefix}primary-rgb), 0.15),
@@ -190,12 +194,12 @@
190
194
 
191
195
  &--selected {
192
196
  border-color: rgba(var(--#{$prefix}primary-rgb), 0.3);
193
- box-shadow:
197
+ box-shadow:
194
198
  0 4px 16px rgba(0, 0, 0, 0.1),
195
199
  0 2px 4px rgba(0, 0, 0, 0.12),
196
200
  0 0 0 2px rgba(var(--#{$prefix}primary-rgb), 0.2),
197
201
  0 0 30px rgba(var(--#{$prefix}primary-rgb), 0.15);
198
- background:
202
+ background:
199
203
  linear-gradient(
200
204
  135deg,
201
205
  rgba(var(--#{$prefix}primary-rgb), 0.08) 0%,
@@ -213,7 +217,7 @@
213
217
  cursor: pointer;
214
218
 
215
219
  &:hover {
216
- box-shadow:
220
+ box-shadow:
217
221
  0 8px 24px rgba(0, 0, 0, 0.12),
218
222
  0 4px 8px rgba(0, 0, 0, 0.16),
219
223
  0 0 0 1px rgba(var(--#{$prefix}primary-rgb), 0.1),
@@ -222,7 +226,7 @@
222
226
  }
223
227
 
224
228
  &:active {
225
- box-shadow:
229
+ box-shadow:
226
230
  0 2px 8px rgba(0, 0, 0, 0.1),
227
231
  0 1px 2px rgba(0, 0, 0, 0.12);
228
232
  }
@@ -601,14 +605,13 @@
601
605
  content: '';
602
606
  position: absolute;
603
607
  inset: 0;
604
- background:
605
- linear-gradient(
606
- 180deg,
607
- rgba(var(--#{$prefix}primary-rgb), 0.03) 0%,
608
- transparent 30%,
609
- transparent 70%,
610
- rgba(var(--#{$prefix}secondary-rgb), 0.02) 100%
611
- );
608
+ background: linear-gradient(
609
+ 180deg,
610
+ rgba(var(--#{$prefix}primary-rgb), 0.03) 0%,
611
+ transparent 30%,
612
+ transparent 70%,
613
+ rgba(var(--#{$prefix}secondary-rgb), 0.02) 100%
614
+ );
612
615
  pointer-events: none;
613
616
  z-index: 1;
614
617
  }
@@ -61,7 +61,9 @@
61
61
  content: '';
62
62
  transform: scale(0);
63
63
  opacity: 0;
64
- transition: transform 120ms ease-in-out, opacity 120ms ease-in-out;
64
+ transition:
65
+ transform 120ms ease-in-out,
66
+ opacity 120ms ease-in-out;
65
67
  font-size: 0.65em;
66
68
  line-height: 1;
67
69
  font-family: 'Lux Icon';
@@ -12,7 +12,9 @@
12
12
  cursor: pointer;
13
13
  padding: rem(8px);
14
14
  border-radius: 50%;
15
- transition: background-color 0.2s ease, opacity 0.2s ease;
15
+ transition:
16
+ background-color 0.2s ease,
17
+ opacity 0.2s ease;
16
18
  color: var(--#{$prefix}body-color);
17
19
 
18
20
  &:hover:not(:disabled) {