@expressivecss/expressive 0.14.1 → 0.16.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (603) hide show
  1. package/CHANGELOG.md +1589 -1
  2. package/README.md +9 -8
  3. package/dist/css/expressive.css +19304 -12021
  4. package/dist/css/expressive.css.map +1 -1
  5. package/dist/css/expressive.min.css +1 -1
  6. package/dist/css/expressive.min.css.map +1 -1
  7. package/dist/fonts/LICENSE-noto-sans-arabic +93 -0
  8. package/dist/fonts/LICENSE-noto-sans-hebrew +93 -0
  9. package/dist/fonts/LICENSE-noto-sans-thai +93 -0
  10. package/dist/fonts/material-symbols-outlined.woff2 +0 -0
  11. package/dist/fonts/material-symbols-rounded.woff2 +0 -0
  12. package/dist/fonts/material-symbols-sharp.woff2 +0 -0
  13. package/dist/fonts/noto-sans-arabic-arabic-400.woff2 +0 -0
  14. package/dist/fonts/noto-sans-arabic-arabic-500.woff2 +0 -0
  15. package/dist/fonts/noto-sans-arabic-arabic-700.woff2 +0 -0
  16. package/dist/fonts/noto-sans-cyrillic-400.woff2 +0 -0
  17. package/dist/fonts/noto-sans-cyrillic-500.woff2 +0 -0
  18. package/dist/fonts/noto-sans-cyrillic-700.woff2 +0 -0
  19. package/dist/fonts/noto-sans-cyrillic-ext-400.woff2 +0 -0
  20. package/dist/fonts/noto-sans-cyrillic-ext-500.woff2 +0 -0
  21. package/dist/fonts/noto-sans-cyrillic-ext-700.woff2 +0 -0
  22. package/dist/fonts/noto-sans-devanagari-400.woff2 +0 -0
  23. package/dist/fonts/noto-sans-devanagari-500.woff2 +0 -0
  24. package/dist/fonts/noto-sans-devanagari-700.woff2 +0 -0
  25. package/dist/fonts/noto-sans-greek-400.woff2 +0 -0
  26. package/dist/fonts/noto-sans-greek-500.woff2 +0 -0
  27. package/dist/fonts/noto-sans-greek-700.woff2 +0 -0
  28. package/dist/fonts/noto-sans-greek-ext-400.woff2 +0 -0
  29. package/dist/fonts/noto-sans-greek-ext-500.woff2 +0 -0
  30. package/dist/fonts/noto-sans-greek-ext-700.woff2 +0 -0
  31. package/dist/fonts/noto-sans-hebrew-hebrew-400.woff2 +0 -0
  32. package/dist/fonts/noto-sans-hebrew-hebrew-500.woff2 +0 -0
  33. package/dist/fonts/noto-sans-hebrew-hebrew-700.woff2 +0 -0
  34. package/dist/fonts/noto-sans-latin-700.woff2 +0 -0
  35. package/dist/fonts/noto-sans-latin-ext-400.woff2 +0 -0
  36. package/dist/fonts/noto-sans-latin-ext-500.woff2 +0 -0
  37. package/dist/fonts/noto-sans-latin-ext-700.woff2 +0 -0
  38. package/dist/fonts/noto-sans-thai-thai-400.woff2 +0 -0
  39. package/dist/fonts/noto-sans-thai-thai-500.woff2 +0 -0
  40. package/dist/fonts/noto-sans-thai-thai-700.woff2 +0 -0
  41. package/dist/fonts/noto-sans-vietnamese-400.woff2 +0 -0
  42. package/dist/fonts/noto-sans-vietnamese-500.woff2 +0 -0
  43. package/dist/fonts/noto-sans-vietnamese-700.woff2 +0 -0
  44. package/dist/fonts/roboto-cyrillic-400.woff2 +0 -0
  45. package/dist/fonts/roboto-cyrillic-500.woff2 +0 -0
  46. package/dist/fonts/roboto-cyrillic-700.woff2 +0 -0
  47. package/dist/fonts/roboto-cyrillic-ext-400.woff2 +0 -0
  48. package/dist/fonts/roboto-cyrillic-ext-500.woff2 +0 -0
  49. package/dist/fonts/roboto-cyrillic-ext-700.woff2 +0 -0
  50. package/dist/fonts/roboto-greek-400.woff2 +0 -0
  51. package/dist/fonts/roboto-greek-500.woff2 +0 -0
  52. package/dist/fonts/roboto-greek-700.woff2 +0 -0
  53. package/dist/fonts/roboto-greek-ext-400.woff2 +0 -0
  54. package/dist/fonts/roboto-greek-ext-500.woff2 +0 -0
  55. package/dist/fonts/roboto-greek-ext-700.woff2 +0 -0
  56. package/dist/fonts/roboto-latin-700.woff2 +0 -0
  57. package/dist/fonts/roboto-latin-ext-400.woff2 +0 -0
  58. package/dist/fonts/roboto-latin-ext-500.woff2 +0 -0
  59. package/dist/fonts/roboto-latin-ext-700.woff2 +0 -0
  60. package/dist/fonts/roboto-vietnamese-400.woff2 +0 -0
  61. package/dist/fonts/roboto-vietnamese-500.woff2 +0 -0
  62. package/dist/fonts/roboto-vietnamese-700.woff2 +0 -0
  63. package/dist/js/chunks/chunk-2CS6TITK.mjs +219 -0
  64. package/dist/js/chunks/chunk-2CS6TITK.mjs.map +7 -0
  65. package/dist/js/chunks/chunk-2RLBDFH4.mjs +108 -0
  66. package/dist/js/chunks/chunk-2RLBDFH4.mjs.map +7 -0
  67. package/dist/js/chunks/chunk-3L3QIYLC.mjs +85 -0
  68. package/dist/js/chunks/chunk-3L3QIYLC.mjs.map +7 -0
  69. package/dist/js/chunks/chunk-4EWGD4V2.mjs +75 -0
  70. package/dist/js/chunks/chunk-4EWGD4V2.mjs.map +7 -0
  71. package/dist/js/chunks/chunk-4IKVPCSU.mjs +7 -0
  72. package/dist/js/chunks/chunk-4IKVPCSU.mjs.map +7 -0
  73. package/dist/js/chunks/chunk-4PIXLDNJ.mjs +127 -0
  74. package/dist/js/chunks/chunk-4PIXLDNJ.mjs.map +7 -0
  75. package/dist/js/chunks/{chunk-A7ALMYUR.mjs → chunk-4QUCNFSD.mjs} +68 -125
  76. package/dist/js/chunks/chunk-4QUCNFSD.mjs.map +7 -0
  77. package/dist/js/chunks/{chunk-4TKTLGEM.mjs → chunk-4TRZ2AER.mjs} +35 -41
  78. package/dist/js/chunks/chunk-4TRZ2AER.mjs.map +7 -0
  79. package/dist/js/chunks/{chunk-BG6ZRB5H.mjs → chunk-5KIHWJI2.mjs} +40 -26
  80. package/dist/js/chunks/chunk-5KIHWJI2.mjs.map +7 -0
  81. package/dist/js/chunks/{chunk-YDCS5S3J.mjs → chunk-67ZPPKXS.mjs} +20 -33
  82. package/dist/js/chunks/chunk-67ZPPKXS.mjs.map +7 -0
  83. package/dist/js/chunks/{chunk-3DHK5CZU.mjs → chunk-6FSEUFVW.mjs} +40 -29
  84. package/dist/js/chunks/chunk-6FSEUFVW.mjs.map +7 -0
  85. package/dist/js/chunks/chunk-752ADW4M.mjs +225 -0
  86. package/dist/js/chunks/chunk-752ADW4M.mjs.map +7 -0
  87. package/dist/js/chunks/{chunk-GVGT6MIU.mjs → chunk-75E5EDJF.mjs} +3 -11
  88. package/dist/js/chunks/chunk-75E5EDJF.mjs.map +7 -0
  89. package/dist/js/chunks/{chunk-TBM3FT7G.mjs → chunk-7NLUI3RR.mjs} +148 -78
  90. package/dist/js/chunks/chunk-7NLUI3RR.mjs.map +7 -0
  91. package/dist/js/chunks/chunk-7W7TV6NY.mjs +108 -0
  92. package/dist/js/chunks/chunk-7W7TV6NY.mjs.map +7 -0
  93. package/dist/js/chunks/chunk-7YQBHTK3.mjs +225 -0
  94. package/dist/js/chunks/chunk-7YQBHTK3.mjs.map +7 -0
  95. package/dist/js/chunks/chunk-7YZ5CN3V.mjs +33 -0
  96. package/dist/js/chunks/chunk-7YZ5CN3V.mjs.map +7 -0
  97. package/dist/js/chunks/chunk-AI73GJKG.mjs +28 -0
  98. package/dist/js/chunks/chunk-AI73GJKG.mjs.map +7 -0
  99. package/dist/js/chunks/{chunk-NS2UMNZV.mjs → chunk-ANKFWNWT.mjs} +21 -45
  100. package/dist/js/chunks/chunk-ANKFWNWT.mjs.map +7 -0
  101. package/dist/js/chunks/{chunk-GIW4K4SE.mjs → chunk-B7DQFHA5.mjs} +37 -53
  102. package/dist/js/chunks/chunk-B7DQFHA5.mjs.map +7 -0
  103. package/dist/js/chunks/chunk-BIGU5RCJ.mjs +153 -0
  104. package/dist/js/chunks/chunk-BIGU5RCJ.mjs.map +7 -0
  105. package/dist/js/chunks/{chunk-GUB3TNO2.mjs → chunk-BPF3I2MN.mjs} +109 -27
  106. package/dist/js/chunks/chunk-BPF3I2MN.mjs.map +7 -0
  107. package/dist/js/chunks/chunk-CMGXGYUC.mjs +74 -0
  108. package/dist/js/chunks/chunk-CMGXGYUC.mjs.map +7 -0
  109. package/dist/js/chunks/{chunk-JIDMQGK6.mjs → chunk-CSYWKEK3.mjs} +322 -223
  110. package/dist/js/chunks/chunk-CSYWKEK3.mjs.map +7 -0
  111. package/dist/js/chunks/chunk-CZSQHXEV.mjs +227 -0
  112. package/dist/js/chunks/chunk-CZSQHXEV.mjs.map +7 -0
  113. package/dist/js/chunks/chunk-DZYVU75J.mjs +121 -0
  114. package/dist/js/chunks/chunk-DZYVU75J.mjs.map +7 -0
  115. package/dist/js/chunks/{chunk-QDAL4IYN.mjs → chunk-EC26RU2D.mjs} +11 -29
  116. package/dist/js/chunks/chunk-EC26RU2D.mjs.map +7 -0
  117. package/dist/js/chunks/{chunk-3GVFZ4XO.mjs → chunk-EVCVFEV3.mjs} +238 -152
  118. package/dist/js/chunks/chunk-EVCVFEV3.mjs.map +7 -0
  119. package/dist/js/chunks/chunk-FCNF4GRJ.mjs +445 -0
  120. package/dist/js/chunks/chunk-FCNF4GRJ.mjs.map +7 -0
  121. package/dist/js/chunks/chunk-GCWWEZKO.mjs +342 -0
  122. package/dist/js/chunks/chunk-GCWWEZKO.mjs.map +7 -0
  123. package/dist/js/chunks/chunk-GNRSYMVH.mjs +1 -0
  124. package/dist/js/chunks/chunk-GVZQH2H5.mjs +54 -0
  125. package/dist/js/chunks/chunk-GVZQH2H5.mjs.map +7 -0
  126. package/dist/js/chunks/chunk-GWZ76SR4.mjs +435 -0
  127. package/dist/js/chunks/chunk-GWZ76SR4.mjs.map +7 -0
  128. package/dist/js/chunks/{chunk-ZAS25YFD.mjs → chunk-ILDRRG7T.mjs} +21 -23
  129. package/dist/js/chunks/chunk-ILDRRG7T.mjs.map +7 -0
  130. package/dist/js/chunks/chunk-INLZWHLY.mjs +80 -0
  131. package/dist/js/chunks/chunk-INLZWHLY.mjs.map +7 -0
  132. package/dist/js/chunks/chunk-JUKBBN6P.mjs +175 -0
  133. package/dist/js/chunks/chunk-JUKBBN6P.mjs.map +7 -0
  134. package/dist/js/chunks/chunk-KYIEG4U3.mjs +730 -0
  135. package/dist/js/chunks/chunk-KYIEG4U3.mjs.map +7 -0
  136. package/dist/js/chunks/{chunk-KHV6DZXX.mjs → chunk-KZPSAXIU.mjs} +156 -46
  137. package/dist/js/chunks/chunk-KZPSAXIU.mjs.map +7 -0
  138. package/dist/js/chunks/chunk-LDXCC2L3.mjs +438 -0
  139. package/dist/js/chunks/chunk-LDXCC2L3.mjs.map +7 -0
  140. package/dist/js/chunks/chunk-NAC72P7R.mjs +137 -0
  141. package/dist/js/chunks/chunk-NAC72P7R.mjs.map +7 -0
  142. package/dist/js/chunks/chunk-NBJAUGPP.mjs +244 -0
  143. package/dist/js/chunks/chunk-NBJAUGPP.mjs.map +7 -0
  144. package/dist/js/chunks/chunk-NNHVANQA.mjs +113 -0
  145. package/dist/js/chunks/chunk-NNHVANQA.mjs.map +7 -0
  146. package/dist/js/chunks/chunk-NVQ5EHCU.mjs +376 -0
  147. package/dist/js/chunks/chunk-NVQ5EHCU.mjs.map +7 -0
  148. package/dist/js/chunks/{chunk-Z2NRKI7R.mjs → chunk-OP43LLIC.mjs} +44 -73
  149. package/dist/js/chunks/chunk-OP43LLIC.mjs.map +7 -0
  150. package/dist/js/chunks/chunk-OUCHKSAW.mjs +63 -0
  151. package/dist/js/chunks/chunk-OUCHKSAW.mjs.map +7 -0
  152. package/dist/js/chunks/{chunk-PM655FXL.mjs → chunk-OYNUDOHR.mjs} +20 -48
  153. package/dist/js/chunks/chunk-OYNUDOHR.mjs.map +7 -0
  154. package/dist/js/chunks/{chunk-UEZUJQ66.mjs → chunk-P6DRQ6KS.mjs} +36 -31
  155. package/dist/js/chunks/chunk-P6DRQ6KS.mjs.map +7 -0
  156. package/dist/js/chunks/chunk-PA7NU5AK.mjs +99 -0
  157. package/dist/js/chunks/chunk-PA7NU5AK.mjs.map +7 -0
  158. package/dist/js/chunks/chunk-QACZ6TUP.mjs +224 -0
  159. package/dist/js/chunks/chunk-QACZ6TUP.mjs.map +7 -0
  160. package/dist/js/chunks/{chunk-5HQSGDZ5.mjs → chunk-QXKWVHBD.mjs} +286 -203
  161. package/dist/js/chunks/chunk-QXKWVHBD.mjs.map +7 -0
  162. package/dist/js/chunks/{chunk-DAIU5SLG.mjs → chunk-ROH2HDB4.mjs} +7 -6
  163. package/dist/js/chunks/chunk-ROH2HDB4.mjs.map +7 -0
  164. package/dist/js/chunks/chunk-S23RJ3XY.mjs +86 -0
  165. package/dist/js/chunks/chunk-S23RJ3XY.mjs.map +7 -0
  166. package/dist/js/chunks/{chunk-FS7XY3HT.mjs → chunk-SPPHF7YZ.mjs} +36 -29
  167. package/dist/js/chunks/chunk-SPPHF7YZ.mjs.map +7 -0
  168. package/dist/js/chunks/chunk-T3BNSRP3.mjs +152 -0
  169. package/dist/js/chunks/chunk-T3BNSRP3.mjs.map +7 -0
  170. package/dist/js/chunks/chunk-TFABTUAZ.mjs +108 -0
  171. package/dist/js/chunks/chunk-TFABTUAZ.mjs.map +7 -0
  172. package/dist/js/chunks/chunk-U4B3VHFS.mjs +507 -0
  173. package/dist/js/chunks/chunk-U4B3VHFS.mjs.map +7 -0
  174. package/dist/js/chunks/chunk-UGJHCHXG.mjs +341 -0
  175. package/dist/js/chunks/chunk-UGJHCHXG.mjs.map +7 -0
  176. package/dist/js/chunks/chunk-VFV75DHF.mjs +70 -0
  177. package/dist/js/chunks/chunk-VFV75DHF.mjs.map +7 -0
  178. package/dist/js/chunks/{chunk-4HZMB7LI.mjs → chunk-VGY4M57S.mjs} +281 -135
  179. package/dist/js/chunks/chunk-VGY4M57S.mjs.map +7 -0
  180. package/dist/js/chunks/chunk-VH4BMAZS.mjs +167 -0
  181. package/dist/js/chunks/chunk-VH4BMAZS.mjs.map +7 -0
  182. package/dist/js/chunks/chunk-VJVQIXHC.mjs +123 -0
  183. package/dist/js/chunks/chunk-VJVQIXHC.mjs.map +7 -0
  184. package/dist/js/chunks/{chunk-S3XDFGSZ.mjs → chunk-VMY55K2X.mjs} +92 -141
  185. package/dist/js/chunks/chunk-VMY55K2X.mjs.map +7 -0
  186. package/dist/js/chunks/{chunk-UEXCIMJZ.mjs → chunk-VR3L2WN5.mjs} +11 -17
  187. package/dist/js/chunks/chunk-VR3L2WN5.mjs.map +7 -0
  188. package/dist/js/chunks/chunk-W6FAL3TI.mjs +38 -0
  189. package/dist/js/chunks/chunk-W6FAL3TI.mjs.map +7 -0
  190. package/dist/js/chunks/chunk-WU7XJ4RR.mjs +450 -0
  191. package/dist/js/chunks/chunk-WU7XJ4RR.mjs.map +7 -0
  192. package/dist/js/chunks/chunk-X7SDA2J5.mjs +116 -0
  193. package/dist/js/chunks/chunk-X7SDA2J5.mjs.map +7 -0
  194. package/dist/js/chunks/chunk-Y6H2X7ZC.mjs +209 -0
  195. package/dist/js/chunks/chunk-Y6H2X7ZC.mjs.map +7 -0
  196. package/dist/js/chunks/chunk-Y6TLRA3U.mjs +129 -0
  197. package/dist/js/chunks/chunk-Y6TLRA3U.mjs.map +7 -0
  198. package/dist/js/chunks/chunk-Z4GICXR2.mjs +190 -0
  199. package/dist/js/chunks/chunk-Z4GICXR2.mjs.map +7 -0
  200. package/dist/js/chunks/chunk-Z4OARDZ7.mjs +442 -0
  201. package/dist/js/chunks/chunk-Z4OARDZ7.mjs.map +7 -0
  202. package/dist/js/chunks/{chunk-MZ6Z24BX.mjs → chunk-ZJNLAGY5.mjs} +19 -34
  203. package/dist/js/chunks/chunk-ZJNLAGY5.mjs.map +7 -0
  204. package/dist/js/chunks/chunk-ZKWUWBUB.mjs +81 -0
  205. package/dist/js/chunks/chunk-ZKWUWBUB.mjs.map +7 -0
  206. package/dist/js/chunks/chunk-ZM3XBHWV.mjs +746 -0
  207. package/dist/js/chunks/chunk-ZM3XBHWV.mjs.map +7 -0
  208. package/dist/js/chunks/chunk-ZO6ZLHFF.mjs +48 -0
  209. package/dist/js/chunks/chunk-ZO6ZLHFF.mjs.map +7 -0
  210. package/dist/js/chunks/chunk-ZVLOUDIJ.mjs +251 -0
  211. package/dist/js/chunks/chunk-ZVLOUDIJ.mjs.map +7 -0
  212. package/dist/js/expressive.cjs +10333 -4070
  213. package/dist/js/expressive.cjs.map +4 -4
  214. package/dist/js/expressive.js +10333 -4070
  215. package/dist/js/expressive.js.map +4 -4
  216. package/dist/js/expressive.min.js +23 -25
  217. package/dist/js/expressive.min.js.map +4 -4
  218. package/dist/js/expressive.mjs +184 -69
  219. package/dist/js/expressive.mjs.map +2 -2
  220. package/dist/js/internal/behaviors/bottomSheets.mjs +4 -3
  221. package/dist/js/internal/behaviors/copy.mjs +9 -0
  222. package/dist/js/internal/behaviors/copy.mjs.map +7 -0
  223. package/dist/js/internal/behaviors/dataTables.mjs +10 -0
  224. package/dist/js/internal/behaviors/dataTables.mjs.map +7 -0
  225. package/dist/js/internal/behaviors/dialogs.mjs +2 -2
  226. package/dist/js/internal/behaviors/forms.mjs +2 -2
  227. package/dist/js/internal/behaviors/imageCompare.mjs +8 -0
  228. package/dist/js/internal/behaviors/imageCompare.mjs.map +7 -0
  229. package/dist/js/internal/behaviors/lists.mjs +8 -0
  230. package/dist/js/internal/behaviors/lists.mjs.map +7 -0
  231. package/dist/js/internal/behaviors/paneResize.mjs +8 -0
  232. package/dist/js/internal/behaviors/paneResize.mjs.map +7 -0
  233. package/dist/js/internal/behaviors/sheetDrag.mjs +7 -2
  234. package/dist/js/internal/behaviors/sideSheets.mjs +4 -3
  235. package/dist/js/internal/behaviors/sortable.mjs +8 -0
  236. package/dist/js/internal/behaviors/sortable.mjs.map +7 -0
  237. package/dist/js/internal/behaviors/theme.mjs +8 -0
  238. package/dist/js/internal/behaviors/theme.mjs.map +7 -0
  239. package/dist/js/internal/behaviors/tour.mjs +8 -0
  240. package/dist/js/internal/behaviors/tour.mjs.map +7 -0
  241. package/dist/js/internal/behaviors/transferList.mjs +8 -0
  242. package/dist/js/internal/behaviors/transferList.mjs.map +7 -0
  243. package/dist/js/internal/components/appBar.mjs +3 -2
  244. package/dist/js/internal/components/autocomplete.mjs +4 -4
  245. package/dist/js/internal/components/backToTop.mjs +9 -0
  246. package/dist/js/internal/components/backToTop.mjs.map +7 -0
  247. package/dist/js/internal/components/barChart.mjs +5 -4
  248. package/dist/js/internal/components/buttonGroup.mjs +3 -2
  249. package/dist/js/internal/components/buttons.mjs +3 -3
  250. package/dist/js/internal/components/cards.mjs +3 -3
  251. package/dist/js/internal/components/carousel.mjs +3 -3
  252. package/dist/js/internal/components/cascader.mjs +10 -0
  253. package/dist/js/internal/components/cascader.mjs.map +7 -0
  254. package/dist/js/internal/components/characterCounter.mjs +3 -2
  255. package/dist/js/internal/components/chips.mjs +6 -5
  256. package/dist/js/internal/components/colorPicker.mjs +9 -0
  257. package/dist/js/internal/components/colorPicker.mjs.map +7 -0
  258. package/dist/js/internal/components/columnChart.mjs +4 -3
  259. package/dist/js/internal/components/commandPalette.mjs +3 -3
  260. package/dist/js/internal/components/confetti.mjs +3 -2
  261. package/dist/js/internal/components/currencyInput.mjs +9 -0
  262. package/dist/js/internal/components/currencyInput.mjs.map +7 -0
  263. package/dist/js/internal/components/datepicker.mjs +11 -8
  264. package/dist/js/internal/components/expandingCard.mjs +3 -3
  265. package/dist/js/internal/components/funnelChart.mjs +10 -0
  266. package/dist/js/internal/components/funnelChart.mjs.map +7 -0
  267. package/dist/js/internal/components/heatmapChart.mjs +4 -3
  268. package/dist/js/internal/components/hoverCard.mjs +9 -0
  269. package/dist/js/internal/components/hoverCard.mjs.map +7 -0
  270. package/dist/js/internal/components/index.mjs +133 -64
  271. package/dist/js/internal/components/inputMask.mjs +9 -0
  272. package/dist/js/internal/components/inputMask.mjs.map +7 -0
  273. package/dist/js/internal/components/keypad.mjs +9 -0
  274. package/dist/js/internal/components/keypad.mjs.map +7 -0
  275. package/dist/js/internal/components/lightbox.mjs +3 -3
  276. package/dist/js/internal/components/lineChart.mjs +29 -4
  277. package/dist/js/internal/components/loadingOverlay.mjs +9 -0
  278. package/dist/js/internal/components/loadingOverlay.mjs.map +7 -0
  279. package/dist/js/internal/components/mapView.mjs +3 -3
  280. package/dist/js/internal/components/menu.mjs +3 -3
  281. package/dist/js/internal/components/menubar.mjs +10 -0
  282. package/dist/js/internal/components/menubar.mjs.map +7 -0
  283. package/dist/js/internal/components/messageScroller.mjs +3 -3
  284. package/dist/js/internal/components/mixedChart.mjs +5 -4
  285. package/dist/js/internal/components/navigationRail.mjs +3 -2
  286. package/dist/js/internal/components/particles.mjs +3 -2
  287. package/dist/js/internal/components/pieChart.mjs +4 -3
  288. package/dist/js/internal/components/pullToRefresh.mjs +9 -0
  289. package/dist/js/internal/components/pullToRefresh.mjs.map +7 -0
  290. package/dist/js/internal/components/questionnaire.mjs +3 -3
  291. package/dist/js/internal/components/radarChart.mjs +4 -3
  292. package/dist/js/internal/components/radialChart.mjs +4 -3
  293. package/dist/js/internal/components/registry.mjs +59 -40
  294. package/dist/js/internal/components/richTextEditor.mjs +3 -3
  295. package/dist/js/internal/components/sankeyChart.mjs +10 -0
  296. package/dist/js/internal/components/sankeyChart.mjs.map +7 -0
  297. package/dist/js/internal/components/scatterChart.mjs +10 -0
  298. package/dist/js/internal/components/scatterChart.mjs.map +7 -0
  299. package/dist/js/internal/components/scrollspy.mjs +3 -2
  300. package/dist/js/internal/components/select.mjs +4 -4
  301. package/dist/js/internal/components/showMore.mjs +9 -0
  302. package/dist/js/internal/components/showMore.mjs.map +7 -0
  303. package/dist/js/internal/components/slider.mjs +3 -3
  304. package/dist/js/internal/components/snackbar.mjs +2 -2
  305. package/dist/js/internal/components/swipeActions.mjs +9 -0
  306. package/dist/js/internal/components/swipeActions.mjs.map +7 -0
  307. package/dist/js/internal/components/tabs.mjs +3 -4
  308. package/dist/js/internal/components/timepicker.mjs +5 -4
  309. package/dist/js/internal/components/tooltip.mjs +3 -3
  310. package/dist/js/internal/components/treeSelect.mjs +13 -0
  311. package/dist/js/internal/components/treeSelect.mjs.map +7 -0
  312. package/dist/js/internal/components/treemapChart.mjs +10 -0
  313. package/dist/js/internal/components/treemapChart.mjs.map +7 -0
  314. package/dist/js/internal/core/component.mjs +2 -1
  315. package/dist/js/internal/core/formControl.mjs +12 -0
  316. package/dist/js/internal/core/formControl.mjs.map +7 -0
  317. package/dist/js/internal/core/spring.mjs +11 -0
  318. package/dist/js/internal/core/spring.mjs.map +7 -0
  319. package/dist/js/internal/core/utils.mjs +11 -3
  320. package/dist/js/internal/plugins/dockedDisplayPlugin.mjs +2 -2
  321. package/dist/js/internal/plugins/modalDisplayPlugin.mjs +13 -0
  322. package/dist/js/internal/plugins/modalDisplayPlugin.mjs.map +7 -0
  323. package/dist/js/modular.mjs +175 -69
  324. package/dist/types/behaviors/bottomSheets.d.ts +19 -3
  325. package/dist/types/behaviors/copy.d.ts +18 -0
  326. package/dist/types/behaviors/dataTables.d.ts +129 -0
  327. package/dist/types/behaviors/dialogs.d.ts +27 -1
  328. package/dist/types/behaviors/forms.d.ts +68 -2
  329. package/dist/types/behaviors/imageCompare.d.ts +12 -0
  330. package/dist/types/behaviors/lists.d.ts +12 -0
  331. package/dist/types/behaviors/paneResize.d.ts +29 -0
  332. package/dist/types/behaviors/sheetDrag.d.ts +18 -0
  333. package/dist/types/behaviors/sideSheets.d.ts +1 -1
  334. package/dist/types/behaviors/sortable.d.ts +28 -0
  335. package/dist/types/behaviors/theme.d.ts +22 -0
  336. package/dist/types/behaviors/tour.d.ts +36 -0
  337. package/dist/types/behaviors/transferList.d.ts +51 -0
  338. package/dist/types/components/appBar.d.ts +5 -6
  339. package/dist/types/components/autocomplete.d.ts +92 -17
  340. package/dist/types/components/backToTop.d.ts +36 -0
  341. package/dist/types/components/barChart.d.ts +3 -6
  342. package/dist/types/components/buttonGroup.d.ts +2 -4
  343. package/dist/types/components/buttons.d.ts +5 -5
  344. package/dist/types/components/cards.d.ts +3 -16
  345. package/dist/types/components/carousel.d.ts +9 -15
  346. package/dist/types/components/cascader.d.ts +130 -0
  347. package/dist/types/components/characterCounter.d.ts +2 -15
  348. package/dist/types/components/chips.d.ts +65 -19
  349. package/dist/types/components/colorPicker.d.ts +42 -0
  350. package/dist/types/components/columnChart.d.ts +23 -10
  351. package/dist/types/components/commandPalette.d.ts +11 -16
  352. package/dist/types/components/confetti.d.ts +2 -4
  353. package/dist/types/components/currencyInput.d.ts +59 -0
  354. package/dist/types/components/datepicker.d.ts +59 -36
  355. package/dist/types/components/expandingCard.d.ts +6 -6
  356. package/dist/types/components/funnelChart.d.ts +38 -0
  357. package/dist/types/components/heatmapChart.d.ts +39 -8
  358. package/dist/types/components/hoverCard.d.ts +58 -0
  359. package/dist/types/components/index.d.ts +17 -1
  360. package/dist/types/components/inputMask.d.ts +30 -0
  361. package/dist/types/components/keypad.d.ts +66 -0
  362. package/dist/types/components/lightbox.d.ts +17 -25
  363. package/dist/types/components/lineChart.d.ts +176 -10
  364. package/dist/types/components/loadingOverlay.d.ts +42 -0
  365. package/dist/types/components/mapView.d.ts +26 -17
  366. package/dist/types/components/menu.d.ts +61 -22
  367. package/dist/types/components/menubar.d.ts +37 -0
  368. package/dist/types/components/messageScroller.d.ts +2 -14
  369. package/dist/types/components/mixedChart.d.ts +15 -6
  370. package/dist/types/components/navigationRail.d.ts +16 -5
  371. package/dist/types/components/particles.d.ts +8 -4
  372. package/dist/types/components/pieChart.d.ts +32 -7
  373. package/dist/types/components/pullToRefresh.d.ts +80 -0
  374. package/dist/types/components/questionnaire.d.ts +58 -16
  375. package/dist/types/components/radarChart.d.ts +10 -6
  376. package/dist/types/components/radialChart.d.ts +58 -8
  377. package/dist/types/components/registry.d.ts +77 -3
  378. package/dist/types/components/richTextEditor.d.ts +6 -14
  379. package/dist/types/components/sankeyChart.d.ts +72 -0
  380. package/dist/types/components/scatterChart.d.ts +102 -0
  381. package/dist/types/components/scrollspy.d.ts +3 -5
  382. package/dist/types/components/select.d.ts +43 -30
  383. package/dist/types/components/showMore.d.ts +51 -0
  384. package/dist/types/components/slider.d.ts +5 -15
  385. package/dist/types/components/snackbar.d.ts +62 -0
  386. package/dist/types/components/swipeActions.d.ts +81 -0
  387. package/dist/types/components/tabs.d.ts +93 -27
  388. package/dist/types/components/timepicker.d.ts +114 -20
  389. package/dist/types/components/tooltip.d.ts +56 -20
  390. package/dist/types/components/treeSelect.d.ts +106 -0
  391. package/dist/types/components/treemapChart.d.ts +56 -0
  392. package/dist/types/core/component.d.ts +43 -25
  393. package/dist/types/core/formControl.d.ts +21 -0
  394. package/dist/types/core/spring.d.ts +20 -0
  395. package/dist/types/core/utils.d.ts +85 -72
  396. package/dist/types/modular.d.ts +33 -1
  397. package/dist/types/plugins/dockedDisplayPlugin.d.ts +10 -7
  398. package/dist/types/plugins/modalDisplayPlugin.d.ts +32 -0
  399. package/package.json +10 -8
  400. package/src/sass/README.md +27 -18
  401. package/src/sass/abstracts/_breakpoints.scss +0 -1
  402. package/src/sass/abstracts/_elevation.scss +13 -7
  403. package/src/sass/abstracts/_index.scss +1 -0
  404. package/src/sass/abstracts/_mixins.scss +438 -92
  405. package/src/sass/abstracts/_spring.scss +63 -0
  406. package/src/sass/abstracts/_variables.scss +43 -15
  407. package/src/sass/base/_fonts.scss +61 -48
  408. package/src/sass/base/_global.scss +105 -34
  409. package/src/sass/base/_index.scss +3 -1
  410. package/src/sass/base/_normalize.scss +59 -114
  411. package/src/sass/base/_print.scss +21 -0
  412. package/src/sass/base/_prose.scss +68 -0
  413. package/src/sass/base/_typography.scss +9 -5
  414. package/src/sass/components/_accordion.scss +9 -16
  415. package/src/sass/components/_alert.scss +102 -0
  416. package/src/sass/components/_aura.scss +8 -3
  417. package/src/sass/components/_avatar.scss +3 -3
  418. package/src/sass/components/_back-to-top.scss +38 -0
  419. package/src/sass/components/_badges.scss +7 -13
  420. package/src/sass/components/_bar-chart.scss +41 -19
  421. package/src/sass/components/_bottom-sheet.scss +44 -16
  422. package/src/sass/components/_breadcrumb.scss +8 -1
  423. package/src/sass/components/_button-groups.scss +44 -89
  424. package/src/sass/components/_buttons.scss +156 -63
  425. package/src/sass/components/_calendar.scss +246 -0
  426. package/src/sass/components/_cards.scss +41 -68
  427. package/src/sass/components/_carousel.scss +43 -158
  428. package/src/sass/components/_cascader.scss +142 -0
  429. package/src/sass/components/_chips.scss +36 -52
  430. package/src/sass/components/_column-chart.scss +19 -12
  431. package/src/sass/components/_command-palette.scss +4 -7
  432. package/src/sass/components/_confetti.scss +0 -2
  433. package/src/sass/components/_countdown.scss +1 -1
  434. package/src/sass/components/_data-table.scss +162 -27
  435. package/src/sass/components/_datepicker.scss +57 -62
  436. package/src/sass/components/_description-list.scss +85 -0
  437. package/src/sass/components/_dialog.scss +42 -44
  438. package/src/sass/components/_docked-display.scss +1 -3
  439. package/src/sass/components/_drag-handle.scss +16 -20
  440. package/src/sass/components/_expanding-card.scss +20 -9
  441. package/src/sass/components/_fab-menu.scss +44 -32
  442. package/src/sass/components/_funnel-chart.scss +124 -0
  443. package/src/sass/components/_heatmap-chart.scss +113 -24
  444. package/src/sass/components/_icon-buttons.scss +7 -8
  445. package/src/sass/components/_icons-material-design.scss +2 -2
  446. package/src/sass/components/_image-compare.scss +108 -0
  447. package/src/sass/components/_index.scss +21 -0
  448. package/src/sass/components/_keypad.scss +182 -0
  449. package/src/sass/components/_kpi.scss +6 -11
  450. package/src/sass/components/_lightbox.scss +26 -20
  451. package/src/sass/components/_line-chart.scss +16 -2
  452. package/src/sass/components/_list.scss +59 -14
  453. package/src/sass/components/_loading-indicator.scss +1 -0
  454. package/src/sass/components/_loading-overlay.scss +105 -0
  455. package/src/sass/components/_map.scss +35 -13
  456. package/src/sass/components/_marquee.scss +3 -2
  457. package/src/sass/components/_mega-menu.scss +137 -0
  458. package/src/sass/components/_menu.scss +159 -182
  459. package/src/sass/components/_menubar.scss +59 -0
  460. package/src/sass/components/_message-scroller.scss +2 -2
  461. package/src/sass/components/_message.scss +3 -3
  462. package/src/sass/components/_mixed-chart.scss +37 -9
  463. package/src/sass/components/_modal-display.scss +21 -0
  464. package/src/sass/components/_navbar.scss +43 -65
  465. package/src/sass/components/_navigation-bar.scss +15 -77
  466. package/src/sass/components/_navigation-rail.scss +171 -121
  467. package/src/sass/components/_org-chart.scss +192 -0
  468. package/src/sass/components/_page-footer.scss +16 -13
  469. package/src/sass/components/_pagination.scss +6 -13
  470. package/src/sass/components/_panes.scss +33 -31
  471. package/src/sass/components/_particles.scss +0 -2
  472. package/src/sass/components/_pie-chart.scss +91 -11
  473. package/src/sass/components/_popover.scss +18 -5
  474. package/src/sass/components/_progress.scss +158 -35
  475. package/src/sass/components/_pull-to-refresh.scss +90 -0
  476. package/src/sass/components/_questionnaire.scss +74 -3
  477. package/src/sass/components/_radar-chart.scss +38 -10
  478. package/src/sass/components/_radial-chart.scss +113 -5
  479. package/src/sass/components/_rich-text-editor.scss +2 -2
  480. package/src/sass/components/_sankey-chart.scss +114 -0
  481. package/src/sass/components/_scatter-chart.scss +153 -0
  482. package/src/sass/components/_scrim.scss +0 -2
  483. package/src/sass/components/_scrollspy.scss +0 -2
  484. package/src/sass/components/_search.scss +26 -22
  485. package/src/sass/components/_show-more.scss +8 -0
  486. package/src/sass/components/_side-sheet.scss +23 -40
  487. package/src/sass/components/_skeleton.scss +2 -4
  488. package/src/sass/components/_snackbar.scss +27 -21
  489. package/src/sass/components/_split-button.scss +5 -5
  490. package/src/sass/components/_stat.scss +3 -8
  491. package/src/sass/components/_stepper.scss +1 -5
  492. package/src/sass/components/_swipe-actions.scss +71 -0
  493. package/src/sass/components/_tabs.scss +51 -32
  494. package/src/sass/components/_timeline.scss +12 -12
  495. package/src/sass/components/_timepicker.scss +111 -112
  496. package/src/sass/components/_toolbar.scss +35 -47
  497. package/src/sass/components/_tooltip.scss +21 -12
  498. package/src/sass/components/_tour.scss +89 -0
  499. package/src/sass/components/_transfer-list.scss +73 -0
  500. package/src/sass/components/_transitions.scss +4 -4
  501. package/src/sass/components/_tree.scss +3 -16
  502. package/src/sass/components/_treemap-chart.scss +122 -0
  503. package/src/sass/components/forms/_checkboxes.scss +140 -86
  504. package/src/sass/components/forms/_color-picker.scss +135 -0
  505. package/src/sass/components/forms/_color-swatches.scss +85 -0
  506. package/src/sass/components/forms/_drop-zone.scss +15 -9
  507. package/src/sass/components/forms/_fieldset.scss +10 -10
  508. package/src/sass/components/forms/_file-input.scss +6 -9
  509. package/src/sass/components/forms/_index.scss +3 -1
  510. package/src/sass/components/forms/_input-fields.scss +254 -90
  511. package/src/sass/components/forms/_radio-buttons.scss +40 -127
  512. package/src/sass/components/forms/_rating.scss +2 -32
  513. package/src/sass/components/forms/_select.scss +199 -23
  514. package/src/sass/components/forms/_slider.scss +140 -330
  515. package/src/sass/components/forms/_switches.scss +53 -164
  516. package/src/sass/custom.scss +10 -1
  517. package/src/sass/expressive.scss +3 -63
  518. package/src/sass/tokens/_contrast.scss +94 -0
  519. package/src/sass/tokens/_elevation.scss +16 -0
  520. package/src/sass/tokens/_index.scss +5 -0
  521. package/src/sass/tokens/_motion.scss +109 -0
  522. package/src/sass/tokens/_reference.scss +72 -141
  523. package/src/sass/tokens/_shape.scss +38 -0
  524. package/src/sass/tokens/_stacking.scss +27 -0
  525. package/src/sass/tokens/_state.scss +2 -4
  526. package/src/sass/tokens/_theme.scss +11 -2
  527. package/src/sass/tokens/_vibrant.scss +2 -5
  528. package/src/sass/utilities/_colors.scss +6 -1
  529. package/src/sass/utilities/_defer-render.scss +17 -0
  530. package/src/sass/utilities/_helpers.scss +183 -26
  531. package/src/sass/utilities/_index.scss +2 -1
  532. package/src/sass/utilities/_scroll-area.scss +0 -2
  533. package/src/sass/utilities/_spacing.scss +52 -34
  534. package/src/sass/utilities/_typescale.scss +8 -1
  535. package/src/sass/utilities/_visibility.scss +47 -76
  536. package/src/sass/utilities/_z-depth.scss +7 -4
  537. package/dist/js/chunks/chunk-3DHK5CZU.mjs.map +0 -7
  538. package/dist/js/chunks/chunk-3GVFZ4XO.mjs.map +0 -7
  539. package/dist/js/chunks/chunk-4HZMB7LI.mjs.map +0 -7
  540. package/dist/js/chunks/chunk-4KMNFIFZ.mjs +0 -270
  541. package/dist/js/chunks/chunk-4KMNFIFZ.mjs.map +0 -7
  542. package/dist/js/chunks/chunk-4TKTLGEM.mjs.map +0 -7
  543. package/dist/js/chunks/chunk-5BKHWHYY.mjs +0 -292
  544. package/dist/js/chunks/chunk-5BKHWHYY.mjs.map +0 -7
  545. package/dist/js/chunks/chunk-5HQSGDZ5.mjs.map +0 -7
  546. package/dist/js/chunks/chunk-6N2XAEFK.mjs +0 -125
  547. package/dist/js/chunks/chunk-6N2XAEFK.mjs.map +0 -7
  548. package/dist/js/chunks/chunk-A7ALMYUR.mjs.map +0 -7
  549. package/dist/js/chunks/chunk-BG6ZRB5H.mjs.map +0 -7
  550. package/dist/js/chunks/chunk-CUQPB25U.mjs +0 -55
  551. package/dist/js/chunks/chunk-CUQPB25U.mjs.map +0 -7
  552. package/dist/js/chunks/chunk-DAIU5SLG.mjs.map +0 -7
  553. package/dist/js/chunks/chunk-FS7XY3HT.mjs.map +0 -7
  554. package/dist/js/chunks/chunk-GIW4K4SE.mjs.map +0 -7
  555. package/dist/js/chunks/chunk-GUB3TNO2.mjs.map +0 -7
  556. package/dist/js/chunks/chunk-GVGT6MIU.mjs.map +0 -7
  557. package/dist/js/chunks/chunk-GZKEFWPM.mjs +0 -181
  558. package/dist/js/chunks/chunk-GZKEFWPM.mjs.map +0 -7
  559. package/dist/js/chunks/chunk-HKT2S7VM.mjs +0 -48
  560. package/dist/js/chunks/chunk-HKT2S7VM.mjs.map +0 -7
  561. package/dist/js/chunks/chunk-ILP3PDTL.mjs +0 -187
  562. package/dist/js/chunks/chunk-ILP3PDTL.mjs.map +0 -7
  563. package/dist/js/chunks/chunk-JIDMQGK6.mjs.map +0 -7
  564. package/dist/js/chunks/chunk-KBNN3QDH.mjs +0 -7
  565. package/dist/js/chunks/chunk-KBNN3QDH.mjs.map +0 -7
  566. package/dist/js/chunks/chunk-KHV6DZXX.mjs.map +0 -7
  567. package/dist/js/chunks/chunk-KY6U46SM.mjs +0 -345
  568. package/dist/js/chunks/chunk-KY6U46SM.mjs.map +0 -7
  569. package/dist/js/chunks/chunk-LRZMJZ3T.mjs +0 -291
  570. package/dist/js/chunks/chunk-LRZMJZ3T.mjs.map +0 -7
  571. package/dist/js/chunks/chunk-LTWPGFBR.mjs +0 -59
  572. package/dist/js/chunks/chunk-LTWPGFBR.mjs.map +0 -7
  573. package/dist/js/chunks/chunk-MNPROCZF.mjs +0 -328
  574. package/dist/js/chunks/chunk-MNPROCZF.mjs.map +0 -7
  575. package/dist/js/chunks/chunk-MZ6Z24BX.mjs.map +0 -7
  576. package/dist/js/chunks/chunk-NS2UMNZV.mjs.map +0 -7
  577. package/dist/js/chunks/chunk-O5XPWXIQ.mjs +0 -406
  578. package/dist/js/chunks/chunk-O5XPWXIQ.mjs.map +0 -7
  579. package/dist/js/chunks/chunk-PM655FXL.mjs.map +0 -7
  580. package/dist/js/chunks/chunk-QDAL4IYN.mjs.map +0 -7
  581. package/dist/js/chunks/chunk-QERLECVU.mjs +0 -572
  582. package/dist/js/chunks/chunk-QERLECVU.mjs.map +0 -7
  583. package/dist/js/chunks/chunk-QJABDLSD.mjs +0 -112
  584. package/dist/js/chunks/chunk-QJABDLSD.mjs.map +0 -7
  585. package/dist/js/chunks/chunk-RHRQKTTX.mjs +0 -139
  586. package/dist/js/chunks/chunk-RHRQKTTX.mjs.map +0 -7
  587. package/dist/js/chunks/chunk-S3XDFGSZ.mjs.map +0 -7
  588. package/dist/js/chunks/chunk-SPETGK25.mjs +0 -59
  589. package/dist/js/chunks/chunk-SPETGK25.mjs.map +0 -7
  590. package/dist/js/chunks/chunk-TBM3FT7G.mjs.map +0 -7
  591. package/dist/js/chunks/chunk-UEXCIMJZ.mjs.map +0 -7
  592. package/dist/js/chunks/chunk-UEZUJQ66.mjs.map +0 -7
  593. package/dist/js/chunks/chunk-VGZSAFTX.mjs +0 -173
  594. package/dist/js/chunks/chunk-VGZSAFTX.mjs.map +0 -7
  595. package/dist/js/chunks/chunk-X7OCHZVF.mjs +0 -76
  596. package/dist/js/chunks/chunk-X7OCHZVF.mjs.map +0 -7
  597. package/dist/js/chunks/chunk-YDCS5S3J.mjs.map +0 -7
  598. package/dist/js/chunks/chunk-YMSXJON6.mjs +0 -79
  599. package/dist/js/chunks/chunk-YMSXJON6.mjs.map +0 -7
  600. package/dist/js/chunks/chunk-Z2NRKI7R.mjs.map +0 -7
  601. package/dist/js/chunks/chunk-ZAS25YFD.mjs.map +0 -7
  602. package/dist/js/chunks/chunk-ZKZKNSLC.mjs +0 -1
  603. /package/dist/js/chunks/{chunk-ZKZKNSLC.mjs.map → chunk-GNRSYMVH.mjs.map} +0 -0
@@ -1,6 +1,6 @@
1
1
  @use "../abstracts" as *;
2
2
 
3
- :is(.timepicker-container, .time-picker-container) {
3
+ .timepicker-container {
4
4
  display: flex;
5
5
  flex-direction: column;
6
6
  max-width: 325px;
@@ -8,97 +8,107 @@
8
8
  background-color: var(--md-sys-color-inverse-on-surface);
9
9
  }
10
10
 
11
- .text-primary {
12
- color: var(--md-sys-color-on-primary);
13
- }
14
-
15
- /* Clock Digital Display */
16
- :is(.timepicker-digital-display, .time-picker-digital-display) {
11
+ // Clock Digital Display
12
+ .timepicker-digital-display {
17
13
  width: auto;
18
14
  flex: 1 auto;
19
- // background-color: var(--md-sys-color-surface);
20
- padding: 2rem .67rem .67rem .67rem;
15
+ padding: 2rem 0.67rem 0.67rem 0.67rem;
21
16
  font-weight: 300;
22
17
  }
23
18
 
24
- :is(.timepicker-text-container, .time-picker-text-container) {
19
+ .timepicker-text-container {
25
20
  display: flex;
26
21
  font-size: 4rem;
27
22
  text-align: left;
28
23
  color: var(--md-sys-color-on-surface-variant);
29
24
  font-weight: 400;
30
- /*position: relative;*/
31
25
  user-select: none;
32
26
  padding: 1rem 1rem 1.3rem 1rem;
33
27
 
34
28
  input[type=text]{
35
29
  height: 4rem;
36
30
  color: var(--md-sys-color-secondary);
37
- border-bottom: 0px;
31
+ border-bottom: 0;
38
32
  font-size: 4rem;
39
33
  direction: ltr;
40
34
  }
41
35
  }
42
36
 
43
- :is(.timepicker-display-column, .time-picker-display-column) {
37
+ .timepicker-display-column {
44
38
  display: inline-flex;
45
39
  }
46
40
 
47
- :is(.timepicker-display-digital-clock, .time-picker-display-digital-clock) {
41
+ .timepicker-display-digital-clock {
48
42
  flex-grow: 1;
49
43
  display: inline-flex;
50
44
  }
51
45
 
52
- :is(.timepicker-input-hours-wrapper, .time-picker-input-hours-wrapper),
53
- :is(.timepicker-input-minutes-wrapper, .time-picker-input-minutes-wrapper) {
46
+ .timepicker-input-hours-wrapper,
47
+ .timepicker-input-minutes-wrapper,
48
+ .timepicker-input-seconds-wrapper {
54
49
  width: 6.9rem;
55
50
  height: 5.75rem;
56
51
  }
57
52
 
58
- :is(.timepicker-input-hours, .time-picker-input-hours),
59
- :is(.timepicker-input-minutes, .time-picker-input-minutes),
60
- :is(.timepicker-span-am-pm, .time-picker-span-am-pm) div {
53
+ .timepicker-input-hours,
54
+ .timepicker-input-minutes,
55
+ .timepicker-input-seconds,
56
+ .timepicker-span-am-pm div {
61
57
  cursor: pointer;
62
58
  }
63
59
 
64
- input[type=text]:is(.timepicker-input-hours, .time-picker-input-hours),
65
- input[type=text]:is(.timepicker-input-minutes, .time-picker-input-minutes) {
60
+ input[type=text].timepicker-input-hours,
61
+ input[type=text].timepicker-input-minutes,
62
+ input[type=text].timepicker-input-seconds {
66
63
  height: 100%;
67
- padding: 1.33rem .8rem;
64
+ padding: 1.33rem 0.8rem;
68
65
  border: 0;
69
66
  text-align: center;
70
- color: var(--md-sys-color-on-background);
71
- background-color: var(--md-sys-color-surface-variant);
67
+ color: var(--md-sys-color-on-surface);
68
+ background-color: var(--md-sys-color-surface-container-highest);
72
69
 
73
70
  &:focus {
74
71
  background-color: var(--md-sys-color-primary-container);
75
72
  }
76
73
  }
77
74
 
78
- :is(.timepicker-input-divider-wrapper, .time-picker-input-divider-wrapper) {
75
+ .timepicker-input-divider-wrapper {
79
76
  width: 1.6rem;
80
77
  text-align: center;
81
78
  }
82
79
 
83
- /*input[type=text].text-primary {
84
- color: var(--md-sys-color-on-background);
85
- }*/
80
+ // With `showSeconds`, three fields share the row two fill otherwise.
81
+ .timepicker-display-digital-clock:has(.timepicker-input-seconds) {
82
+ // The field wrappers; the dividers narrow further below.
83
+ > * {
84
+ width: rem(60px);
85
+ }
86
+
87
+ .timepicker-input-divider-wrapper {
88
+ display: grid;
89
+ place-items: center;
90
+ width: rem(16px);
91
+ font-size: rem(36px);
92
+ }
93
+
94
+ input[type=text] {
95
+ padding-inline: rem(4px);
96
+ font-size: rem(36px);
97
+ }
98
+ }
86
99
 
87
- :is(.timepicker-display-am-pm, .time-picker-display-am-pm) {
100
+ .timepicker-display-am-pm {
88
101
  font-size: 1.3rem;
89
- /*position: absolute;
90
- top: 1rem;
91
- right: 1rem;*/
92
102
  font-weight: 400;
93
103
  }
94
104
 
95
- :is(.timepicker-span-am-pm, .time-picker-span-am-pm) {
105
+ .timepicker-span-am-pm {
96
106
  height: 5.75rem;
97
107
  max-width: 3.5rem;
98
108
  }
99
109
 
100
- :is(.timepicker-container, .time-picker-container) .am-btn,
101
- :is(.timepicker-container, .time-picker-container) .pm-btn {
110
+ .timepicker-container .am-btn,
111
+ .timepicker-container .pm-btn {
102
112
  width: 3.6rem;
103
113
  height: 50%;
104
114
  // --btn-padding is a retired variable that no longer exists, so this
@@ -109,33 +119,32 @@ input[type=text]:is(.timepicker-input-minutes, .time-picker-input-minutes) {
109
119
  line-height: 2rem;
110
120
  vertical-align: middle;
111
121
  text-align: center;
112
- // background-color: transparent;
113
122
  border: 1px solid var(--md-sys-color-outline);
114
123
  }
115
124
 
116
- :is(.timepicker-container, .time-picker-container) .am-btn {
125
+ .timepicker-container .am-btn {
117
126
  border-bottom-right-radius: 0;
118
127
  border-bottom-left-radius: 0;
119
128
  }
120
129
 
121
- :is(.timepicker-container, .time-picker-container) .pm-btn {
130
+ .timepicker-container .pm-btn {
122
131
  border-top: 0;
123
132
  border-top-left-radius: 0;
124
133
  border-top-right-radius: 0;
125
134
  }
126
135
 
127
- /* Analog Clock Display */
128
- :is(.timepicker-analog-display, .time-picker-analog-display) {
136
+ // Analog Clock Display
137
+ .timepicker-analog-display {
129
138
  flex: 2.5 auto;
130
- padding: .67rem;
131
- // background-color: var(--md-sys-color-surface);
139
+ padding: 0.67rem;
132
140
  }
133
141
 
134
- :is(.timepicker-plate, .time-picker-plate) {
135
- background-color: var(--md-sys-color-surface-variant);
142
+ .timepicker-plate {
143
+ background-color: var(--md-sys-color-surface-container-highest);
136
144
  border-radius: 50%;
137
- width: 260px;
138
- height: 260px;
145
+ // The default dialRadius (135) doubled. JS sets the size from the option.
146
+ width: 270px;
147
+ height: 270px;
139
148
  overflow: visible;
140
149
  position: relative;
141
150
  margin: 0 1.6rem 1.6rem 1.6rem;
@@ -146,54 +155,70 @@ input[type=text]:is(.timepicker-input-minutes, .time-picker-input-minutes) {
146
155
  touch-action: none;
147
156
  }
148
157
 
149
- :is(.timepicker-canvas, .time-picker-canvas),
150
- :is(.timepicker-dial, .time-picker-dial) {
158
+ .timepicker-canvas,
159
+ .timepicker-dial {
151
160
  position: absolute;
152
- left: 0;
153
- right: 0;
154
- top: 0;
155
- bottom: 0;
161
+ inset: 0;
156
162
  }
157
163
 
158
- :is(.timepicker-minutes, .time-picker-minutes) {
164
+ .timepicker-minutes {
159
165
  visibility: hidden;
160
166
  }
161
167
 
162
- :is(.timepicker-tick, .time-picker-tick) {
168
+ .timepicker-tick {
163
169
  border-radius: 50%;
164
- color: var(--md-sys-color-on-background);
170
+ color: var(--md-sys-color-on-surface);
165
171
  line-height: 40px;
166
172
  text-align: center;
167
173
  width: 40px;
168
174
  height: 40px;
169
175
  position: absolute;
170
176
  cursor: pointer;
171
- font-size: 15px;
177
+ font-size: rem(15px);
172
178
  }
173
179
 
174
- :is(.timepicker-tick, .time-picker-tick).active,
175
- :is(.timepicker-tick, .time-picker-tick):hover {
180
+ .timepicker-tick.active,
181
+ .timepicker-tick:hover {
176
182
  background-color: color-mix(in oklab, var(--md-sys-color-primary) 6%, transparent);
177
183
  }
178
184
 
179
- :is(.timepicker-dial, .time-picker-dial) {
180
- transition: transform 350ms, opacity 350ms;
185
+ // Outside minTime to maxTime. The plate takes the pointer, so dropping
186
+ // pointer events only drops the hover.
187
+ .timepicker-tick.is-disabled {
188
+ color: color-mix(in oklab, var(--md-sys-color-on-surface) 38%, transparent);
189
+ pointer-events: none;
190
+
191
+ @media (forced-colors: active) {
192
+ color: GrayText;
193
+ }
194
+ }
195
+
196
+ .timepicker-dial {
197
+ transition: transform var(--md-sys-motion-duration-medium3), opacity var(--md-sys-motion-duration-medium3);
198
+
199
+ @media (prefers-reduced-motion: reduce) {
200
+ transition: none;
201
+ }
181
202
  }
182
203
 
183
- :is(.timepicker-dial-out, .time-picker-dial-out) {
204
+ .timepicker-dial-out {
184
205
  opacity: 0;
185
206
 
186
- &:is(.timepicker-hours, .time-picker-hours) {
207
+ &.timepicker-hours {
187
208
  transform: scale(1.1, 1.1);
188
209
  }
189
210
 
190
- &:is(.timepicker-minutes, .time-picker-minutes) {
191
- transform: scale(.8, .8);
211
+ &.timepicker-minutes {
212
+ transform: scale(0.8, 0.8);
192
213
  }
193
214
  }
194
215
 
195
- :is(.timepicker-canvas, .time-picker-canvas) {
196
- transition: opacity 175ms;
216
+ .timepicker-canvas {
217
+ transition: opacity var(--md-sys-motion-duration-short3);
218
+
219
+ @media (prefers-reduced-motion: reduce) {
220
+ transition: none;
221
+ }
197
222
 
198
223
  line {
199
224
  stroke: var(--md-sys-color-primary);
@@ -202,102 +227,76 @@ input[type=text]:is(.timepicker-input-minutes, .time-picker-input-minutes) {
202
227
  }
203
228
  }
204
229
 
205
- :is(.timepicker-canvas-out, .time-picker-canvas-out) {
230
+ .timepicker-canvas-out {
206
231
  opacity: 0.25;
207
232
  }
208
233
 
209
- :is(.timepicker-canvas-bearing, .time-picker-canvas-bearing) {
210
- stroke: none;
211
- fill: var(--md-sys-color-primary);
212
- }
213
-
214
- :is(.timepicker-canvas-bg, .time-picker-canvas-bg) {
234
+ .timepicker-canvas-bearing,
235
+ .timepicker-canvas-bg {
215
236
  stroke: none;
216
237
  fill: var(--md-sys-color-primary);
217
238
  }
218
239
 
219
240
 
220
- /* Footer */
221
- :is(.timepicker-footer, .time-picker-footer) {
241
+ // Footer
242
+ .timepicker-footer {
222
243
  margin: 0 auto;
223
244
  padding: 5px 1rem;
224
245
  display: flex;
225
246
  justify-content: space-between;
226
247
  }
227
248
 
228
- :is(.timepicker-clear, .time-picker-clear) {
249
+ .timepicker-clear {
229
250
  color: var(--md-sys-color-error);
230
- }
231
-
232
- :is(.timepicker-close, .time-picker-close) {
233
- color: var(--md-sys-color-primary);
234
- }
235
-
236
- :is(.timepicker-clear, .time-picker-clear),
237
- :is(.timepicker-close, .time-picker-close) {
238
251
  padding: 0 20px;
239
252
  }
240
253
 
241
- /* Media Queries */
254
+ // Media Queries
242
255
  @include bp-up("expanded") {
243
- :is(.timepicker-container, .time-picker-container) {
256
+ .timepicker-container {
244
257
  width: auto;
245
258
  max-width: 620px;
246
- }
247
-
248
- :is(.timepicker-container, .time-picker-container) {
249
259
  flex-direction: row;
250
260
  }
251
261
 
252
- :is(.timepicker-digital-display, .time-picker-digital-display) {
253
- padding: .67rem;
262
+ .timepicker-digital-display {
263
+ padding: 0.67rem;
254
264
  }
255
265
 
256
- :is(.timepicker-text-container, .time-picker-text-container) {
257
- /*top: 31%;*/
266
+ .timepicker-text-container {
258
267
  flex-direction: column;
259
268
  margin-top: 4.8rem;
260
269
  text-align: center;
261
270
  }
262
271
 
263
- :is(.timepicker-display-column, .time-picker-display-column) {
272
+ .timepicker-display-column {
264
273
  padding: 0 3%;
265
274
  }
266
275
 
267
- :is(.timepicker-display-am-pm, .time-picker-display-am-pm) {
276
+ .timepicker-display-am-pm {
268
277
  margin-top: 1.1rem;
269
278
  }
270
279
 
271
- :is(.timepicker-span-am-pm, .time-picker-span-am-pm) {
280
+ .timepicker-span-am-pm {
272
281
  display: flex;
273
282
  flex-grow: 1;
274
283
  max-width: unset;
275
284
  }
276
285
 
277
- :is(.timepicker-container, .time-picker-container) .am-btn,
278
- :is(.timepicker-container, .time-picker-container) .pm-btn {
286
+ .timepicker-container .am-btn,
287
+ .timepicker-container .pm-btn {
279
288
  flex-grow: 1;
280
- /*width: auto;*/
281
- // Same two retired variables as above; both declarations
282
- // rendered as 0. The corner rules that follow square off the inner
283
- // edges, so the outer ones are the only radius in play.
284
- padding-inline: 0;
289
+ // A retired variable that always rendered as 0. Squares all four
290
+ // corners of both buttons.
285
291
  border-radius: 0;
286
292
  border: 1px solid var(--md-sys-color-outline);
287
293
  }
288
294
 
289
- :is(.timepicker-container, .time-picker-container) .am-btn {
290
- border-top-right-radius: 0;
291
- border-bottom-right-radius: 0;
292
- }
293
-
294
- :is(.timepicker-container, .time-picker-container) .pm-btn {
295
+ .timepicker-container .pm-btn {
295
296
  border-left: 0;
296
- border-bottom-left-radius: 0;
297
- border-top-left-radius: 0;
298
297
  }
299
298
 
300
- :is(.timepicker-plate, .time-picker-plate) {
299
+ .timepicker-plate {
301
300
  margin-top: 1.6rem;
302
301
  }
303
302
  }
@@ -3,7 +3,7 @@
3
3
  // Toolbars (M3 Expressive).
4
4
  //
5
5
  // Anatomy is the HTML. A <div class="toolbar"> is the bar. Direct
6
- // <button> / <a> children are the actions. An <i> is the icon; wrap a
6
+ // <button> / <a> children are the actions. An icon is a .material-symbols span; wrap a
7
7
  // label in <span>. .active marks the selected action. A .filled action
8
8
  // is the emphasized control (the in-bar FAB). Helpers are only for
9
9
  // variants markup cannot express: .docked, .vibrant, .vertical, .fixed,
@@ -51,18 +51,13 @@
51
51
  // (rule 4) - and not role="toolbar" either, because that is a composite role
52
52
  // promising arrow-key navigation nothing here implements (rule 2). The <nav>
53
53
  // form is the older markup and still works.
54
- //
55
- // Wrapped in :is() so it stays one compound selector: interpolating a bare
56
- // comma-separated list breaks out of its context. That mistake shipped once
57
- // already, in $_bar.
58
54
  $_toolbar: ".toolbar";
59
55
 
60
- // The two axes. `.max` is an alias for docked; `.filled` is the older
61
- // name for vibrant. Both stay in the :is() lists.
62
- $_floating: "#{$_toolbar}:is(.floating, :not(.docked, .max))";
63
- $_docked: "#{$_toolbar}:is(.docked, .max)";
64
- $_standard: "#{$_toolbar}:is(.standard, :not(.vibrant, .filled))";
65
- $_vibrant: "#{$_toolbar}:is(.vibrant, .filled)";
56
+ // The two axes.
57
+ $_floating: "#{$_toolbar}:is(.floating, :not(.docked))";
58
+ $_docked: "#{$_toolbar}.docked";
59
+ $_standard: "#{$_toolbar}:is(.standard, :not(.vibrant))";
60
+ $_vibrant: "#{$_toolbar}.vibrant";
66
61
 
67
62
  #{$_toolbar} {
68
63
  // Shared across all four variants. --md-comp-toolbar-color stands for
@@ -129,16 +124,17 @@ $_vibrant: "#{$_toolbar}:is(.vibrant, .filled)";
129
124
  // The state layer is the content color in both color sets, which is
130
125
  // what currentColor already is on an action that has not been filled.
131
126
  &:hover:not(.active, .filled) {
132
- background-color: color-mix(in oklab, currentColor state-opacity("hover"), transparent);
127
+ background-color: state-layer(currentColor, "hover");
133
128
  }
134
129
 
135
130
  &:active:not(.active, .filled) {
136
- background-color: color-mix(in oklab, currentColor state-opacity("pressed"), transparent);
131
+ background-color: state-layer(currentColor, "pressed");
137
132
  }
138
133
 
139
134
  &.active {
140
135
  background-color: var(--md-comp-toolbar-selected-container-color);
141
136
  color: var(--md-comp-toolbar-selected-color);
137
+ @include forced-colors-selected;
142
138
  }
143
139
 
144
140
  &:disabled {
@@ -162,23 +158,15 @@ $_vibrant: "#{$_toolbar}:is(.vibrant, .filled)";
162
158
  > :is(a, button).filled:not(.extra, .icon-button) {
163
159
  background-color: var(--md-sys-color-primary);
164
160
  color: var(--md-sys-color-on-primary);
165
- border-radius: 16px;
161
+ border-radius: var(--md-sys-shape-corner-large);
166
162
  box-shadow: none;
167
163
 
168
164
  &:hover {
169
- background-color: color-mix(
170
- in oklab,
171
- var(--md-sys-color-on-primary) state-opacity("hover"),
172
- var(--md-sys-color-primary)
173
- );
165
+ background-color: state-layer(var(--md-sys-color-on-primary), "hover", var(--md-sys-color-primary));
174
166
  }
175
167
 
176
168
  &:active {
177
- background-color: color-mix(
178
- in oklab,
179
- var(--md-sys-color-on-primary) state-opacity("pressed"),
180
- var(--md-sys-color-primary)
181
- );
169
+ background-color: state-layer(var(--md-sys-color-on-primary), "pressed", var(--md-sys-color-primary));
182
170
  }
183
171
  }
184
172
 
@@ -186,7 +174,7 @@ $_vibrant: "#{$_toolbar}:is(.vibrant, .filled)";
186
174
  height: 40px;
187
175
  min-height: 40px;
188
176
  padding: 0 24px;
189
- border-radius: 20px;
177
+ border-radius: var(--md-sys-shape-corner-large-increased);
190
178
  width: auto;
191
179
  }
192
180
 
@@ -198,8 +186,7 @@ $_vibrant: "#{$_toolbar}:is(.vibrant, .filled)";
198
186
  margin: 0;
199
187
  }
200
188
 
201
- // Spacer between leading and trailing actions. `.max` on a *child* is the
202
- // spacer; on the bar itself it is the docked alias.
189
+ // Spacer between leading and trailing actions: a `.max` child.
203
190
  > .max {
204
191
  flex: 1 1 auto;
205
192
  align-self: stretch;
@@ -213,7 +200,7 @@ $_vibrant: "#{$_toolbar}:is(.vibrant, .filled)";
213
200
  // vertical bar the container is 64dp wide and arbitrarily tall, where 9999px
214
201
  // would round the long edge into an oval.
215
202
  #{$_floating} {
216
- --md-comp-toolbar-container-shape: 32px;
203
+ --md-comp-toolbar-container-shape: var(--md-sys-shape-corner-extra-large-increased);
217
204
  --md-comp-toolbar-leading-space: 8px;
218
205
  --md-comp-toolbar-trailing-space: 8px;
219
206
  --md-comp-toolbar-external-space: 16px;
@@ -306,33 +293,34 @@ $_vibrant: "#{$_toolbar}:is(.vibrant, .filled)";
306
293
  color: var(--md-comp-toolbar-floating-fab-icon-color);
307
294
  @include z-depth("1");
308
295
 
296
+ // A disabled FAB without .circle misses the (0,3,0) FAB disabled arm in
297
+ // _buttons.scss, and this block's level 1 would win at rest. aria-disabled
298
+ // is included so the FAB's own focus tint does not show through.
299
+ &#{$expressive-disabled} {
300
+ @include btn-disabled;
301
+ }
302
+
303
+ // aria-disabled keeps pointer events so hover help still reaches it.
304
+ &[aria-disabled="true"] {
305
+ pointer-events: auto;
306
+ }
307
+
308
+ // State arms skip a disabled FAB, which they would otherwise outrank.
309
309
  // One opacity per state. All three arms are needed, bare `:focus`
310
310
  // included: .extra.circle draws its own `:active, :focus` tint over
311
311
  // primary-container, and leaving either uncovered would flash the FAB's
312
312
  // default colour through a click on this one.
313
- &:hover {
314
- background-color: color-mix(
315
- in oklab,
316
- var(--md-comp-toolbar-floating-fab-icon-color) state-opacity("hover"),
317
- var(--md-comp-toolbar-floating-fab-container-color)
318
- );
313
+ &:hover:not(:where(#{$expressive-disabled})) {
314
+ background-color: state-layer(var(--md-comp-toolbar-floating-fab-icon-color), "hover", var(--md-comp-toolbar-floating-fab-container-color));
319
315
  @include z-depth("2");
320
316
  }
321
317
 
322
- &:focus {
323
- background-color: color-mix(
324
- in oklab,
325
- var(--md-comp-toolbar-floating-fab-icon-color) state-opacity("focus"),
326
- var(--md-comp-toolbar-floating-fab-container-color)
327
- );
318
+ &:focus:not(:where(#{$expressive-disabled})) {
319
+ background-color: state-layer(var(--md-comp-toolbar-floating-fab-icon-color), "focus", var(--md-comp-toolbar-floating-fab-container-color));
328
320
  }
329
321
 
330
- &:active {
331
- background-color: color-mix(
332
- in oklab,
333
- var(--md-comp-toolbar-floating-fab-icon-color) state-opacity("pressed"),
334
- var(--md-comp-toolbar-floating-fab-container-color)
335
- );
322
+ &:active:not(:where(#{$expressive-disabled})) {
323
+ background-color: state-layer(var(--md-comp-toolbar-floating-fab-icon-color), "pressed", var(--md-comp-toolbar-floating-fab-container-color));
336
324
  }
337
325
  }
338
326
  }
@@ -351,7 +339,7 @@ $_vibrant: "#{$_toolbar}:is(.vibrant, .filled)";
351
339
  // has no rule - a bar naming it falls through to the one above.
352
340
  #{$_toolbar}.fixed {
353
341
  position: fixed;
354
- z-index: 996;
342
+ z-index: var(--expressive-z-toolbar);
355
343
  inset: auto auto var(--md-comp-toolbar-external-space) 50%;
356
344
  transform: translateX(-50%);
357
345
  }
@@ -4,7 +4,7 @@
4
4
  //
5
5
  // Anatomy is the HTML. A child .tooltip is the bubble — no .tooltipped
6
6
  // required. Helpers are only for placement and the rich variant:
7
- // .top (default), .bottom, .left, .right, .rich / .max.
7
+ // .top (default), .bottom, .left, .right, .rich.
8
8
  //
9
9
  // Tokens follow https://m3.material.io/components/tooltips/specs
10
10
  // plain inverse-surface / inverse-on-surface, 4dp, body-small
@@ -14,12 +14,13 @@
14
14
  // gap 4dp from the activator
15
15
  //
16
16
  // The JS plugin still exists: .tooltipped + data-tooltip, AutoInit,
17
- // class .tooltip appended to <body>. There is no data-html / unsafeHTML.
17
+ // class .tooltip appended to <body>, or to the shadow root its trigger lives
18
+ // in. There is no data-html / unsafeHTML.
18
19
 
19
20
  .tooltip {
20
21
  --md-comp-plain-tooltip-container-color: var(--md-sys-color-inverse-surface);
21
22
  --md-comp-plain-tooltip-supporting-text-color: var(--md-sys-color-inverse-on-surface);
22
- --md-comp-plain-tooltip-container-shape: 4px;
23
+ --md-comp-plain-tooltip-container-shape: var(--md-sys-shape-corner-extra-small);
23
24
  --md-comp-tooltip-anchor-gap: 4px;
24
25
 
25
26
  box-sizing: border-box;
@@ -40,7 +41,7 @@
40
41
  white-space: normal;
41
42
  overflow-wrap: anywhere;
42
43
  pointer-events: auto;
43
- z-index: 2000;
44
+ z-index: var(--expressive-z-tooltip);
44
45
  @include glass(var(--md-comp-plain-tooltip-container-color));
45
46
  }
46
47
 
@@ -52,7 +53,7 @@
52
53
  // Only shrink-wrap typical activators. A stray .tooltip as a section
53
54
  // child must not turn the section into inline-flex (invalid <p><div>
54
55
  // gets hoisted and would match).
55
- :is(button, a, span, label, i):has(> .tooltip) {
56
+ :is(button, a, span, label):has(> .tooltip) {
56
57
  display: inline-flex;
57
58
  }
58
59
 
@@ -62,7 +63,7 @@
62
63
  opacity: 0;
63
64
  inset: 0 auto auto 50%;
64
65
  transform: translate(-50%, calc(-100% - var(--md-comp-tooltip-anchor-gap))) scale(0.96);
65
- transition: opacity .15s ease-out, transform .15s ease-out, visibility 0s linear .15s;
66
+ transition: opacity var(--md-sys-motion-duration-short3) ease-out, transform var(--md-sys-motion-duration-short3) ease-out, visibility 0s linear var(--md-sys-motion-duration-short3);
66
67
  }
67
68
 
68
69
  :not(body) > .tooltip.bottom {
@@ -107,9 +108,12 @@
107
108
  transform: translate(calc(100% + var(--md-comp-tooltip-anchor-gap)), -50%) scale(1);
108
109
  }
109
110
 
110
- // JS plugin: appended to <body>, top/left set in script. Do not use the
111
- // child-positioning rules; they would fight the inline transform.
112
- body > .tooltip {
111
+ // JS plugin: appended to <body> or a shadow root, top/left set in script. Do
112
+ // not use the child-positioning rules; they would fight the inline transform.
113
+ // A shadow root's top-level elements have no parent element, so neither
114
+ // `body >` nor `:not(body) >` reaches them; `:host >` does.
115
+ body > .tooltip,
116
+ :host > .tooltip {
113
117
  position: absolute;
114
118
  left: 0;
115
119
  top: 0;
@@ -119,10 +123,9 @@ body > .tooltip {
119
123
  }
120
124
 
121
125
  // Rich tooltip — title, supporting text, optional action.
122
- .tooltip.rich,
123
- .tooltip.max {
126
+ .tooltip.rich {
124
127
  --md-comp-rich-tooltip-container-color: var(--md-sys-color-surface-container);
125
- --md-comp-rich-tooltip-container-shape: 12px;
128
+ --md-comp-rich-tooltip-container-shape: var(--md-sys-shape-corner-medium);
126
129
 
127
130
  display: flex;
128
131
  flex-direction: column;
@@ -179,3 +182,9 @@ body > .tooltip {
179
182
  .tooltip-content {
180
183
  min-width: 0;
181
184
  }
185
+
186
+ // Transient messages are not part of the page. Important so a size or state rule that sets
187
+ // `display` cannot bring it back; see base/_print.scss for the page itself.
188
+ @media print {
189
+ .tooltip { display: none !important; }
190
+ }