@pathscale/ui 1.2.6 → 1.2.8

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 (391) hide show
  1. package/LICENSE +22 -22
  2. package/README.md +59 -59
  3. package/dist/components/_shared/index.js +1 -3
  4. package/dist/components/_shared/overlayPosition.js +6 -6
  5. package/dist/components/accordion/Accordion.css +158 -158
  6. package/dist/components/accordion/Accordion.js +46 -45
  7. package/dist/components/accordion/index.js +3 -9
  8. package/dist/components/alert/Alert.css +116 -116
  9. package/dist/components/alert/Alert.js +34 -33
  10. package/dist/components/alert/index.js +1 -8
  11. package/dist/components/auth-card/AuthCard.js +21 -21
  12. package/dist/components/auth-card/index.js +1 -3
  13. package/dist/components/auth-error-message/AuthErrorMessage.js +10 -10
  14. package/dist/components/auth-error-message/index.js +1 -3
  15. package/dist/components/auth-field-group/AuthFieldGroup.js +9 -9
  16. package/dist/components/auth-field-group/index.js +1 -3
  17. package/dist/components/auth-footer-links/AuthFooterLinks.js +21 -21
  18. package/dist/components/auth-footer-links/index.js +1 -3
  19. package/dist/components/auth-form/AuthForm.js +11 -11
  20. package/dist/components/auth-form/index.js +1 -3
  21. package/dist/components/auth-powered-by/AuthPoweredBy.js +15 -15
  22. package/dist/components/auth-powered-by/index.js +1 -3
  23. package/dist/components/auth-submit-button/AuthSubmitButton.js +10 -10
  24. package/dist/components/auth-submit-button/index.js +1 -3
  25. package/dist/components/auth-success-message/AuthSuccessMessage.js +12 -12
  26. package/dist/components/auth-success-message/index.js +1 -3
  27. package/dist/components/avatar/Avatar.css +124 -124
  28. package/dist/components/avatar/Avatar.js +28 -27
  29. package/dist/components/avatar/AvatarGroup.js +11 -11
  30. package/dist/components/avatar/index.js +1 -6
  31. package/dist/components/badge/Badge.css +164 -164
  32. package/dist/components/badge/Badge.js +19 -19
  33. package/dist/components/badge/index.js +7 -9
  34. package/dist/components/breadcrumbs/Breadcrumbs.css +63 -63
  35. package/dist/components/breadcrumbs/Breadcrumbs.js +27 -26
  36. package/dist/components/breadcrumbs/index.js +1 -5
  37. package/dist/components/button/Button.css +194 -194
  38. package/dist/components/button/Button.js +23 -23
  39. package/dist/components/button/index.js +1 -3
  40. package/dist/components/button-group/ButtonGroup.css +117 -117
  41. package/dist/components/button-group/ButtonGroup.js +16 -15
  42. package/dist/components/button-group/context.js +2 -2
  43. package/dist/components/button-group/index.js +3 -6
  44. package/dist/components/calendar/Calendar.css +258 -258
  45. package/dist/components/calendar/Calendar.js +88 -88
  46. package/dist/components/calendar/index.js +1 -3
  47. package/dist/components/card/Card.css +110 -110
  48. package/dist/components/card/Card.js +23 -22
  49. package/dist/components/card/index.js +3 -8
  50. package/dist/components/chatbubble/ChatBubble.css +164 -164
  51. package/dist/components/chatbubble/ChatBubble.js +20 -20
  52. package/dist/components/chatbubble/ChatBubbleAvatar.js +9 -9
  53. package/dist/components/chatbubble/ChatBubbleFooter.js +9 -9
  54. package/dist/components/chatbubble/ChatBubbleHeader.js +11 -11
  55. package/dist/components/chatbubble/ChatBubbleMessage.js +12 -12
  56. package/dist/components/chatbubble/ChatBubbleTime.js +9 -9
  57. package/dist/components/chatbubble/index.js +1 -3
  58. package/dist/components/checkbox/Checkbox.css +183 -183
  59. package/dist/components/checkbox/Checkbox.js +32 -32
  60. package/dist/components/checkbox/index.js +1 -3
  61. package/dist/components/checkbox-group/CheckboxGroup.css +10 -10
  62. package/dist/components/checkbox-group/CheckboxGroup.js +14 -14
  63. package/dist/components/checkbox-group/context.js +2 -2
  64. package/dist/components/checkbox-group/index.js +4 -4
  65. package/dist/components/chip/Chip.css +197 -197
  66. package/dist/components/chip/Chip.js +32 -32
  67. package/dist/components/chip/index.js +6 -7
  68. package/dist/components/close-button/CloseButton.css +81 -81
  69. package/dist/components/close-button/CloseButton.js +22 -22
  70. package/dist/components/close-button/index.js +1 -3
  71. package/dist/components/color-area/ColorArea.css +54 -54
  72. package/dist/components/color-area/ColorArea.js +16 -16
  73. package/dist/components/color-area/index.js +3 -3
  74. package/dist/components/color-field/ColorField.css +88 -88
  75. package/dist/components/color-field/ColorField.js +21 -21
  76. package/dist/components/color-field/index.js +3 -3
  77. package/dist/components/color-picker/ColorPicker.css +28 -28
  78. package/dist/components/color-picker/ColorPicker.js +46 -45
  79. package/dist/components/color-picker/index.js +3 -8
  80. package/dist/components/color-slider/ColorSlider.css +57 -57
  81. package/dist/components/color-slider/ColorSlider.js +19 -19
  82. package/dist/components/color-slider/index.js +3 -3
  83. package/dist/components/color-swatch/ColorSwatch.css +84 -84
  84. package/dist/components/color-swatch/ColorSwatch.js +12 -12
  85. package/dist/components/color-swatch/index.js +3 -3
  86. package/dist/components/color-swatch-picker/ColorSwatchPicker.css +12 -12
  87. package/dist/components/color-swatch-picker/ColorSwatchPicker.js +16 -15
  88. package/dist/components/color-swatch-picker/index.js +1 -5
  89. package/dist/components/color-wheel-flower/ColorWheelFlower.css +147 -147
  90. package/dist/components/color-wheel-flower/ColorWheelFlower.js +84 -84
  91. package/dist/components/color-wheel-flower/colorWheelFlowerContext.js +3 -3
  92. package/dist/components/color-wheel-flower/index.js +2 -6
  93. package/dist/components/combo-box/ComboBox.css +344 -344
  94. package/dist/components/combo-box/ComboBox.js +92 -91
  95. package/dist/components/combo-box/index.js +3 -10
  96. package/dist/components/date-field/DateField.css +215 -215
  97. package/dist/components/date-field/DateField.js +45 -44
  98. package/dist/components/date-field/index.js +3 -11
  99. package/dist/components/date-picker/DatePicker.css +143 -143
  100. package/dist/components/date-picker/DatePicker.js +38 -38
  101. package/dist/components/date-picker/index.js +1 -3
  102. package/dist/components/date-range-picker/DateRangePicker.css +149 -149
  103. package/dist/components/date-range-picker/DateRangePicker.js +53 -53
  104. package/dist/components/date-range-picker/index.js +1 -3
  105. package/dist/components/description/Description.css +10 -10
  106. package/dist/components/description/Description.js +11 -10
  107. package/dist/components/description/index.js +3 -5
  108. package/dist/components/disclosure/Disclosure.css +84 -84
  109. package/dist/components/disclosure/Disclosure.js +44 -43
  110. package/dist/components/disclosure/index.js +4 -9
  111. package/dist/components/disclosure-group/DisclosureGroup.css +9 -9
  112. package/dist/components/disclosure-group/DisclosureGroup.js +15 -14
  113. package/dist/components/disclosure-group/index.js +5 -6
  114. package/dist/components/disclosure-group/useDisclosureGroupNavigation.js +4 -4
  115. package/dist/components/drawer/Drawer.context.js +3 -3
  116. package/dist/components/drawer/Drawer.css +463 -463
  117. package/dist/components/drawer/Drawer.js +109 -108
  118. package/dist/components/drawer/index.js +1 -15
  119. package/dist/components/dropdown/Dropdown.css +211 -211
  120. package/dist/components/dropdown/Dropdown.js +68 -67
  121. package/dist/components/dropdown/index.js +3 -4
  122. package/dist/components/empty-state/EmptyState.css +39 -39
  123. package/dist/components/empty-state/EmptyState.js +27 -26
  124. package/dist/components/empty-state/index.js +1 -8
  125. package/dist/components/error-message/ErrorMessage.css +20 -20
  126. package/dist/components/error-message/ErrorMessage.js +13 -12
  127. package/dist/components/error-message/index.js +1 -5
  128. package/dist/components/field-error/FieldError.css +27 -27
  129. package/dist/components/field-error/FieldError.js +18 -17
  130. package/dist/components/field-error/index.js +1 -5
  131. package/dist/components/fieldset/Fieldset.css +30 -30
  132. package/dist/components/fieldset/Fieldset.js +23 -22
  133. package/dist/components/fieldset/index.js +3 -8
  134. package/dist/components/flex/Flex.css +5 -5
  135. package/dist/components/flex/Flex.js +14 -14
  136. package/dist/components/flex/index.js +1 -3
  137. package/dist/components/floating-dock/FloatingDock.css +208 -208
  138. package/dist/components/floating-dock/FloatingDock.js +78 -78
  139. package/dist/components/floating-dock/index.js +1 -3
  140. package/dist/components/footer/Footer.js +12 -12
  141. package/dist/components/footer/FooterTitle.js +9 -9
  142. package/dist/components/footer/footer.css +51 -51
  143. package/dist/components/footer/index.js +1 -3
  144. package/dist/components/form/FieldErrorMessage.js +10 -9
  145. package/dist/components/form/Form.css +5 -5
  146. package/dist/components/form/Form.js +18 -17
  147. package/dist/components/form/FormField.js +21 -20
  148. package/dist/components/form/FormSubmitButton.js +12 -11
  149. package/dist/components/form/index.js +6 -12
  150. package/dist/components/glass-panel/GlassPanel.classes.d.ts +3 -0
  151. package/dist/components/glass-panel/GlassPanel.classes.js +3 -0
  152. package/dist/components/glass-panel/GlassPanel.css +359 -282
  153. package/dist/components/glass-panel/GlassPanel.d.ts +3 -0
  154. package/dist/components/glass-panel/GlassPanel.js +30 -27
  155. package/dist/components/glass-panel/index.js +1 -3
  156. package/dist/components/glow-card/GlowCard.css +100 -100
  157. package/dist/components/glow-card/GlowCard.js +11 -11
  158. package/dist/components/glow-card/index.js +1 -3
  159. package/dist/components/grid/Grid.css +5 -5
  160. package/dist/components/grid/Grid.js +15 -15
  161. package/dist/components/grid/index.js +1 -3
  162. package/dist/components/header/Header.css +13 -13
  163. package/dist/components/header/Header.js +11 -10
  164. package/dist/components/header/index.js +3 -5
  165. package/dist/components/icon/Icon.css +10 -10
  166. package/dist/components/icon/Icon.js +9 -9
  167. package/dist/components/icon/index.js +1 -3
  168. package/dist/components/immersive-landing/ImmersiveLanding.css +565 -565
  169. package/dist/components/immersive-landing/ImmersiveLanding.js +45 -45
  170. package/dist/components/immersive-landing/ImmersiveLandingArrows.js +18 -18
  171. package/dist/components/immersive-landing/ImmersiveLandingContext.js +3 -3
  172. package/dist/components/immersive-landing/ImmersiveLandingNavigation.js +34 -34
  173. package/dist/components/immersive-landing/ImmersiveLandingPage.js +16 -16
  174. package/dist/components/immersive-landing/components/CookieConsent.js +71 -71
  175. package/dist/components/immersive-landing/components/FirefoxPWABanner.js +42 -42
  176. package/dist/components/immersive-landing/components/PWAInstallPrompt.js +40 -40
  177. package/dist/components/immersive-landing/index.js +6 -14
  178. package/dist/components/immersive-landing/useImmersiveLanding.js +8 -8
  179. package/dist/components/input/Input.css +155 -155
  180. package/dist/components/input/Input.js +46 -46
  181. package/dist/components/input/index.js +3 -3
  182. package/dist/components/input-group/InputGroup.css +172 -172
  183. package/dist/components/input-group/InputGroup.js +32 -31
  184. package/dist/components/input-group/index.js +3 -9
  185. package/dist/components/input-otp/InputOTP.css +170 -170
  186. package/dist/components/input-otp/InputOTP.js +52 -51
  187. package/dist/components/input-otp/index.js +1 -11
  188. package/dist/components/join/Join.js +15 -15
  189. package/dist/components/join/index.js +1 -3
  190. package/dist/components/kbd/Kbd.css +60 -60
  191. package/dist/components/kbd/Kbd.js +39 -38
  192. package/dist/components/kbd/index.js +1 -8
  193. package/dist/components/label/Label.css +30 -30
  194. package/dist/components/label/Label.js +11 -10
  195. package/dist/components/label/index.js +3 -5
  196. package/dist/components/language-switcher/LanguageSwitcher.css +56 -56
  197. package/dist/components/language-switcher/LanguageSwitcher.js +24 -24
  198. package/dist/components/language-switcher/createI18n.js +10 -10
  199. package/dist/components/language-switcher/index.js +2 -8
  200. package/dist/components/link/Link.css +131 -131
  201. package/dist/components/link/Link.js +21 -20
  202. package/dist/components/link/index.js +1 -5
  203. package/dist/components/list-box/ListBox.css +148 -148
  204. package/dist/components/list-box/ListBox.js +19 -18
  205. package/dist/components/list-box/ListBoxItem.js +31 -30
  206. package/dist/components/list-box/ListBoxSection.js +15 -14
  207. package/dist/components/list-box/context.js +2 -2
  208. package/dist/components/list-box/index.js +11 -16
  209. package/dist/components/live-chat/LiveChat.css +324 -324
  210. package/dist/components/live-chat/LiveChatBubble.js +28 -28
  211. package/dist/components/live-chat/LiveChatPanel.js +67 -67
  212. package/dist/components/live-chat/index.js +2 -5
  213. package/dist/components/menu/Menu.css +199 -199
  214. package/dist/components/menu/Menu.js +24 -28
  215. package/dist/components/menu/MenuItem.js +37 -36
  216. package/dist/components/menu/MenuSection.js +15 -14
  217. package/dist/components/menu/context.js +2 -2
  218. package/dist/components/menu/index.js +4 -12
  219. package/dist/components/meter/Meter.css +89 -89
  220. package/dist/components/meter/Meter.js +35 -34
  221. package/dist/components/meter/index.js +1 -8
  222. package/dist/components/modal/Modal.css +320 -320
  223. package/dist/components/modal/Modal.js +79 -78
  224. package/dist/components/modal/index.js +1 -13
  225. package/dist/components/navbar/Navbar.classes.d.ts +9 -0
  226. package/dist/components/navbar/Navbar.classes.js +9 -0
  227. package/dist/components/navbar/Navbar.css +110 -110
  228. package/dist/components/navbar/Navbar.js +16 -16
  229. package/dist/components/navbar/NavbarRow.js +11 -11
  230. package/dist/components/navbar/NavbarSection.js +10 -10
  231. package/dist/components/navbar/NavbarStack.js +11 -11
  232. package/dist/components/navbar/index.js +1 -3
  233. package/dist/components/noise-background/NoiseBackground.css +66 -66
  234. package/dist/components/noise-background/NoiseBackground.js +33 -33
  235. package/dist/components/noise-background/index.js +1 -3
  236. package/dist/components/number-field/NumberField.css +198 -198
  237. package/dist/components/number-field/NumberField.js +43 -42
  238. package/dist/components/number-field/index.js +1 -9
  239. package/dist/components/pagination/Pagination.css +121 -121
  240. package/dist/components/pagination/Pagination.js +32 -32
  241. package/dist/components/pagination/index.js +1 -3
  242. package/dist/components/password-field/PasswordField.js +18 -17
  243. package/dist/components/password-field/index.js +1 -3
  244. package/dist/components/password-requirements/PasswordRequirements.js +22 -22
  245. package/dist/components/password-requirements/index.js +1 -3
  246. package/dist/components/password-rules/index.js +1 -4
  247. package/dist/components/popover/Popover.css +117 -117
  248. package/dist/components/popover/Popover.js +52 -51
  249. package/dist/components/popover/index.js +4 -9
  250. package/dist/components/progress-bar/ProgressBar.css +104 -104
  251. package/dist/components/progress-bar/ProgressBar.js +28 -28
  252. package/dist/components/progress-bar/index.js +1 -3
  253. package/dist/components/progress-circle/ProgressCircle.css +82 -82
  254. package/dist/components/progress-circle/ProgressCircle.js +30 -30
  255. package/dist/components/progress-circle/index.js +1 -3
  256. package/dist/components/radio/Radio.css +129 -129
  257. package/dist/components/radio/Radio.js +28 -28
  258. package/dist/components/radio/index.js +1 -3
  259. package/dist/components/radio-group/RadioGroup.css +58 -58
  260. package/dist/components/radio-group/RadioGroup.js +31 -31
  261. package/dist/components/radio-group/context.js +2 -2
  262. package/dist/components/radio-group/index.js +4 -4
  263. package/dist/components/range-calendar/RangeCalendar.css +51 -51
  264. package/dist/components/range-calendar/RangeCalendar.js +18 -18
  265. package/dist/components/range-calendar/index.js +1 -3
  266. package/dist/components/scroll-shadow/ScrollShadow.css +93 -93
  267. package/dist/components/scroll-shadow/ScrollShadow.js +17 -17
  268. package/dist/components/scroll-shadow/index.js +1 -3
  269. package/dist/components/scroll-shadow/useScrollShadow.js +4 -4
  270. package/dist/components/search-field/SearchField.css +183 -183
  271. package/dist/components/search-field/SearchField.js +42 -41
  272. package/dist/components/search-field/index.js +1 -9
  273. package/dist/components/select/Select.css +284 -284
  274. package/dist/components/select/Select.js +130 -130
  275. package/dist/components/select/index.js +1 -3
  276. package/dist/components/separator/Separator.css +35 -35
  277. package/dist/components/separator/Separator.js +12 -11
  278. package/dist/components/separator/index.js +1 -4
  279. package/dist/components/size-picker/SizePicker.js +17 -17
  280. package/dist/components/size-picker/index.js +2 -6
  281. package/dist/components/size-picker/sizeStore.js +5 -5
  282. package/dist/components/skeleton/Skeleton.css +95 -95
  283. package/dist/components/skeleton/Skeleton.js +9 -9
  284. package/dist/components/skeleton/index.js +1 -3
  285. package/dist/components/slider/Slider.css +122 -122
  286. package/dist/components/slider/Slider.js +27 -27
  287. package/dist/components/slider/index.js +1 -3
  288. package/dist/components/spinner/Spinner.css +131 -131
  289. package/dist/components/spinner/Spinner.js +17 -17
  290. package/dist/components/spinner/index.js +1 -5
  291. package/dist/components/surface/Surface.css +37 -37
  292. package/dist/components/surface/Surface.js +11 -10
  293. package/dist/components/surface/index.js +1 -4
  294. package/dist/components/table/ExpandToggle.js +14 -14
  295. package/dist/components/table/InlineConfirm.js +12 -12
  296. package/dist/components/table/MobileListView.js +24 -24
  297. package/dist/components/table/SortIcon.js +11 -11
  298. package/dist/components/table/Table.css +426 -426
  299. package/dist/components/table/Table.js +82 -81
  300. package/dist/components/table/VirtualSpacerRow.js +9 -9
  301. package/dist/components/table/index.js +7 -38
  302. package/dist/components/tabs/Tabs.css +203 -203
  303. package/dist/components/tabs/Tabs.js +62 -61
  304. package/dist/components/tabs/index.js +1 -4
  305. package/dist/components/tag/Tag.css +121 -121
  306. package/dist/components/tag/Tag.js +41 -40
  307. package/dist/components/tag/index.js +3 -6
  308. package/dist/components/tag-group/TagGroup.css +22 -22
  309. package/dist/components/tag-group/TagGroup.js +24 -23
  310. package/dist/components/tag-group/context.js +2 -2
  311. package/dist/components/tag-group/index.js +1 -6
  312. package/dist/components/text/Text.css +66 -66
  313. package/dist/components/text/Text.js +11 -10
  314. package/dist/components/text/index.js +1 -5
  315. package/dist/components/text-area/TextArea.css +95 -95
  316. package/dist/components/text-area/TextArea.js +14 -13
  317. package/dist/components/text-area/index.js +1 -5
  318. package/dist/components/text-field/TextField.css +33 -33
  319. package/dist/components/text-field/TextField.js +14 -13
  320. package/dist/components/text-field/index.js +3 -7
  321. package/dist/components/textarea/Textarea.js +10 -11
  322. package/dist/components/textarea/index.js +1 -6
  323. package/dist/components/theme-color-picker/ThemeColorPicker.js +52 -52
  324. package/dist/components/theme-color-picker/hueShift.js +8 -8
  325. package/dist/components/theme-color-picker/index.js +2 -7
  326. package/dist/components/time-field/TimeField.css +215 -215
  327. package/dist/components/time-field/TimeField.js +43 -42
  328. package/dist/components/time-field/index.js +3 -11
  329. package/dist/components/toast/Toast.css +344 -344
  330. package/dist/components/toast/Toast.js +101 -100
  331. package/dist/components/toast/index.js +1 -19
  332. package/dist/components/toggle/Toggle.css +237 -237
  333. package/dist/components/toggle/Toggle.js +31 -31
  334. package/dist/components/toggle/index.js +1 -3
  335. package/dist/components/toolbar/Toolbar.css +55 -55
  336. package/dist/components/toolbar/Toolbar.js +12 -11
  337. package/dist/components/toolbar/index.js +1 -5
  338. package/dist/components/tooltip/Tooltip.css +153 -153
  339. package/dist/components/tooltip/Tooltip.js +40 -39
  340. package/dist/components/tooltip/index.js +1 -7
  341. package/dist/components/utils.js +6 -7
  342. package/dist/components/video-preview/VideoPreview.js +14 -13
  343. package/dist/components/video-preview/index.js +1 -3
  344. package/dist/hooks/date/useCalendarNavigation.js +18 -18
  345. package/dist/hooks/date/useCalendarState.js +19 -19
  346. package/dist/hooks/date/useDateSelection.js +7 -7
  347. package/dist/hooks/date/usePickerOpenState.js +8 -8
  348. package/dist/hooks/date/useRangeSelection.js +16 -16
  349. package/dist/hooks/form/FormContext.js +3 -3
  350. package/dist/hooks/form/createForm.js +4 -4
  351. package/dist/hooks/form/index.js +4 -10
  352. package/dist/hooks/form/useFieldNew.js +10 -10
  353. package/dist/hooks/layout/index.js +1 -3
  354. package/dist/hooks/layout/useDesktop.js +4 -4
  355. package/dist/hooks/table/index.js +8 -18
  356. package/dist/hooks/table/useAnchoredOverlayPosition.js +5 -5
  357. package/dist/hooks/table/useTableExpansion.js +4 -4
  358. package/dist/hooks/table/useTableFiltering.js +8 -8
  359. package/dist/hooks/table/useTableModel.js +10 -10
  360. package/dist/hooks/table/useTablePagination.js +4 -4
  361. package/dist/hooks/table/useTableSelection.js +4 -4
  362. package/dist/hooks/table/useTableSorting.js +6 -6
  363. package/dist/index.css +74 -74
  364. package/dist/index.js +108 -398
  365. package/dist/lib/refs/index.js +1 -3
  366. package/dist/lib/refs/mergeRefs.js +2 -2
  367. package/dist/lib/style/index.js +1 -4
  368. package/dist/lib/tag/createIsButton.js +4 -4
  369. package/dist/lib/tag/createTagName.js +2 -2
  370. package/dist/lib/tag/index.js +2 -7
  371. package/dist/motion/engine.js +4 -4
  372. package/dist/motion/index.js +10 -39
  373. package/dist/motion/popmotion.js +2 -2
  374. package/dist/motion/presets.js +4 -4
  375. package/dist/motion/route.js +7 -7
  376. package/dist/motion/solid/AnimatedCollapse.js +27 -26
  377. package/dist/motion/solid/MotionDiv.js +17 -16
  378. package/dist/motion/solid/Presence.js +13 -12
  379. package/dist/motion/solid/index.js +3 -10
  380. package/dist/motion/system.js +9 -9
  381. package/dist/primitives/streaming/index.js +2 -5
  382. package/dist/primitives/streaming/useStreamingBuffer.js +2 -2
  383. package/dist/primitives/streaming/useStreamingSubscription.js +7 -7
  384. package/dist/primitives/virtualizer/index.js +1 -3
  385. package/dist/primitives/virtualizer/useVirtualRows.js +7 -7
  386. package/dist/purge-manifest.json +15350 -15141
  387. package/dist/styles/base/index.css +43 -43
  388. package/dist/styles/icons/generated-icons.css +1 -173
  389. package/dist/styles/themes/dark.css +141 -141
  390. package/dist/styles/themes/light.css +143 -143
  391. package/package.json +31 -31
@@ -1,565 +1,565 @@
1
- @layer components {
2
- .immersive-landing {
3
- position: fixed;
4
- inset: 0;
5
- width: 100%;
6
- height: 100%;
7
- overflow: hidden;
8
- isolation: isolate;
9
- background: transparent;
10
- }
11
-
12
- .immersive-landing__viewport {
13
- position: relative;
14
- width: 100%;
15
- height: 100%;
16
- }
17
-
18
- .immersive-landing__page-layer {
19
- position: relative;
20
- z-index: 10;
21
- width: 100%;
22
- height: 100%;
23
- }
24
-
25
- .immersive-landing__overlay {
26
- pointer-events: none;
27
- position: fixed;
28
- inset: 0;
29
- z-index: 30;
30
- }
31
-
32
- .immersive-landing__version-wrap {
33
- position: absolute;
34
- right: 1.5rem;
35
- bottom: 5rem;
36
- }
37
-
38
- .immersive-landing__version-label {
39
- font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas,
40
- "Liberation Mono", "Courier New", monospace;
41
- color: color-mix(in oklab, var(--color-base-content) 20%, transparent);
42
- font-size: clamp(0.75rem, 2vw, 1.25rem);
43
- letter-spacing: 0.4em;
44
- }
45
-
46
- .immersive-landing-page {
47
- position: absolute;
48
- inset: 0;
49
- width: 100%;
50
- height: 100%;
51
- overflow: hidden;
52
- background: transparent;
53
- transition-property: opacity;
54
- transition-timing-function: ease-in-out;
55
- }
56
-
57
- .immersive-landing-page--active {
58
- opacity: 1;
59
- pointer-events: auto;
60
- }
61
-
62
- .immersive-landing-page--inactive {
63
- opacity: 0;
64
- pointer-events: none;
65
- }
66
-
67
- .immersive-landing-page__content {
68
- position: relative;
69
- z-index: 10;
70
- height: 100%;
71
- overflow: hidden;
72
- }
73
-
74
- .immersive-landing-arrows__button {
75
- position: fixed;
76
- top: 50%;
77
- z-index: 40;
78
- display: none;
79
- align-items: center;
80
- justify-content: center;
81
- min-width: 48px;
82
- min-height: 48px;
83
- border-radius: 9999px;
84
- border: 0;
85
- background: color-mix(in oklab, var(--color-base-content) 10%, transparent);
86
- cursor: pointer;
87
- touch-action: manipulation;
88
- transform: translateY(-50%);
89
- transition: background-color 160ms ease;
90
- }
91
-
92
- .immersive-landing-arrows__button:hover {
93
- background: color-mix(in oklab, var(--color-base-content) 20%, transparent);
94
- }
95
-
96
- .immersive-landing-arrows__button--prev {
97
- left: 1rem;
98
- }
99
-
100
- .immersive-landing-arrows__button--next {
101
- right: 1rem;
102
- }
103
-
104
- .immersive-landing-arrows__icon {
105
- width: 1.5rem;
106
- height: 1.5rem;
107
- color: color-mix(in oklab, var(--color-base-content) 70%, transparent);
108
- }
109
-
110
- .immersive-landing-navigation {
111
- position: fixed;
112
- left: 50%;
113
- z-index: 50;
114
- width: auto;
115
- padding-inline: 0.5rem;
116
- transform: translateX(-50%);
117
- }
118
-
119
- .immersive-landing-navigation__shell {
120
- border-radius: 9999px;
121
- border: 1px solid color-mix(in oklab, var(--color-base-content) 10%, transparent);
122
- background: color-mix(in oklab, var(--color-base-100) 90%, transparent);
123
- padding: 0.375rem 0.5rem;
124
- backdrop-filter: blur(8px);
125
- box-shadow: 0 12px 28px color-mix(in oklab, var(--color-base-content) 18%, transparent);
126
- }
127
-
128
- .immersive-landing-navigation__row {
129
- display: flex;
130
- align-items: center;
131
- justify-content: center;
132
- gap: 0.5rem;
133
- }
134
-
135
- .immersive-landing-navigation__mobile-arrow {
136
- display: inline-flex;
137
- align-items: center;
138
- justify-content: center;
139
- min-width: 44px;
140
- min-height: 44px;
141
- border-radius: 9999px;
142
- border: 0;
143
- color: color-mix(in oklab, var(--color-base-content) 70%, transparent);
144
- background: transparent;
145
- cursor: pointer;
146
- touch-action: manipulation;
147
- transition: background-color 150ms ease, color 150ms ease;
148
- }
149
-
150
- .immersive-landing-navigation__mobile-arrow:hover {
151
- background: color-mix(in oklab, var(--color-base-content) 10%, transparent);
152
- }
153
-
154
- .immersive-landing-navigation__mobile-arrow:active {
155
- background: color-mix(in oklab, var(--color-base-content) 20%, transparent);
156
- }
157
-
158
- .immersive-landing-navigation__mobile-arrow--disabled {
159
- color: color-mix(in oklab, var(--color-base-content) 20%, transparent);
160
- cursor: not-allowed;
161
- }
162
-
163
- .immersive-landing-navigation__mobile-arrow--disabled:hover,
164
- .immersive-landing-navigation__mobile-arrow--disabled:active {
165
- background: transparent;
166
- }
167
-
168
- .immersive-landing-navigation__icon {
169
- width: 1.25rem;
170
- height: 1.25rem;
171
- }
172
-
173
- .immersive-landing-navigation__dots {
174
- display: none;
175
- align-items: center;
176
- gap: 0.375rem;
177
- padding-inline: 0.5rem;
178
- }
179
-
180
- .immersive-landing-navigation__dot {
181
- width: 0.5rem;
182
- height: 0.5rem;
183
- border-radius: 9999px;
184
- border: 0;
185
- background: color-mix(in oklab, var(--color-base-content) 30%, transparent);
186
- cursor: pointer;
187
- touch-action: manipulation;
188
- transition: transform 150ms ease, background-color 150ms ease;
189
- }
190
-
191
- .immersive-landing-navigation__dot:hover {
192
- background: color-mix(in oklab, var(--color-base-content) 50%, transparent);
193
- }
194
-
195
- .immersive-landing-navigation__dot--active {
196
- background: var(--color-primary);
197
- transform: scale(1.25);
198
- }
199
-
200
- .immersive-landing-navigation__counter {
201
- min-width: 3ch;
202
- text-align: center;
203
- font-size: 0.875rem;
204
- font-variant-numeric: tabular-nums;
205
- font-weight: 500;
206
- color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
207
- }
208
-
209
- .immersive-landing-pwa,
210
- .immersive-landing-firefox {
211
- position: fixed;
212
- right: 1rem;
213
- bottom: 1rem;
214
- left: 1rem;
215
- z-index: 51;
216
- pointer-events: auto;
217
- animation: immersive-landing-slide-up 220ms ease;
218
- }
219
-
220
- .immersive-landing-pwa__card,
221
- .immersive-landing-firefox__card {
222
- position: relative;
223
- border: 1px solid var(--color-base-300);
224
- }
225
-
226
- .immersive-landing-pwa__close,
227
- .immersive-landing-firefox__close {
228
- position: absolute;
229
- top: 0.5rem;
230
- right: 0.5rem;
231
- }
232
-
233
- .immersive-landing-pwa__body,
234
- .immersive-landing-firefox__body {
235
- display: block;
236
- }
237
-
238
- .immersive-landing-pwa__media,
239
- .immersive-landing-firefox__media {
240
- display: flex;
241
- align-items: flex-start;
242
- gap: 0.75rem;
243
- }
244
-
245
- .immersive-landing-pwa__app-icon-wrap,
246
- .immersive-landing-firefox__icon-wrap {
247
- display: flex;
248
- width: 3.5rem;
249
- height: 3.5rem;
250
- align-items: center;
251
- justify-content: center;
252
- border-radius: 0.75rem;
253
- background: var(--color-base-200);
254
- flex-shrink: 0;
255
- padding: 0.5rem;
256
- }
257
-
258
- .immersive-landing-pwa__app-icon {
259
- width: 100%;
260
- height: 100%;
261
- }
262
-
263
- .immersive-landing-firefox__browser-icon {
264
- color: #f97316;
265
- }
266
-
267
- .immersive-landing-pwa__text-wrap,
268
- .immersive-landing-firefox__text-wrap {
269
- display: flex;
270
- min-width: 0;
271
- flex: 1;
272
- flex-direction: column;
273
- gap: 0.5rem;
274
- padding-right: 1.5rem;
275
- }
276
-
277
- .immersive-landing-pwa__title,
278
- .immersive-landing-firefox__title {
279
- font-size: 1rem;
280
- line-height: 1.5rem;
281
- font-weight: 500;
282
- }
283
-
284
- .immersive-landing-pwa__description,
285
- .immersive-landing-firefox__description {
286
- font-size: 0.875rem;
287
- color: color-mix(in oklab, var(--color-base-content) 70%, transparent);
288
- }
289
-
290
- .immersive-landing-pwa__footer,
291
- .immersive-landing-firefox__footer {
292
- margin-top: 0.25rem;
293
- }
294
-
295
- .immersive-landing-pwa__action,
296
- .immersive-landing-firefox__action {
297
- flex: 1;
298
- }
299
-
300
- .immersive-landing-cookie {
301
- position: fixed;
302
- right: 0;
303
- bottom: 0;
304
- left: 0;
305
- z-index: 52;
306
- border-top: 1px solid color-mix(in oklab, var(--color-base-content) 10%, transparent);
307
- background: color-mix(in oklab, var(--color-base-300) 95%, transparent);
308
- backdrop-filter: blur(8px);
309
- transition: transform 300ms ease, opacity 300ms ease;
310
- animation: immersive-landing-slide-up 220ms ease;
311
- }
312
-
313
- .immersive-landing-cookie--closing {
314
- transform: translateY(100%);
315
- opacity: 0;
316
- animation: none;
317
- }
318
-
319
- .immersive-landing-cookie__container {
320
- max-width: 80rem;
321
- margin-inline: auto;
322
- padding: 1rem;
323
- }
324
-
325
- .immersive-landing-cookie__row {
326
- display: flex;
327
- flex-direction: column;
328
- gap: 0.75rem;
329
- }
330
-
331
- .immersive-landing-cookie__message {
332
- font-size: 0.875rem;
333
- color: var(--color-base-content);
334
- flex: 1;
335
- }
336
-
337
- .immersive-landing-cookie__actions {
338
- display: flex;
339
- flex-direction: column;
340
- gap: 0.5rem;
341
- flex-shrink: 0;
342
- }
343
-
344
- .immersive-landing-cookie__action-button {
345
- width: 100%;
346
- }
347
-
348
- .immersive-landing-cookie__manage-button {
349
- border: 0;
350
- background: transparent;
351
- color: color-mix(in oklab, var(--color-base-content) 70%, transparent);
352
- font-size: 0.875rem;
353
- text-decoration: underline;
354
- cursor: pointer;
355
- transition: color 150ms ease;
356
- }
357
-
358
- .immersive-landing-cookie__manage-button:hover {
359
- color: var(--color-base-content);
360
- text-decoration: none;
361
- }
362
-
363
- .immersive-landing-cookie__modal-backdrop {
364
- position: fixed;
365
- inset: 0;
366
- z-index: 50;
367
- display: flex;
368
- align-items: center;
369
- justify-content: center;
370
- background: rgb(0 0 0 / 50%);
371
- backdrop-filter: blur(4px);
372
- padding: 1rem;
373
- animation: immersive-landing-fade-in 200ms ease;
374
- }
375
-
376
- .immersive-landing-cookie__modal-card {
377
- width: 100%;
378
- max-width: 28rem;
379
- border-radius: 0.5rem;
380
- background: var(--color-base-100);
381
- box-shadow: 0 20px 50px color-mix(in oklab, var(--color-base-content) 25%, transparent);
382
- padding: 1.5rem;
383
- animation: immersive-landing-scale-in 200ms ease;
384
- }
385
-
386
- .immersive-landing-cookie__modal-header {
387
- margin-bottom: 1rem;
388
- }
389
-
390
- .immersive-landing-cookie__modal-title {
391
- font-size: 1.125rem;
392
- font-weight: 600;
393
- }
394
-
395
- .immersive-landing-cookie__preferences {
396
- display: flex;
397
- flex-direction: column;
398
- gap: 0.75rem;
399
- margin-bottom: 1.5rem;
400
- }
401
-
402
- .immersive-landing-cookie__preference-row {
403
- display: flex;
404
- align-items: center;
405
- justify-content: space-between;
406
- border-radius: 0.5rem;
407
- padding: 0.75rem;
408
- cursor: pointer;
409
- transition: background-color 150ms ease;
410
- }
411
-
412
- .immersive-landing-cookie__preference-row:hover {
413
- background: color-mix(in oklab, var(--color-base-200) 50%, transparent);
414
- }
415
-
416
- .immersive-landing-cookie__preference-row--locked {
417
- cursor: not-allowed;
418
- background: color-mix(in oklab, var(--color-base-200) 50%, transparent);
419
- }
420
-
421
- .immersive-landing-cookie__preference-row--locked:hover {
422
- background: color-mix(in oklab, var(--color-base-200) 50%, transparent);
423
- }
424
-
425
- .immersive-landing-cookie__preference-label {
426
- font-size: 0.875rem;
427
- font-weight: 500;
428
- }
429
-
430
- .immersive-landing-cookie__preference-row--locked .immersive-landing-cookie__preference-label {
431
- color: color-mix(in oklab, var(--color-base-content) 70%, transparent);
432
- }
433
-
434
- .immersive-landing-cookie__toggle {
435
- width: 2.25rem;
436
- height: 1.25rem;
437
- border-radius: 9999px;
438
- border: 1px solid color-mix(in oklab, var(--color-base-content) 24%, transparent);
439
- appearance: none;
440
- position: relative;
441
- background: var(--color-base-200);
442
- transition: background-color 150ms ease, border-color 150ms ease;
443
- }
444
-
445
- .immersive-landing-cookie__toggle::after {
446
- content: "";
447
- position: absolute;
448
- top: 1px;
449
- left: 1px;
450
- width: 0.95rem;
451
- height: 0.95rem;
452
- border-radius: 9999px;
453
- background: white;
454
- box-shadow: 0 1px 2px rgb(0 0 0 / 25%);
455
- transition: transform 150ms ease;
456
- }
457
-
458
- .immersive-landing-cookie__toggle:checked {
459
- background: var(--color-primary);
460
- border-color: var(--color-primary);
461
- }
462
-
463
- .immersive-landing-cookie__toggle:checked::after {
464
- transform: translateX(1rem);
465
- }
466
-
467
- .immersive-landing-cookie__toggle:disabled {
468
- opacity: 0.7;
469
- cursor: not-allowed;
470
- }
471
-
472
- .immersive-landing-cookie__modal-footer {
473
- display: flex;
474
- justify-content: flex-end;
475
- gap: 0.5rem;
476
- }
477
-
478
- .immersive-landing-cookie__save-button {
479
- transition: transform 150ms ease;
480
- }
481
-
482
- .immersive-landing-cookie__save-button:hover {
483
- transform: scale(1.02);
484
- }
485
-
486
- .immersive-landing-cookie__save-button:active {
487
- transform: scale(0.98);
488
- }
489
-
490
- @media (min-width: 768px) {
491
- .immersive-landing-arrows__button {
492
- display: inline-flex;
493
- }
494
-
495
- .immersive-landing-navigation__shell {
496
- padding: 0.5rem 0.75rem;
497
- }
498
-
499
- .immersive-landing-navigation__row {
500
- gap: 0.75rem;
501
- }
502
-
503
- .immersive-landing-navigation__mobile-arrow {
504
- display: none;
505
- }
506
-
507
- .immersive-landing-navigation__dots {
508
- display: flex;
509
- }
510
-
511
- .immersive-landing-cookie__row {
512
- flex-direction: row;
513
- align-items: center;
514
- justify-content: space-between;
515
- }
516
-
517
- .immersive-landing-cookie__actions {
518
- flex-direction: row;
519
- align-items: center;
520
- }
521
-
522
- .immersive-landing-cookie__action-button {
523
- width: auto;
524
- }
525
- }
526
-
527
- @media (min-width: 768px) {
528
- .immersive-landing-pwa,
529
- .immersive-landing-firefox {
530
- left: auto;
531
- max-width: 24rem;
532
- }
533
- }
534
-
535
- @keyframes immersive-landing-slide-up {
536
- from {
537
- transform: translateY(100%);
538
- opacity: 0;
539
- }
540
- to {
541
- transform: translateY(0);
542
- opacity: 1;
543
- }
544
- }
545
-
546
- @keyframes immersive-landing-fade-in {
547
- from {
548
- opacity: 0;
549
- }
550
- to {
551
- opacity: 1;
552
- }
553
- }
554
-
555
- @keyframes immersive-landing-scale-in {
556
- from {
557
- opacity: 0;
558
- transform: scale(0.98);
559
- }
560
- to {
561
- opacity: 1;
562
- transform: scale(1);
563
- }
564
- }
565
- }
1
+ @layer components {
2
+ .immersive-landing {
3
+ position: fixed;
4
+ inset: 0;
5
+ width: 100%;
6
+ height: 100%;
7
+ overflow: hidden;
8
+ isolation: isolate;
9
+ background: transparent;
10
+ }
11
+
12
+ .immersive-landing__viewport {
13
+ position: relative;
14
+ width: 100%;
15
+ height: 100%;
16
+ }
17
+
18
+ .immersive-landing__page-layer {
19
+ position: relative;
20
+ z-index: 10;
21
+ width: 100%;
22
+ height: 100%;
23
+ }
24
+
25
+ .immersive-landing__overlay {
26
+ pointer-events: none;
27
+ position: fixed;
28
+ inset: 0;
29
+ z-index: 30;
30
+ }
31
+
32
+ .immersive-landing__version-wrap {
33
+ position: absolute;
34
+ right: 1.5rem;
35
+ bottom: 5rem;
36
+ }
37
+
38
+ .immersive-landing__version-label {
39
+ font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas,
40
+ "Liberation Mono", "Courier New", monospace;
41
+ color: color-mix(in oklab, var(--color-base-content) 20%, transparent);
42
+ font-size: clamp(0.75rem, 2vw, 1.25rem);
43
+ letter-spacing: 0.4em;
44
+ }
45
+
46
+ .immersive-landing-page {
47
+ position: absolute;
48
+ inset: 0;
49
+ width: 100%;
50
+ height: 100%;
51
+ overflow: hidden;
52
+ background: transparent;
53
+ transition-property: opacity;
54
+ transition-timing-function: ease-in-out;
55
+ }
56
+
57
+ .immersive-landing-page--active {
58
+ opacity: 1;
59
+ pointer-events: auto;
60
+ }
61
+
62
+ .immersive-landing-page--inactive {
63
+ opacity: 0;
64
+ pointer-events: none;
65
+ }
66
+
67
+ .immersive-landing-page__content {
68
+ position: relative;
69
+ z-index: 10;
70
+ height: 100%;
71
+ overflow: hidden;
72
+ }
73
+
74
+ .immersive-landing-arrows__button {
75
+ position: fixed;
76
+ top: 50%;
77
+ z-index: 40;
78
+ display: none;
79
+ align-items: center;
80
+ justify-content: center;
81
+ min-width: 48px;
82
+ min-height: 48px;
83
+ border-radius: 9999px;
84
+ border: 0;
85
+ background: color-mix(in oklab, var(--color-base-content) 10%, transparent);
86
+ cursor: pointer;
87
+ touch-action: manipulation;
88
+ transform: translateY(-50%);
89
+ transition: background-color 160ms ease;
90
+ }
91
+
92
+ .immersive-landing-arrows__button:hover {
93
+ background: color-mix(in oklab, var(--color-base-content) 20%, transparent);
94
+ }
95
+
96
+ .immersive-landing-arrows__button--prev {
97
+ left: 1rem;
98
+ }
99
+
100
+ .immersive-landing-arrows__button--next {
101
+ right: 1rem;
102
+ }
103
+
104
+ .immersive-landing-arrows__icon {
105
+ width: 1.5rem;
106
+ height: 1.5rem;
107
+ color: color-mix(in oklab, var(--color-base-content) 70%, transparent);
108
+ }
109
+
110
+ .immersive-landing-navigation {
111
+ position: fixed;
112
+ left: 50%;
113
+ z-index: 50;
114
+ width: auto;
115
+ padding-inline: 0.5rem;
116
+ transform: translateX(-50%);
117
+ }
118
+
119
+ .immersive-landing-navigation__shell {
120
+ border-radius: 9999px;
121
+ border: 1px solid color-mix(in oklab, var(--color-base-content) 10%, transparent);
122
+ background: color-mix(in oklab, var(--color-base-100) 90%, transparent);
123
+ padding: 0.375rem 0.5rem;
124
+ backdrop-filter: blur(8px);
125
+ box-shadow: 0 12px 28px color-mix(in oklab, var(--color-base-content) 18%, transparent);
126
+ }
127
+
128
+ .immersive-landing-navigation__row {
129
+ display: flex;
130
+ align-items: center;
131
+ justify-content: center;
132
+ gap: 0.5rem;
133
+ }
134
+
135
+ .immersive-landing-navigation__mobile-arrow {
136
+ display: inline-flex;
137
+ align-items: center;
138
+ justify-content: center;
139
+ min-width: 44px;
140
+ min-height: 44px;
141
+ border-radius: 9999px;
142
+ border: 0;
143
+ color: color-mix(in oklab, var(--color-base-content) 70%, transparent);
144
+ background: transparent;
145
+ cursor: pointer;
146
+ touch-action: manipulation;
147
+ transition: background-color 150ms ease, color 150ms ease;
148
+ }
149
+
150
+ .immersive-landing-navigation__mobile-arrow:hover {
151
+ background: color-mix(in oklab, var(--color-base-content) 10%, transparent);
152
+ }
153
+
154
+ .immersive-landing-navigation__mobile-arrow:active {
155
+ background: color-mix(in oklab, var(--color-base-content) 20%, transparent);
156
+ }
157
+
158
+ .immersive-landing-navigation__mobile-arrow--disabled {
159
+ color: color-mix(in oklab, var(--color-base-content) 20%, transparent);
160
+ cursor: not-allowed;
161
+ }
162
+
163
+ .immersive-landing-navigation__mobile-arrow--disabled:hover,
164
+ .immersive-landing-navigation__mobile-arrow--disabled:active {
165
+ background: transparent;
166
+ }
167
+
168
+ .immersive-landing-navigation__icon {
169
+ width: 1.25rem;
170
+ height: 1.25rem;
171
+ }
172
+
173
+ .immersive-landing-navigation__dots {
174
+ display: none;
175
+ align-items: center;
176
+ gap: 0.375rem;
177
+ padding-inline: 0.5rem;
178
+ }
179
+
180
+ .immersive-landing-navigation__dot {
181
+ width: 0.5rem;
182
+ height: 0.5rem;
183
+ border-radius: 9999px;
184
+ border: 0;
185
+ background: color-mix(in oklab, var(--color-base-content) 30%, transparent);
186
+ cursor: pointer;
187
+ touch-action: manipulation;
188
+ transition: transform 150ms ease, background-color 150ms ease;
189
+ }
190
+
191
+ .immersive-landing-navigation__dot:hover {
192
+ background: color-mix(in oklab, var(--color-base-content) 50%, transparent);
193
+ }
194
+
195
+ .immersive-landing-navigation__dot--active {
196
+ background: var(--color-primary);
197
+ transform: scale(1.25);
198
+ }
199
+
200
+ .immersive-landing-navigation__counter {
201
+ min-width: 3ch;
202
+ text-align: center;
203
+ font-size: 0.875rem;
204
+ font-variant-numeric: tabular-nums;
205
+ font-weight: 500;
206
+ color: color-mix(in oklab, var(--color-base-content) 60%, transparent);
207
+ }
208
+
209
+ .immersive-landing-pwa,
210
+ .immersive-landing-firefox {
211
+ position: fixed;
212
+ right: 1rem;
213
+ bottom: 1rem;
214
+ left: 1rem;
215
+ z-index: 51;
216
+ pointer-events: auto;
217
+ animation: immersive-landing-slide-up 220ms ease;
218
+ }
219
+
220
+ .immersive-landing-pwa__card,
221
+ .immersive-landing-firefox__card {
222
+ position: relative;
223
+ border: 1px solid var(--color-base-300);
224
+ }
225
+
226
+ .immersive-landing-pwa__close,
227
+ .immersive-landing-firefox__close {
228
+ position: absolute;
229
+ top: 0.5rem;
230
+ right: 0.5rem;
231
+ }
232
+
233
+ .immersive-landing-pwa__body,
234
+ .immersive-landing-firefox__body {
235
+ display: block;
236
+ }
237
+
238
+ .immersive-landing-pwa__media,
239
+ .immersive-landing-firefox__media {
240
+ display: flex;
241
+ align-items: flex-start;
242
+ gap: 0.75rem;
243
+ }
244
+
245
+ .immersive-landing-pwa__app-icon-wrap,
246
+ .immersive-landing-firefox__icon-wrap {
247
+ display: flex;
248
+ width: 3.5rem;
249
+ height: 3.5rem;
250
+ align-items: center;
251
+ justify-content: center;
252
+ border-radius: 0.75rem;
253
+ background: var(--color-base-200);
254
+ flex-shrink: 0;
255
+ padding: 0.5rem;
256
+ }
257
+
258
+ .immersive-landing-pwa__app-icon {
259
+ width: 100%;
260
+ height: 100%;
261
+ }
262
+
263
+ .immersive-landing-firefox__browser-icon {
264
+ color: #f97316;
265
+ }
266
+
267
+ .immersive-landing-pwa__text-wrap,
268
+ .immersive-landing-firefox__text-wrap {
269
+ display: flex;
270
+ min-width: 0;
271
+ flex: 1;
272
+ flex-direction: column;
273
+ gap: 0.5rem;
274
+ padding-right: 1.5rem;
275
+ }
276
+
277
+ .immersive-landing-pwa__title,
278
+ .immersive-landing-firefox__title {
279
+ font-size: 1rem;
280
+ line-height: 1.5rem;
281
+ font-weight: 500;
282
+ }
283
+
284
+ .immersive-landing-pwa__description,
285
+ .immersive-landing-firefox__description {
286
+ font-size: 0.875rem;
287
+ color: color-mix(in oklab, var(--color-base-content) 70%, transparent);
288
+ }
289
+
290
+ .immersive-landing-pwa__footer,
291
+ .immersive-landing-firefox__footer {
292
+ margin-top: 0.25rem;
293
+ }
294
+
295
+ .immersive-landing-pwa__action,
296
+ .immersive-landing-firefox__action {
297
+ flex: 1;
298
+ }
299
+
300
+ .immersive-landing-cookie {
301
+ position: fixed;
302
+ right: 0;
303
+ bottom: 0;
304
+ left: 0;
305
+ z-index: 52;
306
+ border-top: 1px solid color-mix(in oklab, var(--color-base-content) 10%, transparent);
307
+ background: color-mix(in oklab, var(--color-base-300) 95%, transparent);
308
+ backdrop-filter: blur(8px);
309
+ transition: transform 300ms ease, opacity 300ms ease;
310
+ animation: immersive-landing-slide-up 220ms ease;
311
+ }
312
+
313
+ .immersive-landing-cookie--closing {
314
+ transform: translateY(100%);
315
+ opacity: 0;
316
+ animation: none;
317
+ }
318
+
319
+ .immersive-landing-cookie__container {
320
+ max-width: 80rem;
321
+ margin-inline: auto;
322
+ padding: 1rem;
323
+ }
324
+
325
+ .immersive-landing-cookie__row {
326
+ display: flex;
327
+ flex-direction: column;
328
+ gap: 0.75rem;
329
+ }
330
+
331
+ .immersive-landing-cookie__message {
332
+ font-size: 0.875rem;
333
+ color: var(--color-base-content);
334
+ flex: 1;
335
+ }
336
+
337
+ .immersive-landing-cookie__actions {
338
+ display: flex;
339
+ flex-direction: column;
340
+ gap: 0.5rem;
341
+ flex-shrink: 0;
342
+ }
343
+
344
+ .immersive-landing-cookie__action-button {
345
+ width: 100%;
346
+ }
347
+
348
+ .immersive-landing-cookie__manage-button {
349
+ border: 0;
350
+ background: transparent;
351
+ color: color-mix(in oklab, var(--color-base-content) 70%, transparent);
352
+ font-size: 0.875rem;
353
+ text-decoration: underline;
354
+ cursor: pointer;
355
+ transition: color 150ms ease;
356
+ }
357
+
358
+ .immersive-landing-cookie__manage-button:hover {
359
+ color: var(--color-base-content);
360
+ text-decoration: none;
361
+ }
362
+
363
+ .immersive-landing-cookie__modal-backdrop {
364
+ position: fixed;
365
+ inset: 0;
366
+ z-index: 50;
367
+ display: flex;
368
+ align-items: center;
369
+ justify-content: center;
370
+ background: rgb(0 0 0 / 50%);
371
+ backdrop-filter: blur(4px);
372
+ padding: 1rem;
373
+ animation: immersive-landing-fade-in 200ms ease;
374
+ }
375
+
376
+ .immersive-landing-cookie__modal-card {
377
+ width: 100%;
378
+ max-width: 28rem;
379
+ border-radius: 0.5rem;
380
+ background: var(--color-base-100);
381
+ box-shadow: 0 20px 50px color-mix(in oklab, var(--color-base-content) 25%, transparent);
382
+ padding: 1.5rem;
383
+ animation: immersive-landing-scale-in 200ms ease;
384
+ }
385
+
386
+ .immersive-landing-cookie__modal-header {
387
+ margin-bottom: 1rem;
388
+ }
389
+
390
+ .immersive-landing-cookie__modal-title {
391
+ font-size: 1.125rem;
392
+ font-weight: 600;
393
+ }
394
+
395
+ .immersive-landing-cookie__preferences {
396
+ display: flex;
397
+ flex-direction: column;
398
+ gap: 0.75rem;
399
+ margin-bottom: 1.5rem;
400
+ }
401
+
402
+ .immersive-landing-cookie__preference-row {
403
+ display: flex;
404
+ align-items: center;
405
+ justify-content: space-between;
406
+ border-radius: 0.5rem;
407
+ padding: 0.75rem;
408
+ cursor: pointer;
409
+ transition: background-color 150ms ease;
410
+ }
411
+
412
+ .immersive-landing-cookie__preference-row:hover {
413
+ background: color-mix(in oklab, var(--color-base-200) 50%, transparent);
414
+ }
415
+
416
+ .immersive-landing-cookie__preference-row--locked {
417
+ cursor: not-allowed;
418
+ background: color-mix(in oklab, var(--color-base-200) 50%, transparent);
419
+ }
420
+
421
+ .immersive-landing-cookie__preference-row--locked:hover {
422
+ background: color-mix(in oklab, var(--color-base-200) 50%, transparent);
423
+ }
424
+
425
+ .immersive-landing-cookie__preference-label {
426
+ font-size: 0.875rem;
427
+ font-weight: 500;
428
+ }
429
+
430
+ .immersive-landing-cookie__preference-row--locked .immersive-landing-cookie__preference-label {
431
+ color: color-mix(in oklab, var(--color-base-content) 70%, transparent);
432
+ }
433
+
434
+ .immersive-landing-cookie__toggle {
435
+ width: 2.25rem;
436
+ height: 1.25rem;
437
+ border-radius: 9999px;
438
+ border: 1px solid color-mix(in oklab, var(--color-base-content) 24%, transparent);
439
+ appearance: none;
440
+ position: relative;
441
+ background: var(--color-base-200);
442
+ transition: background-color 150ms ease, border-color 150ms ease;
443
+ }
444
+
445
+ .immersive-landing-cookie__toggle::after {
446
+ content: "";
447
+ position: absolute;
448
+ top: 1px;
449
+ left: 1px;
450
+ width: 0.95rem;
451
+ height: 0.95rem;
452
+ border-radius: 9999px;
453
+ background: white;
454
+ box-shadow: 0 1px 2px rgb(0 0 0 / 25%);
455
+ transition: transform 150ms ease;
456
+ }
457
+
458
+ .immersive-landing-cookie__toggle:checked {
459
+ background: var(--color-primary);
460
+ border-color: var(--color-primary);
461
+ }
462
+
463
+ .immersive-landing-cookie__toggle:checked::after {
464
+ transform: translateX(1rem);
465
+ }
466
+
467
+ .immersive-landing-cookie__toggle:disabled {
468
+ opacity: 0.7;
469
+ cursor: not-allowed;
470
+ }
471
+
472
+ .immersive-landing-cookie__modal-footer {
473
+ display: flex;
474
+ justify-content: flex-end;
475
+ gap: 0.5rem;
476
+ }
477
+
478
+ .immersive-landing-cookie__save-button {
479
+ transition: transform 150ms ease;
480
+ }
481
+
482
+ .immersive-landing-cookie__save-button:hover {
483
+ transform: scale(1.02);
484
+ }
485
+
486
+ .immersive-landing-cookie__save-button:active {
487
+ transform: scale(0.98);
488
+ }
489
+
490
+ @media (min-width: 768px) {
491
+ .immersive-landing-arrows__button {
492
+ display: inline-flex;
493
+ }
494
+
495
+ .immersive-landing-navigation__shell {
496
+ padding: 0.5rem 0.75rem;
497
+ }
498
+
499
+ .immersive-landing-navigation__row {
500
+ gap: 0.75rem;
501
+ }
502
+
503
+ .immersive-landing-navigation__mobile-arrow {
504
+ display: none;
505
+ }
506
+
507
+ .immersive-landing-navigation__dots {
508
+ display: flex;
509
+ }
510
+
511
+ .immersive-landing-cookie__row {
512
+ flex-direction: row;
513
+ align-items: center;
514
+ justify-content: space-between;
515
+ }
516
+
517
+ .immersive-landing-cookie__actions {
518
+ flex-direction: row;
519
+ align-items: center;
520
+ }
521
+
522
+ .immersive-landing-cookie__action-button {
523
+ width: auto;
524
+ }
525
+ }
526
+
527
+ @media (min-width: 768px) {
528
+ .immersive-landing-pwa,
529
+ .immersive-landing-firefox {
530
+ left: auto;
531
+ max-width: 24rem;
532
+ }
533
+ }
534
+
535
+ @keyframes immersive-landing-slide-up {
536
+ from {
537
+ transform: translateY(100%);
538
+ opacity: 0;
539
+ }
540
+ to {
541
+ transform: translateY(0);
542
+ opacity: 1;
543
+ }
544
+ }
545
+
546
+ @keyframes immersive-landing-fade-in {
547
+ from {
548
+ opacity: 0;
549
+ }
550
+ to {
551
+ opacity: 1;
552
+ }
553
+ }
554
+
555
+ @keyframes immersive-landing-scale-in {
556
+ from {
557
+ opacity: 0;
558
+ transform: scale(0.98);
559
+ }
560
+ to {
561
+ opacity: 1;
562
+ transform: scale(1);
563
+ }
564
+ }
565
+ }