@shohojdhara/atomix 0.2.3 → 0.2.5

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 (225) hide show
  1. package/README.md +19 -0
  2. package/dist/atomix.css +1703 -1544
  3. package/dist/atomix.min.css +4 -4
  4. package/dist/index.d.ts +1465 -963
  5. package/dist/index.esm.js +16289 -25908
  6. package/dist/index.esm.js.map +1 -1
  7. package/dist/index.js +15650 -21780
  8. package/dist/index.js.map +1 -1
  9. package/dist/index.min.js +1 -1
  10. package/dist/index.min.js.map +1 -1
  11. package/dist/themes/applemix.css +15008 -0
  12. package/dist/themes/applemix.min.css +72 -0
  13. package/dist/themes/boomdevs.css +1608 -1450
  14. package/dist/themes/boomdevs.min.css +5 -5
  15. package/dist/themes/esrar.css +1702 -1543
  16. package/dist/themes/esrar.min.css +4 -4
  17. package/dist/themes/flashtrade.css +15159 -0
  18. package/dist/themes/flashtrade.min.css +86 -0
  19. package/dist/themes/mashroom.css +1699 -1540
  20. package/dist/themes/mashroom.min.css +7 -7
  21. package/dist/themes/shaj-default.css +1693 -1534
  22. package/dist/themes/shaj-default.min.css +4 -4
  23. package/package.json +6 -17
  24. package/src/components/Accordion/Accordion.stories.tsx +662 -21
  25. package/src/components/Accordion/Accordion.tsx +21 -14
  26. package/src/components/AtomixGlass/AtomixGlass.test.tsx +106 -72
  27. package/src/components/AtomixGlass/AtomixGlass.tsx +529 -1195
  28. package/src/components/AtomixGlass/AtomixGlassContainer.tsx +400 -0
  29. package/src/components/AtomixGlass/GlassFilter.tsx +156 -0
  30. package/src/components/AtomixGlass/README.md +124 -2
  31. package/src/components/AtomixGlass/atomixGLass.old.tsx +1266 -0
  32. package/src/components/AtomixGlass/glass-utils.ts +263 -0
  33. package/src/components/AtomixGlass/shader-utils.ts +792 -68
  34. package/src/components/AtomixGlass/stories/AtomixGlass.stories.tsx +1250 -0
  35. package/src/components/AtomixGlass/stories/Examples.stories.tsx +5768 -0
  36. package/src/components/AtomixGlass/stories/Modes.stories.tsx +1065 -0
  37. package/src/components/AtomixGlass/stories/Playground.stories.tsx +1129 -0
  38. package/src/components/AtomixGlass/stories/ShaderVariants.stories.tsx +395 -0
  39. package/src/components/AtomixGlass/stories/shared-components.tsx +301 -0
  40. package/src/components/AtomixGlass/utils.ts +3 -3
  41. package/src/components/Avatar/Avatar.tsx +3 -0
  42. package/src/components/Avatar/AvatarGroup.tsx +2 -1
  43. package/src/components/Badge/Badge.stories.tsx +76 -55
  44. package/src/components/Badge/Badge.tsx +12 -14
  45. package/src/components/Breadcrumb/Breadcrumb.tsx +23 -4
  46. package/src/components/Button/Button.stories.tsx +501 -20
  47. package/src/components/Button/Button.tsx +5 -8
  48. package/src/components/Callout/Callout.stories.tsx +86 -35
  49. package/src/components/Callout/Callout.tsx +31 -9
  50. package/src/components/Card/Card.stories.tsx +565 -2
  51. package/src/components/Card/Card.tsx +15 -4
  52. package/src/components/Card/ElevationCard.tsx +2 -0
  53. package/src/components/Chart/AnimatedChart.tsx +179 -156
  54. package/src/components/Chart/AreaChart.tsx +123 -12
  55. package/src/components/Chart/BarChart.tsx +91 -100
  56. package/src/components/Chart/BaseChart.tsx +80 -0
  57. package/src/components/Chart/BubbleChart.tsx +114 -290
  58. package/src/components/Chart/CandlestickChart.tsx +282 -622
  59. package/src/components/Chart/Chart.stories.tsx +576 -179
  60. package/src/components/Chart/Chart.tsx +374 -75
  61. package/src/components/Chart/ChartRenderer.tsx +371 -220
  62. package/src/components/Chart/ChartToolbar.tsx +372 -61
  63. package/src/components/Chart/ChartTooltip.tsx +33 -18
  64. package/src/components/Chart/DonutChart.tsx +172 -254
  65. package/src/components/Chart/FunnelChart.tsx +169 -240
  66. package/src/components/Chart/GaugeChart.tsx +224 -392
  67. package/src/components/Chart/HeatmapChart.tsx +302 -440
  68. package/src/components/Chart/LineChart.tsx +148 -103
  69. package/src/components/Chart/MultiAxisChart.tsx +267 -395
  70. package/src/components/Chart/PieChart.tsx +114 -64
  71. package/src/components/Chart/RadarChart.tsx +202 -218
  72. package/src/components/Chart/ScatterChart.tsx +111 -97
  73. package/src/components/Chart/TreemapChart.tsx +147 -222
  74. package/src/components/Chart/WaterfallChart.tsx +253 -291
  75. package/src/components/Chart/index.ts +11 -9
  76. package/src/components/Chart/types.ts +85 -9
  77. package/src/components/Chart/utils.ts +66 -0
  78. package/src/components/ColorModeToggle/ColorModeToggle.tsx +6 -3
  79. package/src/components/Countdown/Countdown.tsx +4 -0
  80. package/src/components/DataTable/DataTable.tsx +2 -1
  81. package/src/components/DatePicker/DatePicker.stories.tsx +689 -12
  82. package/src/components/DatePicker/DatePicker.tsx +3 -9
  83. package/src/components/DatePicker/types.ts +5 -0
  84. package/src/components/Dropdown/Dropdown.stories.tsx +32 -25
  85. package/src/components/Dropdown/Dropdown.tsx +26 -28
  86. package/src/components/EdgePanel/EdgePanel.stories.tsx +473 -2
  87. package/src/components/EdgePanel/EdgePanel.tsx +101 -13
  88. package/src/components/Footer/Footer.stories.tsx +187 -60
  89. package/src/components/Footer/Footer.test.tsx +134 -0
  90. package/src/components/Footer/Footer.tsx +133 -34
  91. package/src/components/Footer/FooterLink.tsx +1 -1
  92. package/src/components/Footer/FooterSection.tsx +53 -36
  93. package/src/components/Footer/FooterSocialLink.tsx +32 -29
  94. package/src/components/Footer/README.md +82 -3
  95. package/src/components/Footer/index.ts +1 -1
  96. package/src/components/Form/Checkbox.stories.tsx +13 -5
  97. package/src/components/Form/Checkbox.tsx +3 -6
  98. package/src/components/Form/Form.stories.tsx +10 -3
  99. package/src/components/Form/Form.tsx +2 -0
  100. package/src/components/Form/FormGroup.tsx +2 -1
  101. package/src/components/Form/Input.stories.tsx +12 -11
  102. package/src/components/Form/Input.tsx +97 -95
  103. package/src/components/Form/Radio.stories.tsx +22 -7
  104. package/src/components/Form/Radio.tsx +3 -6
  105. package/src/components/Form/Select.stories.tsx +21 -6
  106. package/src/components/Form/Select.tsx +3 -5
  107. package/src/components/Form/Textarea.stories.tsx +13 -11
  108. package/src/components/Form/Textarea.tsx +88 -86
  109. package/src/components/Hero/Hero.stories.tsx +2 -3
  110. package/src/components/Hero/Hero.tsx +5 -6
  111. package/src/components/Icon/Icon.tsx +12 -1
  112. package/src/components/List/List.tsx +2 -1
  113. package/src/components/List/ListGroup.tsx +2 -1
  114. package/src/components/Messages/Messages.stories.tsx +113 -0
  115. package/src/components/Messages/Messages.tsx +52 -9
  116. package/src/components/Modal/Modal.stories.tsx +48 -32
  117. package/src/components/Modal/Modal.tsx +19 -24
  118. package/src/components/Navigation/Menu/MegaMenu.tsx +2 -2
  119. package/src/components/Navigation/Menu/Menu.tsx +2 -2
  120. package/src/components/Navigation/Nav/Nav.stories.tsx +469 -0
  121. package/src/components/Navigation/Nav/Nav.tsx +22 -4
  122. package/src/components/Navigation/Nav/NavDropdown.tsx +10 -1
  123. package/src/components/Navigation/Navbar/Navbar.stories.tsx +413 -0
  124. package/src/components/Navigation/Navbar/Navbar.tsx +70 -29
  125. package/src/components/Navigation/SideMenu/SideMenu.stories.tsx +340 -0
  126. package/src/components/Navigation/SideMenu/SideMenu.tsx +29 -2
  127. package/src/components/Pagination/Pagination.stories.tsx +13 -6
  128. package/src/components/Pagination/Pagination.tsx +7 -6
  129. package/src/components/PhotoViewer/PhotoViewer.tsx +2 -1
  130. package/src/components/Popover/Popover.stories.tsx +32 -24
  131. package/src/components/Popover/Popover.tsx +4 -1
  132. package/src/components/ProductReview/ProductReview.tsx +8 -2
  133. package/src/components/Progress/Progress.tsx +19 -3
  134. package/src/components/Rating/Rating.stories.tsx +11 -6
  135. package/src/components/Rating/Rating.tsx +3 -5
  136. package/src/components/River/River.tsx +5 -5
  137. package/src/components/SectionIntro/SectionIntro.tsx +8 -2
  138. package/src/components/Slider/Slider.stories.tsx +4 -4
  139. package/src/components/Slider/Slider.tsx +4 -3
  140. package/src/components/Spinner/Spinner.tsx +19 -3
  141. package/src/components/Steps/Steps.stories.tsx +5 -4
  142. package/src/components/Steps/Steps.tsx +8 -5
  143. package/src/components/Tab/Tab.stories.tsx +4 -3
  144. package/src/components/Tab/Tab.tsx +8 -6
  145. package/src/components/Testimonial/Testimonial.tsx +8 -2
  146. package/src/components/Todo/Todo.tsx +2 -1
  147. package/src/components/Toggle/Toggle.stories.tsx +5 -4
  148. package/src/components/Toggle/Toggle.tsx +8 -5
  149. package/src/components/Tooltip/Tooltip.stories.tsx +40 -30
  150. package/src/components/Tooltip/Tooltip.tsx +9 -2
  151. package/src/components/Upload/Upload.stories.tsx +252 -0
  152. package/src/components/Upload/Upload.tsx +92 -53
  153. package/src/components/VideoPlayer/VideoPlayer.tsx +3 -1
  154. package/src/components/index.ts +0 -4
  155. package/src/layouts/Grid/Grid.stories.tsx +10 -23
  156. package/src/layouts/Grid/Grid.tsx +20 -1
  157. package/src/layouts/Grid/GridCol.tsx +76 -48
  158. package/src/lib/composables/useAtomixGlass.ts +861 -44
  159. package/src/lib/composables/useBarChart.ts +21 -4
  160. package/src/lib/composables/useChart.ts +227 -370
  161. package/src/lib/composables/useChartExport.ts +19 -78
  162. package/src/lib/composables/useChartToolbar.ts +11 -21
  163. package/src/lib/composables/useEdgePanel.ts +125 -71
  164. package/src/lib/composables/useFooter.ts +3 -3
  165. package/src/lib/composables/useGlassContainer.ts +16 -7
  166. package/src/lib/composables/useLineChart.ts +11 -2
  167. package/src/lib/composables/usePieChart.ts +4 -14
  168. package/src/lib/composables/useRiver.ts +5 -0
  169. package/src/lib/composables/useSlider.ts +62 -24
  170. package/src/lib/composables/useVideoPlayer.ts +60 -63
  171. package/src/lib/constants/components.ts +147 -32
  172. package/src/lib/types/components.ts +355 -25
  173. package/src/lib/utils/displacement-generator.ts +55 -49
  174. package/src/lib/utils/icons.ts +1 -1
  175. package/src/lib/utils/index.ts +16 -10
  176. package/src/styles/01-settings/_settings.accordion.scss +19 -19
  177. package/src/styles/01-settings/_settings.animations.scss +5 -5
  178. package/src/styles/01-settings/_settings.avatar-group.scss +1 -1
  179. package/src/styles/01-settings/_settings.avatar.scss +17 -17
  180. package/src/styles/01-settings/_settings.background.scss +0 -3
  181. package/src/styles/01-settings/_settings.badge.scss +1 -1
  182. package/src/styles/01-settings/_settings.breadcrumb.scss +1 -1
  183. package/src/styles/01-settings/_settings.card.scss +1 -1
  184. package/src/styles/01-settings/_settings.chart.scss +65 -2
  185. package/src/styles/01-settings/_settings.dropdown.scss +1 -1
  186. package/src/styles/01-settings/_settings.edge-panel.scss +1 -1
  187. package/src/styles/01-settings/_settings.footer.scss +35 -42
  188. package/src/styles/01-settings/_settings.input.scss +1 -1
  189. package/src/styles/01-settings/_settings.list.scss +1 -1
  190. package/src/styles/01-settings/_settings.rating.scss +1 -1
  191. package/src/styles/01-settings/_settings.tabs.scss +1 -1
  192. package/src/styles/01-settings/_settings.upload.scss +6 -5
  193. package/src/styles/02-tools/_tools.animations.scss +4 -5
  194. package/src/styles/02-tools/_tools.background.scss +1 -13
  195. package/src/styles/02-tools/_tools.glass.scss +0 -1
  196. package/src/styles/02-tools/_tools.utility-api.scss +91 -48
  197. package/src/styles/03-generic/_generic.root.scss +1 -4
  198. package/src/styles/04-elements/_elements.body.scss +0 -1
  199. package/src/styles/06-components/_components.atomix-glass.scss +249 -0
  200. package/src/styles/06-components/_components.badge.scss +8 -23
  201. package/src/styles/06-components/_components.button.scss +8 -3
  202. package/src/styles/06-components/_components.callout.scss +10 -5
  203. package/src/styles/06-components/_components.card.scss +2 -14
  204. package/src/styles/06-components/_components.chart.scss +969 -1449
  205. package/src/styles/06-components/_components.dropdown.scss +19 -7
  206. package/src/styles/06-components/_components.edge-panel.scss +103 -0
  207. package/src/styles/06-components/_components.footer.scss +166 -85
  208. package/src/styles/06-components/_components.input.scss +8 -9
  209. package/src/styles/06-components/_components.list.scss +1 -0
  210. package/src/styles/06-components/_components.messages.scss +176 -0
  211. package/src/styles/06-components/_components.modal.scss +16 -4
  212. package/src/styles/06-components/_components.navbar.scss +12 -1
  213. package/src/styles/06-components/_components.side-menu.scss +5 -0
  214. package/src/styles/06-components/_components.skeleton.scss +8 -6
  215. package/src/styles/06-components/_components.upload.scss +219 -4
  216. package/src/styles/06-components/old.chart.styles.scss +1 -30
  217. package/src/styles/99-utilities/_index.scss +1 -0
  218. package/src/styles/99-utilities/_utilities.glass-fixes.scss +1 -0
  219. package/src/styles/99-utilities/_utilities.scss +1 -1
  220. package/src/components/AtomixGlass/AtomixGlass.stories.tsx +0 -3011
  221. package/src/components/AtomixGlass/AtomixGlassComprehensivePreview.stories.tsx +0 -1369
  222. package/src/components/Chart/AdvancedChart.tsx +0 -624
  223. package/src/components/Chart/LineChartNew.tsx +0 -167
  224. package/src/components/Chart/RealTimeChart.tsx +0 -436
  225. package/src/components/DatePicker/DatePicker copy.tsx +0 -551
@@ -2121,6 +2121,184 @@ a, a:hover {
2121
2121
  margin-left: calc(var(--atomix-avatar-size) * -1 * var(--atomix-avatar-group-stacked-overlap) / 100);
2122
2122
  z-index: 1;
2123
2123
  }
2124
+ .c-atomix-glass {
2125
+ position: relative;
2126
+ --atomix-glass-radius: var(--atomix-radius-md, 16px);
2127
+ --atomix-glass-transform: none;
2128
+ --atomix-glass-transition: opacity var(--atomix-transition-duration, 0.2s) ease-out;
2129
+ --atomix-glass-position: absolute;
2130
+ --atomix-glass-container-width: 100%;
2131
+ --atomix-glass-container-height: 100%;
2132
+ --atomix-glass-border-width: var(--atomix-spacing-0-5, 0.09375rem);
2133
+ }
2134
+ .c-atomix-glass__hover-1, .c-atomix-glass__hover-2, .c-atomix-glass__hover-3, .c-atomix-glass__base, .c-atomix-glass__overlay {
2135
+ position: absolute;
2136
+ inset: 0;
2137
+ pointer-events: none;
2138
+ border-radius: var(--atomix-glass-radius);
2139
+ transform: var(--atomix-glass-transform);
2140
+ transition: var(--atomix-glass-transition);
2141
+ }
2142
+ .c-atomix-glass__hover-1, .c-atomix-glass__hover-2, .c-atomix-glass__hover-3 {
2143
+ mix-blend-mode: overlay;
2144
+ opacity: var(--atomix-glass-hover-1-opacity, 0);
2145
+ background: var(--atomix-glass-hover-1-gradient, none);
2146
+ }
2147
+ .c-atomix-glass__hover-1 {
2148
+ transition: opacity 0.2s ease-out;
2149
+ opacity: var(--atomix-glass-hover-1-opacity, 0);
2150
+ background: var(--atomix-glass-hover-1-gradient, none);
2151
+ }
2152
+ .c-atomix-glass__hover-2 {
2153
+ transition: opacity 0.4s ease-out;
2154
+ opacity: var(--atomix-glass-hover-2-opacity, 0);
2155
+ background: var(--atomix-glass-hover-2-gradient, none);
2156
+ }
2157
+ .c-atomix-glass__hover-3 {
2158
+ transition: opacity 0.6s ease-out;
2159
+ opacity: var(--atomix-glass-hover-3-opacity, 0);
2160
+ background: var(--atomix-glass-hover-3-gradient, none);
2161
+ }
2162
+ .c-atomix-glass__base {
2163
+ mix-blend-mode: soft-light;
2164
+ opacity: var(--atomix-glass-base-opacity, 0);
2165
+ background: var(--atomix-glass-base-gradient, none);
2166
+ }
2167
+ .c-atomix-glass__overlay {
2168
+ mix-blend-mode: overlay;
2169
+ opacity: var(--atomix-glass-overlay-opacity, 0);
2170
+ background: var(--atomix-glass-overlay-gradient, none);
2171
+ }
2172
+ .c-atomix-glass__overlay-highlight {
2173
+ position: absolute;
2174
+ inset: var(--atomix-spacing-0-5, 0.125rem);
2175
+ pointer-events: none;
2176
+ border-radius: var(--atomix-glass-radius);
2177
+ transform: var(--atomix-glass-transform);
2178
+ transition: var(--atomix-glass-transition);
2179
+ mix-blend-mode: screen;
2180
+ }
2181
+ .c-atomix-glass__border-1, .c-atomix-glass__border-2 {
2182
+ padding: var(--atomix-glass-border-width);
2183
+ box-sizing: border-box;
2184
+ overflow: hidden;
2185
+ pointer-events: none;
2186
+ -webkit-mask: linear-gradient(var(--atomix-black, #000000) 0 0) content-box, linear-gradient(var(--atomix-black, #000000) 0 0);
2187
+ -webkit-mask-composite: xor;
2188
+ -webkit-mask: linear-gradient(var(--atomix-black, #000000) 0 0) content-box, linear-gradient(var(--atomix-black, #000000) 0 0);
2189
+ mask: linear-gradient(var(--atomix-black, #000000) 0 0) content-box, linear-gradient(var(--atomix-black, #000000) 0 0);
2190
+ -webkit-mask-composite: xor;
2191
+ mask-composite: exclude;
2192
+ position: var(--atomix-glass-position);
2193
+ top: var(--atomix-glass-top);
2194
+ left: var(--atomix-glass-left);
2195
+ width: var(--atomix-glass-width);
2196
+ height: var(--atomix-glass-height);
2197
+ border-radius: var(--atomix-glass-radius);
2198
+ transform: var(--atomix-glass-transform);
2199
+ transition: var(--atomix-glass-transition);
2200
+ }
2201
+ .c-atomix-glass__border-1 {
2202
+ opacity: var(--atomix-opacity-20, 0.2);
2203
+ mix-blend-mode: screen;
2204
+ z-index: var(--atomix-z-index-5, 5);
2205
+ background: var(--atomix-glass-border-gradient-1, none);
2206
+ box-shadow: var(--atomix-glass-border-shadow, 0 0 0 0.03125rem rgba(255, 255, 255, 0.5) inset, 0 0.25rem 0.75rem rgba(255, 255, 255, 0.25) inset, 0 0.25rem 1rem rgba(0, 0, 0, 0.35));
2207
+ }
2208
+ .c-atomix-glass__border-2 {
2209
+ mix-blend-mode: overlay;
2210
+ z-index: var(--atomix-z-index-6, 6);
2211
+ background: var(--atomix-glass-border-gradient-2, none);
2212
+ box-shadow: var(--atomix-glass-border-shadow, 0 0 0 0.03125rem rgba(255, 255, 255, 0.5) inset, 0 0.25rem 0.75rem rgba(255, 255, 255, 0.25) inset, 0 0.25rem 1rem rgba(0, 0, 0, 0.35));
2213
+ }
2214
+ .c-atomix-glass__container {
2215
+ width: var(--atomix-glass-container-width);
2216
+ height: var(--atomix-glass-container-height);
2217
+ position: relative;
2218
+ border-radius: var(--atomix-glass-radius);
2219
+ transition: border-radius 0.25s ease-out;
2220
+ }
2221
+ .c-atomix-glass__inner {
2222
+ width: var(--atomix-glass-container-width);
2223
+ height: var(--atomix-glass-container-height);
2224
+ position: relative;
2225
+ border-radius: var(--atomix-glass-radius);
2226
+ }
2227
+ .c-atomix-glass__filter {
2228
+ position: absolute;
2229
+ top: 0;
2230
+ left: 0;
2231
+ width: 100%;
2232
+ height: 100%;
2233
+ pointer-events: none;
2234
+ }
2235
+ .c-atomix-glass__filter-overlay {
2236
+ position: absolute;
2237
+ inset: 0;
2238
+ pointer-events: none;
2239
+ }
2240
+ .c-atomix-glass__filter-shadow {
2241
+ position: absolute;
2242
+ inset: var(--atomix-glass-border-width);
2243
+ pointer-events: none;
2244
+ }
2245
+ .c-atomix-glass__content {
2246
+ position: relative;
2247
+ width: var(--atomix-glass-container-width);
2248
+ height: var(--atomix-glass-container-height);
2249
+ }
2250
+ .c-atomix-glass__background-layer {
2251
+ position: absolute;
2252
+ pointer-events: none;
2253
+ border-radius: var(--atomix-glass-radius);
2254
+ transform: var(--atomix-glass-transform);
2255
+ transition: var(--atomix-glass-transition);
2256
+ will-change: transform;
2257
+ }
2258
+ .c-atomix-glass__background-layer--dark {
2259
+ background-color: var(--atomix-gray-9, #1f2937);
2260
+ }
2261
+ .c-atomix-glass__background-layer--black {
2262
+ background-color: var(--atomix-black, #000000);
2263
+ mix-blend-mode: overlay;
2264
+ }
2265
+ .c-atomix-glass__background-layer--dark.c-atomix-glass__background-layer--over-light {
2266
+ opacity: var(--atomix-opacity-50, 0.5);
2267
+ }
2268
+ .c-atomix-glass__background-layer--black.c-atomix-glass__background-layer--over-light {
2269
+ opacity: var(--atomix-opacity-25, 0.25);
2270
+ }
2271
+ .c-atomix-glass__background-layer--hidden {
2272
+ opacity: var(--atomix-opacity-0, 0);
2273
+ }
2274
+ .c-atomix-glass--reduced-motion {
2275
+ --atomix-glass-transition: none;
2276
+ }
2277
+ .c-atomix-glass--reduced-motion * {
2278
+ transition: none !important;
2279
+ }
2280
+ .c-atomix-glass--high-contrast {
2281
+ border: var(--atomix-spacing-0-5, 2px) solid currentColor;
2282
+ outline: var(--atomix-spacing-0-5, 2px) solid transparent;
2283
+ outline-offset: var(--atomix-spacing-0-5, 2px);
2284
+ }
2285
+ .c-atomix-glass--disabled-effects {
2286
+ --atomix-glass-transform: none;
2287
+ --atomix-glass-transition: none;
2288
+ }
2289
+ @media (prefers-reduced-motion: reduce) {
2290
+ .c-atomix-glass {
2291
+ --atomix-glass-transition: none;
2292
+ }
2293
+ .c-atomix-glass * {
2294
+ transition: none !important;
2295
+ }
2296
+ }
2297
+ @media (prefers-contrast: high) {
2298
+ .c-atomix-glass {
2299
+ border-width: var(--atomix-spacing-0-5, 0.125rem);
2300
+ }
2301
+ }
2124
2302
  .c-badge {
2125
2303
  --atomix-tag-font-size: 0.75rem;
2126
2304
  --atomix-tag-font-weight: 600;
@@ -2157,8 +2335,8 @@ a, a:hover {
2157
2335
  --atomix-tag-padding-y: 0.5rem;
2158
2336
  }
2159
2337
  .c-badge--glass {
2160
- background-color: color-mix(in srgb, var(--atomix-tag-bg-color) 80%, transparent);
2161
- border: 1px solid color-mix(in srgb, var(--atomix-tag-color) 20%, transparent);
2338
+ background-color: color-mix(in srgb, var(--atomix-tag-bg-color) 20%, transparent);
2339
+ border: 1px solid color-mix(in srgb, var(--atomix-tag-color) 90%, transparent);
2162
2340
  }
2163
2341
  .c-badge--primary {
2164
2342
  --atomix-tag-bg-color: var(--atomix-brand-bg-subtle);
@@ -2194,10 +2372,6 @@ a, a:hover {
2194
2372
  --atomix-tag-color: var(--atomix-light);
2195
2373
  border: 1px solid var(--atomix-dark);
2196
2374
  }
2197
- .c-badge-glass {
2198
- box-shadow: inset 1px 2px 3px rgba(255, 255, 255, 0.1), inset 0 -2px 2px rgba(0, 0, 0, 0.3);
2199
- border-radius: 999px;
2200
- }
2201
2375
  .c-breadcrumb {
2202
2376
  --atomix-breadcrumb-font-size: 0.875rem;
2203
2377
  --atomix-breadcrumb-link-padding-y: 0.25rem;
@@ -3141,19 +3315,8 @@ a, a:hover {
3141
3315
  padding-top: 0;
3142
3316
  }
3143
3317
  .c-card--glass {
3144
- background-color: transparent;
3145
- padding: 0;
3146
- border: none;
3147
- display: block;
3148
- border-radius: 0;
3149
- }
3150
- .c-card--glass .c-card__glass-content {
3151
- padding: var(--atomix-card-spacer-y) var(--atomix-card-spacer-x);
3152
- max-width: var(--atomix-card-width);
3153
- border-radius: var(--atomix-card-border-radius);
3154
- width: 100%;
3318
+ max-width: none;
3155
3319
  background-color: color-mix(in srgb, var(--atomix-card-bg) 50%, transparent);
3156
- background-blend-mode: overlay;
3157
3320
  }
3158
3321
  .is-elevated .c-card {
3159
3322
  box-shadow: var(--atomix-box-shadow-lg, 0 16px 48px rgba(0, 0, 0, 0.175));
@@ -3175,126 +3338,49 @@ a, a:hover {
3175
3338
  border: var(--atomix-chart-border-width) solid var(--atomix-chart-border-color);
3176
3339
  border-radius: var(--atomix-chart-border-radius);
3177
3340
  overflow: hidden;
3178
- box-shadow: 0 2px 4px rgba(0, 0, 0, 0.06);
3341
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24), 0 0 0 1px rgba(var(--atomix-primary-rgb), 0.05);
3179
3342
  position: relative;
3180
3343
  min-height: var(--atomix-chart-min-height);
3181
3344
  width: 100%;
3182
3345
  max-width: 100%;
3183
- background-color: var(--atomix-chart-bg);
3184
- transition-property: all;
3185
- transition-duration: 0.2s;
3186
- transition-timing-function: ease-in-out;
3187
- transition-delay: 0s;
3346
+ background: var(--atomix-chart-bg);
3347
+ backdrop-filter: blur(10px);
3348
+ -webkit-backdrop-filter: blur(10px);
3188
3349
  }
3189
- .c-chart::after {
3350
+ .c-chart::before {
3190
3351
  content: "";
3191
3352
  position: absolute;
3192
3353
  inset: 0;
3193
- background: linear-gradient(135deg, rgba(var(--atomix-primary-rgb), 0.1) 0%, transparent 50%, rgba(var(--atomix-secondary-rgb), 0.05) 100%);
3354
+ background: linear-gradient(135deg, rgba(var(--atomix-primary-rgb), 0.08) 0%, transparent 40%, transparent 60%, rgba(var(--atomix-secondary-rgb), 0.04) 100%), radial-gradient(circle at 20% 20%, rgba(var(--atomix-primary-rgb), 0.06) 0%, transparent 50%), radial-gradient(circle at 80% 80%, rgba(var(--atomix-secondary-rgb), 0.04) 0%, transparent 50%);
3194
3355
  pointer-events: none;
3195
3356
  z-index: 1;
3357
+ opacity: 1;
3358
+ transition: opacity 0.3s ease;
3196
3359
  }
3197
- .c-chart:hover {
3198
- box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
3199
- border-color: var(--atomix-primary-border-subtle);
3200
- }
3201
- .c-chart:focus-visible {
3202
- box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1), 0 0 0 calc(var(--atomix-border-width) * 3) var(--atomix-primary-border-subtle);
3203
- }
3204
- .c-chart--xs {
3205
- --atomix-chart-min-height: 7rem;
3206
- --atomix-chart-padding: 0.5rem;
3207
- font-size: 0.75rem;
3208
- }
3209
- .c-chart--sm {
3210
- --atomix-chart-min-height: 9rem;
3211
- --atomix-chart-padding: 0.75rem;
3212
- font-size: 0.875rem;
3213
- }
3214
- .c-chart--md {
3215
- --atomix-chart-min-height: ;
3216
- --atomix-chart-padding: 1rem;
3217
- font-size: 1rem;
3218
- }
3219
- .c-chart--lg {
3220
- --atomix-chart-min-height: ;
3221
- --atomix-chart-padding: 1.5rem;
3222
- font-size: 1.125rem;
3223
- }
3224
- .c-chart--xl {
3225
- --atomix-chart-min-height: ;
3226
- --atomix-chart-padding: 2rem;
3227
- font-size: 1.25rem;
3228
- }
3229
- .c-chart--2xl {
3230
- --atomix-chart-min-height: ;
3231
- --atomix-chart-padding: 2.5rem;
3232
- font-size: 1.25rem;
3233
- }
3234
- .c-chart--full {
3235
- height: 100vh;
3236
- min-height: auto;
3237
- border-radius: 0;
3238
- }
3239
- .c-chart--auto {
3240
- height: auto;
3241
- min-height: 8rem;
3242
- }
3243
- .c-chart--primary {
3244
- --atomix-chart-primary-color: var(--atomix-primary-6);
3245
- --atomix-chart-border-color: var(--atomix-primary-border-subtle);
3246
- }
3247
- .c-chart--primary:hover {
3248
- border-color: var(--atomix-primary-border-subtle);
3249
- }
3250
- .c-chart--secondary {
3251
- --atomix-chart-primary-color: var(--atomix-secondary-6);
3252
- --atomix-chart-border-color: var(--atomix-secondary-border-subtle);
3253
- }
3254
- .c-chart--secondary:hover {
3255
- border-color: var(--atomix-secondary-border-subtle);
3256
- }
3257
- .c-chart--success {
3258
- --atomix-chart-primary-color: var(--atomix-success-6);
3259
- --atomix-chart-border-color: var(--atomix-success-border-subtle);
3260
- }
3261
- .c-chart--success:hover {
3262
- border-color: var(--atomix-success-border-subtle);
3263
- }
3264
- .c-chart--info {
3265
- --atomix-chart-primary-color: var(--atomix-info-6);
3266
- --atomix-chart-border-color: var(--atomix-info-border-subtle);
3267
- }
3268
- .c-chart--info:hover {
3269
- border-color: var(--atomix-info-border-subtle);
3270
- }
3271
- .c-chart--warning {
3272
- --atomix-chart-primary-color: var(--atomix-warning-6);
3273
- --atomix-chart-border-color: var(--atomix-warning-border-subtle);
3274
- }
3275
- .c-chart--warning:hover {
3276
- border-color: var(--atomix-warning-border-subtle);
3277
- }
3278
- .c-chart--error {
3279
- --atomix-chart-primary-color: var(--atomix-error-6);
3280
- --atomix-chart-border-color: var(--atomix-error-border-subtle);
3281
- }
3282
- .c-chart--error:hover {
3283
- border-color: var(--atomix-error-border-subtle);
3284
- }
3285
- .c-chart--light {
3286
- --atomix-chart-primary-color: var(--atomix-light-6);
3287
- --atomix-chart-border-color: var(--atomix-light-border-subtle);
3288
- }
3289
- .c-chart--light:hover {
3290
- border-color: var(--atomix-light-border-subtle);
3360
+ .c-chart::after {
3361
+ content: "";
3362
+ position: absolute;
3363
+ inset: 0;
3364
+ border-radius: inherit;
3365
+ padding: 1px;
3366
+ background: linear-gradient(135deg, rgba(var(--atomix-primary-rgb), 0.1), rgba(var(--atomix-secondary-rgb), 0.05), transparent);
3367
+ -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
3368
+ -webkit-mask-composite: xor;
3369
+ -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
3370
+ mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
3371
+ -webkit-mask-composite: xor;
3372
+ mask-composite: exclude;
3373
+ pointer-events: none;
3374
+ z-index: 2;
3375
+ opacity: 0;
3376
+ transition: opacity 0.3s ease;
3291
3377
  }
3292
- .c-chart--dark {
3293
- --atomix-chart-primary-color: var(--atomix-dark-6);
3294
- --atomix-chart-border-color: var(--atomix-dark-border-subtle);
3378
+ .c-chart:hover {
3379
+ box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12), 0 4px 8px rgba(0, 0, 0, 0.16), 0 0 0 1px rgba(var(--atomix-primary-rgb), 0.1), 0 0 40px rgba(var(--atomix-primary-rgb), 0.08);
3380
+ border-color: rgba(var(--atomix-primary-rgb), 0.2);
3295
3381
  }
3296
- .c-chart--dark:hover {
3297
- border-color: var(--atomix-dark-border-subtle);
3382
+ .c-chart:hover::after {
3383
+ opacity: 1;
3298
3384
  }
3299
3385
  .c-chart--loading .c-chart__content {
3300
3386
  position: relative;
@@ -3314,38 +3400,6 @@ a, a:hover {
3314
3400
  opacity: 0.3;
3315
3401
  filter: blur(1px);
3316
3402
  }
3317
- .c-chart--interactive {
3318
- cursor: pointer;
3319
- -webkit-user-select: none;
3320
- -moz-user-select: none;
3321
- user-select: none;
3322
- }
3323
- .c-chart--interactive:hover {
3324
- transform: translateY(-2px);
3325
- box-shadow: 0 16px 48px rgba(0, 0, 0, 0.15);
3326
- }
3327
- .c-chart--interactive:active {
3328
- transform: translateY(0);
3329
- box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
3330
- transition-duration: 0.1s;
3331
- }
3332
- .c-chart--interactive:focus-visible {
3333
- transform: translateY(-1px);
3334
- }
3335
- .c-chart--disabled {
3336
- pointer-events: none;
3337
- opacity: 0.6;
3338
- }
3339
- .c-chart--disabled .c-chart__content {
3340
- filter: grayscale(80%) opacity(0.6);
3341
- }
3342
- .c-chart--disabled .c-chart__canvas {
3343
- pointer-events: none;
3344
- }
3345
- .c-chart--disabled:hover {
3346
- transform: none;
3347
- box-shadow: 0 2px 4px rgba(0, 0, 0, 0.06);
3348
- }
3349
3403
  .c-chart--fullscreen {
3350
3404
  position: fixed;
3351
3405
  top: 0;
@@ -3355,29 +3409,58 @@ a, a:hover {
3355
3409
  z-index: 9999;
3356
3410
  border-radius: 0;
3357
3411
  box-shadow: none;
3358
- background: var(--atomix-primary-bg-default);
3412
+ background: var(--atomix-body-bg);
3359
3413
  }
3360
3414
  .c-chart--elevated {
3361
- box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
3362
- transform: translateY(-2px);
3415
+ box-shadow: 0 12px 32px rgba(0, 0, 0, 0.15), 0 6px 12px rgba(0, 0, 0, 0.2), 0 0 0 1px rgba(var(--atomix-primary-rgb), 0.1), 0 0 60px rgba(var(--atomix-primary-rgb), 0.12);
3363
3416
  }
3364
3417
  .c-chart--elevated:hover {
3365
- box-shadow: 0 16px 48px rgba(0, 0, 0, 0.15);
3366
- transform: translateY(-4px);
3418
+ box-shadow: 0 16px 40px rgba(0, 0, 0, 0.18), 0 8px 16px rgba(0, 0, 0, 0.24), 0 0 0 1px rgba(var(--atomix-primary-rgb), 0.15), 0 0 80px rgba(var(--atomix-primary-rgb), 0.16);
3367
3419
  }
3368
- .c-chart--flat {
3420
+ .c-chart--glass {
3421
+ background: transparent;
3422
+ border: none;
3369
3423
  box-shadow: none;
3370
- border: 2px solid var(--atomix-primary-border-subtle);
3371
3424
  }
3372
- .c-chart--flat:hover {
3373
- box-shadow: 0 2px 4px rgba(0, 0, 0, 0.06);
3425
+ .c-chart--glass .c-chart__content {
3426
+ position: relative;
3427
+ }
3428
+ .c-chart--glass .c-chart__canvas {
3429
+ position: relative;
3430
+ }
3431
+ .c-chart--glass .c-chart__toolbar {
3432
+ position: relative;
3433
+ }
3434
+ .c-chart--disabled {
3435
+ opacity: 0.6;
3436
+ cursor: not-allowed;
3437
+ pointer-events: none;
3438
+ pointer-events: none;
3439
+ opacity: 0.6;
3440
+ }
3441
+ .c-chart--disabled:hover, .c-chart--disabled:focus, .c-chart--disabled:active {
3442
+ background-color: inherit;
3443
+ color: inherit;
3374
3444
  transform: none;
3375
3445
  }
3376
- .c-chart--rounded {
3377
- border-radius: 1rem;
3446
+ .c-chart--selected {
3447
+ border-color: rgba(var(--atomix-primary-rgb), 0.3);
3448
+ box-shadow: 0 4px 16px rgba(0, 0, 0, 0.1), 0 2px 4px rgba(0, 0, 0, 0.12), 0 0 0 2px rgba(var(--atomix-primary-rgb), 0.2), 0 0 30px rgba(var(--atomix-primary-rgb), 0.15);
3449
+ background: linear-gradient(135deg, rgba(var(--atomix-primary-rgb), 0.08) 0%, rgba(var(--atomix-primary-rgb), 0.04) 100%), var(--atomix-chart-bg);
3378
3450
  }
3379
- .c-chart--square {
3380
- border-radius: 0;
3451
+ .c-chart--active {
3452
+ border-color: var(--atomix-primary-border-subtle);
3453
+ box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
3454
+ }
3455
+ .c-chart--clickable {
3456
+ cursor: pointer;
3457
+ }
3458
+ .c-chart--clickable:hover {
3459
+ box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12), 0 4px 8px rgba(0, 0, 0, 0.16), 0 0 0 1px rgba(var(--atomix-primary-rgb), 0.1), 0 0 40px rgba(var(--atomix-primary-rgb), 0.08);
3460
+ border-color: rgba(var(--atomix-primary-rgb), 0.25);
3461
+ }
3462
+ .c-chart--clickable:active {
3463
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1), 0 1px 2px rgba(0, 0, 0, 0.12);
3381
3464
  }
3382
3465
  .c-chart__header {
3383
3466
  padding: var(--atomix-chart-padding);
@@ -3455,7 +3538,6 @@ a, a:hover {
3455
3538
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
3456
3539
  position: relative;
3457
3540
  overflow: hidden;
3458
- font-size: 0.875rem;
3459
3541
  }
3460
3542
  .c-chart__action::before {
3461
3543
  content: "";
@@ -3487,8 +3569,11 @@ a, a:hover {
3487
3569
  transform: scale(1.1);
3488
3570
  }
3489
3571
  .c-chart__action:focus-visible {
3490
- outline: 2px solid var(--atomix-primary-6);
3572
+ outline: 2px solid var(--atomix-focus-border-color);
3491
3573
  outline-offset: 2px;
3574
+ box-shadow: 0 0 0 2px var(--atomix-focus-border-color);
3575
+ }
3576
+ .c-chart__action:focus-visible {
3492
3577
  border-color: var(--atomix-primary-border-subtle);
3493
3578
  }
3494
3579
  .c-chart__action:active {
@@ -3514,45 +3599,6 @@ a, a:hover {
3514
3599
  background-color: transparent;
3515
3600
  border-color: transparent;
3516
3601
  }
3517
- .c-chart__action--primary {
3518
- background-color: var(--atomix-primary-6);
3519
- color: white;
3520
- border-color: var(--atomix-primary-6);
3521
- }
3522
- .c-chart__action--primary:hover {
3523
- background-color: var(--atomix-primary-7);
3524
- border-color: var(--atomix-primary-7);
3525
- }
3526
- .c-chart__action--primary:active {
3527
- background-color: var(--atomix-primary-8);
3528
- }
3529
- .c-chart__action--success {
3530
- background-color: var(--atomix-success-6);
3531
- color: white;
3532
- border-color: var(--atomix-success-6);
3533
- }
3534
- .c-chart__action--success:hover {
3535
- background-color: var(--atomix-success-7);
3536
- border-color: var(--atomix-success-7);
3537
- }
3538
- .c-chart__action--warning {
3539
- background-color: var(--atomix-warning-6);
3540
- color: white;
3541
- border-color: var(--atomix-warning-6);
3542
- }
3543
- .c-chart__action--warning:hover {
3544
- background-color: var(--atomix-warning-7);
3545
- border-color: var(--atomix-warning-7);
3546
- }
3547
- .c-chart__action--danger {
3548
- background-color: var(--atomix-error-6);
3549
- color: white;
3550
- border-color: var(--atomix-error-6);
3551
- }
3552
- .c-chart__action--danger:hover {
3553
- background-color: var(--atomix-error-7);
3554
- border-color: var(--atomix-error-7);
3555
- }
3556
3602
  .c-chart__export-group {
3557
3603
  position: relative;
3558
3604
  display: flex;
@@ -3574,7 +3620,7 @@ a, a:hover {
3574
3620
  border-radius: 0.5rem;
3575
3621
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
3576
3622
  padding: 0.25rem;
3577
- min-width: 7.5rem;
3623
+ min-width: 7rem;
3578
3624
  z-index: 1000;
3579
3625
  opacity: 0;
3580
3626
  visibility: hidden;
@@ -3604,8 +3650,8 @@ a, a:hover {
3604
3650
  color: var(--atomix-primary-text-emphasis);
3605
3651
  }
3606
3652
  .c-chart__export-option:focus-visible {
3607
- outline: 2px solid var(--atomix-primary-6);
3608
- outline-offset: -2px;
3653
+ outline: calc(var(--atomix-border-width) * 2) solid var(--atomix-primary-6);
3654
+ outline-offset: calc(var(--atomix-border-width) * -2);
3609
3655
  }
3610
3656
  .c-chart__export-option:disabled {
3611
3657
  opacity: 0.4;
@@ -3615,201 +3661,178 @@ a, a:hover {
3615
3661
  .c-chart__export-option:not(:last-child) {
3616
3662
  margin-bottom: 0.25rem;
3617
3663
  }
3618
- .c-chart__content {
3619
- flex: 1 1;
3620
- position: relative;
3621
- padding: var(--atomix-chart-padding);
3622
- display: flex;
3623
- align-items: center;
3624
- justify-content: center;
3625
- min-height: 8rem;
3626
- }
3627
- .c-chart__content::before {
3628
- content: "";
3664
+ .c-chart__settings-menu {
3629
3665
  position: absolute;
3630
- top: 0;
3631
- left: 0;
3666
+ top: 100%;
3632
3667
  right: 0;
3633
- bottom: 0;
3634
- background-image: radial-gradient(circle at 1px 1px, var(--atomix-primary-border-subtle) 1px, transparent 0);
3635
- background-size: 1.25rem 1.25rem;
3636
- opacity: 0.03;
3637
- pointer-events: none;
3638
- z-index: 0;
3668
+ margin-top: 0.25rem;
3669
+ background: var(--atomix-primary-bg-default);
3670
+ border: 1px solid var(--atomix-primary-border-subtle);
3671
+ border-radius: 0.5rem;
3672
+ box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
3673
+ padding: 0.5rem;
3674
+ min-width: 8.75rem;
3675
+ z-index: 1000;
3676
+ opacity: 0;
3677
+ visibility: hidden;
3678
+ transform: translateY(-8px);
3679
+ transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
3680
+ -webkit-backdrop-filter: blur(8px);
3681
+ backdrop-filter: blur(8px);
3639
3682
  }
3640
- .c-chart__content::after {
3641
- content: "";
3642
- position: absolute;
3643
- inset: 0;
3644
- background: linear-gradient(135deg, rgba(255, 255, 255, 0.02) 0%, transparent 50%, rgba(0, 0, 0, 0.02) 100%);
3645
- pointer-events: none;
3646
- z-index: 1;
3683
+ .c-chart__settings-menu-title {
3684
+ font-size: 0.875rem;
3685
+ font-weight: 600;
3686
+ color: var(--atomix-text-primary);
3687
+ margin-bottom: 0.5rem;
3688
+ padding-bottom: 0.5rem;
3689
+ border-bottom: 1px solid var(--atomix-border-color);
3647
3690
  }
3648
- .c-chart__canvas {
3649
- width: 100%;
3650
- height: 100%;
3651
- position: relative;
3652
- overflow: hidden;
3653
- border-radius: 0.25rem;
3654
- z-index: 2;
3691
+ .c-chart__settings-menu-content {
3692
+ display: flex;
3693
+ flex-direction: column;
3694
+ gap: 0.25rem;
3655
3695
  }
3656
- .c-chart__canvas svg {
3657
- width: 100%;
3658
- height: 100%;
3659
- shape-rendering: geometricPrecision;
3660
- text-rendering: optimizeLegibility;
3661
- image-rendering: -webkit-optimize-contrast;
3662
- image-rendering: crisp-edges;
3663
- }
3664
- .c-chart__canvas canvas {
3665
- width: 100%;
3666
- height: 100%;
3667
- image-rendering: -webkit-optimize-contrast;
3668
- image-rendering: crisp-edges;
3669
- }
3670
- .c-chart__crosshair {
3671
- pointer-events: none;
3696
+ .c-chart__settings-menu-item {
3697
+ display: flex;
3698
+ align-items: center;
3699
+ justify-content: space-between;
3700
+ padding: 0.375rem 0;
3701
+ gap: 0.75rem;
3672
3702
  }
3673
- .c-chart__crosshair line, .c-chart__crosshair-line {
3674
- stroke: var(--atomix-primary-border-subtle);
3675
- stroke-width: 1;
3676
- stroke-dasharray: 4, 4;
3703
+ .c-chart__settings-menu-item--info {
3677
3704
  opacity: 0.7;
3705
+ font-size: 0.75rem;
3678
3706
  }
3679
- .c-chart__crosshair line--vertical, .c-chart__crosshair line--horizontal, .c-chart__crosshair-line--vertical, .c-chart__crosshair-line--horizontal {
3680
- opacity: 0.7;
3707
+ .c-chart__settings-menu-toggle {
3708
+ display: flex;
3709
+ align-items: center;
3710
+ gap: 0.5rem;
3711
+ cursor: pointer;
3712
+ width: 100%;
3713
+ -webkit-user-select: none;
3714
+ -moz-user-select: none;
3715
+ user-select: none;
3681
3716
  }
3682
- .c-chart__zoom-indicator {
3683
- position: absolute;
3684
- top: 10px;
3685
- right: 10px;
3686
- background: rgba(0, 0, 0, 0.8);
3687
- color: white;
3688
- padding: 4px 8px;
3689
- border-radius: 0.25rem;
3717
+ .c-chart__settings-menu-toggle input[type=checkbox] {
3718
+ width: 1rem;
3719
+ height: 1rem;
3720
+ cursor: pointer;
3721
+ accent-color: var(--atomix-primary);
3722
+ flex-shrink: 0;
3723
+ }
3724
+ .c-chart__settings-menu-label {
3690
3725
  font-size: 0.75rem;
3691
3726
  font-weight: 500;
3692
- pointer-events: none;
3693
- z-index: 10;
3694
- }
3695
- .c-chart__navigator {
3696
- opacity: 0.8;
3697
- }
3698
- .c-chart__navigator rect {
3699
- fill: rgba(0, 0, 0, 0.05);
3700
- stroke: var(--atomix-gray-3);
3701
- stroke-width: 1;
3727
+ color: var(--atomix-text-primary);
3728
+ flex: 1 1;
3702
3729
  }
3703
- .c-chart__navigator path {
3704
- stroke-width: 1;
3705
- fill: none;
3706
- opacity: 0.6;
3730
+ .c-chart__settings-menu-value {
3731
+ font-size: 0.75rem;
3732
+ font-weight: 600;
3733
+ color: var(--atomix-secondary-text-emphasis);
3734
+ text-transform: capitalize;
3707
3735
  }
3708
- .c-chart__real-time-indicator {
3709
- position: absolute;
3710
- top: 10px;
3711
- left: 10px;
3736
+ .c-chart__toolbar-group {
3712
3737
  display: flex;
3713
3738
  align-items: center;
3714
- gap: 6px;
3715
- background: var(--atomix-success-bg-subtle);
3716
- color: var(--atomix-success-text-emphasis);
3717
- padding: 4px 8px;
3718
- border-radius: 0.25rem;
3739
+ gap: 0.5rem;
3740
+ position: relative;
3741
+ }
3742
+ .c-chart__toolbar-group:hover .c-chart__export-dropdown,
3743
+ .c-chart__toolbar-group:hover .c-chart__settings-menu {
3744
+ opacity: 1;
3745
+ visibility: visible;
3746
+ transform: translateY(0);
3747
+ }
3748
+ .c-chart__toolbar-separator {
3749
+ width: 1px;
3750
+ height: 1.5rem;
3751
+ background: var(--atomix-border-color);
3752
+ margin: 0 0.5rem;
3753
+ }
3754
+ .c-chart__toolbar-label {
3719
3755
  font-size: 0.75rem;
3720
3756
  font-weight: 500;
3721
- border: 1px solid var(--atomix-success-border-subtle);
3722
- }
3723
- .c-chart__real-time-indicator::before {
3724
- content: "";
3725
- width: 6px;
3726
- height: 6px;
3727
- background: var(--atomix-success-6);
3728
- border-radius: 50%;
3729
- animation: chart-pulse-dot 2s ease-in-out infinite;
3757
+ color: var(--atomix-secondary-text-emphasis);
3758
+ text-transform: uppercase;
3759
+ letter-spacing: 0.5px;
3760
+ margin-right: 0.5rem;
3730
3761
  }
3731
- .c-chart__legend {
3732
- display: flex;
3733
- flex-wrap: wrap;
3734
- gap: 0.75rem;
3762
+ .c-chart__content {
3763
+ flex: 1 1;
3764
+ position: relative;
3735
3765
  padding: var(--atomix-chart-padding);
3736
- border-top: var(--atomix-chart-border-width) solid var(--atomix-brand-border-subtle);
3737
- z-index: 2;
3738
- }
3739
- .c-chart__legend-item {
3740
3766
  display: flex;
3741
3767
  align-items: center;
3742
- gap: 0.5rem;
3743
- cursor: pointer;
3744
- padding: 0.5rem 0.75rem;
3745
- border-radius: 0.5rem;
3746
- border: var(--atomix-chart-border-width) solid transparent;
3747
- background-color: transparent;
3748
- transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
3749
- -webkit-user-select: none;
3750
- -moz-user-select: none;
3751
- user-select: none;
3752
- position: relative;
3768
+ justify-content: center;
3769
+ min-height: 8rem;
3770
+ z-index: 3;
3771
+ contain: layout;
3753
3772
  overflow: hidden;
3754
3773
  }
3755
- .c-chart__legend-item::before {
3774
+ .c-chart__content::before {
3756
3775
  content: "";
3757
3776
  position: absolute;
3758
- inset: 0;
3759
- background: var(--atomix-secondary-bg-subtle);
3760
- opacity: 0;
3761
- transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1);
3762
- }
3763
- .c-chart__legend-item:hover {
3764
- background-color: var(--atomix-secondary-bg-subtle);
3765
- border-color: var(--atomix-primary-border-subtle);
3766
- transform: translateY(-1px);
3767
- box-shadow: 0 2px 4px rgba(0, 0, 0, 0.06);
3768
- }
3769
- .c-chart__legend-item:hover::before {
3770
- opacity: 1;
3771
- }
3772
- .c-chart__legend-item:focus-visible:focus-visible {
3773
- outline: 2px solid var(--atomix-focus-border-color);
3774
- outline-offset: 2px;
3775
- box-shadow: 0 0 0 2px var(--atomix-focus-border-color);
3776
- }
3777
- .c-chart__legend-item:active {
3778
- transform: translateY(0);
3779
- }
3780
- .c-chart__legend-item[data-visible=false] {
3777
+ top: 0;
3778
+ left: 0;
3779
+ right: 0;
3780
+ bottom: 0;
3781
+ background-image: radial-gradient(circle at 1px 1px, rgba(var(--atomix-primary-rgb), 0.08) 1px, transparent 0);
3782
+ background-size: 16px 16px;
3781
3783
  opacity: 0.4;
3782
- filter: grayscale(60%);
3783
- }
3784
- .c-chart__legend-item[data-visible=false] .c-chart__legend-label {
3785
- text-decoration: line-through;
3784
+ pointer-events: none;
3785
+ z-index: 0;
3786
3786
  }
3787
- .c-chart__legend-item[data-visible=false] .c-chart__legend-color {
3788
- opacity: 0.3;
3789
- filter: grayscale(100%);
3787
+ .c-chart__content::after {
3788
+ content: "";
3789
+ position: absolute;
3790
+ inset: 0;
3791
+ background: linear-gradient(180deg, rgba(var(--atomix-primary-rgb), 0.03) 0%, transparent 30%, transparent 70%, rgba(var(--atomix-secondary-rgb), 0.02) 100%);
3792
+ pointer-events: none;
3793
+ z-index: 1;
3790
3794
  }
3791
- .c-chart__legend-color {
3792
- width: 0.75rem;
3793
- height: 0.75rem;
3794
- border-radius: 0.25rem;
3795
- border: var(--atomix-chart-border-width) solid var(--atomix-primary-border-subtle);
3796
- flex-shrink: 0;
3797
- box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
3798
- transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
3795
+ .c-chart__canvas {
3796
+ width: 100%;
3797
+ height: 100%;
3799
3798
  position: relative;
3799
+ overflow: hidden;
3800
+ border-radius: 0.25rem;
3801
+ z-index: 2;
3802
+ background: transparent;
3803
+ min-height: 200px;
3804
+ contain: layout style paint;
3800
3805
  }
3801
- .c-chart__legend-label {
3802
- color: var(--atomix-primary-text-emphasis);
3803
- font-weight: 500;
3804
- letter-spacing: -0.01em;
3805
- transition: color 0.3s cubic-bezier(0.4, 0, 0.2, 1);
3806
- position: relative;
3807
- z-index: 1;
3806
+ .c-chart__canvas svg {
3807
+ display: block;
3808
+ shape-rendering: geometricPrecision;
3809
+ text-rendering: optimizeLegibility;
3810
+ image-rendering: -webkit-optimize-contrast;
3811
+ image-rendering: crisp-edges;
3812
+ will-change: contents;
3813
+ -webkit-backface-visibility: hidden;
3814
+ backface-visibility: hidden;
3815
+ transform: translateZ(0);
3816
+ opacity: 0;
3817
+ animation: chart-fade-in 0.3s ease-out forwards;
3818
+ }
3819
+ @keyframes chart-fade-in {
3820
+ from {
3821
+ opacity: 0;
3822
+ }
3823
+ to {
3824
+ opacity: 1;
3825
+ }
3826
+ }
3827
+ .c-chart__canvas canvas {
3828
+ width: 100%;
3829
+ height: 100%;
3830
+ display: block;
3831
+ image-rendering: -webkit-optimize-contrast;
3832
+ image-rendering: crisp-edges;
3808
3833
  }
3809
3834
  .c-chart__tooltip {
3810
3835
  position: fixed;
3811
- top: 0;
3812
- left: 0;
3813
3836
  -webkit-backdrop-filter: blur(1rem);
3814
3837
  backdrop-filter: blur(1rem);
3815
3838
  border-radius: 0.75rem;
@@ -3840,8 +3863,8 @@ a, a:hover {
3840
3863
  gap: 0.5rem;
3841
3864
  }
3842
3865
  .c-chart__tooltip-color-indicator {
3843
- width: 12px;
3844
- height: 12px;
3866
+ width: 0.75rem;
3867
+ height: 0.75rem;
3845
3868
  border-radius: 50%;
3846
3869
  flex-shrink: 0;
3847
3870
  }
@@ -3875,64 +3898,10 @@ a, a:hover {
3875
3898
  color: var(--atomix-primary-text-emphasis);
3876
3899
  font-weight: 500;
3877
3900
  }
3878
- .c-chart__axis {
3879
- position: relative;
3880
- z-index: 55;
3881
- }
3882
- .c-chart__axis--x {
3883
- text-anchor: middle;
3884
- dominant-baseline: hanging;
3885
- }
3886
- .c-chart__axis--y {
3887
- text-anchor: end;
3888
- dominant-baseline: middle;
3889
- }
3890
- .c-chart__axis-line {
3891
- stroke: var(--atomix-primary-border-subtle);
3892
- stroke-width: 1;
3893
- opacity: 0.6;
3894
- transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1);
3895
- }
3896
- .c-chart__axis-line--x, .c-chart__axis-line--y {
3897
- stroke-width: 2;
3898
- }
3899
- .c-chart__axis-line:hover {
3900
- opacity: 0.8;
3901
- }
3902
- .c-chart__tick-line {
3903
- stroke: var(--atomix-primary-border-subtle);
3904
- stroke-width: 1;
3905
- }
3906
- .c-chart__tick-label {
3907
- font-size: 0.75rem;
3908
- fill: var(--atomix-secondary-text-emphasis);
3909
- }
3910
- .c-chart__axis-label {
3911
- font-size: 0.75rem;
3912
- font-weight: 500;
3913
- fill: var(--atomix-tertiary-text-emphasis);
3914
- text-anchor: middle;
3915
- }
3916
- .c-chart__plot-area {
3917
- fill: rgba(248, 250, 252, 0.5);
3918
- stroke: var(--atomix-primary-border-subtle);
3919
- stroke-width: 1;
3920
- }
3921
- .c-chart__value-label {
3922
- font-size: 0.75rem;
3923
- fill: var(--atomix-primary-text-emphasis);
3924
- pointer-events: none;
3925
- }
3926
- .c-chart__data-label {
3927
- font-size: 0.75rem;
3928
- fill: var(--atomix-secondary-text-emphasis);
3929
- pointer-events: none;
3930
- }
3931
3901
  .c-chart__grid {
3932
3902
  stroke: var(--atomix-primary-border-subtle);
3933
3903
  stroke-width: 0.5;
3934
3904
  stroke-dasharray: 2, 4;
3935
- transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1);
3936
3905
  }
3937
3906
  .c-chart__grid--major {
3938
3907
  stroke-width: 1;
@@ -3947,40 +3916,54 @@ a, a:hover {
3947
3916
  stroke-dasharray: none;
3948
3917
  opacity: 0.6;
3949
3918
  }
3950
- .c-chart__grid:hover {
3919
+ .c-chart__axis-line {
3920
+ stroke: var(--atomix-border-color);
3921
+ stroke-width: 1;
3951
3922
  opacity: 0.6;
3952
3923
  }
3924
+ .c-chart__axis-label {
3925
+ font-size: 0.75rem;
3926
+ font-weight: 500;
3927
+ fill: var(--atomix-tertiary-text-emphasis);
3928
+ }
3929
+ .c-chart__legend-item-color {
3930
+ width: 0.75rem;
3931
+ height: 0.75rem;
3932
+ flex-shrink: 0;
3933
+ }
3934
+ .c-chart__legend-item-text {
3935
+ font-size: 0.75rem;
3936
+ fill: var(--atomix-text-primary);
3937
+ }
3938
+ .c-chart__data-line {
3939
+ stroke-width: 2.5;
3940
+ fill: none;
3941
+ }
3942
+ .c-chart__data-line--hovered {
3943
+ stroke-width: 3.5;
3944
+ }
3953
3945
  .c-chart__data-point {
3954
3946
  cursor: pointer;
3955
- transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
3956
- transform-origin: center center;
3947
+ transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
3957
3948
  }
3958
3949
  .c-chart__data-point:hover {
3959
3950
  opacity: 0.8;
3960
- filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.2));
3961
3951
  }
3962
3952
  .c-chart__data-point:focus-visible {
3963
- outline: 2px solid var(--atomix-primary-border-subtle);
3953
+ outline: 2px solid var(--atomix-focus-border-color);
3964
3954
  outline-offset: 2px;
3955
+ box-shadow: 0 0 0 2px var(--atomix-focus-border-color);
3965
3956
  }
3966
- .c-chart__data-point:active {
3967
- transform: scale(1.05);
3968
- }
3969
- .c-chart__data-point[data-highlighted=true] {
3970
- transform: scale(1.2);
3971
- filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.3));
3972
- z-index: 10;
3973
- animation: chart-glow 2s ease-in-out infinite;
3957
+ .c-chart__data-point--hovered {
3958
+ opacity: 0.9;
3959
+ transform: scale(1.1);
3974
3960
  }
3975
- .c-chart__data-point[data-selected=true] {
3976
- stroke: var(--atomix-primary-border-subtle);
3961
+ .c-chart__data-point--selected {
3962
+ opacity: 1;
3977
3963
  stroke-width: 2;
3978
- filter: drop-shadow(0 0 0 2px var(--atomix-primary-border-subtle));
3979
- }
3980
- .c-chart__data-point[data-animated=true] {
3981
- animation: chart-scale-in 0.5s ease-out;
3964
+ filter: drop-shadow(0 0 4px currentColor);
3982
3965
  }
3983
- .c-chart__loading {
3966
+ .c-chart__empty {
3984
3967
  display: flex;
3985
3968
  flex-direction: column;
3986
3969
  align-items: center;
@@ -3988,970 +3971,707 @@ a, a:hover {
3988
3971
  gap: 1rem;
3989
3972
  color: var(--atomix-secondary-text-emphasis);
3990
3973
  font-size: 0.875rem;
3974
+ text-align: center;
3975
+ padding: 2rem;
3991
3976
  min-height: 8rem;
3977
+ opacity: 0.6;
3992
3978
  animation: chart-fade-in 0.6s ease-out;
3993
3979
  }
3994
- .c-chart__loading-spinner {
3995
- width: 2rem;
3996
- height: 2rem;
3997
- border: 3px solid var(--atomix-primary-border-subtle);
3998
- border-top: 3px solid var(--atomix-primary-text-emphasis);
3999
- border-radius: 50%;
4000
- animation: chart-spin 1.2s cubic-bezier(0.4, 0, 0.2, 1) infinite;
3980
+ .c-chart__toolbar--sm {
3981
+ gap: 0.25rem;
4001
3982
  }
4002
- .c-chart__loading-text {
4003
- font-weight: 500;
4004
- opacity: 0.8;
4005
- animation: chart-pulse 2s ease-in-out infinite;
3983
+ .c-chart__toolbar--lg {
3984
+ padding: 0.5rem;
3985
+ gap: 0.75rem;
4006
3986
  }
4007
- .c-chart__error {
4008
- display: flex;
4009
- flex-direction: column;
4010
- align-items: center;
4011
- justify-content: center;
4012
- gap: 0.75rem;
4013
- color: var(--atomix-error-text-emphasis);
4014
- font-size: 0.875rem;
4015
- text-align: center;
4016
- padding: 2rem;
4017
- min-height: 8rem;
4018
- background-color: var(--atomix-error-bg-subtle);
4019
- border-radius: 0.5rem;
4020
- border: var(--atomix-chart-border-width) solid var(--atomix-error-border-subtle);
4021
- animation: chart-fade-in 0.6s ease-out;
3987
+ .c-chart__legend-item--active {
3988
+ opacity: 1;
3989
+ font-weight: 600;
4022
3990
  }
4023
- .c-chart__empty {
4024
- display: flex;
4025
- flex-direction: column;
4026
- align-items: center;
4027
- justify-content: center;
4028
- gap: 1rem;
4029
- color: var(--atomix-secondary-text-emphasis);
4030
- font-size: 0.875rem;
4031
- text-align: center;
4032
- padding: 2rem;
4033
- min-height: 8rem;
4034
- opacity: 0.6;
4035
- animation: chart-fade-in 0.6s ease-out;
3991
+ .c-chart__legend-item--inactive {
3992
+ opacity: 0.5;
4036
3993
  }
4037
- .c-chart--line .c-chart__canvas .line-path,
4038
- .c-chart--line .c-chart__canvas .c-chart__line-path {
4039
- fill: none;
4040
- stroke-width: 2.5;
4041
- stroke-linecap: round;
4042
- stroke-linejoin: round;
3994
+ .c-chart__treemap-node {
3995
+ stroke: var(--atomix-border-color);
3996
+ stroke-width: 1;
4043
3997
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
4044
- filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.1));
4045
- stroke-dasharray: 1000;
4046
- stroke-dashoffset: 1000;
4047
- animation: chart-draw-line 2s ease-out forwards;
4048
- }
4049
- .c-chart--line .c-chart__canvas .line-path:hover,
4050
- .c-chart--line .c-chart__canvas .c-chart__line-path:hover {
4051
- stroke-width: 3.5;
4052
- filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.2));
3998
+ cursor: pointer;
3999
+ shape-rendering: geometricPrecision;
4053
4000
  }
4054
- .c-chart--line .c-chart__canvas .trend-line {
4055
- stroke-dasharray: 5, 5;
4056
- opacity: 0.7;
4057
- animation: chart-dash-flow 2s linear infinite;
4001
+ .c-chart__treemap-node:hover {
4002
+ transform: scale(1.02);
4003
+ filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.1));
4004
+ stroke-width: 1.5;
4058
4005
  }
4059
- .c-chart--line .c-chart__canvas .moving-average {
4060
- stroke-dasharray: 4, 4;
4061
- opacity: 0.6;
4062
- stroke-width: 1;
4063
- fill: none;
4006
+ .c-chart__treemap-node--hovered {
4007
+ transform: scale(1.02);
4008
+ filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.1));
4009
+ stroke-width: 1.5;
4064
4010
  }
4065
- .c-chart--line .c-chart__canvas .area-path,
4066
- .c-chart--line .c-chart__canvas .c-chart__area-path {
4067
- opacity: 0.15;
4068
- transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1);
4069
- animation: chart-area-fade 1.5s ease-out;
4011
+ .c-chart__treemap-node--selected {
4012
+ stroke: var(--atomix-primary-border-subtle);
4013
+ stroke-width: 2;
4014
+ filter: drop-shadow(0 8px 24px rgba(0, 0, 0, 0.12));
4070
4015
  }
4071
- .c-chart--line .c-chart__canvas .area-path:hover,
4072
- .c-chart--line .c-chart__canvas .c-chart__area-path:hover {
4073
- opacity: 0.25;
4016
+ .c-chart__treemap-node:focus-visible {
4017
+ outline: 2px solid var(--atomix-focus-border-color);
4018
+ outline-offset: 2px;
4019
+ box-shadow: 0 0 0 2px var(--atomix-focus-border-color);
4074
4020
  }
4075
- .c-chart--line .c-chart__canvas .chart-point-label {
4076
- font-size: 0.75rem;
4077
- font-weight: 600;
4021
+ .c-chart__treemap-label {
4022
+ font-size: 0.875rem;
4023
+ font-weight: 500;
4024
+ fill: var(--atomix-text-primary);
4078
4025
  text-anchor: middle;
4079
4026
  dominant-baseline: middle;
4080
4027
  pointer-events: none;
4081
- opacity: 0;
4082
- transition: opacity 0.2s ease;
4083
- }
4084
- .c-chart--line .c-chart__canvas .chart-point-label.visible {
4085
- opacity: 1;
4028
+ -webkit-user-select: none;
4029
+ -moz-user-select: none;
4030
+ user-select: none;
4031
+ text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
4086
4032
  }
4087
- .c-chart--line .c-chart__canvas .data-point {
4088
- r: 4;
4033
+ .c-chart__funnel-segment {
4034
+ stroke: var(--atomix-border-color);
4035
+ stroke-width: 1;
4089
4036
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
4090
4037
  cursor: pointer;
4038
+ shape-rendering: geometricPrecision;
4091
4039
  }
4092
- .c-chart--line .c-chart__canvas .data-point:hover {
4093
- r: 6;
4094
- filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.3));
4095
- }
4096
- .c-chart--line .c-chart__canvas .data-point[data-highlighted=true] {
4097
- r: 8;
4098
- stroke-width: 3;
4040
+ .c-chart__funnel-segment:hover {
4041
+ opacity: 0.9;
4042
+ filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.06));
4043
+ stroke-width: 1.5;
4099
4044
  }
4100
- .c-chart--line .c-chart__canvas .data-point:focus-visible {
4045
+ .c-chart__funnel-segment:focus-visible {
4101
4046
  outline: 2px solid var(--atomix-focus-border-color);
4102
4047
  outline-offset: 2px;
4048
+ box-shadow: 0 0 0 2px var(--atomix-focus-border-color);
4103
4049
  }
4104
- .c-chart--area .c-chart__canvas .area-path {
4105
- opacity: 0.3;
4106
- transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1);
4107
- animation: chart-area-fade 1.5s ease-out;
4108
- }
4109
- .c-chart--area .c-chart__canvas .area-path:hover {
4110
- opacity: 0.45;
4111
- }
4112
- .c-chart--area .c-chart__canvas .line-path {
4113
- stroke-width: 2;
4114
- opacity: 0.9;
4115
- transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
4116
- animation: chart-draw-line 2s ease-out;
4050
+ .c-chart__funnel-label {
4051
+ font-size: 0.875rem;
4052
+ font-weight: 500;
4053
+ fill: var(--atomix-text-primary);
4054
+ text-anchor: middle;
4055
+ dominant-baseline: middle;
4056
+ pointer-events: none;
4057
+ -webkit-user-select: none;
4058
+ -moz-user-select: none;
4059
+ user-select: none;
4060
+ text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
4117
4061
  }
4118
- .c-chart--area .c-chart__canvas .line-path:hover {
4119
- stroke-width: 3;
4120
- opacity: 1;
4062
+ .c-chart__funnel-conversion {
4063
+ font-size: 0.75rem;
4064
+ font-weight: 600;
4065
+ fill: var(--atomix-secondary-text-emphasis);
4066
+ text-anchor: middle;
4067
+ dominant-baseline: middle;
4068
+ pointer-events: none;
4069
+ -webkit-user-select: none;
4070
+ -moz-user-select: none;
4071
+ user-select: none;
4072
+ opacity: 0.8;
4121
4073
  }
4122
- .c-chart--bar .c-chart__canvas .bar,
4123
- .c-chart--bar .c-chart__canvas .c-chart__bar, .c-chart--horizontal-bar .c-chart__canvas .bar,
4124
- .c-chart--horizontal-bar .c-chart__canvas .c-chart__bar {
4074
+ .c-chart__heatmap-cell {
4075
+ stroke: var(--atomix-border-color);
4076
+ stroke-width: 1;
4077
+ rx: 0.25rem;
4078
+ ry: 0.25rem;
4125
4079
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
4126
4080
  cursor: pointer;
4127
- filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.1));
4128
- animation: chart-bar-grow 0.8s ease-out;
4129
- opacity: 1;
4130
- }
4131
- .c-chart--bar .c-chart__canvas .bar:hover, .c-chart--bar .c-chart__canvas .bar--hovered,
4132
- .c-chart--bar .c-chart__canvas .c-chart__bar:hover,
4133
- .c-chart--bar .c-chart__canvas .c-chart__bar--hovered, .c-chart--horizontal-bar .c-chart__canvas .bar:hover, .c-chart--horizontal-bar .c-chart__canvas .bar--hovered,
4134
- .c-chart--horizontal-bar .c-chart__canvas .c-chart__bar:hover,
4135
- .c-chart--horizontal-bar .c-chart__canvas .c-chart__bar--hovered {
4136
- opacity: 0.85;
4137
- filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.2));
4081
+ shape-rendering: geometricPrecision;
4138
4082
  }
4139
- .c-chart--bar .c-chart__canvas .bar:focus-visible,
4140
- .c-chart--bar .c-chart__canvas .c-chart__bar:focus-visible, .c-chart--horizontal-bar .c-chart__canvas .bar:focus-visible,
4141
- .c-chart--horizontal-bar .c-chart__canvas .c-chart__bar:focus-visible {
4142
- outline: 2px solid var(--atomix-primary-border-subtle);
4143
- outline-offset: 2px;
4083
+ .c-chart__heatmap-cell:hover {
4084
+ transform: scale(1.05);
4085
+ transform-origin: center;
4086
+ filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.06));
4087
+ stroke-width: 2;
4088
+ z-index: 10;
4144
4089
  }
4145
- .c-chart--bar .c-chart__canvas .bar[data-animated=true],
4146
- .c-chart--bar .c-chart__canvas .c-chart__bar[data-animated=true], .c-chart--horizontal-bar .c-chart__canvas .bar[data-animated=true],
4147
- .c-chart--horizontal-bar .c-chart__canvas .c-chart__bar[data-animated=true] {
4148
- animation: chart-bar-grow 0.8s ease-out;
4090
+ .c-chart__heatmap-cell--hovered {
4091
+ transform: scale(1.05);
4092
+ transform-origin: center;
4093
+ filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.06));
4094
+ stroke-width: 2;
4095
+ z-index: 10;
4149
4096
  }
4150
- .c-chart--bar .c-chart__canvas .bar-group .bar, .c-chart--horizontal-bar .c-chart__canvas .bar-group .bar {
4151
- animation-delay: calc(var(--bar-index) * 0.1s);
4097
+ .c-chart__heatmap-cell:focus-visible {
4098
+ outline: 2px solid var(--atomix-focus-border-color);
4099
+ outline-offset: 2px;
4100
+ box-shadow: 0 0 0 2px var(--atomix-focus-border-color);
4152
4101
  }
4153
- .c-chart--bar .c-chart__canvas .bar-value-label,
4154
- .c-chart--bar .c-chart__canvas .c-chart__bar-value-label, .c-chart--horizontal-bar .c-chart__canvas .bar-value-label,
4155
- .c-chart--horizontal-bar .c-chart__canvas .c-chart__bar-value-label {
4102
+ .c-chart__heatmap-label {
4156
4103
  font-size: 0.75rem;
4157
- font-weight: 500;
4158
- fill: var(--atomix-primary-text-emphasis);
4104
+ font-weight: 400;
4105
+ fill: var(--atomix-text-primary);
4159
4106
  text-anchor: middle;
4160
- opacity: 1;
4161
- transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1);
4162
- font-feature-settings: "tnum";
4163
- font-variant-numeric: tabular-nums;
4107
+ dominant-baseline: middle;
4164
4108
  pointer-events: none;
4109
+ -webkit-user-select: none;
4110
+ -moz-user-select: none;
4111
+ user-select: none;
4165
4112
  }
4166
- .c-chart--bar .c-chart__canvas .bar-value-label.visible,
4167
- .c-chart--bar .c-chart__canvas .c-chart__bar-value-label.visible, .c-chart--horizontal-bar .c-chart__canvas .bar-value-label.visible,
4168
- .c-chart--horizontal-bar .c-chart__canvas .c-chart__bar-value-label.visible {
4169
- opacity: 1;
4170
- }
4171
- .c-chart--bar .c-chart__canvas .bar-gradient stop, .c-chart--horizontal-bar .c-chart__canvas .bar-gradient stop {
4172
- transition: stop-opacity 0.3s ease;
4173
- }
4174
- .c-chart--bar .c-chart__canvas .bar {
4175
- transform-origin: bottom center;
4176
- animation: chart-bar-grow 0.8s ease-out;
4177
- }
4178
- .c-chart--bar .c-chart__canvas .bar:hover {
4179
- transform: scaleY(1.05);
4180
- }
4181
- .c-chart--horizontal-bar .c-chart__canvas .bar {
4182
- transform-origin: left center;
4183
- animation: chart-bar-grow-horizontal 0.8s ease-out;
4184
- }
4185
- .c-chart--horizontal-bar .c-chart__canvas .bar:hover {
4186
- transform: scaleX(1.05);
4187
- }
4188
- .c-chart--pie .c-chart__canvas .pie-slice,
4189
- .c-chart--pie .c-chart__canvas .donut-slice,
4190
- .c-chart--pie .c-chart__canvas .c-chart__pie-slice,
4191
- .c-chart--pie .c-chart__canvas .c-chart__donut-slice, .c-chart--donut .c-chart__canvas .pie-slice,
4192
- .c-chart--donut .c-chart__canvas .donut-slice,
4193
- .c-chart--donut .c-chart__canvas .c-chart__pie-slice,
4194
- .c-chart--donut .c-chart__canvas .c-chart__donut-slice, .c-chart--doughnut .c-chart__canvas .pie-slice,
4195
- .c-chart--doughnut .c-chart__canvas .donut-slice,
4196
- .c-chart--doughnut .c-chart__canvas .c-chart__pie-slice,
4197
- .c-chart--doughnut .c-chart__canvas .c-chart__donut-slice {
4198
- transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
4199
- stroke: var(--atomix-primary-bg-subtle);
4200
- stroke-width: 2;
4201
- cursor: pointer;
4202
- transform-origin: center;
4203
- filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.1));
4204
- opacity: 1;
4205
- animation: chart-pie-draw 1.5s ease-out;
4206
- }
4207
- .c-chart--pie .c-chart__canvas .pie-slice:hover, .c-chart--pie .c-chart__canvas .pie-slice--hovered,
4208
- .c-chart--pie .c-chart__canvas .donut-slice:hover,
4209
- .c-chart--pie .c-chart__canvas .donut-slice--hovered,
4210
- .c-chart--pie .c-chart__canvas .c-chart__pie-slice:hover,
4211
- .c-chart--pie .c-chart__canvas .c-chart__pie-slice--hovered,
4212
- .c-chart--pie .c-chart__canvas .c-chart__donut-slice:hover,
4213
- .c-chart--pie .c-chart__canvas .c-chart__donut-slice--hovered, .c-chart--donut .c-chart__canvas .pie-slice:hover, .c-chart--donut .c-chart__canvas .pie-slice--hovered,
4214
- .c-chart--donut .c-chart__canvas .donut-slice:hover,
4215
- .c-chart--donut .c-chart__canvas .donut-slice--hovered,
4216
- .c-chart--donut .c-chart__canvas .c-chart__pie-slice:hover,
4217
- .c-chart--donut .c-chart__canvas .c-chart__pie-slice--hovered,
4218
- .c-chart--donut .c-chart__canvas .c-chart__donut-slice:hover,
4219
- .c-chart--donut .c-chart__canvas .c-chart__donut-slice--hovered, .c-chart--doughnut .c-chart__canvas .pie-slice:hover, .c-chart--doughnut .c-chart__canvas .pie-slice--hovered,
4220
- .c-chart--doughnut .c-chart__canvas .donut-slice:hover,
4221
- .c-chart--doughnut .c-chart__canvas .donut-slice--hovered,
4222
- .c-chart--doughnut .c-chart__canvas .c-chart__pie-slice:hover,
4223
- .c-chart--doughnut .c-chart__canvas .c-chart__pie-slice--hovered,
4224
- .c-chart--doughnut .c-chart__canvas .c-chart__donut-slice:hover,
4225
- .c-chart--doughnut .c-chart__canvas .c-chart__donut-slice--hovered {
4226
- opacity: 0.8;
4227
- transform: scale(1.05);
4228
- stroke-width: 3;
4229
- filter: drop-shadow(0 4px 12px rgba(0, 0, 0, 0.2));
4230
- }
4231
- .c-chart--pie .c-chart__canvas .pie-slice--selected,
4232
- .c-chart--pie .c-chart__canvas .donut-slice--selected,
4233
- .c-chart--pie .c-chart__canvas .c-chart__pie-slice--selected,
4234
- .c-chart--pie .c-chart__canvas .c-chart__donut-slice--selected, .c-chart--donut .c-chart__canvas .pie-slice--selected,
4235
- .c-chart--donut .c-chart__canvas .donut-slice--selected,
4236
- .c-chart--donut .c-chart__canvas .c-chart__pie-slice--selected,
4237
- .c-chart--donut .c-chart__canvas .c-chart__donut-slice--selected, .c-chart--doughnut .c-chart__canvas .pie-slice--selected,
4238
- .c-chart--doughnut .c-chart__canvas .donut-slice--selected,
4239
- .c-chart--doughnut .c-chart__canvas .c-chart__pie-slice--selected,
4240
- .c-chart--doughnut .c-chart__canvas .c-chart__donut-slice--selected {
4241
- stroke: var(--atomix-primary-border-subtle);
4242
- stroke-width: 3;
4243
- }
4244
- .c-chart--pie .c-chart__canvas .pie-slice:focus-visible,
4245
- .c-chart--pie .c-chart__canvas .donut-slice:focus-visible,
4246
- .c-chart--pie .c-chart__canvas .c-chart__pie-slice:focus-visible,
4247
- .c-chart--pie .c-chart__canvas .c-chart__donut-slice:focus-visible, .c-chart--donut .c-chart__canvas .pie-slice:focus-visible,
4248
- .c-chart--donut .c-chart__canvas .donut-slice:focus-visible,
4249
- .c-chart--donut .c-chart__canvas .c-chart__pie-slice:focus-visible,
4250
- .c-chart--donut .c-chart__canvas .c-chart__donut-slice:focus-visible, .c-chart--doughnut .c-chart__canvas .pie-slice:focus-visible,
4251
- .c-chart--doughnut .c-chart__canvas .donut-slice:focus-visible,
4252
- .c-chart--doughnut .c-chart__canvas .c-chart__pie-slice:focus-visible,
4253
- .c-chart--doughnut .c-chart__canvas .c-chart__donut-slice:focus-visible {
4254
- outline: 2px solid var(--atomix-primary-border-subtle);
4255
- outline-offset: 4px;
4256
- }
4257
- .c-chart--pie .c-chart__canvas .pie-label,
4258
- .c-chart--pie .c-chart__canvas .c-chart__pie-label,
4259
- .c-chart--pie .c-chart__canvas .c-chart__donut-label, .c-chart--donut .c-chart__canvas .pie-label,
4260
- .c-chart--donut .c-chart__canvas .c-chart__pie-label,
4261
- .c-chart--donut .c-chart__canvas .c-chart__donut-label, .c-chart--doughnut .c-chart__canvas .pie-label,
4262
- .c-chart--doughnut .c-chart__canvas .c-chart__pie-label,
4263
- .c-chart--doughnut .c-chart__canvas .c-chart__donut-label {
4113
+ .c-chart__heatmap-axis-label {
4264
4114
  font-size: 0.75rem;
4265
- font-weight: 600;
4266
- fill: var(--atomix-primary-text-emphasis);
4115
+ font-weight: 500;
4116
+ fill: var(--atomix-secondary-text-emphasis);
4267
4117
  text-anchor: middle;
4118
+ dominant-baseline: middle;
4268
4119
  pointer-events: none;
4269
- transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
4270
- font-feature-settings: "tnum";
4271
- font-variant-numeric: tabular-nums;
4272
- }
4273
- .c-chart--donut .c-chart__canvas .donut-slice, .c-chart--doughnut .c-chart__canvas .donut-slice {
4274
- animation: chart-donut-draw 1.5s ease-out;
4275
- }
4276
- .c-chart--donut .c-chart__canvas .donut-center,
4277
- .c-chart--donut .c-chart__canvas .c-chart__donut-center, .c-chart--doughnut .c-chart__canvas .donut-center,
4278
- .c-chart--doughnut .c-chart__canvas .c-chart__donut-center {
4279
- transition: fill 0.3s cubic-bezier(0.4, 0, 0.2, 1);
4280
- }
4281
- .c-chart--donut .c-chart__canvas .c-chart__donut-center-bg, .c-chart--doughnut .c-chart__canvas .c-chart__donut-center-bg {
4282
- fill: var(--atomix-primary-bg-subtle);
4120
+ -webkit-user-select: none;
4121
+ -moz-user-select: none;
4122
+ user-select: none;
4283
4123
  }
4284
- .c-chart--donut .c-chart__canvas .donut-center-label,
4285
- .c-chart--donut .c-chart__canvas .c-chart__donut-center-label, .c-chart--doughnut .c-chart__canvas .donut-center-label,
4286
- .c-chart--doughnut .c-chart__canvas .c-chart__donut-center-label {
4124
+ .c-chart__heatmap-legend-title {
4287
4125
  font-size: 0.875rem;
4288
- font-weight: 500;
4289
- fill: var(--atomix-secondary-text-emphasis);
4290
- text-anchor: middle;
4291
- dominant-baseline: central;
4292
- font-feature-settings: "tnum";
4293
- font-variant-numeric: tabular-nums;
4126
+ font-weight: 600;
4127
+ fill: var(--atomix-text-primary);
4128
+ text-anchor: start;
4129
+ dominant-baseline: baseline;
4130
+ pointer-events: none;
4131
+ -webkit-user-select: none;
4132
+ -moz-user-select: none;
4133
+ user-select: none;
4294
4134
  }
4295
- .c-chart--donut .c-chart__canvas .c-chart__donut-center-value, .c-chart--doughnut .c-chart__canvas .c-chart__donut-center-value {
4296
- font-size: 1.5rem;
4297
- font-weight: 700;
4298
- fill: var(--atomix-primary-text-emphasis);
4299
- text-anchor: middle;
4300
- dominant-baseline: central;
4301
- font-feature-settings: "tnum";
4302
- font-variant-numeric: tabular-nums;
4135
+ .c-chart__heatmap-legend-label {
4136
+ font-size: 0.75rem;
4137
+ font-weight: 400;
4138
+ fill: var(--atomix-secondary-text-emphasis);
4139
+ text-anchor: start;
4140
+ dominant-baseline: middle;
4141
+ pointer-events: none;
4142
+ -webkit-user-select: none;
4143
+ -moz-user-select: none;
4144
+ user-select: none;
4303
4145
  }
4304
- .c-chart--scatter .c-chart__canvas .scatter-point,
4305
- .c-chart--scatter .c-chart__canvas .c-chart__scatter-point {
4306
- stroke: var(--atomix-primary-border-subtle);
4146
+ .c-chart__candlestick-candle {
4147
+ stroke: var(--atomix-border-color);
4307
4148
  stroke-width: 1;
4149
+ rx: 0.25rem;
4150
+ ry: 0.25rem;
4308
4151
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
4309
4152
  cursor: pointer;
4310
- filter: drop-shadow(0 1px 2px rgba(0, 0, 0, 0.1));
4311
- animation: chart-fade-in 0.6s ease-out;
4153
+ shape-rendering: geometricPrecision;
4312
4154
  }
4313
- .c-chart--scatter .c-chart__canvas .scatter-point:hover,
4314
- .c-chart--scatter .c-chart__canvas .c-chart__scatter-point:hover {
4315
- filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.3));
4155
+ .c-chart__candlestick-candle:hover {
4156
+ opacity: 0.9;
4157
+ stroke-width: 1.5;
4158
+ filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.06));
4316
4159
  }
4317
- .c-chart--scatter .c-chart__canvas .scatter-point:focus-visible,
4318
- .c-chart--scatter .c-chart__canvas .c-chart__scatter-point:focus-visible {
4319
- outline: 2px solid var(--atomix-primary-border-subtle);
4160
+ .c-chart__candlestick-candle:focus-visible {
4161
+ outline: 2px solid var(--atomix-focus-border-color);
4320
4162
  outline-offset: 2px;
4163
+ box-shadow: 0 0 0 2px var(--atomix-focus-border-color);
4321
4164
  }
4322
- .c-chart--scatter .c-chart__canvas .c-chart__scatter-label {
4323
- font-size: 0.75rem;
4324
- fill: var(--atomix-primary-text-emphasis);
4325
- pointer-events: none;
4326
- }
4327
- .c-chart--bubble .c-chart__canvas .c-chart__bubble {
4328
- stroke: var(--atomix-primary-bg-subtle);
4329
- stroke-width: 2;
4330
- cursor: pointer;
4165
+ .c-chart__candlestick-wick {
4166
+ stroke: var(--atomix-tertiary-text-emphasis);
4167
+ stroke-width: 1;
4168
+ opacity: 0.8;
4331
4169
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
4170
+ shape-rendering: geometricPrecision;
4332
4171
  }
4333
- .c-chart--bubble .c-chart__canvas .c-chart__bubble--animated {
4334
- transition: all 1s ease-out;
4335
- }
4336
- .c-chart--bubble .c-chart__canvas .c-chart__bubble:hover {
4337
- filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.3));
4172
+ .c-chart__candlestick-wick:hover {
4173
+ opacity: 1;
4174
+ stroke-width: 1.2;
4338
4175
  }
4339
- .c-chart--bubble .c-chart__canvas .c-chart__bubble-label {
4340
- font-size: 0.75rem;
4341
- font-weight: 500;
4342
- fill: var(--atomix-tertiary-text-emphasis);
4343
- pointer-events: none;
4176
+ .c-chart__candlestick-volume {
4177
+ transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
4178
+ cursor: pointer;
4179
+ shape-rendering: geometricPrecision;
4344
4180
  }
4345
- .c-chart--bubble .c-chart__canvas .c-chart__bubble-label--center {
4346
- fill: var(--atomix-invert-text-emphasis);
4347
- font-weight: 700;
4348
- text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
4181
+ .c-chart__candlestick-volume:hover {
4182
+ opacity: 0.6;
4349
4183
  }
4350
- .c-chart--radar .c-chart__canvas .c-chart__radar-grid {
4351
- stroke: var(--atomix-primary-border-subtle);
4352
- stroke-width: 1;
4353
- opacity: 0.3;
4184
+ .c-chart__bar {
4185
+ rx: 0.25rem;
4186
+ ry: 0.25rem;
4187
+ transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
4188
+ cursor: pointer;
4189
+ shape-rendering: geometricPrecision;
4354
4190
  }
4355
- .c-chart--radar .c-chart__canvas .c-chart__radar-axis {
4356
- stroke: var(--atomix-primary-border-subtle);
4357
- stroke-width: 1;
4358
- opacity: 0.5;
4191
+ .c-chart__bar:hover {
4192
+ opacity: 0.85;
4193
+ filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.06));
4359
4194
  }
4360
- .c-chart--radar .c-chart__canvas .c-chart__radar-label {
4361
- font-size: 0.75rem;
4362
- fill: var(--atomix-secondary-text-emphasis);
4195
+ .c-chart__bar--hovered {
4196
+ opacity: 0.85;
4197
+ filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.06));
4363
4198
  }
4364
- .c-chart--radar .c-chart__canvas .c-chart__radar-fill {
4365
- transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1);
4199
+ .c-chart__bar:focus-visible {
4200
+ outline: 2px solid var(--atomix-focus-border-color);
4201
+ outline-offset: 2px;
4202
+ box-shadow: 0 0 0 2px var(--atomix-focus-border-color);
4366
4203
  }
4367
- .c-chart--radar .c-chart__canvas .c-chart__radar-fill:hover {
4368
- opacity: 0.5 !important;
4204
+ .c-chart__bar-value-label {
4205
+ font-size: 0.75rem;
4206
+ font-weight: 500;
4207
+ fill: var(--atomix-text-primary);
4208
+ text-anchor: middle;
4209
+ pointer-events: none;
4210
+ -webkit-user-select: none;
4211
+ -moz-user-select: none;
4212
+ user-select: none;
4369
4213
  }
4370
- .c-chart--radar .c-chart__canvas .c-chart__radar-line {
4214
+ .c-chart__line-path {
4371
4215
  fill: none;
4372
- transition: stroke-width 0.3s cubic-bezier(0.4, 0, 0.2, 1);
4373
- }
4374
- .c-chart--radar .c-chart__canvas .c-chart__radar-line:hover {
4375
- stroke-width: 3 !important;
4216
+ stroke-linecap: round;
4217
+ stroke-linejoin: round;
4218
+ transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
4219
+ shape-rendering: geometricPrecision;
4376
4220
  }
4377
- .c-chart--radar .c-chart__canvas .c-chart__radar-point {
4378
- stroke: var(--atomix-primary-bg-subtle);
4379
- stroke-width: 2;
4380
- cursor: pointer;
4221
+ .c-chart__area-path {
4381
4222
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
4223
+ shape-rendering: geometricPrecision;
4382
4224
  }
4383
- .c-chart--radar .c-chart__canvas .c-chart__radar-point:hover {
4384
- transform: scale(1.3);
4385
- filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.3));
4225
+ .c-chart__area-fill {
4226
+ transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
4227
+ shape-rendering: geometricPrecision;
4386
4228
  }
4387
- .c-chart--candlestick .c-chart__canvas .candlestick,
4388
- .c-chart--candlestick .c-chart__canvas .c-chart__candlestick {
4389
- stroke-width: 1;
4390
- cursor: pointer;
4229
+ .c-chart__area-point {
4391
4230
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
4392
- animation: chart-fade-in 0.6s ease-out;
4231
+ cursor: pointer;
4232
+ shape-rendering: geometricPrecision;
4393
4233
  }
4394
- .c-chart--candlestick .c-chart__canvas .candlestick--bullish,
4395
- .c-chart--candlestick .c-chart__canvas .c-chart__candlestick--bullish {
4396
- opacity: 0.8;
4234
+ .c-chart__area-point:hover {
4235
+ transform: scale(1.2);
4397
4236
  }
4398
- .c-chart--candlestick .c-chart__canvas .candlestick--bearish,
4399
- .c-chart--candlestick .c-chart__canvas .c-chart__candlestick--bearish {
4400
- opacity: 1;
4237
+ .c-chart__area-point--hovered {
4238
+ transform: scale(1.2);
4401
4239
  }
4402
- .c-chart--candlestick .c-chart__canvas .candlestick:hover,
4403
- .c-chart--candlestick .c-chart__canvas .c-chart__candlestick:hover {
4404
- opacity: 0.8;
4405
- filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.2));
4240
+ .c-chart__area-point:focus-visible {
4241
+ outline: 2px solid var(--atomix-focus-border-color);
4242
+ outline-offset: 2px;
4243
+ box-shadow: 0 0 0 2px var(--atomix-focus-border-color);
4406
4244
  }
4407
- .c-chart--candlestick .c-chart__canvas .c-chart__candlestick-highlight {
4408
- stroke-width: 2;
4409
- opacity: 0.5;
4245
+ .c-chart__point-label {
4246
+ font-size: 0.75rem;
4247
+ font-weight: 500;
4248
+ text-anchor: middle;
4249
+ pointer-events: none;
4250
+ -webkit-user-select: none;
4251
+ -moz-user-select: none;
4252
+ user-select: none;
4410
4253
  }
4411
- .c-chart--candlestick .c-chart__canvas .wick,
4412
- .c-chart--candlestick .c-chart__canvas .c-chart__wick {
4413
- stroke-width: 1;
4414
- opacity: 0.8;
4254
+ .c-chart__pie-slice {
4255
+ transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
4256
+ cursor: pointer;
4257
+ shape-rendering: geometricPrecision;
4415
4258
  }
4416
- .c-chart--candlestick .c-chart__canvas .wick--hovered,
4417
- .c-chart--candlestick .c-chart__canvas .c-chart__wick--hovered {
4418
- stroke-width: 2;
4259
+ .c-chart__pie-slice:hover {
4260
+ stroke-width: 3;
4261
+ filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.06));
4419
4262
  }
4420
- .c-chart--candlestick .c-chart__canvas .c-chart__moving-average {
4421
- stroke-width: 2;
4422
- opacity: 0.8;
4263
+ .c-chart__pie-slice--hovered {
4264
+ stroke-width: 3;
4265
+ filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.06));
4423
4266
  }
4424
- .c-chart--candlestick .c-chart__canvas .volume-bar {
4425
- opacity: 0.3;
4426
- transition: opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1);
4267
+ .c-chart__pie-slice:focus-visible {
4268
+ outline: 2px solid var(--atomix-focus-border-color);
4269
+ outline-offset: 2px;
4270
+ box-shadow: 0 0 0 2px var(--atomix-focus-border-color);
4427
4271
  }
4428
- .c-chart--candlestick .c-chart__canvas .volume-bar:hover {
4429
- opacity: 0.6;
4272
+ .c-chart__pie-label {
4273
+ font-size: 0.75rem;
4274
+ font-weight: 500;
4275
+ fill: var(--atomix-text-primary);
4276
+ text-anchor: middle;
4277
+ dominant-baseline: middle;
4278
+ pointer-events: none;
4279
+ -webkit-user-select: none;
4280
+ -moz-user-select: none;
4281
+ user-select: none;
4282
+ text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
4430
4283
  }
4431
- .c-chart--gauge .c-chart__canvas .c-chart__gauge-background {
4432
- fill: var(--atomix-secondary-bg-subtle);
4433
- stroke: var(--atomix-primary-border-subtle);
4434
- stroke-width: 1;
4284
+ .c-chart__donut-slice {
4285
+ transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
4286
+ cursor: pointer;
4287
+ shape-rendering: geometricPrecision;
4288
+ transform-origin: center;
4435
4289
  }
4436
- .c-chart--gauge .c-chart__canvas .c-chart__gauge-zone {
4437
- stroke: var(--atomix-primary-bg-subtle);
4438
- stroke-width: 2;
4290
+ .c-chart__donut-slice:hover {
4291
+ transform: scale(1.02);
4292
+ filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.06));
4439
4293
  }
4440
- .c-chart--gauge .c-chart__canvas .c-chart__gauge-tick--major {
4441
- stroke: var(--atomix-secondary-text-emphasis);
4442
- stroke-width: 2;
4294
+ .c-chart__donut-slice--hovered {
4295
+ transform: scale(1.02);
4296
+ filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.06));
4443
4297
  }
4444
- .c-chart--gauge .c-chart__canvas .c-chart__gauge-tick--minor {
4445
- stroke: var(--atomix-tertiary-text-emphasis);
4446
- stroke-width: 1;
4298
+ .c-chart__donut-slice:focus-visible {
4299
+ outline: 2px solid var(--atomix-focus-border-color);
4300
+ outline-offset: 2px;
4301
+ box-shadow: 0 0 0 2px var(--atomix-focus-border-color);
4447
4302
  }
4448
- .c-chart--gauge .c-chart__canvas .c-chart__gauge-tick-label {
4303
+ .c-chart__donut-label {
4449
4304
  font-size: 0.75rem;
4450
- fill: var(--atomix-secondary-text-emphasis);
4305
+ font-weight: 500;
4306
+ fill: var(--atomix-text-primary);
4307
+ text-anchor: middle;
4308
+ dominant-baseline: middle;
4309
+ pointer-events: none;
4310
+ -webkit-user-select: none;
4311
+ -moz-user-select: none;
4312
+ user-select: none;
4313
+ text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
4451
4314
  }
4452
- .c-chart--gauge .c-chart__canvas .c-chart__gauge-min-max-label {
4453
- font-size: 0.875rem;
4454
- font-weight: 700;
4315
+ .c-chart__donut-percentage {
4316
+ font-size: 0.75rem;
4317
+ font-weight: 600;
4455
4318
  fill: var(--atomix-secondary-text-emphasis);
4319
+ text-anchor: middle;
4320
+ dominant-baseline: middle;
4321
+ pointer-events: none;
4322
+ -webkit-user-select: none;
4323
+ -moz-user-select: none;
4324
+ user-select: none;
4456
4325
  }
4457
- .c-chart--gauge .c-chart__canvas .c-chart__gauge-needle .c-chart__gauge-needle-line {
4458
- stroke-width: 3;
4459
- stroke-linecap: round;
4460
- }
4461
- .c-chart--gauge .c-chart__canvas .c-chart__gauge-needle .c-chart__gauge-needle-center {
4462
- stroke: var(--atomix-primary-bg-subtle);
4463
- stroke-width: 2;
4464
- }
4465
- .c-chart--gauge .c-chart__canvas .c-chart__gauge-value {
4466
- font-size: 2rem;
4467
- font-weight: 700;
4468
- fill: var(--atomix-primary-text-emphasis);
4469
- }
4470
- .c-chart--gauge .c-chart__canvas .c-chart__gauge-label {
4326
+ .c-chart__donut-center-label {
4471
4327
  font-size: 0.875rem;
4328
+ font-weight: 500;
4472
4329
  fill: var(--atomix-secondary-text-emphasis);
4330
+ text-anchor: middle;
4331
+ dominant-baseline: middle;
4332
+ pointer-events: none;
4333
+ -webkit-user-select: none;
4334
+ -moz-user-select: none;
4335
+ user-select: none;
4473
4336
  }
4474
- .c-chart--funnel .c-chart__canvas .c-chart__funnel-segment {
4475
- stroke: var(--atomix-primary-bg-subtle);
4476
- stroke-width: 2;
4477
- cursor: pointer;
4478
- transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
4479
- }
4480
- .c-chart--funnel .c-chart__canvas .c-chart__funnel-segment--animated {
4481
- transition: all 1s ease-out;
4482
- }
4483
- .c-chart--funnel .c-chart__canvas .c-chart__funnel-segment:hover {
4484
- opacity: 0.8;
4485
- filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.2));
4486
- }
4487
- .c-chart--funnel .c-chart__canvas .c-chart__funnel-label {
4488
- font-size: 0.875rem;
4337
+ .c-chart__donut-center-value {
4338
+ font-size: 1.25rem;
4489
4339
  font-weight: 700;
4340
+ fill: var(--atomix-text-primary);
4341
+ text-anchor: middle;
4342
+ dominant-baseline: middle;
4490
4343
  pointer-events: none;
4344
+ -webkit-user-select: none;
4345
+ -moz-user-select: none;
4346
+ user-select: none;
4491
4347
  }
4492
- .c-chart--funnel .c-chart__canvas .c-chart__funnel-label--inside {
4493
- fill: var(--atomix-invert-text-emphasis);
4494
- text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
4495
- }
4496
- .c-chart--funnel .c-chart__canvas .c-chart__funnel-label--outside {
4497
- fill: var(--atomix-primary-text-emphasis);
4498
- }
4499
- .c-chart--funnel .c-chart__canvas .c-chart__funnel-value {
4500
- font-size: 0.75rem;
4501
- pointer-events: none;
4502
- }
4503
- .c-chart--funnel .c-chart__canvas .c-chart__funnel-value--inside {
4504
- fill: var(--atomix-invert-text-emphasis);
4505
- text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
4348
+ .c-chart__scatter-point {
4349
+ transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
4350
+ cursor: pointer;
4351
+ shape-rendering: geometricPrecision;
4506
4352
  }
4507
- .c-chart--funnel .c-chart__canvas .c-chart__funnel-value--outside {
4508
- fill: var(--atomix-secondary-text-emphasis);
4353
+ .c-chart__scatter-point:hover {
4354
+ transform: scale(1.2);
4355
+ filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.06));
4509
4356
  }
4510
- .c-chart--funnel .c-chart__canvas .c-chart__funnel-conversion {
4511
- font-size: 0.75rem;
4512
- fill: var(--atomix-secondary-text-emphasis);
4513
- font-style: italic;
4357
+ .c-chart__scatter-point:focus-visible {
4358
+ outline: 2px solid var(--atomix-focus-border-color);
4359
+ outline-offset: 2px;
4360
+ box-shadow: 0 0 0 2px var(--atomix-focus-border-color);
4514
4361
  }
4515
- .c-chart--heatmap .c-chart__canvas .c-chart__heatmap-axis-label {
4362
+ .c-chart__scatter-label {
4516
4363
  font-size: 0.75rem;
4517
- fill: var(--atomix-gray-7);
4518
4364
  font-weight: 500;
4365
+ fill: var(--atomix-text-primary);
4366
+ text-anchor: middle;
4367
+ pointer-events: none;
4519
4368
  -webkit-user-select: none;
4520
4369
  -moz-user-select: none;
4521
4370
  user-select: none;
4522
4371
  }
4523
- .c-chart--heatmap .c-chart__canvas .c-chart__heatmap-cell {
4372
+ .c-chart__bubble {
4373
+ transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
4524
4374
  cursor: pointer;
4525
- transition: all 0.2s ease;
4526
- shape-rendering: crispEdges;
4375
+ shape-rendering: geometricPrecision;
4527
4376
  }
4528
- .c-chart--heatmap .c-chart__canvas .c-chart__heatmap-cell--empty {
4529
- fill: var(--atomix-gray-2);
4530
- stroke: var(--atomix-gray-3);
4531
- stroke-width: 0.5;
4532
- opacity: 0.6;
4377
+ .c-chart__bubble:hover {
4378
+ transform: scale(1.1);
4379
+ filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.1));
4533
4380
  }
4534
- .c-chart--heatmap .c-chart__canvas .c-chart__heatmap-cell--hovered {
4381
+ .c-chart__bubble--hovered {
4535
4382
  transform: scale(1.1);
4536
- filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.2));
4537
- z-index: 10;
4383
+ filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.1));
4538
4384
  }
4539
- .c-chart--heatmap .c-chart__canvas .c-chart__heatmap-cell:focus-visible {
4540
- outline: 2px solid var(--atomix-primary-6);
4541
- outline-offset: 1px;
4385
+ .c-chart__bubble:focus-visible {
4386
+ outline: 2px solid var(--atomix-focus-border-color);
4387
+ outline-offset: 2px;
4388
+ box-shadow: 0 0 0 2px var(--atomix-focus-border-color);
4542
4389
  }
4543
- .c-chart--heatmap .c-chart__canvas .c-chart__heatmap-value {
4544
- font-size: 9px;
4390
+ .c-chart__bubble-label {
4391
+ font-size: 0.75rem;
4545
4392
  font-weight: 500;
4393
+ fill: var(--atomix-text-primary);
4394
+ text-anchor: middle;
4395
+ dominant-baseline: middle;
4546
4396
  pointer-events: none;
4547
4397
  -webkit-user-select: none;
4548
4398
  -moz-user-select: none;
4549
4399
  user-select: none;
4550
- font-feature-settings: "tnum";
4551
- font-variant-numeric: tabular-nums;
4552
- }
4553
- .c-chart--heatmap .c-chart__canvas .c-chart__heatmap-value--light {
4554
- fill: white;
4555
4400
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
4556
4401
  }
4557
- .c-chart--heatmap .c-chart__canvas .c-chart__heatmap-value--dark {
4558
- fill: var(--atomix-gray-8);
4559
- }
4560
- .c-chart--heatmap .c-chart__canvas.c-chart--calendar .c-chart__heatmap-cell {
4561
- rx: 2;
4402
+ .c-chart__radar-grid-line {
4403
+ stroke: var(--atomix-border-color);
4404
+ stroke-width: 1;
4405
+ opacity: 0.3;
4406
+ shape-rendering: geometricPrecision;
4562
4407
  }
4563
- .c-chart--heatmap .c-chart__canvas.c-chart--grid .c-chart__heatmap-cell {
4564
- rx: 4;
4408
+ .c-chart__radar-axis-label {
4409
+ font-size: 0.75rem;
4410
+ font-weight: 500;
4411
+ fill: var(--atomix-secondary-text-emphasis);
4412
+ text-anchor: middle;
4413
+ dominant-baseline: middle;
4414
+ pointer-events: none;
4415
+ -webkit-user-select: none;
4416
+ -moz-user-select: none;
4417
+ user-select: none;
4565
4418
  }
4566
- .c-chart--treemap .c-chart__canvas .c-chart__treemap-node {
4567
- cursor: pointer;
4568
- stroke: var(--atomix-primary-bg-subtle);
4569
- stroke-width: 1;
4419
+ .c-chart__radar-area {
4570
4420
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
4421
+ shape-rendering: geometricPrecision;
4571
4422
  }
4572
- .c-chart--treemap .c-chart__canvas .c-chart__treemap-node--animated {
4573
- transition: all 750ms ease-out;
4423
+ .c-chart__radar-line {
4424
+ transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
4425
+ shape-rendering: geometricPrecision;
4426
+ stroke-linecap: round;
4427
+ stroke-linejoin: round;
4574
4428
  }
4575
- .c-chart--treemap .c-chart__canvas .c-chart__treemap-node--hovered {
4576
- opacity: 0.8;
4429
+ .c-chart__radar-point {
4430
+ transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
4431
+ cursor: pointer;
4432
+ shape-rendering: geometricPrecision;
4577
4433
  }
4578
- .c-chart--treemap .c-chart__canvas .c-chart__treemap-node--selected {
4579
- stroke-width: 2;
4434
+ .c-chart__radar-point:hover {
4435
+ transform: scale(1.3);
4436
+ filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.06));
4580
4437
  }
4581
- .c-chart--treemap .c-chart__canvas .c-chart__treemap-label {
4582
- font-size: 0.75rem;
4583
- font-weight: 700;
4584
- fill: var(--atomix-invert-text-emphasis);
4585
- pointer-events: none;
4438
+ .c-chart__radar-point--hovered {
4439
+ transform: scale(1.3);
4440
+ filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.06));
4586
4441
  }
4587
- .c-chart--treemap .c-chart__canvas .c-chart__treemap-value {
4588
- font-size: 0.75rem;
4589
- fill: var(--atomix-invert-text-emphasis);
4590
- opacity: 0.8;
4591
- pointer-events: none;
4442
+ .c-chart__radar-point:focus-visible {
4443
+ outline: 2px solid var(--atomix-focus-border-color);
4444
+ outline-offset: 2px;
4445
+ box-shadow: 0 0 0 2px var(--atomix-focus-border-color);
4592
4446
  }
4593
- .c-chart--waterfall .c-chart__canvas .c-chart__waterfall-bar {
4594
- stroke: var(--atomix-primary-bg-subtle);
4595
- stroke-width: 2;
4596
- cursor: pointer;
4447
+ .c-chart__waterfall-bar {
4448
+ rx: 0.25rem;
4449
+ ry: 0.25rem;
4597
4450
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
4451
+ cursor: pointer;
4452
+ shape-rendering: geometricPrecision;
4598
4453
  }
4599
- .c-chart--waterfall .c-chart__canvas .c-chart__waterfall-bar--animated {
4600
- transition: all 1s ease-out;
4454
+ .c-chart__waterfall-bar:hover {
4455
+ opacity: 0.85;
4456
+ filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.06));
4601
4457
  }
4602
- .c-chart--waterfall .c-chart__canvas .c-chart__waterfall-bar:hover {
4603
- opacity: 0.8;
4604
- filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.2));
4458
+ .c-chart__waterfall-bar--animated {
4459
+ animation: chart-bar-appear 1s ease-out;
4460
+ transform-origin: bottom center;
4461
+ }
4462
+ .c-chart__waterfall-bar:focus-visible {
4463
+ outline: 2px solid var(--atomix-focus-border-color);
4464
+ outline-offset: 2px;
4465
+ box-shadow: 0 0 0 2px var(--atomix-focus-border-color);
4605
4466
  }
4606
- .c-chart--waterfall .c-chart__canvas .c-chart__waterfall-value {
4467
+ .c-chart__waterfall-value {
4607
4468
  font-size: 0.75rem;
4608
- font-weight: 700;
4469
+ font-weight: 600;
4470
+ fill: var(--atomix-text-primary);
4471
+ text-anchor: middle;
4609
4472
  pointer-events: none;
4473
+ -webkit-user-select: none;
4474
+ -moz-user-select: none;
4475
+ user-select: none;
4610
4476
  }
4611
- .c-chart--waterfall .c-chart__canvas .c-chart__waterfall-value--center {
4612
- fill: var(--atomix-invert-text-emphasis);
4613
- text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.5);
4477
+ .c-chart__waterfall-value--center {
4478
+ dominant-baseline: middle;
4614
4479
  }
4615
- .c-chart--waterfall .c-chart__canvas .c-chart__waterfall-value--outside {
4616
- fill: var(--atomix-primary-text-emphasis);
4480
+ .c-chart__waterfall-value--outside {
4481
+ dominant-baseline: auto;
4617
4482
  }
4618
- .c-chart--waterfall .c-chart__canvas .c-chart__waterfall-connector {
4619
- stroke-width: 2;
4620
- opacity: 0.7;
4483
+ .c-chart__waterfall-connector {
4484
+ stroke: var(--atomix-border-color);
4485
+ stroke-width: 1;
4486
+ opacity: 0.6;
4487
+ shape-rendering: geometricPrecision;
4621
4488
  }
4622
- .c-chart--waterfall .c-chart__canvas .c-chart__waterfall-cumulative-line {
4623
- stroke-width: 3;
4489
+ .c-chart__waterfall-cumulative-line {
4490
+ stroke-width: 2;
4624
4491
  stroke-linecap: round;
4625
4492
  stroke-linejoin: round;
4493
+ transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
4494
+ shape-rendering: geometricPrecision;
4626
4495
  }
4627
- .c-chart--waterfall .c-chart__canvas .c-chart__waterfall-cumulative-point {
4628
- stroke: var(--atomix-primary-bg-subtle);
4629
- stroke-width: 2;
4630
- }
4631
- @keyframes chart-spin {
4632
- 0% {
4633
- transform: rotate(0deg);
4634
- }
4635
- 100% {
4636
- transform: rotate(360deg);
4637
- }
4638
- }
4639
- @keyframes chart-shimmer {
4640
- 0% {
4641
- left: -100%;
4642
- }
4643
- 100% {
4644
- left: 100%;
4645
- }
4646
- }
4647
- @keyframes chart-pulse {
4648
- 0%, 100% {
4649
- opacity: 0.8;
4650
- }
4651
- 50% {
4652
- opacity: 1;
4653
- }
4654
- }
4655
- @keyframes chart-draw-line {
4656
- 0% {
4657
- stroke-dashoffset: 1000;
4658
- }
4659
- 100% {
4660
- stroke-dashoffset: 0;
4661
- }
4662
- }
4663
- @keyframes chart-area-fade {
4664
- 0% {
4665
- opacity: 0;
4666
- }
4667
- 100% {
4668
- opacity: 0.3;
4669
- }
4496
+ .c-chart__waterfall-cumulative-point {
4497
+ transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
4498
+ cursor: pointer;
4499
+ shape-rendering: geometricPrecision;
4670
4500
  }
4671
- @keyframes chart-bar-grow {
4672
- 0% {
4673
- transform: scaleY(0);
4674
- }
4675
- 100% {
4676
- transform: scaleY(1);
4677
- }
4501
+ .c-chart__waterfall-cumulative-point:hover {
4502
+ transform: scale(1.3);
4678
4503
  }
4679
- @keyframes chart-bar-grow-horizontal {
4680
- 0% {
4681
- transform: scaleX(0);
4682
- }
4683
- 100% {
4684
- transform: scaleX(1);
4685
- }
4504
+ .c-chart__waterfall-cumulative-point:focus-visible {
4505
+ outline: 2px solid var(--atomix-focus-border-color);
4506
+ outline-offset: 2px;
4507
+ box-shadow: 0 0 0 2px var(--atomix-focus-border-color);
4686
4508
  }
4687
- @keyframes chart-pie-draw {
4688
- 0% {
4689
- stroke-dasharray: 0 628;
4509
+ @media (prefers-contrast: high) {
4510
+ .c-chart {
4511
+ border-width: calc(var(--atomix-border-width) * 2);
4690
4512
  }
4691
- 100% {
4692
- stroke-dasharray: 628 628;
4513
+ .c-chart--selected {
4514
+ border-width: calc(var(--atomix-border-width) * 3);
4693
4515
  }
4694
- }
4695
- @keyframes chart-donut-draw {
4696
- 0% {
4697
- stroke-dasharray: 0 628;
4516
+ .c-chart__action {
4517
+ border-width: calc(var(--atomix-border-width) * 2);
4698
4518
  }
4699
- 100% {
4700
- stroke-dasharray: 628 628;
4519
+ .c-chart__action:focus-visible {
4520
+ outline-width: calc(var(--atomix-border-width) * 3);
4701
4521
  }
4702
- }
4703
- @keyframes chart-fade-in {
4704
- 0% {
4705
- opacity: 0;
4706
- transform: translateY(10px);
4522
+ .c-chart__data-point {
4523
+ stroke-width: 2;
4707
4524
  }
4708
- 100% {
4709
- opacity: 1;
4710
- transform: translateY(0);
4525
+ .c-chart__data-point--selected {
4526
+ stroke-width: 3;
4711
4527
  }
4712
- }
4713
- @keyframes chart-scale-in {
4714
- 0% {
4715
- opacity: 0;
4716
- transform: scale(0.3);
4528
+ .c-chart__grid {
4529
+ stroke-width: 1;
4530
+ opacity: 0.6;
4717
4531
  }
4718
- 60% {
4532
+ .c-chart__grid--major {
4533
+ stroke-width: 1.5;
4719
4534
  opacity: 0.8;
4720
- transform: scale(1.1);
4721
- }
4722
- 100% {
4723
- opacity: 1;
4724
- transform: scale(1);
4725
- }
4726
- }
4727
- @keyframes chart-slide-in {
4728
- 0% {
4729
- opacity: 0;
4730
- transform: translateX(-20px);
4731
4535
  }
4732
- 100% {
4536
+ .c-chart__grid--zero {
4537
+ stroke-width: 2;
4733
4538
  opacity: 1;
4734
- transform: translateX(0);
4735
- }
4736
- }
4737
- @keyframes chart-bubble-grow {
4738
- 0% {
4739
- transform: scale(0);
4740
4539
  }
4741
- 100% {
4742
- transform: scale(1);
4540
+ .c-chart__treemap-node {
4541
+ stroke-width: 2;
4743
4542
  }
4744
- }
4745
- @keyframes chart-dash-flow {
4746
- 0% {
4747
- stroke-dashoffset: 0;
4543
+ .c-chart__treemap-node--selected {
4544
+ stroke-width: 3;
4748
4545
  }
4749
- 100% {
4750
- stroke-dashoffset: 10;
4546
+ .c-chart__treemap-node:focus-visible {
4547
+ outline-width: calc(var(--atomix-border-width) * 3);
4751
4548
  }
4752
- }
4753
- @keyframes chart-glow {
4754
- 0%, 100% {
4755
- filter: drop-shadow(0 0 5px currentColor);
4549
+ .c-chart__funnel-segment {
4550
+ stroke-width: 2;
4756
4551
  }
4757
- 50% {
4758
- filter: drop-shadow(0 0 15px currentColor);
4552
+ .c-chart__funnel-segment:focus-visible {
4553
+ outline-width: calc(var(--atomix-border-width) * 3);
4759
4554
  }
4760
- }
4761
- @keyframes chart-pulse-dot {
4762
- 0%, 100% {
4763
- opacity: 1;
4764
- transform: scale(1);
4555
+ .c-chart__heatmap-cell {
4556
+ stroke-width: 2;
4765
4557
  }
4766
- 50% {
4767
- opacity: 0.5;
4768
- transform: scale(1.2);
4558
+ .c-chart__heatmap-cell--hovered {
4559
+ stroke-width: 3;
4769
4560
  }
4770
- }
4771
- @keyframes chart-zoom-in {
4772
- 0% {
4773
- transform: scale(0.8);
4774
- opacity: 0;
4561
+ .c-chart__heatmap-cell:focus-visible {
4562
+ outline-width: calc(var(--atomix-border-width) * 3);
4775
4563
  }
4776
- 100% {
4777
- transform: scale(1);
4778
- opacity: 1;
4564
+ .c-chart__candlestick-candle {
4565
+ stroke-width: 2;
4779
4566
  }
4780
- }
4781
- @keyframes chart-slide-up {
4782
- 0% {
4783
- transform: translateY(20px);
4784
- opacity: 0;
4567
+ .c-chart__candlestick-candle:focus-visible {
4568
+ outline-width: calc(var(--atomix-border-width) * 3);
4785
4569
  }
4786
- 100% {
4787
- transform: translateY(0);
4570
+ .c-chart__candlestick-wick {
4571
+ stroke-width: 2;
4788
4572
  opacity: 1;
4789
4573
  }
4790
4574
  }
4791
- @media (max-width: 768px) {
4575
+ @media (prefers-reduced-motion: reduce) {
4792
4576
  .c-chart {
4793
- --atomix-chart-min-height: 10rem;
4794
- border-radius: 0.5rem;
4577
+ transition: none;
4578
+ animation: none;
4795
4579
  }
4796
- .c-chart__header {
4797
- flex-direction: column;
4798
- align-items: flex-start;
4799
- gap: 0.5rem;
4580
+ .c-chart::before, .c-chart::after {
4581
+ animation: none;
4582
+ transition: none;
4800
4583
  }
4801
- .c-chart__toolbar {
4802
- width: 100%;
4803
- justify-content: flex-end;
4804
- padding: 0.5rem;
4805
- gap: 0.5rem;
4584
+ .c-chart--elevated {
4585
+ transform: none;
4806
4586
  }
4807
- }
4808
- @media (max-width: 768px) and (max-width: 480px) {
4809
- .c-chart__toolbar {
4810
- flex-wrap: wrap;
4811
- justify-content: center;
4587
+ .c-chart--elevated:hover {
4588
+ transform: none;
4812
4589
  }
4813
- }
4814
- @media (max-width: 768px) {
4815
- .c-chart__action {
4816
- width: 2.25rem;
4817
- height: 2.25rem;
4590
+ .c-chart--clickable {
4591
+ transition: none;
4818
4592
  }
4819
- .c-chart__action svg {
4820
- width: 1.125rem;
4821
- height: 1.125rem;
4593
+ .c-chart--clickable:hover {
4594
+ transform: none;
4822
4595
  }
4823
- .c-chart__export-dropdown {
4824
- position: fixed;
4825
- top: 50%;
4826
- left: 50%;
4827
- transform: translate(-50%, -50%);
4828
- margin-top: 0;
4829
- min-width: 12.5rem;
4830
- max-width: 90vw;
4831
- }
4832
- .c-chart__legend {
4833
- flex-direction: column;
4834
- gap: 0.5rem;
4596
+ .c-chart--clickable:active {
4597
+ transform: none;
4835
4598
  }
4836
- .c-chart__legend-item {
4837
- justify-content: space-between;
4838
- width: 100%;
4599
+ .c-chart__action {
4600
+ transition: none;
4839
4601
  }
4840
- .c-chart:hover {
4602
+ .c-chart__action:hover {
4841
4603
  transform: none;
4842
4604
  }
4843
- }
4844
- @media (max-width: 480px) {
4845
- .c-chart {
4846
- --atomix-chart-min-height: 9rem;
4847
- --atomix-chart-padding: 0.5rem;
4848
- border-radius: 0.25rem;
4605
+ .c-chart__action svg {
4606
+ transition: none;
4849
4607
  }
4850
- .c-chart__title {
4851
- font-size: 1.125rem;
4852
- margin-bottom: 0.25rem;
4608
+ .c-chart__action svg:hover {
4609
+ transform: none;
4853
4610
  }
4854
- .c-chart__subtitle {
4855
- font-size: 0.75rem;
4611
+ .c-chart__data-point {
4612
+ transition: none;
4856
4613
  }
4857
- .c-chart__toolbar {
4858
- padding: 0.25rem;
4859
- gap: 0.25rem;
4860
- border-radius: 0.25rem;
4614
+ .c-chart__data-point--hovered {
4615
+ transform: none;
4861
4616
  }
4862
- .c-chart__action {
4863
- width: 1.75rem;
4864
- height: 1.75rem;
4865
- font-size: 0.75rem;
4617
+ .c-chart__treemap-node {
4618
+ transition: none;
4866
4619
  }
4867
- .c-chart__action svg {
4868
- width: 0.875rem;
4869
- height: 0.875rem;
4620
+ .c-chart__treemap-node:hover {
4621
+ transform: none;
4870
4622
  }
4871
- .c-chart__export-option {
4872
- padding: 0.25rem 0.5rem;
4873
- font-size: 0.6875rem;
4623
+ .c-chart__treemap-node--hovered {
4624
+ transform: none;
4874
4625
  }
4875
- }
4876
- @media (prefers-reduced-motion: reduce) {
4877
- .c-chart {
4626
+ .c-chart__funnel-segment {
4878
4627
  transition: none;
4879
4628
  }
4880
- .c-chart:hover {
4629
+ .c-chart__funnel-segment:hover {
4881
4630
  transform: none;
4882
4631
  }
4883
- .c-chart * {
4884
- animation-duration: 0.01s !important;
4885
- transition-duration: 0.01s !important;
4886
- }
4887
- .c-chart__real-time-indicator::before {
4888
- animation: none;
4632
+ .c-chart__heatmap-cell {
4633
+ transition: none;
4889
4634
  }
4890
- }
4891
- .c-chart:focus-within .c-chart__data-point:focus {
4892
- outline: 2px solid var(--atomix-primary-6);
4893
- outline-offset: 2px;
4894
- z-index: 10;
4895
- }
4896
- .c-chart:focus-within__canvas svg {
4897
- outline: 2px solid var(--atomix-primary-border-subtle);
4898
- outline-offset: 2px;
4899
- }
4900
- @media (prefers-contrast: high) {
4901
- .c-chart {
4902
- border-width: 2px;
4903
- background-color: white;
4904
- color: black;
4905
- -webkit-backdrop-filter: none;
4906
- backdrop-filter: none;
4635
+ .c-chart__heatmap-cell:hover {
4636
+ transform: none;
4907
4637
  }
4908
- .c-chart__grid {
4909
- stroke-width: 2;
4910
- opacity: 0.8;
4911
- stroke: black;
4638
+ .c-chart__heatmap-cell--hovered {
4639
+ transform: none;
4912
4640
  }
4913
- .c-chart__title {
4914
- color: black;
4641
+ .c-chart__candlestick-candle {
4642
+ transition: none;
4915
4643
  }
4916
- .c-chart__data-point {
4917
- stroke: black;
4918
- stroke-width: 2;
4644
+ .c-chart__candlestick-candle:hover {
4645
+ transform: none;
4919
4646
  }
4920
- .c-chart__crosshair line {
4921
- stroke: black;
4922
- opacity: 1;
4647
+ .c-chart__candlestick-wick {
4648
+ transition: none;
4923
4649
  }
4924
- .c-chart__zoom-indicator {
4925
- background: black;
4926
- color: white;
4927
- border: 2px solid white;
4650
+ .c-chart__candlestick-volume {
4651
+ transition: none;
4928
4652
  }
4929
- .c-chart .line-path {
4930
- stroke-width: 3 !important;
4653
+ .c-chart__empty {
4654
+ animation: none;
4931
4655
  }
4932
- .c-chart .bar {
4933
- stroke: black;
4934
- stroke-width: 2;
4656
+ .c-chart--loading .c-chart__content::after {
4657
+ animation: none;
4935
4658
  }
4936
- }
4937
- @media print {
4938
- .c-chart {
4939
- page-break-inside: avoid;
4940
- -moz-column-break-inside: avoid;
4941
- break-inside: avoid;
4942
- box-shadow: none;
4943
- border: 2px solid black;
4944
- background: white;
4659
+ .c-chart__waterfall-bar--animated {
4660
+ animation: none;
4945
4661
  }
4946
- .c-chart__toolbar {
4947
- display: none;
4662
+ .c-chart__canvas svg {
4663
+ animation: none;
4664
+ opacity: 1;
4948
4665
  }
4949
- .c-chart__crosshair, .c-chart__zoom-indicator, .c-chart__real-time-indicator {
4950
- display: none;
4666
+ }
4667
+ @keyframes chart-bar-appear {
4668
+ 0% {
4669
+ opacity: 0;
4670
+ transform: scaleY(0);
4951
4671
  }
4952
- .c-chart * {
4953
- animation: none !important;
4954
- transition: none !important;
4672
+ 100% {
4673
+ opacity: 1;
4674
+ transform: scaleY(1);
4955
4675
  }
4956
4676
  }
4957
4677
  .c-checkbox-group {
@@ -5331,20 +5051,27 @@ a, a:hover {
5331
5051
  display: flex;
5332
5052
  opacity: 0;
5333
5053
  visibility: hidden;
5334
- transform-origin: top center;
5335
5054
  transition: opacity var(--atomix-dropdown-animation-duration) var(--atomix-dropdown-animation-timing), visibility var(--atomix-dropdown-animation-duration) var(--atomix-dropdown-animation-timing), transform var(--atomix-dropdown-animation-duration) var(--atomix-dropdown-animation-timing);
5336
- transform: translateY(-15px) scale(0.95);
5337
5055
  pointer-events: none;
5056
+ }
5057
+ .c-dropdown__menu-wrapper:not(.is-glass) {
5338
5058
  will-change: transform, opacity, visibility;
5059
+ transform: translateY(-15px) scale(0.95);
5060
+ transform-origin: top center;
5339
5061
  }
5340
- .c-dropdown__menu-wrapper.is-open {
5062
+ .c-dropdown__menu-wrapper.is-open:not(.is-glass) {
5341
5063
  opacity: 1;
5342
5064
  transform: translateY(0) scale(1);
5343
5065
  visibility: visible;
5344
5066
  animation: atomix-dropdown-fade-in var(--atomix-dropdown-animation-duration) var(--atomix-dropdown-animation-timing) forwards;
5345
5067
  pointer-events: auto;
5346
5068
  }
5347
- .c-dropdown__menu-wrapper:not(.is-open) {
5069
+ .c-dropdown__menu-wrapper.is-open.is-glass {
5070
+ opacity: 1;
5071
+ visibility: visible;
5072
+ pointer-events: auto;
5073
+ }
5074
+ .c-dropdown__menu-wrapper:not(.is-open):not(.is-glass) {
5348
5075
  animation: atomix-dropdown-fade-out var(--atomix-dropdown-animation-duration) var(--atomix-dropdown-animation-timing) forwards;
5349
5076
  }
5350
5077
  .c-dropdown__menu-wrapper--bottom-start {
@@ -5524,7 +5251,7 @@ a, a:hover {
5524
5251
  --atomix-edge-panel-bg: var(--atomix-body-bg);
5525
5252
  --atomix-edge-panel-color: var(--atomix-body-color);
5526
5253
  --atomix-edge-panel-shadow: var(--atomix-box-shadow);
5527
- --atomix-edge-panel-backdrop-bg: var(--atomix-invert-bg-subtle);
5254
+ --atomix-edge-panel-backdrop-bg: var(--atomix-dark-bg-subtle);
5528
5255
  --atomix-edge-panel-backdrop-opacity: 0.5;
5529
5256
  --atomix-edge-panel-backdrop-blur: 10px;
5530
5257
  --atomix-edge-panel-animation-duration: 300ms;
@@ -5778,26 +5505,128 @@ a, a:hover {
5778
5505
  transform: translateY(100%);
5779
5506
  }
5780
5507
  }
5508
+ .c-edge-panel--glass {
5509
+ position: absolute;
5510
+ z-index: auto;
5511
+ z-index: initial;
5512
+ }
5513
+ .c-edge-panel--glass .c-edge-panel__container {
5514
+ background: transparent;
5515
+ box-shadow: none;
5516
+ overflow: hidden;
5517
+ border: none;
5518
+ padding: 0;
5519
+ z-index: auto;
5520
+ z-index: initial;
5521
+ will-change: initial;
5522
+ transform: none !important;
5523
+ border-radius: inherit;
5524
+ opacity: 0;
5525
+ transition: opacity 0.3s ease;
5526
+ }
5527
+ .c-edge-panel--glass .c-edge-panel__glass-content {
5528
+ display: flex;
5529
+ flex-direction: column;
5530
+ overflow: hidden;
5531
+ width: 100%;
5532
+ height: 100vh;
5533
+ padding: 0;
5534
+ border-radius: inherit;
5535
+ transition: opacity 0.3s ease;
5536
+ }
5537
+ .c-edge-panel--glass .c-edge-panel__header {
5538
+ background: transparent;
5539
+ border-bottom: 1px solid rgba(255, 255, 255, 0.15);
5540
+ flex-shrink: 0;
5541
+ padding: var(--atomix-edge-panel-padding-y) var(--atomix-edge-panel-padding-x);
5542
+ }
5543
+ .c-edge-panel--glass .c-edge-panel__body {
5544
+ background: transparent;
5545
+ flex: 1 1;
5546
+ overflow-y: auto;
5547
+ padding: var(--atomix-edge-panel-padding-y) var(--atomix-edge-panel-padding-x);
5548
+ }
5549
+ .c-edge-panel--glass .c-edge-panel__close {
5550
+ background: rgba(255, 255, 255, 0.05);
5551
+ }
5552
+ .c-edge-panel--glass .c-edge-panel__close:hover {
5553
+ background: rgba(255, 255, 255, 0.15);
5554
+ }
5555
+ .c-edge-panel--glass .c-edge-panel__close:focus-visible {
5556
+ outline-color: rgba(255, 255, 255, 0.5);
5557
+ }
5558
+ .c-edge-panel--glass .c-edge-panel__backdrop {
5559
+ animation: fadeIn 0.3s ease forwards;
5560
+ z-index: 0;
5561
+ }
5562
+ .c-edge-panel--glass .c-edge-panel__backdrop.is-animating-out {
5563
+ animation: fadeOut 0.3s ease forwards;
5564
+ }
5565
+ .c-edge-panel--glass.c-edge-panel--start .c-edge-panel__glass-wrapper {
5566
+ animation: slideInStart 0.3s ease forwards;
5567
+ }
5568
+ .c-edge-panel--glass.c-edge-panel--start .c-edge-panel__glass-wrapper.is-animating-out {
5569
+ animation: slideOutStart 0.3s ease forwards;
5570
+ }
5571
+ .c-edge-panel--glass.c-edge-panel--end .c-edge-panel__glass-wrapper {
5572
+ animation: slideInEnd 0.3s ease forwards;
5573
+ }
5574
+ .c-edge-panel--glass.c-edge-panel--end .c-edge-panel__glass-wrapper.is-animating-out {
5575
+ animation: slideOutEnd 0.3s ease forwards;
5576
+ }
5577
+ .c-edge-panel--glass.c-edge-panel--top .c-edge-panel__glass-wrapper {
5578
+ animation: slideInTop 0.3s ease forwards;
5579
+ }
5580
+ .c-edge-panel--glass.c-edge-panel--bottom .c-edge-panel__glass-wrapper {
5581
+ animation: slideInBottom 0.3s ease forwards;
5582
+ }
5583
+ .c-edge-panel--glass.c-edge-panel--bottom .c-edge-panel__container, .c-edge-panel--glass.c-edge-panel--top .c-edge-panel__container {
5584
+ width: 100vw;
5585
+ height: auto;
5586
+ }
5587
+ .c-edge-panel--glass.c-edge-panel--bottom .c-edge-panel__glass-content, .c-edge-panel--glass.c-edge-panel--top .c-edge-panel__glass-content {
5588
+ width: 100vw;
5589
+ height: auto;
5590
+ }
5781
5591
  .c-footer {
5782
5592
  --atomix-footer-padding-x: 1rem;
5783
5593
  --atomix-footer-padding-y: 3rem;
5784
5594
  --atomix-footer-container-max-width: 1200px;
5785
- --atomix-footer-bg: var(--atomix-surface);
5786
- --atomix-footer-color: var(--atomix-text);
5595
+ --atomix-footer-bg: var(--atomix-primary-bg);
5596
+ --atomix-footer-color: var(--atomix-primary-text-emphasis);
5787
5597
  --atomix-footer-border-width: 1px;
5788
- --atomix-footer-border-color: var(--atomix-border);
5598
+ --atomix-footer-border-color: var(--atomix-primary-border-subtle);
5789
5599
  --atomix-footer-brand-margin-bottom: 1.5rem;
5790
5600
  --atomix-footer-section-margin-bottom: 2rem;
5791
5601
  --atomix-footer-social-gap: 0.75rem;
5792
5602
  --atomix-footer-newsletter-padding: 1.5rem;
5793
5603
  --atomix-footer-bottom-padding-top: 1.5rem;
5794
5604
  --atomix-footer-bottom-margin-top: 2rem;
5605
+ --atomix-footer-brand-logo-margin-bottom: 1rem;
5606
+ --atomix-footer-brand-logo-hover-opacity: 0.8;
5607
+ --atomix-footer-section-header-gap: 0.5rem;
5608
+ --atomix-footer-section-toggle-padding: 0.75rem 0;
5609
+ --atomix-footer-bg-rgb: var(--atomix-primary-bg);
5610
+ --atomix-disabled-opacity: 0.6;
5795
5611
  background-color: var(--atomix-footer-bg);
5796
5612
  color: var(--atomix-footer-color);
5797
5613
  border-top: var(--atomix-footer-border-width) solid var(--atomix-footer-border-color);
5798
5614
  padding: var(--atomix-footer-padding-y) 0;
5799
5615
  position: relative;
5800
5616
  }
5617
+ .c-footer--glass {
5618
+ padding: 0;
5619
+ margin: 0;
5620
+ border-radius: 0;
5621
+ box-shadow: none;
5622
+ background: transparent;
5623
+ }
5624
+ .c-footer--glass .c-footer__glass {
5625
+ background-color: rgba(var(--atomix-footer-bg-rgb), 0.5, true);
5626
+ color: var(--atomix-footer-color);
5627
+ border-top: var(--atomix-footer-border-width) solid var(--atomix-footer-border-color);
5628
+ padding: var(--atomix-footer-padding-y) 0;
5629
+ }
5801
5630
  .c-footer__container {
5802
5631
  display: flex;
5803
5632
  flex-direction: column;
@@ -5807,28 +5636,42 @@ a, a:hover {
5807
5636
  padding: 0 var(--atomix-footer-padding-x);
5808
5637
  }
5809
5638
  .c-footer__sections {
5810
- display: grid;
5811
- grid-gap: var(--atomix-footer-section-margin-bottom);
5812
- gap: var(--atomix-footer-section-margin-bottom);
5813
5639
  margin-bottom: var(--atomix-footer-bottom-margin-top);
5814
- grid-template-columns: 1fr;
5640
+ width: 100%;
5641
+ max-width: var(--atomix-footer-container-max-width);
5642
+ margin-left: auto;
5643
+ margin-right: auto;
5815
5644
  }
5816
- @media (min-width: 768px) {
5817
- .c-footer__sections {
5818
- grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
5819
- gap: clamp(2rem, 4vw, 3rem);
5820
- }
5645
+ .c-footer__sections--centered {
5646
+ justify-content: center;
5647
+ align-items: center;
5648
+ }
5649
+ .c-footer__sections--stacked {
5650
+ display: flex;
5651
+ flex-direction: column;
5652
+ align-items: center;
5653
+ text-align: center;
5654
+ gap: clamp(1.5rem, 4vw, 2.5rem);
5655
+ max-width: 600px;
5656
+ margin-left: auto;
5657
+ margin-right: auto;
5821
5658
  }
5822
5659
  .c-footer__brand {
5660
+ grid-area: brand;
5823
5661
  margin-bottom: var(--atomix-footer-brand-margin-bottom);
5824
5662
  }
5663
+ @media (min-width: 768px) {
5664
+ .c-footer__brand {
5665
+ margin-bottom: 0;
5666
+ }
5667
+ }
5825
5668
  .c-footer__brand-logo {
5826
5669
  display: inline-block;
5827
- margin-bottom: 1rem;
5670
+ margin-bottom: var(--atomix-footer-brand-logo-margin-bottom);
5828
5671
  transition: opacity 0.2s ease;
5829
5672
  }
5830
5673
  .c-footer__brand-logo:hover {
5831
- opacity: 0.8;
5674
+ opacity: var(--atomix-footer-brand-logo-hover-opacity);
5832
5675
  }
5833
5676
  .c-footer__brand-logo img {
5834
5677
  max-width: 200px;
@@ -5841,18 +5684,23 @@ a, a:hover {
5841
5684
  margin: 0;
5842
5685
  font-size: clamp(1.25rem, 2.5vw, 1.5rem);
5843
5686
  font-weight: 600;
5844
- color: var(--atomix-text-emphasis);
5687
+ color: var(--atomix-primary-text-emphasis);
5845
5688
  line-height: 1.2;
5846
5689
  }
5847
5690
  .c-footer__brand-description {
5848
5691
  margin-top: 0.5rem;
5849
5692
  font-size: 0.875rem;
5850
- color: var(--atomix-text-muted);
5693
+ color: var(--atomix-secondary-text-emphasis);
5851
5694
  line-height: 1.6;
5852
5695
  max-width: 35ch;
5853
5696
  }
5854
5697
  .c-footer__section {
5855
- margin-bottom: var(--atomix-footer-section-margin-bottom);
5698
+ margin-bottom: 0;
5699
+ }
5700
+ @media (max-width: 575.98px) {
5701
+ .c-footer__section {
5702
+ margin-bottom: var(--atomix-footer-section-margin-bottom);
5703
+ }
5856
5704
  }
5857
5705
  .c-footer__section-header {
5858
5706
  margin-bottom: 1rem;
@@ -5860,14 +5708,14 @@ a, a:hover {
5860
5708
  .c-footer__section-header-content {
5861
5709
  display: flex;
5862
5710
  align-items: center;
5863
- gap: 0.5rem;
5711
+ gap: var(--atomix-footer-section-header-gap);
5864
5712
  }
5865
5713
  .c-footer__section-toggle {
5866
5714
  display: flex;
5867
5715
  align-items: center;
5868
5716
  justify-content: space-between;
5869
5717
  width: 100%;
5870
- padding: 0.75rem 0;
5718
+ padding: var(--atomix-footer-section-toggle-padding);
5871
5719
  background: none;
5872
5720
  border: none;
5873
5721
  cursor: pointer;
@@ -5886,9 +5734,10 @@ a, a:hover {
5886
5734
  }
5887
5735
  .c-footer__section-title {
5888
5736
  margin: 0;
5737
+ width: 100%;
5889
5738
  font-size: 1.125rem;
5890
5739
  font-weight: 600;
5891
- color: var(--atomix-text-emphasis);
5740
+ color: var(--atomix-primary-text-emphasis);
5892
5741
  line-height: 1.3;
5893
5742
  }
5894
5743
  .c-footer__section-icon {
@@ -5900,7 +5749,7 @@ a, a:hover {
5900
5749
  .c-footer__section-chevron {
5901
5750
  font-size: 0.875rem;
5902
5751
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
5903
- color: var(--atomix-text-muted);
5752
+ color: var(--atomix-gray-6);
5904
5753
  }
5905
5754
  .c-footer__section-content {
5906
5755
  display: flex;
@@ -5935,9 +5784,9 @@ a, a:hover {
5935
5784
  align-items: center;
5936
5785
  gap: 0.5rem;
5937
5786
  padding: 0.25rem 0;
5938
- color: var(--atomix-text);
5787
+ color: var(--atomix-primary-text-emphasis);
5939
5788
  text-decoration: none;
5940
- transition: color 0.15s ease-in-out;
5789
+ transition: all 0.15s ease-in-out;
5941
5790
  border-radius: 0.25rem;
5942
5791
  position: relative;
5943
5792
  }
@@ -5953,7 +5802,7 @@ a, a:hover {
5953
5802
  }
5954
5803
  .c-footer__link:hover, .c-footer__link:focus {
5955
5804
  color: var(--atomix-primary);
5956
- text-decoration: underline;
5805
+ text-decoration: none;
5957
5806
  }
5958
5807
  .c-footer__link:hover::before, .c-footer__link:focus::before {
5959
5808
  width: 100%;
@@ -5970,10 +5819,10 @@ a, a:hover {
5970
5819
  width: 100%;
5971
5820
  }
5972
5821
  .c-footer__link--disabled {
5973
- color: var(--atomix-text-disabled);
5822
+ color: var(--atomix-disabled-text-emphasis);
5974
5823
  cursor: not-allowed;
5975
5824
  pointer-events: none;
5976
- opacity: 0.6;
5825
+ opacity: var(--atomix-disabled-opacity);
5977
5826
  }
5978
5827
  .c-footer__link-icon {
5979
5828
  display: flex;
@@ -6004,11 +5853,11 @@ a, a:hover {
6004
5853
  justify-content: center;
6005
5854
  width: 2.5rem;
6006
5855
  height: 2.5rem;
6007
- background-color: var(--atomix-surface-variant);
6008
- color: var(--atomix-text);
5856
+ background-color: var(--atomix-secondary-bg-subtle);
5857
+ color: var(--atomix-primary-text-emphasis);
6009
5858
  border-radius: 50%;
6010
5859
  text-decoration: none;
6011
- transition: all 0.15s ease-in-out;
5860
+ transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
6012
5861
  position: relative;
6013
5862
  overflow: hidden;
6014
5863
  }
@@ -6022,7 +5871,7 @@ a, a:hover {
6022
5871
  }
6023
5872
  .c-footer__social-link:hover, .c-footer__social-link:focus {
6024
5873
  background-color: var(--atomix-primary);
6025
- color: var(--atomix-primary-contrast);
5874
+ color: var(--atomix-component-active-color);
6026
5875
  transform: translateY(-3px) scale(1.05);
6027
5876
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
6028
5877
  }
@@ -6042,7 +5891,7 @@ a, a:hover {
6042
5891
  height: 3rem;
6043
5892
  }
6044
5893
  .c-footer__social-link--disabled {
6045
- opacity: 0.5;
5894
+ opacity: var(--atomix-disabled-opacity);
6046
5895
  cursor: not-allowed;
6047
5896
  pointer-events: none;
6048
5897
  }
@@ -6089,7 +5938,7 @@ a, a:hover {
6089
5938
  background: linear-gradient(135deg, #25d366, #66bb6a);
6090
5939
  }
6091
5940
  .c-footer__newsletter {
6092
- background-color: linear-gradient(135deg, var(--atomix-surface-variant), rgba(var(--atomix-surface-variant), 0.8));
5941
+ background-color: linear-gradient(135deg, var(--atomix-secondary-bg-subtle), rgba(var(--atomix-secondary-bg-subtle), 0.8));
6093
5942
  padding: 1.5rem;
6094
5943
  border-radius: 0.5rem;
6095
5944
  border: 1px solid var(--atomix-border-subtle);
@@ -6109,20 +5958,24 @@ a, a:hover {
6109
5958
  margin: 0 0 0.5rem 0;
6110
5959
  font-size: clamp(1.125rem, 2vw, 1.125rem);
6111
5960
  font-weight: 600;
6112
- color: var(--atomix-text-emphasis);
5961
+ color: var(--atomix-primary-text-emphasis);
6113
5962
  line-height: 1.3;
6114
5963
  }
6115
5964
  .c-footer__newsletter-description {
6116
5965
  margin: 0 0 1rem 0;
6117
5966
  font-size: 0.875rem;
6118
- color: var(--atomix-text-muted);
5967
+ color: var(--atomix-secondary-text-emphasis);
6119
5968
  line-height: 1.6;
6120
5969
  max-width: 45ch;
5970
+ width: 100%;
5971
+ box-sizing: border-box;
6121
5972
  }
6122
5973
  .c-footer__newsletter-form {
6123
5974
  display: flex;
6124
5975
  gap: 0.75rem;
6125
5976
  align-items: flex-end;
5977
+ width: 100%;
5978
+ max-width: 100%;
6126
5979
  }
6127
5980
  @media (max-width: 575.98px) {
6128
5981
  .c-footer__newsletter-form {
@@ -6145,12 +5998,13 @@ a, a:hover {
6145
5998
  flex: 1 1;
6146
5999
  padding: 0.75rem 1rem;
6147
6000
  font-size: 0.875rem;
6148
- background-color: var(--atomix-surface);
6149
- color: var(--atomix-text);
6150
- border: 1px solid var(--atomix-border);
6001
+ background-color: var(--atomix-primary-bg-subtle);
6002
+ color: var(--atomix-primary-text-emphasis);
6003
+ border: 1px solid var(--atomix-primary-border);
6151
6004
  border-radius: 0.375rem;
6152
6005
  outline: none;
6153
6006
  transition: all 0.3s ease;
6007
+ box-sizing: border-box;
6154
6008
  }
6155
6009
  .c-footer__newsletter-input:focus {
6156
6010
  border-color: var(--atomix-primary);
@@ -6158,12 +6012,12 @@ a, a:hover {
6158
6012
  transform: translateY(-1px);
6159
6013
  }
6160
6014
  .c-footer__newsletter-input::-moz-placeholder {
6161
- color: var(--atomix-text-muted);
6015
+ color: var(--atomix-gray-6);
6162
6016
  -moz-transition: opacity 0.3s ease;
6163
6017
  transition: opacity 0.3s ease;
6164
6018
  }
6165
6019
  .c-footer__newsletter-input::placeholder {
6166
- color: var(--atomix-text-muted);
6020
+ color: var(--atomix-gray-6);
6167
6021
  transition: opacity 0.3s ease;
6168
6022
  }
6169
6023
  .c-footer__newsletter-input:focus::-moz-placeholder {
@@ -6174,13 +6028,13 @@ a, a:hover {
6174
6028
  }
6175
6029
  .c-footer__newsletter-button {
6176
6030
  padding: 0.75rem 1.5rem;
6177
- background-color: var(--atomix-primary);
6178
- color: var(--atomix-primary-contrast);
6031
+ background-color: var(--atomix-brand-bg-subtle);
6032
+ color: var(--atomix-brand-text-emphasis);
6179
6033
  border: none;
6180
6034
  border-radius: 0.375rem;
6181
6035
  font-weight: 500;
6182
6036
  cursor: pointer;
6183
- transition: background-color 0.15s ease-in-out;
6037
+ transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
6184
6038
  white-space: nowrap;
6185
6039
  position: relative;
6186
6040
  overflow: hidden;
@@ -6194,7 +6048,7 @@ a, a:hover {
6194
6048
  transition: transform 0.6s ease;
6195
6049
  }
6196
6050
  .c-footer__newsletter-button:hover, .c-footer__newsletter-button:focus {
6197
- background-color: var(--atomix-primary-hover);
6051
+ background-color: var(--atomix-secondary-bg-subtle);
6198
6052
  transform: translateY(-2px);
6199
6053
  box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
6200
6054
  }
@@ -6210,7 +6064,7 @@ a, a:hover {
6210
6064
  align-items: center;
6211
6065
  justify-content: space-between;
6212
6066
  padding-top: var(--atomix-footer-bottom-padding-top);
6213
- border-top: 1px solid var(--atomix-border);
6067
+ border-top: 1px solid var(--atomix-primary-border-subtle);
6214
6068
  position: relative;
6215
6069
  }
6216
6070
  @media (max-width: 575.98px) {
@@ -6222,7 +6076,7 @@ a, a:hover {
6222
6076
  }
6223
6077
  .c-footer__copyright {
6224
6078
  font-size: 0.875rem;
6225
- color: var(--atomix-text-muted);
6079
+ color: var(--atomix-tertiary-text-emphasis);
6226
6080
  line-height: 1.5;
6227
6081
  }
6228
6082
  .c-footer__copyright a {
@@ -6239,16 +6093,18 @@ a, a:hover {
6239
6093
  align-items: center;
6240
6094
  gap: 0.5rem;
6241
6095
  padding: 0.75rem 1.25rem;
6242
- background-color: var(--atomix-surface-variant);
6096
+ background-color: var(--atomix-secondary-bg);
6243
6097
  border: 1px solid var(--atomix-border-subtle);
6244
- color: var(--atomix-text);
6098
+ color: var(--atomix-primary-text-emphasis);
6245
6099
  font-size: 0.875rem;
6246
6100
  font-weight: 500;
6247
6101
  cursor: pointer;
6248
- transition: color 0.15s ease-in-out;
6102
+ transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
6249
6103
  border-radius: 2rem;
6250
6104
  position: relative;
6251
6105
  overflow: hidden;
6106
+ text-decoration: none;
6107
+ outline: none;
6252
6108
  }
6253
6109
  .c-footer__back-to-top::before {
6254
6110
  content: "";
@@ -6256,14 +6112,14 @@ a, a:hover {
6256
6112
  inset: 0;
6257
6113
  background: linear-gradient(45deg, transparent 30%, rgba(255, 255, 255, 0.1) 50%, transparent 70%);
6258
6114
  transform: translateX(-100%);
6259
- transition: transform 0.6s ease;
6115
+ transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
6260
6116
  }
6261
6117
  .c-footer__back-to-top:hover, .c-footer__back-to-top:focus {
6262
- color: var(--atomix-primary);
6118
+ color: var(--atomix-secondary-text-emphasis);
6263
6119
  background-color: var(--atomix-primary);
6264
6120
  border-color: var(--atomix-primary);
6265
- transform: translateY(-2px);
6266
- box-shadow: 0 8px 25px rgba(0, 0, 0, 0.15);
6121
+ transform: translateY(-3px);
6122
+ box-shadow: 0 6px 16px rgba(0, 0, 0, 0.12);
6267
6123
  }
6268
6124
  .c-footer__back-to-top:hover::before, .c-footer__back-to-top:focus::before {
6269
6125
  transform: translateX(100%);
@@ -6271,6 +6127,10 @@ a, a:hover {
6271
6127
  .c-footer__back-to-top:hover .c-footer__back-to-top-icon, .c-footer__back-to-top:focus .c-footer__back-to-top-icon {
6272
6128
  transform: translateY(-2px);
6273
6129
  }
6130
+ .c-footer__back-to-top:active {
6131
+ transform: translateY(-1px);
6132
+ box-shadow: 0 3px 8px rgba(0, 0, 0, 0.15);
6133
+ }
6274
6134
  .c-footer__back-to-top:focus-visible {
6275
6135
  outline: 2px solid var(--atomix-primary);
6276
6136
  outline-offset: 2px;
@@ -6278,7 +6138,7 @@ a, a:hover {
6278
6138
  .c-footer__back-to-top-icon {
6279
6139
  font-size: 1.25em;
6280
6140
  font-weight: bold;
6281
- transition: transform 0.3s ease;
6141
+ transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
6282
6142
  }
6283
6143
  @media (max-width: 575.98px) {
6284
6144
  .c-footer__back-to-top-text {
@@ -6289,30 +6149,12 @@ a, a:hover {
6289
6149
  margin: 2rem 0;
6290
6150
  border: none;
6291
6151
  height: 1px;
6292
- background: linear-gradient(90deg, transparent, 1px solid var(--atomix-border), transparent);
6152
+ background: linear-gradient(90deg, transparent, 1px solid var(--atomix-primary-border-subtle), transparent);
6293
6153
  opacity: 0.5;
6294
6154
  }
6295
- @media (min-width: 768px) {
6296
- .c-footer--columns .c-footer__sections {
6297
- display: grid;
6298
- grid-template-columns: minmax(300px, 1fr) 2fr minmax(250px, 1fr);
6299
- grid-gap: clamp(2rem, 5vw, 4rem);
6300
- gap: clamp(2rem, 5vw, 4rem);
6301
- align-items: start;
6302
- }
6303
- }
6304
- @media (min-width: 992px) {
6305
- .c-footer--columns .c-footer__sections {
6306
- grid-template-columns: minmax(350px, 1fr) 3fr minmax(300px, 1fr);
6307
- }
6308
- }
6309
6155
  .c-footer--centered {
6310
6156
  text-align: center;
6311
6157
  }
6312
- .c-footer--centered .c-footer__sections {
6313
- justify-content: center;
6314
- align-items: center;
6315
- }
6316
6158
  .c-footer--centered .c-footer__social {
6317
6159
  justify-content: center;
6318
6160
  }
@@ -6322,13 +6164,14 @@ a, a:hover {
6322
6164
  }
6323
6165
  .c-footer--minimal {
6324
6166
  --atomix-footer-padding-y: 2rem;
6167
+ --atomix-footer-social-gap: 0.75;
6325
6168
  }
6326
6169
  .c-footer--minimal .c-footer__sections {
6327
6170
  margin-bottom: 1rem;
6328
6171
  gap: 1.5rem;
6329
6172
  }
6330
6173
  .c-footer--minimal .c-footer__section {
6331
- margin-bottom: 1rem;
6174
+ margin-bottom: 0;
6332
6175
  }
6333
6176
  .c-footer--minimal .c-footer__newsletter {
6334
6177
  padding: 1.5rem;
@@ -6343,15 +6186,26 @@ a, a:hover {
6343
6186
  margin-left: auto;
6344
6187
  margin-right: auto;
6345
6188
  }
6189
+ .c-footer--flexible .c-footer__section-col {
6190
+ flex: 1 1 auto;
6191
+ min-width: 250px;
6192
+ }
6193
+ .c-footer--sidebar .c-footer__sections--columns {
6194
+ align-items: flex-start;
6195
+ }
6196
+ .c-footer--wide .c-footer__sections {
6197
+ max-width: 100%;
6198
+ padding: 0 1rem;
6199
+ }
6346
6200
  .c-footer--sm {
6347
6201
  --atomix-footer-padding-y: 2rem;
6348
6202
  --atomix-footer-section-margin-bottom: 1.5rem;
6349
- --atomix-footer-brand-margin-bottom: 1rem;
6350
6203
  --atomix-footer-social-gap: 0.75rem;
6351
6204
  }
6352
6205
  .c-footer--md {
6353
6206
  --atomix-footer-padding-y: 3rem;
6354
6207
  --atomix-footer-section-margin-bottom: 2rem;
6208
+ --atomix-footer-social-gap: 1rem;
6355
6209
  }
6356
6210
  .c-footer--lg {
6357
6211
  --atomix-footer-padding-y: 4rem;
@@ -6365,7 +6219,7 @@ a, a:hover {
6365
6219
  .c-footer--primary {
6366
6220
  --atomix-footer-bg: var(--atomix-primary-bg-subtle);
6367
6221
  --atomix-footer-border-color: var(--atomix-primary-border-subtle);
6368
- --atomix-footer-color: var(--atomix-primary-text);
6222
+ --atomix-footer-color: var(--atomix-primary-text-emphasis);
6369
6223
  }
6370
6224
  .c-footer--primary .c-footer__brand-name h3,
6371
6225
  .c-footer--primary .c-footer__section-title {
@@ -6373,10 +6227,10 @@ a, a:hover {
6373
6227
  }
6374
6228
  .c-footer--primary .c-footer__brand-description,
6375
6229
  .c-footer--primary .c-footer__copyright {
6376
- color: var(--atomix-primary-text-muted);
6230
+ color: var(--atomix-gray-6);
6377
6231
  }
6378
6232
  .c-footer--primary .c-footer__link {
6379
- color: var(--atomix-primary-text);
6233
+ color: var(--atomix-primary-text-emphasis);
6380
6234
  }
6381
6235
  .c-footer--primary .c-footer__link:hover, .c-footer--primary .c-footer__link:focus {
6382
6236
  color: var(--atomix-primary);
@@ -6385,8 +6239,8 @@ a, a:hover {
6385
6239
  background-color: var(--atomix-primary);
6386
6240
  }
6387
6241
  .c-footer--primary .c-footer__newsletter {
6388
- background: linear-gradient(135deg, var(--atomix-primary-bg), rgba(var(--atomix-primary-bg-rgb), 0.8));
6389
- border-color: var(--atomix-primary-border);
6242
+ background: linear-gradient(135deg, var(--atomix-primary-bg-subtle), rgba(var(--atomix-primary-bg-subtle), 0.8));
6243
+ border-color: var(--atomix-primary-border-subtle);
6390
6244
  }
6391
6245
  .c-footer--primary .c-footer__newsletter::before {
6392
6246
  background: linear-gradient(90deg, transparent, var(--atomix-primary), transparent);
@@ -6394,7 +6248,7 @@ a, a:hover {
6394
6248
  .c-footer--secondary {
6395
6249
  --atomix-footer-bg: var(--atomix-secondary-bg-subtle);
6396
6250
  --atomix-footer-border-color: var(--atomix-secondary-border-subtle);
6397
- --atomix-footer-color: var(--atomix-secondary-text);
6251
+ --atomix-footer-color: var(--atomix-secondary-text-emphasis);
6398
6252
  }
6399
6253
  .c-footer--secondary .c-footer__brand-name h3,
6400
6254
  .c-footer--secondary .c-footer__section-title {
@@ -6402,10 +6256,10 @@ a, a:hover {
6402
6256
  }
6403
6257
  .c-footer--secondary .c-footer__brand-description,
6404
6258
  .c-footer--secondary .c-footer__copyright {
6405
- color: var(--atomix-secondary-text-muted);
6259
+ color: var(--atomix-gray-6);
6406
6260
  }
6407
6261
  .c-footer--secondary .c-footer__link {
6408
- color: var(--atomix-secondary-text);
6262
+ color: var(--atomix-secondary-text-emphasis);
6409
6263
  }
6410
6264
  .c-footer--secondary .c-footer__link:hover, .c-footer--secondary .c-footer__link:focus {
6411
6265
  color: var(--atomix-secondary);
@@ -6414,8 +6268,8 @@ a, a:hover {
6414
6268
  background-color: var(--atomix-secondary);
6415
6269
  }
6416
6270
  .c-footer--secondary .c-footer__newsletter {
6417
- background: linear-gradient(135deg, var(--atomix-secondary-bg), rgba(var(--atomix-secondary-bg-rgb), 0.8));
6418
- border-color: var(--atomix-secondary-border);
6271
+ background: linear-gradient(135deg, var(--atomix-secondary-bg-subtle), rgba(var(--atomix-secondary-bg-subtle), 0.8));
6272
+ border-color: var(--atomix-secondary-border-subtle);
6419
6273
  }
6420
6274
  .c-footer--secondary .c-footer__newsletter::before {
6421
6275
  background: linear-gradient(90deg, transparent, var(--atomix-secondary), transparent);
@@ -6423,7 +6277,7 @@ a, a:hover {
6423
6277
  .c-footer--tertiary {
6424
6278
  --atomix-footer-bg: var(--atomix-tertiary-bg-subtle);
6425
6279
  --atomix-footer-border-color: var(--atomix-tertiary-border-subtle);
6426
- --atomix-footer-color: var(--atomix-tertiary-text);
6280
+ --atomix-footer-color: var(--atomix-tertiary-text-emphasis);
6427
6281
  }
6428
6282
  .c-footer--tertiary .c-footer__brand-name h3,
6429
6283
  .c-footer--tertiary .c-footer__section-title {
@@ -6431,10 +6285,10 @@ a, a:hover {
6431
6285
  }
6432
6286
  .c-footer--tertiary .c-footer__brand-description,
6433
6287
  .c-footer--tertiary .c-footer__copyright {
6434
- color: var(--atomix-tertiary-text-muted);
6288
+ color: var(--atomix-gray-6);
6435
6289
  }
6436
6290
  .c-footer--tertiary .c-footer__link {
6437
- color: var(--atomix-tertiary-text);
6291
+ color: var(--atomix-tertiary-text-emphasis);
6438
6292
  }
6439
6293
  .c-footer--tertiary .c-footer__link:hover, .c-footer--tertiary .c-footer__link:focus {
6440
6294
  color: var(--atomix-tertiary);
@@ -6443,8 +6297,8 @@ a, a:hover {
6443
6297
  background-color: var(--atomix-tertiary);
6444
6298
  }
6445
6299
  .c-footer--tertiary .c-footer__newsletter {
6446
- background: linear-gradient(135deg, var(--atomix-tertiary-bg), rgba(var(--atomix-tertiary-bg-rgb), 0.8));
6447
- border-color: var(--atomix-tertiary-border);
6300
+ background: linear-gradient(135deg, var(--atomix-tertiary-bg-subtle), rgba(var(--atomix-tertiary-bg-subtle), 0.8));
6301
+ border-color: var(--atomix-tertiary-border-subtle);
6448
6302
  }
6449
6303
  .c-footer--tertiary .c-footer__newsletter::before {
6450
6304
  background: linear-gradient(90deg, transparent, var(--atomix-tertiary), transparent);
@@ -6452,7 +6306,7 @@ a, a:hover {
6452
6306
  .c-footer--invert {
6453
6307
  --atomix-footer-bg: var(--atomix-invert-bg-subtle);
6454
6308
  --atomix-footer-border-color: var(--atomix-invert-border-subtle);
6455
- --atomix-footer-color: var(--atomix-invert-text);
6309
+ --atomix-footer-color: var(--atomix-invert-text-emphasis);
6456
6310
  }
6457
6311
  .c-footer--invert .c-footer__brand-name h3,
6458
6312
  .c-footer--invert .c-footer__section-title {
@@ -6460,10 +6314,10 @@ a, a:hover {
6460
6314
  }
6461
6315
  .c-footer--invert .c-footer__brand-description,
6462
6316
  .c-footer--invert .c-footer__copyright {
6463
- color: var(--atomix-invert-text-muted);
6317
+ color: var(--atomix-gray-6);
6464
6318
  }
6465
6319
  .c-footer--invert .c-footer__link {
6466
- color: var(--atomix-invert-text);
6320
+ color: var(--atomix-invert-text-emphasis);
6467
6321
  }
6468
6322
  .c-footer--invert .c-footer__link:hover, .c-footer--invert .c-footer__link:focus {
6469
6323
  color: var(--atomix-invert);
@@ -6472,8 +6326,8 @@ a, a:hover {
6472
6326
  background-color: var(--atomix-invert);
6473
6327
  }
6474
6328
  .c-footer--invert .c-footer__newsletter {
6475
- background: linear-gradient(135deg, var(--atomix-invert-bg), rgba(var(--atomix-invert-bg-rgb), 0.8));
6476
- border-color: var(--atomix-invert-border);
6329
+ background: linear-gradient(135deg, var(--atomix-invert-bg-subtle), rgba(var(--atomix-invert-bg-subtle), 0.8));
6330
+ border-color: var(--atomix-invert-border-subtle);
6477
6331
  }
6478
6332
  .c-footer--invert .c-footer__newsletter::before {
6479
6333
  background: linear-gradient(90deg, transparent, var(--atomix-invert), transparent);
@@ -6481,7 +6335,7 @@ a, a:hover {
6481
6335
  .c-footer--brand {
6482
6336
  --atomix-footer-bg: var(--atomix-brand-bg-subtle);
6483
6337
  --atomix-footer-border-color: var(--atomix-brand-border-subtle);
6484
- --atomix-footer-color: var(--atomix-brand-text);
6338
+ --atomix-footer-color: var(--atomix-brand-text-emphasis);
6485
6339
  }
6486
6340
  .c-footer--brand .c-footer__brand-name h3,
6487
6341
  .c-footer--brand .c-footer__section-title {
@@ -6489,10 +6343,10 @@ a, a:hover {
6489
6343
  }
6490
6344
  .c-footer--brand .c-footer__brand-description,
6491
6345
  .c-footer--brand .c-footer__copyright {
6492
- color: var(--atomix-brand-text-muted);
6346
+ color: var(--atomix-gray-6);
6493
6347
  }
6494
6348
  .c-footer--brand .c-footer__link {
6495
- color: var(--atomix-brand-text);
6349
+ color: var(--atomix-brand-text-emphasis);
6496
6350
  }
6497
6351
  .c-footer--brand .c-footer__link:hover, .c-footer--brand .c-footer__link:focus {
6498
6352
  color: var(--atomix-brand);
@@ -6501,8 +6355,8 @@ a, a:hover {
6501
6355
  background-color: var(--atomix-brand);
6502
6356
  }
6503
6357
  .c-footer--brand .c-footer__newsletter {
6504
- background: linear-gradient(135deg, var(--atomix-brand-bg), rgba(var(--atomix-brand-bg-rgb), 0.8));
6505
- border-color: var(--atomix-brand-border);
6358
+ background: linear-gradient(135deg, var(--atomix-brand-bg-subtle), rgba(var(--atomix-brand-bg-subtle), 0.8));
6359
+ border-color: var(--atomix-brand-border-subtle);
6506
6360
  }
6507
6361
  .c-footer--brand .c-footer__newsletter::before {
6508
6362
  background: linear-gradient(90deg, transparent, var(--atomix-brand), transparent);
@@ -6510,7 +6364,7 @@ a, a:hover {
6510
6364
  .c-footer--error {
6511
6365
  --atomix-footer-bg: var(--atomix-error-bg-subtle);
6512
6366
  --atomix-footer-border-color: var(--atomix-error-border-subtle);
6513
- --atomix-footer-color: var(--atomix-error-text);
6367
+ --atomix-footer-color: var(--atomix-error-text-emphasis);
6514
6368
  }
6515
6369
  .c-footer--error .c-footer__brand-name h3,
6516
6370
  .c-footer--error .c-footer__section-title {
@@ -6518,10 +6372,10 @@ a, a:hover {
6518
6372
  }
6519
6373
  .c-footer--error .c-footer__brand-description,
6520
6374
  .c-footer--error .c-footer__copyright {
6521
- color: var(--atomix-error-text-muted);
6375
+ color: var(--atomix-gray-6);
6522
6376
  }
6523
6377
  .c-footer--error .c-footer__link {
6524
- color: var(--atomix-error-text);
6378
+ color: var(--atomix-error-text-emphasis);
6525
6379
  }
6526
6380
  .c-footer--error .c-footer__link:hover, .c-footer--error .c-footer__link:focus {
6527
6381
  color: var(--atomix-error);
@@ -6530,8 +6384,8 @@ a, a:hover {
6530
6384
  background-color: var(--atomix-error);
6531
6385
  }
6532
6386
  .c-footer--error .c-footer__newsletter {
6533
- background: linear-gradient(135deg, var(--atomix-error-bg), rgba(var(--atomix-error-bg-rgb), 0.8));
6534
- border-color: var(--atomix-error-border);
6387
+ background: linear-gradient(135deg, var(--atomix-error-bg-subtle), rgba(var(--atomix-error-bg-subtle), 0.8));
6388
+ border-color: var(--atomix-error-border-subtle);
6535
6389
  }
6536
6390
  .c-footer--error .c-footer__newsletter::before {
6537
6391
  background: linear-gradient(90deg, transparent, var(--atomix-error), transparent);
@@ -6539,7 +6393,7 @@ a, a:hover {
6539
6393
  .c-footer--success {
6540
6394
  --atomix-footer-bg: var(--atomix-success-bg-subtle);
6541
6395
  --atomix-footer-border-color: var(--atomix-success-border-subtle);
6542
- --atomix-footer-color: var(--atomix-success-text);
6396
+ --atomix-footer-color: var(--atomix-success-text-emphasis);
6543
6397
  }
6544
6398
  .c-footer--success .c-footer__brand-name h3,
6545
6399
  .c-footer--success .c-footer__section-title {
@@ -6547,10 +6401,10 @@ a, a:hover {
6547
6401
  }
6548
6402
  .c-footer--success .c-footer__brand-description,
6549
6403
  .c-footer--success .c-footer__copyright {
6550
- color: var(--atomix-success-text-muted);
6404
+ color: var(--atomix-gray-6);
6551
6405
  }
6552
6406
  .c-footer--success .c-footer__link {
6553
- color: var(--atomix-success-text);
6407
+ color: var(--atomix-success-text-emphasis);
6554
6408
  }
6555
6409
  .c-footer--success .c-footer__link:hover, .c-footer--success .c-footer__link:focus {
6556
6410
  color: var(--atomix-success);
@@ -6559,8 +6413,8 @@ a, a:hover {
6559
6413
  background-color: var(--atomix-success);
6560
6414
  }
6561
6415
  .c-footer--success .c-footer__newsletter {
6562
- background: linear-gradient(135deg, var(--atomix-success-bg), rgba(var(--atomix-success-bg-rgb), 0.8));
6563
- border-color: var(--atomix-success-border);
6416
+ background: linear-gradient(135deg, var(--atomix-success-bg-subtle), rgba(var(--atomix-success-bg-subtle), 0.8));
6417
+ border-color: var(--atomix-success-border-subtle);
6564
6418
  }
6565
6419
  .c-footer--success .c-footer__newsletter::before {
6566
6420
  background: linear-gradient(90deg, transparent, var(--atomix-success), transparent);
@@ -6568,7 +6422,7 @@ a, a:hover {
6568
6422
  .c-footer--warning {
6569
6423
  --atomix-footer-bg: var(--atomix-warning-bg-subtle);
6570
6424
  --atomix-footer-border-color: var(--atomix-warning-border-subtle);
6571
- --atomix-footer-color: var(--atomix-warning-text);
6425
+ --atomix-footer-color: var(--atomix-warning-text-emphasis);
6572
6426
  }
6573
6427
  .c-footer--warning .c-footer__brand-name h3,
6574
6428
  .c-footer--warning .c-footer__section-title {
@@ -6576,10 +6430,10 @@ a, a:hover {
6576
6430
  }
6577
6431
  .c-footer--warning .c-footer__brand-description,
6578
6432
  .c-footer--warning .c-footer__copyright {
6579
- color: var(--atomix-warning-text-muted);
6433
+ color: var(--atomix-gray-6);
6580
6434
  }
6581
6435
  .c-footer--warning .c-footer__link {
6582
- color: var(--atomix-warning-text);
6436
+ color: var(--atomix-warning-text-emphasis);
6583
6437
  }
6584
6438
  .c-footer--warning .c-footer__link:hover, .c-footer--warning .c-footer__link:focus {
6585
6439
  color: var(--atomix-warning);
@@ -6588,8 +6442,8 @@ a, a:hover {
6588
6442
  background-color: var(--atomix-warning);
6589
6443
  }
6590
6444
  .c-footer--warning .c-footer__newsletter {
6591
- background: linear-gradient(135deg, var(--atomix-warning-bg), rgba(var(--atomix-warning-bg-rgb), 0.8));
6592
- border-color: var(--atomix-warning-border);
6445
+ background: linear-gradient(135deg, var(--atomix-warning-bg-subtle), rgba(var(--atomix-warning-bg-subtle), 0.8));
6446
+ border-color: var(--atomix-warning-border-subtle);
6593
6447
  }
6594
6448
  .c-footer--warning .c-footer__newsletter::before {
6595
6449
  background: linear-gradient(90deg, transparent, var(--atomix-warning), transparent);
@@ -6597,7 +6451,7 @@ a, a:hover {
6597
6451
  .c-footer--info {
6598
6452
  --atomix-footer-bg: var(--atomix-info-bg-subtle);
6599
6453
  --atomix-footer-border-color: var(--atomix-info-border-subtle);
6600
- --atomix-footer-color: var(--atomix-info-text);
6454
+ --atomix-footer-color: var(--atomix-info-text-emphasis);
6601
6455
  }
6602
6456
  .c-footer--info .c-footer__brand-name h3,
6603
6457
  .c-footer--info .c-footer__section-title {
@@ -6605,10 +6459,10 @@ a, a:hover {
6605
6459
  }
6606
6460
  .c-footer--info .c-footer__brand-description,
6607
6461
  .c-footer--info .c-footer__copyright {
6608
- color: var(--atomix-info-text-muted);
6462
+ color: var(--atomix-gray-6);
6609
6463
  }
6610
6464
  .c-footer--info .c-footer__link {
6611
- color: var(--atomix-info-text);
6465
+ color: var(--atomix-info-text-emphasis);
6612
6466
  }
6613
6467
  .c-footer--info .c-footer__link:hover, .c-footer--info .c-footer__link:focus {
6614
6468
  color: var(--atomix-info);
@@ -6617,8 +6471,8 @@ a, a:hover {
6617
6471
  background-color: var(--atomix-info);
6618
6472
  }
6619
6473
  .c-footer--info .c-footer__newsletter {
6620
- background: linear-gradient(135deg, var(--atomix-info-bg), rgba(var(--atomix-info-bg-rgb), 0.8));
6621
- border-color: var(--atomix-info-border);
6474
+ background: linear-gradient(135deg, var(--atomix-info-bg-subtle), rgba(var(--atomix-info-bg-subtle), 0.8));
6475
+ border-color: var(--atomix-info-border-subtle);
6622
6476
  }
6623
6477
  .c-footer--info .c-footer__newsletter::before {
6624
6478
  background: linear-gradient(90deg, transparent, var(--atomix-info), transparent);
@@ -6626,7 +6480,7 @@ a, a:hover {
6626
6480
  .c-footer--light {
6627
6481
  --atomix-footer-bg: var(--atomix-light-bg-subtle);
6628
6482
  --atomix-footer-border-color: var(--atomix-light-border-subtle);
6629
- --atomix-footer-color: var(--atomix-light-text);
6483
+ --atomix-footer-color: var(--atomix-light-text-emphasis);
6630
6484
  }
6631
6485
  .c-footer--light .c-footer__brand-name h3,
6632
6486
  .c-footer--light .c-footer__section-title {
@@ -6634,10 +6488,10 @@ a, a:hover {
6634
6488
  }
6635
6489
  .c-footer--light .c-footer__brand-description,
6636
6490
  .c-footer--light .c-footer__copyright {
6637
- color: var(--atomix-light-text-muted);
6491
+ color: var(--atomix-gray-6);
6638
6492
  }
6639
6493
  .c-footer--light .c-footer__link {
6640
- color: var(--atomix-light-text);
6494
+ color: var(--atomix-light-text-emphasis);
6641
6495
  }
6642
6496
  .c-footer--light .c-footer__link:hover, .c-footer--light .c-footer__link:focus {
6643
6497
  color: var(--atomix-light);
@@ -6646,8 +6500,8 @@ a, a:hover {
6646
6500
  background-color: var(--atomix-light);
6647
6501
  }
6648
6502
  .c-footer--light .c-footer__newsletter {
6649
- background: linear-gradient(135deg, var(--atomix-light-bg), rgba(var(--atomix-light-bg-rgb), 0.8));
6650
- border-color: var(--atomix-light-border);
6503
+ background: linear-gradient(135deg, var(--atomix-light-bg-subtle), rgba(var(--atomix-light-bg-subtle), 0.8));
6504
+ border-color: var(--atomix-light-border-subtle);
6651
6505
  }
6652
6506
  .c-footer--light .c-footer__newsletter::before {
6653
6507
  background: linear-gradient(90deg, transparent, var(--atomix-light), transparent);
@@ -6655,7 +6509,7 @@ a, a:hover {
6655
6509
  .c-footer--dark {
6656
6510
  --atomix-footer-bg: var(--atomix-dark-bg-subtle);
6657
6511
  --atomix-footer-border-color: var(--atomix-dark-border-subtle);
6658
- --atomix-footer-color: var(--atomix-dark-text);
6512
+ --atomix-footer-color: var(--atomix-dark-text-emphasis);
6659
6513
  }
6660
6514
  .c-footer--dark .c-footer__brand-name h3,
6661
6515
  .c-footer--dark .c-footer__section-title {
@@ -6663,10 +6517,10 @@ a, a:hover {
6663
6517
  }
6664
6518
  .c-footer--dark .c-footer__brand-description,
6665
6519
  .c-footer--dark .c-footer__copyright {
6666
- color: var(--atomix-dark-text-muted);
6520
+ color: var(--atomix-gray-6);
6667
6521
  }
6668
6522
  .c-footer--dark .c-footer__link {
6669
- color: var(--atomix-dark-text);
6523
+ color: var(--atomix-dark-text-emphasis);
6670
6524
  }
6671
6525
  .c-footer--dark .c-footer__link:hover, .c-footer--dark .c-footer__link:focus {
6672
6526
  color: var(--atomix-dark);
@@ -6675,8 +6529,8 @@ a, a:hover {
6675
6529
  background-color: var(--atomix-dark);
6676
6530
  }
6677
6531
  .c-footer--dark .c-footer__newsletter {
6678
- background: linear-gradient(135deg, var(--atomix-dark-bg), rgba(var(--atomix-dark-bg-rgb), 0.8));
6679
- border-color: var(--atomix-dark-border);
6532
+ background: linear-gradient(135deg, var(--atomix-dark-bg-subtle), rgba(var(--atomix-dark-bg-subtle), 0.8));
6533
+ border-color: var(--atomix-dark-border-subtle);
6680
6534
  }
6681
6535
  .c-footer--dark .c-footer__newsletter::before {
6682
6536
  background: linear-gradient(90deg, transparent, var(--atomix-dark), transparent);
@@ -6684,34 +6538,12 @@ a, a:hover {
6684
6538
  .c-footer--sticky {
6685
6539
  position: sticky;
6686
6540
  bottom: 0;
6687
- z-index: 10;
6541
+ z-index: 100;
6688
6542
  box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.1);
6689
6543
  -webkit-backdrop-filter: blur(10px);
6690
6544
  backdrop-filter: blur(10px);
6691
6545
  background-color: rgba(var(--atomix-footer-bg-rgb), 0.95);
6692
6546
  }
6693
- @media (prefers-color-scheme: dark) {
6694
- .c-footer {
6695
- --atomix-footer-bg: var(--atomix-surface-dark);
6696
- --atomix-footer-color: var(--atomix-text-dark);
6697
- --atomix-footer-border-color: var(--atomix-border-dark);
6698
- }
6699
- }
6700
- .dark-mode .c-footer {
6701
- --atomix-footer-bg: var(--atomix-surface-dark);
6702
- --atomix-footer-color: var(--atomix-text-dark);
6703
- --atomix-footer-border-color: var(--atomix-border-dark);
6704
- }
6705
- .dark-mode .c-footer .c-footer__newsletter {
6706
- background: linear-gradient(135deg, rgba(255, 255, 255, 0.05), rgba(255, 255, 255, 0.02));
6707
- border-color: rgba(255, 255, 255, 0.1);
6708
- }
6709
- .dark-mode .c-footer .c-footer__social-link {
6710
- background-color: rgba(255, 255, 255, 0.1);
6711
- }
6712
- .dark-mode .c-footer .c-footer__social-link:hover {
6713
- background-color: rgba(255, 255, 255, 0.2);
6714
- }
6715
6547
  @media (prefers-reduced-motion: reduce) {
6716
6548
  .c-footer *,
6717
6549
  .c-footer *::before,
@@ -7036,10 +6868,10 @@ a, a:hover {
7036
6868
  .c-input--glass {
7037
6869
  background-color: color-mix(in srgb, var(--atomix-input-bg) 50%, transparent);
7038
6870
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1), 0 0 0 1px rgba(255, 255, 255, 0.1) inset;
6871
+ border-color: color-mix(in srgb, var(--atomix-input-border-color) 50%, transparent);
7039
6872
  }
7040
6873
  .c-input--glass:focus, .c-input--glass:hover {
7041
- background-color: color-mix(in srgb, var(--atomix-input-bg) 50%, transparent);
7042
- box-shadow: 0 8px 32px rgba(0, 0, 0, 0.15), 0 0 0 1px rgba(255, 255, 255, 0.2) inset, 0 0 0 2px rgba(var(--atomix-primary-rgb, 122, 255, 215), 0.3);
6874
+ background-color: color-mix(in srgb, var(--atomix-input-bg) 90%, transparent);
7043
6875
  }
7044
6876
  .c-input--glass.c-input--textarea {
7045
6877
  resize: vertical;
@@ -7114,6 +6946,7 @@ a, a:hover {
7114
6946
  --atomix-list-item-dash-width: 0.75rem;
7115
6947
  --atomix-list-item-dash-height: 0.125rem;
7116
6948
  padding-left: var(--atomix-list-padding-left);
6949
+ list-style: none;
7117
6950
  }
7118
6951
  .c-list__item {
7119
6952
  color: var(--atomix-list-color);
@@ -7612,6 +7445,134 @@ a, a:hover {
7612
7445
  opacity: 0.5;
7613
7446
  cursor: not-allowed;
7614
7447
  }
7448
+ .c-messages--glass {
7449
+ background: transparent;
7450
+ border: none;
7451
+ padding: 0;
7452
+ }
7453
+ .c-messages--glass .c-messages__glass-content {
7454
+ padding: var(--atomix-messages-padding-y) var(--atomix-messages-padding-x);
7455
+ border-radius: var(--atomix-messages-border-radius);
7456
+ }
7457
+ .c-messages--glass .c-messages__body {
7458
+ border-radius: 0.5rem;
7459
+ padding: 0.5rem;
7460
+ background-color: color-mix(in srgb, var(--atomix-body-bg) 15%, transparent);
7461
+ }
7462
+ .c-messages--glass .c-messages__text {
7463
+ background-color: color-mix(in srgb, var(--atomix-body-bg) 50%, transparent);
7464
+ -webkit-backdrop-filter: blur(8px);
7465
+ backdrop-filter: blur(8px);
7466
+ border: 1px solid rgba(255, 255, 255, 0.2);
7467
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
7468
+ }
7469
+ .c-messages--glass .c-messages__content--self .c-messages__text {
7470
+ background-color: color-mix(in srgb, var(--atomix-brand-bg-subtle) 50%, transparent);
7471
+ border: 1px solid rgba(var(--atomix-primary-rgb), 0.3);
7472
+ -webkit-backdrop-filter: blur(8px);
7473
+ backdrop-filter: blur(8px);
7474
+ }
7475
+ .c-messages--glass .c-messages__content--self .c-messages__file {
7476
+ background-color: color-mix(in srgb, var(--atomix-brand-bg-subtle) 50%, transparent);
7477
+ border: 1px solid rgba(var(--atomix-primary-rgb), 0.3);
7478
+ -webkit-backdrop-filter: blur(8px);
7479
+ backdrop-filter: blur(8px);
7480
+ }
7481
+ .c-messages--glass .c-messages__file {
7482
+ background-color: color-mix(in srgb, var(--atomix-brand-bg-subtle) 50%, transparent);
7483
+ border: 1px solid rgba(var(--atomix-primary-rgb), 0.3);
7484
+ -webkit-backdrop-filter: blur(8px);
7485
+ backdrop-filter: blur(8px);
7486
+ border: 1px solid rgba(255, 255, 255, 0.2);
7487
+ box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
7488
+ }
7489
+ .c-messages--glass .c-messages__file-icon {
7490
+ background-color: color-mix(in srgb, var(--atomix-brand-bg-subtle) 50%, transparent);
7491
+ -webkit-backdrop-filter: blur(8px);
7492
+ backdrop-filter: blur(8px);
7493
+ border: 1px solid rgba(255, 255, 255, 0.15);
7494
+ }
7495
+ .c-messages--glass .c-messages__image {
7496
+ border: 1px solid rgba(255, 255, 255, 0.3);
7497
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
7498
+ }
7499
+ .c-messages--glass .c-messages__avatar {
7500
+ border: 2px solid rgba(255, 255, 255, 0.4);
7501
+ box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1);
7502
+ }
7503
+ .c-messages--glass .c-messages__name {
7504
+ text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
7505
+ font-weight: 600;
7506
+ }
7507
+ .c-messages--glass .c-messages__time {
7508
+ text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
7509
+ }
7510
+ .c-messages--glass .c-messages__form {
7511
+ padding-top: 0.75rem;
7512
+ border-top: 1px solid rgba(255, 255, 255, 0.2);
7513
+ margin-top: 1rem;
7514
+ }
7515
+ .c-messages--glass .c-messages__input {
7516
+ background: rgba(255, 255, 255, 0.3);
7517
+ -webkit-backdrop-filter: blur(8px);
7518
+ backdrop-filter: blur(8px);
7519
+ border: 1px solid rgba(255, 255, 255, 0.3);
7520
+ box-shadow: 0 1px 4px rgba(0, 0, 0, 0.05);
7521
+ color: var(--atomix-primary-text-emphasis);
7522
+ }
7523
+ .c-messages--glass .c-messages__input:focus {
7524
+ background: rgba(255, 255, 255, 0.45);
7525
+ border-color: var(--atomix-primary);
7526
+ box-shadow: 0 0 0 3px rgba(var(--atomix-primary-rgb), 0.15);
7527
+ }
7528
+ .c-messages--glass .c-messages__input::-moz-placeholder {
7529
+ opacity: 0.8;
7530
+ color: var(--atomix-primary-text-emphasis);
7531
+ }
7532
+ .c-messages--glass .c-messages__input::placeholder {
7533
+ opacity: 0.8;
7534
+ color: var(--atomix-primary-text-emphasis);
7535
+ }
7536
+ .c-messages--glass .c-messages__option {
7537
+ padding: 0.375rem;
7538
+ border-radius: 0.25rem;
7539
+ transition: background-color 0.2s ease;
7540
+ }
7541
+ .c-messages--glass .c-messages__option:hover:not(:disabled) {
7542
+ background: rgba(var(--atomix-secondary-bg-rgb), 0.4);
7543
+ }
7544
+ .c-messages--glass .c-messages__option:focus-visible {
7545
+ outline: 2px solid var(--atomix-primary);
7546
+ outline-offset: 2px;
7547
+ }
7548
+ .c-messages--glass .c-messages__option-icon {
7549
+ opacity: 0.8;
7550
+ transition: opacity 0.2s ease;
7551
+ }
7552
+ .c-messages__option:hover .c-messages--glass .c-messages__option-icon {
7553
+ opacity: 1;
7554
+ }
7555
+ .c-messages--glass .c-messages__submit {
7556
+ background: rgba(var(--atomix-primary-rgb), 0.9);
7557
+ -webkit-backdrop-filter: blur(8px);
7558
+ backdrop-filter: blur(8px);
7559
+ border: 1px solid rgba(var(--atomix-primary-rgb), 0.4);
7560
+ box-shadow: 0 2px 8px rgba(var(--atomix-primary-rgb), 0.3);
7561
+ transition: all 0.2s ease;
7562
+ }
7563
+ .c-messages--glass .c-messages__submit:hover:not(:disabled) {
7564
+ background: rgba(var(--atomix-primary-rgb), 1);
7565
+ box-shadow: 0 4px 12px rgba(var(--atomix-primary-rgb), 0.4);
7566
+ transform: translateY(-1px);
7567
+ }
7568
+ .c-messages--glass .c-messages__submit:active:not(:disabled) {
7569
+ transform: translateY(0);
7570
+ box-shadow: 0 1px 4px rgba(var(--atomix-primary-rgb), 0.3);
7571
+ }
7572
+ .c-messages--glass .c-messages__submit:disabled {
7573
+ opacity: 0.5;
7574
+ background: rgba(var(--atomix-primary-rgb), 0.5);
7575
+ }
7615
7576
  .c-modal {
7616
7577
  --atomix-modal-inner-padding: 1rem;
7617
7578
  --atomix-modal-content-color: ;
@@ -7634,11 +7595,13 @@ a, a:hover {
7634
7595
  --atomix-modal-lg: 62.5rem;
7635
7596
  --atomix-modal-xl: 71.25rem;
7636
7597
  --atomix-modal-width: var(--atomix-modal-md);
7637
- position: fixed;
7598
+ position: absolute;
7638
7599
  inset: 0;
7639
7600
  width: 100%;
7640
7601
  height: 100%;
7641
7602
  display: none;
7603
+ }
7604
+ .c-modal:not(.c-modal--glass) {
7642
7605
  z-index: 1040;
7643
7606
  }
7644
7607
  .c-modal__backdrop {
@@ -7658,10 +7621,8 @@ a, a:hover {
7658
7621
  margin-left: auto;
7659
7622
  margin-right: auto;
7660
7623
  opacity: 0;
7661
- z-index: 2;
7662
7624
  pointer-events: none;
7663
7625
  transition: 0.3s ease;
7664
- will-change: transform;
7665
7626
  }
7666
7627
  .c-modal__content {
7667
7628
  display: flex;
@@ -7725,6 +7686,9 @@ a, a:hover {
7725
7686
  .c-modal--xl {
7726
7687
  --atomix-modal-width: var(--atomix-modal-xl);
7727
7688
  }
7689
+ .c-modal--glass .c-modal .c-modal--glass .c-modal__content {
7690
+ background-color: color-mix(in srgb, var(--atomix-modal-content-bg) 50%, transparent);
7691
+ }
7728
7692
  .c-modal.is-open .c-modal__backdrop {
7729
7693
  opacity: var(--atomix-modal-backdrop-opacity);
7730
7694
  }
@@ -8047,8 +8011,10 @@ a, a:hover {
8047
8011
  display: flex !important;
8048
8012
  }
8049
8013
  }
8050
- .c-navbar--fixed, .c-navbar--fixed-bottom {
8014
+ .c-navbar--fixed:not(.c-navbar--glass), .c-navbar--fixed-bottom:not(.c-navbar--glass) {
8051
8015
  position: fixed;
8016
+ }
8017
+ .c-navbar--fixed, .c-navbar--fixed-bottom {
8052
8018
  left: 0;
8053
8019
  right: 0;
8054
8020
  width: 100%;
@@ -8057,12 +8023,18 @@ a, a:hover {
8057
8023
  .c-navbar--fixed {
8058
8024
  top: 0;
8059
8025
  }
8026
+ .c-navbar--glass {
8027
+ position: relative;
8028
+ background-color: transparent;
8029
+ border-bottom: none;
8030
+ }
8060
8031
  .c-navbar--fixed-bottom {
8061
8032
  bottom: 0;
8062
8033
  }
8063
8034
  .c-navbar--fixed-bottom .c-nav__dropdown-menu {
8064
8035
  top: auto;
8065
8036
  bottom: 100%;
8037
+ z-index: 999;
8066
8038
  }
8067
8039
  .c-navbar--fixed-bottom .c-nav--end .c-nav__dropdown-menu {
8068
8040
  left: 50%;
@@ -8403,7 +8375,7 @@ a, a:hover {
8403
8375
  --atomix-callout-icon-color: var(--atomix-light);
8404
8376
  }
8405
8377
  .c-callout--glass {
8406
- background-color: color-mix(in srgb, var(--atomix-callout-bg) 50%, transparent);
8378
+ background: none;
8407
8379
  padding: 0;
8408
8380
  border: none;
8409
8381
  display: block;
@@ -8413,10 +8385,11 @@ a, a:hover {
8413
8385
  justify-content: center;
8414
8386
  align-items: center;
8415
8387
  padding: var(--atomix-callout-padding-y) var(--atomix-callout-padding-x);
8416
- border: var(--atomix-callout-border-witdh) solid var(--atomix-callout-border-color);
8388
+ border: var(--atomix-callout-border-witdh) solid color-mix(in srgb, var(--atomix-callout-border-color) 20%, transparent);
8417
8389
  max-width: var(--atomix-callout-width);
8418
8390
  border-radius: var(--atomix-callout-border-radius);
8419
8391
  width: 100%;
8392
+ background-color: color-mix(in srgb, var(--atomix-callout-bg) 50%, transparent);
8420
8393
  }
8421
8394
  .c-callout--glass .c-callout__title {
8422
8395
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
@@ -9591,6 +9564,10 @@ a, a:hover {
9591
9564
  .c-side-menu__link-text {
9592
9565
  flex: 1 1;
9593
9566
  }
9567
+ .c-side-menu--glass {
9568
+ background-color: transparent;
9569
+ border-bottom: none;
9570
+ }
9594
9571
  .c-side-menu.is-open .c-side-menu__toggler-icon {
9595
9572
  transform: rotate(90deg);
9596
9573
  }
@@ -10533,6 +10510,9 @@ a, a:hover {
10533
10510
  --atomix-upload-disabled-opacity: 0.5;
10534
10511
  --atomix-upload-loader-control-icon-size: 1.25rem;
10535
10512
  --atomix-upload-loader-contorl-color: var(--atomix-body-color);
10513
+ --atomix-upload-helper-text-opacity: 0.7;
10514
+ --atomix-upload-text-opacity: 0.8;
10515
+ --atomix-upload-text-margin-bottom: 1rem;
10536
10516
  width: 100%;
10537
10517
  max-width: var(--atomix-upload-width);
10538
10518
  padding: var(--atomix-upload-padding-y) var(--atomix-upload-padding-x);
@@ -10553,24 +10533,47 @@ a, a:hover {
10553
10533
  padding: var(--atomix-upload-inner-padding-y) var(--atomix-upload-inner-padding-x);
10554
10534
  border-radius: var(--atomix-upload-border-radius);
10555
10535
  border: var(--atomix-upload-border-width) dashed var(--atomix-upload-border-color);
10536
+ cursor: pointer;
10537
+ transition: all 0.3s ease-in-out;
10538
+ }
10539
+ .c-upload__inner:hover {
10540
+ border-color: var(--atomix-primary-6);
10541
+ background-color: var(--atomix-primary-bg-subtle);
10542
+ transform: translateY(-2px);
10543
+ box-shadow: var(--atomix-box-shadow);
10556
10544
  }
10557
10545
  .c-upload__icon {
10558
10546
  font-size: var(--atomix-upload-icon-size);
10559
- padding: var(--atomix-upload-icon-padding);
10560
- background-color: var(--atomix-upload-icon-bg);
10561
- border-radius: 50rem;
10547
+ padding: 12;
10548
+ color: var(--atomix-primary-6);
10549
+ background-color: var(--atomix-primary-bg-subtle);
10550
+ border-radius: var(--atomix-border-radius-pill);
10551
+ margin-bottom: 12;
10552
+ transition: all 0.3s ease-in-out;
10553
+ }
10554
+ .c-upload__icon:hover {
10555
+ color: var(--atomix-primary-7);
10556
+ background-color: var(--atomix-primary-border-subtle);
10557
+ transform: scale(1.05);
10562
10558
  }
10563
10559
  .c-upload__title {
10564
10560
  color: var(--atomix-upload-title-color);
10565
10561
  font-size: var(--atomix-upload-title-font-size);
10566
10562
  font-weight: var(--atomix-upload-title-font-weight);
10567
10563
  margin-top: var(--atomix-upload-title-margin-top);
10564
+ margin-bottom: var(--atomix-upload-title-margin-bottom);
10565
+ text-align: center;
10566
+ line-height: 1.4;
10568
10567
  }
10569
10568
  .c-upload__text {
10570
10569
  color: var(--atomix-upload-text-color);
10571
10570
  font-size: var(--atomix-upload-text-font-size);
10572
10571
  font-weight: var(--atomix-upload-text-font-weight);
10573
10572
  margin-top: var(--atomix-upload-text-margin-top);
10573
+ margin-bottom: var(--atomix-upload-text-margin-bottom);
10574
+ text-align: center;
10575
+ line-height: 1.5;
10576
+ opacity: var(--atomix-upload-text-opacity);
10574
10577
  }
10575
10578
  .c-upload__btn {
10576
10579
  margin-top: var(--atomix-upload-btn-margin-top);
@@ -10580,6 +10583,9 @@ a, a:hover {
10580
10583
  font-size: var(--atomix-upload-helper-text-font-size);
10581
10584
  font-weight: var(--atomix-upload-helper-text-font-weight);
10582
10585
  margin-top: var(--atomix-upload-helper-text-margin-top);
10586
+ text-align: center;
10587
+ opacity: var(--atomix-upload-helper-text-opacity);
10588
+ line-height: 1.4;
10583
10589
  }
10584
10590
  .c-upload__row {
10585
10591
  width: 100%;
@@ -10598,6 +10604,7 @@ a, a:hover {
10598
10604
  .c-upload__loader {
10599
10605
  --upload-loader-percentage: 0;
10600
10606
  display: flex;
10607
+ align-items: center;
10601
10608
  justify-content: space-between;
10602
10609
  position: relative;
10603
10610
  width: 100%;
@@ -10606,6 +10613,8 @@ a, a:hover {
10606
10613
  border: var(--atomix-upload-loader-border-width) solid var(--atomix-upload-loader-border-color);
10607
10614
  border-radius: var(--atomix-upload-loader-border-radius);
10608
10615
  margin-top: var(--atomix-upload-loader-margin-top);
10616
+ background-color: var(--atomix-body-bg);
10617
+ box-shadow: var(--atomix-box-shadow-sm);
10609
10618
  overflow: hidden;
10610
10619
  }
10611
10620
  .c-upload__loader-title {
@@ -10630,6 +10639,20 @@ a, a:hover {
10630
10639
  .c-upload__loader-close {
10631
10640
  color: var(--atomix-upload-loader-contorl-color);
10632
10641
  font-size: var(--atomix-upload-loader-control-icon-size);
10642
+ background: none;
10643
+ border: none;
10644
+ cursor: pointer;
10645
+ padding: 4;
10646
+ border-radius: var(--atomix-border-radius-sm);
10647
+ transition: all 0.2s ease-in-out;
10648
+ }
10649
+ .c-upload__loader-close:hover {
10650
+ background-color: var(--atomix-danger-bg-subtle);
10651
+ color: var(--atomix-danger-text-emphasis);
10652
+ }
10653
+ .c-upload__loader-close:focus {
10654
+ outline: 2px solid var(--atomix-focus-border-color);
10655
+ outline-offset: 2px;
10633
10656
  }
10634
10657
  .c-upload__loader-bar {
10635
10658
  width: 22px;
@@ -10694,6 +10717,112 @@ a, a:hover {
10694
10717
  .c-upload--disabled .c-upload__btn {
10695
10718
  pointer-events: none;
10696
10719
  }
10720
+ .c-upload--disabled .c-upload__inner {
10721
+ cursor: not-allowed;
10722
+ }
10723
+ .c-upload--disabled .c-upload__inner:hover {
10724
+ transform: none;
10725
+ box-shadow: none;
10726
+ border-color: var(--atomix-upload-border-color);
10727
+ background-color: transparent;
10728
+ }
10729
+ .c-upload--dragging .c-upload__inner {
10730
+ border-color: var(--atomix-primary-6);
10731
+ background-color: var(--atomix-primary-bg-subtle);
10732
+ transform: scale(1.02);
10733
+ box-shadow: var(--atomix-box-shadow-lg);
10734
+ }
10735
+ .c-upload--dragging .c-upload__icon {
10736
+ color: var(--atomix-primary-7);
10737
+ background-color: var(--atomix-primary-border-subtle);
10738
+ transform: scale(1.1);
10739
+ }
10740
+ .c-upload--dragging .c-upload__title {
10741
+ color: var(--atomix-primary-6);
10742
+ }
10743
+ .c-upload--loading .c-upload__loader-bar circle:nth-child(2) {
10744
+ stroke: var(--atomix-primary-6);
10745
+ }
10746
+ .c-upload--success .c-upload__loader-bar circle:nth-child(2) {
10747
+ stroke: var(--atomix-success-6);
10748
+ }
10749
+ .c-upload--error .c-upload__loader-bar circle:nth-child(2) {
10750
+ stroke: var(--atomix-error-6);
10751
+ }
10752
+ .c-upload__input {
10753
+ position: absolute;
10754
+ width: 1px;
10755
+ height: 1px;
10756
+ padding: 0;
10757
+ margin: -1px;
10758
+ overflow: hidden;
10759
+ clip: rect(0, 0, 0, 0);
10760
+ white-space: nowrap;
10761
+ border: 0;
10762
+ }
10763
+ @media (max-width: 768px) {
10764
+ .c-upload {
10765
+ max-width: 100%;
10766
+ }
10767
+ .c-upload__inner {
10768
+ padding: 16 12;
10769
+ }
10770
+ .c-upload__icon {
10771
+ font-size: 28;
10772
+ padding: 8;
10773
+ margin-bottom: 8;
10774
+ }
10775
+ .c-upload__title {
10776
+ font-size: var(--atomix-font-size-md);
10777
+ }
10778
+ .c-upload__text {
10779
+ font-size: var(--atomix-font-size-xs);
10780
+ }
10781
+ .c-upload__loader {
10782
+ padding: 8 12;
10783
+ flex-direction: column;
10784
+ align-items: flex-start;
10785
+ gap: 8;
10786
+ }
10787
+ .c-upload__loader-control {
10788
+ align-self: flex-end;
10789
+ }
10790
+ }
10791
+ @media (prefers-reduced-motion: reduce) {
10792
+ .c-upload__inner {
10793
+ transition: none;
10794
+ }
10795
+ .c-upload__inner:hover {
10796
+ transform: none;
10797
+ }
10798
+ .c-upload__icon {
10799
+ transition: none;
10800
+ }
10801
+ .c-upload__icon:hover {
10802
+ transform: none;
10803
+ }
10804
+ .c-upload--dragging .c-upload__inner {
10805
+ transform: none;
10806
+ }
10807
+ .c-upload--dragging .c-upload__icon {
10808
+ transform: none;
10809
+ }
10810
+ }
10811
+ @media (prefers-contrast: high) {
10812
+ .c-upload__inner {
10813
+ border-width: 3px;
10814
+ }
10815
+ .c-upload--dragging .c-upload__inner {
10816
+ border-width: 4px;
10817
+ }
10818
+ .c-upload__loader {
10819
+ border-width: 2px;
10820
+ }
10821
+ }
10822
+ .c-upload__inner:focus-visible {
10823
+ outline: 2px solid var(--atomix-focus-border-color);
10824
+ outline-offset: 2px;
10825
+ }
10697
10826
  .c-video-player {
10698
10827
  --atomix--video-player-bg: #000;
10699
10828
  --atomix--video-player-border-radius: 12px;
@@ -12011,6 +12140,35 @@ body.is-open-photoviewer {
12011
12140
  display: block !important;
12012
12141
  clear: both !important;
12013
12142
  }
12143
+ .u-glass-clean-root {
12144
+ isolation: initial !important;
12145
+ contain: none !important;
12146
+ transform-style: flat !important;
12147
+ will-change: auto !important;
12148
+ transform: none !important;
12149
+ z-index: auto;
12150
+ z-index: initial;
12151
+ }
12152
+ .u-glass-debug {
12153
+ outline: 2px dashed red !important;
12154
+ }
12155
+ .u-glass-debug::after {
12156
+ content: "Glass Debug";
12157
+ position: absolute;
12158
+ top: -20px;
12159
+ left: 0;
12160
+ background: red;
12161
+ color: white;
12162
+ font-size: 10px;
12163
+ padding: 2px 4px;
12164
+ z-index: 9999;
12165
+ }
12166
+ @media (prefers-reduced-motion: reduce) {
12167
+ .u-glass-no-motion {
12168
+ transition: none !important;
12169
+ animation: none !important;
12170
+ }
12171
+ }
12014
12172
  .u-link-primary {
12015
12173
  color: RGBA(var(--atomix-primary-rgb), var(--atomix-u-link-opacity, 1)) !important;
12016
12174
  text-decoration-color: RGBA(var(--atomix-primary-rgb), var(--atomix-u-link-underline-opacity, 1)) !important;
@@ -12261,19 +12419,19 @@ body.is-open-photoviewer {
12261
12419
  border-width: 5px;
12262
12420
  }
12263
12421
  .u-border-opacity-10 {
12264
- : 0.1;
12422
+ --atomix-u-u-border-opacity-10: 0.1;
12265
12423
  }
12266
12424
  .u-border-opacity-25 {
12267
- : 0.25;
12425
+ --atomix-u-u-border-opacity-25: 0.25;
12268
12426
  }
12269
12427
  .u-border-opacity-50 {
12270
- : 0.5;
12428
+ --atomix-u-u-border-opacity-50: 0.5;
12271
12429
  }
12272
12430
  .u-border-opacity-75 {
12273
- : 0.75;
12431
+ --atomix-u-u-border-opacity-75: 0.75;
12274
12432
  }
12275
12433
  .u-border-opacity-100 {
12276
- : 1;
12434
+ --atomix-u-u-border-opacity-100: 1;
12277
12435
  }
12278
12436
  .u-rounded {
12279
12437
  border-radius: var(--atomix-border-radius);
@@ -12609,27 +12767,27 @@ body.is-open-photoviewer {
12609
12767
  order: 6;
12610
12768
  }
12611
12769
  .u-link-opacityhover-10 {
12612
- : 0.1;
12770
+ --atomix-u-u-link-opacity-10: 0.1;
12613
12771
  }
12614
- .u-link-opacityhoverhover-25 {
12615
- : 0.25;
12772
+ .u-link-opacityhover-25 {
12773
+ --atomix-u-u-link-opacity-25: 0.25;
12616
12774
  }
12617
- .u-link-opacityhoverhoverhover-50 {
12618
- : 0.5;
12775
+ .u-link-opacityhover-50 {
12776
+ --atomix-u-u-link-opacity-50: 0.5;
12619
12777
  }
12620
- .u-link-opacityhoverhoverhoverhover-75 {
12621
- : 0.75;
12778
+ .u-link-opacityhover-75 {
12779
+ --atomix-u-u-link-opacity-75: 0.75;
12622
12780
  }
12623
- .u-link-opacityhoverhoverhoverhoverhover-100 {
12624
- : 1;
12781
+ .u-link-opacityhover-100 {
12782
+ --atomix-u-u-link-opacity-100: 1;
12625
12783
  }
12626
12784
  .u-link-offsethover-1 {
12627
12785
  text-underline-offset: 0.125em;
12628
12786
  }
12629
- .u-link-offsethoverhover-2 {
12787
+ .u-link-offsethover-2 {
12630
12788
  text-underline-offset: 0.25em;
12631
12789
  }
12632
- .u-link-offsethoverhoverhover-3 {
12790
+ .u-link-offsethover-3 {
12633
12791
  text-underline-offset: 0.375em;
12634
12792
  }
12635
12793
  .u-link-underline-primary {
@@ -12666,22 +12824,22 @@ body.is-open-photoviewer {
12666
12824
  text-decoration-color: rgba(var(--atomix-link-color-rgb), var(--atomix-u-link-underline-opacity, 1));
12667
12825
  }
12668
12826
  .u-link-underline-opacityhover-0 {
12669
- : 0;
12827
+ --atomix-u-u-link-underline-opacity-0: 0;
12670
12828
  }
12671
- .u-link-underline-opacityhoverhover-10 {
12672
- : 0.1;
12829
+ .u-link-underline-opacityhover-10 {
12830
+ --atomix-u-u-link-underline-opacity-10: 0.1;
12673
12831
  }
12674
- .u-link-underline-opacityhoverhoverhover-25 {
12675
- : 0.25;
12832
+ .u-link-underline-opacityhover-25 {
12833
+ --atomix-u-u-link-underline-opacity-25: 0.25;
12676
12834
  }
12677
- .u-link-underline-opacityhoverhoverhoverhover-50 {
12678
- : 0.5;
12835
+ .u-link-underline-opacityhover-50 {
12836
+ --atomix-u-u-link-underline-opacity-50: 0.5;
12679
12837
  }
12680
- .u-link-underline-opacityhoverhoverhoverhoverhover-75 {
12681
- : 0.75;
12838
+ .u-link-underline-opacityhover-75 {
12839
+ --atomix-u-u-link-underline-opacity-75: 0.75;
12682
12840
  }
12683
- .u-link-underline-opacityhoverhoverhoverhoverhoverhover-100 {
12684
- : 1;
12841
+ .u-link-underline-opacityhover-100 {
12842
+ --atomix-u-u-link-underline-opacity-100: 1;
12685
12843
  }
12686
12844
  .u-object-fit-contain {
12687
12845
  -o-object-fit: contain;
@@ -12925,13 +13083,13 @@ body.is-open-photoviewer {
12925
13083
  .u-m-1 {
12926
13084
  margin: 0.25rem;
12927
13085
  }
12928
- .u-m-2 {
13086
+ .u-m-1\.5 {
12929
13087
  margin: 0.375rem;
12930
13088
  }
12931
13089
  .u-m-2 {
12932
13090
  margin: 0.5rem;
12933
13091
  }
12934
- .u-m-3 {
13092
+ .u-m-2\.5 {
12935
13093
  margin: 0.625rem;
12936
13094
  }
12937
13095
  .u-m-3 {
@@ -12999,7 +13157,7 @@ body.is-open-photoviewer {
12999
13157
  margin-right: 0.25rem;
13000
13158
  margin-left: 0.25rem;
13001
13159
  }
13002
- .u-mx-2 {
13160
+ .u-mx-1\.5 {
13003
13161
  margin-right: 0.375rem;
13004
13162
  margin-left: 0.375rem;
13005
13163
  }
@@ -13007,7 +13165,7 @@ body.is-open-photoviewer {
13007
13165
  margin-right: 0.5rem;
13008
13166
  margin-left: 0.5rem;
13009
13167
  }
13010
- .u-mx-3 {
13168
+ .u-mx-2\.5 {
13011
13169
  margin-right: 0.625rem;
13012
13170
  margin-left: 0.625rem;
13013
13171
  }
@@ -13095,7 +13253,7 @@ body.is-open-photoviewer {
13095
13253
  margin-top: 0.25rem;
13096
13254
  margin-bottom: 0.25rem;
13097
13255
  }
13098
- .u-my-2 {
13256
+ .u-my-1\.5 {
13099
13257
  margin-top: 0.375rem;
13100
13258
  margin-bottom: 0.375rem;
13101
13259
  }
@@ -13103,7 +13261,7 @@ body.is-open-photoviewer {
13103
13261
  margin-top: 0.5rem;
13104
13262
  margin-bottom: 0.5rem;
13105
13263
  }
13106
- .u-my-3 {
13264
+ .u-my-2\.5 {
13107
13265
  margin-top: 0.625rem;
13108
13266
  margin-bottom: 0.625rem;
13109
13267
  }
@@ -13189,13 +13347,13 @@ body.is-open-photoviewer {
13189
13347
  .u-mt-1 {
13190
13348
  margin-top: 0.25rem;
13191
13349
  }
13192
- .u-mt-2 {
13350
+ .u-mt-1\.5 {
13193
13351
  margin-top: 0.375rem;
13194
13352
  }
13195
13353
  .u-mt-2 {
13196
13354
  margin-top: 0.5rem;
13197
13355
  }
13198
- .u-mt-3 {
13356
+ .u-mt-2\.5 {
13199
13357
  margin-top: 0.625rem;
13200
13358
  }
13201
13359
  .u-mt-3 {
@@ -13261,13 +13419,13 @@ body.is-open-photoviewer {
13261
13419
  .u-me-1 {
13262
13420
  margin-right: 0.25rem;
13263
13421
  }
13264
- .u-me-2 {
13422
+ .u-me-1\.5 {
13265
13423
  margin-right: 0.375rem;
13266
13424
  }
13267
13425
  .u-me-2 {
13268
13426
  margin-right: 0.5rem;
13269
13427
  }
13270
- .u-me-3 {
13428
+ .u-me-2\.5 {
13271
13429
  margin-right: 0.625rem;
13272
13430
  }
13273
13431
  .u-me-3 {
@@ -13333,13 +13491,13 @@ body.is-open-photoviewer {
13333
13491
  .u-mb-1 {
13334
13492
  margin-bottom: 0.25rem;
13335
13493
  }
13336
- .u-mb-2 {
13494
+ .u-mb-1\.5 {
13337
13495
  margin-bottom: 0.375rem;
13338
13496
  }
13339
13497
  .u-mb-2 {
13340
13498
  margin-bottom: 0.5rem;
13341
13499
  }
13342
- .u-mb-3 {
13500
+ .u-mb-2\.5 {
13343
13501
  margin-bottom: 0.625rem;
13344
13502
  }
13345
13503
  .u-mb-3 {
@@ -13405,13 +13563,13 @@ body.is-open-photoviewer {
13405
13563
  .u-ms-1 {
13406
13564
  margin-left: 0.25rem;
13407
13565
  }
13408
- .u-ms-2 {
13566
+ .u-ms-1\.5 {
13409
13567
  margin-left: 0.375rem;
13410
13568
  }
13411
13569
  .u-ms-2 {
13412
13570
  margin-left: 0.5rem;
13413
13571
  }
13414
- .u-ms-3 {
13572
+ .u-ms-2\.5 {
13415
13573
  margin-left: 0.625rem;
13416
13574
  }
13417
13575
  .u-ms-3 {
@@ -13477,13 +13635,13 @@ body.is-open-photoviewer {
13477
13635
  .u-p-1 {
13478
13636
  padding: 0.25rem;
13479
13637
  }
13480
- .u-p-2 {
13638
+ .u-p-1\.5 {
13481
13639
  padding: 0.375rem;
13482
13640
  }
13483
13641
  .u-p-2 {
13484
13642
  padding: 0.5rem;
13485
13643
  }
13486
- .u-p-3 {
13644
+ .u-p-2\.5 {
13487
13645
  padding: 0.625rem;
13488
13646
  }
13489
13647
  .u-p-3 {
@@ -13548,7 +13706,7 @@ body.is-open-photoviewer {
13548
13706
  padding-right: 0.25rem;
13549
13707
  padding-left: 0.25rem;
13550
13708
  }
13551
- .u-px-2 {
13709
+ .u-px-1\.5 {
13552
13710
  padding-right: 0.375rem;
13553
13711
  padding-left: 0.375rem;
13554
13712
  }
@@ -13556,7 +13714,7 @@ body.is-open-photoviewer {
13556
13714
  padding-right: 0.5rem;
13557
13715
  padding-left: 0.5rem;
13558
13716
  }
13559
- .u-px-3 {
13717
+ .u-px-2\.5 {
13560
13718
  padding-right: 0.625rem;
13561
13719
  padding-left: 0.625rem;
13562
13720
  }
@@ -13640,7 +13798,7 @@ body.is-open-photoviewer {
13640
13798
  padding-top: 0.25rem;
13641
13799
  padding-bottom: 0.25rem;
13642
13800
  }
13643
- .u-py-2 {
13801
+ .u-py-1\.5 {
13644
13802
  padding-top: 0.375rem;
13645
13803
  padding-bottom: 0.375rem;
13646
13804
  }
@@ -13648,7 +13806,7 @@ body.is-open-photoviewer {
13648
13806
  padding-top: 0.5rem;
13649
13807
  padding-bottom: 0.5rem;
13650
13808
  }
13651
- .u-py-3 {
13809
+ .u-py-2\.5 {
13652
13810
  padding-top: 0.625rem;
13653
13811
  padding-bottom: 0.625rem;
13654
13812
  }
@@ -13730,13 +13888,13 @@ body.is-open-photoviewer {
13730
13888
  .u-pt-1 {
13731
13889
  padding-top: 0.25rem;
13732
13890
  }
13733
- .u-pt-2 {
13891
+ .u-pt-1\.5 {
13734
13892
  padding-top: 0.375rem;
13735
13893
  }
13736
13894
  .u-pt-2 {
13737
13895
  padding-top: 0.5rem;
13738
13896
  }
13739
- .u-pt-3 {
13897
+ .u-pt-2\.5 {
13740
13898
  padding-top: 0.625rem;
13741
13899
  }
13742
13900
  .u-pt-3 {
@@ -13799,13 +13957,13 @@ body.is-open-photoviewer {
13799
13957
  .u-pe-1 {
13800
13958
  padding-right: 0.25rem;
13801
13959
  }
13802
- .u-pe-2 {
13960
+ .u-pe-1\.5 {
13803
13961
  padding-right: 0.375rem;
13804
13962
  }
13805
13963
  .u-pe-2 {
13806
13964
  padding-right: 0.5rem;
13807
13965
  }
13808
- .u-pe-3 {
13966
+ .u-pe-2\.5 {
13809
13967
  padding-right: 0.625rem;
13810
13968
  }
13811
13969
  .u-pe-3 {
@@ -13868,13 +14026,13 @@ body.is-open-photoviewer {
13868
14026
  .u-pb-1 {
13869
14027
  padding-bottom: 0.25rem;
13870
14028
  }
13871
- .u-pb-2 {
14029
+ .u-pb-1\.5 {
13872
14030
  padding-bottom: 0.375rem;
13873
14031
  }
13874
14032
  .u-pb-2 {
13875
14033
  padding-bottom: 0.5rem;
13876
14034
  }
13877
- .u-pb-3 {
14035
+ .u-pb-2\.5 {
13878
14036
  padding-bottom: 0.625rem;
13879
14037
  }
13880
14038
  .u-pb-3 {
@@ -13937,13 +14095,13 @@ body.is-open-photoviewer {
13937
14095
  .u-ps-1 {
13938
14096
  padding-left: 0.25rem;
13939
14097
  }
13940
- .u-ps-2 {
14098
+ .u-ps-1\.5 {
13941
14099
  padding-left: 0.375rem;
13942
14100
  }
13943
14101
  .u-ps-2 {
13944
14102
  padding-left: 0.5rem;
13945
14103
  }
13946
- .u-ps-3 {
14104
+ .u-ps-2\.5 {
13947
14105
  padding-left: 0.625rem;
13948
14106
  }
13949
14107
  .u-ps-3 {
@@ -14006,13 +14164,13 @@ body.is-open-photoviewer {
14006
14164
  .u-gap-1 {
14007
14165
  gap: 0.25rem;
14008
14166
  }
14009
- .u-gap-2 {
14167
+ .u-gap-1\.5 {
14010
14168
  gap: 0.375rem;
14011
14169
  }
14012
14170
  .u-gap-2 {
14013
14171
  gap: 0.5rem;
14014
14172
  }
14015
- .u-gap-3 {
14173
+ .u-gap-2\.5 {
14016
14174
  gap: 0.625rem;
14017
14175
  }
14018
14176
  .u-gap-3 {
@@ -14075,13 +14233,13 @@ body.is-open-photoviewer {
14075
14233
  .u-row-gap-1 {
14076
14234
  row-gap: 0.25rem;
14077
14235
  }
14078
- .u-row-gap-2 {
14236
+ .u-row-gap-1\.5 {
14079
14237
  row-gap: 0.375rem;
14080
14238
  }
14081
14239
  .u-row-gap-2 {
14082
14240
  row-gap: 0.5rem;
14083
14241
  }
14084
- .u-row-gap-3 {
14242
+ .u-row-gap-2\.5 {
14085
14243
  row-gap: 0.625rem;
14086
14244
  }
14087
14245
  .u-row-gap-3 {
@@ -14146,7 +14304,7 @@ body.is-open-photoviewer {
14146
14304
  -moz-column-gap: 0.25rem;
14147
14305
  column-gap: 0.25rem;
14148
14306
  }
14149
- .u-column-gap-2 {
14307
+ .u-column-gap-1\.5 {
14150
14308
  -moz-column-gap: 0.375rem;
14151
14309
  column-gap: 0.375rem;
14152
14310
  }
@@ -14154,7 +14312,7 @@ body.is-open-photoviewer {
14154
14312
  -moz-column-gap: 0.5rem;
14155
14313
  column-gap: 0.5rem;
14156
14314
  }
14157
- .u-column-gap-3 {
14315
+ .u-column-gap-2\.5 {
14158
14316
  -moz-column-gap: 0.625rem;
14159
14317
  column-gap: 0.625rem;
14160
14318
  }