@primer/react-brand 0.77.1-rc.bd5b9efe → 0.78.0-rc.bcc08c15

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 (506) hide show
  1. package/docs/components/ActionMenu/index.md +65 -19
  2. package/docs/components/ButtonGroup/index.md +9 -6
  3. package/docs/components/ButtonGroup/react.md +26 -6
  4. package/docs/components/IconButton/index.md +99 -0
  5. package/docs/components/IconButton/react.md +189 -0
  6. package/docs/components/SubdomainNavBar/index.md +3 -1
  7. package/docs/components/Tooltip/index.md +24 -13
  8. package/docs/components/index.md +1 -0
  9. package/docs/forms/TextInput/index.md +4 -2
  10. package/docs/index.md +3 -2
  11. package/esm/ActionMenu/ActionMenu.d.ts +18 -24
  12. package/esm/ActionMenu/ActionMenu.d.ts.map +1 -1
  13. package/esm/ActionMenu/ActionMenu.js +247 -168
  14. package/esm/ActionMenu/ActionMenu.js.map +1 -1
  15. package/esm/ActionMenu/ActionMenu.module-DlO2FtEt.css +1 -0
  16. package/esm/ActionMenu/ActionMenu.module.js +4 -1
  17. package/esm/ActionMenu/ActionMenu.module.js.map +1 -1
  18. package/esm/ActionMenu/ActionMenuContext.d.ts +23 -0
  19. package/esm/ActionMenu/ActionMenuContext.d.ts.map +1 -0
  20. package/esm/ActionMenu/ActionMenuContext.js +24 -0
  21. package/esm/ActionMenu/ActionMenuContext.js.map +1 -0
  22. package/esm/Button/Button.d.ts +4 -2
  23. package/esm/Button/Button.d.ts.map +1 -1
  24. package/esm/Button/Button.js +25 -24
  25. package/esm/Button/Button.js.map +1 -1
  26. package/esm/Button/Button.module-CqRiLusx.css +1 -0
  27. package/esm/Button/Button.module.js +1 -1
  28. package/esm/Button/Button.module.js.map +1 -1
  29. package/esm/ButtonGroup/ButtonGroup.d.ts +7 -1
  30. package/esm/ButtonGroup/ButtonGroup.d.ts.map +1 -1
  31. package/esm/ButtonGroup/ButtonGroup.js +44 -22
  32. package/esm/ButtonGroup/ButtonGroup.js.map +1 -1
  33. package/esm/ButtonGroup/ButtonGroup.module-pJbqxGBe.css +1 -0
  34. package/esm/ButtonGroup/ButtonGroup.module.js +8 -3
  35. package/esm/ButtonGroup/ButtonGroup.module.js.map +1 -1
  36. package/esm/IconButton/IconButton.d.ts +30 -0
  37. package/esm/IconButton/IconButton.d.ts.map +1 -0
  38. package/esm/IconButton/IconButton.js +68 -0
  39. package/esm/IconButton/IconButton.js.map +1 -0
  40. package/esm/IconButton/IconButton.module-tmxv8TCl.css +1 -0
  41. package/esm/IconButton/IconButton.module.js +19 -0
  42. package/esm/IconButton/IconButton.module.js.map +1 -0
  43. package/esm/IconButton/index.d.ts +2 -0
  44. package/esm/IconButton/index.d.ts.map +1 -0
  45. package/esm/MinimalVideoPlayer/MinimalVideoPlayer.js +1 -0
  46. package/esm/MinimalVideoPlayer/MinimalVideoPlayer.js.map +1 -1
  47. package/esm/PricingOptions/PricingOptions.js +26 -26
  48. package/esm/SubdomainNavBar/SubdomainNavBar.d.ts +2 -2
  49. package/esm/SubdomainNavBar/SubdomainNavBar.d.ts.map +1 -1
  50. package/esm/SubdomainNavBar/SubdomainNavBar.js +304 -298
  51. package/esm/SubdomainNavBar/SubdomainNavBar.js.map +1 -1
  52. package/esm/SubdomainNavBar/SubdomainNavBar.module-BE9mtBPE.css +1 -0
  53. package/esm/SubdomainNavBar/SubdomainNavBar.module.js +2 -1
  54. package/esm/SubdomainNavBar/SubdomainNavBar.module.js.map +1 -1
  55. package/esm/Tooltip/Tooltip.d.ts +5 -2
  56. package/esm/Tooltip/Tooltip.d.ts.map +1 -1
  57. package/esm/Tooltip/Tooltip.js +90 -45
  58. package/esm/Tooltip/Tooltip.js.map +1 -1
  59. package/esm/Tooltip/Tooltip.module-CSt4tNaI.css +1 -0
  60. package/esm/Tooltip/Tooltip.module.js +1 -1
  61. package/esm/Tooltip/Tooltip.module.js.map +1 -1
  62. package/esm/forms/TextInput/TextInput.d.ts +4 -2
  63. package/esm/forms/TextInput/TextInput.d.ts.map +1 -1
  64. package/esm/forms/TextInput/TextInput.js +8 -3
  65. package/esm/forms/TextInput/TextInput.js.map +1 -1
  66. package/esm/forms/TextInput/TextInput.module-CeOwKkHk.css +1 -0
  67. package/esm/forms/TextInput/TextInput.module.js +10 -1
  68. package/esm/forms/TextInput/TextInput.module.js.map +1 -1
  69. package/esm/index.d.ts +1 -0
  70. package/esm/index.d.ts.map +1 -1
  71. package/esm/index.esm.js +70 -68
  72. package/esm/packages/design-tokens/lib/design-tokens/css/tokens/functional/components/action-menu/colors-with-modes-mgXFtgvP.css +1 -0
  73. package/esm/packages/design-tokens/lib/design-tokens/css/tokens/functional/components/button/base-DhkVnZYz.css +1 -0
  74. package/esm/packages/design-tokens/lib/design-tokens/css/tokens/functional/components/icon-button/base-DLPw97mz.css +1 -0
  75. package/esm/packages/design-tokens/lib/design-tokens/css/tokens/functional/components/icon-button/colors-with-modes-D7iaptsa.css +1 -0
  76. package/esm/packages/design-tokens/lib/design-tokens/css/tokens/functional/components/subdomain-nav-bar/colors-with-modes-C_lnz8M6.css +1 -0
  77. package/esm/river/RiverBreakoutTabs/RiverBreakoutTabs.d.ts.map +1 -1
  78. package/esm/river/RiverBreakoutTabs/RiverBreakoutTabs.js +9 -5
  79. package/esm/river/RiverBreakoutTabs/RiverBreakoutTabs.js.map +1 -1
  80. package/esm/river/RiverBreakoutTabs/RiverBreakoutTabs.module-C46WY_qp.css +1 -0
  81. package/esm/river/RiverBreakoutTabs/RiverBreakoutTabs.module.js +3 -2
  82. package/esm/river/RiverBreakoutTabs/RiverBreakoutTabs.module.js.map +1 -1
  83. package/lib/ActionMenu/ActionMenu.d.ts +18 -24
  84. package/lib/ActionMenu/ActionMenuContext.d.ts +22 -0
  85. package/lib/Button/Button.d.ts +4 -2
  86. package/lib/ButtonGroup/ButtonGroup.d.ts +7 -1
  87. package/lib/IconButton/IconButton.d.ts +29 -0
  88. package/lib/IconButton/index.d.ts +1 -0
  89. package/lib/SubdomainNavBar/SubdomainNavBar.d.ts +2 -2
  90. package/lib/Tooltip/Tooltip.d.ts +5 -2
  91. package/lib/css/main.css +690 -350
  92. package/lib/design-tokens/css/tokens/base/colors/color-scales-with-modes.css +1 -1
  93. package/lib/design-tokens/css/tokens/base/colors/light.css +1 -1
  94. package/lib/design-tokens/css/tokens/base/size/size.css +1 -1
  95. package/lib/design-tokens/css/tokens/base/typography/typography.css +1 -1
  96. package/lib/design-tokens/css/tokens/functional/animation/base.css +1 -1
  97. package/lib/design-tokens/css/tokens/functional/colors/global-with-modes.css +1 -1
  98. package/lib/design-tokens/css/tokens/functional/colors/global.css +1 -1
  99. package/lib/design-tokens/css/tokens/functional/components/accordion/colors-with-modes.css +1 -1
  100. package/lib/design-tokens/css/tokens/functional/components/action-menu/colors-with-modes.css +5 -1
  101. package/lib/design-tokens/css/tokens/functional/components/anchor-nav/colors-with-modes.css +1 -1
  102. package/lib/design-tokens/css/tokens/functional/components/bento/base.css +1 -1
  103. package/lib/design-tokens/css/tokens/functional/components/blinking-cursor/colors-with-modes.css +1 -1
  104. package/lib/design-tokens/css/tokens/functional/components/breadcrumbs/colors-with-modes.css +1 -1
  105. package/lib/design-tokens/css/tokens/functional/components/button/base.css +13 -0
  106. package/lib/design-tokens/css/tokens/functional/components/button/colors-with-modes.css +1 -1
  107. package/lib/design-tokens/css/tokens/functional/components/card/base.css +1 -1
  108. package/lib/design-tokens/css/tokens/functional/components/card/colors-with-modes.css +1 -1
  109. package/lib/design-tokens/css/tokens/functional/components/card/colors.css +1 -1
  110. package/lib/design-tokens/css/tokens/functional/components/comparison-table/colors-with-modes.css +1 -1
  111. package/lib/design-tokens/css/tokens/functional/components/comparison-table/comparison-table.css +1 -1
  112. package/lib/design-tokens/css/tokens/functional/components/control/colors-with-modes.css +1 -1
  113. package/lib/design-tokens/css/tokens/functional/components/cta-banner/colors-with-modes.css +1 -1
  114. package/lib/design-tokens/css/tokens/functional/components/eyebrow-banner/colors-with-modes.css +1 -1
  115. package/lib/design-tokens/css/tokens/functional/components/eyebrow-banner/eyebrow-banner.css +1 -1
  116. package/lib/design-tokens/css/tokens/functional/components/faq/base.css +1 -1
  117. package/lib/design-tokens/css/tokens/functional/components/faq/colors-with-modes.css +1 -1
  118. package/lib/design-tokens/css/tokens/functional/components/faq/colors.css +1 -1
  119. package/lib/design-tokens/css/tokens/functional/components/faq/faq.css +1 -1
  120. package/lib/design-tokens/css/tokens/functional/components/footer/base.css +1 -1
  121. package/lib/design-tokens/css/tokens/functional/components/footer/colors-with-modes.css +1 -1
  122. package/lib/design-tokens/css/tokens/functional/components/footer/colors.css +1 -1
  123. package/lib/design-tokens/css/tokens/functional/components/frosted-glass-vfx/base.css +1 -1
  124. package/lib/design-tokens/css/tokens/functional/components/frosted-glass-vfx/colors-with-modes.css +1 -1
  125. package/lib/design-tokens/css/tokens/functional/components/grid/colors-with-modes.css +1 -1
  126. package/lib/design-tokens/css/tokens/functional/components/grid/colors.css +1 -1
  127. package/lib/design-tokens/css/tokens/functional/components/grid/grid.css +1 -1
  128. package/lib/design-tokens/css/tokens/functional/components/hero/base.css +1 -1
  129. package/lib/design-tokens/css/tokens/functional/components/icon/colors-with-modes.css +1 -1
  130. package/lib/design-tokens/css/tokens/functional/components/icon/colors.css +1 -1
  131. package/lib/design-tokens/css/tokens/functional/components/icon-button/base.css +15 -0
  132. package/lib/design-tokens/css/tokens/functional/components/icon-button/colors-with-modes.css +39 -0
  133. package/lib/design-tokens/css/tokens/functional/components/icon-button/colors.css +21 -0
  134. package/lib/design-tokens/css/tokens/functional/components/ide/base.css +1 -1
  135. package/lib/design-tokens/css/tokens/functional/components/ide/colors-with-modes.css +1 -1
  136. package/lib/design-tokens/css/tokens/functional/components/image/base.css +1 -1
  137. package/lib/design-tokens/css/tokens/functional/components/inline-code/colors-with-modes.css +1 -1
  138. package/lib/design-tokens/css/tokens/functional/components/inline-code/colors.css +1 -1
  139. package/lib/design-tokens/css/tokens/functional/components/inline-link/base.css +1 -1
  140. package/lib/design-tokens/css/tokens/functional/components/inline-link/colors-with-modes.css +1 -1
  141. package/lib/design-tokens/css/tokens/functional/components/inline-link/colors.css +1 -1
  142. package/lib/design-tokens/css/tokens/functional/components/label/colors-with-modes.css +1 -1
  143. package/lib/design-tokens/css/tokens/functional/components/label/colors.css +1 -1
  144. package/lib/design-tokens/css/tokens/functional/components/link/colors-with-modes.css +1 -1
  145. package/lib/design-tokens/css/tokens/functional/components/link/colors.css +1 -1
  146. package/lib/design-tokens/css/tokens/functional/components/logosuite/base.css +1 -1
  147. package/lib/design-tokens/css/tokens/functional/components/logosuite/colors-with-modes.css +1 -1
  148. package/lib/design-tokens/css/tokens/functional/components/logosuite/colors.css +1 -1
  149. package/lib/design-tokens/css/tokens/functional/components/media-playlist/colors-with-modes.css +1 -1
  150. package/lib/design-tokens/css/tokens/functional/components/media-playlist/colors.css +1 -1
  151. package/lib/design-tokens/css/tokens/functional/components/nav-list/colors-with-modes.css +1 -1
  152. package/lib/design-tokens/css/tokens/functional/components/pricing-options/colors-with-modes.css +1 -1
  153. package/lib/design-tokens/css/tokens/functional/components/pricing-options/colors.css +1 -1
  154. package/lib/design-tokens/css/tokens/functional/components/pricing-options/pricing-options.css +1 -1
  155. package/lib/design-tokens/css/tokens/functional/components/prose/base.css +1 -1
  156. package/lib/design-tokens/css/tokens/functional/components/prose/colors-with-modes.css +1 -1
  157. package/lib/design-tokens/css/tokens/functional/components/river/base.css +1 -1
  158. package/lib/design-tokens/css/tokens/functional/components/river/river.css +1 -1
  159. package/lib/design-tokens/css/tokens/functional/components/river-story-scroll/colors-with-modes.css +1 -1
  160. package/lib/design-tokens/css/tokens/functional/components/section/section.css +1 -1
  161. package/lib/design-tokens/css/tokens/functional/components/statistic/base.css +1 -1
  162. package/lib/design-tokens/css/tokens/functional/components/sub-nav/base.css +1 -1
  163. package/lib/design-tokens/css/tokens/functional/components/sub-nav/colors-with-modes.css +1 -1
  164. package/lib/design-tokens/css/tokens/functional/components/subdomain-nav-bar/colors-with-modes.css +3 -3
  165. package/lib/design-tokens/css/tokens/functional/components/tabs/base.css +1 -1
  166. package/lib/design-tokens/css/tokens/functional/components/tabs/colors-with-modes.css +1 -1
  167. package/lib/design-tokens/css/tokens/functional/components/tabs/colors.css +1 -1
  168. package/lib/design-tokens/css/tokens/functional/components/testimonial/base.css +1 -1
  169. package/lib/design-tokens/css/tokens/functional/components/testimonial/colors-with-modes.css +1 -1
  170. package/lib/design-tokens/css/tokens/functional/components/testimonial/colors.css +1 -1
  171. package/lib/design-tokens/css/tokens/functional/components/text-cursor-animation/base.css +1 -1
  172. package/lib/design-tokens/css/tokens/functional/components/text-cursor-animation/colors-with-modes.css +1 -1
  173. package/lib/design-tokens/css/tokens/functional/components/text-cursor-animation/colors.css +1 -1
  174. package/lib/design-tokens/css/tokens/functional/components/tiles/colors-with-modes.css +1 -1
  175. package/lib/design-tokens/css/tokens/functional/components/timeline/base.css +1 -1
  176. package/lib/design-tokens/css/tokens/functional/components/timeline/colors-with-modes.css +1 -1
  177. package/lib/design-tokens/css/tokens/functional/components/timeline/colors.css +1 -1
  178. package/lib/design-tokens/css/tokens/functional/components/token/colors-with-modes.css +1 -1
  179. package/lib/design-tokens/css/tokens/functional/components/token/colors.css +1 -1
  180. package/lib/design-tokens/css/tokens/functional/components/tooltip/colors-with-modes.css +1 -1
  181. package/lib/design-tokens/css/tokens/functional/components/tooltip/colors.css +1 -1
  182. package/lib/design-tokens/css/tokens/functional/components/video-player/base.css +1 -1
  183. package/lib/design-tokens/css/tokens/functional/components/video-player/colors-with-modes.css +1 -1
  184. package/lib/design-tokens/css/tokens/functional/size/border.css +1 -1
  185. package/lib/design-tokens/css/tokens/functional/size/breakpoints.css +1 -1
  186. package/lib/design-tokens/css/tokens/functional/size/size-coarse.css +1 -1
  187. package/lib/design-tokens/css/tokens/functional/size/size-fine.css +1 -1
  188. package/lib/design-tokens/css/tokens/functional/size/size.css +1 -1
  189. package/lib/design-tokens/css/tokens/functional/size/viewport.css +1 -1
  190. package/lib/design-tokens/css/tokens/functional/typography/typography-responsive.css +1 -1
  191. package/lib/design-tokens/css/tokens/functional/typography/typography.css +1 -1
  192. package/lib/design-tokens/js/module/tokens/base/colors/light.js +1 -1
  193. package/lib/design-tokens/js/module/tokens/base/size/size.js +1 -1
  194. package/lib/design-tokens/js/module/tokens/base/typography/typography.js +1 -1
  195. package/lib/design-tokens/js/module/tokens/functional/animation/base.js +1 -1
  196. package/lib/design-tokens/js/module/tokens/functional/colors/global.js +1 -1
  197. package/lib/design-tokens/js/module/tokens/functional/components/bento/base.js +1 -1
  198. package/lib/design-tokens/js/module/tokens/functional/components/button/base.js +25 -0
  199. package/lib/design-tokens/js/module/tokens/functional/components/card/base.js +1 -1
  200. package/lib/design-tokens/js/module/tokens/functional/components/card/colors.js +1 -1
  201. package/lib/design-tokens/js/module/tokens/functional/components/comparison-table/comparison-table.js +1 -1
  202. package/lib/design-tokens/js/module/tokens/functional/components/eyebrow-banner/eyebrow-banner.js +1 -1
  203. package/lib/design-tokens/js/module/tokens/functional/components/faq/base.js +1 -1
  204. package/lib/design-tokens/js/module/tokens/functional/components/faq/colors.js +1 -1
  205. package/lib/design-tokens/js/module/tokens/functional/components/faq/faq.js +1 -1
  206. package/lib/design-tokens/js/module/tokens/functional/components/footer/base.js +1 -1
  207. package/lib/design-tokens/js/module/tokens/functional/components/footer/colors.js +1 -1
  208. package/lib/design-tokens/js/module/tokens/functional/components/frosted-glass-vfx/base.js +1 -1
  209. package/lib/design-tokens/js/module/tokens/functional/components/grid/colors.js +1 -1
  210. package/lib/design-tokens/js/module/tokens/functional/components/grid/grid.js +1 -1
  211. package/lib/design-tokens/js/module/tokens/functional/components/hero/base.js +1 -1
  212. package/lib/design-tokens/js/module/tokens/functional/components/icon/colors.js +1 -1
  213. package/lib/design-tokens/js/module/tokens/functional/components/icon-button/base.js +31 -0
  214. package/lib/design-tokens/js/module/tokens/functional/components/icon-button/colors.js +83 -0
  215. package/lib/design-tokens/js/module/tokens/functional/components/ide/base.js +1 -1
  216. package/lib/design-tokens/js/module/tokens/functional/components/image/base.js +1 -1
  217. package/lib/design-tokens/js/module/tokens/functional/components/inline-code/colors.js +1 -1
  218. package/lib/design-tokens/js/module/tokens/functional/components/inline-link/base.js +1 -1
  219. package/lib/design-tokens/js/module/tokens/functional/components/inline-link/colors.js +1 -1
  220. package/lib/design-tokens/js/module/tokens/functional/components/label/colors.js +1 -1
  221. package/lib/design-tokens/js/module/tokens/functional/components/link/colors.js +1 -1
  222. package/lib/design-tokens/js/module/tokens/functional/components/logosuite/base.js +1 -1
  223. package/lib/design-tokens/js/module/tokens/functional/components/logosuite/colors.js +1 -1
  224. package/lib/design-tokens/js/module/tokens/functional/components/media-playlist/colors.js +1 -1
  225. package/lib/design-tokens/js/module/tokens/functional/components/pricing-options/colors.js +1 -1
  226. package/lib/design-tokens/js/module/tokens/functional/components/pricing-options/pricing-options.js +1 -1
  227. package/lib/design-tokens/js/module/tokens/functional/components/prose/base.js +1 -1
  228. package/lib/design-tokens/js/module/tokens/functional/components/river/base.js +1 -1
  229. package/lib/design-tokens/js/module/tokens/functional/components/river/river.js +1 -1
  230. package/lib/design-tokens/js/module/tokens/functional/components/section/section.js +1 -1
  231. package/lib/design-tokens/js/module/tokens/functional/components/statistic/base.js +1 -1
  232. package/lib/design-tokens/js/module/tokens/functional/components/sub-nav/base.js +1 -1
  233. package/lib/design-tokens/js/module/tokens/functional/components/tabs/base.js +1 -1
  234. package/lib/design-tokens/js/module/tokens/functional/components/tabs/colors.js +1 -1
  235. package/lib/design-tokens/js/module/tokens/functional/components/testimonial/base.js +1 -1
  236. package/lib/design-tokens/js/module/tokens/functional/components/testimonial/colors.js +1 -1
  237. package/lib/design-tokens/js/module/tokens/functional/components/text-cursor-animation/base.js +1 -1
  238. package/lib/design-tokens/js/module/tokens/functional/components/text-cursor-animation/colors.js +1 -1
  239. package/lib/design-tokens/js/module/tokens/functional/components/timeline/base.js +1 -1
  240. package/lib/design-tokens/js/module/tokens/functional/components/timeline/colors.js +1 -1
  241. package/lib/design-tokens/js/module/tokens/functional/components/token/colors.js +1 -1
  242. package/lib/design-tokens/js/module/tokens/functional/components/tooltip/colors.js +1 -1
  243. package/lib/design-tokens/js/module/tokens/functional/components/video-player/base.js +1 -1
  244. package/lib/design-tokens/js/module/tokens/functional/size/border.js +1 -1
  245. package/lib/design-tokens/js/module/tokens/functional/size/breakpoints.js +1 -1
  246. package/lib/design-tokens/js/module/tokens/functional/size/size-coarse.js +1 -1
  247. package/lib/design-tokens/js/module/tokens/functional/size/size-fine.js +1 -1
  248. package/lib/design-tokens/js/module/tokens/functional/size/size.js +1 -1
  249. package/lib/design-tokens/js/module/tokens/functional/size/viewport.js +1 -1
  250. package/lib/design-tokens/js/module/tokens/functional/typography/typography-responsive.js +1 -1
  251. package/lib/design-tokens/js/module/tokens/functional/typography/typography.js +1 -1
  252. package/lib/design-tokens/js/tokens/base/colors/light.js +1 -1
  253. package/lib/design-tokens/js/tokens/base/size/size.js +1 -1
  254. package/lib/design-tokens/js/tokens/base/typography/typography.js +1 -1
  255. package/lib/design-tokens/js/tokens/functional/animation/base.js +1 -1
  256. package/lib/design-tokens/js/tokens/functional/colors/global.js +1 -1
  257. package/lib/design-tokens/js/tokens/functional/components/bento/base.js +1 -1
  258. package/lib/design-tokens/js/tokens/functional/components/button/base.js +11 -0
  259. package/lib/design-tokens/js/tokens/functional/components/card/base.js +1 -1
  260. package/lib/design-tokens/js/tokens/functional/components/card/colors.js +1 -1
  261. package/lib/design-tokens/js/tokens/functional/components/comparison-table/comparison-table.js +1 -1
  262. package/lib/design-tokens/js/tokens/functional/components/eyebrow-banner/eyebrow-banner.js +1 -1
  263. package/lib/design-tokens/js/tokens/functional/components/faq/base.js +1 -1
  264. package/lib/design-tokens/js/tokens/functional/components/faq/colors.js +1 -1
  265. package/lib/design-tokens/js/tokens/functional/components/faq/faq.js +1 -1
  266. package/lib/design-tokens/js/tokens/functional/components/footer/base.js +1 -1
  267. package/lib/design-tokens/js/tokens/functional/components/footer/colors.js +1 -1
  268. package/lib/design-tokens/js/tokens/functional/components/frosted-glass-vfx/base.js +1 -1
  269. package/lib/design-tokens/js/tokens/functional/components/grid/colors.js +1 -1
  270. package/lib/design-tokens/js/tokens/functional/components/grid/grid.js +1 -1
  271. package/lib/design-tokens/js/tokens/functional/components/hero/base.js +1 -1
  272. package/lib/design-tokens/js/tokens/functional/components/icon/colors.js +1 -1
  273. package/lib/design-tokens/js/tokens/functional/components/icon-button/base.js +13 -0
  274. package/lib/design-tokens/js/tokens/functional/components/icon-button/colors.js +19 -0
  275. package/lib/design-tokens/js/tokens/functional/components/ide/base.js +1 -1
  276. package/lib/design-tokens/js/tokens/functional/components/image/base.js +1 -1
  277. package/lib/design-tokens/js/tokens/functional/components/inline-code/colors.js +1 -1
  278. package/lib/design-tokens/js/tokens/functional/components/inline-link/base.js +1 -1
  279. package/lib/design-tokens/js/tokens/functional/components/inline-link/colors.js +1 -1
  280. package/lib/design-tokens/js/tokens/functional/components/label/colors.js +1 -1
  281. package/lib/design-tokens/js/tokens/functional/components/link/colors.js +1 -1
  282. package/lib/design-tokens/js/tokens/functional/components/logosuite/base.js +1 -1
  283. package/lib/design-tokens/js/tokens/functional/components/logosuite/colors.js +1 -1
  284. package/lib/design-tokens/js/tokens/functional/components/media-playlist/colors.js +1 -1
  285. package/lib/design-tokens/js/tokens/functional/components/pricing-options/colors.js +1 -1
  286. package/lib/design-tokens/js/tokens/functional/components/pricing-options/pricing-options.js +1 -1
  287. package/lib/design-tokens/js/tokens/functional/components/prose/base.js +1 -1
  288. package/lib/design-tokens/js/tokens/functional/components/river/base.js +1 -1
  289. package/lib/design-tokens/js/tokens/functional/components/river/river.js +1 -1
  290. package/lib/design-tokens/js/tokens/functional/components/section/section.js +1 -1
  291. package/lib/design-tokens/js/tokens/functional/components/statistic/base.js +1 -1
  292. package/lib/design-tokens/js/tokens/functional/components/sub-nav/base.js +1 -1
  293. package/lib/design-tokens/js/tokens/functional/components/tabs/base.js +1 -1
  294. package/lib/design-tokens/js/tokens/functional/components/tabs/colors.js +1 -1
  295. package/lib/design-tokens/js/tokens/functional/components/testimonial/base.js +1 -1
  296. package/lib/design-tokens/js/tokens/functional/components/testimonial/colors.js +1 -1
  297. package/lib/design-tokens/js/tokens/functional/components/text-cursor-animation/base.js +1 -1
  298. package/lib/design-tokens/js/tokens/functional/components/text-cursor-animation/colors.js +1 -1
  299. package/lib/design-tokens/js/tokens/functional/components/timeline/base.js +1 -1
  300. package/lib/design-tokens/js/tokens/functional/components/timeline/colors.js +1 -1
  301. package/lib/design-tokens/js/tokens/functional/components/token/colors.js +1 -1
  302. package/lib/design-tokens/js/tokens/functional/components/tooltip/colors.js +1 -1
  303. package/lib/design-tokens/js/tokens/functional/components/video-player/base.js +1 -1
  304. package/lib/design-tokens/js/tokens/functional/size/border.js +1 -1
  305. package/lib/design-tokens/js/tokens/functional/size/breakpoints.js +1 -1
  306. package/lib/design-tokens/js/tokens/functional/size/size-coarse.js +1 -1
  307. package/lib/design-tokens/js/tokens/functional/size/size-fine.js +1 -1
  308. package/lib/design-tokens/js/tokens/functional/size/size.js +1 -1
  309. package/lib/design-tokens/js/tokens/functional/size/viewport.js +1 -1
  310. package/lib/design-tokens/js/tokens/functional/typography/typography-responsive.js +1 -1
  311. package/lib/design-tokens/js/tokens/functional/typography/typography.js +1 -1
  312. package/lib/design-tokens/json/colors.json +17 -1
  313. package/lib/design-tokens/scss/tokens/base/colors/light.scss +1 -1
  314. package/lib/design-tokens/scss/tokens/base/size/size.scss +1 -1
  315. package/lib/design-tokens/scss/tokens/base/typography/typography.scss +1 -1
  316. package/lib/design-tokens/scss/tokens/functional/animation/base.scss +1 -1
  317. package/lib/design-tokens/scss/tokens/functional/colors/global.scss +1 -1
  318. package/lib/design-tokens/scss/tokens/functional/components/bento/base.scss +1 -1
  319. package/lib/design-tokens/scss/tokens/functional/components/button/base.scss +10 -0
  320. package/lib/design-tokens/scss/tokens/functional/components/card/base.scss +1 -1
  321. package/lib/design-tokens/scss/tokens/functional/components/card/colors.scss +1 -1
  322. package/lib/design-tokens/scss/tokens/functional/components/comparison-table/comparison-table.scss +1 -1
  323. package/lib/design-tokens/scss/tokens/functional/components/eyebrow-banner/eyebrow-banner.scss +1 -1
  324. package/lib/design-tokens/scss/tokens/functional/components/faq/base.scss +1 -1
  325. package/lib/design-tokens/scss/tokens/functional/components/faq/colors.scss +1 -1
  326. package/lib/design-tokens/scss/tokens/functional/components/faq/faq.scss +1 -1
  327. package/lib/design-tokens/scss/tokens/functional/components/footer/base.scss +1 -1
  328. package/lib/design-tokens/scss/tokens/functional/components/footer/colors.scss +1 -1
  329. package/lib/design-tokens/scss/tokens/functional/components/frosted-glass-vfx/base.scss +1 -1
  330. package/lib/design-tokens/scss/tokens/functional/components/grid/colors.scss +1 -1
  331. package/lib/design-tokens/scss/tokens/functional/components/grid/grid.scss +1 -1
  332. package/lib/design-tokens/scss/tokens/functional/components/hero/base.scss +1 -1
  333. package/lib/design-tokens/scss/tokens/functional/components/icon/colors.scss +1 -1
  334. package/lib/design-tokens/scss/tokens/functional/components/icon-button/base.scss +12 -0
  335. package/lib/design-tokens/scss/tokens/functional/components/icon-button/colors.scss +18 -0
  336. package/lib/design-tokens/scss/tokens/functional/components/ide/base.scss +1 -1
  337. package/lib/design-tokens/scss/tokens/functional/components/image/base.scss +1 -1
  338. package/lib/design-tokens/scss/tokens/functional/components/inline-code/colors.scss +1 -1
  339. package/lib/design-tokens/scss/tokens/functional/components/inline-link/base.scss +1 -1
  340. package/lib/design-tokens/scss/tokens/functional/components/inline-link/colors.scss +1 -1
  341. package/lib/design-tokens/scss/tokens/functional/components/label/colors.scss +1 -1
  342. package/lib/design-tokens/scss/tokens/functional/components/link/colors.scss +1 -1
  343. package/lib/design-tokens/scss/tokens/functional/components/logosuite/base.scss +1 -1
  344. package/lib/design-tokens/scss/tokens/functional/components/logosuite/colors.scss +1 -1
  345. package/lib/design-tokens/scss/tokens/functional/components/media-playlist/colors.scss +1 -1
  346. package/lib/design-tokens/scss/tokens/functional/components/pricing-options/colors.scss +1 -1
  347. package/lib/design-tokens/scss/tokens/functional/components/pricing-options/pricing-options.scss +1 -1
  348. package/lib/design-tokens/scss/tokens/functional/components/prose/base.scss +1 -1
  349. package/lib/design-tokens/scss/tokens/functional/components/river/base.scss +1 -1
  350. package/lib/design-tokens/scss/tokens/functional/components/river/river.scss +1 -1
  351. package/lib/design-tokens/scss/tokens/functional/components/section/section.scss +1 -1
  352. package/lib/design-tokens/scss/tokens/functional/components/statistic/base.scss +1 -1
  353. package/lib/design-tokens/scss/tokens/functional/components/sub-nav/base.scss +1 -1
  354. package/lib/design-tokens/scss/tokens/functional/components/tabs/base.scss +1 -1
  355. package/lib/design-tokens/scss/tokens/functional/components/tabs/colors.scss +1 -1
  356. package/lib/design-tokens/scss/tokens/functional/components/testimonial/base.scss +1 -1
  357. package/lib/design-tokens/scss/tokens/functional/components/testimonial/colors.scss +1 -1
  358. package/lib/design-tokens/scss/tokens/functional/components/text-cursor-animation/base.scss +1 -1
  359. package/lib/design-tokens/scss/tokens/functional/components/text-cursor-animation/colors.scss +1 -1
  360. package/lib/design-tokens/scss/tokens/functional/components/timeline/base.scss +1 -1
  361. package/lib/design-tokens/scss/tokens/functional/components/timeline/colors.scss +1 -1
  362. package/lib/design-tokens/scss/tokens/functional/components/token/colors.scss +1 -1
  363. package/lib/design-tokens/scss/tokens/functional/components/tooltip/colors.scss +1 -1
  364. package/lib/design-tokens/scss/tokens/functional/components/video-player/base.scss +1 -1
  365. package/lib/design-tokens/scss/tokens/functional/size/border.scss +1 -1
  366. package/lib/design-tokens/scss/tokens/functional/size/breakpoints.scss +1 -1
  367. package/lib/design-tokens/scss/tokens/functional/size/size-coarse.scss +1 -1
  368. package/lib/design-tokens/scss/tokens/functional/size/size-fine.scss +1 -1
  369. package/lib/design-tokens/scss/tokens/functional/size/size.scss +1 -1
  370. package/lib/design-tokens/scss/tokens/functional/size/viewport.scss +1 -1
  371. package/lib/design-tokens/scss/tokens/functional/typography/typography-responsive.scss +1 -1
  372. package/lib/design-tokens/scss/tokens/functional/typography/typography.scss +1 -1
  373. package/lib/design-tokens/ts/tokens/base/colors/light.d.ts +1 -1
  374. package/lib/design-tokens/ts/tokens/base/colors/light.js +1 -1
  375. package/lib/design-tokens/ts/tokens/base/size/size.d.ts +1 -1
  376. package/lib/design-tokens/ts/tokens/base/size/size.js +1 -1
  377. package/lib/design-tokens/ts/tokens/base/typography/typography.d.ts +1 -1
  378. package/lib/design-tokens/ts/tokens/base/typography/typography.js +1 -1
  379. package/lib/design-tokens/ts/tokens/functional/animation/base.d.ts +1 -1
  380. package/lib/design-tokens/ts/tokens/functional/animation/base.js +1 -1
  381. package/lib/design-tokens/ts/tokens/functional/colors/global.d.ts +1 -1
  382. package/lib/design-tokens/ts/tokens/functional/colors/global.js +1 -1
  383. package/lib/design-tokens/ts/tokens/functional/components/bento/base.d.ts +1 -1
  384. package/lib/design-tokens/ts/tokens/functional/components/bento/base.js +1 -1
  385. package/lib/design-tokens/ts/tokens/functional/components/button/base.d.ts +28 -0
  386. package/lib/design-tokens/ts/tokens/functional/components/button/base.js +25 -0
  387. package/lib/design-tokens/ts/tokens/functional/components/card/base.d.ts +1 -1
  388. package/lib/design-tokens/ts/tokens/functional/components/card/base.js +1 -1
  389. package/lib/design-tokens/ts/tokens/functional/components/card/colors.d.ts +1 -1
  390. package/lib/design-tokens/ts/tokens/functional/components/card/colors.js +1 -1
  391. package/lib/design-tokens/ts/tokens/functional/components/comparison-table/comparison-table.d.ts +1 -1
  392. package/lib/design-tokens/ts/tokens/functional/components/comparison-table/comparison-table.js +1 -1
  393. package/lib/design-tokens/ts/tokens/functional/components/eyebrow-banner/eyebrow-banner.d.ts +1 -1
  394. package/lib/design-tokens/ts/tokens/functional/components/eyebrow-banner/eyebrow-banner.js +1 -1
  395. package/lib/design-tokens/ts/tokens/functional/components/faq/base.d.ts +1 -1
  396. package/lib/design-tokens/ts/tokens/functional/components/faq/base.js +1 -1
  397. package/lib/design-tokens/ts/tokens/functional/components/faq/colors.d.ts +1 -1
  398. package/lib/design-tokens/ts/tokens/functional/components/faq/colors.js +1 -1
  399. package/lib/design-tokens/ts/tokens/functional/components/faq/faq.d.ts +1 -1
  400. package/lib/design-tokens/ts/tokens/functional/components/faq/faq.js +1 -1
  401. package/lib/design-tokens/ts/tokens/functional/components/footer/base.d.ts +1 -1
  402. package/lib/design-tokens/ts/tokens/functional/components/footer/base.js +1 -1
  403. package/lib/design-tokens/ts/tokens/functional/components/footer/colors.d.ts +1 -1
  404. package/lib/design-tokens/ts/tokens/functional/components/footer/colors.js +1 -1
  405. package/lib/design-tokens/ts/tokens/functional/components/frosted-glass-vfx/base.d.ts +1 -1
  406. package/lib/design-tokens/ts/tokens/functional/components/frosted-glass-vfx/base.js +1 -1
  407. package/lib/design-tokens/ts/tokens/functional/components/grid/colors.d.ts +1 -1
  408. package/lib/design-tokens/ts/tokens/functional/components/grid/colors.js +1 -1
  409. package/lib/design-tokens/ts/tokens/functional/components/grid/grid.d.ts +1 -1
  410. package/lib/design-tokens/ts/tokens/functional/components/grid/grid.js +1 -1
  411. package/lib/design-tokens/ts/tokens/functional/components/hero/base.d.ts +1 -1
  412. package/lib/design-tokens/ts/tokens/functional/components/hero/base.js +1 -1
  413. package/lib/design-tokens/ts/tokens/functional/components/icon/colors.d.ts +1 -1
  414. package/lib/design-tokens/ts/tokens/functional/components/icon/colors.js +1 -1
  415. package/lib/design-tokens/ts/tokens/functional/components/icon-button/base.d.ts +34 -0
  416. package/lib/design-tokens/ts/tokens/functional/components/icon-button/base.js +31 -0
  417. package/lib/design-tokens/ts/tokens/functional/components/icon-button/colors.d.ts +44 -0
  418. package/lib/design-tokens/ts/tokens/functional/components/icon-button/colors.js +41 -0
  419. package/lib/design-tokens/ts/tokens/functional/components/ide/base.d.ts +1 -1
  420. package/lib/design-tokens/ts/tokens/functional/components/ide/base.js +1 -1
  421. package/lib/design-tokens/ts/tokens/functional/components/image/base.d.ts +1 -1
  422. package/lib/design-tokens/ts/tokens/functional/components/image/base.js +1 -1
  423. package/lib/design-tokens/ts/tokens/functional/components/inline-code/colors.d.ts +1 -1
  424. package/lib/design-tokens/ts/tokens/functional/components/inline-code/colors.js +1 -1
  425. package/lib/design-tokens/ts/tokens/functional/components/inline-link/base.d.ts +1 -1
  426. package/lib/design-tokens/ts/tokens/functional/components/inline-link/base.js +1 -1
  427. package/lib/design-tokens/ts/tokens/functional/components/inline-link/colors.d.ts +1 -1
  428. package/lib/design-tokens/ts/tokens/functional/components/inline-link/colors.js +1 -1
  429. package/lib/design-tokens/ts/tokens/functional/components/label/colors.d.ts +1 -1
  430. package/lib/design-tokens/ts/tokens/functional/components/label/colors.js +1 -1
  431. package/lib/design-tokens/ts/tokens/functional/components/link/colors.d.ts +1 -1
  432. package/lib/design-tokens/ts/tokens/functional/components/link/colors.js +1 -1
  433. package/lib/design-tokens/ts/tokens/functional/components/logosuite/base.d.ts +1 -1
  434. package/lib/design-tokens/ts/tokens/functional/components/logosuite/base.js +1 -1
  435. package/lib/design-tokens/ts/tokens/functional/components/logosuite/colors.d.ts +1 -1
  436. package/lib/design-tokens/ts/tokens/functional/components/logosuite/colors.js +1 -1
  437. package/lib/design-tokens/ts/tokens/functional/components/media-playlist/colors.d.ts +1 -1
  438. package/lib/design-tokens/ts/tokens/functional/components/media-playlist/colors.js +1 -1
  439. package/lib/design-tokens/ts/tokens/functional/components/pricing-options/colors.d.ts +1 -1
  440. package/lib/design-tokens/ts/tokens/functional/components/pricing-options/colors.js +1 -1
  441. package/lib/design-tokens/ts/tokens/functional/components/pricing-options/pricing-options.d.ts +1 -1
  442. package/lib/design-tokens/ts/tokens/functional/components/pricing-options/pricing-options.js +1 -1
  443. package/lib/design-tokens/ts/tokens/functional/components/prose/base.d.ts +1 -1
  444. package/lib/design-tokens/ts/tokens/functional/components/prose/base.js +1 -1
  445. package/lib/design-tokens/ts/tokens/functional/components/river/base.d.ts +1 -1
  446. package/lib/design-tokens/ts/tokens/functional/components/river/base.js +1 -1
  447. package/lib/design-tokens/ts/tokens/functional/components/river/river.d.ts +1 -1
  448. package/lib/design-tokens/ts/tokens/functional/components/river/river.js +1 -1
  449. package/lib/design-tokens/ts/tokens/functional/components/section/section.d.ts +1 -1
  450. package/lib/design-tokens/ts/tokens/functional/components/section/section.js +1 -1
  451. package/lib/design-tokens/ts/tokens/functional/components/statistic/base.d.ts +1 -1
  452. package/lib/design-tokens/ts/tokens/functional/components/statistic/base.js +1 -1
  453. package/lib/design-tokens/ts/tokens/functional/components/sub-nav/base.d.ts +1 -1
  454. package/lib/design-tokens/ts/tokens/functional/components/sub-nav/base.js +1 -1
  455. package/lib/design-tokens/ts/tokens/functional/components/tabs/base.d.ts +1 -1
  456. package/lib/design-tokens/ts/tokens/functional/components/tabs/base.js +1 -1
  457. package/lib/design-tokens/ts/tokens/functional/components/tabs/colors.d.ts +1 -1
  458. package/lib/design-tokens/ts/tokens/functional/components/tabs/colors.js +1 -1
  459. package/lib/design-tokens/ts/tokens/functional/components/testimonial/base.d.ts +1 -1
  460. package/lib/design-tokens/ts/tokens/functional/components/testimonial/base.js +1 -1
  461. package/lib/design-tokens/ts/tokens/functional/components/testimonial/colors.d.ts +1 -1
  462. package/lib/design-tokens/ts/tokens/functional/components/testimonial/colors.js +1 -1
  463. package/lib/design-tokens/ts/tokens/functional/components/text-cursor-animation/base.d.ts +1 -1
  464. package/lib/design-tokens/ts/tokens/functional/components/text-cursor-animation/base.js +1 -1
  465. package/lib/design-tokens/ts/tokens/functional/components/text-cursor-animation/colors.d.ts +1 -1
  466. package/lib/design-tokens/ts/tokens/functional/components/text-cursor-animation/colors.js +1 -1
  467. package/lib/design-tokens/ts/tokens/functional/components/timeline/base.d.ts +1 -1
  468. package/lib/design-tokens/ts/tokens/functional/components/timeline/base.js +1 -1
  469. package/lib/design-tokens/ts/tokens/functional/components/timeline/colors.d.ts +1 -1
  470. package/lib/design-tokens/ts/tokens/functional/components/timeline/colors.js +1 -1
  471. package/lib/design-tokens/ts/tokens/functional/components/token/colors.d.ts +1 -1
  472. package/lib/design-tokens/ts/tokens/functional/components/token/colors.js +1 -1
  473. package/lib/design-tokens/ts/tokens/functional/components/tooltip/colors.d.ts +1 -1
  474. package/lib/design-tokens/ts/tokens/functional/components/tooltip/colors.js +1 -1
  475. package/lib/design-tokens/ts/tokens/functional/components/video-player/base.d.ts +1 -1
  476. package/lib/design-tokens/ts/tokens/functional/components/video-player/base.js +1 -1
  477. package/lib/design-tokens/ts/tokens/functional/size/border.d.ts +1 -1
  478. package/lib/design-tokens/ts/tokens/functional/size/border.js +1 -1
  479. package/lib/design-tokens/ts/tokens/functional/size/breakpoints.d.ts +1 -1
  480. package/lib/design-tokens/ts/tokens/functional/size/breakpoints.js +1 -1
  481. package/lib/design-tokens/ts/tokens/functional/size/size-coarse.d.ts +1 -1
  482. package/lib/design-tokens/ts/tokens/functional/size/size-coarse.js +1 -1
  483. package/lib/design-tokens/ts/tokens/functional/size/size-fine.d.ts +1 -1
  484. package/lib/design-tokens/ts/tokens/functional/size/size-fine.js +1 -1
  485. package/lib/design-tokens/ts/tokens/functional/size/size.d.ts +1 -1
  486. package/lib/design-tokens/ts/tokens/functional/size/size.js +1 -1
  487. package/lib/design-tokens/ts/tokens/functional/size/viewport.d.ts +1 -1
  488. package/lib/design-tokens/ts/tokens/functional/size/viewport.js +1 -1
  489. package/lib/design-tokens/ts/tokens/functional/typography/typography-responsive.d.ts +1 -1
  490. package/lib/design-tokens/ts/tokens/functional/typography/typography-responsive.js +1 -1
  491. package/lib/design-tokens/ts/tokens/functional/typography/typography.d.ts +1 -1
  492. package/lib/design-tokens/ts/tokens/functional/typography/typography.js +1 -1
  493. package/lib/forms/TextInput/TextInput.d.ts +4 -2
  494. package/lib/index.d.ts +1 -0
  495. package/lib/index.js +1 -1
  496. package/llms.txt +3 -2
  497. package/package.json +1 -1
  498. package/esm/ActionMenu/ActionMenu.module-BAeHTqHw.css +0 -1
  499. package/esm/Button/Button.module-9oHHqqnx.css +0 -1
  500. package/esm/ButtonGroup/ButtonGroup.module-wZYyupar.css +0 -1
  501. package/esm/SubdomainNavBar/SubdomainNavBar.module-DLlWpwNa.css +0 -1
  502. package/esm/Tooltip/Tooltip.module-5Km7qGR5.css +0 -1
  503. package/esm/forms/TextInput/TextInput.module-CrmcmO_m.css +0 -1
  504. package/esm/packages/design-tokens/lib/design-tokens/css/tokens/functional/components/action-menu/colors-with-modes-B69RzUbe.css +0 -1
  505. package/esm/packages/design-tokens/lib/design-tokens/css/tokens/functional/components/subdomain-nav-bar/colors-with-modes-BGj0AiDW.css +0 -1
  506. package/esm/river/RiverBreakoutTabs/RiverBreakoutTabs.module-CB2SZhbE.css +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"SubdomainNavBar.module.js","names":[],"sources":["../../src/SubdomainNavBar/SubdomainNavBar.module.css"],"sourcesContent":["/*\n * Main styles for the subdomain navigation bar.\n */\n.SubdomainNavBar {\n position: relative;\n z-index: 90;\n font-weight: 550;\n background: var(--brand-color-canvas-default);\n height: var(--SubdomainNavBar-height);\n}\n\n.SubdomainNavBar::after {\n content: '';\n position: absolute;\n inset-inline: 0;\n inset-block-start: 100%;\n height: var(--brand-borderWidth-thin);\n background-color: var(--brand-color-text-emphasized);\n pointer-events: none;\n}\n\n/*\n * Outer container\n */\n.SubdomainNavBar-outer-container {\n --SubdomainNavBar-height: var(--base-size-64);\n\n z-index: 90;\n}\n\n@media screen and (max-width: 47.99rem) {\n .SubdomainNavBar-outer-container {\n --SubdomainNavBar-height: calc(var(--base-size-64) - var(--base-size-8));\n }\n}\n\n.SubdomainNavBar-outer-container:not(.SubdomainNavBar-outer-container--fixed) {\n position: relative;\n}\n\n.SubdomainNavBar-outer-container--fixed {\n position: fixed;\n top: 0;\n right: 0;\n left: 0;\n}\n\n/*\n * Inner container\n */\n.SubdomainNavBar-inner-container {\n display: flex;\n padding: 4px 28px;\n}\n\n.SubdomainNavBar-inner-container--centered {\n max-width: 1280px;\n margin: 0 auto;\n}\n\n@media screen and (min-width: 48rem) {\n .SubdomainNavBar-inner-container {\n padding: 4px 32px;\n }\n}\n\n.SubdomainNavBar-inner-container--search-open {\n animation: fade-out 150ms;\n}\n\n/*\n * Logo and title area\n */\n.SubdomainNavBar-title-area {\n display: inline-flex;\n list-style-type: none;\n align-items: center;\n gap: var(--base-size-8);\n padding: 0;\n margin: 0;\n max-width: 340px;\n color: var(--brand-color-text-default);\n padding: var(--base-size-16) 0;\n}\n\n@media screen and (min-width: 63.25rem) {\n .SubdomainNavBar-title-area {\n gap: var(--base-size-16);\n }\n}\n\n.SubdomainNavBar-logo-mark,\n.SubdomainNavBar-title {\n display: inline-flex;\n align-items: center;\n color: var(--brand-color-text-default);\n}\n\n.SubdomainNavBar-logo-mark {\n position: relative;\n}\n\n.SubdomainNavBar-back-arrow {\n position: absolute;\n display: flex;\n inset-inline-start: calc(-1 * var(--base-size-24) + var(--base-size-4));\n inset-block-start: 50%;\n color: var(--brand-color-text-muted);\n opacity: 0;\n transform: translate(var(--base-size-4), -50%);\n transition: opacity var(--brand-animation-duration-fast), transform var(--brand-animation-duration-fast) ease;\n}\n\n.SubdomainNavBar-logo-mark:hover .SubdomainNavBar-back-arrow {\n opacity: 1;\n transform: translate(0, -50%);\n}\n\n.SubdomainNavBar-logo-mark svg {\n width: 32px;\n height: 32px;\n}\n\n.SubdomainNavBar-title {\n line-height: var(--base-size-32);\n text-decoration: none;\n padding-right: var(--base-size-16);\n white-space: nowrap;\n}\n\n.SubdomainNavBar-title:hover {\n text-decoration: none;\n}\n\n.SubdomainNavBar--variant-featured .SubdomainNavBar-title-prefix {\n color: var(--brand-color-text-default);\n}\n\n.SubdomainNavBar-title-label {\n color: inherit;\n}\n\n.SubdomainNavBar--variant-default.SubdomainNavBar--has-title .SubdomainNavBar-title-area > li:first-child {\n display: flex;\n align-items: center;\n align-self: stretch;\n}\n\n.SubdomainNavBar--variant-default.SubdomainNavBar--has-title .SubdomainNavBar-title-area > li:first-child::after {\n content: '';\n box-sizing: border-box;\n align-self: center;\n flex: none;\n width: var(--brand-borderWidth-thin);\n height: var(--SubdomainNavBar-height);\n margin-inline: var(--base-size-16);\n background-color: var(--brand-color-border-muted);\n}\n\n.SubdomainNavBar-leading-component,\n.SubdomainNavBar-trailing-component {\n display: inline-flex;\n align-items: center;\n min-width: 0;\n}\n\n.SubdomainNavBar-leading-component {\n margin-inline-end: var(--base-size-16);\n}\n\n.SubdomainNavBar-trailing-component {\n margin-inline-start: var(--base-size-16);\n}\n\n/*\n * Primary navigation link area\n */\n.SubdomainNavBar-primary-nav {\n display: inline-flex;\n list-style-type: none;\n align-items: center;\n flex: 1 1 0;\n min-width: 0;\n padding: 0;\n margin: 0;\n}\n\n.SubdomainNavBar-primary-nav-list {\n list-style-type: none;\n}\n\n@media screen and (max-width: 767px) {\n .SubdomainNavBar-primary-nav-list {\n display: none;\n }\n\n .SubdomainNavBar-primary-nav-list--invisible {\n display: none;\n }\n\n .SubdomainNavBar-primary-nav-list--visible {\n display: block;\n margin: 0;\n padding: 0;\n }\n\n .SubdomainNavBar-leading-component,\n .SubdomainNavBar-trailing-component {\n flex: none;\n width: 100%;\n box-sizing: border-box;\n padding-block: var(--base-size-16);\n padding-inline: var(--base-size-16);\n }\n\n .SubdomainNavBar-leading-component {\n margin-inline-end: 0;\n }\n\n .SubdomainNavBar-trailing-component {\n margin-inline-start: 0;\n }\n\n .SubdomainNavBar-menu-wrapper {\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n overflow-y: auto;\n position: absolute;\n top: var(--SubdomainNavBar-height);\n left: 0;\n right: 0;\n z-index: 2;\n background-color: var(--brand-color-canvas-default);\n width: 100%;\n max-height: calc(100vh - var(--SubdomainNavBar-height) - var(--SubdomainNavBar-menu-offset-block-start, 0px));\n animation: fade-in-down 500ms;\n animation-timing-function: var(--brand-animation-easing-default);\n }\n\n .SubdomainNavBar-menu-wrapper--close {\n display: none;\n }\n\n .SubdomainNavBar-menu-wrapper-footer {\n flex: none;\n display: flex;\n flex-direction: column;\n width: 100%;\n }\n}\n\n@media screen and (min-width: 48rem) {\n .SubdomainNavBar-primary-nav-overflow {\n display: flex;\n align-items: center;\n flex: 1 1 0;\n min-width: 0;\n margin: 0 var(--base-size-24) 0 0;\n }\n\n .SubdomainNavBar-primary-nav-list {\n display: flex;\n align-items: center;\n flex: 1 1 auto;\n flex-wrap: nowrap;\n min-width: 0;\n block-size: var(--base-size-48);\n max-block-size: var(--base-size-48);\n overflow: hidden;\n padding: 0;\n margin: 0;\n }\n}\n\n.SubdomainNavBar-primary-nav-list-item {\n flex: 0 0 auto;\n white-space: nowrap;\n}\n\n@media screen and (max-width: 767px) {\n .SubdomainNavBar-primary-nav-list-item {\n animation-name: fade-in-down-staggered;\n animation-duration: 500ms;\n animation-delay: calc(var(--animation-order) * 80ms);\n animation-fill-mode: both;\n animation-timing-function: var(--brand-animation-easing-default);\n }\n}\n\n@media screen and (min-width: 48rem) {\n .SubdomainNavBar-primary-nav-list-item--overflowed {\n visibility: hidden;\n pointer-events: none;\n }\n\n .SubdomainNavBar-primary-nav-list-item--overflow {\n display: flex;\n align-items: center;\n flex: 0 0 auto;\n position: absolute;\n inset-inline-end: 0;\n visibility: hidden;\n pointer-events: none;\n }\n\n .SubdomainNavBar-primary-nav-overflow--has-overflow .SubdomainNavBar-primary-nav-list-item--overflow {\n position: relative;\n visibility: visible;\n pointer-events: auto;\n }\n}\n\n.SubdomainNavBar-link {\n position: relative;\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: var(--base-size-8);\n color: var(--brand-color-text-default);\n font-family: var(--brand-heading-fontFamily);\n font-weight: var(--base-text-weight-normal);\n font-size: var(--base-size-20);\n line-height: var(--base-size-20);\n padding: var(--base-size-8) var(--base-size-16) var(--base-size-16) var(--base-size-28);\n text-decoration: none;\n}\n\n.SubdomainNavBar-link:hover {\n text-decoration: none;\n}\n\n.SubdomainNavBar-link-text {\n position: relative;\n}\n\n.SubdomainNavBar-link-content {\n display: inline-flex;\n align-items: center;\n gap: var(--base-size-8);\n}\n\n@media screen and (max-width: 767px) {\n .SubdomainNavBar-link:first-of-type {\n padding-top: var(--base-size-24);\n }\n\n .SubdomainNavBar-link--title {\n font-weight: var(--base-text-weight-medium);\n }\n}\n\n@media screen and (min-width: 48rem) {\n .SubdomainNavBar-link {\n font-family: var(--brand-heading-fontFamily);\n font-weight: var(--base-text-weight-normal);\n font-size: var(--base-size-16);\n line-height: var(--base-size-16);\n padding: var(--base-size-16) var(--base-size-16);\n }\n\n .SubdomainNavBar-link-text::after {\n content: '';\n position: absolute;\n bottom: -6px;\n left: 0;\n width: 100%;\n height: 2px;\n background-color: var(--brand-SubdomainNavBar-border-nav-default);\n opacity: 0;\n transition: opacity var(--brand-animation-duration-fast), transform var(--brand-animation-duration-fast);\n transform: scale(0);\n transform-origin: center;\n }\n\n .SubdomainNavBar-link:hover .SubdomainNavBar-link-text::after,\n .SubdomainNavBar-link:focus .SubdomainNavBar-link-text::after {\n opacity: 1;\n transform: scale(0.75);\n }\n\n .SubdomainNavBar-link:active .SubdomainNavBar-link-text::after {\n background-color: var(--brand-SubdomainNavBar-border-nav-pressed);\n transform: scale(0.75);\n }\n\n .SubdomainNavBar-overflow-menu-item .SubdomainNavBar-link {\n transition: background-color var(--brand-animation-easing-default) 250ms;\n background-color: var(--brand-SubdomainNavBar-canvas-overflow-default);\n color: var(--brand-SubdomainNavBar-fg-overflow-default);\n }\n\n .SubdomainNavBar-overflow-menu-item .SubdomainNavBar-link .SubdomainNavBar-link-text::after {\n display: none;\n }\n\n .SubdomainNavBar-overflow-menu-item .SubdomainNavBar-link:hover {\n background-color: var(--brand-SubdomainNavBar-canvas-overflow-hover);\n }\n\n .SubdomainNavBar-overflow-menu-item .SubdomainNavBar-link:focus,\n .SubdomainNavBar-overflow-menu-item .SubdomainNavBar-link:focus-visible {\n box-shadow: inset 0px 0px 0px 2px var(--brand-color-focus);\n outline: none;\n }\n}\n\n@media screen and (min-width: 63.25rem) {\n .SubdomainNavBar-link {\n padding: var(--base-size-16) var(--base-size-24);\n }\n}\n\n.SubdomainNavBar-more-link {\n display: none;\n}\n\n.SubdomainNavBar-more-link[aria-expanded='true']:hover::after,\n.SubdomainNavBar-more-link[aria-expanded='true']:focus::after {\n display: none;\n}\n\n@media screen and (min-width: 48rem) {\n .SubdomainNavBar-more-link {\n cursor: pointer;\n appearance: none;\n border: none;\n background-color: transparent;\n display: inline-flex;\n align-items: center;\n gap: var(--base-size-4);\n }\n}\n\n.SubdomainNavBar-overflow-menu {\n position: absolute;\n z-index: 100;\n right: auto;\n background-color: var(--brand-color-canvas-default);\n border-radius: var(--brand-borderRadius-large);\n animation: fade-in-down 0.25s, enlarge-shadow 250ms forwards;\n animation-timing-function: var(--brand-animation-easing-default);\n box-shadow: 0px 8px 24px rgba(1, 4, 9, 0.15);\n overflow: hidden;\n}\n\n.SubdomainNavBar-overflow-menu-list {\n display: grid;\n list-style-type: none;\n padding: 0;\n margin: 0;\n width: max-content;\n}\n\n/*\n * Toolbar actions area for search and mobile menu\n */\n\n.SubdomainNavBar-secondary-nav {\n display: flex;\n align-items: center;\n flex: 0 1 auto;\n min-width: 0;\n margin-left: auto;\n}\n.SubdomainNavBar-search-trigger {\n box-sizing: border-box;\n display: flex;\n align-items: center;\n min-width: 0;\n}\n\n@media screen and (min-width: 63.25rem) {\n .SubdomainNavBar-search-trigger {\n --SubdomainNavBar-search-input-width: calc(var(--base-size-128) * 2 + var(--base-size-24));\n\n flex: 0 9999 var(--SubdomainNavBar-search-input-width);\n width: var(--SubdomainNavBar-search-input-width);\n max-width: 100%;\n min-width: calc(var(--base-size-128) + var(--base-size-32));\n }\n}\n\n.SubdomainNavBar-menu-button {\n position: relative;\n cursor: pointer;\n appearance: none;\n background-color: transparent;\n border: var(--brand-borderWidth-thick) solid transparent;\n color: var(--brand-color-text-default);\n width: calc(48px - var(--brand-borderWidth-thick));\n height: calc(48px - var(--brand-borderWidth-thick));\n display: flex;\n align-items: center;\n justify-content: center;\n transition: border 250ms var(--brand-animation-easing-default), box-shadow 250ms ease;\n border-radius: var(--brand-borderRadius-medium);\n box-shadow: 0 0 0 2px transparent;\n gap: 0;\n}\n\n.SubdomainNavBar-menu-button svg {\n width: 24px;\n height: 24px;\n}\n\n.SubdomainNavBar-search-input-button {\n cursor: pointer;\n appearance: none;\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--base-size-16);\n width: 100%;\n block-size: var(--base-size-32);\n min-block-size: var(--base-size-32);\n padding: var(--base-size-4) var(--base-size-4) var(--base-size-4) calc(var(--base-size-8) + var(--base-size-2));\n overflow: hidden;\n color: var(--brand-color-text-muted);\n background-color: var(--brand-color-canvas-subtle);\n border: 0;\n border-radius: var(--brand-borderRadius-medium);\n font-family: var(--brand-body-fontFamily);\n transition: background-color var(--brand-animation-duration-fast) var(--brand-animation-easing-default),\n box-shadow var(--brand-animation-duration-fast) var(--brand-animation-easing-default);\n}\n\n.SubdomainNavBar-search-input-button:hover {\n box-shadow: inset 0 0 0 var(--brand-borderWidth-thin) var(--brand-color-border-muted);\n}\n\n.SubdomainNavBar-search-input-button:focus-visible {\n outline: var(--base-size-4) solid var(--brand-color-focus);\n outline-offset: var(--base-size-2);\n}\n\n.SubdomainNavBar-search-input-button:active {\n box-shadow: inset 0 0 0 var(--brand-borderWidth-thin) var(--brand-color-border-default);\n}\n\n.SubdomainNavBar-search-input-button-placeholder {\n display: inline-flex;\n align-items: center;\n gap: var(--base-size-8);\n min-width: 0;\n overflow: hidden;\n color: var(--brand-color-text-muted);\n font-size: var(--brand-text-size-100);\n font-weight: var(--base-text-weight-normal);\n line-height: 1.2;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n\n.SubdomainNavBar-search-input-button-placeholder svg {\n flex: none;\n}\n\n.SubdomainNavBar-search-input-button-placeholder span {\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.SubdomainNavBar-search-input-button-shortcut {\n flex: none;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n align-self: stretch;\n min-width: var(--base-size-24);\n padding-inline: var(--base-size-8);\n color: var(--brand-color-text-default);\n background-color: var(--brand-color-canvas-default);\n border: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n border-radius: calc(var(--brand-borderRadius-medium) / 2);\n font-family: var(--brand-fontStack-monospace);\n font-size: var(--brand-text-size-100);\n font-weight: var(--base-text-weight-normal);\n line-height: 1.6;\n}\n\n@media screen and (max-width: 47.99rem) {\n .SubdomainNavBar-search-trigger {\n flex: 0 0 var(--base-size-48);\n justify-content: center;\n width: var(--base-size-48);\n }\n\n .SubdomainNavBar-search-input-button {\n justify-content: center;\n gap: 0;\n width: var(--base-size-32);\n padding: var(--base-size-8);\n background-color: transparent;\n }\n\n .SubdomainNavBar-search-input-button-placeholder {\n gap: 0;\n }\n\n .SubdomainNavBar-search-input-button-placeholder span,\n .SubdomainNavBar-search-input-button-shortcut {\n display: none;\n }\n}\n\n.SubdomainNavBar-menu-button {\n display: inline-flex;\n align-items: center;\n align-self: center;\n}\n\n.SubdomainNavBar-menu-button-icon {\n display: inline-flex;\n flex-direction: column;\n gap: calc(var(--base-size-4) - var(--brand-borderWidth-thin));\n}\n\n.SubdomainNavBar-menu-button-label {\n display: none;\n}\n\n.SubdomainNavBar-menu-button-bar {\n width: 22px;\n height: 2px;\n background-color: var(--brand-color-text-default);\n margin: var(--base-size-4) auto;\n border-radius: var(--brand-borderRadius-large);\n display: block;\n}\n\n@media (prefers-reduced-motion: no-preference) {\n .SubdomainNavBar-menu-button-bar {\n transition-timing-function: var(--brand-animation-easing-default);\n transition-duration: 500ms;\n transition-property: opacity, transform;\n }\n}\n\n.SubdomainNavBar-menu-button-bar:nth-of-type(1) {\n transform-origin: bottom right;\n}\n\n.SubdomainNavBar-menu-button-bar:nth-of-type(3) {\n transform-origin: top right;\n}\n\n.SubdomainNavBar-menu-button--close .SubdomainNavBar-menu-button-bar:nth-of-type(1) {\n transform: rotate(-45deg) translateY(-3px);\n}\n\n.SubdomainNavBar-menu-button--close .SubdomainNavBar-menu-button-bar:nth-of-type(2) {\n opacity: 0;\n transform: scale(0);\n}\n\n.SubdomainNavBar-menu-button--close .SubdomainNavBar-menu-button-bar:nth-of-type(3) {\n transform: rotate(45deg) translateY(3px);\n}\n\n.SubdomainNavBar-mobile-menu-button.SubdomainNavBar-menu-button--close {\n position: relative;\n z-index: 3;\n background-color: var(--brand-color-canvas-muted);\n}\n\n.SubdomainNavBar-mobile-menu-button.SubdomainNavBar-menu-button--close:focus-visible {\n outline: none;\n box-shadow: none;\n transition: none;\n}\n\n.SubdomainNavBar-mobile-menu-button.SubdomainNavBar-menu-button--close:focus-visible::before {\n content: '';\n position: absolute;\n inset: 0;\n z-index: 2;\n pointer-events: none;\n border: var(--brand-borderWidth-thick) solid var(--brand-color-focus);\n}\n\n.SubdomainNavBar-mobile-menu-button.SubdomainNavBar-menu-button--close::after {\n content: '';\n position: absolute;\n z-index: 1;\n inset-inline: 0;\n inset-block-end: calc(var(--brand-borderWidth-thin) * -2);\n height: calc(var(--brand-borderWidth-thin) * 2);\n background-color: var(--brand-color-canvas-muted);\n}\n\n@media screen and (min-width: 63.25rem) {\n .SubdomainNavBar-menu-button:hover {\n background-color: transparent;\n border: var(--brand-borderWidth-thick) solid var(--brand-SubdomainNavBar-border-button-hover);\n }\n\n .SubdomainNavBar-menu-button:active {\n background-color: transparent;\n box-shadow: 0 0 0 1px var(--brand-SubdomainNavBar-border-button-hover);\n }\n\n .SubdomainNavBar-mobile-menu-button {\n display: none;\n }\n}\n\n@media screen and (min-width: 48rem) and (max-width: 63.24rem) {\n .SubdomainNavBar-primary-nav {\n display: none;\n }\n\n .SubdomainNavBar-secondary-nav {\n position: relative;\n flex: 0 0 auto;\n align-self: stretch;\n }\n\n .SubdomainNavBar-search-trigger {\n --SubdomainNavBar-tablet-search-width: calc(var(--base-size-128) * 2 + var(--base-size-2));\n\n flex: 0 0 var(--SubdomainNavBar-tablet-search-width);\n width: var(--SubdomainNavBar-tablet-search-width);\n padding-inline: var(--base-size-8);\n border-inline-start: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n }\n\n .SubdomainNavBar-search-input-button {\n width: 100%;\n }\n\n .SubdomainNavBar-mobile-menu-button {\n align-self: stretch;\n flex: none;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n gap: var(--base-size-8);\n width: max-content;\n min-width: calc(var(--base-size-64) + var(--base-size-32));\n height: 100%;\n padding-inline: var(--base-size-16);\n color: var(--brand-color-text-default);\n border: 0;\n border-inline-start: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n border-inline-end: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n border-radius: 0;\n overflow: visible;\n font-family: var(--brand-body-fontFamily);\n font-size: var(--brand-text-size-100);\n line-height: var(--brand-text-lineHeight-100);\n }\n\n .SubdomainNavBar-menu-button-label {\n display: inline-flex;\n align-items: center;\n white-space: nowrap;\n }\n\n .SubdomainNavBar-menu-button-icon {\n flex: none;\n align-items: stretch;\n justify-content: center;\n width: var(--base-size-16);\n height: var(--base-size-16);\n overflow: visible;\n }\n\n .SubdomainNavBar-menu-button-icon .SubdomainNavBar-menu-button-bar {\n width: var(--base-size-16);\n height: var(--base-size-2);\n margin: 0;\n transform-origin: center;\n }\n\n .SubdomainNavBar-menu-button--close .SubdomainNavBar-menu-button-bar:nth-of-type(1) {\n transform: translateY(calc(var(--base-size-6) - var(--brand-borderWidth-thin))) rotate(45deg);\n }\n\n .SubdomainNavBar-menu-button--close .SubdomainNavBar-menu-button-bar:nth-of-type(3) {\n transform: translateY(calc(var(--brand-borderWidth-thin) - var(--base-size-6))) rotate(-45deg);\n }\n\n .SubdomainNavBar-menu-wrapper {\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n overflow-y: auto;\n position: absolute;\n inset-inline: 0;\n top: var(--SubdomainNavBar-height);\n z-index: 2;\n box-sizing: border-box;\n width: 100%;\n max-height: calc(100vh - var(--SubdomainNavBar-height) - var(--SubdomainNavBar-menu-offset-block-start, 0px));\n background-color: var(--brand-color-canvas-default);\n border-inline: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n border-block-end: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n animation: fade-in-down var(--brand-animation-duration-default);\n animation-timing-function: var(--brand-animation-easing-default);\n }\n\n .SubdomainNavBar--variant-default .SubdomainNavBar-menu-wrapper {\n inset-inline-start: auto;\n min-width: calc(var(--base-size-128) * 3);\n }\n\n .SubdomainNavBar-menu-wrapper--close {\n display: none;\n }\n\n .SubdomainNavBar-primary-nav-list--visible {\n display: grid;\n gap: var(--brand-borderWidth-thin);\n margin: 0;\n padding: var(--base-size-8) var(--base-size-16);\n }\n\n .SubdomainNavBar-menu-wrapper-footer {\n flex: none;\n display: flex;\n flex-direction: column;\n width: 100%;\n }\n\n .SubdomainNavBar .SubdomainNavBar-menu-wrapper .SubdomainNavBar-link {\n box-sizing: border-box;\n width: 100%;\n min-height: var(--base-size-40);\n padding: var(--base-size-8) var(--base-size-12);\n color: var(--brand-color-text-muted);\n background-color: var(--brand-color-canvas-default);\n border-radius: var(--brand-borderRadius-medium);\n font-size: var(--brand-text-size-100);\n line-height: var(--brand-text-lineHeight-200);\n }\n\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item) {\n width: 100%;\n height: auto;\n }\n\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link {\n padding: var(--base-size-8) var(--base-size-12);\n }\n\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link\n > .SubdomainNavBar-link-content {\n width: 100%;\n padding: 0;\n background-color: transparent;\n border-radius: 0;\n }\n\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link:hover\n > .SubdomainNavBar-link-content,\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link:focus\n > .SubdomainNavBar-link-content,\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link:focus-visible\n > .SubdomainNavBar-link-content,\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link:active\n > .SubdomainNavBar-link-content,\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link[aria-current]:not([aria-current='false'])\n > .SubdomainNavBar-link-content {\n background-color: transparent;\n outline: none;\n }\n\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link:hover,\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link:focus,\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link:focus-visible,\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link:active,\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link[aria-current]:not([aria-current='false']) {\n color: var(--brand-color-text-default);\n background-color: var(--brand-color-canvas-subtle);\n }\n\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link:focus,\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link:focus-visible {\n box-shadow: inset 0 0 0 var(--brand-borderWidth-thick) var(--brand-color-focus);\n outline: none;\n }\n\n .SubdomainNavBar .SubdomainNavBar-menu-wrapper .SubdomainNavBar-link--title {\n font-size: var(--brand-text-size-100);\n line-height: var(--brand-text-lineHeight-200);\n }\n\n .SubdomainNavBar-menu-wrapper .SubdomainNavBar-leading-component,\n .SubdomainNavBar-menu-wrapper .SubdomainNavBar-trailing-component {\n box-sizing: border-box;\n flex: none;\n width: 100%;\n height: auto;\n margin-inline: 0;\n padding: var(--base-size-16);\n }\n\n .SubdomainNavBar .SubdomainNavBar-menu-wrapper .SubdomainNavBar-button-area {\n display: flex;\n width: 100%;\n height: auto;\n padding: 0;\n }\n\n .SubdomainNavBar-menu-wrapper .SubdomainNavBar-button-area-inner {\n box-sizing: border-box;\n flex-direction: column;\n width: 100%;\n margin-block: var(--base-size-24);\n padding-inline: var(--base-size-16);\n }\n}\n\n.SubdomainNavBar .SubdomainNavBar-menu-wrapper-footer--has-leading-item,\n.SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-leading-component\n + .SubdomainNavBar-primary-nav-list--visible,\n.SubdomainNavBar\n .SubdomainNavBar-menu-wrapper-footer\n .SubdomainNavBar-trailing-component\n + .SubdomainNavBar-button-area {\n border-block-start: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n}\n\n.SubdomainNavBar-button-area {\n display: inline-flex;\n gap: var(--base-size-16);\n align-items: center;\n min-width: 0;\n}\n\n.SubdomainNavBar-button-area-inner {\n display: flex;\n gap: var(--base-size-8);\n min-width: 0;\n}\n\n@media screen and (max-width: 48rem) {\n .SubdomainNavBar-button-area {\n display: none;\n }\n\n .SubdomainNavBar-button-area--visible {\n display: flex;\n left: 0;\n z-index: 99;\n width: 100%;\n height: auto;\n animation-name: fade-in-down-staggered;\n animation-duration: 500ms;\n animation-delay: calc(10 * 80ms);\n animation-fill-mode: both;\n animation-timing-function: var(--brand-animation-easing-default);\n }\n\n .SubdomainNavBar-inner-container--search-open .SubdomainNavBar-button-area--visible {\n display: none;\n }\n\n .SubdomainNavBar-button-area-inner {\n width: 100%;\n box-sizing: border-box;\n flex-direction: column;\n margin-block: var(--base-size-24);\n padding-inline: var(--base-size-24);\n min-width: 0;\n }\n}\n\n.SubdomainNavBar-cta-button {\n white-space: nowrap;\n}\n\n.SubdomainNavBar .SubdomainNavBar-menu-wrapper {\n top: var(--SubdomainNavBar-height);\n height: auto;\n max-height: calc(100vh - var(--SubdomainNavBar-height) - var(--SubdomainNavBar-menu-offset-block-start, 0px));\n}\n\n.SubdomainNavBar-menu-backdrop {\n position: fixed;\n inset-block-start: calc(var(--SubdomainNavBar-height) + var(--SubdomainNavBar-menu-offset-block-start, 0px));\n inset-block-end: 0;\n inset-inline: 0;\n z-index: 1;\n background-color: var(--brand-SubdomainNavBar-searchDialog-backdropColor);\n animation: fade-in var(--brand-animation-duration-fast) var(--brand-animation-easing-glide);\n}\n\n.SubdomainNavBar .SubdomainNavBar-inner-container--search-open {\n animation: none;\n}\n\n@media screen and (max-width: 47.99rem) {\n .SubdomainNavBar {\n --SubdomainNavBar-mobile-control-size: var(--base-size-48);\n }\n\n .SubdomainNavBar .SubdomainNavBar-inner-container {\n height: 100%;\n padding: 0;\n }\n\n .SubdomainNavBar .SubdomainNavBar-title-area {\n height: 100%;\n max-width: none;\n gap: 0;\n padding: 0;\n }\n\n .SubdomainNavBar .SubdomainNavBar-title-area > li {\n display: flex;\n align-items: center;\n height: 100%;\n padding-inline: 0 var(--base-size-16);\n }\n\n .SubdomainNavBar .SubdomainNavBar-title-area > li:first-child {\n justify-content: center;\n width: auto;\n padding-inline: var(--base-size-16) var(--base-size-8);\n }\n\n .SubdomainNavBar .SubdomainNavBar-logo-mark {\n justify-content: center;\n }\n\n .SubdomainNavBar .SubdomainNavBar-logo-mark svg {\n width: var(--base-size-24);\n height: var(--base-size-24);\n }\n\n .SubdomainNavBar .SubdomainNavBar-title {\n padding-inline-end: 0;\n }\n\n .SubdomainNavBar .SubdomainNavBar-title > * {\n font-size: var(--brand-text-size-100);\n line-height: var(--brand-text-lineHeight-100);\n }\n\n .SubdomainNavBar .SubdomainNavBar-secondary-nav {\n height: 100%;\n }\n\n .SubdomainNavBar .SubdomainNavBar-search-trigger {\n flex: 0 0 var(--SubdomainNavBar-mobile-control-size);\n justify-content: center;\n width: var(--SubdomainNavBar-mobile-control-size);\n height: 100%;\n padding-inline: 0;\n border-inline-start: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n }\n\n .SubdomainNavBar .SubdomainNavBar-search-input-button,\n .SubdomainNavBar .SubdomainNavBar-mobile-menu-button {\n box-sizing: border-box;\n display: inline-flex;\n flex: 0 0 var(--SubdomainNavBar-mobile-control-size);\n width: var(--SubdomainNavBar-mobile-control-size);\n flex-direction: column;\n height: 100%;\n padding-inline: var(--base-size-16);\n border-radius: 0;\n }\n\n .SubdomainNavBar .SubdomainNavBar-mobile-menu-button {\n gap: calc(var(--base-size-4) - var(--brand-borderWidth-thin));\n border-inline-start: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n }\n\n .SubdomainNavBar .SubdomainNavBar-menu-button-bar {\n width: var(--base-size-16);\n height: var(--base-size-2);\n margin: 0 auto;\n transform-origin: center;\n }\n\n .SubdomainNavBar .SubdomainNavBar-menu-button--close .SubdomainNavBar-menu-button-bar:nth-of-type(1) {\n transform: translateY(calc(var(--base-size-6) - var(--brand-borderWidth-thin))) rotate(45deg);\n }\n\n .SubdomainNavBar .SubdomainNavBar-menu-button--close .SubdomainNavBar-menu-button-bar:nth-of-type(3) {\n transform: translateY(calc(var(--brand-borderWidth-thin) - var(--base-size-6))) rotate(-45deg);\n }\n\n .SubdomainNavBar .SubdomainNavBar-menu-wrapper .SubdomainNavBar-link {\n padding: var(--base-size-16);\n font-size: var(--brand-text-size-100);\n line-height: var(--brand-text-lineHeight-100);\n }\n\n .SubdomainNavBar .SubdomainNavBar-menu-wrapper .SubdomainNavBar-link--title {\n font-size: var(--brand-text-size-100);\n line-height: var(--brand-text-lineHeight-100);\n }\n\n .SubdomainNavBar .SubdomainNavBar-menu-wrapper .SubdomainNavBar-button-area-inner {\n padding-inline: var(--base-size-16);\n }\n}\n\n@media screen and (min-width: 48rem) {\n .SubdomainNavBar .SubdomainNavBar-inner-container {\n height: 100%;\n max-width: none;\n padding: 0;\n }\n\n .SubdomainNavBar .SubdomainNavBar-title-area {\n height: 100%;\n max-width: none;\n gap: 0;\n padding: 0;\n }\n\n .SubdomainNavBar .SubdomainNavBar-title-area > li {\n display: flex;\n align-items: center;\n height: 100%;\n padding-inline: 0 var(--base-size-16);\n border-inline-end: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n }\n\n .SubdomainNavBar .SubdomainNavBar-title-area > li:first-child {\n justify-content: center;\n width: auto;\n padding-inline: var(--base-size-16) var(--base-size-8);\n border-inline-end: 0;\n }\n\n .SubdomainNavBar .SubdomainNavBar-logo-mark {\n justify-content: center;\n }\n\n .SubdomainNavBar .SubdomainNavBar-logo-mark svg {\n width: var(--base-size-24);\n height: var(--base-size-24);\n }\n\n .SubdomainNavBar .SubdomainNavBar-title {\n padding-inline-end: 0;\n }\n\n .SubdomainNavBar .SubdomainNavBar-title > * {\n font-size: var(--base-size-16);\n line-height: var(--base-size-16);\n }\n\n .SubdomainNavBar .SubdomainNavBar-primary-nav,\n .SubdomainNavBar .SubdomainNavBar-primary-nav-overflow,\n .SubdomainNavBar .SubdomainNavBar-primary-nav-list,\n .SubdomainNavBar .SubdomainNavBar-secondary-nav,\n .SubdomainNavBar .SubdomainNavBar-button-area,\n .SubdomainNavBar .SubdomainNavBar-leading-component,\n .SubdomainNavBar .SubdomainNavBar-trailing-component {\n height: 100%;\n }\n\n .SubdomainNavBar .SubdomainNavBar-leading-component,\n .SubdomainNavBar .SubdomainNavBar-trailing-component {\n padding-inline: var(--base-size-16);\n margin-inline: 0;\n }\n\n .SubdomainNavBar .SubdomainNavBar-leading-component {\n border-inline: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n }\n\n .SubdomainNavBar .SubdomainNavBar-primary-nav-list {\n align-items: stretch;\n margin: 0;\n block-size: 100%;\n max-block-size: 100%;\n padding-inline-start: var(--base-size-16);\n }\n\n .SubdomainNavBar .SubdomainNavBar-primary-nav-overflow {\n margin: 0;\n }\n\n .SubdomainNavBar .SubdomainNavBar-primary-nav-list-item {\n display: flex;\n align-items: center;\n height: 100%;\n }\n\n .SubdomainNavBar .SubdomainNavBar-link {\n align-items: center;\n height: 100%;\n padding: 0 var(--base-size-16);\n color: var(--brand-color-text-muted);\n font-size: var(--brand-text-size-100);\n line-height: var(--brand-text-lineHeight-200);\n }\n\n .SubdomainNavBar\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link,\n .SubdomainNavBar .SubdomainNavBar-more-link {\n padding-inline: var(--base-size-4);\n }\n\n .SubdomainNavBar\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link\n > .SubdomainNavBar-link-content,\n .SubdomainNavBar .SubdomainNavBar-more-link > .SubdomainNavBar-link-content {\n gap: var(--base-size-4);\n padding: var(--base-size-4) var(--base-size-12);\n background-color: transparent;\n border-radius: var(--brand-borderRadius-full);\n }\n\n .SubdomainNavBar\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link:hover\n > .SubdomainNavBar-link-content,\n .SubdomainNavBar\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link:active\n > .SubdomainNavBar-link-content,\n .SubdomainNavBar\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link[aria-current]:not([aria-current='false'])\n > .SubdomainNavBar-link-content,\n .SubdomainNavBar .SubdomainNavBar-more-link:hover > .SubdomainNavBar-link-content,\n .SubdomainNavBar .SubdomainNavBar-more-link:active > .SubdomainNavBar-link-content,\n .SubdomainNavBar .SubdomainNavBar-more-link[aria-expanded='true'] > .SubdomainNavBar-link-content {\n background-color: var(--brand-SubdomainNavBar-color-link-bgColor);\n }\n\n .SubdomainNavBar\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link:focus-visible,\n .SubdomainNavBar .SubdomainNavBar-more-link:focus-visible {\n outline: none;\n }\n\n .SubdomainNavBar\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link:focus-visible\n > .SubdomainNavBar-link-content,\n .SubdomainNavBar .SubdomainNavBar-more-link:focus-visible > .SubdomainNavBar-link-content {\n outline: var(--brand-borderWidth-thick) solid var(--brand-color-focus);\n outline-offset: var(--base-size-2);\n }\n\n .SubdomainNavBar .SubdomainNavBar-link-text::after {\n display: none;\n }\n\n .SubdomainNavBar .SubdomainNavBar-overflow-menu {\n animation: fade-in-down-overflow var(--brand-animation-duration-faster);\n animation-timing-function: var(--brand-animation-easing-default);\n border: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n border-start-start-radius: 0;\n border-start-end-radius: 0;\n border-end-start-radius: var(--brand-borderRadius-medium);\n border-end-end-radius: var(--brand-borderRadius-medium);\n box-shadow: none;\n min-width: calc(var(--base-size-128) + var(--base-size-32));\n transform: translateY(calc(0px - var(--base-size-4)));\n }\n\n .SubdomainNavBar .SubdomainNavBar-overflow-menu-list {\n gap: var(--brand-borderWidth-thin);\n padding: var(--base-size-8);\n width: 100%;\n }\n\n .SubdomainNavBar .SubdomainNavBar-overflow-menu-item .SubdomainNavBar-link {\n width: 100%;\n min-height: var(--base-size-40);\n padding: var(--base-size-8) var(--base-size-12);\n color: var(--brand-color-text-muted);\n background-color: var(--brand-color-canvas-default);\n border-radius: var(--brand-borderRadius-medium);\n font-size: var(--brand-text-size-100);\n line-height: var(--brand-text-lineHeight-200);\n }\n\n .SubdomainNavBar .SubdomainNavBar-overflow-menu-item .SubdomainNavBar-link:hover,\n .SubdomainNavBar .SubdomainNavBar-overflow-menu-item .SubdomainNavBar-link:focus,\n .SubdomainNavBar .SubdomainNavBar-overflow-menu-item .SubdomainNavBar-link:focus-visible {\n color: var(--brand-color-text-default);\n background-color: var(--brand-color-canvas-subtle);\n }\n\n @media (prefers-reduced-motion: no-preference) {\n .SubdomainNavBar\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link\n > .SubdomainNavBar-link-content,\n .SubdomainNavBar .SubdomainNavBar-more-link > .SubdomainNavBar-link-content {\n transition: background-color var(--brand-animation-duration-fast) var(--brand-animation-easing-default);\n }\n }\n\n .SubdomainNavBar .SubdomainNavBar-search-trigger {\n height: 100%;\n padding-inline: var(--base-size-16);\n }\n\n .SubdomainNavBar .SubdomainNavBar-search-trigger--has-trailing-item {\n border-inline-end: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n }\n\n .SubdomainNavBar .SubdomainNavBar-button-area {\n align-items: center;\n padding-inline: var(--base-size-16);\n }\n\n .SubdomainNavBar .SubdomainNavBar-button-area--has-leading-item {\n border-inline-start: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n }\n}\n\n@media screen and (min-width: 63.25rem) {\n .SubdomainNavBar .SubdomainNavBar-search-trigger {\n --SubdomainNavBar-search-input-width: clamp(\n calc(var(--base-size-128) + var(--base-size-32)),\n 28.5vw,\n calc(var(--base-size-128) * 3 + var(--base-size-36))\n );\n\n align-self: stretch;\n }\n\n .SubdomainNavBar--variant-default.SubdomainNavBar--has-primary-nav {\n border-block-end: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n height: calc(var(--SubdomainNavBar-height) + var(--base-size-48));\n }\n\n .SubdomainNavBar--variant-default::after {\n inset-block-start: var(--SubdomainNavBar-height);\n }\n\n .SubdomainNavBar--variant-default .SubdomainNavBar-inner-container {\n display: grid;\n grid-template-columns: auto minmax(0, 1fr) auto;\n grid-template-rows: var(--SubdomainNavBar-height);\n }\n\n .SubdomainNavBar--variant-default.SubdomainNavBar--has-primary-nav .SubdomainNavBar-inner-container {\n grid-template-rows: var(--SubdomainNavBar-height) var(--base-size-48);\n }\n\n .SubdomainNavBar--variant-default .SubdomainNavBar-title-navigation {\n grid-column: 1;\n grid-row: 1;\n min-width: 0;\n }\n\n .SubdomainNavBar--variant-default .SubdomainNavBar-primary-nav {\n grid-column: 1 / -1;\n grid-row: 2;\n min-width: 0;\n border-block-start: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n }\n\n .SubdomainNavBar--variant-default .SubdomainNavBar-primary-nav-list {\n padding-inline-start: calc(var(--base-size-64) + var(--brand-borderWidth-thin));\n }\n\n .SubdomainNavBar--variant-default .SubdomainNavBar-inner-container > .SubdomainNavBar-leading-component {\n grid-column: 2;\n grid-row: 1;\n justify-self: start;\n border-inline-start: 0;\n }\n\n .SubdomainNavBar--variant-default .SubdomainNavBar-inner-container > .SubdomainNavBar-secondary-nav {\n grid-column: 3;\n grid-row: 1;\n }\n\n .SubdomainNavBar--variant-default .SubdomainNavBar-search-trigger {\n border-inline-start: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n }\n}\n\n.SubdomainNavBar--variant-default .SubdomainNavBar-search-input-button {\n justify-content: center;\n gap: 0;\n width: var(--base-size-32);\n padding: var(--base-size-8);\n background-color: transparent;\n}\n\n.SubdomainNavBar--variant-default .SubdomainNavBar-search-input-button-placeholder {\n gap: 0;\n}\n\n.SubdomainNavBar--variant-default .SubdomainNavBar-search-input-button-placeholder-text,\n.SubdomainNavBar--variant-default .SubdomainNavBar-search-input-button-shortcut {\n display: none;\n}\n\n@media screen and (min-width: 48rem) {\n .SubdomainNavBar--variant-default .SubdomainNavBar-search-trigger {\n flex: 0 0 var(--base-size-48);\n width: var(--base-size-48);\n min-width: var(--base-size-48);\n }\n\n .SubdomainNavBar--variant-default .SubdomainNavBar-search-trigger {\n padding-inline: 0;\n }\n\n .SubdomainNavBar--variant-default .SubdomainNavBar-search-input-button {\n width: 100%;\n block-size: 100%;\n padding-inline: var(--base-size-16);\n }\n}\n\n@media screen and (min-width: 1024px) {\n .SubdomainNavBar-cta-button--secondary {\n display: inline-flex;\n }\n}\n\n/*\n * Search dialog control area\n */\n.SubdomainNavBar-search-form {\n display: flex;\n width: 100%;\n}\n\n.SubdomainNavBar-search-input-area {\n display: flex;\n align-items: center;\n gap: var(--base-size-8);\n width: 100%;\n}\n\n.SubdomainNavBar-search-close-button {\n cursor: pointer;\n appearance: none;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex: none;\n min-block-size: var(--base-size-32);\n padding: var(--base-size-8) var(--base-size-12);\n color: var(--brand-color-text-default);\n background-color: var(--brand-color-canvas-subtle);\n border: 0;\n border-radius: var(--brand-borderRadius-medium);\n font-family: var(--brand-body-fontFamily);\n font-size: var(--brand-text-size-100);\n font-weight: var(--base-text-weight-medium);\n line-height: var(--base-size-14);\n letter-spacing: var(--brand-text-letterSpacing-100);\n}\n\n.SubdomainNavBar-search-close-button:hover {\n background-color: var(--brand-color-canvas-inset);\n}\n\n.SubdomainNavBar-search-close-button:focus-visible {\n outline: var(--base-size-4) solid var(--brand-color-focus);\n outline-offset: var(--base-size-2);\n}\n\n.SubdomainNavBar-search-dialog-control-area {\n height: var(--base-size-40);\n max-width: none;\n padding: 0;\n margin: 0;\n display: flex;\n align-items: center;\n background: transparent;\n}\n\n.SubdomainNavBar-search-text-input {\n border-color: transparent;\n}\n\n.SubdomainNavBar-search-results-area {\n width: 100%;\n}\n\n.SubdomainNavBar-search-results-container {\n animation: fade-in-down 500ms;\n padding: var(--base-size-24);\n background-color: var(--base-color-scale-white-0);\n border-radius: var(--brand-borderRadius-large);\n box-shadow: 0px 8px 24px rgba(1, 4, 9, 0.15);\n max-height: 514px;\n height: 70vh;\n max-width: 570px;\n margin: 0 auto;\n width: 80%;\n}\n\n.SubdomainNavBar-search-results {\n overflow-y: scroll;\n list-style: none;\n padding: 0 var(--base-size-24) 0 0;\n margin: 0;\n height: 90%;\n}\n\n.SubdomainNavBar-search-results-heading {\n display: block;\n font-weight: var(--brand-heading-weight-600);\n font-size: var(--base-size-20);\n line-height: var(--base-size-24);\n margin-bottom: var(--base-size-20);\n padding: 0 var(--base-size-8);\n color: var(--base-color-scale-black-0);\n}\n\n.SubdomainNavBar-search-result-group,\n.SubdomainNavBar-search-result-group-list {\n list-style: none;\n padding: 0;\n margin: 0;\n}\n\n.SubdomainNavBar-search-result-group + .SubdomainNavBar-search-result-group {\n margin-block-start: var(--base-size-24);\n}\n\n.SubdomainNavBar-search-result-group-heading {\n display: block;\n margin: 0 0 var(--base-size-20);\n padding: 0 var(--base-size-8);\n color: var(--brand-color-text-muted);\n font-weight: var(--brand-heading-weight-600);\n font-size: var(--brand-text-size-100);\n line-height: var(--brand-text-lineHeight-100);\n}\n\n.SubdomainNavBar-search-result-item {\n padding: var(--base-size-16) var(--base-size-8);\n border-bottom: solid var(--brand-borderWidth-thin, 1px)\n var(--brand-SubdomainNavBar-search-results-border-default, #b7bfc7);\n}\n\n.SubdomainNavBar-search-result-item-container a[aria-selected='true'] {\n outline: var(--brand-color-focus) auto var(--brand-borderWidth-thick);\n}\n\n.SubdomainNavBar-search-result-item-container {\n letter-spacing: var(--brand-heading-letterSpacing-400);\n font-size: var(--brand-text-size-400);\n}\n\n.SubdomainNavBar-search-result-item-container a {\n display: block;\n color: var(--base-color-scale-black-0);\n text-decoration: none;\n margin: 0 0 var(--base-size-12);\n font-size: var(--base-size-16);\n font-weight: var(--brand-heading-weight-400);\n font-family: var(--brand-heading-fontFamily);\n line-height: var(--brand-text-lineHeight-400);\n}\n\n.SubdomainNavBar-search-result-item-container a svg {\n flex: none;\n}\n\n.SubdomainNavBar-search-result-item-container a:hover {\n text-decoration: none;\n}\n\n.SubdomainNavBar-search-result-item-desc {\n color: var(--base-color-scale-black-0);\n}\n\n.SubdomainNavBar-search-dialog {\n position: fixed;\n inset-block-start: calc(var(--base-size-64) + var(--base-size-8));\n inset-block-end: auto;\n inset-inline: calc(var(--base-size-64) + var(--base-size-8));\n z-index: 99;\n width: min(\n calc(100vw - ((var(--base-size-64) + var(--base-size-8)) * 2)),\n calc((var(--base-size-128) * 6) + var(--base-size-36))\n );\n max-height: calc(100vh - ((var(--base-size-64) + var(--base-size-8)) * 2));\n height: auto;\n margin-inline: auto;\n padding: var(--base-size-16);\n overflow: hidden;\n color: var(--brand-color-text-default);\n background-color: var(--brand-color-canvas-default);\n border: var(--brand-borderWidth-thin) solid var(--brand-color-border-default);\n border-radius: var(--brand-borderRadius-large);\n box-shadow: 0 0 calc(var(--base-size-32) + var(--base-size-2)) var(--brand-SubdomainNavBar-searchDialog-shadowColor);\n}\n\n.SubdomainNavBar-search-dialog--has-results {\n padding-block-end: var(--base-size-32);\n}\n\n.SubdomainNavBar-search-dialog::backdrop {\n background-color: var(--brand-SubdomainNavBar-searchDialog-backdropColor);\n -webkit-backdrop-filter: blur(var(--base-size-24));\n backdrop-filter: blur(var(--base-size-24));\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-input-area {\n gap: var(--base-size-16);\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-form {\n min-width: 0;\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-form section > span:focus-within {\n border-color: transparent;\n box-shadow: none;\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-text-input {\n color: var(--brand-color-text-default);\n font-size: calc(var(--base-size-16) + var(--base-size-2));\n font-weight: var(--base-text-weight-medium);\n line-height: var(--brand-text-lineHeight-300);\n letter-spacing: var(--brand-text-letterSpacing-100);\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-close-button {\n background-color: var(--brand-color-border-muted);\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-results-area--visible {\n margin-block-start: var(--base-size-24);\n padding-block-start: var(--base-size-24);\n border-block-start: var(--brand-borderWidth-thin) dashed var(--brand-color-border-muted);\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-results-container {\n width: 100%;\n height: auto;\n max-width: none;\n max-height: calc(100vh - (((var(--base-size-64) + var(--base-size-8)) * 2) + var(--base-size-128)));\n padding: 0;\n margin: 0;\n overflow-y: auto;\n background-color: transparent;\n border-radius: 0;\n box-shadow: none;\n animation: none;\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-results {\n height: auto;\n padding: 0;\n margin: 0;\n overflow: visible;\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-results-heading,\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-result-group-heading {\n margin-block-end: var(--base-size-20);\n padding: 0;\n color: var(--brand-color-text-muted);\n font-size: var(--brand-text-size-100);\n font-weight: var(--brand-heading-weight-600);\n line-height: var(--brand-text-lineHeight-100);\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-result-group + .SubdomainNavBar-search-result-group {\n margin-block-start: var(--base-size-24);\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-result-item {\n padding: var(--base-size-16) var(--base-size-4);\n border-block-end: 0;\n border-block-start: var(--brand-borderWidth-thin) dashed var(--brand-color-border-muted);\n}\n\n.SubdomainNavBar-search-dialog\n .SubdomainNavBar-search-result-group-list\n > .SubdomainNavBar-search-result-item:first-child,\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-results > .SubdomainNavBar-search-result-item:first-child {\n padding-block-start: var(--base-size-12);\n border-block-start: 0;\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-result-item-container {\n font-size: var(--brand-text-size-300);\n letter-spacing: var(--brand-text-letterSpacing-100);\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-result-item-container a {\n display: flex;\n align-items: center;\n gap: calc(var(--base-size-8) + var(--base-size-2));\n width: 100%;\n margin: 0;\n color: var(--brand-color-text-default);\n font-size: var(--brand-text-size-300);\n font-weight: var(--brand-heading-weight-600);\n line-height: var(--brand-text-lineHeight-300);\n letter-spacing: var(--brand-text-letterSpacing-100);\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-result-item-container a span {\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-result-item-desc,\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-result-item-meta {\n display: none;\n}\n\n@media screen and (max-width: 47.99rem) {\n .SubdomainNavBar-search-dialog {\n inset-block-start: var(--base-size-16);\n inset-block-end: auto;\n inset-inline: var(--base-size-16);\n width: calc(100vw - (var(--base-size-16) * 2));\n max-height: calc(100vh - (var(--base-size-16) * 2));\n height: auto;\n }\n}\n\n.SubdomainNavBar-skip-to-content {\n position: absolute;\n inset-block-start: calc(var(--SubdomainNavBar-height) / 2);\n inset-inline-start: var(--base-size-16);\n z-index: 100;\n transform: translateY(-50%);\n}\n\n/*\n * Reusable animations\n */\n@keyframes fade-in-down {\n 0% {\n opacity: 0;\n transform: translateY(-20px);\n }\n 100% {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n@keyframes fade-in {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n}\n\n@keyframes fade-in-down-overflow {\n 0% {\n opacity: 0;\n transform: translateY(calc(0px - var(--base-size-24)));\n }\n 100% {\n opacity: 1;\n transform: translateY(calc(0px - var(--base-size-4)));\n }\n}\n\n@keyframes fade-out {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n }\n}\n\n@keyframes enlarge-shadow {\n 0% {\n scale: 0.98;\n box-shadow: 0px 8px 0 rgba(1, 4, 9, 0.15);\n }\n 100% {\n scale: 1;\n box-shadow: 0px 8px 24px rgba(1, 4, 9, 0.15);\n }\n}\n\n@keyframes fade-in-down-staggered {\n 0% {\n opacity: 0;\n transform: scale(0.6) translateY(-8px);\n }\n\n 100% {\n opacity: 1;\n }\n}\n\n/* Remove all animations, transitions and smooth scroll for people that prefer not to see them */\n@media (prefers-reduced-motion: reduce) {\n .SubdomainNavBar,\n .SubdomainNavBar::before,\n .SubdomainNavBar::after,\n .SubdomainNavBar * {\n animation: none !important;\n transition: none !important;\n scroll-behavior: auto !important;\n }\n}\n"],"mappings":""}
1
+ {"version":3,"file":"SubdomainNavBar.module.js","names":[],"sources":["../../src/SubdomainNavBar/SubdomainNavBar.module.css"],"sourcesContent":["/*\n * Main styles for the subdomain navigation bar.\n */\n.SubdomainNavBar {\n position: relative;\n z-index: 90;\n font-weight: 550;\n background: var(--brand-color-canvas-default);\n height: var(--SubdomainNavBar-height);\n}\n\n.SubdomainNavBar::after {\n content: '';\n position: absolute;\n z-index: 3;\n inset-inline: 0;\n inset-block-start: 100%;\n height: var(--brand-borderWidth-thin);\n background-color: var(--brand-SubdomainNavBar-border-nav-default);\n pointer-events: none;\n}\n\n/*\n * Outer container\n */\n.SubdomainNavBar-outer-container {\n --SubdomainNavBar-height: var(--base-size-64);\n\n z-index: 90;\n}\n\n@media screen and (max-width: 47.99rem) {\n .SubdomainNavBar-outer-container {\n --SubdomainNavBar-height: calc(var(--base-size-64) - var(--base-size-8));\n }\n}\n\n.SubdomainNavBar-outer-container:not(.SubdomainNavBar-outer-container--fixed) {\n position: relative;\n}\n\n.SubdomainNavBar-outer-container--fixed {\n position: fixed;\n top: 0;\n right: 0;\n left: 0;\n}\n\n/*\n * Inner container\n */\n.SubdomainNavBar-inner-container {\n display: flex;\n padding: 4px 28px;\n}\n\n.SubdomainNavBar-inner-container--centered {\n max-width: 1280px;\n margin: 0 auto;\n}\n\n@media screen and (min-width: 48rem) {\n .SubdomainNavBar-inner-container {\n padding: 4px 32px;\n }\n}\n\n.SubdomainNavBar-inner-container--search-open {\n animation: fade-out 150ms;\n}\n\n/*\n * Logo and title area\n */\n.SubdomainNavBar-title-area {\n display: inline-flex;\n list-style-type: none;\n align-items: center;\n gap: var(--base-size-8);\n padding: 0;\n margin: 0;\n max-width: 340px;\n color: var(--brand-color-text-default);\n padding: var(--base-size-16) 0;\n}\n\n@media screen and (min-width: 63.25rem) {\n .SubdomainNavBar-title-area {\n gap: var(--base-size-16);\n }\n}\n\n.SubdomainNavBar-logo-mark,\n.SubdomainNavBar-title {\n display: inline-flex;\n align-items: center;\n color: var(--brand-color-text-default);\n}\n\n.SubdomainNavBar-logo-mark {\n position: relative;\n}\n\n.SubdomainNavBar-back-arrow {\n position: absolute;\n display: flex;\n inset-inline-start: calc(-1 * var(--base-size-24) + var(--base-size-4));\n inset-block-start: 50%;\n color: var(--brand-color-text-muted);\n opacity: 0;\n transform: translate(var(--base-size-4), -50%);\n transition: opacity var(--brand-animation-duration-fast), transform var(--brand-animation-duration-fast) ease;\n}\n\n.SubdomainNavBar-logo-mark:hover .SubdomainNavBar-back-arrow {\n opacity: 1;\n transform: translate(0, -50%);\n}\n\n.SubdomainNavBar-logo-mark svg {\n width: 32px;\n height: 32px;\n}\n\n.SubdomainNavBar-title {\n line-height: var(--base-size-32);\n text-decoration: none;\n padding-inline-end: var(--base-size-16);\n white-space: nowrap;\n}\n\n.SubdomainNavBar-title:hover {\n text-decoration: none;\n}\n\n.SubdomainNavBar--variant-featured .SubdomainNavBar-title-prefix {\n color: var(--brand-color-text-default);\n}\n\n.SubdomainNavBar-title-label {\n color: inherit;\n}\n\n.SubdomainNavBar--variant-default.SubdomainNavBar--has-title .SubdomainNavBar-title-area > li:first-child {\n display: flex;\n align-items: center;\n align-self: stretch;\n}\n\n.SubdomainNavBar--variant-default.SubdomainNavBar--has-title .SubdomainNavBar-title-area > li:first-child::after {\n content: '';\n box-sizing: border-box;\n align-self: center;\n flex: none;\n width: var(--brand-borderWidth-thin);\n height: var(--SubdomainNavBar-height);\n margin-inline: var(--base-size-16);\n background-color: var(--brand-color-border-muted);\n}\n\n.SubdomainNavBar-leading-component,\n.SubdomainNavBar-trailing-component {\n display: inline-flex;\n align-items: center;\n min-width: 0;\n}\n\n.SubdomainNavBar-leading-component {\n margin-inline-end: var(--base-size-16);\n}\n\n.SubdomainNavBar-trailing-component {\n margin-inline-start: var(--base-size-16);\n}\n\n/*\n * Primary navigation link area\n */\n.SubdomainNavBar-primary-nav {\n display: inline-flex;\n list-style-type: none;\n align-items: center;\n flex: 1 1 0;\n min-width: 0;\n padding: 0;\n margin: 0;\n}\n\n.SubdomainNavBar-primary-nav-list {\n list-style-type: none;\n}\n\n@media screen and (max-width: 767px) {\n .SubdomainNavBar-primary-nav-list {\n display: none;\n }\n\n .SubdomainNavBar-primary-nav-list--invisible {\n display: none;\n }\n\n .SubdomainNavBar-primary-nav-list--visible {\n display: block;\n margin: 0;\n padding: 0;\n }\n\n .SubdomainNavBar-leading-component,\n .SubdomainNavBar-trailing-component {\n flex: none;\n width: 100%;\n box-sizing: border-box;\n padding-block: var(--base-size-16);\n padding-inline: var(--base-size-16);\n }\n\n .SubdomainNavBar-leading-component {\n margin-inline-end: 0;\n }\n\n .SubdomainNavBar-trailing-component {\n margin-inline-start: 0;\n }\n\n .SubdomainNavBar-menu-wrapper {\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n overflow-y: auto;\n position: absolute;\n top: var(--SubdomainNavBar-height);\n left: 0;\n right: 0;\n z-index: 2;\n background-color: var(--brand-color-canvas-default);\n width: 100%;\n max-height: calc(100vh - var(--SubdomainNavBar-height) - var(--SubdomainNavBar-menu-offset-block-start, 0px));\n border-block-end: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n animation: fade-in-down 500ms;\n animation-timing-function: var(--brand-animation-easing-default);\n }\n\n .SubdomainNavBar-menu-wrapper--close {\n display: none;\n }\n\n .SubdomainNavBar-menu-wrapper-footer {\n flex: none;\n display: flex;\n flex-direction: column;\n width: 100%;\n }\n}\n\n@media screen and (min-width: 48rem) {\n .SubdomainNavBar-primary-nav-overflow {\n display: flex;\n align-items: center;\n flex: 1 1 0;\n min-width: 0;\n margin: 0 var(--base-size-24) 0 0;\n }\n\n .SubdomainNavBar-primary-nav-list {\n display: flex;\n align-items: center;\n flex: 1 1 auto;\n flex-wrap: nowrap;\n min-width: 0;\n block-size: var(--base-size-48);\n max-block-size: var(--base-size-48);\n overflow: hidden;\n padding: 0;\n margin: 0;\n }\n}\n\n.SubdomainNavBar-primary-nav-list-item {\n flex: 0 0 auto;\n white-space: nowrap;\n}\n\n@media screen and (max-width: 767px) {\n .SubdomainNavBar-primary-nav-list-item {\n animation-name: fade-in-down-staggered;\n animation-duration: 500ms;\n animation-delay: calc(var(--animation-order) * 80ms);\n animation-fill-mode: both;\n animation-timing-function: var(--brand-animation-easing-default);\n }\n}\n\n@media screen and (min-width: 48rem) {\n .SubdomainNavBar-primary-nav-list-item--overflowed {\n visibility: hidden;\n pointer-events: none;\n }\n\n .SubdomainNavBar-primary-nav-list-item--overflow {\n display: flex;\n align-items: center;\n flex: 0 0 auto;\n position: absolute;\n inset-inline-end: 0;\n visibility: hidden;\n pointer-events: none;\n }\n\n .SubdomainNavBar-primary-nav-overflow--has-overflow .SubdomainNavBar-primary-nav-list-item--overflow {\n position: relative;\n visibility: visible;\n pointer-events: auto;\n }\n}\n\n.SubdomainNavBar-link {\n position: relative;\n display: flex;\n flex-direction: row;\n align-items: center;\n gap: var(--base-size-8);\n color: var(--brand-color-text-default);\n font-family: var(--brand-heading-fontFamily);\n font-weight: var(--base-text-weight-normal);\n font-size: var(--base-size-20);\n line-height: var(--base-size-20);\n padding: var(--base-size-8) var(--base-size-16) var(--base-size-16) var(--base-size-28);\n text-decoration: none;\n}\n\n.SubdomainNavBar-link:hover {\n text-decoration: none;\n}\n\n.SubdomainNavBar-link-text {\n position: relative;\n}\n\n.SubdomainNavBar-link-content {\n display: inline-flex;\n align-items: center;\n gap: var(--base-size-8);\n}\n\n@media screen and (max-width: 767px) {\n .SubdomainNavBar-link:first-of-type {\n padding-top: var(--base-size-24);\n }\n\n .SubdomainNavBar-link--title {\n font-weight: var(--base-text-weight-medium);\n }\n}\n\n@media screen and (min-width: 48rem) {\n .SubdomainNavBar-link {\n font-family: var(--brand-heading-fontFamily);\n font-weight: var(--base-text-weight-normal);\n font-size: var(--base-size-16);\n line-height: var(--base-size-16);\n padding: var(--base-size-16) var(--base-size-16);\n }\n\n .SubdomainNavBar-link-text::after {\n content: '';\n position: absolute;\n bottom: -6px;\n left: 0;\n width: 100%;\n height: 2px;\n background-color: var(--brand-SubdomainNavBar-border-nav-default);\n opacity: 0;\n transition: opacity var(--brand-animation-duration-fast), transform var(--brand-animation-duration-fast);\n transform: scale(0);\n transform-origin: center;\n }\n\n .SubdomainNavBar-link:hover .SubdomainNavBar-link-text::after,\n .SubdomainNavBar-link:focus .SubdomainNavBar-link-text::after {\n opacity: 1;\n transform: scale(0.75);\n }\n\n .SubdomainNavBar-link:active .SubdomainNavBar-link-text::after {\n background-color: var(--brand-SubdomainNavBar-border-nav-pressed);\n transform: scale(0.75);\n }\n\n .SubdomainNavBar-overflow-menu-item .SubdomainNavBar-link {\n transition: background-color var(--brand-animation-easing-default) 250ms;\n background-color: var(--brand-SubdomainNavBar-canvas-overflow-default);\n color: var(--brand-SubdomainNavBar-fg-overflow-default);\n }\n\n .SubdomainNavBar-overflow-menu-item .SubdomainNavBar-link .SubdomainNavBar-link-text::after {\n display: none;\n }\n\n .SubdomainNavBar-overflow-menu-item .SubdomainNavBar-link:hover {\n background-color: var(--brand-SubdomainNavBar-canvas-overflow-hover);\n }\n\n .SubdomainNavBar-overflow-menu-item .SubdomainNavBar-link:focus,\n .SubdomainNavBar-overflow-menu-item .SubdomainNavBar-link:focus-visible {\n box-shadow: inset 0px 0px 0px 2px var(--brand-color-focus);\n outline: none;\n }\n}\n\n@media screen and (min-width: 63.25rem) {\n .SubdomainNavBar-link {\n padding: var(--base-size-16) var(--base-size-24);\n }\n}\n\n.SubdomainNavBar-more-link {\n display: none;\n}\n\n.SubdomainNavBar-more-link[aria-expanded='true']:hover::after,\n.SubdomainNavBar-more-link[aria-expanded='true']:focus::after {\n display: none;\n}\n\n@media screen and (min-width: 48rem) {\n .SubdomainNavBar-more-link {\n cursor: pointer;\n appearance: none;\n border: none;\n background-color: transparent;\n display: inline-flex;\n align-items: center;\n gap: var(--base-size-4);\n }\n}\n\n.SubdomainNavBar-overflow-menu {\n position: absolute;\n z-index: 100;\n right: auto;\n background-color: var(--brand-color-canvas-default);\n border-radius: var(--brand-borderRadius-large);\n animation: fade-in-down 0.25s, enlarge-shadow 250ms forwards;\n animation-timing-function: var(--brand-animation-easing-default);\n box-shadow: 0px 8px 24px rgba(1, 4, 9, 0.15);\n overflow: hidden;\n}\n\n.SubdomainNavBar-overflow-menu-list {\n display: grid;\n list-style-type: none;\n padding: 0;\n margin: 0;\n width: max-content;\n}\n\n/*\n * Toolbar actions area for search and mobile menu\n */\n\n.SubdomainNavBar-secondary-nav {\n display: flex;\n align-items: center;\n flex: 0 1 auto;\n min-width: 0;\n margin-left: auto;\n}\n.SubdomainNavBar-search-trigger {\n box-sizing: border-box;\n display: flex;\n align-items: center;\n min-width: 0;\n}\n\n@media screen and (min-width: 63.25rem) {\n .SubdomainNavBar-search-trigger {\n --SubdomainNavBar-search-input-width: calc(var(--base-size-128) * 2 + var(--base-size-24));\n\n flex: 0 9999 var(--SubdomainNavBar-search-input-width);\n width: var(--SubdomainNavBar-search-input-width);\n max-width: 100%;\n min-width: calc(var(--base-size-128) + var(--base-size-32));\n }\n}\n\n.SubdomainNavBar-menu-button {\n position: relative;\n cursor: pointer;\n appearance: none;\n background-color: transparent;\n border: var(--brand-borderWidth-thick) solid transparent;\n color: var(--brand-color-text-default);\n width: calc(48px - var(--brand-borderWidth-thick));\n height: calc(48px - var(--brand-borderWidth-thick));\n display: flex;\n align-items: center;\n justify-content: center;\n transition: border 250ms var(--brand-animation-easing-default), box-shadow 250ms ease;\n border-radius: var(--brand-borderRadius-medium);\n box-shadow: 0 0 0 2px transparent;\n gap: 0;\n}\n\n.SubdomainNavBar-menu-button svg {\n width: 24px;\n height: 24px;\n}\n\n.SubdomainNavBar-search-input-button {\n cursor: pointer;\n appearance: none;\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: var(--base-size-16);\n width: 100%;\n block-size: var(--base-size-32);\n min-block-size: var(--base-size-32);\n padding: var(--base-size-4) var(--base-size-4) var(--base-size-4) calc(var(--base-size-8) + var(--base-size-2));\n overflow: hidden;\n color: var(--brand-color-text-muted);\n background-color: var(--brand-color-canvas-subtle);\n border: 0;\n border-radius: var(--brand-borderRadius-medium);\n font-family: var(--brand-body-fontFamily);\n transition: background-color var(--brand-animation-duration-fast) var(--brand-animation-easing-default),\n box-shadow var(--brand-animation-duration-fast) var(--brand-animation-easing-default);\n}\n\n.SubdomainNavBar-search-input-button:hover {\n box-shadow: inset 0 0 0 var(--brand-borderWidth-thin) var(--brand-color-border-muted);\n}\n\n.SubdomainNavBar-search-input-button:focus-visible {\n outline: var(--base-size-4) solid var(--brand-color-focus);\n outline-offset: var(--base-size-2);\n}\n\n.SubdomainNavBar-search-input-button:active {\n box-shadow: inset 0 0 0 var(--brand-borderWidth-thin) var(--brand-color-border-default);\n}\n\n.SubdomainNavBar-search-input-button-placeholder {\n display: inline-flex;\n align-items: center;\n gap: var(--base-size-8);\n min-width: 0;\n overflow: hidden;\n color: var(--brand-color-text-muted);\n font-size: var(--brand-text-size-100);\n font-weight: var(--base-text-weight-normal);\n line-height: 1.2;\n white-space: nowrap;\n text-overflow: ellipsis;\n}\n\n.SubdomainNavBar-search-input-button-placeholder svg {\n flex: none;\n}\n\n.SubdomainNavBar-search-input-button-placeholder span {\n overflow: hidden;\n text-overflow: ellipsis;\n}\n\n.SubdomainNavBar-search-input-button-shortcut {\n flex: none;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n align-self: stretch;\n min-width: var(--base-size-24);\n padding-inline: var(--base-size-8);\n color: var(--brand-color-text-default);\n background-color: var(--brand-color-canvas-default);\n border: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n border-radius: calc(var(--brand-borderRadius-medium) / 2);\n font-family: var(--brand-fontStack-monospace);\n font-size: var(--brand-text-size-100);\n font-weight: var(--base-text-weight-normal);\n line-height: 1.6;\n}\n\n@media screen and (max-width: 47.99rem) {\n .SubdomainNavBar-search-trigger {\n flex: 0 0 var(--base-size-48);\n justify-content: center;\n width: var(--base-size-48);\n }\n\n .SubdomainNavBar-search-input-button {\n justify-content: center;\n gap: 0;\n width: var(--base-size-32);\n padding: var(--base-size-8);\n background-color: transparent;\n }\n\n .SubdomainNavBar-search-input-button-placeholder {\n gap: 0;\n }\n\n .SubdomainNavBar-search-input-button-placeholder span,\n .SubdomainNavBar-search-input-button-shortcut {\n display: none;\n }\n}\n\n.SubdomainNavBar-menu-button {\n display: inline-flex;\n align-items: center;\n align-self: center;\n}\n\n.SubdomainNavBar-menu-button-icon {\n display: inline-flex;\n flex-direction: column;\n gap: calc(var(--base-size-4) - var(--brand-borderWidth-thin));\n}\n\n.SubdomainNavBar-menu-button-label {\n display: none;\n}\n\n.SubdomainNavBar-menu-button-bar {\n width: 22px;\n height: 2px;\n background-color: var(--brand-color-text-default);\n margin: var(--base-size-4) auto;\n border-radius: var(--brand-borderRadius-large);\n display: block;\n}\n\n@media (prefers-reduced-motion: no-preference) {\n .SubdomainNavBar-menu-button-bar {\n transition-timing-function: var(--brand-animation-easing-default);\n transition-duration: 500ms;\n transition-property: opacity, transform;\n }\n}\n\n.SubdomainNavBar-menu-button-bar:nth-of-type(1) {\n transform-origin: bottom right;\n}\n\n.SubdomainNavBar-menu-button-bar:nth-of-type(3) {\n transform-origin: top right;\n}\n\n.SubdomainNavBar-menu-button--close .SubdomainNavBar-menu-button-bar:nth-of-type(1) {\n transform: rotate(-45deg) translateY(-3px);\n}\n\n.SubdomainNavBar-menu-button--close .SubdomainNavBar-menu-button-bar:nth-of-type(2) {\n opacity: 0;\n transform: scale(0);\n}\n\n.SubdomainNavBar-menu-button--close .SubdomainNavBar-menu-button-bar:nth-of-type(3) {\n transform: rotate(45deg) translateY(3px);\n}\n\n.SubdomainNavBar-mobile-menu-button.SubdomainNavBar-menu-button--close {\n position: relative;\n z-index: 3;\n background-color: var(--brand-color-canvas-muted);\n}\n\n.SubdomainNavBar-mobile-menu-button.SubdomainNavBar-menu-button--close:focus-visible {\n outline: none;\n box-shadow: none;\n transition: none;\n}\n\n.SubdomainNavBar-mobile-menu-button.SubdomainNavBar-menu-button--close:focus-visible::before {\n content: '';\n position: absolute;\n inset: 0;\n z-index: 2;\n pointer-events: none;\n border: var(--brand-borderWidth-thick) solid var(--brand-color-focus);\n}\n\n.SubdomainNavBar-mobile-menu-button.SubdomainNavBar-menu-button--close::after {\n content: '';\n position: absolute;\n z-index: 1;\n inset-inline: 0;\n inset-block-end: calc(var(--brand-borderWidth-thin) * -2);\n height: calc(var(--brand-borderWidth-thin) * 2);\n background-color: var(--brand-color-canvas-muted);\n}\n\n@media screen and (min-width: 63.25rem) {\n .SubdomainNavBar-menu-button:hover {\n background-color: transparent;\n border: var(--brand-borderWidth-thick) solid var(--brand-SubdomainNavBar-border-button-hover);\n }\n\n .SubdomainNavBar-menu-button:active {\n background-color: transparent;\n box-shadow: 0 0 0 1px var(--brand-SubdomainNavBar-border-button-hover);\n }\n\n .SubdomainNavBar-mobile-menu-button {\n display: none;\n }\n}\n\n@media screen and (min-width: 48rem) and (max-width: 63.24rem) {\n .SubdomainNavBar-primary-nav {\n display: none;\n }\n\n .SubdomainNavBar-secondary-nav {\n position: relative;\n flex: 0 0 auto;\n align-self: stretch;\n }\n\n .SubdomainNavBar-search-trigger {\n --SubdomainNavBar-tablet-search-width: calc(var(--base-size-128) * 2 + var(--base-size-2));\n\n flex: 0 0 var(--SubdomainNavBar-tablet-search-width);\n width: var(--SubdomainNavBar-tablet-search-width);\n padding-inline: var(--base-size-8);\n border-inline-start: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n }\n\n .SubdomainNavBar-search-input-button {\n width: 100%;\n }\n\n .SubdomainNavBar-mobile-menu-button {\n align-self: stretch;\n flex: none;\n flex-direction: row;\n align-items: center;\n justify-content: center;\n gap: var(--base-size-8);\n width: max-content;\n min-width: calc(var(--base-size-64) + var(--base-size-32));\n height: 100%;\n padding-inline: var(--base-size-16);\n color: var(--brand-color-text-default);\n border: 0;\n border-inline-start: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n border-inline-end: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n border-radius: 0;\n overflow: visible;\n font-family: var(--brand-body-fontFamily);\n font-size: var(--brand-text-size-100);\n line-height: var(--brand-text-lineHeight-100);\n }\n\n .SubdomainNavBar-menu-button-label {\n display: inline-flex;\n align-items: center;\n white-space: nowrap;\n }\n\n .SubdomainNavBar-menu-button-icon {\n flex: none;\n align-items: stretch;\n justify-content: center;\n width: var(--base-size-16);\n height: var(--base-size-16);\n overflow: visible;\n }\n\n .SubdomainNavBar-menu-button-icon .SubdomainNavBar-menu-button-bar {\n width: var(--base-size-16);\n height: var(--base-size-2);\n margin: 0;\n transform-origin: center;\n }\n\n .SubdomainNavBar-menu-button--close .SubdomainNavBar-menu-button-bar:nth-of-type(1) {\n transform: translateY(calc(var(--base-size-6) - var(--brand-borderWidth-thin))) rotate(45deg);\n }\n\n .SubdomainNavBar-menu-button--close .SubdomainNavBar-menu-button-bar:nth-of-type(3) {\n transform: translateY(calc(var(--brand-borderWidth-thin) - var(--base-size-6))) rotate(-45deg);\n }\n\n .SubdomainNavBar-menu-wrapper {\n display: flex;\n flex-direction: column;\n justify-content: flex-start;\n overflow-y: auto;\n position: absolute;\n inset-inline: 0;\n top: var(--SubdomainNavBar-height);\n z-index: 2;\n box-sizing: border-box;\n width: 100%;\n max-height: calc(100vh - var(--SubdomainNavBar-height) - var(--SubdomainNavBar-menu-offset-block-start, 0px));\n background-color: var(--brand-color-canvas-default);\n border-inline: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n border-block-end: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n animation: fade-in-down var(--brand-animation-duration-default);\n animation-timing-function: var(--brand-animation-easing-default);\n }\n\n .SubdomainNavBar--variant-default .SubdomainNavBar-menu-wrapper {\n inset-inline-start: auto;\n inset-inline-end: 0;\n width: max(100%, calc(var(--base-size-128) * 3));\n min-width: 0;\n }\n\n .SubdomainNavBar-menu-wrapper--close {\n display: none;\n }\n\n .SubdomainNavBar-primary-nav-list--visible {\n display: grid;\n gap: var(--brand-borderWidth-thin);\n margin: 0;\n padding: var(--base-size-8) var(--base-size-16);\n }\n\n .SubdomainNavBar-menu-wrapper-footer {\n flex: none;\n display: flex;\n flex-direction: column;\n width: 100%;\n }\n\n .SubdomainNavBar .SubdomainNavBar-menu-wrapper .SubdomainNavBar-link {\n box-sizing: border-box;\n width: 100%;\n min-height: var(--base-size-40);\n padding: var(--base-size-8) var(--base-size-12);\n color: var(--brand-color-text-muted);\n background-color: var(--brand-color-canvas-default);\n border-radius: var(--brand-borderRadius-medium);\n font-size: var(--brand-text-size-100);\n line-height: var(--brand-text-lineHeight-200);\n }\n\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item) {\n width: 100%;\n height: auto;\n }\n\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link {\n padding: var(--base-size-8) var(--base-size-12);\n }\n\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link\n > .SubdomainNavBar-link-content {\n width: 100%;\n padding: 0;\n background-color: transparent;\n border-radius: 0;\n }\n\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link:hover\n > .SubdomainNavBar-link-content,\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link:focus\n > .SubdomainNavBar-link-content,\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link:focus-visible\n > .SubdomainNavBar-link-content,\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link:active\n > .SubdomainNavBar-link-content,\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link[aria-current]:not([aria-current='false'])\n > .SubdomainNavBar-link-content {\n background-color: transparent;\n outline: none;\n }\n\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link:hover,\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link:focus,\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link:focus-visible,\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link:active,\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link[aria-current]:not([aria-current='false']) {\n color: var(--brand-color-text-default);\n background-color: var(--brand-color-canvas-subtle);\n }\n\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link:focus,\n .SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link:focus-visible {\n box-shadow: inset 0 0 0 var(--brand-borderWidth-thick) var(--brand-color-focus);\n outline: none;\n }\n\n .SubdomainNavBar .SubdomainNavBar-menu-wrapper .SubdomainNavBar-link--title {\n font-size: var(--brand-text-size-100);\n line-height: var(--brand-text-lineHeight-200);\n }\n\n .SubdomainNavBar-menu-wrapper .SubdomainNavBar-leading-component,\n .SubdomainNavBar-menu-wrapper .SubdomainNavBar-trailing-component {\n box-sizing: border-box;\n flex: none;\n width: 100%;\n height: auto;\n margin-inline: 0;\n padding: var(--base-size-16);\n }\n\n .SubdomainNavBar .SubdomainNavBar-menu-wrapper .SubdomainNavBar-button-area {\n display: flex;\n width: 100%;\n height: auto;\n padding: 0;\n }\n\n .SubdomainNavBar-menu-wrapper .SubdomainNavBar-button-area-inner {\n box-sizing: border-box;\n flex-direction: column;\n width: 100%;\n margin-block: var(--base-size-24);\n padding-inline: var(--base-size-16);\n }\n}\n\n.SubdomainNavBar .SubdomainNavBar-menu-wrapper-footer--has-leading-item,\n.SubdomainNavBar\n .SubdomainNavBar-menu-wrapper\n .SubdomainNavBar-leading-component\n + .SubdomainNavBar-primary-nav-list--visible,\n.SubdomainNavBar\n .SubdomainNavBar-menu-wrapper-footer\n .SubdomainNavBar-trailing-component\n + .SubdomainNavBar-button-area {\n border-block-start: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n}\n\n.SubdomainNavBar-button-area {\n display: inline-flex;\n gap: var(--base-size-16);\n align-items: center;\n min-width: 0;\n}\n\n.SubdomainNavBar-button-area-inner {\n display: flex;\n gap: var(--base-size-8);\n min-width: 0;\n}\n\n@media screen and (max-width: 48rem) {\n .SubdomainNavBar-button-area {\n display: none;\n }\n\n .SubdomainNavBar-button-area--visible {\n display: flex;\n left: 0;\n z-index: 99;\n width: 100%;\n height: auto;\n animation-name: fade-in-down-staggered;\n animation-duration: 500ms;\n animation-delay: calc(10 * 80ms);\n animation-fill-mode: both;\n animation-timing-function: var(--brand-animation-easing-default);\n }\n\n .SubdomainNavBar-inner-container--search-open .SubdomainNavBar-button-area--visible {\n display: none;\n }\n\n .SubdomainNavBar-button-area-inner {\n width: 100%;\n box-sizing: border-box;\n flex-direction: column;\n margin-block: var(--base-size-24);\n padding-inline: var(--base-size-24);\n min-width: 0;\n }\n}\n\n.SubdomainNavBar-cta-button {\n white-space: nowrap;\n}\n\n.SubdomainNavBar .SubdomainNavBar-menu-wrapper {\n top: var(--SubdomainNavBar-height);\n height: auto;\n max-height: calc(100vh - var(--SubdomainNavBar-height) - var(--SubdomainNavBar-menu-offset-block-start, 0px));\n}\n\n.SubdomainNavBar-menu-backdrop {\n position: fixed;\n inset-block-start: calc(var(--SubdomainNavBar-height) + var(--SubdomainNavBar-menu-offset-block-start, 0px));\n inset-block-end: 0;\n inset-inline: 0;\n z-index: 1;\n background-color: var(--brand-SubdomainNavBar-searchDialog-backdropColor);\n animation: fade-in var(--brand-animation-duration-fast) var(--brand-animation-easing-glide);\n}\n\n.SubdomainNavBar .SubdomainNavBar-inner-container--search-open {\n animation: none;\n}\n\n@media screen and (max-width: 47.99rem) {\n .SubdomainNavBar {\n --SubdomainNavBar-mobile-control-size: var(--base-size-48);\n }\n\n .SubdomainNavBar .SubdomainNavBar-inner-container {\n height: 100%;\n padding: 0;\n }\n\n .SubdomainNavBar .SubdomainNavBar-title-area {\n height: 100%;\n max-width: none;\n gap: 0;\n padding: 0;\n }\n\n .SubdomainNavBar .SubdomainNavBar-title-area > li {\n display: flex;\n align-items: center;\n height: 100%;\n padding-inline: 0 var(--base-size-16);\n }\n\n .SubdomainNavBar .SubdomainNavBar-title-area > li:first-child {\n justify-content: center;\n width: auto;\n padding-inline: var(--base-size-16) var(--base-size-8);\n }\n\n .SubdomainNavBar .SubdomainNavBar-logo-mark {\n justify-content: center;\n }\n\n .SubdomainNavBar .SubdomainNavBar-logo-mark svg {\n width: var(--base-size-24);\n height: var(--base-size-24);\n }\n\n .SubdomainNavBar .SubdomainNavBar-title {\n padding-inline-end: 0;\n }\n\n .SubdomainNavBar .SubdomainNavBar-title > * {\n font-size: var(--brand-text-size-100);\n line-height: var(--brand-text-lineHeight-100);\n }\n\n .SubdomainNavBar .SubdomainNavBar-secondary-nav {\n height: 100%;\n }\n\n .SubdomainNavBar .SubdomainNavBar-search-trigger {\n flex: 0 0 var(--SubdomainNavBar-mobile-control-size);\n justify-content: center;\n width: var(--SubdomainNavBar-mobile-control-size);\n height: 100%;\n padding-inline: 0;\n border-inline-start: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n }\n\n .SubdomainNavBar .SubdomainNavBar-search-input-button,\n .SubdomainNavBar .SubdomainNavBar-mobile-menu-button {\n box-sizing: border-box;\n display: inline-flex;\n flex: 0 0 var(--SubdomainNavBar-mobile-control-size);\n width: var(--SubdomainNavBar-mobile-control-size);\n flex-direction: column;\n height: 100%;\n padding-inline: var(--base-size-16);\n border-radius: 0;\n }\n\n .SubdomainNavBar .SubdomainNavBar-mobile-menu-button {\n gap: calc(var(--base-size-4) - var(--brand-borderWidth-thin));\n border-inline-start: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n }\n\n .SubdomainNavBar .SubdomainNavBar-menu-button-bar {\n width: var(--base-size-16);\n height: var(--base-size-2);\n margin: 0 auto;\n transform-origin: center;\n }\n\n .SubdomainNavBar .SubdomainNavBar-menu-button--close .SubdomainNavBar-menu-button-bar:nth-of-type(1) {\n transform: translateY(calc(var(--base-size-6) - var(--brand-borderWidth-thin))) rotate(45deg);\n }\n\n .SubdomainNavBar .SubdomainNavBar-menu-button--close .SubdomainNavBar-menu-button-bar:nth-of-type(3) {\n transform: translateY(calc(var(--brand-borderWidth-thin) - var(--base-size-6))) rotate(-45deg);\n }\n\n .SubdomainNavBar .SubdomainNavBar-menu-wrapper .SubdomainNavBar-link {\n padding: var(--base-size-16);\n font-size: var(--brand-text-size-100);\n line-height: var(--brand-text-lineHeight-100);\n }\n\n .SubdomainNavBar .SubdomainNavBar-menu-wrapper .SubdomainNavBar-link--title {\n font-size: var(--brand-text-size-100);\n line-height: var(--brand-text-lineHeight-100);\n }\n\n .SubdomainNavBar .SubdomainNavBar-menu-wrapper .SubdomainNavBar-button-area-inner {\n padding-inline: var(--base-size-16);\n }\n}\n\n@media screen and (min-width: 48rem) {\n .SubdomainNavBar .SubdomainNavBar-inner-container {\n height: 100%;\n max-width: none;\n padding: 0;\n }\n\n .SubdomainNavBar .SubdomainNavBar-title-area {\n height: 100%;\n max-width: none;\n gap: 0;\n padding: 0;\n }\n\n .SubdomainNavBar .SubdomainNavBar-title-area > li {\n display: flex;\n align-items: center;\n height: 100%;\n padding-inline: 0 var(--base-size-16);\n border-inline-end: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n }\n\n .SubdomainNavBar .SubdomainNavBar-title-area > li:first-child {\n justify-content: center;\n width: auto;\n padding-inline: var(--base-size-16) var(--base-size-8);\n border-inline-end: 0;\n }\n\n .SubdomainNavBar--variant-default.SubdomainNavBar--has-title .SubdomainNavBar-title-area > li:first-child {\n padding-inline-end: 0;\n }\n\n .SubdomainNavBar--variant-default.SubdomainNavBar--has-title .SubdomainNavBar-title-area > li:first-child::after {\n margin-inline-end: 0;\n }\n\n .SubdomainNavBar--variant-default.SubdomainNavBar--has-title .SubdomainNavBar-title-item {\n padding-inline: var(--base-size-24);\n }\n\n .SubdomainNavBar .SubdomainNavBar-logo-mark {\n justify-content: center;\n }\n\n .SubdomainNavBar .SubdomainNavBar-logo-mark svg {\n width: var(--base-size-24);\n height: var(--base-size-24);\n }\n\n .SubdomainNavBar .SubdomainNavBar-title {\n padding-inline-end: 0;\n }\n\n .SubdomainNavBar .SubdomainNavBar-title > * {\n font-size: var(--base-size-16);\n line-height: var(--base-size-16);\n }\n\n .SubdomainNavBar .SubdomainNavBar-primary-nav,\n .SubdomainNavBar .SubdomainNavBar-primary-nav-overflow,\n .SubdomainNavBar .SubdomainNavBar-primary-nav-list,\n .SubdomainNavBar .SubdomainNavBar-secondary-nav,\n .SubdomainNavBar .SubdomainNavBar-button-area,\n .SubdomainNavBar .SubdomainNavBar-leading-component,\n .SubdomainNavBar .SubdomainNavBar-trailing-component {\n height: 100%;\n }\n\n .SubdomainNavBar .SubdomainNavBar-leading-component,\n .SubdomainNavBar .SubdomainNavBar-trailing-component {\n padding-inline: var(--base-size-16);\n margin-inline: 0;\n }\n\n .SubdomainNavBar .SubdomainNavBar-leading-component {\n border-inline: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n }\n\n .SubdomainNavBar .SubdomainNavBar-primary-nav-list {\n align-items: stretch;\n margin: 0;\n block-size: 100%;\n max-block-size: 100%;\n padding-inline-start: var(--base-size-16);\n }\n\n .SubdomainNavBar .SubdomainNavBar-primary-nav-overflow {\n margin: 0;\n }\n\n .SubdomainNavBar .SubdomainNavBar-primary-nav-list-item {\n display: flex;\n align-items: center;\n height: 100%;\n }\n\n .SubdomainNavBar .SubdomainNavBar-link {\n align-items: center;\n height: 100%;\n padding: 0 var(--base-size-16);\n color: var(--brand-color-text-muted);\n font-size: var(--brand-text-size-100);\n line-height: var(--brand-text-lineHeight-200);\n }\n\n .SubdomainNavBar\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link,\n .SubdomainNavBar .SubdomainNavBar-more-link {\n padding-inline: var(--base-size-4);\n }\n\n .SubdomainNavBar\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link\n > .SubdomainNavBar-link-content,\n .SubdomainNavBar .SubdomainNavBar-more-link > .SubdomainNavBar-link-content {\n gap: var(--base-size-4);\n padding: var(--base-size-4) var(--base-size-12);\n background-color: transparent;\n border-radius: var(--brand-borderRadius-full);\n }\n\n .SubdomainNavBar\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link:hover\n > .SubdomainNavBar-link-content,\n .SubdomainNavBar\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link:active\n > .SubdomainNavBar-link-content,\n .SubdomainNavBar\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link[aria-current]:not([aria-current='false'])\n > .SubdomainNavBar-link-content,\n .SubdomainNavBar .SubdomainNavBar-more-link:hover > .SubdomainNavBar-link-content,\n .SubdomainNavBar .SubdomainNavBar-more-link:active > .SubdomainNavBar-link-content,\n .SubdomainNavBar .SubdomainNavBar-more-link[aria-expanded='true'] > .SubdomainNavBar-link-content {\n background-color: var(--brand-SubdomainNavBar-color-link-bgColor);\n }\n\n .SubdomainNavBar\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link:focus-visible,\n .SubdomainNavBar .SubdomainNavBar-more-link:focus-visible {\n outline: none;\n }\n\n .SubdomainNavBar\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link:focus-visible\n > .SubdomainNavBar-link-content,\n .SubdomainNavBar .SubdomainNavBar-more-link:focus-visible > .SubdomainNavBar-link-content {\n outline: var(--brand-borderWidth-thick) solid var(--brand-color-focus);\n outline-offset: var(--base-size-2);\n }\n\n .SubdomainNavBar .SubdomainNavBar-link-text::after {\n display: none;\n }\n\n .SubdomainNavBar .SubdomainNavBar-overflow-menu {\n animation: fade-in-down-overflow var(--brand-animation-duration-faster);\n animation-timing-function: var(--brand-animation-easing-default);\n border: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n border-start-start-radius: 0;\n border-start-end-radius: 0;\n border-end-start-radius: var(--brand-borderRadius-medium);\n border-end-end-radius: var(--brand-borderRadius-medium);\n box-shadow: none;\n min-width: calc(var(--base-size-128) + var(--base-size-32));\n transform: translateY(calc(0px - var(--base-size-4)));\n }\n\n .SubdomainNavBar .SubdomainNavBar-overflow-menu-list {\n gap: var(--brand-borderWidth-thin);\n padding: var(--base-size-8);\n width: 100%;\n }\n\n .SubdomainNavBar .SubdomainNavBar-overflow-menu-item .SubdomainNavBar-link {\n width: 100%;\n min-height: var(--base-size-40);\n padding: var(--base-size-8) var(--base-size-12);\n color: var(--brand-color-text-muted);\n background-color: var(--brand-color-canvas-default);\n border-radius: var(--brand-borderRadius-medium);\n font-size: var(--brand-text-size-100);\n line-height: var(--brand-text-lineHeight-200);\n }\n\n .SubdomainNavBar .SubdomainNavBar-overflow-menu-item .SubdomainNavBar-link:hover,\n .SubdomainNavBar .SubdomainNavBar-overflow-menu-item .SubdomainNavBar-link:focus,\n .SubdomainNavBar .SubdomainNavBar-overflow-menu-item .SubdomainNavBar-link:focus-visible {\n color: var(--brand-color-text-default);\n background-color: var(--brand-color-canvas-subtle);\n }\n\n @media (prefers-reduced-motion: no-preference) {\n .SubdomainNavBar\n .SubdomainNavBar-primary-nav-list-item:not(.SubdomainNavBar-overflow-menu-item)\n > .SubdomainNavBar-link\n > .SubdomainNavBar-link-content,\n .SubdomainNavBar .SubdomainNavBar-more-link > .SubdomainNavBar-link-content {\n transition: background-color var(--brand-animation-duration-fast) var(--brand-animation-easing-default);\n }\n }\n\n .SubdomainNavBar .SubdomainNavBar-search-trigger {\n height: 100%;\n padding-inline: var(--base-size-16);\n }\n\n .SubdomainNavBar .SubdomainNavBar-search-trigger--has-trailing-item {\n border-inline-end: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n }\n\n .SubdomainNavBar .SubdomainNavBar-button-area {\n align-items: center;\n padding-inline: var(--base-size-16);\n }\n\n .SubdomainNavBar .SubdomainNavBar-button-area--has-leading-item {\n border-inline-start: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n }\n}\n\n@media screen and (min-width: 63.25rem) {\n .SubdomainNavBar .SubdomainNavBar-search-trigger {\n --SubdomainNavBar-search-input-width: clamp(\n calc(var(--base-size-128) + var(--base-size-32)),\n 28.5vw,\n calc(var(--base-size-128) * 3 + var(--base-size-36))\n );\n\n align-self: stretch;\n }\n\n .SubdomainNavBar--variant-default.SubdomainNavBar--has-primary-nav {\n border-block-end: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n height: calc(var(--SubdomainNavBar-height) + var(--base-size-48));\n }\n\n .SubdomainNavBar--variant-default::after {\n inset-block-start: var(--SubdomainNavBar-height);\n }\n\n .SubdomainNavBar--variant-default .SubdomainNavBar-inner-container {\n display: grid;\n grid-template-columns: auto minmax(0, 1fr) auto;\n grid-template-rows: var(--SubdomainNavBar-height);\n }\n\n .SubdomainNavBar--variant-default.SubdomainNavBar--has-primary-nav .SubdomainNavBar-inner-container {\n grid-template-rows: var(--SubdomainNavBar-height) var(--base-size-48);\n }\n\n .SubdomainNavBar--variant-default .SubdomainNavBar-title-navigation {\n grid-column: 1;\n grid-row: 1;\n min-width: 0;\n }\n\n .SubdomainNavBar--variant-default .SubdomainNavBar-primary-nav {\n grid-column: 1 / -1;\n grid-row: 2;\n min-width: 0;\n border-block-start: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n }\n\n .SubdomainNavBar--variant-default .SubdomainNavBar-primary-nav-list {\n padding-inline-start: calc(var(--base-size-64) + var(--brand-borderWidth-thin));\n }\n\n .SubdomainNavBar--variant-default .SubdomainNavBar-inner-container > .SubdomainNavBar-leading-component {\n grid-column: 2;\n grid-row: 1;\n justify-self: start;\n border-inline-start: 0;\n }\n\n .SubdomainNavBar--variant-default .SubdomainNavBar-inner-container > .SubdomainNavBar-secondary-nav {\n grid-column: 3;\n grid-row: 1;\n }\n\n .SubdomainNavBar--variant-default .SubdomainNavBar-search-trigger {\n border-inline-start: var(--brand-borderWidth-thin) solid var(--brand-color-border-muted);\n }\n}\n\n.SubdomainNavBar--variant-default .SubdomainNavBar-search-input-button {\n justify-content: center;\n gap: 0;\n width: var(--base-size-32);\n padding: var(--base-size-8);\n background-color: transparent;\n}\n\n.SubdomainNavBar--variant-default .SubdomainNavBar-search-input-button-placeholder {\n gap: 0;\n}\n\n.SubdomainNavBar--variant-default .SubdomainNavBar-search-input-button-placeholder-text,\n.SubdomainNavBar--variant-default .SubdomainNavBar-search-input-button-shortcut {\n display: none;\n}\n\n@media screen and (min-width: 48rem) {\n .SubdomainNavBar--variant-default .SubdomainNavBar-search-trigger {\n flex: 0 0 var(--base-size-48);\n width: var(--base-size-48);\n min-width: var(--base-size-48);\n }\n\n .SubdomainNavBar--variant-default .SubdomainNavBar-search-trigger {\n padding-inline: 0;\n }\n\n .SubdomainNavBar--variant-default .SubdomainNavBar-search-input-button {\n width: 100%;\n block-size: 100%;\n padding-inline: var(--base-size-16);\n border-radius: 0;\n }\n}\n\n@media screen and (min-width: 1024px) {\n .SubdomainNavBar-cta-button--secondary {\n display: inline-flex;\n }\n}\n\n/*\n * Search dialog control area\n */\n.SubdomainNavBar-search-form {\n display: flex;\n width: 100%;\n}\n\n.SubdomainNavBar-search-input-area {\n display: flex;\n align-items: center;\n gap: var(--base-size-8);\n width: 100%;\n}\n\n.SubdomainNavBar-search-close-button {\n cursor: pointer;\n appearance: none;\n display: inline-flex;\n align-items: center;\n justify-content: center;\n flex: none;\n min-block-size: var(--base-size-32);\n padding: var(--base-size-8) var(--base-size-12);\n color: var(--brand-color-text-default);\n background-color: var(--brand-color-canvas-subtle);\n border: 0;\n border-radius: var(--brand-borderRadius-medium);\n font-family: var(--brand-body-fontFamily);\n font-size: var(--brand-text-size-100);\n font-weight: var(--base-text-weight-medium);\n line-height: var(--base-size-14);\n letter-spacing: var(--brand-text-letterSpacing-100);\n}\n\n.SubdomainNavBar-search-close-button:hover {\n background-color: var(--brand-color-canvas-inset);\n}\n\n.SubdomainNavBar-search-close-button:focus-visible {\n outline: var(--base-size-4) solid var(--brand-color-focus);\n outline-offset: var(--base-size-2);\n}\n\n.SubdomainNavBar-search-dialog-control-area {\n height: var(--base-size-40);\n max-width: none;\n padding: 0;\n margin: 0;\n display: flex;\n align-items: center;\n background: transparent;\n}\n\n.SubdomainNavBar-search-text-input {\n border-color: transparent;\n}\n\n.SubdomainNavBar-search-results-area {\n width: 100%;\n}\n\n.SubdomainNavBar-search-results-container {\n animation: fade-in-down 500ms;\n padding: var(--base-size-24);\n background-color: var(--base-color-scale-white-0);\n border-radius: var(--brand-borderRadius-large);\n box-shadow: 0px 8px 24px rgba(1, 4, 9, 0.15);\n max-height: 514px;\n height: 70vh;\n max-width: 570px;\n margin: 0 auto;\n width: 80%;\n}\n\n.SubdomainNavBar-search-results {\n overflow-y: scroll;\n list-style: none;\n padding: 0 var(--base-size-24) 0 0;\n margin: 0;\n height: 90%;\n}\n\n.SubdomainNavBar-search-results-heading {\n display: block;\n font-weight: var(--brand-heading-weight-600);\n font-size: var(--base-size-20);\n line-height: var(--base-size-24);\n margin-bottom: var(--base-size-20);\n padding: 0 var(--base-size-8);\n color: var(--base-color-scale-black-0);\n}\n\n.SubdomainNavBar-search-result-group,\n.SubdomainNavBar-search-result-group-list {\n list-style: none;\n padding: 0;\n margin: 0;\n}\n\n.SubdomainNavBar-search-result-group + .SubdomainNavBar-search-result-group {\n margin-block-start: var(--base-size-24);\n}\n\n.SubdomainNavBar-search-result-group-heading {\n display: block;\n margin: 0 0 var(--base-size-20);\n padding: 0 var(--base-size-8);\n color: var(--brand-color-text-muted);\n font-weight: var(--brand-heading-weight-600);\n font-size: var(--brand-text-size-100);\n line-height: var(--brand-text-lineHeight-100);\n}\n\n.SubdomainNavBar-search-result-item {\n padding: var(--base-size-16) var(--base-size-8);\n border-bottom: solid var(--brand-borderWidth-thin, 1px)\n var(--brand-SubdomainNavBar-search-results-border-default, #b7bfc7);\n}\n\n.SubdomainNavBar-search-result-item-container a[aria-selected='true'] {\n outline: var(--brand-color-focus) auto var(--brand-borderWidth-thick);\n}\n\n.SubdomainNavBar-search-result-item-container {\n letter-spacing: var(--brand-heading-letterSpacing-400);\n font-size: var(--brand-text-size-400);\n}\n\n.SubdomainNavBar-search-result-item-container a {\n display: block;\n color: var(--base-color-scale-black-0);\n text-decoration: none;\n margin: 0 0 var(--base-size-12);\n font-size: var(--base-size-16);\n font-weight: var(--brand-heading-weight-400);\n font-family: var(--brand-heading-fontFamily);\n line-height: var(--brand-text-lineHeight-400);\n}\n\n.SubdomainNavBar-search-result-item-container a svg {\n flex: none;\n}\n\n.SubdomainNavBar-search-result-item-container a:hover {\n text-decoration: none;\n}\n\n.SubdomainNavBar-search-result-item-desc {\n color: var(--base-color-scale-black-0);\n}\n\n.SubdomainNavBar-search-dialog {\n position: fixed;\n inset-block-start: calc(var(--base-size-64) + var(--base-size-8));\n inset-block-end: auto;\n inset-inline: calc(var(--base-size-64) + var(--base-size-8));\n z-index: 99;\n width: min(\n calc(100vw - ((var(--base-size-64) + var(--base-size-8)) * 2)),\n calc((var(--base-size-128) * 6) + var(--base-size-36))\n );\n max-height: calc(100vh - ((var(--base-size-64) + var(--base-size-8)) * 2));\n height: auto;\n margin-inline: auto;\n padding: var(--base-size-16);\n overflow: hidden;\n color: var(--brand-color-text-default);\n background-color: var(--brand-color-canvas-default);\n border: var(--brand-borderWidth-thin) solid var(--brand-color-border-default);\n border-radius: var(--brand-borderRadius-large);\n box-shadow: 0 0 calc(var(--base-size-32) + var(--base-size-2)) var(--brand-SubdomainNavBar-searchDialog-shadowColor);\n}\n\n.SubdomainNavBar-search-dialog--has-results {\n padding-block-end: var(--base-size-32);\n}\n\n.SubdomainNavBar-search-dialog::backdrop {\n background-color: var(--brand-SubdomainNavBar-searchDialog-backdropColor);\n -webkit-backdrop-filter: blur(var(--base-size-24));\n backdrop-filter: blur(var(--base-size-24));\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-input-area {\n gap: var(--base-size-16);\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-form {\n min-width: 0;\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-form section > span:focus-within {\n border-color: transparent;\n box-shadow: none;\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-text-input {\n color: var(--brand-color-text-default);\n font-size: calc(var(--base-size-16) + var(--base-size-2));\n font-weight: var(--base-text-weight-medium);\n line-height: var(--brand-text-lineHeight-300);\n letter-spacing: var(--brand-text-letterSpacing-100);\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-close-button {\n background-color: var(--brand-color-border-muted);\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-results-area--visible {\n margin-block-start: var(--base-size-24);\n padding-block-start: var(--base-size-24);\n border-block-start: var(--brand-borderWidth-thin) dashed var(--brand-color-border-muted);\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-results-container {\n width: 100%;\n height: auto;\n max-width: none;\n max-height: calc(100vh - (((var(--base-size-64) + var(--base-size-8)) * 2) + var(--base-size-128)));\n padding: 0;\n margin: 0;\n overflow-y: auto;\n background-color: transparent;\n border-radius: 0;\n box-shadow: none;\n animation: none;\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-results {\n height: auto;\n padding: 0;\n margin: 0;\n overflow: visible;\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-results-heading,\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-result-group-heading {\n margin-block-end: var(--base-size-20);\n padding: 0;\n color: var(--brand-color-text-muted);\n font-size: var(--brand-text-size-100);\n font-weight: var(--brand-heading-weight-600);\n line-height: var(--brand-text-lineHeight-100);\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-result-group + .SubdomainNavBar-search-result-group {\n margin-block-start: var(--base-size-24);\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-result-item {\n padding: var(--base-size-16) var(--base-size-4);\n border-block-end: 0;\n border-block-start: var(--brand-borderWidth-thin) dashed var(--brand-color-border-muted);\n}\n\n.SubdomainNavBar-search-dialog\n .SubdomainNavBar-search-result-group-list\n > .SubdomainNavBar-search-result-item:first-child,\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-results > .SubdomainNavBar-search-result-item:first-child {\n padding-block-start: var(--base-size-12);\n border-block-start: 0;\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-result-item-container {\n font-size: var(--brand-text-size-300);\n letter-spacing: var(--brand-text-letterSpacing-100);\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-result-item-container a {\n display: flex;\n align-items: center;\n gap: calc(var(--base-size-8) + var(--base-size-2));\n width: 100%;\n margin: 0;\n color: var(--brand-color-text-default);\n font-size: var(--brand-text-size-300);\n font-weight: var(--brand-heading-weight-600);\n line-height: var(--brand-text-lineHeight-300);\n letter-spacing: var(--brand-text-letterSpacing-100);\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-result-item-container a span {\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-result-item-desc,\n.SubdomainNavBar-search-dialog .SubdomainNavBar-search-result-item-meta {\n display: none;\n}\n\n@media screen and (max-width: 47.99rem) {\n .SubdomainNavBar-search-dialog {\n inset-block-start: var(--base-size-16);\n inset-block-end: auto;\n inset-inline: var(--base-size-16);\n width: calc(100vw - (var(--base-size-16) * 2));\n max-height: calc(100vh - (var(--base-size-16) * 2));\n height: auto;\n }\n}\n\n.SubdomainNavBar-skip-to-content {\n position: absolute;\n inset-block-start: calc(var(--SubdomainNavBar-height) / 2);\n inset-inline-start: var(--base-size-16);\n z-index: 100;\n transform: translateY(-50%);\n}\n\n/*\n * Reusable animations\n */\n@keyframes fade-in-down {\n 0% {\n opacity: 0;\n transform: translateY(-20px);\n }\n 100% {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n@keyframes fade-in {\n 0% {\n opacity: 0;\n }\n 100% {\n opacity: 1;\n }\n}\n\n@keyframes fade-in-down-overflow {\n 0% {\n opacity: 0;\n transform: translateY(calc(0px - var(--base-size-24)));\n }\n 100% {\n opacity: 1;\n transform: translateY(calc(0px - var(--base-size-4)));\n }\n}\n\n@keyframes fade-out {\n 0% {\n opacity: 1;\n }\n 100% {\n opacity: 0;\n }\n}\n\n@keyframes enlarge-shadow {\n 0% {\n scale: 0.98;\n box-shadow: 0px 8px 0 rgba(1, 4, 9, 0.15);\n }\n 100% {\n scale: 1;\n box-shadow: 0px 8px 24px rgba(1, 4, 9, 0.15);\n }\n}\n\n@keyframes fade-in-down-staggered {\n 0% {\n opacity: 0;\n transform: scale(0.6) translateY(-8px);\n }\n\n 100% {\n opacity: 1;\n }\n}\n\n/* Remove all animations, transitions and smooth scroll for people that prefer not to see them */\n@media (prefers-reduced-motion: reduce) {\n .SubdomainNavBar,\n .SubdomainNavBar::before,\n .SubdomainNavBar::after,\n .SubdomainNavBar * {\n animation: none !important;\n transition: none !important;\n scroll-behavior: auto !important;\n }\n}\n"],"mappings":""}
@@ -1,9 +1,13 @@
1
1
  import React from 'react';
2
2
  import '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/tooltip/colors-with-modes.css';
3
3
  import { BaseProps } from '../component-helpers';
4
- type TooltipDirection = 'n' | 'e' | 's' | 'w';
4
+ export declare const TooltipDirections: readonly ["nw", "n", "ne", "e", "se", "s", "sw", "w"];
5
+ export declare const TooltipDelays: readonly ["short", "medium", "long"];
6
+ export type TooltipDirection = (typeof TooltipDirections)[number];
7
+ export type TooltipDelay = (typeof TooltipDelays)[number];
5
8
  export type TooltipProps = {
6
9
  direction?: TooltipDirection;
10
+ delay?: TooltipDelay;
7
11
  text: string;
8
12
  type?: 'label' | 'description';
9
13
  children?: React.ReactNode;
@@ -22,5 +26,4 @@ export declare const TooltipContext: React.Context<{
22
26
  tooltipId?: string;
23
27
  }>;
24
28
  export declare const Tooltip: React.ForwardRefExoticComponent<Omit<TooltipProps, "ref"> & React.RefAttributes<unknown>>;
25
- export {};
26
29
  //# sourceMappingURL=Tooltip.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Tooltip.d.ts","sourceRoot":"","sources":["../../src/Tooltip/Tooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8C,MAAM,OAAO,CAAA;AAUlE,OAAO,2GAA2G,CAAA;AAClH,OAAO,EAAC,SAAS,EAAC,MAAM,sBAAsB,CAAA;AAE9C,KAAK,gBAAgB,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAA;AAC7C,MAAM,MAAM,YAAY,GAAG;IACzB,SAAS,CAAC,EAAE,gBAAgB,CAAA;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,OAAO,GAAG,aAAa,CAAA;IAC9B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAC3B,GAAG,SAAS,CAAC,cAAc,CAAC,CAAA;AAE7B,MAAM,MAAM,gBAAgB,GAAG;IAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,MAAM,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAA;IAChC,OAAO,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAA;IACjC,YAAY,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAA;IACtC,YAAY,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAA;IACtC,GAAG,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAA;CAC1C,CAAA;AAkCD,eAAO,MAAM,cAAc;gBAAoC,MAAM;EAAM,CAAA;AAE3E,eAAO,MAAM,OAAO,2FAgKnB,CAAA"}
1
+ {"version":3,"file":"Tooltip.d.ts","sourceRoot":"","sources":["../../src/Tooltip/Tooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA8C,MAAM,OAAO,CAAA;AAUlE,OAAO,2GAA2G,CAAA;AAClH,OAAO,EAAC,SAAS,EAAC,MAAM,sBAAsB,CAAA;AAE9C,eAAO,MAAM,iBAAiB,uDAAwD,CAAA;AACtF,eAAO,MAAM,aAAa,sCAAuC,CAAA;AACjE,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAA;AACjE,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,CAAC,CAAA;AACzD,MAAM,MAAM,YAAY,GAAG;IACzB,SAAS,CAAC,EAAE,gBAAgB,CAAA;IAC5B,KAAK,CAAC,EAAE,YAAY,CAAA;IACpB,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,CAAC,EAAE,OAAO,GAAG,aAAa,CAAA;IAC9B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAC3B,GAAG,SAAS,CAAC,cAAc,CAAC,CAAA;AAE7B,MAAM,MAAM,gBAAgB,GAAG;IAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,iBAAiB,CAAC,EAAE,MAAM,CAAA;IAC1B,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,MAAM,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAA;IAChC,OAAO,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAA;IACjC,YAAY,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAA;IACtC,YAAY,CAAC,EAAE,KAAK,CAAC,iBAAiB,CAAA;IACtC,GAAG,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,GAAG,IAAI,CAAC,CAAA;CAC1C,CAAA;AAgDD,eAAO,MAAM,cAAc;gBAAoC,MAAM;EAAM,CAAA;AAE3E,eAAO,MAAM,OAAO,2FAyNnB,CAAA"}
@@ -8,106 +8,151 @@ import { jsx as l, jsxs as u } from "react/jsx-runtime";
8
8
  import { getAnchoredPosition as d } from "@primer/behaviors";
9
9
  import { apply as f, isSupported as p } from "@oddbird/popover-polyfill/fn";
10
10
  //#region src/Tooltip/Tooltip.tsx
11
- var m = {
11
+ var m = [
12
+ "nw",
13
+ "n",
14
+ "ne",
15
+ "e",
16
+ "se",
17
+ "s",
18
+ "sw",
19
+ "w"
20
+ ], h = [
21
+ "short",
22
+ "medium",
23
+ "long"
24
+ ], g = {
25
+ nw: {
26
+ side: "outside-top",
27
+ align: "end"
28
+ },
12
29
  n: {
13
30
  side: "outside-top",
14
31
  align: "center"
15
32
  },
33
+ ne: {
34
+ side: "outside-top",
35
+ align: "start"
36
+ },
16
37
  e: {
17
38
  side: "outside-right",
18
39
  align: "center"
19
40
  },
41
+ se: {
42
+ side: "outside-bottom",
43
+ align: "start"
44
+ },
20
45
  s: {
21
46
  side: "outside-bottom",
22
47
  align: "center"
23
48
  },
49
+ sw: {
50
+ side: "outside-bottom",
51
+ align: "end"
52
+ },
24
53
  w: {
25
54
  side: "outside-left",
26
55
  align: "center"
27
56
  }
28
- }, h = {
57
+ }, _ = {
58
+ "outside-top-end": "nw",
29
59
  "outside-top-center": "n",
60
+ "outside-top-start": "ne",
30
61
  "outside-right-center": "e",
62
+ "outside-bottom-start": "se",
31
63
  "outside-bottom-center": "s",
64
+ "outside-bottom-end": "sw",
32
65
  "outside-left-center": "w"
33
- }, g = [
66
+ }, v = {
67
+ short: 50,
68
+ medium: 400,
69
+ long: 1200
70
+ }, y = [
34
71
  "a[href]",
35
72
  "button:not(:disabled)",
36
73
  "summary",
37
74
  "select",
38
75
  "input:not([type=hidden])",
39
76
  "textarea"
40
- ], _ = (e) => g.some((t) => e.matches(t)) || e.hasAttribute("role") && e.getAttribute("role") === "button", v = i.createContext({}), y = i.forwardRef(({ direction: g = "s", text: y, type: b = "description", children: x, id: S, className: C, ...w }, T) => {
41
- let E = t(S), D = a.only(x) ?? null, O = n(T), k = s(null), A = s(null), [j, M] = c(g), N = i.useCallback(() => {
42
- A.current &&= (clearTimeout(A.current), null), k.current && O.current && !k.current.matches(":popover-open") && k.current.showPopover();
43
- }, [k, O]), P = i.useCallback(() => {
44
- A.current = setTimeout(() => {
45
- k.current && O.current && k.current.matches(":popover-open") && k.current.hidePopover();
77
+ ], b = (e) => y.some((t) => e.matches(t)) || e.hasAttribute("role") && e.getAttribute("role") === "button", x = i.createContext({}), S = i.forwardRef(({ direction: m = "s", delay: h = "short", text: y, type: S = "description", children: C, id: w, className: T, ...E }, D) => {
78
+ let O = t(w), k = a.only(C) ?? null, A = n(D), j = s(null), M = s(null), N = s(null), [P, F] = c(m), I = i.useCallback(() => {
79
+ M.current &&= (clearTimeout(M.current), null);
80
+ let e = A.current?.getAttribute("aria-haspopup");
81
+ A.current?.getAttribute("aria-expanded") === "true" && e !== null && e !== "false" || (N.current &&= (clearTimeout(N.current), null), j.current && A.current && typeof j.current.showPopover == "function" && !j.current.matches(":popover-open") && j.current.showPopover());
82
+ }, [j, A]), L = i.useCallback(() => {
83
+ M.current && clearTimeout(M.current), M.current = setTimeout(() => {
84
+ M.current = null, I();
85
+ }, v[h]);
86
+ }, [h, I]), R = i.useCallback(() => {
87
+ M.current &&= (clearTimeout(M.current), null), N.current = setTimeout(() => {
88
+ j.current && A.current && typeof j.current.hidePopover == "function" && j.current.matches(":popover-open") && j.current.hidePopover();
46
89
  }, 200);
47
- }, [k, O]);
90
+ }, [j, A]);
48
91
  return o(() => () => {
49
- A.current && clearTimeout(A.current);
50
- }, [A]), o(() => {
51
- if (!k.current || !O.current) return;
52
- let e = _(O.current), t = O.current.childNodes, n = Array.from(t).some((e) => e instanceof HTMLElement && _(e));
53
- if (!(e || n) && (process.env.NODE_ENV === "development" || process.env.NODE_ENV === "test") && console.warn("The `Tooltip` component expects a single React element that contains interactive content. Consider using a `<button>` or equivalent interactive element instead."), b === "label") {
54
- let e = O.current.hasAttribute("aria-label"), t = Array.from(O.current.childNodes).some((e) => e instanceof HTMLElement && e.hasAttribute("aria-label"));
92
+ M.current && clearTimeout(M.current), N.current && clearTimeout(N.current);
93
+ }, [N]), o(() => {
94
+ if (!j.current || !A.current) return;
95
+ let e = b(A.current), t = A.current.childNodes, n = Array.from(t).some((e) => e instanceof HTMLElement && b(e));
96
+ if (!(e || n) && (process.env.NODE_ENV === "development" || process.env.NODE_ENV === "test") && console.warn("The `Tooltip` component expects a single React element that contains interactive content. Consider using a `<button>` or equivalent interactive element instead."), S === "label") {
97
+ let e = A.current.hasAttribute("aria-label"), t = Array.from(A.current.childNodes).some((e) => e instanceof HTMLElement && e.hasAttribute("aria-label"));
55
98
  (e || t) && (process.env.NODE_ENV === "development" || process.env.NODE_ENV === "test") && console.warn("The label type `Tooltip` is going to be used here to label the trigger element. Please remove the aria-label from the trigger element.");
56
99
  }
57
100
  typeof window < "u" && (p() || f());
58
- let r = k.current, i = O.current;
101
+ let r = j.current, i = A.current;
59
102
  r.setAttribute("popover", "auto");
60
103
  let a = {
61
- side: m[g].side,
62
- align: m[g].align,
104
+ side: g[m].side,
105
+ align: g[m].align,
63
106
  anchorOffset: 8
64
107
  }, o = () => {
65
108
  let { top: e, left: t, anchorAlign: n, anchorSide: o } = d(r, i, a);
66
109
  r.style.top = `${e}px`, r.style.left = `${t}px`;
67
- let s = h[`${o}-${n}`];
68
- M(s);
110
+ let s = r.getBoundingClientRect(), c = i.getBoundingClientRect(), l = o === "outside-top" || o === "outside-bottom", u = l ? c.left + c.width / 2 - s.left : c.top + c.height / 2 - s.top, f = l ? s.width : s.height, p = Math.max(0, Math.min(u, f));
111
+ r.style.setProperty("--p", `${p}px`);
112
+ let m = _[`${o}-${n}`];
113
+ F(m);
69
114
  };
70
115
  return r.addEventListener("toggle", o), () => {
71
116
  r.removeEventListener("toggle", o);
72
117
  };
73
118
  }, [
74
- k,
75
- O,
76
- g,
77
- b
78
- ]), /* @__PURE__ */ u(v.Provider, {
79
- value: { tooltipId: E },
80
- children: [D && i.cloneElement(D, {
81
- ref: O,
82
- "aria-describedby": b === "description" ? E : D.props["aria-describedby"],
83
- "aria-labelledby": b === "label" ? E : D.props["aria-labelledby"],
119
+ j,
120
+ A,
121
+ m,
122
+ S
123
+ ]), /* @__PURE__ */ u(x.Provider, {
124
+ value: { tooltipId: O },
125
+ children: [k && i.cloneElement(k, {
126
+ ref: A,
127
+ "aria-describedby": S === "description" ? O : k.props["aria-describedby"],
128
+ "aria-labelledby": S === "label" ? O : k.props["aria-labelledby"],
84
129
  onBlur: (e) => {
85
- P(), D.props.onBlur?.(e);
130
+ R(), k.props.onBlur?.(e);
86
131
  },
87
132
  onFocus: (e) => {
88
- N(), D.props.onFocus?.(e);
133
+ I(), k.props.onFocus?.(e);
89
134
  },
90
135
  onMouseEnter: (e) => {
91
- N(), D.props.onMouseEnter?.(e);
136
+ L(), k.props.onMouseEnter?.(e);
92
137
  },
93
138
  onMouseLeave: (e) => {
94
- P(), D.props.onMouseLeave?.(e);
139
+ R(), k.props.onMouseLeave?.(e);
95
140
  }
96
141
  }), /* @__PURE__ */ l("div", {
97
- className: e(r.Tooltip, C),
98
- ref: k,
99
- "data-direction": j,
100
- ...w,
101
- role: b === "description" ? "tooltip" : void 0,
102
- "aria-hidden": b === "label" || void 0,
103
- id: E,
104
- onMouseEnter: N,
105
- onMouseLeave: P,
142
+ className: e(r.Tooltip, T),
143
+ ref: j,
144
+ "data-direction": P,
145
+ ...E,
146
+ role: S === "description" ? "tooltip" : void 0,
147
+ "aria-hidden": S === "label" || void 0,
148
+ id: O,
149
+ onMouseEnter: I,
150
+ onMouseLeave: R,
106
151
  children: y
107
152
  })]
108
153
  });
109
154
  });
110
155
  //#endregion
111
- export { y as Tooltip, v as TooltipContext };
156
+ export { S as Tooltip, x as TooltipContext, h as TooltipDelays, m as TooltipDirections };
112
157
 
113
158
  //# sourceMappingURL=Tooltip.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Tooltip.js","names":[],"sources":["../../src/Tooltip/Tooltip.tsx"],"sourcesContent":["import React, {Children, useEffect, useRef, useState} from 'react'\nimport {clsx} from 'clsx'\nimport {useId} from '../hooks/useId'\nimport {getAnchoredPosition} from '@primer/behaviors'\nimport type {AnchorSide, AnchorAlignment} from '@primer/behaviors'\nimport {isSupported, apply} from '@oddbird/popover-polyfill/fn'\nimport {useProvidedRefOrCreate} from '../hooks/useRef'\n\n/** * Main Stylesheet (as a CSS Module) */\nimport styles from './Tooltip.module.css'\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/tooltip/colors-with-modes.css'\nimport {BaseProps} from '../component-helpers'\n\ntype TooltipDirection = 'n' | 'e' | 's' | 'w'\nexport type TooltipProps = {\n direction?: TooltipDirection\n text: string\n type?: 'label' | 'description'\n children?: React.ReactNode\n} & BaseProps<HTMLDivElement>\n\nexport type TriggerPropsType = {\n 'aria-describedby'?: string\n 'aria-labelledby'?: string\n 'aria-label'?: string\n onBlur?: React.FocusEventHandler\n onFocus?: React.FocusEventHandler\n onMouseEnter?: React.MouseEventHandler\n onMouseLeave?: React.MouseEventHandler\n ref?: React.RefObject<HTMLElement | null>\n}\n\n// map tooltip direction to anchoredPosition props\nconst directionToPosition: Record<TooltipDirection, {side: AnchorSide; align: AnchorAlignment}> = {\n n: {side: 'outside-top', align: 'center'},\n e: {side: 'outside-right', align: 'center'},\n s: {side: 'outside-bottom', align: 'center'},\n w: {side: 'outside-left', align: 'center'},\n}\n\n// map anchoredPosition props to tooltip direction\nconst positionToDirection: Record<string, TooltipDirection> = {\n 'outside-top-center': 'n',\n 'outside-right-center': 'e',\n 'outside-bottom-center': 's',\n 'outside-left-center': 'w',\n}\n\n// The list is from GitHub's custom-axe-rules https://github.com/github/github/blob/master/app/assets/modules/github/axe-custom-rules.ts#L3\nconst interactiveElements = [\n 'a[href]',\n 'button:not(:disabled)',\n 'summary',\n 'select',\n 'input:not([type=hidden])',\n 'textarea',\n]\n\nconst isInteractive = (element: HTMLElement) => {\n return (\n interactiveElements.some(selector => element.matches(selector)) ||\n (element.hasAttribute('role') && element.getAttribute('role') === 'button')\n )\n}\nexport const TooltipContext = React.createContext<{tooltipId?: string}>({})\n\nexport const Tooltip = React.forwardRef(\n ({direction = 's', text, type = 'description', children, id, className, ...rest}: TooltipProps, forwardedRef) => {\n const tooltipId = useId(id)\n const child = (Children.only(children) as React.ReactElement<TriggerPropsType> | null) ?? null\n const triggerRef = useProvidedRefOrCreate(forwardedRef as React.RefObject<HTMLElement | null> | null)\n const tooltipElRef = useRef<HTMLDivElement>(null)\n // Used to delay the closing of the tooltip to make sure the user can move the mouse from the trigger to the tooltip\n const closeTooltipTimeoutRef = useRef<NodeJS.Timeout | null>(null)\n const tooltipCloseTimeout = 200\n\n const [calculatedDirection, setCalculatedDirection] = useState<TooltipDirection>(direction)\n\n const openTooltip = React.useCallback(() => {\n if (closeTooltipTimeoutRef.current) {\n clearTimeout(closeTooltipTimeoutRef.current)\n closeTooltipTimeoutRef.current = null\n }\n\n if (tooltipElRef.current && triggerRef.current && !tooltipElRef.current.matches(':popover-open')) {\n tooltipElRef.current.showPopover()\n }\n }, [tooltipElRef, triggerRef])\n\n const closeTooltip = React.useCallback(() => {\n closeTooltipTimeoutRef.current = setTimeout(() => {\n if (tooltipElRef.current && triggerRef.current && tooltipElRef.current.matches(':popover-open')) {\n tooltipElRef.current.hidePopover()\n }\n }, tooltipCloseTimeout)\n }, [tooltipElRef, triggerRef])\n\n useEffect(() => {\n return () => {\n if (closeTooltipTimeoutRef.current) {\n clearTimeout(closeTooltipTimeoutRef.current)\n }\n }\n }, [closeTooltipTimeoutRef])\n\n useEffect(() => {\n if (!tooltipElRef.current || !triggerRef.current) return\n /*\n * ACCESSIBILITY CHECKS\n */\n // Has trigger element or any of its children interactive elements?\n const isTriggerInteractive = isInteractive(triggerRef.current)\n const triggerChildren = triggerRef.current.childNodes\n const hasInteractiveChild = Array.from(triggerChildren).some(triggerChild => {\n return triggerChild instanceof HTMLElement && isInteractive(triggerChild)\n })\n\n if (\n !(isTriggerInteractive || hasInteractiveChild) &&\n (process.env.NODE_ENV === 'development' || process.env.NODE_ENV === 'test')\n ) {\n // eslint-disable-next-line no-console\n console.warn(\n 'The `Tooltip` component expects a single React element that contains interactive content. Consider using a `<button>` or equivalent interactive element instead.',\n )\n }\n\n // If the tooltip is used for labelling the interactive element, the trigger element or any of its children should not have aria-label\n if (type === 'label') {\n const hasAriaLabel = triggerRef.current.hasAttribute('aria-label')\n const hasAriaLabelInChildren = Array.from(triggerRef.current.childNodes).some(\n triggerChild => triggerChild instanceof HTMLElement && triggerChild.hasAttribute('aria-label'),\n )\n\n if (\n (hasAriaLabel || hasAriaLabelInChildren) &&\n (process.env.NODE_ENV === 'development' || process.env.NODE_ENV === 'test')\n ) {\n // eslint-disable-next-line no-console\n console.warn(\n 'The label type `Tooltip` is going to be used here to label the trigger element. Please remove the aria-label from the trigger element.',\n )\n }\n }\n\n // SSR safe polyfill apply\n if (typeof window !== 'undefined') {\n if (!isSupported()) {\n apply()\n }\n }\n\n /*\n * TOOLTIP POSITIONING\n */\n const tooltip = tooltipElRef.current\n const trigger = triggerRef.current\n tooltip.setAttribute('popover', 'auto')\n const settings = {\n side: directionToPosition[direction].side,\n align: directionToPosition[direction].align,\n anchorOffset: 8,\n }\n\n const positionSet = () => {\n const {top, left, anchorAlign, anchorSide} = getAnchoredPosition(tooltip, trigger, settings)\n\n tooltip.style.top = `${top}px`\n tooltip.style.left = `${left}px`\n // This is required to make sure the popover is positioned correctly i.e. when there is not enough space on the specified direction, we set a new direction to position the ::after\n const calculatedDirectionString = positionToDirection[`${anchorSide}-${anchorAlign}` as string]\n setCalculatedDirection(calculatedDirectionString)\n }\n\n tooltip.addEventListener('toggle', positionSet)\n\n return () => {\n tooltip.removeEventListener('toggle', positionSet)\n }\n }, [tooltipElRef, triggerRef, direction, type])\n\n return (\n <TooltipContext.Provider value={{tooltipId}}>\n {child &&\n React.cloneElement(child, {\n ref: triggerRef,\n // If it is a type description, we use tooltip to describe the trigger\n 'aria-describedby': type === 'description' ? tooltipId : child.props['aria-describedby'],\n // If it is a label type, we use tooltip to label the trigger\n 'aria-labelledby': type === 'label' ? tooltipId : child.props['aria-labelledby'],\n onBlur: (event: React.FocusEvent) => {\n closeTooltip()\n child.props.onBlur?.(event)\n },\n onFocus: (event: React.FocusEvent) => {\n openTooltip()\n child.props.onFocus?.(event)\n },\n onMouseEnter: (event: React.MouseEvent) => {\n openTooltip()\n child.props.onMouseEnter?.(event)\n },\n onMouseLeave: (event: React.MouseEvent) => {\n closeTooltip()\n child.props.onMouseLeave?.(event)\n },\n })}\n <div\n className={clsx(styles.Tooltip, className)}\n ref={tooltipElRef}\n data-direction={calculatedDirection}\n {...rest}\n // Only need tooltip role if the tooltip is a description for supplementary information\n role={type === 'description' ? 'tooltip' : undefined}\n // stop AT from announcing the tooltip twice when it is a label type because it will be announced with \"aria-labelledby\"\n aria-hidden={type === 'label' ? true : undefined}\n id={tooltipId}\n // mouse leave and enter on the tooltip itself is needed to keep the tooltip open when the mouse is over the tooltip\n onMouseEnter={openTooltip}\n onMouseLeave={closeTooltip}\n >\n {text}\n </div>\n </TooltipContext.Provider>\n )\n },\n)\n"],"mappings":";;;;;;;;;;AAiCA,IAAM,IAA4F;CAChG,GAAG;EAAC,MAAM;EAAe,OAAO;CAAQ;CACxC,GAAG;EAAC,MAAM;EAAiB,OAAO;CAAQ;CAC1C,GAAG;EAAC,MAAM;EAAkB,OAAO;CAAQ;CAC3C,GAAG;EAAC,MAAM;EAAgB,OAAO;CAAQ;AAC3C,GAGM,IAAwD;CAC5D,sBAAsB;CACtB,wBAAwB;CACxB,yBAAyB;CACzB,uBAAuB;AACzB,GAGM,IAAsB;CAC1B;CACA;CACA;CACA;CACA;CACA;AACF,GAEM,KAAiB,MAEnB,EAAoB,MAAK,MAAY,EAAQ,QAAQ,CAAQ,CAAC,KAC7D,EAAQ,aAAa,MAAM,KAAK,EAAQ,aAAa,MAAM,MAAM,UAGzD,IAAiB,EAAM,cAAoC,CAAC,CAAC,GAE7D,IAAU,EAAM,YAC1B,EAAC,eAAY,KAAK,SAAM,UAAO,eAAe,aAAU,OAAI,cAAW,GAAG,KAAqB,MAAiB;CAC/G,IAAM,IAAY,EAAM,CAAE,GACpB,IAAS,EAAS,KAAK,CAAQ,KAAqD,MACpF,IAAa,EAAuB,CAA0D,GAC9F,IAAe,EAAuB,IAAI,GAE1C,IAAyB,EAA8B,IAAI,GAG3D,CAAC,GAAqB,KAA0B,EAA2B,CAAS,GAEpF,IAAc,EAAM,kBAAkB;EAM1C,AALA,AAEE,EAAuB,aADvB,aAAa,EAAuB,OAAO,GACV,OAG/B,EAAa,WAAW,EAAW,WAAW,CAAC,EAAa,QAAQ,QAAQ,eAAe,KAC7F,EAAa,QAAQ,YAAY;CAErC,GAAG,CAAC,GAAc,CAAU,CAAC,GAEvB,IAAe,EAAM,kBAAkB;EAC3C,EAAuB,UAAU,iBAAiB;GAChD,AAAI,EAAa,WAAW,EAAW,WAAW,EAAa,QAAQ,QAAQ,eAAe,KAC5F,EAAa,QAAQ,YAAY;EAErC,GAAG,GAAmB;CACxB,GAAG,CAAC,GAAc,CAAU,CAAC;CAsF7B,OApFA,cACe;EACX,AAAI,EAAuB,WACzB,aAAa,EAAuB,OAAO;CAE/C,GACC,CAAC,CAAsB,CAAC,GAE3B,QAAgB;EACd,IAAI,CAAC,EAAa,WAAW,CAAC,EAAW,SAAS;EAKlD,IAAM,IAAuB,EAAc,EAAW,OAAO,GACvD,IAAkB,EAAW,QAAQ,YACrC,IAAsB,MAAM,KAAK,CAAe,CAAC,CAAC,MAAK,MACpD,aAAwB,eAAe,EAAc,CAAY,CACzE;EAaD,IAVE,EAAE,KAAwB,OAAA,QAAA,IAAA,aACA,iBAAA,QAAA,IAAA,aAA0C,WAGpE,QAAQ,KACN,kKACF,GAIE,MAAS,SAAS;GACpB,IAAM,IAAe,EAAW,QAAQ,aAAa,YAAY,GAC3D,IAAyB,MAAM,KAAK,EAAW,QAAQ,UAAU,CAAC,CAAC,MACvE,MAAgB,aAAwB,eAAe,EAAa,aAAa,YAAY,CAC/F;GAEA,CACG,KAAgB,OAAA,QAAA,IAAA,aACS,iBAAA,QAAA,IAAA,aAA0C,WAGpE,QAAQ,KACN,wIACF;EAEJ;EAGA,AAAI,OAAO,SAAW,QACf,EAAY,KACf,EAAM;EAOV,IAAM,IAAU,EAAa,SACvB,IAAU,EAAW;EAC3B,EAAQ,aAAa,WAAW,MAAM;EACtC,IAAM,IAAW;GACf,MAAM,EAAoB,EAAU,CAAC;GACrC,OAAO,EAAoB,EAAU,CAAC;GACtC,cAAc;EAChB,GAEM,UAAoB;GACxB,IAAM,EAAC,QAAK,SAAM,gBAAa,kBAAc,EAAoB,GAAS,GAAS,CAAQ;GAG3F,AADA,EAAQ,MAAM,MAAM,GAAG,EAAI,KAC3B,EAAQ,MAAM,OAAO,GAAG,EAAK;GAE7B,IAAM,IAA4B,EAAoB,GAAG,EAAW,GAAG;GACvE,EAAuB,CAAyB;EAClD;EAIA,OAFA,EAAQ,iBAAiB,UAAU,CAAW,SAEjC;GACX,EAAQ,oBAAoB,UAAU,CAAW;EACnD;CACF,GAAG;EAAC;EAAc;EAAY;EAAW;CAAI,CAAC,GAG5C,kBAAC,EAAe,UAAhB;EAAyB,OAAO,EAAC,aAAS;YAA1C,CACG,KACC,EAAM,aAAa,GAAO;GACxB,KAAK;GAEL,oBAAoB,MAAS,gBAAgB,IAAY,EAAM,MAAM;GAErE,mBAAmB,MAAS,UAAU,IAAY,EAAM,MAAM;GAC9D,SAAS,MAA4B;IAEnC,AADA,EAAa,GACb,EAAM,MAAM,SAAS,CAAK;GAC5B;GACA,UAAU,MAA4B;IAEpC,AADA,EAAY,GACZ,EAAM,MAAM,UAAU,CAAK;GAC7B;GACA,eAAe,MAA4B;IAEzC,AADA,EAAY,GACZ,EAAM,MAAM,eAAe,CAAK;GAClC;GACA,eAAe,MAA4B;IAEzC,AADA,EAAa,GACb,EAAM,MAAM,eAAe,CAAK;GAClC;EACF,CAAC,GACH,kBAAC,OAAD;GACE,WAAW,EAAK,EAAO,SAAS,CAAS;GACzC,KAAK;GACL,kBAAgB;GAChB,GAAI;GAEJ,MAAM,MAAS,gBAAgB,YAAY,KAAA;GAE3C,eAAa,MAAS,WAAiB,KAAA;GACvC,IAAI;GAEJ,cAAc;GACd,cAAc;aAEb;EACE,CAAA,CACkB;;AAE7B,CACF"}
1
+ {"version":3,"file":"Tooltip.js","names":[],"sources":["../../src/Tooltip/Tooltip.tsx"],"sourcesContent":["import React, {Children, useEffect, useRef, useState} from 'react'\nimport {clsx} from 'clsx'\nimport {useId} from '../hooks/useId'\nimport {getAnchoredPosition} from '@primer/behaviors'\nimport type {AnchorSide, AnchorAlignment} from '@primer/behaviors'\nimport {isSupported, apply} from '@oddbird/popover-polyfill/fn'\nimport {useProvidedRefOrCreate} from '../hooks/useRef'\n\n/** * Main Stylesheet (as a CSS Module) */\nimport styles from './Tooltip.module.css'\nimport '@primer/brand-primitives/lib/design-tokens/css/tokens/functional/components/tooltip/colors-with-modes.css'\nimport {BaseProps} from '../component-helpers'\n\nexport const TooltipDirections = ['nw', 'n', 'ne', 'e', 'se', 's', 'sw', 'w'] as const\nexport const TooltipDelays = ['short', 'medium', 'long'] as const\nexport type TooltipDirection = (typeof TooltipDirections)[number]\nexport type TooltipDelay = (typeof TooltipDelays)[number]\nexport type TooltipProps = {\n direction?: TooltipDirection\n delay?: TooltipDelay\n text: string\n type?: 'label' | 'description'\n children?: React.ReactNode\n} & BaseProps<HTMLDivElement>\n\nexport type TriggerPropsType = {\n 'aria-describedby'?: string\n 'aria-labelledby'?: string\n 'aria-label'?: string\n onBlur?: React.FocusEventHandler\n onFocus?: React.FocusEventHandler\n onMouseEnter?: React.MouseEventHandler\n onMouseLeave?: React.MouseEventHandler\n ref?: React.RefObject<HTMLElement | null>\n}\n\n// map tooltip direction to anchoredPosition props\nconst directionToPosition: Record<TooltipDirection, {side: AnchorSide; align: AnchorAlignment}> = {\n nw: {side: 'outside-top', align: 'end'},\n n: {side: 'outside-top', align: 'center'},\n ne: {side: 'outside-top', align: 'start'},\n e: {side: 'outside-right', align: 'center'},\n se: {side: 'outside-bottom', align: 'start'},\n s: {side: 'outside-bottom', align: 'center'},\n sw: {side: 'outside-bottom', align: 'end'},\n w: {side: 'outside-left', align: 'center'},\n}\n\n// map anchoredPosition props to tooltip direction\nconst positionToDirection: Record<string, TooltipDirection> = {\n 'outside-top-end': 'nw',\n 'outside-top-center': 'n',\n 'outside-top-start': 'ne',\n 'outside-right-center': 'e',\n 'outside-bottom-start': 'se',\n 'outside-bottom-center': 's',\n 'outside-bottom-end': 'sw',\n 'outside-left-center': 'w',\n}\n\nconst tooltipDelayMap: Record<TooltipDelay, number> = {\n short: 50,\n medium: 400,\n long: 1200,\n}\n\n// The list is from GitHub's custom-axe-rules https://github.com/github/github/blob/master/app/assets/modules/github/axe-custom-rules.ts#L3\nconst interactiveElements = [\n 'a[href]',\n 'button:not(:disabled)',\n 'summary',\n 'select',\n 'input:not([type=hidden])',\n 'textarea',\n]\n\nconst isInteractive = (element: HTMLElement) => {\n return (\n interactiveElements.some(selector => element.matches(selector)) ||\n (element.hasAttribute('role') && element.getAttribute('role') === 'button')\n )\n}\nexport const TooltipContext = React.createContext<{tooltipId?: string}>({})\n\nexport const Tooltip = React.forwardRef(\n (\n {direction = 's', delay = 'short', text, type = 'description', children, id, className, ...rest}: TooltipProps,\n forwardedRef,\n ) => {\n const tooltipId = useId(id)\n const child = (Children.only(children) as React.ReactElement<TriggerPropsType> | null) ?? null\n const triggerRef = useProvidedRefOrCreate(forwardedRef as React.RefObject<HTMLElement | null> | null)\n const tooltipElRef = useRef<HTMLDivElement>(null)\n const openTooltipTimeoutRef = useRef<NodeJS.Timeout | null>(null)\n // Used to delay the closing of the tooltip to make sure the user can move the mouse from the trigger to the tooltip\n const closeTooltipTimeoutRef = useRef<NodeJS.Timeout | null>(null)\n const tooltipCloseTimeout = 200\n\n const [calculatedDirection, setCalculatedDirection] = useState<TooltipDirection>(direction)\n\n const openTooltip = React.useCallback(() => {\n if (openTooltipTimeoutRef.current) {\n clearTimeout(openTooltipTimeoutRef.current)\n openTooltipTimeoutRef.current = null\n }\n\n const ariaHasPopup = triggerRef.current?.getAttribute('aria-haspopup')\n const hasActivePopup =\n triggerRef.current?.getAttribute('aria-expanded') === 'true' &&\n ariaHasPopup !== null &&\n ariaHasPopup !== 'false'\n if (hasActivePopup) return\n\n if (closeTooltipTimeoutRef.current) {\n clearTimeout(closeTooltipTimeoutRef.current)\n closeTooltipTimeoutRef.current = null\n }\n\n if (\n tooltipElRef.current &&\n triggerRef.current &&\n typeof tooltipElRef.current.showPopover === 'function' &&\n !tooltipElRef.current.matches(':popover-open')\n ) {\n tooltipElRef.current.showPopover()\n }\n }, [tooltipElRef, triggerRef])\n\n const openTooltipWithDelay = React.useCallback(() => {\n if (openTooltipTimeoutRef.current) {\n clearTimeout(openTooltipTimeoutRef.current)\n }\n\n openTooltipTimeoutRef.current = setTimeout(() => {\n openTooltipTimeoutRef.current = null\n openTooltip()\n }, tooltipDelayMap[delay])\n }, [delay, openTooltip])\n\n const closeTooltip = React.useCallback(() => {\n if (openTooltipTimeoutRef.current) {\n clearTimeout(openTooltipTimeoutRef.current)\n openTooltipTimeoutRef.current = null\n }\n\n closeTooltipTimeoutRef.current = setTimeout(() => {\n if (\n tooltipElRef.current &&\n triggerRef.current &&\n typeof tooltipElRef.current.hidePopover === 'function' &&\n tooltipElRef.current.matches(':popover-open')\n ) {\n tooltipElRef.current.hidePopover()\n }\n }, tooltipCloseTimeout)\n }, [tooltipElRef, triggerRef])\n\n useEffect(() => {\n return () => {\n if (openTooltipTimeoutRef.current) {\n clearTimeout(openTooltipTimeoutRef.current)\n }\n if (closeTooltipTimeoutRef.current) {\n clearTimeout(closeTooltipTimeoutRef.current)\n }\n }\n }, [closeTooltipTimeoutRef])\n\n useEffect(() => {\n if (!tooltipElRef.current || !triggerRef.current) return\n /*\n * ACCESSIBILITY CHECKS\n */\n // Has trigger element or any of its children interactive elements?\n const isTriggerInteractive = isInteractive(triggerRef.current)\n const triggerChildren = triggerRef.current.childNodes\n const hasInteractiveChild = Array.from(triggerChildren).some(triggerChild => {\n return triggerChild instanceof HTMLElement && isInteractive(triggerChild)\n })\n\n if (\n !(isTriggerInteractive || hasInteractiveChild) &&\n (process.env.NODE_ENV === 'development' || process.env.NODE_ENV === 'test')\n ) {\n // eslint-disable-next-line no-console\n console.warn(\n 'The `Tooltip` component expects a single React element that contains interactive content. Consider using a `<button>` or equivalent interactive element instead.',\n )\n }\n\n // If the tooltip is used for labelling the interactive element, the trigger element or any of its children should not have aria-label\n if (type === 'label') {\n const hasAriaLabel = triggerRef.current.hasAttribute('aria-label')\n const hasAriaLabelInChildren = Array.from(triggerRef.current.childNodes).some(\n triggerChild => triggerChild instanceof HTMLElement && triggerChild.hasAttribute('aria-label'),\n )\n\n if (\n (hasAriaLabel || hasAriaLabelInChildren) &&\n (process.env.NODE_ENV === 'development' || process.env.NODE_ENV === 'test')\n ) {\n // eslint-disable-next-line no-console\n console.warn(\n 'The label type `Tooltip` is going to be used here to label the trigger element. Please remove the aria-label from the trigger element.',\n )\n }\n }\n\n // SSR safe polyfill apply\n if (typeof window !== 'undefined') {\n if (!isSupported()) {\n apply()\n }\n }\n\n /*\n * TOOLTIP POSITIONING\n */\n const tooltip = tooltipElRef.current\n const trigger = triggerRef.current\n tooltip.setAttribute('popover', 'auto')\n const settings = {\n side: directionToPosition[direction].side,\n align: directionToPosition[direction].align,\n anchorOffset: 8,\n }\n\n const positionSet = () => {\n const {top, left, anchorAlign, anchorSide} = getAnchoredPosition(tooltip, trigger, settings)\n\n tooltip.style.top = `${top}px`\n tooltip.style.left = `${left}px`\n\n const tooltipRect = tooltip.getBoundingClientRect()\n const triggerRect = trigger.getBoundingClientRect()\n const isVerticalPlacement = anchorSide === 'outside-top' || anchorSide === 'outside-bottom'\n const caretPosition = isVerticalPlacement\n ? triggerRect.left + triggerRect.width / 2 - tooltipRect.left\n : triggerRect.top + triggerRect.height / 2 - tooltipRect.top\n const tooltipSize = isVerticalPlacement ? tooltipRect.width : tooltipRect.height\n const constrainedCaretPosition = Math.max(0, Math.min(caretPosition, tooltipSize))\n\n tooltip.style.setProperty('--p', `${constrainedCaretPosition}px`)\n\n // This is required to make sure the popover is positioned correctly i.e. when there is not enough space on the specified direction, we set a new direction to position the ::after\n const calculatedDirectionString = positionToDirection[`${anchorSide}-${anchorAlign}` as string]\n setCalculatedDirection(calculatedDirectionString)\n }\n\n tooltip.addEventListener('toggle', positionSet)\n\n return () => {\n tooltip.removeEventListener('toggle', positionSet)\n }\n }, [tooltipElRef, triggerRef, direction, type])\n\n return (\n <TooltipContext.Provider value={{tooltipId}}>\n {child &&\n React.cloneElement(child, {\n ref: triggerRef,\n // If it is a type description, we use tooltip to describe the trigger\n 'aria-describedby': type === 'description' ? tooltipId : child.props['aria-describedby'],\n // If it is a label type, we use tooltip to label the trigger\n 'aria-labelledby': type === 'label' ? tooltipId : child.props['aria-labelledby'],\n onBlur: (event: React.FocusEvent) => {\n closeTooltip()\n child.props.onBlur?.(event)\n },\n onFocus: (event: React.FocusEvent) => {\n openTooltip()\n child.props.onFocus?.(event)\n },\n onMouseEnter: (event: React.MouseEvent) => {\n openTooltipWithDelay()\n child.props.onMouseEnter?.(event)\n },\n onMouseLeave: (event: React.MouseEvent) => {\n closeTooltip()\n child.props.onMouseLeave?.(event)\n },\n })}\n <div\n className={clsx(styles.Tooltip, className)}\n ref={tooltipElRef}\n data-direction={calculatedDirection}\n {...rest}\n // Only need tooltip role if the tooltip is a description for supplementary information\n role={type === 'description' ? 'tooltip' : undefined}\n // stop AT from announcing the tooltip twice when it is a label type because it will be announced with \"aria-labelledby\"\n aria-hidden={type === 'label' ? true : undefined}\n id={tooltipId}\n // mouse leave and enter on the tooltip itself is needed to keep the tooltip open when the mouse is over the tooltip\n onMouseEnter={openTooltip}\n onMouseLeave={closeTooltip}\n >\n {text}\n </div>\n </TooltipContext.Provider>\n )\n },\n)\n"],"mappings":";;;;;;;;;;AAaA,IAAa,IAAoB;CAAC;CAAM;CAAK;CAAM;CAAK;CAAM;CAAK;CAAM;AAAG,GAC/D,IAAgB;CAAC;CAAS;CAAU;AAAM,GAuBjD,IAA4F;CAChG,IAAI;EAAC,MAAM;EAAe,OAAO;CAAK;CACtC,GAAG;EAAC,MAAM;EAAe,OAAO;CAAQ;CACxC,IAAI;EAAC,MAAM;EAAe,OAAO;CAAO;CACxC,GAAG;EAAC,MAAM;EAAiB,OAAO;CAAQ;CAC1C,IAAI;EAAC,MAAM;EAAkB,OAAO;CAAO;CAC3C,GAAG;EAAC,MAAM;EAAkB,OAAO;CAAQ;CAC3C,IAAI;EAAC,MAAM;EAAkB,OAAO;CAAK;CACzC,GAAG;EAAC,MAAM;EAAgB,OAAO;CAAQ;AAC3C,GAGM,IAAwD;CAC5D,mBAAmB;CACnB,sBAAsB;CACtB,qBAAqB;CACrB,wBAAwB;CACxB,wBAAwB;CACxB,yBAAyB;CACzB,sBAAsB;CACtB,uBAAuB;AACzB,GAEM,IAAgD;CACpD,OAAO;CACP,QAAQ;CACR,MAAM;AACR,GAGM,IAAsB;CAC1B;CACA;CACA;CACA;CACA;CACA;AACF,GAEM,KAAiB,MAEnB,EAAoB,MAAK,MAAY,EAAQ,QAAQ,CAAQ,CAAC,KAC7D,EAAQ,aAAa,MAAM,KAAK,EAAQ,aAAa,MAAM,MAAM,UAGzD,IAAiB,EAAM,cAAoC,CAAC,CAAC,GAE7D,IAAU,EAAM,YAEzB,EAAC,eAAY,KAAK,WAAQ,SAAS,SAAM,UAAO,eAAe,aAAU,OAAI,cAAW,GAAG,KAC3F,MACG;CACH,IAAM,IAAY,EAAM,CAAE,GACpB,IAAS,EAAS,KAAK,CAAQ,KAAqD,MACpF,IAAa,EAAuB,CAA0D,GAC9F,IAAe,EAAuB,IAAI,GAC1C,IAAwB,EAA8B,IAAI,GAE1D,IAAyB,EAA8B,IAAI,GAG3D,CAAC,GAAqB,KAA0B,EAA2B,CAAS,GAEpF,IAAc,EAAM,kBAAkB;EAC1C,AAEE,EAAsB,aADtB,aAAa,EAAsB,OAAO,GACV;EAGlC,IAAM,IAAe,EAAW,SAAS,aAAa,eAAe;EAEnE,EAAW,SAAS,aAAa,eAAe,MAAM,UACtD,MAAiB,QACjB,MAAiB,YAGnB,AAEE,EAAuB,aADvB,aAAa,EAAuB,OAAO,GACV,OAIjC,EAAa,WACb,EAAW,WACX,OAAO,EAAa,QAAQ,eAAgB,cAC5C,CAAC,EAAa,QAAQ,QAAQ,eAAe,KAE7C,EAAa,QAAQ,YAAY;CAErC,GAAG,CAAC,GAAc,CAAU,CAAC,GAEvB,IAAuB,EAAM,kBAAkB;EAKnD,AAJI,EAAsB,WACxB,aAAa,EAAsB,OAAO,GAG5C,EAAsB,UAAU,iBAAiB;GAE/C,AADA,EAAsB,UAAU,MAChC,EAAY;EACd,GAAG,EAAgB,EAAM;CAC3B,GAAG,CAAC,GAAO,CAAW,CAAC,GAEjB,IAAe,EAAM,kBAAkB;EAM3C,AALA,AAEE,EAAsB,aADtB,aAAa,EAAsB,OAAO,GACV,OAGlC,EAAuB,UAAU,iBAAiB;GAChD,AACE,EAAa,WACb,EAAW,WACX,OAAO,EAAa,QAAQ,eAAgB,cAC5C,EAAa,QAAQ,QAAQ,eAAe,KAE5C,EAAa,QAAQ,YAAY;EAErC,GAAG,GAAmB;CACxB,GAAG,CAAC,GAAc,CAAU,CAAC;CAqG7B,OAnGA,cACe;EAIX,AAHI,EAAsB,WACxB,aAAa,EAAsB,OAAO,GAExC,EAAuB,WACzB,aAAa,EAAuB,OAAO;CAE/C,GACC,CAAC,CAAsB,CAAC,GAE3B,QAAgB;EACd,IAAI,CAAC,EAAa,WAAW,CAAC,EAAW,SAAS;EAKlD,IAAM,IAAuB,EAAc,EAAW,OAAO,GACvD,IAAkB,EAAW,QAAQ,YACrC,IAAsB,MAAM,KAAK,CAAe,CAAC,CAAC,MAAK,MACpD,aAAwB,eAAe,EAAc,CAAY,CACzE;EAaD,IAVE,EAAE,KAAwB,OAAA,QAAA,IAAA,aACA,iBAAA,QAAA,IAAA,aAA0C,WAGpE,QAAQ,KACN,kKACF,GAIE,MAAS,SAAS;GACpB,IAAM,IAAe,EAAW,QAAQ,aAAa,YAAY,GAC3D,IAAyB,MAAM,KAAK,EAAW,QAAQ,UAAU,CAAC,CAAC,MACvE,MAAgB,aAAwB,eAAe,EAAa,aAAa,YAAY,CAC/F;GAEA,CACG,KAAgB,OAAA,QAAA,IAAA,aACS,iBAAA,QAAA,IAAA,aAA0C,WAGpE,QAAQ,KACN,wIACF;EAEJ;EAGA,AAAI,OAAO,SAAW,QACf,EAAY,KACf,EAAM;EAOV,IAAM,IAAU,EAAa,SACvB,IAAU,EAAW;EAC3B,EAAQ,aAAa,WAAW,MAAM;EACtC,IAAM,IAAW;GACf,MAAM,EAAoB,EAAU,CAAC;GACrC,OAAO,EAAoB,EAAU,CAAC;GACtC,cAAc;EAChB,GAEM,UAAoB;GACxB,IAAM,EAAC,QAAK,SAAM,gBAAa,kBAAc,EAAoB,GAAS,GAAS,CAAQ;GAG3F,AADA,EAAQ,MAAM,MAAM,GAAG,EAAI,KAC3B,EAAQ,MAAM,OAAO,GAAG,EAAK;GAE7B,IAAM,IAAc,EAAQ,sBAAsB,GAC5C,IAAc,EAAQ,sBAAsB,GAC5C,IAAsB,MAAe,iBAAiB,MAAe,kBACrE,IAAgB,IAClB,EAAY,OAAO,EAAY,QAAQ,IAAI,EAAY,OACvD,EAAY,MAAM,EAAY,SAAS,IAAI,EAAY,KACrD,IAAc,IAAsB,EAAY,QAAQ,EAAY,QACpE,IAA2B,KAAK,IAAI,GAAG,KAAK,IAAI,GAAe,CAAW,CAAC;GAEjF,EAAQ,MAAM,YAAY,OAAO,GAAG,EAAyB,GAAG;GAGhE,IAAM,IAA4B,EAAoB,GAAG,EAAW,GAAG;GACvE,EAAuB,CAAyB;EAClD;EAIA,OAFA,EAAQ,iBAAiB,UAAU,CAAW,SAEjC;GACX,EAAQ,oBAAoB,UAAU,CAAW;EACnD;CACF,GAAG;EAAC;EAAc;EAAY;EAAW;CAAI,CAAC,GAG5C,kBAAC,EAAe,UAAhB;EAAyB,OAAO,EAAC,aAAS;YAA1C,CACG,KACC,EAAM,aAAa,GAAO;GACxB,KAAK;GAEL,oBAAoB,MAAS,gBAAgB,IAAY,EAAM,MAAM;GAErE,mBAAmB,MAAS,UAAU,IAAY,EAAM,MAAM;GAC9D,SAAS,MAA4B;IAEnC,AADA,EAAa,GACb,EAAM,MAAM,SAAS,CAAK;GAC5B;GACA,UAAU,MAA4B;IAEpC,AADA,EAAY,GACZ,EAAM,MAAM,UAAU,CAAK;GAC7B;GACA,eAAe,MAA4B;IAEzC,AADA,EAAqB,GACrB,EAAM,MAAM,eAAe,CAAK;GAClC;GACA,eAAe,MAA4B;IAEzC,AADA,EAAa,GACb,EAAM,MAAM,eAAe,CAAK;GAClC;EACF,CAAC,GACH,kBAAC,OAAD;GACE,WAAW,EAAK,EAAO,SAAS,CAAS;GACzC,KAAK;GACL,kBAAgB;GAChB,GAAI;GAEJ,MAAM,MAAS,gBAAgB,YAAY,KAAA;GAE3C,eAAa,MAAS,WAAiB,KAAA;GACvC,IAAI;GAEJ,cAAc;GACd,cAAc;aAEb;EACE,CAAA,CACkB;;AAE7B,CACF"}
@@ -0,0 +1 @@
1
+ .Primer_Brand__Tooltip-module__Tooltip___0Eipx{display:none}@media (forced-colors:active){.Primer_Brand__Tooltip-module__Tooltip___0Eipx{outline:var(--brand-borderWidth-thin) solid transparent}}.Primer_Brand__Tooltip-module__Tooltip___0Eipx[popover]{--offset:var(--base-size-8,--base-size-8);--b:1em;--h:.5em;--p:50%;--r:var(--brand-borderRadius-medium);--c:var(--brand-color-neutral-emphasisPlus);clip:auto;white-space:normal;width:max-content;font:normal normal var(--brand-text-size-100) / var(--brand-text-lineHeight-100) var(--brand-fontStack-sansSerif);-webkit-font-smoothing:subpixel-antialiased;color:var(--brand-Tooltip-color-default);text-align:center;word-wrap:break-word;background:var(--c);border-radius:var(--r);opacity:0;border:0;max-width:250px;margin:auto;padding:.5em .75em;position:absolute;inset:auto;overflow:visible}:is(.Primer_Brand__Tooltip-module__Tooltip___0Eipx[popover]:popover-open,.Primer_Brand__Tooltip-module__Tooltip___0Eipx[popover].Primer_Brand__Tooltip-module__\:popover-open___GpZlX){animation-name:Primer_Brand__Tooltip-module__tooltip-appear___hAyFD;animation-duration:.2s;animation-duration:var(--brand-animation-duration-faster,.2s);animation-timing-function:ease-in;animation-delay:0s;animation-fill-mode:forwards;display:block}.Primer_Brand__Tooltip-module__Tooltip___0Eipx:after{height:var(--offset);content:"";display:block;position:absolute;left:0;right:0}.Primer_Brand__Tooltip-module__Tooltip___0Eipx[data-direction=n],.Primer_Brand__Tooltip-module__Tooltip___0Eipx[data-direction=ne],.Primer_Brand__Tooltip-module__Tooltip___0Eipx[data-direction=nw]{-o-border-image:conic-gradient(var(--c) 0, var(--c) 0) 0 / var(--r) calc(100% - var(--p) - var(--b) / 2) 0 calc(var(--p) - var(--b) / 2) / 0 0 var(--h) 0;border-image:conic-gradient(var(--c) 0, var(--c) 0) fill 0 / var(--r) calc(100% - var(--p) - var(--b) / 2) 0 calc(var(--p) - var(--b) / 2) / 0 0 var(--h) 0;clip-path:polygon(0 100%, 0 0, 100% 0, 100% 100%, min(100%, var(--p) + var(--b) / 2) 100%, var(--p) calc(100% + var(--h)), max(0%, var(--p) - var(--b) / 2) 100%)}@supports (background:conic-gradient(red 0deg, red 0deg 1deg, red 2deg)){.Primer_Brand__Tooltip-module__Tooltip___0Eipx[data-direction=n],.Primer_Brand__Tooltip-module__Tooltip___0Eipx[data-direction=ne],.Primer_Brand__Tooltip-module__Tooltip___0Eipx[data-direction=nw]{-o-border-image:conic-gradient(var(--c) 0 0) 0 / var(--r) calc(100% - var(--p) - var(--b) / 2) 0 calc(var(--p) - var(--b) / 2) / 0 0 var(--h) 0;border-image:conic-gradient(var(--c) 0 0) fill 0 / var(--r) calc(100% - var(--p) - var(--b) / 2) 0 calc(var(--p) - var(--b) / 2) / 0 0 var(--h) 0}}.Primer_Brand__Tooltip-module__Tooltip___0Eipx[data-direction=s],.Primer_Brand__Tooltip-module__Tooltip___0Eipx[data-direction=se],.Primer_Brand__Tooltip-module__Tooltip___0Eipx[data-direction=sw]{-o-border-image:conic-gradient(var(--c) 0, var(--c) 0) 0/ 0 calc(100% - var(--p) - var(--b) / 2) var(--r) calc(var(--p) - var(--b) / 2) / var(--h) 0 0 0;border-image:conic-gradient(var(--c) 0, var(--c) 0) fill 0/ 0 calc(100% - var(--p) - var(--b) / 2) var(--r) calc(var(--p) - var(--b) / 2) / var(--h) 0 0 0;clip-path:polygon(0 0, 0 100%, 100% 100%, 100% 0, min(100%, var(--p) + var(--b) / 2) 0, var(--p) calc(-1 * var(--h)), max(0%, var(--p) - var(--b) / 2) 0)}@supports (background:conic-gradient(red 0deg, red 0deg 1deg, red 2deg)){.Primer_Brand__Tooltip-module__Tooltip___0Eipx[data-direction=s],.Primer_Brand__Tooltip-module__Tooltip___0Eipx[data-direction=se],.Primer_Brand__Tooltip-module__Tooltip___0Eipx[data-direction=sw]{-o-border-image:conic-gradient(var(--c) 0 0) 0/ 0 calc(100% - var(--p) - var(--b) / 2) var(--r) calc(var(--p) - var(--b) / 2) / var(--h) 0 0 0;border-image:conic-gradient(var(--c) 0 0) fill 0/ 0 calc(100% - var(--p) - var(--b) / 2) var(--r) calc(var(--p) - var(--b) / 2) / var(--h) 0 0 0}}.Primer_Brand__Tooltip-module__Tooltip___0Eipx[data-direction=w]{-o-border-image:conic-gradient(var(--c) 0, var(--c) 0) 0 / calc(var(--p) - var(--b) / 2) 0 calc(100% - var(--p) - var(--b) / 2) var(--r) / 0 var(--h) 0 0;border-image:conic-gradient(var(--c) 0, var(--c) 0) fill 0 / calc(var(--p) - var(--b) / 2) 0 calc(100% - var(--p) - var(--b) / 2) var(--r) / 0 var(--h) 0 0;clip-path:polygon(100% 100%, 0 100%, 0 0, 100% 0, 100% max(0%, var(--p) - var(--b) / 2), calc(100% + var(--h)) var(--p), 100% min(100%, var(--p) + var(--b) / 2))}@supports (background:conic-gradient(red 0deg, red 0deg 1deg, red 2deg)){.Primer_Brand__Tooltip-module__Tooltip___0Eipx[data-direction=w]{-o-border-image:conic-gradient(var(--c) 0 0) 0 / calc(var(--p) - var(--b) / 2) 0 calc(100% - var(--p) - var(--b) / 2) var(--r) / 0 var(--h) 0 0;border-image:conic-gradient(var(--c) 0 0) fill 0 / calc(var(--p) - var(--b) / 2) 0 calc(100% - var(--p) - var(--b) / 2) var(--r) / 0 var(--h) 0 0}}.Primer_Brand__Tooltip-module__Tooltip___0Eipx[data-direction=e]{-o-border-image:conic-gradient(var(--c) 0, var(--c) 0) 0 / calc(var(--p) - var(--b) / 2) var(--r) calc(100% - var(--p) - var(--b) / 2) 0/ 0 0 0 var(--h);border-image:conic-gradient(var(--c) 0, var(--c) 0) fill 0 / calc(var(--p) - var(--b) / 2) var(--r) calc(100% - var(--p) - var(--b) / 2) 0/ 0 0 0 var(--h);clip-path:polygon(0 100%, 100% 100%, 100% 0, 0 0, 0 max(0%, var(--p) - var(--b) / 2), calc(-1 * var(--h)) var(--p), 0 min(100%, var(--p) + var(--b) / 2))}@supports (background:conic-gradient(red 0deg, red 0deg 1deg, red 2deg)){.Primer_Brand__Tooltip-module__Tooltip___0Eipx[data-direction=e]{-o-border-image:conic-gradient(var(--c) 0 0) 0 / calc(var(--p) - var(--b) / 2) var(--r) calc(100% - var(--p) - var(--b) / 2) 0/ 0 0 0 var(--h);border-image:conic-gradient(var(--c) 0 0) fill 0 / calc(var(--p) - var(--b) / 2) var(--r) calc(100% - var(--p) - var(--b) / 2) 0/ 0 0 0 var(--h)}}.Primer_Brand__Tooltip-module__Tooltip___0Eipx[data-direction=ne],.Primer_Brand__Tooltip-module__Tooltip___0Eipx[data-direction=se]{--p:25%}.Primer_Brand__Tooltip-module__Tooltip___0Eipx[data-direction=nw],.Primer_Brand__Tooltip-module__Tooltip___0Eipx[data-direction=sw]{--p:75%}.Primer_Brand__Tooltip-module__Tooltip___0Eipx[data-direction=n]:after,.Primer_Brand__Tooltip-module__Tooltip___0Eipx[data-direction=ne]:after,.Primer_Brand__Tooltip-module__Tooltip___0Eipx[data-direction=nw]:after{top:100%}.Primer_Brand__Tooltip-module__Tooltip___0Eipx[data-direction=s]:after,.Primer_Brand__Tooltip-module__Tooltip___0Eipx[data-direction=se]:after,.Primer_Brand__Tooltip-module__Tooltip___0Eipx[data-direction=sw]:after{bottom:100%}.Primer_Brand__Tooltip-module__Tooltip___0Eipx[data-direction=w]:after{height:100%;width:var(--offset);content:"";display:block;position:absolute;bottom:0;left:100%}.Primer_Brand__Tooltip-module__Tooltip___0Eipx[data-direction=e]:after{height:100%;width:var(--offset);content:"";margin-left:calc(var(--offset) * -1px);display:block;position:absolute;bottom:0;right:100%}@keyframes Primer_Brand__Tooltip-module__tooltip-appear___hAyFD{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.Primer_Brand__Tooltip-module__Tooltip___0Eipx,.Primer_Brand__Tooltip-module__Tooltip___0Eipx:before,.Primer_Brand__Tooltip-module__Tooltip___0Eipx:after,.Primer_Brand__Tooltip-module__Tooltip___0Eipx *{animation-duration:0s!important}}
@@ -1,4 +1,4 @@
1
- import './Tooltip.module-5Km7qGR5.css';//#region src/Tooltip/Tooltip.module.css
1
+ import './Tooltip.module-CSt4tNaI.css';//#region src/Tooltip/Tooltip.module.css
2
2
  var e = "Primer_Brand__Tooltip-module__Tooltip___0Eipx", t = {
3
3
  Tooltip: e,
4
4
  ":popover-open": "Primer_Brand__Tooltip-module__:popover-open___GpZlX",