@nanoporetech-digital/components 3.1.1 → 3.3.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 (461) hide show
  1. package/CHANGELOG.md +38 -0
  2. package/dist/cjs/dom-d7c33f11.js.map +1 -1
  3. package/dist/cjs/index-41582c2a.js +4 -4
  4. package/dist/cjs/index.cjs.js +1 -1
  5. package/dist/cjs/loader.cjs.js +1 -1
  6. package/dist/cjs/{modal-f09e431f.js → modal-e4defcc3.js} +3 -3
  7. package/dist/cjs/{modal-f09e431f.js.map → modal-e4defcc3.js.map} +1 -1
  8. package/dist/cjs/nano-alert.cjs.entry.js +3 -3
  9. package/dist/cjs/nano-alert.cjs.entry.js.map +1 -1
  10. package/dist/cjs/nano-algolia.cjs.entry.js +1 -1
  11. package/dist/cjs/nano-algolia.cjs.entry.js.map +1 -1
  12. package/dist/cjs/nano-aspect-ratio.cjs.entry.js +1 -1
  13. package/dist/cjs/nano-aspect-ratio.cjs.entry.js.map +1 -1
  14. package/dist/cjs/nano-checkbox-group.cjs.entry.js +1 -1
  15. package/dist/cjs/nano-checkbox-group.cjs.entry.js.map +1 -1
  16. package/dist/cjs/nano-checkbox.cjs.entry.js +1 -1
  17. package/dist/cjs/nano-checkbox.cjs.entry.js.map +1 -1
  18. package/dist/cjs/nano-components.cjs.js +1 -1
  19. package/dist/cjs/nano-datalist_3.cjs.entry.js +2 -2
  20. package/dist/cjs/nano-datalist_3.cjs.entry.js.map +1 -1
  21. package/dist/cjs/nano-date-input.cjs.entry.js +1 -1
  22. package/dist/cjs/nano-date-input.cjs.entry.js.map +1 -1
  23. package/dist/cjs/nano-date-picker.cjs.entry.js +1 -1
  24. package/dist/cjs/nano-date-picker.cjs.entry.js.map +1 -1
  25. package/dist/cjs/nano-details.cjs.entry.js +1 -1
  26. package/dist/cjs/nano-details.cjs.entry.js.map +1 -1
  27. package/dist/cjs/nano-dialog.cjs.entry.js +3 -3
  28. package/dist/cjs/nano-dialog.cjs.entry.js.map +1 -1
  29. package/dist/cjs/nano-drawer.cjs.entry.js +3 -3
  30. package/dist/cjs/nano-drawer.cjs.entry.js.map +1 -1
  31. package/dist/cjs/nano-dropdown.cjs.entry.js +2 -2
  32. package/dist/cjs/nano-dropdown.cjs.entry.js.map +1 -1
  33. package/dist/cjs/nano-file-upload.cjs.entry.js +1 -1
  34. package/dist/cjs/nano-file-upload.cjs.entry.js.map +1 -1
  35. package/dist/cjs/nano-global-nav-user-profile_3.cjs.entry.js +10 -5
  36. package/dist/cjs/nano-global-nav-user-profile_3.cjs.entry.js.map +1 -1
  37. package/dist/cjs/nano-global-nav.cjs.entry.js +41 -25
  38. package/dist/cjs/nano-global-nav.cjs.entry.js.map +1 -1
  39. package/dist/cjs/nano-global-search-results.cjs.entry.js +1 -1
  40. package/dist/cjs/nano-global-search-results.cjs.entry.js.map +1 -1
  41. package/dist/cjs/nano-grid_3.cjs.entry.js +2 -2
  42. package/dist/cjs/nano-grid_3.cjs.entry.js.map +1 -1
  43. package/dist/cjs/nano-hero.cjs.entry.js +1 -1
  44. package/dist/cjs/nano-hero.cjs.entry.js.map +1 -1
  45. package/dist/cjs/nano-icon-button.cjs.entry.js +1 -1
  46. package/dist/cjs/nano-icon-button.cjs.entry.js.map +1 -1
  47. package/dist/cjs/nano-icon.cjs.entry.js +1 -1
  48. package/dist/cjs/nano-icon.cjs.entry.js.map +1 -1
  49. package/dist/cjs/nano-input.cjs.entry.js +1 -1
  50. package/dist/cjs/nano-input.cjs.entry.js.map +1 -1
  51. package/dist/cjs/nano-menu-drawer.cjs.entry.js +1 -1
  52. package/dist/cjs/nano-menu-drawer.cjs.entry.js.map +1 -1
  53. package/dist/cjs/nano-progress-bar.cjs.entry.js +2 -2
  54. package/dist/cjs/nano-progress-bar.cjs.entry.js.map +1 -1
  55. package/dist/cjs/nano-range.cjs.entry.js +1 -1
  56. package/dist/cjs/nano-range.cjs.entry.js.map +1 -1
  57. package/dist/cjs/nano-rating.cjs.entry.js +1 -1
  58. package/dist/cjs/nano-rating.cjs.entry.js.map +1 -1
  59. package/dist/cjs/nano-resize-observe_2.cjs.entry.js +23 -12
  60. package/dist/cjs/nano-resize-observe_2.cjs.entry.js.map +1 -1
  61. package/dist/cjs/nano-slide.cjs.entry.js +1 -1
  62. package/dist/cjs/nano-slide.cjs.entry.js.map +1 -1
  63. package/dist/cjs/nano-slides.cjs.entry.js +1 -1
  64. package/dist/cjs/nano-slides.cjs.entry.js.map +1 -1
  65. package/dist/cjs/nano-spinner.cjs.entry.js +1 -1
  66. package/dist/cjs/nano-spinner.cjs.entry.js.map +1 -1
  67. package/dist/cjs/nano-split-pane.cjs.entry.js +1 -1
  68. package/dist/cjs/nano-split-pane.cjs.entry.js.map +1 -1
  69. package/dist/cjs/nano-sticker.cjs.entry.js +1 -1
  70. package/dist/cjs/nano-sticker.cjs.entry.js.map +1 -1
  71. package/dist/cjs/nano-tab-content.cjs.entry.js +1 -1
  72. package/dist/cjs/nano-tab-content.cjs.entry.js.map +1 -1
  73. package/dist/cjs/nano-tab-group.cjs.entry.js +1 -1
  74. package/dist/cjs/nano-tab-group.cjs.entry.js.map +1 -1
  75. package/dist/cjs/nano-tab.cjs.entry.js +1 -1
  76. package/dist/cjs/nano-tab.cjs.entry.js.map +1 -1
  77. package/dist/cjs/{nano-table-844394ad.js → nano-table-2ddb22be.js} +27 -26
  78. package/dist/cjs/nano-table-2ddb22be.js.map +1 -0
  79. package/dist/cjs/nano-table.cjs.entry.js +1 -1
  80. package/dist/cjs/nano-tooltip.cjs.entry.js +1 -1
  81. package/dist/cjs/nano-tooltip.cjs.entry.js.map +1 -1
  82. package/dist/cjs/{tabbable-de4c23d8.js → tabbable-bdf10c84.js} +13 -4
  83. package/dist/cjs/tabbable-bdf10c84.js.map +1 -0
  84. package/dist/cjs/{table.worker-1bc19978.js → table.worker-ec62a083.js} +2 -2
  85. package/dist/cjs/table.worker-ec62a083.js.map +1 -0
  86. package/dist/collection/components/alert/alert.css +16 -56
  87. package/dist/collection/components/algolia/algolia.css +5 -22
  88. package/dist/collection/components/aspect-ratio/aspect-ratio.css +2 -4
  89. package/dist/collection/components/checkbox/checkbox-group.css +8 -19
  90. package/dist/collection/components/checkbox/checkbox.css +24 -61
  91. package/dist/collection/components/date-input/date-input.css +8 -29
  92. package/dist/collection/components/date-picker/date-picker.css +22 -61
  93. package/dist/collection/components/details/details.css +7 -27
  94. package/dist/collection/components/dialog/dialog.css +20 -79
  95. package/dist/collection/components/drawer/drawer.css +13 -42
  96. package/dist/collection/components/dropdown/dropdown.css +5 -13
  97. package/dist/collection/components/file-upload/file-upload.css +45 -127
  98. package/dist/collection/components/global-nav/global-nav.js +40 -24
  99. package/dist/collection/components/global-nav/global-nav.js.map +1 -1
  100. package/dist/collection/components/global-nav/style/global-nav.css +147 -302
  101. package/dist/collection/components/global-search-results/global-search-results.css +81 -248
  102. package/dist/collection/components/grid/grid.css +21 -76
  103. package/dist/collection/components/hero/hero.css +22 -63
  104. package/dist/collection/components/icon/icon.css +2 -5
  105. package/dist/collection/components/icon-button/icon-button.css +4 -15
  106. package/dist/collection/components/img/img.css +9 -19
  107. package/dist/collection/components/input/input.css +34 -148
  108. package/dist/collection/components/input/input.js +2 -2
  109. package/dist/collection/components/input/input.js.map +1 -1
  110. package/dist/collection/components/menu/menu.css +1 -2
  111. package/dist/collection/components/menu-drawer/menu-drawer.css +16 -47
  112. package/dist/collection/components/nav-item/nav-item.css +73 -147
  113. package/dist/collection/components/nav-item/nav-item.js +8 -3
  114. package/dist/collection/components/nav-item/nav-item.js.map +1 -1
  115. package/dist/collection/components/option/option.css +10 -40
  116. package/dist/collection/components/progress-bar/progress-bar.css +5 -26
  117. package/dist/collection/components/progress-bar/progress-bar.js +1 -1
  118. package/dist/collection/components/progress-bar/progress-bar.js.map +1 -1
  119. package/dist/collection/components/range/range.css +20 -56
  120. package/dist/collection/components/rating/rating.css +9 -28
  121. package/dist/collection/components/resize-observe/resize-observe.js +38 -12
  122. package/dist/collection/components/resize-observe/resize-observe.js.map +1 -1
  123. package/dist/collection/components/select/select.css +56 -210
  124. package/dist/collection/components/skeleton/skeleton.css +2 -17
  125. package/dist/collection/components/slides/slide.css +4 -13
  126. package/dist/collection/components/slides/slides.css +3 -14
  127. package/dist/collection/components/spinner/spinner.css +34 -122
  128. package/dist/collection/components/split-pane/split-pane.css +4 -18
  129. package/dist/collection/components/sticker/sticker.css +8 -18
  130. package/dist/collection/components/table/table.children.js +10 -10
  131. package/dist/collection/components/table/table.children.js.map +1 -1
  132. package/dist/collection/components/table/table.css +111 -61
  133. package/dist/collection/components/table/table.js +22 -20
  134. package/dist/collection/components/table/table.js.map +1 -1
  135. package/dist/collection/components/table/table.service.js +1 -1
  136. package/dist/collection/components/table/table.service.js.map +1 -1
  137. package/dist/collection/components/tabs/tab-content.css +11 -59
  138. package/dist/collection/components/tabs/tab-group.css +20 -77
  139. package/dist/collection/components/tabs/tab.css +11 -30
  140. package/dist/collection/components/tooltip/tooltip.css +26 -56
  141. package/dist/collection/utils/dom.js.map +1 -1
  142. package/dist/collection/utils/modal.js +1 -1
  143. package/dist/collection/utils/modal.js.map +1 -1
  144. package/dist/collection/utils/tabbable.js +12 -3
  145. package/dist/collection/utils/tabbable.js.map +1 -1
  146. package/dist/components/algolia.js +1 -1
  147. package/dist/components/algolia.js.map +1 -1
  148. package/dist/components/date-picker.js +1 -1
  149. package/dist/components/date-picker.js.map +1 -1
  150. package/dist/components/dom.js.map +1 -1
  151. package/dist/components/dropdown.js +1 -1
  152. package/dist/components/dropdown.js.map +1 -1
  153. package/dist/components/grid.js +1 -1
  154. package/dist/components/grid.js.map +1 -1
  155. package/dist/components/icon-button.js +1 -1
  156. package/dist/components/icon-button.js.map +1 -1
  157. package/dist/components/icon.js +1 -1
  158. package/dist/components/icon.js.map +1 -1
  159. package/dist/components/img.js +1 -1
  160. package/dist/components/img.js.map +1 -1
  161. package/dist/components/input.js +1 -1
  162. package/dist/components/input.js.map +1 -1
  163. package/dist/components/menu.js +1 -1
  164. package/dist/components/menu.js.map +1 -1
  165. package/dist/components/modal.js +1 -1
  166. package/dist/components/modal.js.map +1 -1
  167. package/dist/components/nano-alert.js +1 -1
  168. package/dist/components/nano-alert.js.map +1 -1
  169. package/dist/components/nano-aspect-ratio.js +1 -1
  170. package/dist/components/nano-aspect-ratio.js.map +1 -1
  171. package/dist/components/nano-checkbox-group.js +1 -1
  172. package/dist/components/nano-checkbox-group.js.map +1 -1
  173. package/dist/components/nano-checkbox.js +1 -1
  174. package/dist/components/nano-checkbox.js.map +1 -1
  175. package/dist/components/nano-date-input.js +1 -1
  176. package/dist/components/nano-date-input.js.map +1 -1
  177. package/dist/components/nano-details.js +1 -1
  178. package/dist/components/nano-details.js.map +1 -1
  179. package/dist/components/nano-dialog.js +1 -1
  180. package/dist/components/nano-dialog.js.map +1 -1
  181. package/dist/components/nano-drawer.js +1 -1
  182. package/dist/components/nano-drawer.js.map +1 -1
  183. package/dist/components/nano-file-upload.js +1 -1
  184. package/dist/components/nano-file-upload.js.map +1 -1
  185. package/dist/components/nano-global-nav.js +41 -25
  186. package/dist/components/nano-global-nav.js.map +1 -1
  187. package/dist/components/nano-global-search-results.js +1 -1
  188. package/dist/components/nano-global-search-results.js.map +1 -1
  189. package/dist/components/nano-hero.js +1 -1
  190. package/dist/components/nano-hero.js.map +1 -1
  191. package/dist/components/nano-menu-drawer.js +1 -1
  192. package/dist/components/nano-menu-drawer.js.map +1 -1
  193. package/dist/components/nano-range.js +1 -1
  194. package/dist/components/nano-range.js.map +1 -1
  195. package/dist/components/nano-rating.js +1 -1
  196. package/dist/components/nano-rating.js.map +1 -1
  197. package/dist/components/nano-slide.js +1 -1
  198. package/dist/components/nano-slide.js.map +1 -1
  199. package/dist/components/nano-slides.js +1 -1
  200. package/dist/components/nano-slides.js.map +1 -1
  201. package/dist/components/nano-split-pane.js +1 -1
  202. package/dist/components/nano-split-pane.js.map +1 -1
  203. package/dist/components/nano-tab-content.js +1 -1
  204. package/dist/components/nano-tab-content.js.map +1 -1
  205. package/dist/components/nano-tab-group.js +1 -1
  206. package/dist/components/nano-tab-group.js.map +1 -1
  207. package/dist/components/nano-tab.js +1 -1
  208. package/dist/components/nano-tab.js.map +1 -1
  209. package/dist/components/nano-table.js +35 -28
  210. package/dist/components/nano-table.js.map +1 -1
  211. package/dist/components/nav-item.js +9 -4
  212. package/dist/components/nav-item.js.map +1 -1
  213. package/dist/components/option.js +1 -1
  214. package/dist/components/option.js.map +1 -1
  215. package/dist/components/progress-bar.js +2 -2
  216. package/dist/components/progress-bar.js.map +1 -1
  217. package/dist/components/resize-observe.js +23 -13
  218. package/dist/components/resize-observe.js.map +1 -1
  219. package/dist/components/select.js +1 -1
  220. package/dist/components/select.js.map +1 -1
  221. package/dist/components/skeleton.js +1 -1
  222. package/dist/components/skeleton.js.map +1 -1
  223. package/dist/components/spinner.js +1 -1
  224. package/dist/components/spinner.js.map +1 -1
  225. package/dist/components/sticker.js +1 -1
  226. package/dist/components/sticker.js.map +1 -1
  227. package/dist/components/tabbable.js +12 -3
  228. package/dist/components/tabbable.js.map +1 -1
  229. package/dist/components/tooltip.js +1 -1
  230. package/dist/components/tooltip.js.map +1 -1
  231. package/dist/custom-elements/index.js +147 -106
  232. package/dist/custom-elements/index.js.map +1 -1
  233. package/dist/esm/dom-d3ad49e2.js.map +1 -1
  234. package/dist/esm/index-3c280603.js +4 -4
  235. package/dist/esm/index.js +1 -1
  236. package/dist/esm/loader.js +1 -1
  237. package/dist/esm/{modal-215df46b.js → modal-5c9ce466.js} +3 -3
  238. package/dist/esm/{modal-215df46b.js.map → modal-5c9ce466.js.map} +1 -1
  239. package/dist/esm/nano-alert.entry.js +3 -3
  240. package/dist/esm/nano-alert.entry.js.map +1 -1
  241. package/dist/esm/nano-algolia.entry.js +1 -1
  242. package/dist/esm/nano-algolia.entry.js.map +1 -1
  243. package/dist/esm/nano-aspect-ratio.entry.js +1 -1
  244. package/dist/esm/nano-aspect-ratio.entry.js.map +1 -1
  245. package/dist/esm/nano-checkbox-group.entry.js +1 -1
  246. package/dist/esm/nano-checkbox-group.entry.js.map +1 -1
  247. package/dist/esm/nano-checkbox.entry.js +1 -1
  248. package/dist/esm/nano-checkbox.entry.js.map +1 -1
  249. package/dist/esm/nano-components.js +1 -1
  250. package/dist/esm/nano-datalist_3.entry.js +2 -2
  251. package/dist/esm/nano-datalist_3.entry.js.map +1 -1
  252. package/dist/esm/nano-date-input.entry.js +1 -1
  253. package/dist/esm/nano-date-input.entry.js.map +1 -1
  254. package/dist/esm/nano-date-picker.entry.js +1 -1
  255. package/dist/esm/nano-date-picker.entry.js.map +1 -1
  256. package/dist/esm/nano-details.entry.js +1 -1
  257. package/dist/esm/nano-details.entry.js.map +1 -1
  258. package/dist/esm/nano-dialog.entry.js +3 -3
  259. package/dist/esm/nano-dialog.entry.js.map +1 -1
  260. package/dist/esm/nano-drawer.entry.js +3 -3
  261. package/dist/esm/nano-drawer.entry.js.map +1 -1
  262. package/dist/esm/nano-dropdown.entry.js +2 -2
  263. package/dist/esm/nano-dropdown.entry.js.map +1 -1
  264. package/dist/esm/nano-file-upload.entry.js +1 -1
  265. package/dist/esm/nano-file-upload.entry.js.map +1 -1
  266. package/dist/esm/nano-global-nav-user-profile_3.entry.js +10 -5
  267. package/dist/esm/nano-global-nav-user-profile_3.entry.js.map +1 -1
  268. package/dist/esm/nano-global-nav.entry.js +41 -25
  269. package/dist/esm/nano-global-nav.entry.js.map +1 -1
  270. package/dist/esm/nano-global-search-results.entry.js +1 -1
  271. package/dist/esm/nano-global-search-results.entry.js.map +1 -1
  272. package/dist/esm/nano-grid_3.entry.js +2 -2
  273. package/dist/esm/nano-grid_3.entry.js.map +1 -1
  274. package/dist/esm/nano-hero.entry.js +1 -1
  275. package/dist/esm/nano-hero.entry.js.map +1 -1
  276. package/dist/esm/nano-icon-button.entry.js +1 -1
  277. package/dist/esm/nano-icon-button.entry.js.map +1 -1
  278. package/dist/esm/nano-icon.entry.js +1 -1
  279. package/dist/esm/nano-icon.entry.js.map +1 -1
  280. package/dist/esm/nano-input.entry.js +1 -1
  281. package/dist/esm/nano-input.entry.js.map +1 -1
  282. package/dist/esm/nano-menu-drawer.entry.js +1 -1
  283. package/dist/esm/nano-menu-drawer.entry.js.map +1 -1
  284. package/dist/esm/nano-progress-bar.entry.js +2 -2
  285. package/dist/esm/nano-progress-bar.entry.js.map +1 -1
  286. package/dist/esm/nano-range.entry.js +1 -1
  287. package/dist/esm/nano-range.entry.js.map +1 -1
  288. package/dist/esm/nano-rating.entry.js +1 -1
  289. package/dist/esm/nano-rating.entry.js.map +1 -1
  290. package/dist/esm/nano-resize-observe_2.entry.js +23 -12
  291. package/dist/esm/nano-resize-observe_2.entry.js.map +1 -1
  292. package/dist/esm/nano-slide.entry.js +1 -1
  293. package/dist/esm/nano-slide.entry.js.map +1 -1
  294. package/dist/esm/nano-slides.entry.js +1 -1
  295. package/dist/esm/nano-slides.entry.js.map +1 -1
  296. package/dist/esm/nano-spinner.entry.js +1 -1
  297. package/dist/esm/nano-spinner.entry.js.map +1 -1
  298. package/dist/esm/nano-split-pane.entry.js +1 -1
  299. package/dist/esm/nano-split-pane.entry.js.map +1 -1
  300. package/dist/esm/nano-sticker.entry.js +1 -1
  301. package/dist/esm/nano-sticker.entry.js.map +1 -1
  302. package/dist/esm/nano-tab-content.entry.js +1 -1
  303. package/dist/esm/nano-tab-content.entry.js.map +1 -1
  304. package/dist/esm/nano-tab-group.entry.js +1 -1
  305. package/dist/esm/nano-tab-group.entry.js.map +1 -1
  306. package/dist/esm/nano-tab.entry.js +1 -1
  307. package/dist/esm/nano-tab.entry.js.map +1 -1
  308. package/dist/esm/{nano-table-19d19d72.js → nano-table-9d4fbd41.js} +27 -26
  309. package/dist/esm/nano-table-9d4fbd41.js.map +1 -0
  310. package/dist/esm/nano-table.entry.js +1 -1
  311. package/dist/esm/nano-tooltip.entry.js +1 -1
  312. package/dist/esm/nano-tooltip.entry.js.map +1 -1
  313. package/dist/esm/{tabbable-614f515e.js → tabbable-31485ff7.js} +13 -4
  314. package/dist/esm/tabbable-31485ff7.js.map +1 -0
  315. package/dist/esm/{table.worker-c82cecdf.js → table.worker-1ba8ac3f.js} +2 -2
  316. package/dist/esm/table.worker-1ba8ac3f.js.map +1 -0
  317. package/dist/nano-components/index.esm.js +1 -1
  318. package/dist/nano-components/nano-components.css +1 -1
  319. package/dist/nano-components/nano-components.esm.js +1 -1
  320. package/dist/nano-components/{p-35295332.entry.js → p-151aad1e.entry.js} +5 -5
  321. package/dist/nano-components/{p-35295332.entry.js.map → p-151aad1e.entry.js.map} +1 -1
  322. package/dist/nano-components/p-15543295.entry.js +5 -0
  323. package/dist/nano-components/{p-6e3412d2.entry.js.map → p-15543295.entry.js.map} +1 -1
  324. package/dist/nano-components/p-1e709f87.entry.js +5 -0
  325. package/dist/nano-components/p-1e709f87.entry.js.map +1 -0
  326. package/dist/nano-components/p-1f347342.entry.js +5 -0
  327. package/dist/nano-components/{p-02df1f62.entry.js.map → p-1f347342.entry.js.map} +1 -1
  328. package/dist/nano-components/p-216ece9a.js +5 -0
  329. package/dist/nano-components/{p-7ade1695.js.map → p-216ece9a.js.map} +0 -0
  330. package/dist/nano-components/p-23575705.entry.js +5 -0
  331. package/dist/nano-components/{p-6958df8c.entry.js.map → p-23575705.entry.js.map} +1 -1
  332. package/dist/nano-components/p-244223f0.entry.js +5 -0
  333. package/dist/nano-components/{p-6cd59e58.entry.js.map → p-244223f0.entry.js.map} +1 -1
  334. package/dist/nano-components/p-284dd9a2.entry.js +5 -0
  335. package/dist/nano-components/{p-5107646c.entry.js.map → p-284dd9a2.entry.js.map} +1 -1
  336. package/dist/nano-components/p-2cb4615b.entry.js +5 -0
  337. package/dist/nano-components/{p-e3730878.entry.js.map → p-2cb4615b.entry.js.map} +1 -1
  338. package/dist/nano-components/p-36842a50.entry.js +5 -0
  339. package/dist/nano-components/{p-f69f93e9.entry.js.map → p-36842a50.entry.js.map} +1 -1
  340. package/dist/nano-components/p-41addb3a.entry.js +5 -0
  341. package/dist/nano-components/{p-0a5ad0ef.entry.js.map → p-41addb3a.entry.js.map} +1 -1
  342. package/dist/nano-components/{p-9a385481.js → p-45abbbdd.js} +2 -2
  343. package/dist/nano-components/p-45abbbdd.js.map +1 -0
  344. package/dist/nano-components/p-46b348b7.entry.js +5 -0
  345. package/dist/nano-components/{p-28f713fb.entry.js.map → p-46b348b7.entry.js.map} +1 -1
  346. package/dist/nano-components/p-4b69178e.entry.js +5 -0
  347. package/dist/nano-components/{p-5e33798f.entry.js.map → p-4b69178e.entry.js.map} +1 -1
  348. package/dist/nano-components/p-4f0e14b5.entry.js +5 -0
  349. package/dist/nano-components/{p-8f5e0022.entry.js.map → p-4f0e14b5.entry.js.map} +1 -1
  350. package/dist/nano-components/p-559a6492.entry.js +5 -0
  351. package/dist/nano-components/p-559a6492.entry.js.map +1 -0
  352. package/dist/nano-components/p-601e18d5.entry.js +5 -0
  353. package/dist/nano-components/p-601e18d5.entry.js.map +1 -0
  354. package/dist/nano-components/p-69e5a37d.entry.js +5 -0
  355. package/dist/nano-components/{p-282987e6.entry.js.map → p-69e5a37d.entry.js.map} +1 -1
  356. package/dist/nano-components/p-751927d1.entry.js +5 -0
  357. package/dist/nano-components/{p-5d81773d.entry.js.map → p-751927d1.entry.js.map} +1 -1
  358. package/dist/nano-components/p-845ae77e.js.map +1 -1
  359. package/dist/nano-components/p-866e7e88.js +5 -0
  360. package/dist/nano-components/p-866e7e88.js.map +1 -0
  361. package/dist/nano-components/{p-b4a045a2.entry.js → p-89b8ce4f.entry.js} +2 -2
  362. package/dist/nano-components/{p-b4a045a2.entry.js.map → p-89b8ce4f.entry.js.map} +0 -0
  363. package/dist/nano-components/p-9059c8c1.entry.js +5 -0
  364. package/dist/nano-components/{p-d8e8d7e3.entry.js.map → p-9059c8c1.entry.js.map} +1 -1
  365. package/dist/nano-components/p-92504f7f.entry.js +5 -0
  366. package/dist/nano-components/{p-50fcb11c.entry.js.map → p-92504f7f.entry.js.map} +1 -1
  367. package/dist/nano-components/p-99fbae74.entry.js +5 -0
  368. package/dist/nano-components/{p-8a52a411.entry.js.map → p-99fbae74.entry.js.map} +1 -1
  369. package/dist/nano-components/p-9eeed8f5.entry.js +5 -0
  370. package/dist/nano-components/{p-4c97f05f.entry.js.map → p-9eeed8f5.entry.js.map} +1 -1
  371. package/dist/nano-components/p-a183e3c7.entry.js +5 -0
  372. package/dist/nano-components/{p-b290a970.entry.js.map → p-a183e3c7.entry.js.map} +1 -1
  373. package/dist/nano-components/p-a2e38472.entry.js +5 -0
  374. package/dist/nano-components/p-a2e38472.entry.js.map +1 -0
  375. package/dist/nano-components/p-b87539f0.entry.js +5 -0
  376. package/dist/nano-components/{p-efa8c520.entry.js.map → p-b87539f0.entry.js.map} +1 -1
  377. package/dist/nano-components/p-b9c8b99f.entry.js +5 -0
  378. package/dist/nano-components/p-b9c8b99f.entry.js.map +1 -0
  379. package/dist/nano-components/{p-cb79d1ec.js → p-c9a7c7ea.js} +2 -2
  380. package/dist/nano-components/{p-cb79d1ec.js.map → p-c9a7c7ea.js.map} +1 -1
  381. package/dist/nano-components/{p-c45851c3.entry.js → p-d1c8eca4.entry.js} +2 -2
  382. package/dist/nano-components/{p-c45851c3.entry.js.map → p-d1c8eca4.entry.js.map} +1 -1
  383. package/dist/nano-components/p-d8678bdc.entry.js +5 -0
  384. package/dist/nano-components/p-d8678bdc.entry.js.map +1 -0
  385. package/dist/nano-components/p-db4b6602.entry.js +5 -0
  386. package/dist/nano-components/{p-716064b6.entry.js.map → p-db4b6602.entry.js.map} +1 -1
  387. package/dist/nano-components/{p-916e4b6b.entry.js → p-dba8a88d.entry.js} +2 -2
  388. package/dist/nano-components/{p-916e4b6b.entry.js.map → p-dba8a88d.entry.js.map} +1 -1
  389. package/dist/nano-components/p-e4e41e06.entry.js +5 -0
  390. package/dist/nano-components/p-e4e41e06.entry.js.map +1 -0
  391. package/dist/nano-components/p-e5408bc8.entry.js +5 -0
  392. package/dist/nano-components/{p-c5bb5540.entry.js.map → p-e5408bc8.entry.js.map} +1 -1
  393. package/dist/nano-components/p-f43d1d8e.entry.js +5 -0
  394. package/dist/nano-components/p-f43d1d8e.entry.js.map +1 -0
  395. package/dist/nano-components/p-f7471cca.entry.js +5 -0
  396. package/dist/nano-components/{p-66ad1418.entry.js.map → p-f7471cca.entry.js.map} +1 -1
  397. package/dist/nano-components/p-fe94eeff.entry.js +5 -0
  398. package/dist/nano-components/{p-701e8ebf.entry.js.map → p-fe94eeff.entry.js.map} +1 -1
  399. package/dist/nano-components/p-feb9f164.entry.js +5 -0
  400. package/dist/nano-components/{p-81136f24.entry.js.map → p-feb9f164.entry.js.map} +1 -1
  401. package/dist/themes/nanopore.css +1 -1
  402. package/dist/themes/nanopore.css.map +1 -1
  403. package/dist/types/components/global-nav/global-nav.d.ts +8 -3
  404. package/dist/types/components/input/input.d.ts +2 -2
  405. package/dist/types/components/resize-observe/resize-observe.d.ts +5 -2
  406. package/dist/types/components/table/table.d.ts +8 -7
  407. package/dist/types/components.d.ts +4 -0
  408. package/dist/types/utils/dom.d.ts +1 -1
  409. package/docs-json.json +175 -9
  410. package/docs-vscode.json +2 -2
  411. package/package.json +2 -2
  412. package/dist/cjs/nano-table-844394ad.js.map +0 -1
  413. package/dist/cjs/tabbable-de4c23d8.js.map +0 -1
  414. package/dist/cjs/table.worker-1bc19978.js.map +0 -1
  415. package/dist/esm/nano-table-19d19d72.js.map +0 -1
  416. package/dist/esm/tabbable-614f515e.js.map +0 -1
  417. package/dist/esm/table.worker-c82cecdf.js.map +0 -1
  418. package/dist/nano-components/p-02df1f62.entry.js +0 -5
  419. package/dist/nano-components/p-0a5ad0ef.entry.js +0 -5
  420. package/dist/nano-components/p-1ae8c03e.entry.js +0 -5
  421. package/dist/nano-components/p-1ae8c03e.entry.js.map +0 -1
  422. package/dist/nano-components/p-282987e6.entry.js +0 -5
  423. package/dist/nano-components/p-28b43ee9.entry.js +0 -5
  424. package/dist/nano-components/p-28b43ee9.entry.js.map +0 -1
  425. package/dist/nano-components/p-28f713fb.entry.js +0 -5
  426. package/dist/nano-components/p-37553477.entry.js +0 -5
  427. package/dist/nano-components/p-37553477.entry.js.map +0 -1
  428. package/dist/nano-components/p-4c97f05f.entry.js +0 -5
  429. package/dist/nano-components/p-50fcb11c.entry.js +0 -5
  430. package/dist/nano-components/p-5107646c.entry.js +0 -5
  431. package/dist/nano-components/p-5d81773d.entry.js +0 -5
  432. package/dist/nano-components/p-5e33798f.entry.js +0 -5
  433. package/dist/nano-components/p-66ad1418.entry.js +0 -5
  434. package/dist/nano-components/p-6958df8c.entry.js +0 -5
  435. package/dist/nano-components/p-6cd59e58.entry.js +0 -5
  436. package/dist/nano-components/p-6e3412d2.entry.js +0 -5
  437. package/dist/nano-components/p-701e8ebf.entry.js +0 -5
  438. package/dist/nano-components/p-716064b6.entry.js +0 -5
  439. package/dist/nano-components/p-7ade1695.js +0 -5
  440. package/dist/nano-components/p-81136f24.entry.js +0 -5
  441. package/dist/nano-components/p-8a52a411.entry.js +0 -5
  442. package/dist/nano-components/p-8f5e0022.entry.js +0 -5
  443. package/dist/nano-components/p-9a385481.js.map +0 -1
  444. package/dist/nano-components/p-a151dea5.entry.js +0 -5
  445. package/dist/nano-components/p-a151dea5.entry.js.map +0 -1
  446. package/dist/nano-components/p-b290a970.entry.js +0 -5
  447. package/dist/nano-components/p-b7901427.entry.js +0 -5
  448. package/dist/nano-components/p-b7901427.entry.js.map +0 -1
  449. package/dist/nano-components/p-b83a8320.js +0 -5
  450. package/dist/nano-components/p-b83a8320.js.map +0 -1
  451. package/dist/nano-components/p-c5bb5540.entry.js +0 -5
  452. package/dist/nano-components/p-d8e8d7e3.entry.js +0 -5
  453. package/dist/nano-components/p-e3730878.entry.js +0 -5
  454. package/dist/nano-components/p-efa8c520.entry.js +0 -5
  455. package/dist/nano-components/p-f69f93e9.entry.js +0 -5
  456. package/dist/nano-components/p-f71f69c9.entry.js +0 -5
  457. package/dist/nano-components/p-f71f69c9.entry.js.map +0 -1
  458. package/dist/nano-components/p-f95a263c.entry.js +0 -5
  459. package/dist/nano-components/p-f95a263c.entry.js.map +0 -1
  460. package/dist/nano-components/p-fa2a6733.entry.js +0 -5
  461. package/dist/nano-components/p-fa2a6733.entry.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["src/components/tooltip/tooltip.scss?tag=nano-tooltip&encapsulation=shadow","src/components/tooltip/tooltip.tsx"],"names":["tooltipCss","id","Tooltip","this","componentId","isVisible","handleBlur","hasTrigger","hide","handleClick","open","show","handleFocus","handleKeyDown","event","key","stopPropagation","handleMouseOver","handleMouseOut","handleSlotChange","target","getTarget","handleTTSlotChange","contentDiv","host","querySelector","shadowRoot","getElementById","Array","from","querySelectorAll","filter","elm","forEach","appendChild","_target","newTarget","removeAttribute","setAttribute","[object Object]","slShow","nanoShow","emit","defaultPrevented","popover","slHide","nanoHide","children","find","el","tagName","toLowerCase","getAttribute","Error","triggerType","triggers","trigger","split","includes","setOptions","placement","distance","skidding","transitionElement","tooltip","onAfterHide","nanoAfterHide","onAfterShow","nanoAfterShow","Popover","tooltipPositioner","syncOptions","ele","slot","hidden","destroy","h","Host","onKeyDown","onMouseOver","onMouseOut","onBlur","onFocus","onClick","onSlotchange","disabled","ref","class","part","tooltip--open","role","aria-hidden","name","content","data-popper-arrow"],"mappings":"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","sourcesContent":["@import '../../global/style/nano-theme/components';\n@import '../../global/style/nano-theme/layers';\n\n/**\n * @prop --hide-delay: The amount of time to wait before hiding the tooltip.\n * @prop --hide-duration: The amount of time the hide transition takes to complete.\n * @prop --hide-timing-function: The timing function (easing) to use for the hide transition.\n * @prop --max-width: The maximum width of the tooltip.\n * @prop --show-delay: The amount of time to wait before showing the tooltip.\n * @prop --show-duration: The amount of time the show transition takes to complete.\n * @prop --show-timing-function: The timing function (easing) to use for the show transition.\n */\n:host {\n --max-width: 20rem;\n --hide-delay: 0s;\n --hide-duration: 0.125s;\n --hide-timing-function: ease;\n --show-delay: 0.125s;\n --show-duration: 0.125s;\n --show-timing-function: ease;\n\n /* autoprefixer: ignore next */\n display: contents;\n}\n\n.tooltip {\n $self: &;\n\n max-inline-size: var(--max-width);\n border-radius: #{$tooltip-border-radius};\n background-color: black;\n font-size: #{$tooltip-fontsize};\n line-height: 1.5;\n color: white;\n opacity: 0;\n padding: #{$tooltip-padding};\n transform: translateY(10px) translateZ(0);\n transform-origin: bottom;\n transition-property: opacity, transform;\n transition-delay: var(--hide-delay);\n transition-duration: var(--hide-duration);\n transition-timing-function: var(--hide-timing-function);\n white-space: normal;\n\n &-arrow {\n content: '';\n position: absolute;\n inline-size: 0;\n block-size: 0;\n color: black;\n transition: 0.2s ease transform;\n }\n\n &-positioner {\n position: absolute;\n z-index: #{$layer-index-tooltip};\n\n &[data-popper-placement^='top'] #{$self} {\n transform-origin: bottom;\n transform: translateY(-10px) translateZ(0);\n }\n\n &[data-popper-placement^='bottom'] #{$self} {\n transform-origin: top;\n }\n\n &[data-popper-placement^='left'] #{$self} {\n transform-origin: right;\n }\n\n &[data-popper-placement^='right'] #{$self} {\n transform-origin: left;\n }\n\n &.popover-visible #{$self} {\n opacity: 1;\n transform: none;\n transition-delay: var(--show-delay);\n transition-duration: var(--show-duration);\n transition-timing-function: var(--show-timing-function);\n }\n\n // Arrow + bottom\n &[data-popper-placement^='bottom'] #{$self}-arrow {\n inset-block-end: 100%;\n inset-inline-start: calc(50% - #{$tooltip-arrow-size});\n border-block-end: #{$tooltip-arrow-size} solid;\n border-inline-start: #{$tooltip-arrow-size} solid transparent;\n border-inline-end: #{$tooltip-arrow-size} solid transparent;\n }\n\n &[data-popper-placement='bottom-start'] #{$self}-arrow {\n inset-inline-start: #{$tooltip-arrow-offset};\n }\n\n &[data-popper-placement='bottom-end'] #{$self}-arrow {\n inset-inline: auto #{$tooltip-arrow-offset};\n }\n\n // Arrow + top\n &[data-popper-placement^='top'] #{$self}-arrow {\n inset-block-start: 100%;\n inset-inline-start: calc(50% - #{$tooltip-arrow-size});\n border-block-start: #{$tooltip-arrow-size} solid;\n border-inline-start: #{$tooltip-arrow-size} solid transparent;\n border-inline-end: #{$tooltip-arrow-size} solid transparent;\n }\n\n &[data-popper-placement='top-start'] #{$self}-arrow {\n inset-inline-start: #{$tooltip-arrow-offset};\n }\n\n &[data-popper-placement='top-end'] #{$self}-arrow {\n inset-inline: auto #{$tooltip-arrow-offset};\n }\n\n // Arrow + left\n &[data-popper-placement^='left'] #{$self}-arrow {\n inset-block-start: calc(50% - #{$tooltip-arrow-size});\n inset-inline-start: 100%;\n border-inline-start: #{$tooltip-arrow-size} solid;\n border-block-start: #{$tooltip-arrow-size} solid transparent;\n border-block-end: #{$tooltip-arrow-size} solid transparent;\n }\n\n &[data-popper-placement='left-start'] #{$self}-arrow {\n inset-block-start: #{$tooltip-arrow-offset};\n }\n\n &[data-popper-placement='left-end'] #{$self}-arrow {\n inset-block: auto #{$tooltip-arrow-offset};\n }\n\n // Arrow + right\n &[data-popper-placement^='right'] #{$self}-arrow {\n inset-block-start: calc(50% - #{$tooltip-arrow-size});\n inset-inline-end: 100%;\n border-inline-end: #{$tooltip-arrow-size} solid;\n border-block-start: #{$tooltip-arrow-size} solid transparent;\n border-block-end: #{$tooltip-arrow-size} solid transparent;\n }\n\n &[data-popper-placement='right-start'] #{$self}-arrow {\n inset-block-start: #{$tooltip-arrow-offset};\n }\n\n &[data-popper-placement='right-end'] #{$self}-arrow {\n inset-block: auto #{$tooltip-arrow-offset};\n }\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Method,\n Prop,\n Watch,\n h,\n} from '@stencil/core';\nimport Popover from '../../utils/popover';\n\nlet id = 0;\n\n/**\n * Tooltips display additional information based on a specific action.\n * @slot - The tooltip's target element. Only the first element will be used as the target.\n * @slot content - The tooltip's content. Alternatively, you can use the content prop.\n */\n@Component({\n tag: 'nano-tooltip',\n styleUrl: 'tooltip.scss',\n shadow: true,\n})\nexport class Tooltip {\n private componentId = `tooltip-${++id}`;\n private isVisible = false;\n private popover: Popover;\n private tooltipPositioner: HTMLElement;\n private tooltip: any;\n\n private _target: HTMLElement;\n private get target() {\n return this._target;\n }\n private set target(newTarget) {\n if (newTarget !== this._target && this._target) {\n this._target.removeAttribute('aria-describedby');\n }\n newTarget.setAttribute('aria-describedby', this.componentId);\n this._target = newTarget;\n }\n\n @Element() host: HTMLNanoTooltipElement;\n\n /** The tooltip's content. Alternatively, you can use the content slot. */\n @Prop() content = '';\n\n /**\n * The preferred placement of the tooltip. Note that the actual placement may vary as needed to keep the tooltip\n * inside of the viewport.\n */\n @Prop() placement:\n | 'top'\n | 'top-start'\n | 'top-end'\n | 'right'\n | 'right-start'\n | 'right-end'\n | 'bottom'\n | 'bottom-start'\n | 'bottom-end'\n | 'left'\n | 'left-start'\n | 'left-end' = 'top';\n\n /** Set to true to disable the tooltip so it won't show when triggered. */\n @Prop() disabled = false;\n\n /** The distance in pixels from which to offset the tooltip away from its target. */\n @Prop() distance = 10;\n\n /** Indicates whether or not the tooltip is open. You can use this in lieu of the show/hide methods. */\n @Prop({ mutable: true, reflect: true }) open = false;\n\n /** The distance in pixels from which to offset the tooltip along its target. */\n @Prop() skidding = 0;\n\n /**\n * Controls how the tooltip is activated. Possible options include `click`, `hover`, `focus`, and `manual`. Multiple\n * options can be passed by separating them with a space. When manual is used, the tooltip must be activated\n * programmatically.\n */\n @Prop() trigger: string = 'hover focus';\n\n @Watch('open')\n handleOpenChange() {\n this.open ? this.show() : this.hide();\n }\n\n // Events\n\n /** Emitted when the tooltip begins to show. Calling `event.preventDefault()` will prevent it from being shown. */\n @Event() nanoShow: EventEmitter;\n\n /** Emitted after the tooltip has shown and all transitions are complete. */\n @Event() nanoAfterShow: EventEmitter;\n\n /** Emitted when the tooltip begins to hide. Calling `event.preventDefault()` will prevent it from being hidden. */\n @Event() nanoHide: EventEmitter;\n\n /** Emitted after the tooltip has hidden and all transitions are complete. */\n @Event() nanoAfterHide: EventEmitter;\n\n // Public methods\n\n /** Shows the tooltip. */\n @Method()\n async show() {\n // Prevent subsequent calls to the method, whether manually or triggered by the `open` watcher\n if (this.isVisible) {\n return;\n }\n\n const slShow = this.nanoShow.emit();\n if (slShow.defaultPrevented) {\n this.open = false;\n return;\n }\n\n this.isVisible = true;\n this.open = true;\n this.popover.show();\n }\n\n /** Hides the tooltip. */\n @Method()\n async hide() {\n // Prevent subsequent calls to the method, whether manually or triggered by the `open` watcher\n if (!this.isVisible) {\n return;\n }\n\n const slHide = this.nanoHide.emit();\n if (slHide.defaultPrevented) {\n this.open = true;\n return;\n }\n\n this.isVisible = false;\n this.open = false;\n this.popover.hide();\n }\n\n // Private methods\n\n private getTarget() {\n // Get the first child that isn't a <style> or content slot\n const target = [...Array.from(this.host.children)].find(\n (el) =>\n el.tagName.toLowerCase() !== 'style' &&\n el.getAttribute('slot') !== 'content'\n ) as HTMLElement;\n\n if (!target) {\n throw new Error('Invalid tooltip target: no child element was found.');\n }\n\n return target;\n }\n\n private hasTrigger(triggerType: string) {\n const triggers = this.trigger.split(' ');\n return triggers.includes(triggerType);\n }\n\n private syncOptions() {\n this.popover.setOptions({\n placement: this.placement,\n distance: this.distance,\n skidding: this.skidding,\n transitionElement: this.tooltip,\n onAfterHide: () => this.nanoAfterHide.emit(),\n onAfterShow: () => this.nanoAfterShow.emit(),\n });\n }\n\n // Event Handlers\n\n private handleBlur = () => {\n if (this.hasTrigger('focus')) {\n this.hide();\n }\n };\n\n private handleClick = () => {\n if (this.hasTrigger('click')) {\n this.open ? this.hide() : this.show();\n }\n };\n\n private handleFocus = () => {\n if (this.hasTrigger('focus')) {\n this.show();\n }\n };\n\n private handleKeyDown = (event: KeyboardEvent) => {\n // Pressing escape when the target element has focus should dismiss the tooltip\n if (this.open && event.key === 'Escape') {\n event.stopPropagation();\n this.hide();\n }\n };\n\n private handleMouseOver = () => {\n if (this.hasTrigger('hover')) {\n this.show();\n }\n };\n\n private handleMouseOut = () => {\n if (this.hasTrigger('hover')) {\n this.hide();\n }\n };\n\n private handleSlotChange = () => {\n this.target = this.getTarget();\n };\n\n private handleTTSlotChange = () => {\n const contentDiv =\n this.host.querySelector(`[id=\"${this.componentId}\"]`) ||\n this.host.shadowRoot.getElementById(this.componentId);\n Array.from(this.host.querySelectorAll('[slot=\"content\"]'))\n .filter((elm) => elm !== contentDiv)\n .forEach((elm) => {\n contentDiv.appendChild(elm);\n });\n };\n\n // Stencil hooks\n\n componentDidLoad() {\n this.target = this.getTarget();\n this.popover = new Popover(this.target, this.tooltipPositioner);\n this.syncOptions();\n\n const ele = this.host.shadowRoot.getElementById(this.componentId);\n ele.slot = 'content';\n this.host.appendChild(ele);\n this.handleTTSlotChange();\n\n // Show on init if open\n this.tooltipPositioner.hidden = !this.open;\n if (this.open) {\n this.show();\n }\n }\n\n componentDidUpdate() {\n this.syncOptions();\n }\n\n disconnectedCallback() {\n this.popover.destroy();\n }\n\n render() {\n return (\n <Host\n onKeyDown={this.handleKeyDown}\n onMouseOver={this.handleMouseOver}\n onMouseOut={this.handleMouseOut}\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n onClick={this.handleClick}\n >\n <slot onSlotchange={this.handleSlotChange} />\n\n {!this.disabled && (\n <div\n ref={(el) => (this.tooltipPositioner = el)}\n class=\"tooltip-positioner\"\n >\n <div\n part=\"base\"\n ref={(el) => (this.tooltip = el)}\n class={{\n tooltip: true,\n 'tooltip--open': this.open,\n }}\n role=\"tooltip\"\n aria-hidden={this.open ? 'false' : 'true'}\n >\n <slot name=\"content\" onSlotchange={this.handleTTSlotChange}>\n <div id={this.componentId}>{this.content}</div>\n </slot>\n <div class=\"tooltip-arrow\" data-popper-arrow></div>\n </div>\n </div>\n )}\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"sources":["src/components/tooltip/tooltip.scss?tag=nano-tooltip&encapsulation=shadow","src/components/tooltip/tooltip.tsx"],"names":["tooltipCss","id","Tooltip","this","componentId","isVisible","handleBlur","hasTrigger","hide","handleClick","open","show","handleFocus","handleKeyDown","event","key","stopPropagation","handleMouseOver","handleMouseOut","handleSlotChange","target","getTarget","handleTTSlotChange","contentDiv","host","querySelector","shadowRoot","getElementById","Array","from","querySelectorAll","filter","elm","forEach","appendChild","_target","newTarget","removeAttribute","setAttribute","[object Object]","slShow","nanoShow","emit","defaultPrevented","popover","slHide","nanoHide","children","find","el","tagName","toLowerCase","getAttribute","Error","triggerType","triggers","trigger","split","includes","setOptions","placement","distance","skidding","transitionElement","tooltip","onAfterHide","nanoAfterHide","onAfterShow","nanoAfterShow","Popover","tooltipPositioner","syncOptions","ele","slot","hidden","destroy","h","Host","onKeyDown","onMouseOver","onMouseOut","onBlur","onFocus","onClick","onSlotchange","disabled","ref","class","part","tooltip--open","role","aria-hidden","name","content","data-popper-arrow"],"mappings":"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","sourcesContent":["@import '../../global/style/nano-theme/components';\n@import '../../global/style/nano-theme/layers';\n\n/**\n * @prop --hide-delay: The amount of time to wait before hiding the tooltip.\n * @prop --hide-duration: The amount of time the hide transition takes to complete.\n * @prop --hide-timing-function: The timing function (easing) to use for the hide transition.\n * @prop --max-width: The maximum width of the tooltip.\n * @prop --show-delay: The amount of time to wait before showing the tooltip.\n * @prop --show-duration: The amount of time the show transition takes to complete.\n * @prop --show-timing-function: The timing function (easing) to use for the show transition.\n */\n:host {\n --max-width: 20rem;\n --hide-delay: 0s;\n --hide-duration: 0.125s;\n --hide-timing-function: ease;\n --show-delay: 0.125s;\n --show-duration: 0.125s;\n --show-timing-function: ease;\n\n /* autoprefixer: ignore next */\n display: contents;\n}\n\n.tooltip {\n $self: &;\n\n max-inline-size: var(--max-width);\n border-radius: #{$tooltip-border-radius};\n background-color: black;\n font-size: #{$tooltip-fontsize};\n line-height: 1.5;\n color: white;\n opacity: 0;\n padding: #{$tooltip-padding};\n transform: translateY(10px) translateZ(0);\n transform-origin: bottom;\n transition-property: opacity, transform;\n transition-delay: var(--hide-delay);\n transition-duration: var(--hide-duration);\n transition-timing-function: var(--hide-timing-function);\n white-space: normal;\n\n &-arrow {\n content: '';\n position: absolute;\n inline-size: 0;\n block-size: 0;\n color: black;\n transition: 0.2s ease transform;\n }\n\n &-positioner {\n position: absolute;\n z-index: #{$layer-index-tooltip};\n\n &[data-popper-placement^='top'] #{$self} {\n transform-origin: bottom;\n transform: translateY(-10px) translateZ(0);\n }\n\n &[data-popper-placement^='bottom'] #{$self} {\n transform-origin: top;\n }\n\n &[data-popper-placement^='left'] #{$self} {\n transform-origin: right;\n }\n\n &[data-popper-placement^='right'] #{$self} {\n transform-origin: left;\n }\n\n &.popover-visible #{$self} {\n opacity: 1;\n transform: none;\n transition-delay: var(--show-delay);\n transition-duration: var(--show-duration);\n transition-timing-function: var(--show-timing-function);\n }\n\n // Arrow + bottom\n &[data-popper-placement^='bottom'] #{$self}-arrow {\n inset-block-end: 100%;\n inset-inline-start: calc(50% - #{$tooltip-arrow-size});\n border-block-end: #{$tooltip-arrow-size} solid;\n border-inline-start: #{$tooltip-arrow-size} solid transparent;\n border-inline-end: #{$tooltip-arrow-size} solid transparent;\n }\n\n &[data-popper-placement='bottom-start'] #{$self}-arrow {\n inset-inline-start: #{$tooltip-arrow-offset};\n }\n\n &[data-popper-placement='bottom-end'] #{$self}-arrow {\n inset-inline: auto #{$tooltip-arrow-offset};\n }\n\n // Arrow + top\n &[data-popper-placement^='top'] #{$self}-arrow {\n inset-block-start: 100%;\n inset-inline-start: calc(50% - #{$tooltip-arrow-size});\n border-block-start: #{$tooltip-arrow-size} solid;\n border-inline-start: #{$tooltip-arrow-size} solid transparent;\n border-inline-end: #{$tooltip-arrow-size} solid transparent;\n }\n\n &[data-popper-placement='top-start'] #{$self}-arrow {\n inset-inline-start: #{$tooltip-arrow-offset};\n }\n\n &[data-popper-placement='top-end'] #{$self}-arrow {\n inset-inline: auto #{$tooltip-arrow-offset};\n }\n\n // Arrow + left\n &[data-popper-placement^='left'] #{$self}-arrow {\n inset-block-start: calc(50% - #{$tooltip-arrow-size});\n inset-inline-start: 100%;\n border-inline-start: #{$tooltip-arrow-size} solid;\n border-block-start: #{$tooltip-arrow-size} solid transparent;\n border-block-end: #{$tooltip-arrow-size} solid transparent;\n }\n\n &[data-popper-placement='left-start'] #{$self}-arrow {\n inset-block-start: #{$tooltip-arrow-offset};\n }\n\n &[data-popper-placement='left-end'] #{$self}-arrow {\n inset-block: auto #{$tooltip-arrow-offset};\n }\n\n // Arrow + right\n &[data-popper-placement^='right'] #{$self}-arrow {\n inset-block-start: calc(50% - #{$tooltip-arrow-size});\n inset-inline-end: 100%;\n border-inline-end: #{$tooltip-arrow-size} solid;\n border-block-start: #{$tooltip-arrow-size} solid transparent;\n border-block-end: #{$tooltip-arrow-size} solid transparent;\n }\n\n &[data-popper-placement='right-start'] #{$self}-arrow {\n inset-block-start: #{$tooltip-arrow-offset};\n }\n\n &[data-popper-placement='right-end'] #{$self}-arrow {\n inset-block: auto #{$tooltip-arrow-offset};\n }\n }\n}\n","import {\n Component,\n Element,\n Event,\n EventEmitter,\n Host,\n Method,\n Prop,\n Watch,\n h,\n} from '@stencil/core';\nimport Popover from '../../utils/popover';\n\nlet id = 0;\n\n/**\n * Tooltips display additional information based on a specific action.\n * @slot - The tooltip's target element. Only the first element will be used as the target.\n * @slot content - The tooltip's content. Alternatively, you can use the content prop.\n */\n@Component({\n tag: 'nano-tooltip',\n styleUrl: 'tooltip.scss',\n shadow: true,\n})\nexport class Tooltip {\n private componentId = `tooltip-${++id}`;\n private isVisible = false;\n private popover: Popover;\n private tooltipPositioner: HTMLElement;\n private tooltip: any;\n\n private _target: HTMLElement;\n private get target() {\n return this._target;\n }\n private set target(newTarget) {\n if (newTarget !== this._target && this._target) {\n this._target.removeAttribute('aria-describedby');\n }\n newTarget.setAttribute('aria-describedby', this.componentId);\n this._target = newTarget;\n }\n\n @Element() host: HTMLNanoTooltipElement;\n\n /** The tooltip's content. Alternatively, you can use the content slot. */\n @Prop() content = '';\n\n /**\n * The preferred placement of the tooltip. Note that the actual placement may vary as needed to keep the tooltip\n * inside of the viewport.\n */\n @Prop() placement:\n | 'top'\n | 'top-start'\n | 'top-end'\n | 'right'\n | 'right-start'\n | 'right-end'\n | 'bottom'\n | 'bottom-start'\n | 'bottom-end'\n | 'left'\n | 'left-start'\n | 'left-end' = 'top';\n\n /** Set to true to disable the tooltip so it won't show when triggered. */\n @Prop() disabled = false;\n\n /** The distance in pixels from which to offset the tooltip away from its target. */\n @Prop() distance = 10;\n\n /** Indicates whether or not the tooltip is open. You can use this in lieu of the show/hide methods. */\n @Prop({ mutable: true, reflect: true }) open = false;\n\n /** The distance in pixels from which to offset the tooltip along its target. */\n @Prop() skidding = 0;\n\n /**\n * Controls how the tooltip is activated. Possible options include `click`, `hover`, `focus`, and `manual`. Multiple\n * options can be passed by separating them with a space. When manual is used, the tooltip must be activated\n * programmatically.\n */\n @Prop() trigger: string = 'hover focus';\n\n @Watch('open')\n handleOpenChange() {\n this.open ? this.show() : this.hide();\n }\n\n // Events\n\n /** Emitted when the tooltip begins to show. Calling `event.preventDefault()` will prevent it from being shown. */\n @Event() nanoShow: EventEmitter;\n\n /** Emitted after the tooltip has shown and all transitions are complete. */\n @Event() nanoAfterShow: EventEmitter;\n\n /** Emitted when the tooltip begins to hide. Calling `event.preventDefault()` will prevent it from being hidden. */\n @Event() nanoHide: EventEmitter;\n\n /** Emitted after the tooltip has hidden and all transitions are complete. */\n @Event() nanoAfterHide: EventEmitter;\n\n // Public methods\n\n /** Shows the tooltip. */\n @Method()\n async show() {\n // Prevent subsequent calls to the method, whether manually or triggered by the `open` watcher\n if (this.isVisible) {\n return;\n }\n\n const slShow = this.nanoShow.emit();\n if (slShow.defaultPrevented) {\n this.open = false;\n return;\n }\n\n this.isVisible = true;\n this.open = true;\n this.popover.show();\n }\n\n /** Hides the tooltip. */\n @Method()\n async hide() {\n // Prevent subsequent calls to the method, whether manually or triggered by the `open` watcher\n if (!this.isVisible) {\n return;\n }\n\n const slHide = this.nanoHide.emit();\n if (slHide.defaultPrevented) {\n this.open = true;\n return;\n }\n\n this.isVisible = false;\n this.open = false;\n this.popover.hide();\n }\n\n // Private methods\n\n private getTarget() {\n // Get the first child that isn't a <style> or content slot\n const target = [...Array.from(this.host.children)].find(\n (el) =>\n el.tagName.toLowerCase() !== 'style' &&\n el.getAttribute('slot') !== 'content'\n ) as HTMLElement;\n\n if (!target) {\n throw new Error('Invalid tooltip target: no child element was found.');\n }\n\n return target;\n }\n\n private hasTrigger(triggerType: string) {\n const triggers = this.trigger.split(' ');\n return triggers.includes(triggerType);\n }\n\n private syncOptions() {\n this.popover.setOptions({\n placement: this.placement,\n distance: this.distance,\n skidding: this.skidding,\n transitionElement: this.tooltip,\n onAfterHide: () => this.nanoAfterHide.emit(),\n onAfterShow: () => this.nanoAfterShow.emit(),\n });\n }\n\n // Event Handlers\n\n private handleBlur = () => {\n if (this.hasTrigger('focus')) {\n this.hide();\n }\n };\n\n private handleClick = () => {\n if (this.hasTrigger('click')) {\n this.open ? this.hide() : this.show();\n }\n };\n\n private handleFocus = () => {\n if (this.hasTrigger('focus')) {\n this.show();\n }\n };\n\n private handleKeyDown = (event: KeyboardEvent) => {\n // Pressing escape when the target element has focus should dismiss the tooltip\n if (this.open && event.key === 'Escape') {\n event.stopPropagation();\n this.hide();\n }\n };\n\n private handleMouseOver = () => {\n if (this.hasTrigger('hover')) {\n this.show();\n }\n };\n\n private handleMouseOut = () => {\n if (this.hasTrigger('hover')) {\n this.hide();\n }\n };\n\n private handleSlotChange = () => {\n this.target = this.getTarget();\n };\n\n private handleTTSlotChange = () => {\n const contentDiv =\n this.host.querySelector(`[id=\"${this.componentId}\"]`) ||\n this.host.shadowRoot.getElementById(this.componentId);\n Array.from(this.host.querySelectorAll('[slot=\"content\"]'))\n .filter((elm) => elm !== contentDiv)\n .forEach((elm) => {\n contentDiv.appendChild(elm);\n });\n };\n\n // Stencil hooks\n\n componentDidLoad() {\n this.target = this.getTarget();\n this.popover = new Popover(this.target, this.tooltipPositioner);\n this.syncOptions();\n\n const ele = this.host.shadowRoot.getElementById(this.componentId);\n ele.slot = 'content';\n this.host.appendChild(ele);\n this.handleTTSlotChange();\n\n // Show on init if open\n this.tooltipPositioner.hidden = !this.open;\n if (this.open) {\n this.show();\n }\n }\n\n componentDidUpdate() {\n this.syncOptions();\n }\n\n disconnectedCallback() {\n this.popover.destroy();\n }\n\n render() {\n return (\n <Host\n onKeyDown={this.handleKeyDown}\n onMouseOver={this.handleMouseOver}\n onMouseOut={this.handleMouseOut}\n onBlur={this.handleBlur}\n onFocus={this.handleFocus}\n onClick={this.handleClick}\n >\n <slot onSlotchange={this.handleSlotChange} />\n\n {!this.disabled && (\n <div\n ref={(el) => (this.tooltipPositioner = el)}\n class=\"tooltip-positioner\"\n >\n <div\n part=\"base\"\n ref={(el) => (this.tooltip = el)}\n class={{\n tooltip: true,\n 'tooltip--open': this.open,\n }}\n role=\"tooltip\"\n aria-hidden={this.open ? 'false' : 'true'}\n >\n <slot name=\"content\" onSlotchange={this.handleTTSlotChange}>\n <div id={this.componentId}>{this.content}</div>\n </slot>\n <div class=\"tooltip-arrow\" data-popper-arrow></div>\n </div>\n </div>\n )}\n </Host>\n );\n }\n}\n"]}
@@ -1 +1 @@
1
- .nano-hide{display:none !important}.nano-hide-up{display:none !important}.nano-hide-down{display:none !important}@media(min-width: 576px){.nano-hide-sm-up{display:none !important}}@media(max-width: 576px){.nano-hide-sm-down{display:none !important}}@media(min-width: 768px){.nano-hide-md-up{display:none !important}}@media(max-width: 768px){.nano-hide-md-down{display:none !important}}@media(min-width: 992px){.nano-hide-lg-up{display:none !important}}@media(max-width: 992px){.nano-hide-lg-down{display:none !important}}@media(min-width: 1200px){.nano-hide-xl-up{display:none !important}}@media(max-width: 1200px){.nano-hide-xl-down{display:none !important}}audio,canvas,progress,video{vertical-align:baseline}audio:not([controls]){display:none;block-size:0}b,strong{font-weight:bold}img{max-inline-size:100%;border:0}svg:not(:root){overflow:hidden}figure{margin-block:1em;margin-inline:40px}hr{block-size:1px;border-width:0;box-sizing:content-box}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace;font-size:1em}label,input,select,textarea{font-family:inherit;line-height:normal}textarea{overflow:auto;block-size:auto;font:inherit;color:inherit}textarea::placeholder{padding-inline-start:2px}form,input,optgroup,select{margin:0;font:inherit;color:inherit}html input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button}a,a div,a span,a ion-icon,a ion-label,button,button div,button span,button ion-icon,button ion-label,.ion-tappable,[tappable],[tappable] div,[tappable] span,[tappable] ion-icon,[tappable] ion-label,input,textarea{touch-action:manipulation}a ion-label,button ion-label{pointer-events:none}button{border:0;border-radius:0;font-family:inherit;font-style:inherit;font-variant:inherit;line-height:1;text-transform:none;cursor:pointer;-webkit-appearance:button}[tappable]{cursor:pointer}a[disabled],button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}input[type=checkbox],input[type=radio]{padding:0;box-sizing:border-box}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{block-size:auto}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}*{box-sizing:border-box;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-touch-callout:none}button,input,select,textarea{-webkit-tap-highlight-color:rgba(201,224,253,.8)}*,*::before,*::after{box-sizing:border-box;font-family:inherit}html{inline-size:100%;text-size-adjust:100%}body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;margin:0;padding:0;text-rendering:optimizeLegibility}.nano-no-padding{--padding-start: 0;--padding-end: 0;--padding-top: 0;--padding-bottom: 0;padding:0}.nano-padding{--padding-start: var(--nano-spacing-medium, 16px);--padding-end: var(--nano-spacing-medium, 16px);--padding-top: var(--nano-spacing-medium, 16px);--padding-bottom: var(--nano-spacing-medium, 16px);padding:var(--nano-spacing-medium, 16px)}.nano-padding-top{--padding-top: var(--nano-spacing-medium, 16px);padding-block-start:var(--nano-spacing-medium, 16px)}.nano-padding-start{--padding-start: var(--nano-spacing-medium, 16px);padding-inline-start:var(--nano-spacing-medium, 16px)}.nano-padding-end{--padding-end: var(--nano-spacing-medium, 16px);padding-inline-end:var(--nano-spacing-medium, 16px)}.nano-padding-bottom{--padding-bottom: var(--nano-spacing-medium, 16px);padding-block-end:var(--nano-spacing-medium, 16px)}.nano-padding-vertical{--padding-top: var(--nano-spacing-medium, 16px);--padding-bottom: var(--nano-spacing-medium, 16px);padding-block:var(--nano-spacing-medium, 16px)}.nano-padding-horizontal{--padding-start: var(--nano-spacing-medium, 16px);--padding-end: var(--nano-spacing-medium, 16px);padding-inline:var(--nano-spacing-medium, 16px)}.nano-no-margin{--margin-start: 0;--margin-end: 0;--margin-top: 0;--margin-bottom: 0;margin:0}.nano-margin{--margin-start: var(--nano-spacing-medium, 16px);--margin-end: var(--nano-spacing-medium, 16px);--margin-top: var(--nano-spacing-medium, 16px);--margin-bottom: var(--nano-spacing-medium, 16px);margin:var(--nano-spacing-medium, 16px)}.nano-margin-top{--margin-top: var(--nano-spacing-medium, 16px);margin-block-start:var(--nano-spacing-medium, 16px)}.nano-margin-start{--margin-start: var(--nano-spacing-medium, 16px);margin-inline-start:var(--nano-spacing-medium, 16px)}.nano-margin-end{--margin-end: var(--nano-spacing-medium, 16px);margin-inline-end:var(--nano-spacing-medium, 16px)}.nano-margin-bottom{--margin-bottom: var(--nano-spacing-medium, 16px);margin-block-end:var(--nano-spacing-medium, 16px)}.nano-margin-vertical{--margin-top: var(--nano-spacing-medium, 16px);--margin-bottom: var(--nano-spacing-medium, 16px);margin-block:var(--nano-spacing-medium, 16px)}.nano-margin-horizontal{--margin-start: var(--nano-spacing-medium, 16px);--margin-end: var(--nano-spacing-medium, 16px);margin-inline:var(--nano-spacing-medium, 16px)}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_1_0.woff2") format("woff2"),url("../assets/fonts/3AF163_1_0.woff") format("woff");font-weight:400;font-style:normal;font-stretch:condensed;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_8_0.woff2") format("woff2"),url("../assets/fonts/3AF163_8_0.woff") format("woff");font-weight:400;font-style:italic;font-stretch:condensed;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_5_0.woff2") format("woff2"),url("../assets/fonts/3AF163_5_0.woff") format("woff");font-weight:600;font-style:normal;font-stretch:condensed;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_2_0.woff2") format("woff2"),url("../assets/fonts/3AF163_2_0.woff") format("woff");font-weight:600;font-style:italic;font-stretch:condensed;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_9_0.woff2") format("woff2"),url("../assets/fonts/3AF163_9_0.woff") format("woff");font-weight:200;font-style:normal;font-stretch:condensed;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_A_0.woff2") format("woff2"),url("../assets/fonts/3AF163_A_0.woff") format("woff");font-weight:200;font-style:italic;font-stretch:condensed;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_21_0.woff2") format("woff2"),url("../assets/fonts/3AF163_21_0.woff") format("woff");font-weight:400;font-style:normal;font-stretch:normal;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_28_0.woff2") format("woff2"),url("../assets/fonts/3AF163_28_0.woff") format("woff");font-weight:400;font-style:italic;font-stretch:normal;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_25_0.woff2") format("woff2"),url("../assets/fonts/3AF163_25_0.woff") format("woff");font-weight:600;font-style:normal;font-stretch:normal;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_22_0.woff2") format("woff2"),url("../assets/fonts/3AF163_22_0.woff") format("woff");font-weight:600;font-style:italic;font-stretch:normal;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_29_0.woff2") format("woff2"),url("../assets/fonts/3AF163_29_0.woff") format("woff");font-weight:200;font-style:normal;font-stretch:normal;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_2A_0.woff2") format("woff2"),url("../assets/fonts/3AF163_2A_0.woff") format("woff");font-weight:200;font-style:italic;font-stretch:normal;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_15_0.woff2") format("woff2"),url("../assets/fonts/3AF163_15_0.woff") format("woff");font-weight:400;font-style:normal;font-stretch:expanded;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_16_0.woff2") format("woff2"),url("../assets/fonts/3AF163_16_0.woff") format("woff");font-weight:600;font-style:italic;font-stretch:expanded;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_17_0.woff2") format("woff2"),url("../assets/fonts/3AF163_17_0.woff") format("woff");font-weight:600;font-style:normal;font-stretch:expanded;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_1B_0.woff2") format("woff2"),url("../assets/fonts/3AF163_1B_0.woff") format("woff");font-weight:200;font-style:normal;font-stretch:expanded;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_1C_0.woff2") format("woff2"),url("../assets/fonts/3AF163_1C_0.woff") format("woff");font-weight:200;font-style:italic;font-stretch:expanded;font-display:swap}html{font-family:var(--nano-font-family);font-weight:var(--nano-font-weight, 500);color:var(--nano-text-color, #4a4a4a);font-size:var(--nano-base-font-size)}a{color:var(--nano-color-primary, #007495);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4,h5,h6{margin-block:16px 10px;font-weight:600;line-height:1.2}h1{margin-block-start:10px;font-size:28px}h2{margin-block-start:18px;font-size:24px}h3{font-size:22px}h4{font-size:20px}h5{font-size:18px}h6{font-size:16px}small{font-size:75%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{inset-block-start:-0.5em}sub{inset-block-end:-0.25em}p{font-size:1.125rem;line-height:1.4;margin-block:0 1rem}p.supporting{font-size:.875rem}.heading{font-weight:500;line-height:1.3;margin-block:0 1.5rem;margin-inline:0}.heading__highlight{color:#007495}@media print{.heading{color:#4a4a4a}}.heading--one{font-size:2.5rem}@media(min-width: 768px){.heading--one{font-size:3.25rem}}.heading--two{font-size:1.5rem}@media(min-width: 768px){.heading--two{font-size:2rem}}.heading--three{font-size:1.125rem}@media(min-width: 768px){.heading--three{font-size:1.375rem}}.heading--four{font-size:1.125rem}.heading--five{font-size:1rem}.heading--light{font-weight:200}.heading--upper{text-transform:uppercase}.heading--meta{font-size:.875rem;text-transform:uppercase;letter-spacing:1.3px;font-weight:bold;margin-block-end:1rem}.button{padding:0;border:none;background-color:rgba(0,0,0,0);font:inherit;-webkit-box-align:center;text-decoration:none;color:inherit;transition:background-color 100ms ease-in-out,box-shadow 100ms ease-in-out,border-color 100ms ease-in-out,color 100ms ease-in-out;padding-inline:var(--nano-btn-padding-start, 1rem) var(--nano-btn-padding-end, 1rem);padding-block:var(--nano-btn-padding-top, 0.5rem) var(--nano-btn-padding-bottom, 0.5rem);box-shadow:var(--nano-layer-shadow-medium, 0 2px 4px rgba(0, 0, 0, 0.2));display:inline-block;border-radius:var(--nano-btn-border-radius, 5px);line-height:var(--nano-btn-line-height, 1.5rem);font-weight:500;cursor:pointer;background:rgba(0,0,0,.02)}.button::-moz-focus-inner{border:0;padding:0}.button:hover,.button:focus{text-decoration:none;color:inherit}@media print{.button{display:none}}.button:focus,.button.button--focus{outline:none;box-shadow:var(--nano-control-focus-shadow, 0 0 0 0.1875rem var(--nano-control-focus-color, rgba(144, 198, 231, 0.8)))}.button nano-icon{margin-inline-start:.5rem;margin-inline-end:0;font-size:var(--nano-btn-icon-size, 1rem);vertical-align:middle;margin-block-start:-0.188rem;display:inline-block}.button.button--icon-start nano-icon{margin-inline-start:0;margin-inline-end:.5rem}.button:hover:not(.button--disabled){box-shadow:var(--nano-layer-shadow-large, 0 2px 8px rgba(0, 0, 0, 0.2))}.button:active:not(.button--disabled):not(:disabled){box-shadow:none}.button--disabled,.button:disabled{opacity:.6}.button--disabled:hover,.button:disabled:hover{cursor:default}.button--primary{background-color:var(--nano-color-primary, #007495);color:var(--nano-color-primary-contrast, #fff)}.button--primary:hover:not(.button--disabled):not(:disabled),.button--primary.button--active{background-color:var(--nano-color-primary-shade, #00637f);color:var(--nano-color-primary-contrast, #fff)}.button--primary:hover:not(.button--disabled):not(:disabled).button--keyline,.button--primary.button--active.button--keyline{background-color:var(--nano-color-primary, #007495);color:var(--nano-color-primary-contrast, #fff)}.button--primary:focus{color:var(--nano-color-primary-contrast, #fff)}.button--primary.button--keyline{background:rgba(0,0,0,0);border-style:var(--nano-btn-border-style, solid);border-width:var(--nano-btn-border-width, 2px);border-radius:var(--nano-btn-border-radius, 5px);color:var(--nano-color-primary, #007495);border-color:var(--nano-color-primary, #007495)}.button--primary.button--keyline:hover:not(.button--disabled):not(:disabled),.button--primary.button--keyline:not(.button--focus),.button--primary.button--keyline.button--active{box-shadow:none}.button--secondary{background-color:#17bb75;color:#fff}.button--secondary:hover:not(.button--disabled):not(:disabled),.button--secondary.button--active{background-color:#0b814f;color:#fff}.button--secondary:hover:not(.button--disabled):not(:disabled).button--keyline,.button--secondary.button--active.button--keyline{background-color:#17bb75;color:#fff}.button--secondary:focus{color:#fff}.button--secondary.button--keyline{background:rgba(0,0,0,0);border-style:var(--nano-btn-border-style, solid);border-width:var(--nano-btn-border-width, 2px);border-radius:var(--nano-btn-border-radius, 5px);color:#17bb75;border-color:#17bb75}.button--secondary.button--keyline:hover:not(.button--disabled):not(:disabled),.button--secondary.button--keyline:not(.button--focus),.button--secondary.button--keyline.button--active{box-shadow:none}.button--light{background-color:#fff;color:#007495}.button--light:hover:not(.button--disabled):not(:disabled),.button--light.button--active{background-color:#fff;color:#0c5a71}.button--light:hover:not(.button--disabled):not(:disabled).button--keyline,.button--light.button--active.button--keyline{background-color:#fff;color:#007495}.button--light:focus{color:#007495}.button--light.button--keyline{background:rgba(0,0,0,0);border-style:var(--nano-btn-border-style, solid);border-width:var(--nano-btn-border-width, 2px);border-radius:var(--nano-btn-border-radius, 5px);color:#fff;border-color:#fff}.button--light.button--keyline:hover:not(.button--disabled):not(:disabled),.button--light.button--keyline:not(.button--focus),.button--light.button--keyline.button--active{box-shadow:none}.button--danger{background-color:#ef4135;color:#fff}.button--danger:hover:not(.button--disabled):not(:disabled),.button--danger.button--active{background-color:#be2a20;color:#fff}.button--danger:hover:not(.button--disabled):not(:disabled).button--keyline,.button--danger.button--active.button--keyline{background-color:#ef4135;color:#fff}.button--danger:focus{color:#fff}.button--danger.button--keyline{background:rgba(0,0,0,0);border-style:var(--nano-btn-border-style, solid);border-width:var(--nano-btn-border-width, 2px);border-radius:var(--nano-btn-border-radius, 5px);color:#ef4135;border-color:#ef4135}.button--danger.button--keyline:hover:not(.button--disabled):not(:disabled),.button--danger.button--keyline:not(.button--focus),.button--danger.button--keyline.button--active{box-shadow:none}.button--warning{background-color:#f57e20;color:#fff}.button--warning:hover:not(.button--disabled):not(:disabled),.button--warning.button--active{background-color:#b95e17;color:#fff}.button--warning:hover:not(.button--disabled):not(:disabled).button--keyline,.button--warning.button--active.button--keyline{background-color:#f57e20;color:#fff}.button--warning:focus{color:#fff}.button--warning.button--keyline{background:rgba(0,0,0,0);border-style:var(--nano-btn-border-style, solid);border-width:var(--nano-btn-border-width, 2px);border-radius:var(--nano-btn-border-radius, 5px);color:#f57e20;border-color:#f57e20}.button--warning.button--keyline:hover:not(.button--disabled):not(:disabled),.button--warning.button--keyline:not(.button--focus),.button--warning.button--keyline.button--active{box-shadow:none}.button--tertiary{background:rgba(0,0,0,0);box-shadow:none;text-decoration:underline;font-weight:400}.button--tertiary:hover:not(.button--disabled):not(:disabled),.button--tertiary:hover.button--active,.button--tertiary:focus:not(.button--disabled):not(:disabled),.button--tertiary:focus.button--active{color:#b5aea7;box-shadow:none;text-decoration:underline}.nano-color-primary{--nano-color-base: var(--nano-color-primary, #007495) ;--nano-color-base-rgb: var( --nano-color-primary-rgb, 0, 116, 149 ) ;--nano-color-contrast: var(--nano-color-primary-contrast, #fff) ;--nano-color-contrast-rgb: var( --nano-color-primary-contrast-rgb, 255, 255, 255 ) ;--nano-color-shade: var(--nano-color-primary-shade, #00637f) ;--nano-color-tint: var(--nano-color-primary-tint, #2689a5) ;--nano-color-tint-rgb: var( --nano-color-primary-tint-rgb, 38, 137, 165 ) }.nano-color-secondary{--nano-color-base: var(--nano-color-secondary, #548caf) ;--nano-color-base-rgb: var( --nano-color-secondary-rgb, 84, 140, 175 ) ;--nano-color-contrast: var(--nano-color-secondary-contrast, #fff) ;--nano-color-contrast-rgb: var( --nano-color-secondary-contrast-rgb, 255, 255, 255 ) ;--nano-color-shade: var(--nano-color-secondary-shade, #477795) ;--nano-color-tint: var(--nano-color-secondary-tint, #6e9dbb) ;--nano-color-tint-rgb: var( --nano-color-secondary-tint-rgb, 110, 157, 187 ) }.nano-color-tertiary{--nano-color-base: var(--nano-color-tertiary, #b5aea7) ;--nano-color-base-rgb: var( --nano-color-tertiary-rgb, 181, 174, 167 ) ;--nano-color-contrast: var(--nano-color-tertiary-contrast, #4a4a4a) ;--nano-color-contrast-rgb: var( --nano-color-tertiary-contrast-rgb, 74, 74, 74 ) ;--nano-color-shade: var(--nano-color-tertiary-shade, #9a948e) ;--nano-color-tint: var(--nano-color-tertiary-tint, #c0bab4) ;--nano-color-tint-rgb: var( --nano-color-tertiary-tint-rgb, 192, 186, 180 ) }.nano-color-success{--nano-color-base: var(--nano-color-success, #17bb75) ;--nano-color-base-rgb: var( --nano-color-success-rgb, 23, 187, 117 ) ;--nano-color-contrast: var(--nano-color-success-contrast, #4a4a4a) ;--nano-color-contrast-rgb: var( --nano-color-success-contrast-rgb, 74, 74, 74 ) ;--nano-color-shade: var(--nano-color-success-shade, #149f63) ;--nano-color-tint: var(--nano-color-success-tint, #3ac58a) ;--nano-color-tint-rgb: var( --nano-color-success-tint-rgb, 58, 197, 138 ) }.nano-color-warning{--nano-color-base: var(--nano-color-warning, #f57e20) ;--nano-color-base-rgb: var( --nano-color-warning-rgb, 245, 126, 32 ) ;--nano-color-contrast: var(--nano-color-warning-contrast, #fff) ;--nano-color-contrast-rgb: var( --nano-color-warning-contrast-rgb, 255, 255, 255 ) ;--nano-color-shade: var(--nano-color-warning-shade, #d06b1b) ;--nano-color-tint: var(--nano-color-warning-tint, #f79141) ;--nano-color-tint-rgb: var( --nano-color-warning-tint-rgb, 247, 145, 65 ) }.nano-color-danger{--nano-color-base: var(--nano-color-danger, #ef4135) ;--nano-color-base-rgb: var( --nano-color-danger-rgb, 239, 65, 53 ) ;--nano-color-contrast: var(--nano-color-danger-contrast, #fff) ;--nano-color-contrast-rgb: var( --nano-color-danger-contrast-rgb, 255, 255, 255 ) ;--nano-color-shade: var(--nano-color-danger-shade, #cb372d) ;--nano-color-tint: var(--nano-color-danger-tint, #f15e53) ;--nano-color-tint-rgb: var( --nano-color-danger-tint-rgb, 241, 94, 83 ) }.nano-color-light{--nano-color-base: var(--nano-color-light, #f2f7f9) ;--nano-color-base-rgb: var( --nano-color-light-rgb, 242, 247, 249 ) ;--nano-color-contrast: var(--nano-color-light-contrast, #4a4a4a) ;--nano-color-contrast-rgb: var( --nano-color-light-contrast-rgb, 74, 74, 74 ) ;--nano-color-shade: var(--nano-color-light-shade, #ced2d4) ;--nano-color-tint: var(--nano-color-light-tint, #f4f8fa) ;--nano-color-tint-rgb: var( --nano-color-light-tint-rgb, 244, 248, 250 ) }.nano-color-medium{--nano-color-base: var(--nano-color-medium, #005c75) ;--nano-color-base-rgb: var( --nano-color-medium-rgb, 0, 92, 117 ) ;--nano-color-contrast: var(--nano-color-medium-contrast, #fff) ;--nano-color-contrast-rgb: var( --nano-color-medium-contrast-rgb, 255, 255, 255 ) ;--nano-color-shade: var(--nano-color-medium-shade, #004e63) ;--nano-color-tint: var(--nano-color-medium-tint, #26748a) ;--nano-color-tint-rgb: var( --nano-color-medium-tint-rgb, 38, 116, 138 ) }.nano-color-dark{--nano-color-base: var(--nano-color-dark, #455556) ;--nano-color-base-rgb: var( --nano-color-dark-rgb, 69, 85, 86 ) ;--nano-color-contrast: var(--nano-color-dark-contrast, #fff) ;--nano-color-contrast-rgb: var( --nano-color-dark-contrast-rgb, 255, 255, 255 ) ;--nano-color-shade: var(--nano-color-dark-shade, #3b4849) ;--nano-color-tint: var(--nano-color-dark-tint, #616f6f) ;--nano-color-tint-rgb: var( --nano-color-dark-tint-rgb, 97, 111, 111 ) }:root{--nano-base-font-size: 16px;--nano-padding: 1rem;--nano-font-family: "HelveticaNow", "Helvetica Neue", helvetica, arial, "Lucida Grande", sans-serif;--nano-color-white:#fff;--nano-color-white-rgb:255, 255, 255;--nano-color-lightblue:#90c6e7;--nano-color-lightblue-rgb:144, 198, 231;--nano-color-blue:#007495;--nano-color-blue-rgb:0, 116, 149;--nano-color-darkblue:#0c5a71;--nano-color-darkblue-rgb:12, 90, 113;--nano-color-darkgrey:#455556;--nano-color-darkgrey-rgb:69, 85, 86;--nano-color-palegrey:#b5aea7;--nano-color-palegrey-rgb:181, 174, 167;--nano-color-dimgrey:#918b86;--nano-color-dimgrey-rgb:145, 139, 134;--nano-color-lightgrey:#e4e6e8;--nano-color-lightgrey-rgb:228, 230, 232;--nano-color-mediumgrey:#687576;--nano-color-mediumgrey-rgb:104, 117, 118;--nano-color-green:#17bb75;--nano-color-green-rgb:23, 187, 117;--nano-color-orange:#f57e20;--nano-color-orange-rgb:245, 126, 32;--nano-color-paleyellow:#ede797;--nano-color-paleyellow-rgb:237, 231, 151;--nano-color-purple:#a53f97;--nano-color-purple-rgb:165, 63, 151;--nano-color-red:#ef4135;--nano-color-red-rgb:239, 65, 53;--nano-color-yellow:#f5cc49;--nano-color-yellow-rgb:245, 204, 73;--nano-color-background:#f0efed;--nano-color-background-rgb:240, 239, 237;--nano-color-black:#4a4a4a;--nano-color-black-rgb:74, 74, 74;--nano-color-celsius:#f0efed;--nano-color-celsius-rgb:240, 239, 237;--nano-color-offwhite:#f9f9fb;--nano-color-offwhite-rgb:249, 249, 251;--nano-color-darkblue--faded:#005c75;--nano-color-darkblue--faded-rgb:0, 92, 117;--nano-color-red--faded:#fee8de;--nano-color-red--faded-rgb:254, 232, 222;--nano-color-orange--faded:#feeddb;--nano-color-orange--faded-rgb:254, 237, 219;--nano-color-yellow--faded:#fefcf2;--nano-color-yellow--faded-rgb:254, 252, 242;--nano-color-green--faded:#edf5f2;--nano-color-green--faded-rgb:237, 245, 242;--nano-color-blue--faded:#f2f7f9;--nano-color-blue--faded-rgb:242, 247, 249;--nano-color-blue--darker:#245a6f;--nano-color-blue--darker-rgb:36, 90, 111;--nano-color-green--darker:#0b814f;--nano-color-green--darker-rgb:11, 129, 79;--nano-color-red--darker:#be2a20;--nano-color-red--darker-rgb:190, 42, 32;--nano-color-purple--darker:#772c6d;--nano-color-purple--darker-rgb:119, 44, 109;--nano-color-orange--darker:#b95e17;--nano-color-orange--darker-rgb:185, 94, 23;--nano-color-palegrey--darker:#8c8379;--nano-color-palegrey--darker-rgb:140, 131, 121;--nano-color-lightblue--darker:#548caf;--nano-color-lightblue--darker-rgb:84, 140, 175}@media(max-width: 576px){:root{--nano-base-font-size: 14px}}body{background-color:var(--nano-background-color, #f0efed)}hr,.horizontal-rule,.content-divider{display:block;block-size:1px;border:0;background-color:rgba(181,174,167,.5);margin-block:.5em;margin-inline:0;padding:0}area[href]:not([tabindex="-1"]):focus,iframe:not([tabindex="-1"]):focus,[contentEditable=true]:not([tabindex="-1"]):focus{outline:none;box-shadow:var(--nano-control-focus-shadow, 0 0 0 0.1875rem var(--nano-control-focus-color, rgba(144, 198, 231, 0.8)));border-radius:3px}/*# sourceMappingURL=nanopore.css.map */
1
+ .nano-hide{display:none !important}.nano-hide-up{display:none !important}.nano-hide-down{display:none !important}@media(min-width: 576px){.nano-hide-sm-up{display:none !important}}@media(max-width: 576px){.nano-hide-sm-down{display:none !important}}@media(min-width: 768px){.nano-hide-md-up{display:none !important}}@media(max-width: 768px){.nano-hide-md-down{display:none !important}}@media(min-width: 992px){.nano-hide-lg-up{display:none !important}}@media(max-width: 992px){.nano-hide-lg-down{display:none !important}}@media(min-width: 1200px){.nano-hide-xl-up{display:none !important}}@media(max-width: 1200px){.nano-hide-xl-down{display:none !important}}audio,canvas,progress,video{vertical-align:baseline}audio:not([controls]){display:none;block-size:0}b,strong{font-weight:bold}img{max-inline-size:100%;border:0}svg:not(:root){overflow:hidden}figure{margin-block:1em;margin-inline:40px}hr{block-size:1px;border-width:0;box-sizing:content-box}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace;font-size:1em}label,input,select,textarea{font-family:inherit;line-height:normal}textarea{overflow:auto;block-size:auto;font:inherit;color:inherit}textarea::placeholder{padding-inline-start:2px}form,input,optgroup,select{margin:0;font:inherit;color:inherit}html input[type=button],input[type=reset],input[type=submit]{cursor:pointer;-webkit-appearance:button}a,a div,a span,a ion-icon,a ion-label,button,button div,button span,button ion-icon,button ion-label,.ion-tappable,[tappable],[tappable] div,[tappable] span,[tappable] ion-icon,[tappable] ion-label,input,textarea{touch-action:manipulation}a ion-label,button ion-label{pointer-events:none}button{border:0;border-radius:0;font-family:inherit;font-style:inherit;font-variant:inherit;line-height:1;text-transform:none;cursor:pointer;-webkit-appearance:button}[tappable]{cursor:pointer}a[disabled],button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}input[type=checkbox],input[type=radio]{padding:0;box-sizing:border-box}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{block-size:auto}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}*{box-sizing:border-box;-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-tap-highlight-color:rgba(0,0,0,0);-webkit-touch-callout:none}button,input,select,textarea{-webkit-tap-highlight-color:rgba(201,224,253,.8)}*,*::before,*::after{box-sizing:border-box;font-family:inherit}html{inline-size:100%;text-size-adjust:100%}body{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;margin:0;padding:0;text-rendering:optimizeLegibility}.nano-no-padding{--padding-start: 0;--padding-end: 0;--padding-top: 0;--padding-bottom: 0;padding:0}.nano-padding{--padding-start: var(--nano-spacing-medium, 16px);--padding-end: var(--nano-spacing-medium, 16px);--padding-top: var(--nano-spacing-medium, 16px);--padding-bottom: var(--nano-spacing-medium, 16px);padding:var(--nano-spacing-medium, 16px)}.nano-padding-top{--padding-top: var(--nano-spacing-medium, 16px);padding-block-start:var(--nano-spacing-medium, 16px)}.nano-padding-start{--padding-start: var(--nano-spacing-medium, 16px);padding-inline-start:var(--nano-spacing-medium, 16px)}.nano-padding-end{--padding-end: var(--nano-spacing-medium, 16px);padding-inline-end:var(--nano-spacing-medium, 16px)}.nano-padding-bottom{--padding-bottom: var(--nano-spacing-medium, 16px);padding-block-end:var(--nano-spacing-medium, 16px)}.nano-padding-vertical{--padding-top: var(--nano-spacing-medium, 16px);--padding-bottom: var(--nano-spacing-medium, 16px);padding-block:var(--nano-spacing-medium, 16px)}.nano-padding-horizontal{--padding-start: var(--nano-spacing-medium, 16px);--padding-end: var(--nano-spacing-medium, 16px);padding-inline:var(--nano-spacing-medium, 16px)}.nano-no-margin{--margin-start: 0;--margin-end: 0;--margin-top: 0;--margin-bottom: 0;margin:0}.nano-margin{--margin-start: var(--nano-spacing-medium, 16px);--margin-end: var(--nano-spacing-medium, 16px);--margin-top: var(--nano-spacing-medium, 16px);--margin-bottom: var(--nano-spacing-medium, 16px);margin:var(--nano-spacing-medium, 16px)}.nano-margin-top{--margin-top: var(--nano-spacing-medium, 16px);margin-block-start:var(--nano-spacing-medium, 16px)}.nano-margin-start{--margin-start: var(--nano-spacing-medium, 16px);margin-inline-start:var(--nano-spacing-medium, 16px)}.nano-margin-end{--margin-end: var(--nano-spacing-medium, 16px);margin-inline-end:var(--nano-spacing-medium, 16px)}.nano-margin-bottom{--margin-bottom: var(--nano-spacing-medium, 16px);margin-block-end:var(--nano-spacing-medium, 16px)}.nano-margin-vertical{--margin-top: var(--nano-spacing-medium, 16px);--margin-bottom: var(--nano-spacing-medium, 16px);margin-block:var(--nano-spacing-medium, 16px)}.nano-margin-horizontal{--margin-start: var(--nano-spacing-medium, 16px);--margin-end: var(--nano-spacing-medium, 16px);margin-inline:var(--nano-spacing-medium, 16px)}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_1_0.woff2") format("woff2"),url("../assets/fonts/3AF163_1_0.woff") format("woff");font-weight:400;font-style:normal;font-stretch:condensed;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_8_0.woff2") format("woff2"),url("../assets/fonts/3AF163_8_0.woff") format("woff");font-weight:400;font-style:italic;font-stretch:condensed;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_5_0.woff2") format("woff2"),url("../assets/fonts/3AF163_5_0.woff") format("woff");font-weight:600;font-style:normal;font-stretch:condensed;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_2_0.woff2") format("woff2"),url("../assets/fonts/3AF163_2_0.woff") format("woff");font-weight:600;font-style:italic;font-stretch:condensed;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_9_0.woff2") format("woff2"),url("../assets/fonts/3AF163_9_0.woff") format("woff");font-weight:200;font-style:normal;font-stretch:condensed;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_A_0.woff2") format("woff2"),url("../assets/fonts/3AF163_A_0.woff") format("woff");font-weight:200;font-style:italic;font-stretch:condensed;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_21_0.woff2") format("woff2"),url("../assets/fonts/3AF163_21_0.woff") format("woff");font-weight:400;font-style:normal;font-stretch:normal;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_28_0.woff2") format("woff2"),url("../assets/fonts/3AF163_28_0.woff") format("woff");font-weight:400;font-style:italic;font-stretch:normal;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_25_0.woff2") format("woff2"),url("../assets/fonts/3AF163_25_0.woff") format("woff");font-weight:600;font-style:normal;font-stretch:normal;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_22_0.woff2") format("woff2"),url("../assets/fonts/3AF163_22_0.woff") format("woff");font-weight:600;font-style:italic;font-stretch:normal;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_29_0.woff2") format("woff2"),url("../assets/fonts/3AF163_29_0.woff") format("woff");font-weight:200;font-style:normal;font-stretch:normal;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_2A_0.woff2") format("woff2"),url("../assets/fonts/3AF163_2A_0.woff") format("woff");font-weight:200;font-style:italic;font-stretch:normal;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_15_0.woff2") format("woff2"),url("../assets/fonts/3AF163_15_0.woff") format("woff");font-weight:400;font-style:normal;font-stretch:expanded;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_16_0.woff2") format("woff2"),url("../assets/fonts/3AF163_16_0.woff") format("woff");font-weight:600;font-style:italic;font-stretch:expanded;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_17_0.woff2") format("woff2"),url("../assets/fonts/3AF163_17_0.woff") format("woff");font-weight:600;font-style:normal;font-stretch:expanded;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_1B_0.woff2") format("woff2"),url("../assets/fonts/3AF163_1B_0.woff") format("woff");font-weight:200;font-style:normal;font-stretch:expanded;font-display:swap}@font-face{font-family:"HelveticaNow";src:url("../assets/fonts/3AF163_1C_0.woff2") format("woff2"),url("../assets/fonts/3AF163_1C_0.woff") format("woff");font-weight:200;font-style:italic;font-stretch:expanded;font-display:swap}html{font-family:var(--nano-font-family);font-weight:var(--nano-font-weight, 500);color:var(--nano-text-color, #4a4a4a);font-size:var(--nano-base-font-size)}a{color:var(--nano-color-primary, #007495);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4,h5,h6{margin-block:16px 10px;font-weight:600;line-height:1.2}h1{margin-block-start:10px;font-size:28px}h2{margin-block-start:18px;font-size:24px}h3{font-size:22px}h4{font-size:20px}h5{font-size:18px}h6{font-size:16px}small{font-size:75%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{inset-block-start:-0.5em}sub{inset-block-end:-0.25em}p{font-size:1.125rem;line-height:1.4;margin-block:0 1rem}p.supporting{font-size:.875rem}.heading{font-weight:500;line-height:1.3;margin-block:0 1.5rem;margin-inline:0}.heading__highlight{color:#007495}@media print{.heading{color:#4a4a4a}}.heading--one{font-size:2.5rem}@media(min-width: 768px){.heading--one{font-size:3.25rem}}.heading--two{font-size:1.5rem}@media(min-width: 768px){.heading--two{font-size:2rem}}.heading--three{font-size:1.125rem}@media(min-width: 768px){.heading--three{font-size:1.375rem}}.heading--four{font-size:1.125rem}.heading--five{font-size:1rem}.heading--light{font-weight:200}.heading--upper{text-transform:uppercase}.heading--meta{font-size:.875rem;text-transform:uppercase;letter-spacing:1.3px;font-weight:bold;margin-block-end:1rem}.button{padding:0;border:none;background-color:rgba(0,0,0,0);font:inherit;-webkit-box-align:center;text-decoration:none;color:inherit;transition:background-color 100ms ease-in-out,box-shadow 100ms ease-in-out,border-color 100ms ease-in-out,color 100ms ease-in-out;padding-inline:var(--nano-btn-padding-start, 1rem) var(--nano-btn-padding-end, 1rem);padding-block:var(--nano-btn-padding-top, 0.5rem) var(--nano-btn-padding-bottom, 0.5rem);box-shadow:var(--nano-layer-shadow-medium, 0 2px 4px rgba(0, 0, 0, 0.2));display:inline-block;border-radius:var(--nano-btn-border-radius, 5px);line-height:var(--nano-btn-line-height, 1.5em);font-weight:500;cursor:pointer;background:rgba(0,0,0,.02)}.button::-moz-focus-inner{border:0;padding:0}.button:hover,.button:focus{text-decoration:none;color:inherit}@media print{.button{display:none}}.button:focus,.button.button--focus{outline:none;box-shadow:var(--nano-control-focus-shadow, 0 0 0 0.1875rem var(--nano-control-focus-color, rgba(144, 198, 231, 0.8)))}.button nano-icon,.button nano-spinner{--base-color-rgb: 255, 255, 255;margin-inline-start:.5em;margin-inline-end:0;font-size:var(--nano-btn-icon-size, 1em);vertical-align:middle;margin-block-start:-0.188em;display:inline-block}.button.button--icon-start nano-icon,.button.button--icon-start nano-spinner{margin-inline-start:0;margin-inline-end:.5em}.button:hover:not(.button--disabled){box-shadow:var(--nano-layer-shadow-large, 0 2px 8px rgba(0, 0, 0, 0.2))}.button:active:not(.button--disabled):not(:disabled){box-shadow:none}.button--disabled,.button:disabled{opacity:.6}.button--disabled:hover,.button:disabled:hover{cursor:default}.button--primary{background-color:var(--nano-color-primary, #007495);color:var(--nano-color-primary-contrast, #fff)}.button--primary:hover:not(.button--disabled):not(:disabled),.button--primary.button--active{background-color:var(--nano-color-primary-shade, #00637f);color:var(--nano-color-primary-contrast, #fff)}.button--primary:hover:not(.button--disabled):not(:disabled).button--keyline,.button--primary.button--active.button--keyline{background-color:var(--nano-color-primary, #007495);color:var(--nano-color-primary-contrast, #fff)}.button--primary:focus{color:var(--nano-color-primary-contrast, #fff)}.button--primary.button--keyline{background:rgba(0,0,0,0);border-style:var(--nano-btn-border-style, solid);border-width:var(--nano-btn-border-width, 2px);border-radius:var(--nano-btn-border-radius, 5px);padding-block:calc(var(--nano-btn-padding-top, 0.5rem) - var(--nano-btn-border-width, 2px)) calc(var(--nano-btn-padding-bottom, 0.5rem) - var(--nano-btn-border-width, 2px));color:var(--nano-color-primary, #007495);border-color:var(--nano-color-primary, #007495)}.button--primary.button--keyline:hover:not(.button--disabled):not(:disabled),.button--primary.button--keyline:not(:focus):not(.button--focus),.button--primary.button--keyline.button--active{box-shadow:none}.button--secondary{background-color:#17bb75;color:#fff}.button--secondary:hover:not(.button--disabled):not(:disabled),.button--secondary.button--active{background-color:#0b814f;color:#fff}.button--secondary:hover:not(.button--disabled):not(:disabled).button--keyline,.button--secondary.button--active.button--keyline{background-color:#17bb75;color:#fff}.button--secondary:focus{color:#fff}.button--secondary.button--keyline{background:rgba(0,0,0,0);border-style:var(--nano-btn-border-style, solid);border-width:var(--nano-btn-border-width, 2px);border-radius:var(--nano-btn-border-radius, 5px);padding-block:calc(var(--nano-btn-padding-top, 0.5rem) - var(--nano-btn-border-width, 2px)) calc(var(--nano-btn-padding-bottom, 0.5rem) - var(--nano-btn-border-width, 2px));color:#17bb75;border-color:#17bb75}.button--secondary.button--keyline:hover:not(.button--disabled):not(:disabled),.button--secondary.button--keyline:not(:focus):not(.button--focus),.button--secondary.button--keyline.button--active{box-shadow:none}.button--light{background-color:#fff;color:#007495}.button--light:hover:not(.button--disabled):not(:disabled),.button--light.button--active{background-color:#fff;color:#0c5a71}.button--light:hover:not(.button--disabled):not(:disabled).button--keyline,.button--light.button--active.button--keyline{background-color:#fff;color:#007495}.button--light:focus{color:#007495}.button--light.button--keyline{background:rgba(0,0,0,0);border-style:var(--nano-btn-border-style, solid);border-width:var(--nano-btn-border-width, 2px);border-radius:var(--nano-btn-border-radius, 5px);padding-block:calc(var(--nano-btn-padding-top, 0.5rem) - var(--nano-btn-border-width, 2px)) calc(var(--nano-btn-padding-bottom, 0.5rem) - var(--nano-btn-border-width, 2px));color:#fff;border-color:#fff}.button--light.button--keyline:hover:not(.button--disabled):not(:disabled),.button--light.button--keyline:not(:focus):not(.button--focus),.button--light.button--keyline.button--active{box-shadow:none}.button--danger{background-color:#ef4135;color:#fff}.button--danger:hover:not(.button--disabled):not(:disabled),.button--danger.button--active{background-color:#be2a20;color:#fff}.button--danger:hover:not(.button--disabled):not(:disabled).button--keyline,.button--danger.button--active.button--keyline{background-color:#ef4135;color:#fff}.button--danger:focus{color:#fff}.button--danger.button--keyline{background:rgba(0,0,0,0);border-style:var(--nano-btn-border-style, solid);border-width:var(--nano-btn-border-width, 2px);border-radius:var(--nano-btn-border-radius, 5px);padding-block:calc(var(--nano-btn-padding-top, 0.5rem) - var(--nano-btn-border-width, 2px)) calc(var(--nano-btn-padding-bottom, 0.5rem) - var(--nano-btn-border-width, 2px));color:#ef4135;border-color:#ef4135}.button--danger.button--keyline:hover:not(.button--disabled):not(:disabled),.button--danger.button--keyline:not(:focus):not(.button--focus),.button--danger.button--keyline.button--active{box-shadow:none}.button--warning{background-color:#f57e20;color:#fff}.button--warning:hover:not(.button--disabled):not(:disabled),.button--warning.button--active{background-color:#b95e17;color:#fff}.button--warning:hover:not(.button--disabled):not(:disabled).button--keyline,.button--warning.button--active.button--keyline{background-color:#f57e20;color:#fff}.button--warning:focus{color:#fff}.button--warning.button--keyline{background:rgba(0,0,0,0);border-style:var(--nano-btn-border-style, solid);border-width:var(--nano-btn-border-width, 2px);border-radius:var(--nano-btn-border-radius, 5px);padding-block:calc(var(--nano-btn-padding-top, 0.5rem) - var(--nano-btn-border-width, 2px)) calc(var(--nano-btn-padding-bottom, 0.5rem) - var(--nano-btn-border-width, 2px));color:#f57e20;border-color:#f57e20}.button--warning.button--keyline:hover:not(.button--disabled):not(:disabled),.button--warning.button--keyline:not(:focus):not(.button--focus),.button--warning.button--keyline.button--active{box-shadow:none}.button--tertiary{background:rgba(0,0,0,0);box-shadow:none;text-decoration:underline;font-weight:400}.button--tertiary:hover:not(.button--disabled):not(:disabled),.button--tertiary:hover.button--active,.button--tertiary:focus:not(.button--disabled):not(:disabled),.button--tertiary:focus.button--active{color:#b5aea7;box-shadow:none;text-decoration:underline}.nano-color-primary{--nano-color-base: var(--nano-color-primary, #007495) ;--nano-color-base-rgb: var( --nano-color-primary-rgb, 0, 116, 149 ) ;--nano-color-contrast: var(--nano-color-primary-contrast, #fff) ;--nano-color-contrast-rgb: var( --nano-color-primary-contrast-rgb, 255, 255, 255 ) ;--nano-color-shade: var(--nano-color-primary-shade, #00637f) ;--nano-color-tint: var(--nano-color-primary-tint, #2689a5) ;--nano-color-tint-rgb: var( --nano-color-primary-tint-rgb, 38, 137, 165 ) }.nano-color-secondary{--nano-color-base: var(--nano-color-secondary, #548caf) ;--nano-color-base-rgb: var( --nano-color-secondary-rgb, 84, 140, 175 ) ;--nano-color-contrast: var(--nano-color-secondary-contrast, #fff) ;--nano-color-contrast-rgb: var( --nano-color-secondary-contrast-rgb, 255, 255, 255 ) ;--nano-color-shade: var(--nano-color-secondary-shade, #477795) ;--nano-color-tint: var(--nano-color-secondary-tint, #6e9dbb) ;--nano-color-tint-rgb: var( --nano-color-secondary-tint-rgb, 110, 157, 187 ) }.nano-color-tertiary{--nano-color-base: var(--nano-color-tertiary, #b5aea7) ;--nano-color-base-rgb: var( --nano-color-tertiary-rgb, 181, 174, 167 ) ;--nano-color-contrast: var(--nano-color-tertiary-contrast, #4a4a4a) ;--nano-color-contrast-rgb: var( --nano-color-tertiary-contrast-rgb, 74, 74, 74 ) ;--nano-color-shade: var(--nano-color-tertiary-shade, #9a948e) ;--nano-color-tint: var(--nano-color-tertiary-tint, #c0bab4) ;--nano-color-tint-rgb: var( --nano-color-tertiary-tint-rgb, 192, 186, 180 ) }.nano-color-success{--nano-color-base: var(--nano-color-success, #17bb75) ;--nano-color-base-rgb: var( --nano-color-success-rgb, 23, 187, 117 ) ;--nano-color-contrast: var(--nano-color-success-contrast, #4a4a4a) ;--nano-color-contrast-rgb: var( --nano-color-success-contrast-rgb, 74, 74, 74 ) ;--nano-color-shade: var(--nano-color-success-shade, #149f63) ;--nano-color-tint: var(--nano-color-success-tint, #3ac58a) ;--nano-color-tint-rgb: var( --nano-color-success-tint-rgb, 58, 197, 138 ) }.nano-color-warning{--nano-color-base: var(--nano-color-warning, #f57e20) ;--nano-color-base-rgb: var( --nano-color-warning-rgb, 245, 126, 32 ) ;--nano-color-contrast: var(--nano-color-warning-contrast, #fff) ;--nano-color-contrast-rgb: var( --nano-color-warning-contrast-rgb, 255, 255, 255 ) ;--nano-color-shade: var(--nano-color-warning-shade, #d06b1b) ;--nano-color-tint: var(--nano-color-warning-tint, #f79141) ;--nano-color-tint-rgb: var( --nano-color-warning-tint-rgb, 247, 145, 65 ) }.nano-color-danger{--nano-color-base: var(--nano-color-danger, #ef4135) ;--nano-color-base-rgb: var( --nano-color-danger-rgb, 239, 65, 53 ) ;--nano-color-contrast: var(--nano-color-danger-contrast, #fff) ;--nano-color-contrast-rgb: var( --nano-color-danger-contrast-rgb, 255, 255, 255 ) ;--nano-color-shade: var(--nano-color-danger-shade, #cb372d) ;--nano-color-tint: var(--nano-color-danger-tint, #f15e53) ;--nano-color-tint-rgb: var( --nano-color-danger-tint-rgb, 241, 94, 83 ) }.nano-color-light{--nano-color-base: var(--nano-color-light, #f2f7f9) ;--nano-color-base-rgb: var( --nano-color-light-rgb, 242, 247, 249 ) ;--nano-color-contrast: var(--nano-color-light-contrast, #4a4a4a) ;--nano-color-contrast-rgb: var( --nano-color-light-contrast-rgb, 74, 74, 74 ) ;--nano-color-shade: var(--nano-color-light-shade, #ced2d4) ;--nano-color-tint: var(--nano-color-light-tint, #f4f8fa) ;--nano-color-tint-rgb: var( --nano-color-light-tint-rgb, 244, 248, 250 ) }.nano-color-medium{--nano-color-base: var(--nano-color-medium, #005c75) ;--nano-color-base-rgb: var( --nano-color-medium-rgb, 0, 92, 117 ) ;--nano-color-contrast: var(--nano-color-medium-contrast, #fff) ;--nano-color-contrast-rgb: var( --nano-color-medium-contrast-rgb, 255, 255, 255 ) ;--nano-color-shade: var(--nano-color-medium-shade, #004e63) ;--nano-color-tint: var(--nano-color-medium-tint, #26748a) ;--nano-color-tint-rgb: var( --nano-color-medium-tint-rgb, 38, 116, 138 ) }.nano-color-dark{--nano-color-base: var(--nano-color-dark, #455556) ;--nano-color-base-rgb: var( --nano-color-dark-rgb, 69, 85, 86 ) ;--nano-color-contrast: var(--nano-color-dark-contrast, #fff) ;--nano-color-contrast-rgb: var( --nano-color-dark-contrast-rgb, 255, 255, 255 ) ;--nano-color-shade: var(--nano-color-dark-shade, #3b4849) ;--nano-color-tint: var(--nano-color-dark-tint, #616f6f) ;--nano-color-tint-rgb: var( --nano-color-dark-tint-rgb, 97, 111, 111 ) }:root{--nano-base-font-size: 16px;--nano-padding: 1rem;--nano-font-family: "HelveticaNow", "Helvetica Neue", helvetica, arial, "Lucida Grande", sans-serif;--nano-color-white:#fff;--nano-color-white-rgb:255, 255, 255;--nano-color-lightblue:#90c6e7;--nano-color-lightblue-rgb:144, 198, 231;--nano-color-blue:#007495;--nano-color-blue-rgb:0, 116, 149;--nano-color-darkblue:#0c5a71;--nano-color-darkblue-rgb:12, 90, 113;--nano-color-darkgrey:#455556;--nano-color-darkgrey-rgb:69, 85, 86;--nano-color-palegrey:#b5aea7;--nano-color-palegrey-rgb:181, 174, 167;--nano-color-dimgrey:#918b86;--nano-color-dimgrey-rgb:145, 139, 134;--nano-color-lightgrey:#e4e6e8;--nano-color-lightgrey-rgb:228, 230, 232;--nano-color-mediumgrey:#687576;--nano-color-mediumgrey-rgb:104, 117, 118;--nano-color-green:#17bb75;--nano-color-green-rgb:23, 187, 117;--nano-color-orange:#f57e20;--nano-color-orange-rgb:245, 126, 32;--nano-color-paleyellow:#ede797;--nano-color-paleyellow-rgb:237, 231, 151;--nano-color-purple:#a53f97;--nano-color-purple-rgb:165, 63, 151;--nano-color-red:#ef4135;--nano-color-red-rgb:239, 65, 53;--nano-color-yellow:#f5cc49;--nano-color-yellow-rgb:245, 204, 73;--nano-color-background:#f0efed;--nano-color-background-rgb:240, 239, 237;--nano-color-black:#4a4a4a;--nano-color-black-rgb:74, 74, 74;--nano-color-celsius:#f0efed;--nano-color-celsius-rgb:240, 239, 237;--nano-color-offwhite:#f9f9fb;--nano-color-offwhite-rgb:249, 249, 251;--nano-color-darkblue--faded:#005c75;--nano-color-darkblue--faded-rgb:0, 92, 117;--nano-color-red--faded:#fee8de;--nano-color-red--faded-rgb:254, 232, 222;--nano-color-orange--faded:#feeddb;--nano-color-orange--faded-rgb:254, 237, 219;--nano-color-yellow--faded:#fefcf2;--nano-color-yellow--faded-rgb:254, 252, 242;--nano-color-green--faded:#edf5f2;--nano-color-green--faded-rgb:237, 245, 242;--nano-color-blue--faded:#f2f7f9;--nano-color-blue--faded-rgb:242, 247, 249;--nano-color-blue--darker:#245a6f;--nano-color-blue--darker-rgb:36, 90, 111;--nano-color-green--darker:#0b814f;--nano-color-green--darker-rgb:11, 129, 79;--nano-color-red--darker:#be2a20;--nano-color-red--darker-rgb:190, 42, 32;--nano-color-purple--darker:#772c6d;--nano-color-purple--darker-rgb:119, 44, 109;--nano-color-orange--darker:#b95e17;--nano-color-orange--darker-rgb:185, 94, 23;--nano-color-palegrey--darker:#8c8379;--nano-color-palegrey--darker-rgb:140, 131, 121;--nano-color-lightblue--darker:#548caf;--nano-color-lightblue--darker-rgb:84, 140, 175}@media(max-width: 576px){:root{--nano-base-font-size: 14px}}body{background-color:var(--nano-background-color, #f0efed)}hr,.horizontal-rule,.content-divider{display:block;block-size:1px;border:0;background-color:rgba(181,174,167,.5);margin-block:.5em;margin-inline:0;padding:0}area[href]:not([tabindex="-1"]):focus,iframe:not([tabindex="-1"]):focus,[contentEditable=true]:not([tabindex="-1"]):focus{outline:none;box-shadow:var(--nano-control-focus-shadow, 0 0 0 0.1875rem var(--nano-control-focus-color, rgba(144, 198, 231, 0.8)));border-radius:3px}/*# sourceMappingURL=nanopore.css.map */
@@ -1 +1 @@
1
- {"version":3,"sourceRoot":"","sources":["../src/global/style/base/display.scss","../src/global/style/utilities/_mixins.scss","../src/global/style/base/normalize.scss","../src/global/style/base/structure.scss","../src/global/style/base/padding.scss","../src/global/style/nano-theme/_base.scss","../src/global/style/nano-theme/_helvetica-now.scss","../src/global/style/nano-theme/typography.scss","../src/global/style/nano-theme/_colours.scss","../src/global/style/nano-theme/buttons.scss","../src/global/style/utilities/css-patterns/_unstyled_input.scss","../src/global/style/utilities/css-patterns/_unstyled_anchor.scss","../src/global/style/nano-theme/_button.scss","../src/global/style/nano-theme/theme.scss","../src/global/style/utilities/_colours.scss","../src/global/style/nano-theme/_form.scss"],"names":[],"mappings":"AAMA,WACE,wBAUE,cACE,wBAOF,gBACE,wBCqFF,yBD9FA,iBACE,yBC8IF,yBDvIA,mBACE,yBCqFF,yBD9FA,iBACE,yBC8IF,yBDvIA,mBACE,yBCqFF,yBD9FA,iBACE,yBC8IF,yBDvIA,mBACE,yBCqFF,0BD9FA,iBACE,yBC8IF,0BDvIA,mBACE,yBEpBN,4BAIE,wBAKF,sBACE,aACA,aAOF,SAEE,iBAOF,IACE,qBACA,SAIF,eACE,gBAOF,OACE,iBACA,mBAGF,GACE,eACA,eACA,uBAIF,IACE,cAIF,kBAIE,sBACA,cAeF,4BAIE,oBACA,mBAGF,SACE,cACA,gBACA,aACA,cAGF,sBACE,yBAGF,2BAIE,SACA,aACA,cAQF,6DAGE,eACA,0BAIF,qNAkBE,0BAGF,6BAEE,oBAGF,OACE,SACA,gBACA,oBACA,mBACA,qBACA,cACA,oBACA,eACA,0BAGF,WACE,eAIF,kDAGE,eAIF,iDAEE,UACA,SAMF,uCAEE,UACA,sBAMF,4FAEE,gBAMF,+FAEE,wBAOF,MACE,yBACA,iBAGF,MAEE,UCrNF,EACE,sBACA,0CACA,0CACA,2BAGF,6BAIE,iDAGF,qBAGE,sBACA,oBAGF,KACE,iBACA,sBAGF,KF8BE,kCACA,mCE5BA,SACA,UACA,kCCxBF,iBACE,mBACA,iBACA,iBACA,oBAEA,UAGF,cACE,kDACA,gDACA,gDACA,mDAEA,QCrBe,iCDwBjB,kBACE,gDAEA,oBC3Be,iCD8BjB,oBACE,kDAEA,qBCjCe,iCDoCjB,kBACE,gDAEA,mBCvCe,iCD0CjB,qBACE,mDAEA,kBC7Ce,iCDgDjB,uBACE,gDACA,mDAEA,cCpDe,iCDuDjB,yBACE,kDACA,gDAEA,eC3De,iCDiEjB,gBACE,kBACA,gBACA,gBACA,mBAEA,SAGF,aACE,iDACA,+CACA,+CACA,kDAEA,OChFe,iCDmFjB,iBACE,+CAEA,mBCtFe,iCDyFjB,mBACE,iDAEA,oBC5Fe,iCD+FjB,iBACE,+CAEA,kBClGe,iCDqGjB,oBACE,kDAEA,iBCxGe,iCD2GjB,sBACE,+CACA,kDAEA,aC/Ge,iCDkHjB,wBACE,iDACA,+CAEA,cCtHe,iCCiBjB,WACE,2BACA,IACE,8GAEF,gBACA,kBACA,uBACA,kBAGF,WACE,2BACA,IACE,8GAEF,gBACA,kBACA,uBACA,kBAGF,WACE,2BACA,IACE,8GAEF,gBACA,kBACA,uBACA,kBAGF,WACE,2BACA,IACE,8GAEF,gBACA,kBACA,uBACA,kBAGF,WACE,2BACA,IACE,8GAEF,gBACA,kBACA,uBACA,kBAGF,WACE,2BACA,IACE,8GAEF,gBACA,kBACA,uBACA,kBAKF,WACE,2BACA,IACE,gHAEF,gBACA,kBACA,oBACA,kBAGF,WACE,2BACA,IACE,gHAEF,gBACA,kBACA,oBACA,kBAGF,WACE,2BACA,IACE,gHAEF,gBACA,kBACA,oBACA,kBAGF,WACE,2BACA,IACE,gHAEF,gBACA,kBACA,oBACA,kBAGF,WACE,2BACA,IACE,gHAEF,gBACA,kBACA,oBACA,kBAGF,WACE,2BACA,IACE,gHAEF,gBACA,kBACA,oBACA,kBAKF,WACE,2BACA,IACE,gHAEF,gBACA,kBACA,sBACA,kBAGF,WACE,2BACA,IACE,gHAEF,gBACA,kBACA,sBACA,kBAGF,WACE,2BACA,IACE,gHAEF,gBACA,kBACA,sBACA,kBAGF,WACE,2BACA,IACE,gHAEF,gBACA,kBACA,sBACA,kBAGF,WACE,2BACA,IACE,gHAEF,gBACA,kBACA,sBACA,kBC3LF,KACE,oCACA,yCACA,MCsGW,gCDrGX,qCAGF,EACE,yCACA,qBAEA,QACE,0BAIJ,kBAME,uBACA,YAvCqB,IAwCrB,YAtCqB,IAyCvB,GACE,wBACA,UAzCa,KA4Cf,GACE,wBACA,UA5Ca,KA+Cf,GACE,UA9Ca,KAiDf,GACE,UAhDa,KAmDf,GACE,UAlDa,KAqDf,GACE,UApDa,KAuDf,MACE,cAGF,QAEE,kBACA,cACA,cACA,wBAGF,IACE,yBAGF,IACE,wBAGF,EACE,mBACA,gBACA,oBAEA,aACE,kBAIJ,SACE,gBACA,gBACA,sBACA,gBAEA,oBACE,cAGF,aAVF,SAWI,eAGF,cACE,iBNVA,yBMSF,cAII,mBAIJ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","file":"nanopore.css","sourcesContent":["@import '../utilities/globals';\n\n// Display\n// --------------------------------------------------\n// Modifies display of a particular element based on the given classes\n\n.nano-hide {\n display: none !important;\n}\n\n// Adds hidden classes\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n // Provide `ion-hide-{bp}-up` classes for hiding the element based\n // on the breakpoint\n .nano-hide#{$infix}-up {\n display: none !important;\n }\n }\n\n @include media-breakpoint-down($breakpoint, $screen-breakpoints) {\n // Provide `ion-hide-{bp}-down` classes for hiding the element based\n // on the breakpoint\n .nano-hide#{$infix}-down {\n display: none !important;\n }\n }\n}\n","@mixin input-cover() {\n inset-block: 0;\n inset-inline: auto;\n margin: 0;\n inline-size: 100%;\n block-size: 100%;\n border: 0;\n background: transparent;\n cursor: pointer;\n appearance: none;\n outline: none;\n\n &::-moz-focus-inner {\n border: 0;\n }\n}\n\n@mixin text-inherit() {\n font-family: inherit;\n font-size: inherit;\n font-stretch: inherit;\n font-style: inherit;\n font-weight: inherit;\n letter-spacing: inherit;\n text-decoration: inherit;\n text-overflow: inherit;\n text-transform: inherit;\n text-align: inherit;\n white-space: inherit;\n color: inherit;\n}\n\n// A transition-friendly alternative to `display: none` for hiding content\n@mixin hidden {\n position: absolute;\n inline-size: 1px;\n block-size: 1px;\n clip: rect(0 0 0 0);\n clip-path: inset(50%);\n overflow: hidden;\n pointer-events: none;\n visibility: hidden; // prevent tab stops and screen reader discovery\n}\n\n// Hides content visually while still making it available to screen readers\n@mixin visually-hide {\n clip: rect(1px, 1px, 1px, 1px);\n clip-path: inset(50%);\n block-size: 1px;\n inline-size: 1px;\n margin: -1px;\n overflow: hidden;\n padding: 0;\n position: absolute;\n}\n\n// Font smoothing\n// --------------------------------------------------\n\n@mixin font-smoothing() {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n}\n\n// Get the key from a map based on the index\n@function index-to-key($map, $index) {\n $keys: map-keys($map);\n\n @return nth($keys, $index);\n}\n\n// Breakpoint Mixins\n// ---------------------------------------------------------------------------------\n\n// Breakpoint viewport sizes and media queries.\n//\n// Breakpoints are defined as a map of (name: minimum width), order from small to large:\n//\n// (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px)\n//\n// The map defined in the `$screen-breakpoints` global variable is used as the `$breakpoints` argument by default.\n\n// ---------------------------------------------------------------------------------\n\n// Minimum breakpoint width. Null for the smallest (first) breakpoint.\n//\n// >> breakpoint-min(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 576px\n@function breakpoint-min($name, $breakpoints: $screen-breakpoints) {\n $min: map-get($breakpoints, $name);\n\n @return if($name !=index-to-key($breakpoints, 1), $min, null);\n}\n\n// Returns a blank string if smallest breakpoint, otherwise returns the name with a dash infront.\n// Useful for making responsive utilities.\n//\n// >> breakpoint-infix(xs, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"\" (Returns a blank string)\n// >> breakpoint-infix(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"-sm\"\n@function breakpoint-infix($name, $breakpoints: $screen-breakpoints) {\n @return if(breakpoint-min($name, $breakpoints) ==null, '', '-#{$name}');\n}\n\n// Media of at least the minimum breakpoint width. No query for the smallest breakpoint.\n// Makes the @content apply to the given breakpoint and wider.\n@mixin media-breakpoint-up($name, $breakpoints: $screen-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n\n @if $min {\n @media (min-width: $min) {\n @content;\n }\n }\n\n @else {\n @content;\n }\n}\n\n// Name of the next breakpoint, or null for the last breakpoint.\n//\n// >> breakpoint-next(sm)\n// md\n// >> breakpoint-next(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// md\n// >> breakpoint-next(sm, $breakpoint-names: (xs sm md lg xl))\n// md\n@function breakpoint-next(\n $name,\n $breakpoints: $screen-breakpoints,\n $breakpoint-names: map-keys($breakpoints)\n) {\n $n: index($breakpoint-names, $name);\n\n @return if(\n $n < length($breakpoint-names),\n nth($breakpoint-names, $n + 1),\n null\n );\n}\n\n// Maximum breakpoint width. Null for the smallest (first) breakpoint.\n// The maximum value is calculated as the minimum of the current one.\n//\n// >> breakpoint-max(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 576px\n@function breakpoint-max($name, $breakpoints: $screen-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n\n @return if($min, breakpoint-min($name, $breakpoints), null);\n}\n\n// Media of at most the maximum breakpoint width. No query for the largest breakpoint.\n// Makes the @content apply to the given breakpoint and narrower.\n@mixin media-breakpoint-down($name, $breakpoints: $screen-breakpoints) {\n $max: breakpoint-max($name, $breakpoints);\n\n @if $max {\n @media (max-width: $max) {\n @content;\n }\n }\n\n @else {\n @content;\n }\n}\n\n// Text Direction - ltr / rtl\n//\n// CSS defaults to use the ltr css, and adds [dir=rtl] selectors\n// to override ltr defaults.\n// ----------------------------------------------------------\n\n@mixin multi-dir() {\n @content;\n\n // $root: #{&};\n // @at-root [dir] {\n // #{$root} {\n // @content;\n // }\n // }\n}\n\n@mixin host($hostCtx: null) {\n $root: #{&};\n\n @if $hostCtx {\n @at-root :host(#{$hostCtx}) {\n #{$root} {\n @content;\n }\n }\n }\n\n @else {\n @at-root :host {\n #{$root} {\n @content;\n }\n }\n }\n}\n\n@mixin rtl-host($hostCtx: '') {\n $root: #{&};\n\n @at-root :host(#{$hostCtx}[dir='rtl']) {\n #{$root} {\n @content;\n }\n }\n}\n\n@mixin ltr-host($hostCtx: '') {\n $root: #{&};\n\n @at-root :host(#{$hostCtx}:not([dir='rtl'])) {\n #{$root} {\n @content;\n }\n }\n}\n\n@mixin rtl() {\n $root: #{&};\n\n @at-root #{$root + '[dir=rtl]'} {\n @content;\n }\n}\n\n@mixin ltr() {\n @content;\n}\n\n// SVG Background Image Mixin\n// @param {string} $svg\n// ----------------------------------------------------------\n@mixin svg-background-image($svg, $flip-rtl: false) {\n $url: url-encode($svg);\n $viewBox: str-split(str-extract($svg, \"viewBox='\", \"'\"), ' ');\n\n @if $flip-rtl !=true or $viewBox==null {\n @include multi-dir() {\n background-image: url('data:image/svg+xml;charset=utf-8,#{$url}');\n }\n }\n\n @else {\n $transform: \"transform='translate(#{nth($viewBox, 3)}, 0) scale(-1, 1)'\";\n $flipped-url: $svg;\n $flipped-url: str-replace($flipped-url, '<path', '<path #{$transform}');\n $flipped-url: str-replace($flipped-url, '<line', '<line #{$transform}');\n $flipped-url: str-replace(\n $flipped-url,\n '<polygon',\n '<polygon #{$transform}'\n );\n $flipped-url: url-encode($flipped-url);\n\n @include ltr() {\n background-image: url('data:image/svg+xml;charset=utf-8,#{$url}');\n }\n\n @include rtl() {\n background-image: url('data:image/svg+xml;charset=utf-8,#{$flipped-url}');\n }\n }\n}\n\n@mixin background-position(\n $horizontal,\n $horizontal-amount: null,\n $vertical: null,\n $vertical-amount: null\n) {\n @if $horizontal==start or $horizontal==end {\n $horizontal-ltr: null;\n $horizontal-rtl: null;\n\n @if $horizontal==start {\n $horizontal-ltr: left;\n $horizontal-rtl: right;\n }\n\n @else {\n $horizontal-ltr: right;\n $horizontal-rtl: left;\n }\n\n @include ltr() {\n background-position:\n $horizontal-ltr $horizontal-amount $vertical\n $vertical-amount;\n }\n\n @include rtl() {\n background-position:\n $horizontal-rtl $horizontal-amount $vertical\n $vertical-amount;\n }\n }\n\n @else {\n @include multi-dir() {\n background-position:\n $horizontal $horizontal-amount $vertical\n $vertical-amount;\n }\n }\n}\n\n@mixin transform-origin($x-axis, $y-axis: null) {\n @if $x-axis==start {\n @include ltr() {\n transform-origin: left $y-axis;\n }\n\n @include rtl() {\n transform-origin: right $y-axis;\n }\n }\n\n @else if $x-axis==end {\n @include ltr() {\n transform-origin: right $y-axis;\n }\n\n @include rtl() {\n transform-origin: left $y-axis;\n }\n }\n\n @else if $x-axis==left or $x-axis==right {\n @include multi-dir() {\n transform-origin: $x-axis $y-axis;\n }\n }\n\n @else {\n @include ltr() {\n transform-origin: $x-axis $y-axis;\n }\n\n @include rtl() {\n transform-origin: calc(100% - #{$x-axis}) $y-axis;\n }\n }\n}\n\n// Add transform for all directions\n// @param {string} $transforms - comma separated list of transforms\n@mixin transform($transforms...) {\n $extra: null;\n\n $x: null;\n $ltr-translate: null;\n $rtl-translate: null;\n\n @each $transform in $transforms {\n @if (str-index($transform, translate3d)) {\n $transform: str-replace($transform, 'translate3d(');\n $transform: str-replace($transform, ')');\n\n $coordinates: str-split($transform, ',');\n\n $x: nth($coordinates, 1);\n $y: nth($coordinates, 2);\n $z: nth($coordinates, 3);\n\n $ltr-translate: translate3d($x, $y, $z);\n $rtl-translate: translate3d(calc(-1 * #{$x}), $y, $z);\n }\n\n @else {\n @if $extra==null {\n $extra: $transform;\n }\n\n @else {\n $extra: $extra $transform;\n }\n }\n }\n\n @if $x== '0' or $x==null {\n @include multi-dir() {\n transform: $ltr-translate $extra;\n }\n }\n\n @else {\n @include ltr() {\n transform: $ltr-translate $extra;\n }\n\n @include rtl() {\n transform: $rtl-translate $extra;\n }\n }\n}\n\n@mixin hide-scrollbar() {\n scrollbar-width: none;\n -ms-overflow-style: none;\n\n &::-webkit-scrollbar {\n inline-size: 0;\n block-size: 0;\n }\n}\n","// ! normalize.css v3.0.2 | MIT License | github.com/necolas/normalize.css\n\n// HTML5 display definitions\n// ==========================================================================\n\n// 1. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.\naudio,\ncanvas,\nprogress,\nvideo {\n vertical-align: baseline; // 1\n}\n\n// Prevent modern browsers from displaying `audio` without controls.\n// Remove excess height in iOS 5 devices.\naudio:not([controls]) {\n display: none;\n block-size: 0;\n}\n\n// Text-level semantics\n// ==========================================================================\n\n// Address style set to `bolder` in Firefox 4+, Safari, and Chrome.\nb,\nstrong {\n font-weight: bold;\n}\n\n// Embedded content\n// ==========================================================================\n\n// Remove border when inside `a` element in IE 8/9/10.\nimg {\n max-inline-size: 100%;\n border: 0;\n}\n\n// Correct overflow not hidden in IE 9/10/11.\nsvg:not(:root) {\n overflow: hidden;\n}\n\n// Grouping content\n// ==========================================================================\n\n// Address margin not present in IE 8/9 and Safari.\nfigure {\n margin-block: 1em;\n margin-inline: 40px;\n}\n\nhr {\n block-size: 1px;\n border-width: 0;\n box-sizing: content-box;\n}\n\n// Contain overflow in all browsers.\npre {\n overflow: auto;\n}\n\n// Address odd `em`-unit font size rendering in all browsers.\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace;\n font-size: 1em;\n}\n\n// Forms\n// ==========================================================================\n\n// Known limitation: by default, Chrome and Safari on OS X allow very limited\n// styling of `select`, unless a `border` property is set.\n\n// 1. Correct color not being inherited.\n// Known issue: affects color of disabled elements.\n// 2. Correct font properties not being inherited.\n// 3. Address margins set differently in Firefox 4+, Safari, and Chrome.\n//\n\nlabel,\ninput,\nselect,\ntextarea {\n font-family: inherit;\n line-height: normal;\n}\n\ntextarea {\n overflow: auto;\n block-size: auto;\n font: inherit;\n color: inherit;\n}\n\ntextarea::placeholder {\n padding-inline-start: 2px;\n}\n\nform,\ninput,\noptgroup,\nselect {\n margin: 0; // 3\n font: inherit; // 2\n color: inherit; // 1\n}\n\n// 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`\n// and `video` controls.\n// 2. Correct inability to style clickable `input` types in iOS.\n// 3. Improve usability and consistency of cursor style between image-type\n// `input` and others.\nhtml input[type='button'],\ninput[type='reset'],\ninput[type='submit'] {\n cursor: pointer; // 3\n -webkit-appearance: button; // 2\n}\n\n// remove 300ms delay\na,\na div,\na span,\na ion-icon,\na ion-label,\nbutton,\nbutton div,\nbutton span,\nbutton ion-icon,\nbutton ion-label,\n.ion-tappable,\n[tappable],\n[tappable] div,\n[tappable] span,\n[tappable] ion-icon,\n[tappable] ion-label,\ninput,\ntextarea {\n touch-action: manipulation;\n}\n\na ion-label,\nbutton ion-label {\n pointer-events: none;\n}\n\nbutton {\n border: 0;\n border-radius: 0;\n font-family: inherit;\n font-style: inherit;\n font-variant: inherit;\n line-height: 1;\n text-transform: none;\n cursor: pointer;\n -webkit-appearance: button;\n}\n\n[tappable] {\n cursor: pointer;\n}\n\n// Re-set default cursor for disabled elements.\na[disabled],\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\n\n// Remove inner padding and border in Firefox 4+.\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n padding: 0;\n border: 0;\n}\n\n// Firefox's implementation doesn't respect box-sizing, padding, or width.\n// 1. Address box sizing set to `content-box` in IE 8/9/10.\n// 2. Remove excess padding in IE 8/9/10.\ninput[type='checkbox'],\ninput[type='radio'] {\n padding: 0; // 2\n box-sizing: border-box; // 1\n}\n\n// Fix the cursor style for Chrome's increment/decrement buttons. For certain\n// `font-size` values of the `input`, it causes the cursor style of the\n// decrement button to change from `default` to `text`.\ninput[type='number']::-webkit-inner-spin-button,\ninput[type='number']::-webkit-outer-spin-button {\n block-size: auto;\n}\n\n// Remove inner padding and search cancel button in Safari and Chrome on OS X.\n// Safari (but not Chrome) clips the cancel button when the search input has\n// padding (and `textfield` appearance).\ninput[type='search']::-webkit-search-cancel-button,\ninput[type='search']::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n// Tables\n// ==========================================================================//\n\n// Remove most spacing between table cells.\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\n\ntd,\nth {\n padding: 0;\n}\n","// Structure\n// --------------------------------------------------\n// Adds structural css to the native html elements\n\n* {\n box-sizing: border-box;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n -webkit-tap-highlight-color: transparent;\n -webkit-touch-callout: none;\n}\n\nbutton,\ninput,\nselect,\ntextarea {\n -webkit-tap-highlight-color: rgba(201, 224, 253, 0.8);\n}\n\n*,\n*::before,\n*::after {\n box-sizing: border-box;\n font-family: inherit;\n}\n\nhtml {\n inline-size: 100%;\n text-size-adjust: 100%;\n}\n\nbody {\n @include font-smoothing();\n\n margin: 0;\n padding: 0;\n text-rendering: optimizeLegibility;\n}\n","@import '../nano-theme/base';\n@import '../utilities/globals';\n\n// Element Space\n// --------------------------------------------------\n// Creates padding and margin attributes to be used on\n// any element\n\n// Padding\n// --------------------------------------------------\n\n.nano-no-padding {\n --padding-start: 0;\n --padding-end: 0;\n --padding-top: 0;\n --padding-bottom: 0;\n\n padding: 0;\n}\n\n.nano-padding {\n --padding-start: #{$spacing-medium};\n --padding-end: #{$spacing-medium};\n --padding-top: #{$spacing-medium};\n --padding-bottom: #{$spacing-medium};\n\n padding: $spacing-medium;\n}\n\n.nano-padding-top {\n --padding-top: #{$spacing-medium};\n\n padding-block-start: $spacing-medium;\n}\n\n.nano-padding-start {\n --padding-start: #{$spacing-medium};\n\n padding-inline-start: $spacing-medium;\n}\n\n.nano-padding-end {\n --padding-end: #{$spacing-medium};\n\n padding-inline-end: $spacing-medium;\n}\n\n.nano-padding-bottom {\n --padding-bottom: #{$spacing-medium};\n\n padding-block-end: $spacing-medium;\n}\n\n.nano-padding-vertical {\n --padding-top: #{$spacing-medium};\n --padding-bottom: #{$spacing-medium};\n\n padding-block: $spacing-medium;\n}\n\n.nano-padding-horizontal {\n --padding-start: #{$spacing-medium};\n --padding-end: #{$spacing-medium};\n\n padding-inline: $spacing-medium;\n}\n\n// Margin\n// --------------------------------------------------\n\n.nano-no-margin {\n --margin-start: 0;\n --margin-end: 0;\n --margin-top: 0;\n --margin-bottom: 0;\n\n margin: 0;\n}\n\n.nano-margin {\n --margin-start: #{$spacing-medium};\n --margin-end: #{$spacing-medium};\n --margin-top: #{$spacing-medium};\n --margin-bottom: #{$spacing-medium};\n\n margin: $spacing-medium;\n}\n\n.nano-margin-top {\n --margin-top: #{$spacing-medium};\n\n margin-block-start: $spacing-medium;\n}\n\n.nano-margin-start {\n --margin-start: #{$spacing-medium};\n\n margin-inline-start: $spacing-medium;\n}\n\n.nano-margin-end {\n --margin-end: #{$spacing-medium};\n\n margin-inline-end: $spacing-medium;\n}\n\n.nano-margin-bottom {\n --margin-bottom: #{$spacing-medium};\n\n margin-block-end: $spacing-medium;\n}\n\n.nano-margin-vertical {\n --margin-top: #{$spacing-medium};\n --margin-bottom: #{$spacing-medium};\n\n margin-block: $spacing-medium;\n}\n\n.nano-margin-horizontal {\n --margin-start: #{$spacing-medium};\n --margin-end: #{$spacing-medium};\n\n margin-inline: $spacing-medium;\n}\n","// Setup global / theme css variables with default fallbacks\n\n// Padding, Margin\n$spacing-xsmall: var(--nano-spacing-xsmall, 4px);\n$spacing-small: var(--nano-spacing-small, 8px);\n$spacing-medium: var(--nano-spacing-medium, 16px);\n$spacing-large: var(--nano-spacing-large, 20px);\n$spacing-xlarge: var(--nano-spacing-xlarge, 24px);\n\n// Text\n$fontsize-xsmall: var(--nano-fontsize-xsmall, 0.625rem);\n$fontsize-small: var(--nano-fontsize-small, 0.875rem);\n$fontsize-medium: var(--nano-fontsize-medium, 1rem);\n$fontsize-large: var(--nano-fontsize-large, 1.25rem);\n$fontsize-xlarge: var(--nano-fontsize-xlarge, 1.5rem);\n\n// Border radius\n$border-radius-small: var(--nano-border-radius-small, 2px);\n$border-radius-medium: var(--nano-border-radius-medium, 4px);\n$border-radius-large: var(--nano-border-radius-large, 8px);\n$border-radius-xlarge: var(--nano-border-radius-xlarge, 16px);\n\n// Transition\n$transition-xslow: var(--nano-transition-x-slow, 1s);\n$transition-slow: var(--nano-transition-slow, 0.7s);\n$transition-medium: var(--nano-transition-medium, 0.5s);\n$transition-fast: var(--nano-transition-fast, 0.3s);\n$transition-xfast: var(--nano-transition-fast, 0.1s);\n","/**\n * @license\n * MyFonts Webfont Build ID 3183969,\n 2016-03-09T09:39:13-0500\n *\n * The fonts listed in this notice are subject to the End User License\n * Agreement(s) entered into by the website owner. All other parties are\n * explicitly restricted from using the Licensed Webfonts(s).\n *\n * You may obtain a valid license at the URLs below.\n *\n *\n * License: http://www.myfonts.com/viewlicense?type=web&buildid=3183969\n * Webfonts copyright: Part of the digitally encoded machine readable outline data for producing the Typefaces provided is copyrighted &#x00A9; 1988 - 2006 Linotype GmbH,\n www.linotype.com. All rights reserved. This software is the property of Linotype GmbH,\n and may not be repro\n *\n * © 2016 MyFonts Inc\n*/\n\n// Helvetica Now Display\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_1_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_1_0.woff') format('woff');\n font-weight: 400;\n font-style: normal;\n font-stretch: condensed;\n font-display: swap;\n}\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_8_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_8_0.woff') format('woff');\n font-weight: 400;\n font-style: italic;\n font-stretch: condensed;\n font-display: swap;\n}\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_5_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_5_0.woff') format('woff');\n font-weight: 600;\n font-style: normal;\n font-stretch: condensed;\n font-display: swap;\n}\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_2_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_2_0.woff') format('woff');\n font-weight: 600;\n font-style: italic;\n font-stretch: condensed;\n font-display: swap;\n}\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_9_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_9_0.woff') format('woff');\n font-weight: 200;\n font-style: normal;\n font-stretch: condensed;\n font-display: swap;\n}\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_A_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_A_0.woff') format('woff');\n font-weight: 200;\n font-style: italic;\n font-stretch: condensed;\n font-display: swap;\n}\n\n// Helvetica Now Text\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_21_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_21_0.woff') format('woff');\n font-weight: 400;\n font-style: normal;\n font-stretch: normal;\n font-display: swap;\n}\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_28_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_28_0.woff') format('woff');\n font-weight: 400;\n font-style: italic;\n font-stretch: normal;\n font-display: swap;\n}\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_25_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_25_0.woff') format('woff');\n font-weight: 600;\n font-style: normal;\n font-stretch: normal;\n font-display: swap;\n}\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_22_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_22_0.woff') format('woff');\n font-weight: 600;\n font-style: italic;\n font-stretch: normal;\n font-display: swap;\n}\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_29_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_29_0.woff') format('woff');\n font-weight: 200;\n font-style: normal;\n font-stretch: normal;\n font-display: swap;\n}\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_2A_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_2A_0.woff') format('woff');\n font-weight: 200;\n font-style: italic;\n font-stretch: normal;\n font-display: swap;\n}\n\n// Helvetica Now Micro\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_15_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_15_0.woff') format('woff');\n font-weight: 400;\n font-style: normal;\n font-stretch: expanded;\n font-display: swap;\n}\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_16_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_16_0.woff') format('woff');\n font-weight: 600;\n font-style: italic;\n font-stretch: expanded;\n font-display: swap;\n}\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_17_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_17_0.woff') format('woff');\n font-weight: 600;\n font-style: normal;\n font-stretch: expanded;\n font-display: swap;\n}\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_1B_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_1B_0.woff') format('woff');\n font-weight: 200;\n font-style: normal;\n font-stretch: expanded;\n font-display: swap;\n}\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_1C_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_1C_0.woff') format('woff');\n font-weight: 200;\n font-style: italic;\n font-stretch: expanded;\n font-display: swap;\n}\n","@use 'sass:map';\n@use 'sass:list';\n\n@import '../utilities/globals';\n@import 'colours';\n\n/// @prop - Font weight of all headings\n$headings-font-weight: 600 !default;\n/// @prop - Line height of all headings\n$headings-line-height: 1.2 !default;\n/// @prop - Font size of heading level 1\n$h1-font-size: 28px !default;\n/// @prop - Font size of heading level 2\n$h2-font-size: 24px !default;\n/// @prop - Font size of heading level 3\n$h3-font-size: 22px !default;\n/// @prop - Font size of heading level 4\n$h4-font-size: 20px !default;\n/// @prop - Font size of heading level 5\n$h5-font-size: 18px !default;\n/// @prop - Font size of heading level 6\n$h6-font-size: 16px !default;\n\nhtml {\n font-family: var(--nano-font-family);\n font-weight: var(--nano-font-weight, 500);\n color: $text-color;\n font-size: var(--nano-base-font-size);\n}\n\na {\n color: nano-color(primary, base);\n text-decoration: none;\n\n &:hover {\n text-decoration: underline;\n }\n}\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n margin-block: 16px 10px;\n font-weight: $headings-font-weight;\n line-height: $headings-line-height;\n}\n\nh1 {\n margin-block-start: 10px;\n font-size: $h1-font-size;\n}\n\nh2 {\n margin-block-start: 18px;\n font-size: $h2-font-size;\n}\n\nh3 {\n font-size: $h3-font-size;\n}\n\nh4 {\n font-size: $h4-font-size;\n}\n\nh5 {\n font-size: $h5-font-size;\n}\n\nh6 {\n font-size: $h6-font-size;\n}\n\nsmall {\n font-size: 75%;\n}\n\nsub,\nsup {\n position: relative;\n font-size: 75%;\n line-height: 0;\n vertical-align: baseline;\n}\n\nsup {\n inset-block-start: -0.5em;\n}\n\nsub {\n inset-block-end: -0.25em;\n}\n\np {\n font-size: 1.125rem;\n line-height: 1.4;\n margin-block: 0 1rem;\n\n &.supporting {\n font-size: 0.875rem;\n }\n}\n\n.heading {\n font-weight: 500;\n line-height: 1.3;\n margin-block: 0 1.5rem;\n margin-inline: 0;\n\n &__highlight {\n color: map.get($colors, blue);\n }\n\n @media print {\n color: map.get($colors, black);\n }\n\n &--one {\n font-size: 2.5rem;\n\n @include media-breakpoint-up('md') {\n font-size: 3.25rem;\n }\n }\n\n &--two {\n font-size: 1.5rem;\n\n @include media-breakpoint-up('md') {\n font-size: 2rem;\n }\n }\n\n &--three {\n font-size: 1.125rem;\n\n @include media-breakpoint-up('md') {\n font-size: 1.375rem;\n }\n }\n\n &--four {\n font-size: 1.125rem;\n }\n\n &--five {\n font-size: 1rem;\n }\n\n &--light {\n font-weight: 200;\n }\n\n &--upper {\n text-transform: uppercase;\n }\n\n &--meta {\n font-size: 0.875rem;\n text-transform: uppercase;\n letter-spacing: 1.3px;\n font-weight: bold;\n margin-block-end: 1rem;\n }\n}\n","@use 'sass:map';\n@use 'sass:list';\n\n@import '../utilities/colours';\n\n$colors: (\n white: #fff,\n lightblue: #90c6e7,\n blue: darken(#0084a9, 4%),\n darkblue: #0c5a71,\n darkgrey: #455556,\n palegrey: #b5aea7,\n dimgrey: #918b86,\n lightgrey: #e4e6e8,\n mediumgrey: #687576,\n green: #17bb75,\n orange: #f57e20,\n paleyellow: #ede797,\n purple: #a53f97,\n red: #ef4135,\n yellow: #f5cc49,\n background: #f0efed,\n black: #4a4a4a,\n // Bg Colors\n celsius: #f0efed,\n offwhite: #f9f9fb,\n darkblue--faded: #005c75,\n // Faded Colors\n red--faded: #fee8de,\n orange--faded: #feeddb,\n yellow--faded: #fefcf2,\n green--faded: #edf5f2,\n blue--faded: #f2f7f9,\n // Darkened Colours\n blue--darker: #245a6f,\n green--darker: #0b814f,\n red--darker: #be2a20,\n purple--darker: #772c6d,\n orange--darker: #b95e17,\n palegrey--darker: #8c8379,\n lightblue--darker: #548caf,\n);\n\n// Text\n$dark-text-default: map.get($colors, black);\n$light-text-default: map.get($colors, white);\n\n// Theme\n$primary: map.get($colors, blue) !default;\n$secondary: map.get($colors, lightblue--darker) !default;\n$tertiary: map.get($colors, palegrey) !default;\n$success: map.get($colors, green) !default;\n$warning: map.get($colors, orange) !default;\n$danger: map.get($colors, red) !default;\n$light: map.get($colors, blue--faded) !default;\n$medium: map.get($colors, darkblue--faded) !default;\n$dark: map.get($colors, darkgrey) !default;\n\n// Theme css variables and variations\n$themes: (\n primary: (\n base: $primary,\n contrast: color-contrast($primary),\n shade: get-color-shade($primary),\n tint: get-color-tint($primary),\n ),\n secondary: (\n base: $secondary,\n contrast: color-contrast($secondary),\n shade: get-color-shade($secondary),\n tint: get-color-tint($secondary),\n ),\n tertiary: (\n base: $tertiary,\n contrast: color-contrast($tertiary),\n shade: get-color-shade($tertiary),\n tint: get-color-tint($tertiary),\n ),\n success: (\n base: $success,\n contrast: color-contrast($tertiary),\n shade: get-color-shade($success),\n tint: get-color-tint($success),\n ),\n warning: (\n base: $warning,\n contrast: color-contrast($warning),\n shade: get-color-shade($warning),\n tint: get-color-tint($warning),\n ),\n danger: (\n base: $danger,\n contrast: color-contrast($danger),\n shade: get-color-shade($danger),\n tint: get-color-tint($danger),\n ),\n light: (\n base: $light,\n contrast: color-contrast($light),\n shade: get-color-shade($light),\n tint: get-color-tint($light),\n ),\n medium: (\n base: $medium,\n contrast: color-contrast($medium),\n shade: get-color-shade($medium),\n tint: get-color-tint($medium),\n ),\n dark: (\n base: $dark,\n contrast: color-contrast($dark),\n shade: get-color-shade($dark),\n tint: get-color-tint($dark),\n ),\n) !default;\n\n// Default Foreground and Background Colors\n// -------------------------------------------------------------------------------------------\n// Used internally to calculate the default steps\n\n$background-color-value: map.get($colors, background) !default;\n$background-color-rgb-value: color-to-rgb-list(\n $background-color-value\n) !default;\n\n$text-color-value: map.get($colors, black) !default;\n$text-color-rgb-value: color-to-rgb-list($text-color-value) !default;\n\n$text-color: var(--nano-text-color, $text-color-value) !default;\n$text-color-rgb: var(--nano-text-color-rgb, $text-color-rgb-value) !default;\n\n$background-color: var(\n --nano-background-color,\n $background-color-value\n) !default;\n$background-color-rgb: var(\n --nano-background-color-rgb,\n $background-color-rgb-value\n) !default;\n","@use 'sass:map';\n@use 'sass:list';\n\n@import './colours';\n@import './button';\n\n.button {\n @include button-base;\n}\n\n.button--primary {\n @include button-standard(\n #{nano-color(primary, base)},\n #{nano-color(primary, contrast)},\n #{nano-color(primary, shade)}\n );\n}\n\n.button--secondary {\n @include button-standard(map.get($colors, green), map.get($colors, white), map.get($colors, green--darker));\n}\n\n.button--light {\n @include button-standard(\n map.get($colors, white),\n map.get($colors, blue),\n map.get($colors, white),\n map.get($colors, darkblue)\n );\n}\n\n.button--danger {\n @include button-standard(map.get($colors, red), map.get($colors, white), map.get($colors, red--darker));\n}\n\n.button--warning {\n @include button-standard(map.get($colors, orange), map.get($colors, white), map.get($colors, orange--darker));\n}\n\n.button--tertiary {\n background: transparent;\n box-shadow: none;\n text-decoration: underline;\n font-weight: 400;\n\n &:hover,\n &:focus {\n &:not(.button--disabled):not(:disabled),\n &.button--active {\n color: map.get($colors, palegrey);\n box-shadow: none;\n text-decoration: underline;\n }\n }\n}\n","/// Strips browser styling from an input.\n\n@mixin unstyled-input($outline: false) {\n padding: 0;\n border: none;\n background-color: transparent;\n font: inherit;\n -webkit-box-align: center;\n\n @if $outline == false {\n outline: none;\n }\n\n &::-moz-focus-inner {\n border: 0;\n padding: 0;\n }\n}\n","/// Displays an anchor as plain text.\n\n@mixin unstyled-anchor {\n text-decoration: none;\n color: inherit;\n\n &:hover,\n &:focus {\n text-decoration: none;\n color: inherit;\n }\n}\n","@import '../utilities/css-patterns/patterns';\n@import './layers';\n@import './form';\n\n// Border\n$btn-border-radius: var(--nano-btn-border-radius, 5px);\n$btn-border-width: var(--nano-btn-border-width, 2px);\n$btn-border-style: var(--nano-btn-border-style, solid);\n\n// Spacing\n$btn-padding-top: var(--nano-btn-padding-top, 0.5rem);\n$btn-padding-bottom: var(--nano-btn-padding-bottom, 0.5rem);\n$btn-padding-start: var(--nano-btn-padding-start, 1rem);\n$btn-padding-end: var(--nano-btn-padding-end, 1rem);\n$btn-line-height: var(--nano-btn-line-height, 1.5rem);\n\n// Misc\n$btn-icon-size: var(--nano-btn-icon-size, 1rem);\n\n@mixin transition-hover {\n transition:\n background-color 100ms ease-in-out,\n box-shadow 100ms ease-in-out,\n border-color 100ms ease-in-out,\n color 100ms ease-in-out;\n}\n\n@mixin button-keyline {\n background: transparent;\n border-style: #{$btn-border-style};\n border-width: #{$btn-border-width};\n border-radius: #{$btn-border-radius};\n\n &:hover:not(.button--disabled):not(:disabled),\n &:not(.button--focus),\n &.button--active {\n box-shadow: none;\n }\n}\n\n@mixin button-standard($bg, $font, $bg-hover: false, $font-hover: false) {\n $font-hover: if($font-hover, $font-hover, $font);\n $bg-hover: if($bg-hover, $bg-hover, $bg);\n\n background-color: $bg;\n color: $font;\n\n &:hover:not(.button--disabled):not(:disabled),\n &.button--active {\n background-color: $bg-hover;\n color: $font-hover;\n\n &.button--keyline {\n background-color: $bg;\n color: $font;\n }\n }\n\n &:focus {\n color: $font;\n }\n\n &.button--keyline {\n @include button-keyline;\n\n color: $bg;\n border-color: $bg;\n }\n}\n\n@mixin button-base {\n @include unstyled-input($outline: true);\n @include unstyled-anchor;\n @include transition-hover;\n\n padding-inline: #{$btn-padding-start} #{$btn-padding-end};\n padding-block: #{$btn-padding-top} #{$btn-padding-bottom};\n box-shadow: #{$layer-shadow-medium};\n display: inline-block;\n border-radius: #{$btn-border-radius};\n line-height: #{$btn-line-height};\n font-weight: 500;\n cursor: pointer;\n background: rgba(0, 0, 0, 0.02);\n\n @media print {\n display: none;\n }\n\n &:focus,\n &.button--focus {\n outline: none;\n box-shadow: #{$control-focus-style};\n }\n\n nano-icon {\n margin-inline-start: 0.5rem;\n margin-inline-end: 0;\n font-size: #{$btn-icon-size};\n vertical-align: middle;\n margin-block-start: -0.188rem;\n display: inline-block;\n }\n\n &.button--icon-start nano-icon {\n margin-inline-start: 0;\n margin-inline-end: 0.5rem;\n }\n\n &:hover:not(&--disabled) {\n box-shadow: #{$layer-shadow-large};\n }\n\n &:active:not(.button--disabled):not(:disabled) {\n box-shadow: none;\n }\n\n &--disabled,\n &:disabled {\n opacity: 0.6;\n\n &:hover {\n cursor: default;\n }\n }\n}\n","@use 'sass:map';\n@use 'sass:list';\n\n@import '../utilities/globals';\n@import 'helvetica-now';\n@import 'colours';\n@import 'typography';\n@import 'buttons';\n@import 'form';\n\n@each $color-name, $value in $themes {\n .nano-color-#{$color-name} {\n @include generate-color($color-name);\n }\n}\n\n:root {\n --nano-base-font-size: 16px;\n\n @include media-breakpoint-down('sm') {\n --nano-base-font-size: 14px;\n }\n\n --nano-padding: 1rem;\n --nano-font-family:\n 'HelveticaNow',\n 'Helvetica Neue',\n helvetica,\n arial,\n 'Lucida Grande',\n sans-serif;\n\n @each $key, $value in $colors {\n #{'--nano-color-' + $key}: #{$value};\n // nice!\n #{'--nano-color-' + $key + '-rgb'}: #{color-to-rgb-list($value)};\n }\n}\n\nbody {\n background-color: $background-color;\n}\n\nhr,\n.horizontal-rule,\n.content-divider {\n display: block;\n block-size: 1px;\n border: 0;\n background-color: rgba(map.get($colors, palegrey), 0.5);\n margin-block: 0.5em;\n margin-inline: 0;\n padding: 0;\n}\n\narea[href]:not([tabindex='-1']),\niframe:not([tabindex='-1']),\n[contentEditable='true']:not([tabindex='-1']) {\n &:focus {\n outline: none;\n box-shadow: $control-focus-style;\n border-radius: 3px;\n }\n}\n","@use 'sass:math';\n\n@import 'mixins';\n\n$dark-text-default: #000 !default;\n$light-text-default: #fff !default;\n\n@function current-color($variation, $alpha: null) {\n @if $alpha==null {\n @return var(--nano-color-#{$variation});\n }\n\n @else {\n @return rgba(var(--nano-color-#{$variation}-rgb), #{$alpha});\n }\n}\n\n// Mixes a color with black to create its shade.\n// --------------------------------------------------------------------------------------------\n@function get-color-shade($color) {\n @return mix(#000, $color, 15%);\n}\n\n// Mixes a color with white to create its tint.\n// --------------------------------------------------------------------------------------------\n@function get-color-tint($color) {\n @return mix(#fff, $color, 15%);\n}\n\n// Converts a color to a comma separated hsl.\n// --------------------------------------------------------------------------------------------\n@function color-to-hsl-list($color) {\n @return #{hue($color)}, #{saturation($color)}, #{lightness($color)};\n}\n\n// Converts a color to a comma separated rgb.\n// --------------------------------------------------------------------------------------------\n@function color-to-rgb-list($color) {\n @return #{red($color)}, #{green($color)}, #{blue($color)};\n}\n\n// Calculeate brightness of a given color.\n@function brightness($color) {\n @return math.div((red($color) * 0.299) + (green($color) * 0.587) + (blue($color) * 0.114), 255) * 100%;\n}\n\n// Compares contrast of a given color to the light/dark arguments and returns whichever is most \"contrasty\"\n@function color-contrast(\n $color,\n $dark: $dark-text-default,\n $light: $light-text-default\n) {\n @if $color==null {\n @return null;\n }\n\n @else {\n $color-brightness: brightness($color);\n $light-text-brightness: brightness($light);\n $dark-text-brightness: brightness($dark);\n\n @return if(\n abs($color-brightness - $light-text-brightness) >\n abs($color-brightness - $dark-text-brightness),\n $light,\n $dark\n );\n }\n}\n\n@function nano-color($name, $variation, $alpha: null, $rgb: null) {\n $values: map-get($themes, $name);\n $value: map-get($values, $variation);\n $variable: --nano-color-#{$name}-#{$variation};\n\n @if ($variation==base) {\n $variable: --nano-color-#{$name};\n }\n\n @if ($alpha) {\n $value: color-to-rgb-list($value);\n\n @return rgba(var(#{$variable}-rgb, $value), $alpha);\n }\n\n @if ($rgb) {\n $value: color-to-rgb-list($value);\n $variable: #{$variable}-rgb;\n }\n\n @return var(#{$variable}, $value);\n}\n\n@mixin generate-color($color-name, $important: '') {\n $value: map-get($themes, $color-name);\n\n $base: map-get($value, base);\n $contrast: map-get($value, contrast);\n $shade: map-get($value, shade);\n $tint: map-get($value, tint);\n\n --nano-color-base: var(--nano-color-#{$color-name}, #{$base}) #{$important};\n --nano-color-base-rgb:\n var(\n --nano-color-#{$color-name}-rgb,\n #{color-to-rgb-list($base)}\n )\n #{$important};\n --nano-color-contrast:\n var(--nano-color-#{$color-name}-contrast, #{$contrast})\n #{$important};\n --nano-color-contrast-rgb:\n var(\n --nano-color-#{$color-name}-contrast-rgb,\n #{color-to-rgb-list($contrast)}\n )\n #{$important};\n --nano-color-shade: var(--nano-color-#{$color-name}-shade, #{$shade}) #{$important};\n --nano-color-tint: var(--nano-color-#{$color-name}-tint, #{$tint}) #{$important};\n --nano-color-tint-rgb:\n var(\n --nano-color-#{$color-name}-tint-rgb,\n #{color-to-rgb-list($tint)}\n )\n #{$important};\n}\n","@use 'sass:map';\n@use 'sass:list';\n\n@import 'colours';\n\n// Defaults\n\n$df-input-padding-top: 8px;\n$df-input-padding-bottom: 6px;\n$df-input-padding-start: 8px;\n$df-input-padding-end: 8px;\n\n$df-input-background-color: map.get($colors, white);\n$df-input-background-color--invalid: white;\n\n$df-input-text-color: $text-color-value;\n$df-input-font-size: 0.87em;\n\n$df-input-border-width: 1px;\n$df-input-border-style: solid;\n$df-input-border-radius: 0;\n\n$df-input-border-color: map.get($colors, lightgrey);\n$df-input-border--focus-color: map.get($colors, lightblue);\n$df-input-border--invalid-color: map.get($colors, lightgrey);\n$df-input-border--invalid-focus-color: map.get($colors, red);\n\n$df-clear-btn-color: rgba(0, 0, 0, 0.3);\n$df-clear-btn-color--invalid: lighten(map.get($colors, red), 30%);\n\n$df-label-color: 'currentColor';\n$df-label-font-size: 1em;\n\n$df-input-help-font-size: 0.75em;\n$df-input-help-color: darken(map.get($colors, mediumgrey), 3%);\n\n$df-input-tag-bg: color-to-rgb-list(#badcf0);\n$df-input-tag-color: #455556;\n$df-input-tag-border-color: #badcf0;\n\n// Setup global / theme css variables with default fallbacks\n\n// Placeholders\n$input-placeholder-color: var(--nano-input-placeholder-color, initial);\n$input-placeholder-style: var(--nano-input-placeholder-style, initial);\n$input-placeholder-weight: var(--nano-input-placeholder-weight, initial);\n$input-placeholder-opacity: var(--nano-input-placeholder-opacity, 0.5);\n\n// Space around labels, help, errors and inside inputs\n$input-padding-bottom: var(\n --nano-input-padding-bottom,\n var(--nano-input-padding, $df-input-padding-bottom)\n);\n$input-padding-start: var(\n --nano-input-padding-start,\n var(--nano-input-padding, $df-input-padding-start)\n);\n$input-padding-end: var(\n --nano-input-padding-end,\n var(--nano-input-padding, $df-input-padding-end)\n);\n$input-padding-top: var(\n --nano-input-padding-top,\n var(--nano-input-padding, $df-input-padding-top)\n);\n\n// Input background\n$input-background-color: var(\n --nano-input-background-color,\n $df-input-background-color\n);\n$input-background-color--invalid: var(\n --nano-input-background-color,\n $df-input-background-color--invalid\n);\n\n// Input text\n$input-text-color: var(--nano-input-text-color, $df-input-text-color);\n$input-font-size: var(--nano-input-font-size, $df-input-font-size);\n\n// Input border\n$input-border-width: var(--nano-input-border-width, $df-input-border-width);\n$input-border-color: var(--nano-input-border-color, $df-input-border-color);\n$input-border-style: var(--nano-input-border-style, $df-input-border-style);\n$input-border-radius: var(--nano-input-border-radius, $df-input-border-radius);\n\n// Input border state variants\n$input-border--focus-color: var(\n --nano-input-border-color--focus,\n $df-input-border--focus-color\n);\n$input-border--invalid-color: var(\n --nano-input-border-color--invalid,\n $df-input-border--invalid-color\n);\n$input-border--invalid-focus-color: var(\n --nano-input-border-color--invalid,\n $df-input-border--invalid-focus-color\n);\n\n// Clear button\n$clear-btn-color: var(--nano-clear-btn-color, $df-clear-btn-color);\n$clear-btn-color--invalid: var(\n --nano-clear-btn-color--invalid,\n $df-clear-btn-color--invalid\n);\n\n// Label\n$label-color: var(--nano-input-label-color, $df-label-color);\n$label-color-invalid: var(--nano-input-label-color-invalid, $df-label-color);\n$label-font-size: var(--nano-input-label-color, $df-label-font-size);\n\n// Focus shadow / outline\n$control-focus-color: var(\n --nano-control-focus-color,\n rgba(map.get($colors, lightblue), 0.8)\n);\n$control-focus-size: 0 0 0 0.1875rem;\n$control-focus-style: var(\n --nano-control-focus-shadow,\n #{$control-focus-size + ' ' $control-focus-color}\n);\n$control-invalid-style: var(\n --nano-control-focus-shadow,\n #{$control-focus-size + ' ' $df-input-border--invalid-color}\n);\n\n// Helper / Error text\n$input-help-font-size: var(\n --nano-input-help-font-size,\n $df-input-help-font-size\n);\n$input-help-color: var(--nano-input-help-color, $df-input-help-color);\n\n// General button\n$button-bg-color: var(--nano-button-color, #{map.get($colors, celsius)});\n\n// Tags / Multi value\n$input-tag-bg: var(--nano-input-tag-bg, $df-input-tag-bg);\n$input-tag-color: var(--nano-input-tag-color, $df-input-tag-color);\n$input-tag-border-color: var(\n --nano-input-tag-color,\n $df-input-tag-border-color\n);\n\n// Select\n$select-opt-focus: var(--nano-select-opt-bg, darken(map.get($colors, blue--faded), 5%));\n$select-opt-selected: var(--nano-select-opt-bg, map.get($colors, blue--faded));\n"]}
1
+ {"version":3,"sourceRoot":"","sources":["../src/global/style/base/display.scss","../src/global/style/utilities/_mixins.scss","../src/global/style/base/normalize.scss","../src/global/style/base/structure.scss","../src/global/style/base/padding.scss","../src/global/style/nano-theme/_base.scss","../src/global/style/nano-theme/_helvetica-now.scss","../src/global/style/nano-theme/typography.scss","../src/global/style/nano-theme/_colours.scss","../src/global/style/nano-theme/buttons.scss","../src/global/style/utilities/css-patterns/_unstyled_input.scss","../src/global/style/utilities/css-patterns/_unstyled_anchor.scss","../src/global/style/nano-theme/_button.scss","../src/global/style/nano-theme/theme.scss","../src/global/style/utilities/_colours.scss","../src/global/style/nano-theme/_form.scss"],"names":[],"mappings":"AAMA,WACE,wBAUE,cACE,wBAOF,gBACE,wBCqFF,yBD9FA,iBACE,yBC8IF,yBDvIA,mBACE,yBCqFF,yBD9FA,iBACE,yBC8IF,yBDvIA,mBACE,yBCqFF,yBD9FA,iBACE,yBC8IF,yBDvIA,mBACE,yBCqFF,0BD9FA,iBACE,yBC8IF,0BDvIA,mBACE,yBEpBN,4BAIE,wBAKF,sBACE,aACA,aAOF,SAEE,iBAOF,IACE,qBACA,SAIF,eACE,gBAOF,OACE,iBACA,mBAGF,GACE,eACA,eACA,uBAIF,IACE,cAIF,kBAIE,sBACA,cAeF,4BAIE,oBACA,mBAGF,SACE,cACA,gBACA,aACA,cAGF,sBACE,yBAGF,2BAIE,SACA,aACA,cAQF,6DAGE,eACA,0BAIF,qNAkBE,0BAGF,6BAEE,oBAGF,OACE,SACA,gBACA,oBACA,mBACA,qBACA,cACA,oBACA,eACA,0BAGF,WACE,eAIF,kDAGE,eAIF,iDAEE,UACA,SAMF,uCAEE,UACA,sBAMF,4FAEE,gBAMF,+FAEE,wBAOF,MACE,yBACA,iBAGF,MAEE,UCrNF,EACE,sBACA,0CACA,0CACA,2BAGF,6BAIE,iDAGF,qBAGE,sBACA,oBAGF,KACE,iBACA,sBAGF,KF8BE,kCACA,mCE5BA,SACA,UACA,kCCxBF,iBACE,mBACA,iBACA,iBACA,oBAEA,UAGF,cACE,kDACA,gDACA,gDACA,mDAEA,QCrBe,iCDwBjB,kBACE,gDAEA,oBC3Be,iCD8BjB,oBACE,kDAEA,qBCjCe,iCDoCjB,kBACE,gDAEA,mBCvCe,iCD0CjB,qBACE,mDAEA,kBC7Ce,iCDgDjB,uBACE,gDACA,mDAEA,cCpDe,iCDuDjB,yBACE,kDACA,gDAEA,eC3De,iCDiEjB,gBACE,kBACA,gBACA,gBACA,mBAEA,SAGF,aACE,iDACA,+CACA,+CACA,kDAEA,OChFe,iCDmFjB,iBACE,+CAEA,mBCtFe,iCDyFjB,mBACE,iDAEA,oBC5Fe,iCD+FjB,iBACE,+CAEA,kBClGe,iCDqGjB,oBACE,kDAEA,iBCxGe,iCD2GjB,sBACE,+CACA,kDAEA,aC/Ge,iCDkHjB,wBACE,iDACA,+CAEA,cCtHe,iCCiBjB,WACE,2BACA,IACE,8GAEF,gBACA,kBACA,uBACA,kBAGF,WACE,2BACA,IACE,8GAEF,gBACA,kBACA,uBACA,kBAGF,WACE,2BACA,IACE,8GAEF,gBACA,kBACA,uBACA,kBAGF,WACE,2BACA,IACE,8GAEF,gBACA,kBACA,uBACA,kBAGF,WACE,2BACA,IACE,8GAEF,gBACA,kBACA,uBACA,kBAGF,WACE,2BACA,IACE,8GAEF,gBACA,kBACA,uBACA,kBAKF,WACE,2BACA,IACE,gHAEF,gBACA,kBACA,oBACA,kBAGF,WACE,2BACA,IACE,gHAEF,gBACA,kBACA,oBACA,kBAGF,WACE,2BACA,IACE,gHAEF,gBACA,kBACA,oBACA,kBAGF,WACE,2BACA,IACE,gHAEF,gBACA,kBACA,oBACA,kBAGF,WACE,2BACA,IACE,gHAEF,gBACA,kBACA,oBACA,kBAGF,WACE,2BACA,IACE,gHAEF,gBACA,kBACA,oBACA,kBAKF,WACE,2BACA,IACE,gHAEF,gBACA,kBACA,sBACA,kBAGF,WACE,2BACA,IACE,gHAEF,gBACA,kBACA,sBACA,kBAGF,WACE,2BACA,IACE,gHAEF,gBACA,kBACA,sBACA,kBAGF,WACE,2BACA,IACE,gHAEF,gBACA,kBACA,sBACA,kBAGF,WACE,2BACA,IACE,gHAEF,gBACA,kBACA,sBACA,kBC3LF,KACE,oCACA,yCACA,MCsGW,gCDrGX,qCAGF,EACE,yCACA,qBAEA,QACE,0BAIJ,kBAME,uBACA,YAvCqB,IAwCrB,YAtCqB,IAyCvB,GACE,wBACA,UAzCa,KA4Cf,GACE,wBACA,UA5Ca,KA+Cf,GACE,UA9Ca,KAiDf,GACE,UAhDa,KAmDf,GACE,UAlDa,KAqDf,GACE,UApDa,KAuDf,MACE,cAGF,QAEE,kBACA,cACA,cACA,wBAGF,IACE,yBAGF,IACE,wBAGF,EACE,mBACA,gBACA,oBAEA,aACE,kBAIJ,SACE,gBACA,gBACA,sBACA,gBAEA,oBACE,cAGF,aAVF,SAWI,eAGF,cACE,iBNVA,yBMSF,cAII,mBAIJ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","file":"nanopore.css","sourcesContent":["@import '../utilities/globals';\n\n// Display\n// --------------------------------------------------\n// Modifies display of a particular element based on the given classes\n\n.nano-hide {\n display: none !important;\n}\n\n// Adds hidden classes\n@each $breakpoint in map-keys($screen-breakpoints) {\n $infix: breakpoint-infix($breakpoint, $screen-breakpoints);\n\n @include media-breakpoint-up($breakpoint, $screen-breakpoints) {\n // Provide `ion-hide-{bp}-up` classes for hiding the element based\n // on the breakpoint\n .nano-hide#{$infix}-up {\n display: none !important;\n }\n }\n\n @include media-breakpoint-down($breakpoint, $screen-breakpoints) {\n // Provide `ion-hide-{bp}-down` classes for hiding the element based\n // on the breakpoint\n .nano-hide#{$infix}-down {\n display: none !important;\n }\n }\n}\n","@mixin input-cover() {\n inset-block: 0;\n inset-inline: auto;\n margin: 0;\n inline-size: 100%;\n block-size: 100%;\n border: 0;\n background: transparent;\n cursor: pointer;\n appearance: none;\n outline: none;\n\n &::-moz-focus-inner {\n border: 0;\n }\n}\n\n@mixin text-inherit() {\n font-family: inherit;\n font-size: inherit;\n font-stretch: inherit;\n font-style: inherit;\n font-weight: inherit;\n letter-spacing: inherit;\n text-decoration: inherit;\n text-overflow: inherit;\n text-transform: inherit;\n text-align: inherit;\n white-space: inherit;\n color: inherit;\n}\n\n// A transition-friendly alternative to `display: none` for hiding content\n@mixin hidden {\n position: absolute;\n inline-size: 1px;\n block-size: 1px;\n clip: rect(0 0 0 0);\n clip-path: inset(50%);\n overflow: hidden;\n pointer-events: none;\n visibility: hidden; // prevent tab stops and screen reader discovery\n}\n\n// Hides content visually while still making it available to screen readers\n@mixin visually-hide {\n clip: rect(1px, 1px, 1px, 1px);\n clip-path: inset(50%);\n block-size: 1px;\n inline-size: 1px;\n margin: -1px;\n overflow: hidden;\n padding: 0;\n position: absolute;\n}\n\n// Font smoothing\n// --------------------------------------------------\n\n@mixin font-smoothing() {\n -moz-osx-font-smoothing: grayscale;\n -webkit-font-smoothing: antialiased;\n}\n\n// Get the key from a map based on the index\n@function index-to-key($map, $index) {\n $keys: map-keys($map);\n\n @return nth($keys, $index);\n}\n\n// Breakpoint Mixins\n// ---------------------------------------------------------------------------------\n\n// Breakpoint viewport sizes and media queries.\n//\n// Breakpoints are defined as a map of (name: minimum width), order from small to large:\n//\n// (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px)\n//\n// The map defined in the `$screen-breakpoints` global variable is used as the `$breakpoints` argument by default.\n\n// ---------------------------------------------------------------------------------\n\n// Minimum breakpoint width. Null for the smallest (first) breakpoint.\n//\n// >> breakpoint-min(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 576px\n@function breakpoint-min($name, $breakpoints: $screen-breakpoints) {\n $min: map-get($breakpoints, $name);\n\n @return if($name !=index-to-key($breakpoints, 1), $min, null);\n}\n\n// Returns a blank string if smallest breakpoint, otherwise returns the name with a dash infront.\n// Useful for making responsive utilities.\n//\n// >> breakpoint-infix(xs, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"\" (Returns a blank string)\n// >> breakpoint-infix(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// \"-sm\"\n@function breakpoint-infix($name, $breakpoints: $screen-breakpoints) {\n @return if(breakpoint-min($name, $breakpoints) ==null, '', '-#{$name}');\n}\n\n// Media of at least the minimum breakpoint width. No query for the smallest breakpoint.\n// Makes the @content apply to the given breakpoint and wider.\n@mixin media-breakpoint-up($name, $breakpoints: $screen-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n\n @if $min {\n @media (min-width: $min) {\n @content;\n }\n }\n\n @else {\n @content;\n }\n}\n\n// Name of the next breakpoint, or null for the last breakpoint.\n//\n// >> breakpoint-next(sm)\n// md\n// >> breakpoint-next(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// md\n// >> breakpoint-next(sm, $breakpoint-names: (xs sm md lg xl))\n// md\n@function breakpoint-next(\n $name,\n $breakpoints: $screen-breakpoints,\n $breakpoint-names: map-keys($breakpoints)\n) {\n $n: index($breakpoint-names, $name);\n\n @return if(\n $n < length($breakpoint-names),\n nth($breakpoint-names, $n + 1),\n null\n );\n}\n\n// Maximum breakpoint width. Null for the smallest (first) breakpoint.\n// The maximum value is calculated as the minimum of the current one.\n//\n// >> breakpoint-max(sm, (xs: 0, sm: 576px, md: 768px, lg: 992px, xl: 1200px))\n// 576px\n@function breakpoint-max($name, $breakpoints: $screen-breakpoints) {\n $min: breakpoint-min($name, $breakpoints);\n\n @return if($min, breakpoint-min($name, $breakpoints), null);\n}\n\n// Media of at most the maximum breakpoint width. No query for the largest breakpoint.\n// Makes the @content apply to the given breakpoint and narrower.\n@mixin media-breakpoint-down($name, $breakpoints: $screen-breakpoints) {\n $max: breakpoint-max($name, $breakpoints);\n\n @if $max {\n @media (max-width: $max) {\n @content;\n }\n }\n\n @else {\n @content;\n }\n}\n\n// Text Direction - ltr / rtl\n//\n// CSS defaults to use the ltr css, and adds [dir=rtl] selectors\n// to override ltr defaults.\n// ----------------------------------------------------------\n\n@mixin multi-dir() {\n @content;\n\n // $root: #{&};\n // @at-root [dir] {\n // #{$root} {\n // @content;\n // }\n // }\n}\n\n@mixin host($hostCtx: null) {\n $root: #{&};\n\n @if $hostCtx {\n @at-root :host(#{$hostCtx}) {\n #{$root} {\n @content;\n }\n }\n }\n\n @else {\n @at-root :host {\n #{$root} {\n @content;\n }\n }\n }\n}\n\n@mixin rtl-host($hostCtx: '') {\n $root: #{&};\n\n @at-root :host(#{$hostCtx}[dir='rtl']) {\n #{$root} {\n @content;\n }\n }\n}\n\n@mixin ltr-host($hostCtx: '') {\n $root: #{&};\n\n @at-root :host(#{$hostCtx}:not([dir='rtl'])) {\n #{$root} {\n @content;\n }\n }\n}\n\n@mixin rtl() {\n $root: #{&};\n\n @at-root #{$root + '[dir=rtl]'} {\n @content;\n }\n}\n\n@mixin ltr() {\n @content;\n}\n\n// SVG Background Image Mixin\n// @param {string} $svg\n// ----------------------------------------------------------\n@mixin svg-background-image($svg, $flip-rtl: false) {\n $url: url-encode($svg);\n $viewBox: str-split(str-extract($svg, \"viewBox='\", \"'\"), ' ');\n\n @if $flip-rtl !=true or $viewBox==null {\n @include multi-dir() {\n background-image: url('data:image/svg+xml;charset=utf-8,#{$url}');\n }\n }\n\n @else {\n $transform: \"transform='translate(#{nth($viewBox, 3)}, 0) scale(-1, 1)'\";\n $flipped-url: $svg;\n $flipped-url: str-replace($flipped-url, '<path', '<path #{$transform}');\n $flipped-url: str-replace($flipped-url, '<line', '<line #{$transform}');\n $flipped-url: str-replace(\n $flipped-url,\n '<polygon',\n '<polygon #{$transform}'\n );\n $flipped-url: url-encode($flipped-url);\n\n @include ltr() {\n background-image: url('data:image/svg+xml;charset=utf-8,#{$url}');\n }\n\n @include rtl() {\n background-image: url('data:image/svg+xml;charset=utf-8,#{$flipped-url}');\n }\n }\n}\n\n@mixin background-position(\n $horizontal,\n $horizontal-amount: null,\n $vertical: null,\n $vertical-amount: null\n) {\n @if $horizontal==start or $horizontal==end {\n $horizontal-ltr: null;\n $horizontal-rtl: null;\n\n @if $horizontal==start {\n $horizontal-ltr: left;\n $horizontal-rtl: right;\n }\n\n @else {\n $horizontal-ltr: right;\n $horizontal-rtl: left;\n }\n\n @include ltr() {\n background-position:\n $horizontal-ltr $horizontal-amount $vertical\n $vertical-amount;\n }\n\n @include rtl() {\n background-position:\n $horizontal-rtl $horizontal-amount $vertical\n $vertical-amount;\n }\n }\n\n @else {\n @include multi-dir() {\n background-position:\n $horizontal $horizontal-amount $vertical\n $vertical-amount;\n }\n }\n}\n\n@mixin transform-origin($x-axis, $y-axis: null) {\n @if $x-axis==start {\n @include ltr() {\n transform-origin: left $y-axis;\n }\n\n @include rtl() {\n transform-origin: right $y-axis;\n }\n }\n\n @else if $x-axis==end {\n @include ltr() {\n transform-origin: right $y-axis;\n }\n\n @include rtl() {\n transform-origin: left $y-axis;\n }\n }\n\n @else if $x-axis==left or $x-axis==right {\n @include multi-dir() {\n transform-origin: $x-axis $y-axis;\n }\n }\n\n @else {\n @include ltr() {\n transform-origin: $x-axis $y-axis;\n }\n\n @include rtl() {\n transform-origin: calc(100% - #{$x-axis}) $y-axis;\n }\n }\n}\n\n// Add transform for all directions\n// @param {string} $transforms - comma separated list of transforms\n@mixin transform($transforms...) {\n $extra: null;\n\n $x: null;\n $ltr-translate: null;\n $rtl-translate: null;\n\n @each $transform in $transforms {\n @if (str-index($transform, translate3d)) {\n $transform: str-replace($transform, 'translate3d(');\n $transform: str-replace($transform, ')');\n\n $coordinates: str-split($transform, ',');\n\n $x: nth($coordinates, 1);\n $y: nth($coordinates, 2);\n $z: nth($coordinates, 3);\n\n $ltr-translate: translate3d($x, $y, $z);\n $rtl-translate: translate3d(calc(-1 * #{$x}), $y, $z);\n }\n\n @else {\n @if $extra==null {\n $extra: $transform;\n }\n\n @else {\n $extra: $extra $transform;\n }\n }\n }\n\n @if $x== '0' or $x==null {\n @include multi-dir() {\n transform: $ltr-translate $extra;\n }\n }\n\n @else {\n @include ltr() {\n transform: $ltr-translate $extra;\n }\n\n @include rtl() {\n transform: $rtl-translate $extra;\n }\n }\n}\n\n@mixin hide-scrollbar() {\n scrollbar-width: none;\n -ms-overflow-style: none;\n\n &::-webkit-scrollbar {\n inline-size: 0;\n block-size: 0;\n }\n}\n","// ! normalize.css v3.0.2 | MIT License | github.com/necolas/normalize.css\n\n// HTML5 display definitions\n// ==========================================================================\n\n// 1. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.\naudio,\ncanvas,\nprogress,\nvideo {\n vertical-align: baseline; // 1\n}\n\n// Prevent modern browsers from displaying `audio` without controls.\n// Remove excess height in iOS 5 devices.\naudio:not([controls]) {\n display: none;\n block-size: 0;\n}\n\n// Text-level semantics\n// ==========================================================================\n\n// Address style set to `bolder` in Firefox 4+, Safari, and Chrome.\nb,\nstrong {\n font-weight: bold;\n}\n\n// Embedded content\n// ==========================================================================\n\n// Remove border when inside `a` element in IE 8/9/10.\nimg {\n max-inline-size: 100%;\n border: 0;\n}\n\n// Correct overflow not hidden in IE 9/10/11.\nsvg:not(:root) {\n overflow: hidden;\n}\n\n// Grouping content\n// ==========================================================================\n\n// Address margin not present in IE 8/9 and Safari.\nfigure {\n margin-block: 1em;\n margin-inline: 40px;\n}\n\nhr {\n block-size: 1px;\n border-width: 0;\n box-sizing: content-box;\n}\n\n// Contain overflow in all browsers.\npre {\n overflow: auto;\n}\n\n// Address odd `em`-unit font size rendering in all browsers.\ncode,\nkbd,\npre,\nsamp {\n font-family: monospace;\n font-size: 1em;\n}\n\n// Forms\n// ==========================================================================\n\n// Known limitation: by default, Chrome and Safari on OS X allow very limited\n// styling of `select`, unless a `border` property is set.\n\n// 1. Correct color not being inherited.\n// Known issue: affects color of disabled elements.\n// 2. Correct font properties not being inherited.\n// 3. Address margins set differently in Firefox 4+, Safari, and Chrome.\n//\n\nlabel,\ninput,\nselect,\ntextarea {\n font-family: inherit;\n line-height: normal;\n}\n\ntextarea {\n overflow: auto;\n block-size: auto;\n font: inherit;\n color: inherit;\n}\n\ntextarea::placeholder {\n padding-inline-start: 2px;\n}\n\nform,\ninput,\noptgroup,\nselect {\n margin: 0; // 3\n font: inherit; // 2\n color: inherit; // 1\n}\n\n// 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`\n// and `video` controls.\n// 2. Correct inability to style clickable `input` types in iOS.\n// 3. Improve usability and consistency of cursor style between image-type\n// `input` and others.\nhtml input[type='button'],\ninput[type='reset'],\ninput[type='submit'] {\n cursor: pointer; // 3\n -webkit-appearance: button; // 2\n}\n\n// remove 300ms delay\na,\na div,\na span,\na ion-icon,\na ion-label,\nbutton,\nbutton div,\nbutton span,\nbutton ion-icon,\nbutton ion-label,\n.ion-tappable,\n[tappable],\n[tappable] div,\n[tappable] span,\n[tappable] ion-icon,\n[tappable] ion-label,\ninput,\ntextarea {\n touch-action: manipulation;\n}\n\na ion-label,\nbutton ion-label {\n pointer-events: none;\n}\n\nbutton {\n border: 0;\n border-radius: 0;\n font-family: inherit;\n font-style: inherit;\n font-variant: inherit;\n line-height: 1;\n text-transform: none;\n cursor: pointer;\n -webkit-appearance: button;\n}\n\n[tappable] {\n cursor: pointer;\n}\n\n// Re-set default cursor for disabled elements.\na[disabled],\nbutton[disabled],\nhtml input[disabled] {\n cursor: default;\n}\n\n// Remove inner padding and border in Firefox 4+.\nbutton::-moz-focus-inner,\ninput::-moz-focus-inner {\n padding: 0;\n border: 0;\n}\n\n// Firefox's implementation doesn't respect box-sizing, padding, or width.\n// 1. Address box sizing set to `content-box` in IE 8/9/10.\n// 2. Remove excess padding in IE 8/9/10.\ninput[type='checkbox'],\ninput[type='radio'] {\n padding: 0; // 2\n box-sizing: border-box; // 1\n}\n\n// Fix the cursor style for Chrome's increment/decrement buttons. For certain\n// `font-size` values of the `input`, it causes the cursor style of the\n// decrement button to change from `default` to `text`.\ninput[type='number']::-webkit-inner-spin-button,\ninput[type='number']::-webkit-outer-spin-button {\n block-size: auto;\n}\n\n// Remove inner padding and search cancel button in Safari and Chrome on OS X.\n// Safari (but not Chrome) clips the cancel button when the search input has\n// padding (and `textfield` appearance).\ninput[type='search']::-webkit-search-cancel-button,\ninput[type='search']::-webkit-search-decoration {\n -webkit-appearance: none;\n}\n\n// Tables\n// ==========================================================================//\n\n// Remove most spacing between table cells.\ntable {\n border-collapse: collapse;\n border-spacing: 0;\n}\n\ntd,\nth {\n padding: 0;\n}\n","// Structure\n// --------------------------------------------------\n// Adds structural css to the native html elements\n\n* {\n box-sizing: border-box;\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n -webkit-tap-highlight-color: transparent;\n -webkit-touch-callout: none;\n}\n\nbutton,\ninput,\nselect,\ntextarea {\n -webkit-tap-highlight-color: rgba(201, 224, 253, 0.8);\n}\n\n*,\n*::before,\n*::after {\n box-sizing: border-box;\n font-family: inherit;\n}\n\nhtml {\n inline-size: 100%;\n text-size-adjust: 100%;\n}\n\nbody {\n @include font-smoothing();\n\n margin: 0;\n padding: 0;\n text-rendering: optimizeLegibility;\n}\n","@import '../nano-theme/base';\n@import '../utilities/globals';\n\n// Element Space\n// --------------------------------------------------\n// Creates padding and margin attributes to be used on\n// any element\n\n// Padding\n// --------------------------------------------------\n\n.nano-no-padding {\n --padding-start: 0;\n --padding-end: 0;\n --padding-top: 0;\n --padding-bottom: 0;\n\n padding: 0;\n}\n\n.nano-padding {\n --padding-start: #{$spacing-medium};\n --padding-end: #{$spacing-medium};\n --padding-top: #{$spacing-medium};\n --padding-bottom: #{$spacing-medium};\n\n padding: $spacing-medium;\n}\n\n.nano-padding-top {\n --padding-top: #{$spacing-medium};\n\n padding-block-start: $spacing-medium;\n}\n\n.nano-padding-start {\n --padding-start: #{$spacing-medium};\n\n padding-inline-start: $spacing-medium;\n}\n\n.nano-padding-end {\n --padding-end: #{$spacing-medium};\n\n padding-inline-end: $spacing-medium;\n}\n\n.nano-padding-bottom {\n --padding-bottom: #{$spacing-medium};\n\n padding-block-end: $spacing-medium;\n}\n\n.nano-padding-vertical {\n --padding-top: #{$spacing-medium};\n --padding-bottom: #{$spacing-medium};\n\n padding-block: $spacing-medium;\n}\n\n.nano-padding-horizontal {\n --padding-start: #{$spacing-medium};\n --padding-end: #{$spacing-medium};\n\n padding-inline: $spacing-medium;\n}\n\n// Margin\n// --------------------------------------------------\n\n.nano-no-margin {\n --margin-start: 0;\n --margin-end: 0;\n --margin-top: 0;\n --margin-bottom: 0;\n\n margin: 0;\n}\n\n.nano-margin {\n --margin-start: #{$spacing-medium};\n --margin-end: #{$spacing-medium};\n --margin-top: #{$spacing-medium};\n --margin-bottom: #{$spacing-medium};\n\n margin: $spacing-medium;\n}\n\n.nano-margin-top {\n --margin-top: #{$spacing-medium};\n\n margin-block-start: $spacing-medium;\n}\n\n.nano-margin-start {\n --margin-start: #{$spacing-medium};\n\n margin-inline-start: $spacing-medium;\n}\n\n.nano-margin-end {\n --margin-end: #{$spacing-medium};\n\n margin-inline-end: $spacing-medium;\n}\n\n.nano-margin-bottom {\n --margin-bottom: #{$spacing-medium};\n\n margin-block-end: $spacing-medium;\n}\n\n.nano-margin-vertical {\n --margin-top: #{$spacing-medium};\n --margin-bottom: #{$spacing-medium};\n\n margin-block: $spacing-medium;\n}\n\n.nano-margin-horizontal {\n --margin-start: #{$spacing-medium};\n --margin-end: #{$spacing-medium};\n\n margin-inline: $spacing-medium;\n}\n","// Setup global / theme css variables with default fallbacks\n\n// Padding, Margin\n$spacing-xsmall: var(--nano-spacing-xsmall, 4px);\n$spacing-small: var(--nano-spacing-small, 8px);\n$spacing-medium: var(--nano-spacing-medium, 16px);\n$spacing-large: var(--nano-spacing-large, 20px);\n$spacing-xlarge: var(--nano-spacing-xlarge, 24px);\n\n// Text\n$fontsize-xsmall: var(--nano-fontsize-xsmall, 0.625rem);\n$fontsize-small: var(--nano-fontsize-small, 0.875rem);\n$fontsize-medium: var(--nano-fontsize-medium, 1rem);\n$fontsize-large: var(--nano-fontsize-large, 1.25rem);\n$fontsize-xlarge: var(--nano-fontsize-xlarge, 1.5rem);\n\n// Border radius\n$border-radius-small: var(--nano-border-radius-small, 2px);\n$border-radius-medium: var(--nano-border-radius-medium, 4px);\n$border-radius-large: var(--nano-border-radius-large, 8px);\n$border-radius-xlarge: var(--nano-border-radius-xlarge, 16px);\n\n// Transition\n$transition-xslow: var(--nano-transition-x-slow, 1s);\n$transition-slow: var(--nano-transition-slow, 0.7s);\n$transition-medium: var(--nano-transition-medium, 0.5s);\n$transition-fast: var(--nano-transition-fast, 0.3s);\n$transition-xfast: var(--nano-transition-fast, 0.1s);\n","/**\n * @license\n * MyFonts Webfont Build ID 3183969,\n 2016-03-09T09:39:13-0500\n *\n * The fonts listed in this notice are subject to the End User License\n * Agreement(s) entered into by the website owner. All other parties are\n * explicitly restricted from using the Licensed Webfonts(s).\n *\n * You may obtain a valid license at the URLs below.\n *\n *\n * License: http://www.myfonts.com/viewlicense?type=web&buildid=3183969\n * Webfonts copyright: Part of the digitally encoded machine readable outline data for producing the Typefaces provided is copyrighted &#x00A9; 1988 - 2006 Linotype GmbH,\n www.linotype.com. All rights reserved. This software is the property of Linotype GmbH,\n and may not be repro\n *\n * © 2016 MyFonts Inc\n*/\n\n// Helvetica Now Display\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_1_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_1_0.woff') format('woff');\n font-weight: 400;\n font-style: normal;\n font-stretch: condensed;\n font-display: swap;\n}\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_8_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_8_0.woff') format('woff');\n font-weight: 400;\n font-style: italic;\n font-stretch: condensed;\n font-display: swap;\n}\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_5_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_5_0.woff') format('woff');\n font-weight: 600;\n font-style: normal;\n font-stretch: condensed;\n font-display: swap;\n}\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_2_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_2_0.woff') format('woff');\n font-weight: 600;\n font-style: italic;\n font-stretch: condensed;\n font-display: swap;\n}\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_9_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_9_0.woff') format('woff');\n font-weight: 200;\n font-style: normal;\n font-stretch: condensed;\n font-display: swap;\n}\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_A_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_A_0.woff') format('woff');\n font-weight: 200;\n font-style: italic;\n font-stretch: condensed;\n font-display: swap;\n}\n\n// Helvetica Now Text\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_21_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_21_0.woff') format('woff');\n font-weight: 400;\n font-style: normal;\n font-stretch: normal;\n font-display: swap;\n}\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_28_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_28_0.woff') format('woff');\n font-weight: 400;\n font-style: italic;\n font-stretch: normal;\n font-display: swap;\n}\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_25_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_25_0.woff') format('woff');\n font-weight: 600;\n font-style: normal;\n font-stretch: normal;\n font-display: swap;\n}\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_22_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_22_0.woff') format('woff');\n font-weight: 600;\n font-style: italic;\n font-stretch: normal;\n font-display: swap;\n}\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_29_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_29_0.woff') format('woff');\n font-weight: 200;\n font-style: normal;\n font-stretch: normal;\n font-display: swap;\n}\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_2A_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_2A_0.woff') format('woff');\n font-weight: 200;\n font-style: italic;\n font-stretch: normal;\n font-display: swap;\n}\n\n// Helvetica Now Micro\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_15_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_15_0.woff') format('woff');\n font-weight: 400;\n font-style: normal;\n font-stretch: expanded;\n font-display: swap;\n}\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_16_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_16_0.woff') format('woff');\n font-weight: 600;\n font-style: italic;\n font-stretch: expanded;\n font-display: swap;\n}\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_17_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_17_0.woff') format('woff');\n font-weight: 600;\n font-style: normal;\n font-stretch: expanded;\n font-display: swap;\n}\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_1B_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_1B_0.woff') format('woff');\n font-weight: 200;\n font-style: normal;\n font-stretch: expanded;\n font-display: swap;\n}\n\n@font-face {\n font-family: 'HelveticaNow';\n src:\n url('../assets/fonts/3AF163_1C_0.woff2') format('woff2'),\n url('../assets/fonts/3AF163_1C_0.woff') format('woff');\n font-weight: 200;\n font-style: italic;\n font-stretch: expanded;\n font-display: swap;\n}\n","@use 'sass:map';\n@use 'sass:list';\n\n@import '../utilities/globals';\n@import 'colours';\n\n/// @prop - Font weight of all headings\n$headings-font-weight: 600 !default;\n/// @prop - Line height of all headings\n$headings-line-height: 1.2 !default;\n/// @prop - Font size of heading level 1\n$h1-font-size: 28px !default;\n/// @prop - Font size of heading level 2\n$h2-font-size: 24px !default;\n/// @prop - Font size of heading level 3\n$h3-font-size: 22px !default;\n/// @prop - Font size of heading level 4\n$h4-font-size: 20px !default;\n/// @prop - Font size of heading level 5\n$h5-font-size: 18px !default;\n/// @prop - Font size of heading level 6\n$h6-font-size: 16px !default;\n\nhtml {\n font-family: var(--nano-font-family);\n font-weight: var(--nano-font-weight, 500);\n color: $text-color;\n font-size: var(--nano-base-font-size);\n}\n\na {\n color: nano-color(primary, base);\n text-decoration: none;\n\n &:hover {\n text-decoration: underline;\n }\n}\n\nh1,\nh2,\nh3,\nh4,\nh5,\nh6 {\n margin-block: 16px 10px;\n font-weight: $headings-font-weight;\n line-height: $headings-line-height;\n}\n\nh1 {\n margin-block-start: 10px;\n font-size: $h1-font-size;\n}\n\nh2 {\n margin-block-start: 18px;\n font-size: $h2-font-size;\n}\n\nh3 {\n font-size: $h3-font-size;\n}\n\nh4 {\n font-size: $h4-font-size;\n}\n\nh5 {\n font-size: $h5-font-size;\n}\n\nh6 {\n font-size: $h6-font-size;\n}\n\nsmall {\n font-size: 75%;\n}\n\nsub,\nsup {\n position: relative;\n font-size: 75%;\n line-height: 0;\n vertical-align: baseline;\n}\n\nsup {\n inset-block-start: -0.5em;\n}\n\nsub {\n inset-block-end: -0.25em;\n}\n\np {\n font-size: 1.125rem;\n line-height: 1.4;\n margin-block: 0 1rem;\n\n &.supporting {\n font-size: 0.875rem;\n }\n}\n\n.heading {\n font-weight: 500;\n line-height: 1.3;\n margin-block: 0 1.5rem;\n margin-inline: 0;\n\n &__highlight {\n color: map.get($colors, blue);\n }\n\n @media print {\n color: map.get($colors, black);\n }\n\n &--one {\n font-size: 2.5rem;\n\n @include media-breakpoint-up('md') {\n font-size: 3.25rem;\n }\n }\n\n &--two {\n font-size: 1.5rem;\n\n @include media-breakpoint-up('md') {\n font-size: 2rem;\n }\n }\n\n &--three {\n font-size: 1.125rem;\n\n @include media-breakpoint-up('md') {\n font-size: 1.375rem;\n }\n }\n\n &--four {\n font-size: 1.125rem;\n }\n\n &--five {\n font-size: 1rem;\n }\n\n &--light {\n font-weight: 200;\n }\n\n &--upper {\n text-transform: uppercase;\n }\n\n &--meta {\n font-size: 0.875rem;\n text-transform: uppercase;\n letter-spacing: 1.3px;\n font-weight: bold;\n margin-block-end: 1rem;\n }\n}\n","@use 'sass:map';\n@use 'sass:list';\n\n@import '../utilities/colours';\n\n$colors: (\n white: #fff,\n lightblue: #90c6e7,\n blue: darken(#0084a9, 4%),\n darkblue: #0c5a71,\n darkgrey: #455556,\n palegrey: #b5aea7,\n dimgrey: #918b86,\n lightgrey: #e4e6e8,\n mediumgrey: #687576,\n green: #17bb75,\n orange: #f57e20,\n paleyellow: #ede797,\n purple: #a53f97,\n red: #ef4135,\n yellow: #f5cc49,\n background: #f0efed,\n black: #4a4a4a,\n // Bg Colors\n celsius: #f0efed,\n offwhite: #f9f9fb,\n darkblue--faded: #005c75,\n // Faded Colors\n red--faded: #fee8de,\n orange--faded: #feeddb,\n yellow--faded: #fefcf2,\n green--faded: #edf5f2,\n blue--faded: #f2f7f9,\n // Darkened Colours\n blue--darker: #245a6f,\n green--darker: #0b814f,\n red--darker: #be2a20,\n purple--darker: #772c6d,\n orange--darker: #b95e17,\n palegrey--darker: #8c8379,\n lightblue--darker: #548caf,\n);\n\n// Text\n$dark-text-default: map.get($colors, black);\n$light-text-default: map.get($colors, white);\n\n// Theme\n$primary: map.get($colors, blue) !default;\n$secondary: map.get($colors, lightblue--darker) !default;\n$tertiary: map.get($colors, palegrey) !default;\n$success: map.get($colors, green) !default;\n$warning: map.get($colors, orange) !default;\n$danger: map.get($colors, red) !default;\n$light: map.get($colors, blue--faded) !default;\n$medium: map.get($colors, darkblue--faded) !default;\n$dark: map.get($colors, darkgrey) !default;\n\n// Theme css variables and variations\n$themes: (\n primary: (\n base: $primary,\n contrast: color-contrast($primary),\n shade: get-color-shade($primary),\n tint: get-color-tint($primary),\n ),\n secondary: (\n base: $secondary,\n contrast: color-contrast($secondary),\n shade: get-color-shade($secondary),\n tint: get-color-tint($secondary),\n ),\n tertiary: (\n base: $tertiary,\n contrast: color-contrast($tertiary),\n shade: get-color-shade($tertiary),\n tint: get-color-tint($tertiary),\n ),\n success: (\n base: $success,\n contrast: color-contrast($tertiary),\n shade: get-color-shade($success),\n tint: get-color-tint($success),\n ),\n warning: (\n base: $warning,\n contrast: color-contrast($warning),\n shade: get-color-shade($warning),\n tint: get-color-tint($warning),\n ),\n danger: (\n base: $danger,\n contrast: color-contrast($danger),\n shade: get-color-shade($danger),\n tint: get-color-tint($danger),\n ),\n light: (\n base: $light,\n contrast: color-contrast($light),\n shade: get-color-shade($light),\n tint: get-color-tint($light),\n ),\n medium: (\n base: $medium,\n contrast: color-contrast($medium),\n shade: get-color-shade($medium),\n tint: get-color-tint($medium),\n ),\n dark: (\n base: $dark,\n contrast: color-contrast($dark),\n shade: get-color-shade($dark),\n tint: get-color-tint($dark),\n ),\n) !default;\n\n// Default Foreground and Background Colors\n// -------------------------------------------------------------------------------------------\n// Used internally to calculate the default steps\n\n$background-color-value: map.get($colors, background) !default;\n$background-color-rgb-value: color-to-rgb-list(\n $background-color-value\n) !default;\n\n$text-color-value: map.get($colors, black) !default;\n$text-color-rgb-value: color-to-rgb-list($text-color-value) !default;\n\n$text-color: var(--nano-text-color, $text-color-value) !default;\n$text-color-rgb: var(--nano-text-color-rgb, $text-color-rgb-value) !default;\n\n$background-color: var(\n --nano-background-color,\n $background-color-value\n) !default;\n$background-color-rgb: var(\n --nano-background-color-rgb,\n $background-color-rgb-value\n) !default;\n","@use 'sass:map';\n@use 'sass:list';\n\n@import './colours';\n@import './button';\n\n.button {\n @include button-base;\n}\n\n.button--primary {\n @include button-standard(\n #{nano-color(primary, base)},\n #{nano-color(primary, contrast)},\n #{nano-color(primary, shade)}\n );\n}\n\n.button--secondary {\n @include button-standard(\n map.get($colors, green),\n map.get($colors, white),\n map.get($colors, green--darker)\n );\n}\n\n.button--light {\n @include button-standard(\n map.get($colors, white),\n map.get($colors, blue),\n map.get($colors, white),\n map.get($colors, darkblue)\n );\n}\n\n.button--danger {\n @include button-standard(map.get($colors, red), map.get($colors, white), map.get($colors, red--darker));\n}\n\n.button--warning {\n @include button-standard(map.get($colors, orange), map.get($colors, white), map.get($colors, orange--darker));\n}\n\n.button--tertiary {\n background: transparent;\n box-shadow: none;\n text-decoration: underline;\n font-weight: 400;\n\n &:hover,\n &:focus {\n &:not(.button--disabled):not(:disabled),\n &.button--active {\n color: map.get($colors, palegrey);\n box-shadow: none;\n text-decoration: underline;\n }\n }\n}\n","/// Strips browser styling from an input.\n\n@mixin unstyled-input($outline: false) {\n padding: 0;\n border: none;\n background-color: transparent;\n font: inherit;\n -webkit-box-align: center;\n\n @if $outline == false {\n outline: none;\n }\n\n &::-moz-focus-inner {\n border: 0;\n padding: 0;\n }\n}\n","/// Displays an anchor as plain text.\n\n@mixin unstyled-anchor {\n text-decoration: none;\n color: inherit;\n\n &:hover,\n &:focus {\n text-decoration: none;\n color: inherit;\n }\n}\n","@import '../utilities/css-patterns/patterns';\n@import './layers';\n@import './form';\n\n// Border\n$btn-border-radius: var(--nano-btn-border-radius, 5px);\n$btn-border-width: var(--nano-btn-border-width, 2px);\n$btn-border-style: var(--nano-btn-border-style, solid);\n\n// Spacing\n$btn-padding-top: var(--nano-btn-padding-top, 0.5rem);\n$btn-padding-bottom: var(--nano-btn-padding-bottom, 0.5rem);\n$btn-padding-start: var(--nano-btn-padding-start, 1rem);\n$btn-padding-end: var(--nano-btn-padding-end, 1rem);\n$btn-line-height: var(--nano-btn-line-height, 1.5em);\n\n// Misc\n$btn-icon-size: var(--nano-btn-icon-size, 1em);\n\n@mixin transition-hover {\n transition:\n background-color 100ms ease-in-out,\n box-shadow 100ms ease-in-out,\n border-color 100ms ease-in-out,\n color 100ms ease-in-out;\n}\n\n@mixin button-keyline {\n background: transparent;\n border-style: #{$btn-border-style};\n border-width: #{$btn-border-width};\n border-radius: #{$btn-border-radius};\n padding-block: calc(#{$btn-padding-top} - #{$btn-border-width}) calc(#{$btn-padding-bottom} - #{$btn-border-width});\n\n &:hover:not(.button--disabled):not(:disabled),\n &:not(:focus):not(.button--focus),\n &.button--active {\n box-shadow: none;\n }\n}\n\n@mixin button-standard($bg, $font, $bg-hover: false, $font-hover: false) {\n $font-hover: if($font-hover, $font-hover, $font);\n $bg-hover: if($bg-hover, $bg-hover, $bg);\n\n background-color: $bg;\n color: $font;\n\n &:hover:not(.button--disabled):not(:disabled),\n &.button--active {\n background-color: $bg-hover;\n color: $font-hover;\n\n &.button--keyline {\n background-color: $bg;\n color: $font;\n }\n }\n\n &:focus {\n color: $font;\n }\n\n &.button--keyline {\n @include button-keyline;\n\n color: $bg;\n border-color: $bg;\n }\n}\n\n@mixin button-base {\n @include unstyled-input($outline: true);\n @include unstyled-anchor;\n @include transition-hover;\n\n padding-inline: #{$btn-padding-start} #{$btn-padding-end};\n padding-block: #{$btn-padding-top} #{$btn-padding-bottom};\n box-shadow: #{$layer-shadow-medium};\n display: inline-block;\n border-radius: #{$btn-border-radius};\n line-height: #{$btn-line-height};\n font-weight: 500;\n cursor: pointer;\n background: rgba(0, 0, 0, 0.02);\n\n @media print {\n display: none;\n }\n\n &:focus,\n &.button--focus {\n outline: none;\n box-shadow: #{$control-focus-style};\n }\n\n nano-icon,\n nano-spinner {\n --base-color-rgb: 255, 255, 255;\n\n margin-inline-start: 0.5em;\n margin-inline-end: 0;\n font-size: #{$btn-icon-size};\n vertical-align: middle;\n margin-block-start: -0.188em;\n display: inline-block;\n }\n\n &.button--icon-start {\n nano-icon,\n nano-spinner {\n margin-inline-start: 0;\n margin-inline-end: 0.5em;\n }\n }\n\n &:hover:not(&--disabled) {\n box-shadow: #{$layer-shadow-large};\n }\n\n &:active:not(.button--disabled):not(:disabled) {\n box-shadow: none;\n }\n\n &--disabled,\n &:disabled {\n opacity: 0.6;\n\n &:hover {\n cursor: default;\n }\n }\n}\n","@use 'sass:map';\n@use 'sass:list';\n\n@import '../utilities/globals';\n@import 'helvetica-now';\n@import 'colours';\n@import 'typography';\n@import 'buttons';\n@import 'form';\n\n@each $color-name, $value in $themes {\n .nano-color-#{$color-name} {\n @include generate-color($color-name);\n }\n}\n\n:root {\n --nano-base-font-size: 16px;\n\n @include media-breakpoint-down('sm') {\n --nano-base-font-size: 14px;\n }\n\n --nano-padding: 1rem;\n --nano-font-family:\n 'HelveticaNow',\n 'Helvetica Neue',\n helvetica,\n arial,\n 'Lucida Grande',\n sans-serif;\n\n @each $key, $value in $colors {\n #{'--nano-color-' + $key}: #{$value};\n // nice!\n #{'--nano-color-' + $key + '-rgb'}: #{color-to-rgb-list($value)};\n }\n}\n\nbody {\n background-color: $background-color;\n}\n\nhr,\n.horizontal-rule,\n.content-divider {\n display: block;\n block-size: 1px;\n border: 0;\n background-color: rgba(map.get($colors, palegrey), 0.5);\n margin-block: 0.5em;\n margin-inline: 0;\n padding: 0;\n}\n\narea[href]:not([tabindex='-1']),\niframe:not([tabindex='-1']),\n[contentEditable='true']:not([tabindex='-1']) {\n &:focus {\n outline: none;\n box-shadow: $control-focus-style;\n border-radius: 3px;\n }\n}\n","@use 'sass:math';\n\n@import 'mixins';\n\n$dark-text-default: #000 !default;\n$light-text-default: #fff !default;\n\n@function current-color($variation, $alpha: null) {\n @if $alpha==null {\n @return var(--nano-color-#{$variation});\n }\n\n @else {\n @return rgba(var(--nano-color-#{$variation}-rgb), #{$alpha});\n }\n}\n\n// Mixes a color with black to create its shade.\n// --------------------------------------------------------------------------------------------\n@function get-color-shade($color) {\n @return mix(#000, $color, 15%);\n}\n\n// Mixes a color with white to create its tint.\n// --------------------------------------------------------------------------------------------\n@function get-color-tint($color) {\n @return mix(#fff, $color, 15%);\n}\n\n// Converts a color to a comma separated hsl.\n// --------------------------------------------------------------------------------------------\n@function color-to-hsl-list($color) {\n @return #{hue($color)}, #{saturation($color)}, #{lightness($color)};\n}\n\n// Converts a color to a comma separated rgb.\n// --------------------------------------------------------------------------------------------\n@function color-to-rgb-list($color) {\n @return #{red($color)}, #{green($color)}, #{blue($color)};\n}\n\n// Calculeate brightness of a given color.\n@function brightness($color) {\n @return math.div((red($color) * 0.299) + (green($color) * 0.587) + (blue($color) * 0.114), 255) * 100%;\n}\n\n// Compares contrast of a given color to the light/dark arguments and returns whichever is most \"contrasty\"\n@function color-contrast(\n $color,\n $dark: $dark-text-default,\n $light: $light-text-default\n) {\n @if $color==null {\n @return null;\n }\n\n @else {\n $color-brightness: brightness($color);\n $light-text-brightness: brightness($light);\n $dark-text-brightness: brightness($dark);\n\n @return if(\n abs($color-brightness - $light-text-brightness) >\n abs($color-brightness - $dark-text-brightness),\n $light,\n $dark\n );\n }\n}\n\n@function nano-color($name, $variation, $alpha: null, $rgb: null) {\n $values: map-get($themes, $name);\n $value: map-get($values, $variation);\n $variable: --nano-color-#{$name}-#{$variation};\n\n @if ($variation==base) {\n $variable: --nano-color-#{$name};\n }\n\n @if ($alpha) {\n $value: color-to-rgb-list($value);\n\n @return rgba(var(#{$variable}-rgb, $value), $alpha);\n }\n\n @if ($rgb) {\n $value: color-to-rgb-list($value);\n $variable: #{$variable}-rgb;\n }\n\n @return var(#{$variable}, $value);\n}\n\n@mixin generate-color($color-name, $important: '') {\n $value: map-get($themes, $color-name);\n\n $base: map-get($value, base);\n $contrast: map-get($value, contrast);\n $shade: map-get($value, shade);\n $tint: map-get($value, tint);\n\n --nano-color-base: var(--nano-color-#{$color-name}, #{$base}) #{$important};\n --nano-color-base-rgb:\n var(\n --nano-color-#{$color-name}-rgb,\n #{color-to-rgb-list($base)}\n )\n #{$important};\n --nano-color-contrast:\n var(--nano-color-#{$color-name}-contrast, #{$contrast})\n #{$important};\n --nano-color-contrast-rgb:\n var(\n --nano-color-#{$color-name}-contrast-rgb,\n #{color-to-rgb-list($contrast)}\n )\n #{$important};\n --nano-color-shade: var(--nano-color-#{$color-name}-shade, #{$shade}) #{$important};\n --nano-color-tint: var(--nano-color-#{$color-name}-tint, #{$tint}) #{$important};\n --nano-color-tint-rgb:\n var(\n --nano-color-#{$color-name}-tint-rgb,\n #{color-to-rgb-list($tint)}\n )\n #{$important};\n}\n","@use 'sass:map';\n@use 'sass:list';\n\n@import 'colours';\n\n// Defaults\n\n$df-input-padding-top: 8px;\n$df-input-padding-bottom: 6px;\n$df-input-padding-start: 8px;\n$df-input-padding-end: 8px;\n\n$df-input-background-color: map.get($colors, white);\n$df-input-background-color--invalid: white;\n\n$df-input-text-color: $text-color-value;\n$df-input-font-size: 0.87em;\n\n$df-input-border-width: 1px;\n$df-input-border-style: solid;\n$df-input-border-radius: 0;\n\n$df-input-border-color: map.get($colors, lightgrey);\n$df-input-border--focus-color: map.get($colors, lightblue);\n$df-input-border--invalid-color: map.get($colors, lightgrey);\n$df-input-border--invalid-focus-color: map.get($colors, red);\n\n$df-clear-btn-color: rgba(0, 0, 0, 0.3);\n$df-clear-btn-color--invalid: lighten(map.get($colors, red), 30%);\n\n$df-label-color: 'currentColor';\n$df-label-font-size: 1em;\n\n$df-input-help-font-size: 0.75em;\n$df-input-help-color: darken(map.get($colors, mediumgrey), 3%);\n\n$df-input-tag-bg: color-to-rgb-list(#badcf0);\n$df-input-tag-color: #455556;\n$df-input-tag-border-color: #badcf0;\n\n// Setup global / theme css variables with default fallbacks\n\n// Placeholders\n$input-placeholder-color: var(--nano-input-placeholder-color, initial);\n$input-placeholder-style: var(--nano-input-placeholder-style, initial);\n$input-placeholder-weight: var(--nano-input-placeholder-weight, initial);\n$input-placeholder-opacity: var(--nano-input-placeholder-opacity, 0.5);\n\n// Space around labels, help, errors and inside inputs\n$input-padding-bottom: var(\n --nano-input-padding-bottom,\n var(--nano-input-padding, $df-input-padding-bottom)\n);\n$input-padding-start: var(\n --nano-input-padding-start,\n var(--nano-input-padding, $df-input-padding-start)\n);\n$input-padding-end: var(\n --nano-input-padding-end,\n var(--nano-input-padding, $df-input-padding-end)\n);\n$input-padding-top: var(\n --nano-input-padding-top,\n var(--nano-input-padding, $df-input-padding-top)\n);\n\n// Input background\n$input-background-color: var(\n --nano-input-background-color,\n $df-input-background-color\n);\n$input-background-color--invalid: var(\n --nano-input-background-color,\n $df-input-background-color--invalid\n);\n\n// Input text\n$input-text-color: var(--nano-input-text-color, $df-input-text-color);\n$input-font-size: var(--nano-input-font-size, $df-input-font-size);\n\n// Input border\n$input-border-width: var(--nano-input-border-width, $df-input-border-width);\n$input-border-color: var(--nano-input-border-color, $df-input-border-color);\n$input-border-style: var(--nano-input-border-style, $df-input-border-style);\n$input-border-radius: var(--nano-input-border-radius, $df-input-border-radius);\n\n// Input border state variants\n$input-border--focus-color: var(\n --nano-input-border-color--focus,\n $df-input-border--focus-color\n);\n$input-border--invalid-color: var(\n --nano-input-border-color--invalid,\n $df-input-border--invalid-color\n);\n$input-border--invalid-focus-color: var(\n --nano-input-border-color--invalid,\n $df-input-border--invalid-focus-color\n);\n\n// Clear button\n$clear-btn-color: var(--nano-clear-btn-color, $df-clear-btn-color);\n$clear-btn-color--invalid: var(\n --nano-clear-btn-color--invalid,\n $df-clear-btn-color--invalid\n);\n\n// Label\n$label-color: var(--nano-input-label-color, $df-label-color);\n$label-color-invalid: var(--nano-input-label-color-invalid, $df-label-color);\n$label-font-size: var(--nano-input-label-color, $df-label-font-size);\n\n// Focus shadow / outline\n$control-focus-color: var(\n --nano-control-focus-color,\n rgba(map.get($colors, lightblue), 0.8)\n);\n$control-focus-size: 0 0 0 0.1875rem;\n$control-focus-style: var(\n --nano-control-focus-shadow,\n #{$control-focus-size + ' ' $control-focus-color}\n);\n$control-invalid-style: var(\n --nano-control-focus-shadow,\n #{$control-focus-size + ' ' $df-input-border--invalid-color}\n);\n\n// Helper / Error text\n$input-help-font-size: var(\n --nano-input-help-font-size,\n $df-input-help-font-size\n);\n$input-help-color: var(--nano-input-help-color, $df-input-help-color);\n\n// General button\n$button-bg-color: var(--nano-button-color, #{map.get($colors, celsius)});\n\n// Tags / Multi value\n$input-tag-bg: var(--nano-input-tag-bg, $df-input-tag-bg);\n$input-tag-color: var(--nano-input-tag-color, $df-input-tag-color);\n$input-tag-border-color: var(\n --nano-input-tag-color,\n $df-input-tag-border-color\n);\n\n// Select\n$select-opt-focus: var(--nano-select-opt-bg, darken(map.get($colors, blue--faded), 5%));\n$select-opt-selected: var(--nano-select-opt-bg, map.get($colors, blue--faded));\n"]}
@@ -28,6 +28,7 @@ export declare class GlobalNav implements ComponentInterface {
28
28
  private menuBtn;
29
29
  private menuWrapDiv;
30
30
  private menuContentDiv;
31
+ private menuSelectedItems;
31
32
  private searchBarEl;
32
33
  private searchInput;
33
34
  private algoliaClient;
@@ -69,7 +70,7 @@ export declare class GlobalNav implements ComponentInterface {
69
70
  scrollingUp: boolean;
70
71
  searchLoading: boolean;
71
72
  showAutocomplete: boolean;
72
- secondaryMenuOpen: boolean;
73
+ secondaryMenuOpen: HTMLNanoNavItemElement;
73
74
  userMenuOpen: boolean;
74
75
  menuFullScreen: boolean;
75
76
  searchValInternal: string;
@@ -201,8 +202,12 @@ export declare class GlobalNav implements ComponentInterface {
201
202
  */
202
203
  private setResizingState;
203
204
  private onWindowResize;
204
- secondaryOpen(ev: CustomEvent): void;
205
- secondaryClose(ev: CustomEvent): void;
205
+ secondaryOpen(ev: CustomEvent & {
206
+ target: HTMLNanoNavItemElement;
207
+ }): void;
208
+ secondaryClose(ev: CustomEvent & {
209
+ target: HTMLNanoNavItemElement;
210
+ }): void;
206
211
  private onMenuBtnKeyDown;
207
212
  private onMenuBtnClick;
208
213
  private menuOpen;
@@ -1,8 +1,8 @@
1
1
  import { ComponentInterface, EventEmitter } from '../../stencil-public-runtime';
2
2
  import type { Color, ControlValidity, ControlValidityEventDetail, InputChangeEventDetail, TextFieldTypes } from '../../interface';
3
3
  /**
4
- * The input component is a wrapper to the HTML input element with custom styling and additional functionality. It accepts most of the same properties as the HTML [input](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input), but works great on desktop devices and integrates with the keyboard on mobile devices.
5
-
4
+ * The input component is a wrapper to the HTML input element with custom styling and additional functionality. It accepts most of the same properties as the HTML [input](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input).
5
+ *
6
6
  It is meant for text type inputs only, such as "text", "password", "email", "number", "search", "tel", and "url". It supports all standard text input events including keyup, keydown, keypress, and more.
7
7
  The default styling reference comes from the [ONT styleguide](https://nanoporetech.zeroheight.com/styleguide/s/31282/p/230c74-text-input--textarea/b/942ee4)
8
8
  * @slot start - suitable for inline action buttons or icons that may add extra contextual information
@@ -8,23 +8,26 @@ import type { ResizeStateChangeEventDetail } from '../../interface';
8
8
  export declare class ResizeObserve implements ComponentInterface {
9
9
  private ro;
10
10
  private appliedStates;
11
+ private isReady;
11
12
  host: HTMLNanoResizeObserveElement;
12
13
  currentWidth: number;
13
14
  currentHeight: number;
14
15
  classNames: string[];
16
+ classNameChange(): void;
15
17
  /** string list of sizes and optional class-names. Adds class-names and fires nanoResizeStateChange events. Upon hitting breakpoints.
16
18
  * Format: `states="800w, 300h class1 class2"` */
17
19
  states: string;
18
20
  /** A resize break point is switched on or off */
19
21
  nanoResizeStateChange: EventEmitter<ResizeStateChangeEventDetail>;
22
+ /** Fires after the initial loading and assessment */
23
+ nanoResizeObserverReady: EventEmitter<void>;
20
24
  dimensionChanged(): void;
21
25
  statesChanged(): void;
22
26
  private assessChanges;
23
27
  private applyChanges;
24
28
  private toSimpleObj;
25
29
  private attachRO;
26
- connectedCallback(): void;
27
- componentDidLoad(): void;
30
+ componentWillLoad(): void;
28
31
  disconnectedCallback(): void;
29
32
  render(): any;
30
33
  }
@@ -2,13 +2,14 @@ import { ComponentInterface, EventEmitter } from '../../stencil-public-runtime';
2
2
  import type { TableTypes } from '../../interface';
3
3
  /**
4
4
  * A performant, accessible and semantic (uses real html `<table />`, `<tr />` etc) table and data-grid solution.
5
- * - Built-in search
6
- * - Built-in column filter
7
- * - Built-in column sort
8
- * - Easily swap in API / async based search / filter & sort
9
- * - Pin headers, footers, rows, columns
10
- * - Add custom rendering at every level
11
- * - Add custom properties at every level
5
+ *
6
+ *- Built-in search
7
+ *- Built-in column filter
8
+ *- Built-in column sort
9
+ *- Easily swap in API / async based search / filter & sort
10
+ *- Pin headers, footers, rows, columns
11
+ *- Add custom rendering at every level
12
+ *- Add custom properties at every level
12
13
  *
13
14
  * @slot caption - The table's caption. You must either use this or the `caption` attribute.
14
15
  */
@@ -4302,6 +4302,10 @@ declare namespace LocalJSX {
4302
4302
  "value"?: number;
4303
4303
  }
4304
4304
  interface NanoResizeObserve {
4305
+ /**
4306
+ * Fires after the initial loading and assessment
4307
+ */
4308
+ "onNanoResizeObserverReady"?: (event: NanoResizeObserveCustomEvent<void>) => void;
4305
4309
  /**
4306
4310
  * A resize break point is switched on or off
4307
4311
  */
@@ -8,7 +8,7 @@ export declare function closestElement(selector: string, base?: Element): Elemen
8
8
  export declare function getDirectChildren<T = HTMLElement>(el: Element, sel: string, elesOnly?: true): Array<T>;
9
9
  export declare function getDirectChildren<T = HTMLElement>(el: Element, sel: string, elesOnly?: 'slot'): Array<T>;
10
10
  export declare function getDirectChildren<T = HTMLElement>(el: Element, sel: string, elesOnly?: false): Array<T | Node>;
11
- export declare const getSiblings: (el: Element, sel?: string) => Array<Element>;
11
+ export declare const getSiblings: <T extends Element>(el: Element, sel?: string) => T[];
12
12
  export declare function getOffset(element: HTMLElement, parent: HTMLElement): {
13
13
  top: number;
14
14
  left: number;