@dodlhuat/basix 1.0.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 (430) hide show
  1. package/README.md +482 -0
  2. package/css/accordion.css +109 -0
  3. package/css/accordion.css.map +1 -0
  4. package/css/accordion.scss +78 -0
  5. package/css/alert.css +57 -0
  6. package/css/alert.css.map +1 -0
  7. package/css/alert.scss +86 -0
  8. package/css/button.css +69 -0
  9. package/css/button.css.map +1 -0
  10. package/css/button.scss +102 -0
  11. package/css/card.css +144 -0
  12. package/css/card.css.map +1 -0
  13. package/css/card.scss +66 -0
  14. package/css/carousel.css +118 -0
  15. package/css/carousel.css.map +1 -0
  16. package/css/carousel.scss +87 -0
  17. package/css/chart.css +159 -0
  18. package/css/chart.css.map +1 -0
  19. package/css/chart.scss +159 -0
  20. package/css/chat-bubbles.css +97 -0
  21. package/css/chat-bubbles.css.map +1 -0
  22. package/css/chat-bubbles.scss +68 -0
  23. package/css/checkbox.css +77 -0
  24. package/css/checkbox.css.map +1 -0
  25. package/css/checkbox.scss +55 -0
  26. package/css/chips.css +72 -0
  27. package/css/chips.css.map +1 -0
  28. package/css/chips.scss +52 -0
  29. package/css/code-viewer.css +97 -0
  30. package/css/code-viewer.css.map +1 -0
  31. package/css/code-viewer.scss +98 -0
  32. package/css/colors.css +63 -0
  33. package/css/colors.css.map +1 -0
  34. package/css/colors.scss +33 -0
  35. package/css/datepicker.css +264 -0
  36. package/css/datepicker.css.map +1 -0
  37. package/css/datepicker.scss +317 -0
  38. package/css/defaults.css +118 -0
  39. package/css/defaults.css.map +1 -0
  40. package/css/defaults.scss +91 -0
  41. package/css/dropdown.css +146 -0
  42. package/css/dropdown.css.map +1 -0
  43. package/css/dropdown.scss +137 -0
  44. package/css/editor.css +413 -0
  45. package/css/editor.scss +458 -0
  46. package/css/file-uploader.css +194 -0
  47. package/css/file-uploader.css.map +1 -0
  48. package/css/file-uploader.scss +195 -0
  49. package/css/flyout-menu.css +345 -0
  50. package/css/flyout-menu.css.map +1 -0
  51. package/css/flyout-menu.scss +355 -0
  52. package/css/form-builder.css +9 -0
  53. package/css/form-builder.css.map +1 -0
  54. package/css/form-builder.scss +11 -0
  55. package/css/form.css +130 -0
  56. package/css/form.css.map +1 -0
  57. package/css/form.scss +115 -0
  58. package/css/gallery.css +91 -0
  59. package/css/gallery.css.map +1 -0
  60. package/css/gallery.scss +63 -0
  61. package/css/grid.css +44 -0
  62. package/css/grid.css.map +1 -0
  63. package/css/grid.scss +41 -0
  64. package/css/guitar-chords.css +251 -0
  65. package/css/icons.css +327 -0
  66. package/css/icons.css.map +1 -0
  67. package/css/icons.scss +331 -0
  68. package/css/modal.css +97 -0
  69. package/css/modal.css.map +1 -0
  70. package/css/modal.scss +72 -0
  71. package/css/parameters.css +1 -0
  72. package/css/parameters.css.map +1 -0
  73. package/css/parameters.scss +4 -0
  74. package/css/placeholder.css +50 -0
  75. package/css/placeholder.css.map +1 -0
  76. package/css/placeholder.scss +28 -0
  77. package/css/progress.css +51 -0
  78. package/css/progress.css.map +1 -0
  79. package/css/progress.scss +32 -0
  80. package/css/properties.css +31 -0
  81. package/css/properties.css.map +1 -0
  82. package/css/properties.scss +31 -0
  83. package/css/push-menu.css +145 -0
  84. package/css/push-menu.css.map +1 -0
  85. package/css/push-menu.scss +127 -0
  86. package/css/radiobutton.css +91 -0
  87. package/css/radiobutton.css.map +1 -0
  88. package/css/radiobutton.scss +64 -0
  89. package/css/reset.css +46 -0
  90. package/css/reset.css.map +1 -0
  91. package/css/reset.scss +40 -0
  92. package/css/scrollbar.css +91 -0
  93. package/css/scrollbar.css.map +1 -0
  94. package/css/scrollbar.scss +69 -0
  95. package/css/spinner.css +118 -0
  96. package/css/spinner.css.map +1 -0
  97. package/css/spinner.scss +91 -0
  98. package/css/style.css +3735 -0
  99. package/css/style.css.map +1 -0
  100. package/css/style.min.css +1 -0
  101. package/css/style.scss +38 -0
  102. package/css/switch.css +66 -0
  103. package/css/switch.css.map +1 -0
  104. package/css/switch.scss +42 -0
  105. package/css/table.css +201 -0
  106. package/css/table.css.map +1 -0
  107. package/css/table.scss +178 -0
  108. package/css/tabs.css +135 -0
  109. package/css/tabs.css.map +1 -0
  110. package/css/tabs.scss +118 -0
  111. package/css/timeline.css +69 -0
  112. package/css/timeline.css.map +1 -0
  113. package/css/timeline.scss +69 -0
  114. package/css/timepicker.scss +72 -0
  115. package/css/toast.css +98 -0
  116. package/css/toast.css.map +1 -0
  117. package/css/toast.scss +81 -0
  118. package/css/tooltip.css +151 -0
  119. package/css/tooltip.css.map +1 -0
  120. package/css/tooltip.scss +122 -0
  121. package/css/tree.css +199 -0
  122. package/css/tree.css.map +1 -0
  123. package/css/tree.scss +192 -0
  124. package/css/typography.css +137 -0
  125. package/css/typography.css.map +1 -0
  126. package/css/typography.scss +100 -0
  127. package/css/virtual-dropdown.css +149 -0
  128. package/css/virtual-dropdown.css.map +1 -0
  129. package/css/virtual-dropdown.scss +142 -0
  130. package/fonts/MaterialSymbolsOutlined.woff2 +0 -0
  131. package/fonts/Outfit-VariableFont_wght.woff +0 -0
  132. package/fonts/Outfit-VariableFont_wght.woff2 +0 -0
  133. package/fonts/material-icons.woff2 +0 -0
  134. package/icons/activity-outline.svg +1 -0
  135. package/icons/alert-circle-outline.svg +1 -0
  136. package/icons/alert-triangle-outline.svg +1 -0
  137. package/icons/archive-outline.svg +1 -0
  138. package/icons/arrow-back-outline.svg +1 -0
  139. package/icons/arrow-circle-down-outline.svg +1 -0
  140. package/icons/arrow-circle-left-outline.svg +1 -0
  141. package/icons/arrow-circle-right-outline.svg +1 -0
  142. package/icons/arrow-circle-up-outline.svg +1 -0
  143. package/icons/arrow-down-outline.svg +1 -0
  144. package/icons/arrow-downward-outline.svg +1 -0
  145. package/icons/arrow-forward-outline.svg +1 -0
  146. package/icons/arrow-ios-back-outline.svg +1 -0
  147. package/icons/arrow-ios-downward-outline.svg +1 -0
  148. package/icons/arrow-ios-forward-outline.svg +1 -0
  149. package/icons/arrow-ios-upward-outline.svg +1 -0
  150. package/icons/arrow-left-outline.svg +1 -0
  151. package/icons/arrow-right-outline.svg +1 -0
  152. package/icons/arrow-up-outline.svg +1 -0
  153. package/icons/arrow-upward-outline.svg +1 -0
  154. package/icons/arrowhead-down-outline.svg +1 -0
  155. package/icons/arrowhead-left-outline.svg +1 -0
  156. package/icons/arrowhead-right-outline.svg +1 -0
  157. package/icons/arrowhead-up-outline.svg +1 -0
  158. package/icons/at-outline.svg +1 -0
  159. package/icons/attach-2-outline.svg +1 -0
  160. package/icons/attach-outline.svg +1 -0
  161. package/icons/award-outline.svg +1 -0
  162. package/icons/backspace-outline.svg +1 -0
  163. package/icons/bar-chart-2-outline.svg +1 -0
  164. package/icons/bar-chart-outline.svg +1 -0
  165. package/icons/battery-outline.svg +1 -0
  166. package/icons/behance-outline.svg +1 -0
  167. package/icons/bell-off-outline.svg +1 -0
  168. package/icons/bell-outline.svg +1 -0
  169. package/icons/bluetooth-outline.svg +1 -0
  170. package/icons/book-open-outline.svg +1 -0
  171. package/icons/book-outline.svg +1 -0
  172. package/icons/bookmark-outline.svg +1 -0
  173. package/icons/briefcase-outline.svg +1 -0
  174. package/icons/browser-outline.svg +1 -0
  175. package/icons/brush-outline.svg +1 -0
  176. package/icons/bulb-outline.svg +1 -0
  177. package/icons/calendar-outline.svg +1 -0
  178. package/icons/camera-outline.svg +1 -0
  179. package/icons/car-outline.svg +1 -0
  180. package/icons/cast-outline.svg +1 -0
  181. package/icons/charging-outline.svg +1 -0
  182. package/icons/checkmark-circle-2-outline.svg +1 -0
  183. package/icons/checkmark-circle-outline.svg +1 -0
  184. package/icons/checkmark-outline.svg +1 -0
  185. package/icons/checkmark-square-2-outline.svg +1 -0
  186. package/icons/checkmark-square-outline.svg +1 -0
  187. package/icons/chevron-down-outline.svg +1 -0
  188. package/icons/chevron-left-outline.svg +1 -0
  189. package/icons/chevron-right-outline.svg +1 -0
  190. package/icons/chevron-up-outline.svg +1 -0
  191. package/icons/clipboard-outline.svg +1 -0
  192. package/icons/clock-outline.svg +1 -0
  193. package/icons/close-circle-outline.svg +1 -0
  194. package/icons/close-outline.svg +1 -0
  195. package/icons/close-square-outline.svg +1 -0
  196. package/icons/cloud-download-outline.svg +1 -0
  197. package/icons/cloud-upload-outline.svg +1 -0
  198. package/icons/code-download-outline.svg +1 -0
  199. package/icons/code-outline.svg +1 -0
  200. package/icons/collapse-outline.svg +1 -0
  201. package/icons/color-palette-outline.svg +1 -0
  202. package/icons/color-picker-outline.svg +1 -0
  203. package/icons/compass-outline.svg +1 -0
  204. package/icons/copy-outline.svg +1 -0
  205. package/icons/corner-down-left-outline.svg +1 -0
  206. package/icons/corner-down-right-outline.svg +1 -0
  207. package/icons/corner-left-down-outline.svg +1 -0
  208. package/icons/corner-left-up-outline.svg +1 -0
  209. package/icons/corner-right-down-outline.svg +1 -0
  210. package/icons/corner-right-up-outline.svg +1 -0
  211. package/icons/corner-up-left-outline.svg +1 -0
  212. package/icons/corner-up-right-outline.svg +1 -0
  213. package/icons/credit-card-outline.svg +1 -0
  214. package/icons/crop-outline.svg +1 -0
  215. package/icons/cube-outline.svg +1 -0
  216. package/icons/diagonal-arrow-left-down-outline.svg +1 -0
  217. package/icons/diagonal-arrow-left-up-outline.svg +1 -0
  218. package/icons/diagonal-arrow-right-down-outline.svg +1 -0
  219. package/icons/diagonal-arrow-right-up-outline.svg +1 -0
  220. package/icons/done-all-outline.svg +1 -0
  221. package/icons/download-outline.svg +1 -0
  222. package/icons/droplet-off-outline.svg +1 -0
  223. package/icons/droplet-outline.svg +1 -0
  224. package/icons/edit-2-outline.svg +1 -0
  225. package/icons/edit-outline.svg +1 -0
  226. package/icons/email-outline.svg +1 -0
  227. package/icons/expand-outline.svg +1 -0
  228. package/icons/external-link-outline.svg +1 -0
  229. package/icons/eye-off-2-outline.svg +1 -0
  230. package/icons/eye-off-outline.svg +1 -0
  231. package/icons/eye-outline.svg +1 -0
  232. package/icons/facebook-outline.svg +1 -0
  233. package/icons/file-add-outline.svg +1 -0
  234. package/icons/file-outline.svg +1 -0
  235. package/icons/file-remove-outline.svg +1 -0
  236. package/icons/file-text-outline.svg +1 -0
  237. package/icons/film-outline.svg +1 -0
  238. package/icons/flag-outline.svg +1 -0
  239. package/icons/flash-off-outline.svg +1 -0
  240. package/icons/flash-outline.svg +1 -0
  241. package/icons/flip-2-outline.svg +1 -0
  242. package/icons/flip-outline.svg +1 -0
  243. package/icons/folder-add-outline.svg +1 -0
  244. package/icons/folder-outline.svg +1 -0
  245. package/icons/folder-remove-outline.svg +1 -0
  246. package/icons/funnel-outline.svg +1 -0
  247. package/icons/gift-outline.svg +1 -0
  248. package/icons/github-outline.svg +1 -0
  249. package/icons/globe-2-outline.svg +1 -0
  250. package/icons/globe-outline.svg +1 -0
  251. package/icons/google-outline.svg +1 -0
  252. package/icons/grid-outline.svg +1 -0
  253. package/icons/hard-drive-outline.svg +1 -0
  254. package/icons/hash-outline.svg +1 -0
  255. package/icons/headphones-outline.svg +1 -0
  256. package/icons/heart-outline.svg +1 -0
  257. package/icons/home-outline.svg +1 -0
  258. package/icons/image-outline.svg +1 -0
  259. package/icons/inbox-outline.svg +1 -0
  260. package/icons/info-outline.svg +1 -0
  261. package/icons/keypad-outline.svg +1 -0
  262. package/icons/layers-outline.svg +1 -0
  263. package/icons/layout-outline.svg +1 -0
  264. package/icons/link-2-outline.svg +1 -0
  265. package/icons/link-outline.svg +1 -0
  266. package/icons/linkedin-outline.svg +1 -0
  267. package/icons/list-outline.svg +1 -0
  268. package/icons/loader-outline.svg +1 -0
  269. package/icons/lock-outline.svg +1 -0
  270. package/icons/log-in-outline.svg +1 -0
  271. package/icons/log-out-outline.svg +1 -0
  272. package/icons/map-outline.svg +1 -0
  273. package/icons/maximize-outline.svg +1 -0
  274. package/icons/menu-2-outline.svg +1 -0
  275. package/icons/menu-arrow-outline.svg +1 -0
  276. package/icons/menu-outline.svg +1 -0
  277. package/icons/message-circle-outline.svg +1 -0
  278. package/icons/message-square-outline.svg +1 -0
  279. package/icons/mic-off-outline.svg +1 -0
  280. package/icons/mic-outline.svg +1 -0
  281. package/icons/minimize-outline.svg +1 -0
  282. package/icons/minus-circle-outline.svg +1 -0
  283. package/icons/minus-outline.svg +1 -0
  284. package/icons/minus-square-outline.svg +1 -0
  285. package/icons/monitor-outline.svg +1 -0
  286. package/icons/moon-outline.svg +1 -0
  287. package/icons/more-horizontal-outline.svg +1 -0
  288. package/icons/more-vertical-outline.svg +1 -0
  289. package/icons/move-outline.svg +1 -0
  290. package/icons/music-outline.svg +1 -0
  291. package/icons/navigation-2-outline.svg +1 -0
  292. package/icons/navigation-outline.svg +1 -0
  293. package/icons/npm-outline.svg +1 -0
  294. package/icons/options-2-outline.svg +1 -0
  295. package/icons/options-outline.svg +1 -0
  296. package/icons/pantone-outline.svg +1 -0
  297. package/icons/paper-plane-outline.svg +1 -0
  298. package/icons/pause-circle-outline.svg +1 -0
  299. package/icons/people-outline.svg +1 -0
  300. package/icons/percent-outline.svg +1 -0
  301. package/icons/person-add-outline.svg +1 -0
  302. package/icons/person-delete-outline.svg +1 -0
  303. package/icons/person-done-outline.svg +1 -0
  304. package/icons/person-outline.svg +1 -0
  305. package/icons/person-remove-outline.svg +1 -0
  306. package/icons/phone-call-outline.svg +1 -0
  307. package/icons/phone-missed-outline.svg +1 -0
  308. package/icons/phone-off-outline.svg +1 -0
  309. package/icons/phone-outline.svg +1 -0
  310. package/icons/pie-chart-outline.svg +1 -0
  311. package/icons/pin-outline.svg +1 -0
  312. package/icons/play-circle-outline.svg +1 -0
  313. package/icons/plus-circle-outline.svg +1 -0
  314. package/icons/plus-outline.svg +1 -0
  315. package/icons/plus-square-outline.svg +1 -0
  316. package/icons/power-outline.svg +1 -0
  317. package/icons/pricetags-outline.svg +1 -0
  318. package/icons/printer-outline.svg +1 -0
  319. package/icons/question-mark-circle-outline.svg +1 -0
  320. package/icons/question-mark-outline.svg +1 -0
  321. package/icons/radio-button-off-outline.svg +1 -0
  322. package/icons/radio-button-on-outline.svg +1 -0
  323. package/icons/radio-outline.svg +1 -0
  324. package/icons/recording-outline.svg +1 -0
  325. package/icons/refresh-outline.svg +1 -0
  326. package/icons/repeat-outline.svg +1 -0
  327. package/icons/rewind-left-outline.svg +1 -0
  328. package/icons/rewind-right-outline.svg +1 -0
  329. package/icons/save-outline.svg +1 -0
  330. package/icons/scissors-outline.svg +1 -0
  331. package/icons/search-outline.svg +1 -0
  332. package/icons/settings-2-outline.svg +1 -0
  333. package/icons/settings-outline.svg +1 -0
  334. package/icons/shake-outline.svg +1 -0
  335. package/icons/share-outline.svg +1 -0
  336. package/icons/shield-off-outline.svg +1 -0
  337. package/icons/shield-outline.svg +1 -0
  338. package/icons/shopping-bag-outline.svg +1 -0
  339. package/icons/shopping-cart-outline.svg +1 -0
  340. package/icons/shuffle-2-outline.svg +1 -0
  341. package/icons/shuffle-outline.svg +1 -0
  342. package/icons/skip-back-outline.svg +1 -0
  343. package/icons/skip-forward-outline.svg +1 -0
  344. package/icons/slash-outline.svg +1 -0
  345. package/icons/smartphone-outline.svg +1 -0
  346. package/icons/smiling-face-outline.svg +1 -0
  347. package/icons/speaker-outline.svg +1 -0
  348. package/icons/square-outline.svg +1 -0
  349. package/icons/star-outline.svg +1 -0
  350. package/icons/stop-circle-outline.svg +1 -0
  351. package/icons/sun-outline.svg +1 -0
  352. package/icons/swap-outline.svg +1 -0
  353. package/icons/sync-outline.svg +1 -0
  354. package/icons/text-outline.svg +1 -0
  355. package/icons/thermometer-minus-outline.svg +1 -0
  356. package/icons/thermometer-outline.svg +1 -0
  357. package/icons/thermometer-plus-outline.svg +1 -0
  358. package/icons/toggle-left-outline.svg +1 -0
  359. package/icons/toggle-right-outline.svg +1 -0
  360. package/icons/trash-2-outline.svg +1 -0
  361. package/icons/trash-outline.svg +1 -0
  362. package/icons/trending-down-outline.svg +1 -0
  363. package/icons/trending-up-outline.svg +1 -0
  364. package/icons/tv-outline.svg +1 -0
  365. package/icons/twitter-outline.svg +1 -0
  366. package/icons/umbrella-outline.svg +1 -0
  367. package/icons/undo-outline.svg +1 -0
  368. package/icons/unlock-outline.svg +1 -0
  369. package/icons/upload-outline.svg +1 -0
  370. package/icons/video-off-outline.svg +1 -0
  371. package/icons/video-outline.svg +1 -0
  372. package/icons/volume-down-outline.svg +1 -0
  373. package/icons/volume-mute-outline.svg +1 -0
  374. package/icons/volume-off-outline.svg +1 -0
  375. package/icons/volume-up-outline.svg +1 -0
  376. package/icons/wifi-off-outline.svg +1 -0
  377. package/icons/wifi-outline.svg +1 -0
  378. package/js/carousel.js +133 -0
  379. package/js/carousel.ts +173 -0
  380. package/js/chart.js +257 -0
  381. package/js/code-viewer.js +148 -0
  382. package/js/code-viewer.ts +188 -0
  383. package/js/datepicker.js +497 -0
  384. package/js/datepicker.ts +619 -0
  385. package/js/dropdown.js +122 -0
  386. package/js/dropdown.ts +180 -0
  387. package/js/editor.js +421 -0
  388. package/js/editor.ts +426 -0
  389. package/js/file-uploader.js +268 -0
  390. package/js/file-uploader.ts +350 -0
  391. package/js/flyout-menu.js +195 -0
  392. package/js/flyout-menu.ts +250 -0
  393. package/js/form-builder.js +107 -0
  394. package/js/gallery.js +177 -0
  395. package/js/gallery.ts +231 -0
  396. package/js/guitar-chords.js +268 -0
  397. package/js/index.js +720 -0
  398. package/js/index.ts +874 -0
  399. package/js/lazy-loader.js +121 -0
  400. package/js/modal.js +113 -0
  401. package/js/modal.ts +167 -0
  402. package/js/push-menu.js +101 -0
  403. package/js/push-menu.ts +130 -0
  404. package/js/request.js +51 -0
  405. package/js/scroll.js +27 -0
  406. package/js/scroll.ts +47 -0
  407. package/js/scrollbar.js +219 -0
  408. package/js/scrollbar.ts +308 -0
  409. package/js/select.js +158 -0
  410. package/js/select.ts +217 -0
  411. package/js/table.js +359 -0
  412. package/js/table.ts +453 -0
  413. package/js/tabs.js +225 -0
  414. package/js/tabs.ts +280 -0
  415. package/js/theme.js +194 -0
  416. package/js/theme.ts +225 -0
  417. package/js/timepicker.js +98 -0
  418. package/js/timepicker.ts +131 -0
  419. package/js/toast.js +93 -0
  420. package/js/toast.ts +138 -0
  421. package/js/tooltip.js +193 -0
  422. package/js/tooltip.ts +252 -0
  423. package/js/tree.js +162 -0
  424. package/js/tree.ts +218 -0
  425. package/js/tsconfig.json +18 -0
  426. package/js/utils.js +69 -0
  427. package/js/utils.ts +84 -0
  428. package/js/virtual-dropdown.js +277 -0
  429. package/js/virtual-dropdown.ts +366 -0
  430. package/package.json +38 -0
@@ -0,0 +1,87 @@
1
+ @use "properties";
2
+ @use "parameters" as *;
3
+
4
+ .carousel {
5
+ position: relative;
6
+ width: 100%;
7
+ margin: 0 auto;
8
+ overflow: hidden;
9
+ border-radius: 8px;
10
+ box-shadow: $shadow;
11
+ }
12
+
13
+ .carousel-track-container {
14
+ overflow: hidden;
15
+ width: 100%;
16
+ }
17
+
18
+ .carousel-track {
19
+ display: flex;
20
+ transition: transform 0.4s ease-in-out;
21
+ width: 100%;
22
+ padding: 0;
23
+ margin: 0;
24
+ list-style: none;
25
+ }
26
+
27
+ .carousel-slide {
28
+ min-width: 100%;
29
+ box-sizing: border-box;
30
+ min-height: 400px;
31
+ display: flex;
32
+ align-items: center;
33
+ justify-content: center;
34
+ font-size: 2rem;
35
+ user-select: none;
36
+ }
37
+
38
+ .carousel-button {
39
+ position: absolute;
40
+ top: 50%;
41
+ transform: translateY(-50%);
42
+ cursor: pointer;
43
+ display: flex;
44
+ align-items: center;
45
+ justify-content: center;
46
+ z-index: 10;
47
+ transition: background 0.3s;
48
+ padding: 10px;
49
+ }
50
+
51
+ .carousel-button:hover {
52
+ background: var(--secondary-background);
53
+ }
54
+
55
+ .carousel-button--left {
56
+ left: 10px;
57
+ }
58
+
59
+ .carousel-button--right {
60
+ right: 10px;
61
+ }
62
+
63
+ .carousel-nav {
64
+ display: flex;
65
+ justify-content: center;
66
+ padding: 10px 0;
67
+ position: absolute;
68
+ bottom: 10px;
69
+ width: 100%;
70
+ z-index: 10;
71
+ }
72
+
73
+ .carousel-indicator {
74
+ padding: 0;
75
+ border: none;
76
+ width: 20px;
77
+ height: 5px;
78
+ background: var(--disabled);
79
+ margin: 0 5px;
80
+ border-radius: 4px;
81
+ cursor: pointer;
82
+ transition: background 0.3s;
83
+ }
84
+
85
+ .carousel-indicator.current-slide {
86
+ background: var(--accent-color);
87
+ }
package/css/chart.css ADDED
@@ -0,0 +1,159 @@
1
+ :root {
2
+ --chart-bg: #ffffff;
3
+ --zone-left-bg: #e0f7fa;
4
+ --zone-mid-bg: #fff9c4;
5
+ --zone-right-bg: #d0f7db;
6
+ --grid-line-color: #bdbdbd;
7
+ --row-hover-bg: #f5f5f5;
8
+ --line-color: #1976d2;
9
+ --point-color: #d32f2f;
10
+ --text-color: #333;
11
+ --font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
12
+ }
13
+
14
+ #chart-container {
15
+ position: relative;
16
+ }
17
+
18
+ /* Background Zones Layer */
19
+ .chart-background {
20
+ position: absolute;
21
+ top: 0;
22
+ left: 0;
23
+ width: 100%;
24
+ height: 100%;
25
+ display: flex;
26
+ z-index: 0;
27
+ pointer-events: none;
28
+ }
29
+
30
+ .zone {
31
+ height: 100%;
32
+ border-right: 1px dashed rgba(0, 0, 0, 0.05);
33
+ /* Optional zone separator */
34
+ }
35
+
36
+ .zone-left {
37
+ background-color: var(--zone-left-bg);
38
+ }
39
+
40
+ .zone-mid {
41
+ background-color: var(--zone-mid-bg);
42
+ }
43
+
44
+ .zone-right {
45
+ background-color: var(--zone-right-bg);
46
+ }
47
+
48
+ /* Grid Lines Layer */
49
+ .grid-lines {
50
+ position: absolute;
51
+ top: 0;
52
+ left: 0;
53
+ width: 100%;
54
+ height: 100%;
55
+ z-index: 1;
56
+ pointer-events: none;
57
+ }
58
+
59
+ .grid-line {
60
+ position: absolute;
61
+ top: 0;
62
+ bottom: 0;
63
+ width: 1px;
64
+ background-color: var(--grid-line-color);
65
+ }
66
+
67
+ .grid-label {
68
+ position: absolute;
69
+ top: 10px;
70
+ transform: translateX(-50%);
71
+ font-size: 10px;
72
+ color: #666;
73
+ }
74
+
75
+ /* Content Layer */
76
+ .chart-content {
77
+ position: relative;
78
+ z-index: 2;
79
+ }
80
+
81
+ .chart-row {
82
+ display: flex;
83
+ align-items: center;
84
+ padding: 10px 20px;
85
+ border-bottom: 1px solid rgba(0, 0, 0, 0.05);
86
+ transition: background-color 0.2s;
87
+ height: 40px;
88
+ /* Fixed height for easier calculation */
89
+ box-sizing: border-box;
90
+ }
91
+
92
+ .chart-row:hover {
93
+ background-color: rgba(255, 255, 255, 0.5);
94
+ }
95
+
96
+ .row-info {
97
+ width: 350px;
98
+ /* Fixed width for info column */
99
+ flex-shrink: 0;
100
+ font-size: 11px;
101
+ color: var(--text-color);
102
+ z-index: 3;
103
+ /* Above lines */
104
+ }
105
+
106
+ .row-name {
107
+ font-weight: bold;
108
+ font-size: 12px;
109
+ }
110
+
111
+ .row-meta {
112
+ font-size: 10px;
113
+ color: #777;
114
+ }
115
+
116
+ /* SVG Layer for Line */
117
+ .chart-svg-layer {
118
+ position: absolute;
119
+ top: 0;
120
+ left: 0;
121
+ width: 100%;
122
+ height: 100%;
123
+ z-index: 9999;
124
+ /* Nuclear option for visibility */
125
+ pointer-events: none;
126
+ overflow: visible;
127
+ /* Allow points to extend beyond container if needed */
128
+ }
129
+
130
+ .chart-polyline {
131
+ fill: none;
132
+ stroke: var(--line-color);
133
+ stroke-width: 2;
134
+ stroke-linejoin: round;
135
+ stroke-linecap: round;
136
+ }
137
+
138
+ .chart-point {
139
+ fill: var(--point-color);
140
+ stroke: white;
141
+ stroke-width: 2;
142
+ }
143
+
144
+ /* Tooltip Styles */
145
+ .chart-tooltip {
146
+ position: absolute;
147
+ background-color: rgba(0, 0, 0, 0.8);
148
+ color: white;
149
+ padding: 8px 12px;
150
+ border-radius: 4px;
151
+ font-size: 12px;
152
+ pointer-events: none;
153
+ z-index: 10000;
154
+ /* Ensure it's on top of everything */
155
+ box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
156
+ white-space: nowrap;
157
+ }
158
+
159
+ /*# sourceMappingURL=chart.css.map */
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["chart.scss","chart.css"],"names":[],"mappings":"AAAA;EACE,mBAAA;EACA,uBAAA;EACA,sBAAA;EACA,wBAAA;EACA,0BAAA;EACA,uBAAA;EACA,qBAAA;EACA,sBAAA;EACA,kBAAA;EACA,8DAAA;ACCF;;ADEA;EACE,kBAAA;ACCF;;ADEA,2BAAA;AACA;EACE,kBAAA;EACA,MAAA;EACA,OAAA;EACA,WAAA;EACA,YAAA;EACA,aAAA;EACA,UAAA;EACA,oBAAA;ACCF;;ADEA;EACE,YAAA;EACA,4CAAA;EACA,4BAAA;ACCF;;ADEA;EACE,qCAAA;ACCF;;ADEA;EACE,oCAAA;ACCF;;ADEA;EACE,sCAAA;ACCF;;ADEA,qBAAA;AACA;EACE,kBAAA;EACA,MAAA;EACA,OAAA;EACA,WAAA;EACA,YAAA;EACA,UAAA;EACA,oBAAA;ACCF;;ADEA;EACE,kBAAA;EACA,MAAA;EACA,SAAA;EACA,UAAA;EACA,wCAAA;ACCF;;ADEA;EACE,kBAAA;EACA,SAAA;EACA,2BAAA;EACA,eAAA;EACA,WAAA;ACCF;;ADEA,kBAAA;AACA;EACE,kBAAA;EACA,UAAA;ACCF;;ADEA;EACE,aAAA;EACA,mBAAA;EACA,kBAAA;EACA,4CAAA;EACA,iCAAA;EACA,YAAA;EACA,wCAAA;EACA,sBAAA;ACCF;;ADEA;EACE,0CAAA;ACCF;;ADEA;EACE,YAAA;EACA,gCAAA;EACA,cAAA;EACA,eAAA;EACA,wBAAA;EACA,UAAA;EACA,gBAAA;ACCF;;ADEA;EACE,iBAAA;EACA,eAAA;ACCF;;ADEA;EACE,eAAA;EACA,WAAA;ACCF;;ADEA,uBAAA;AACA;EACE,kBAAA;EACA,MAAA;EACA,OAAA;EACA,WAAA;EACA,YAAA;EACA,aAAA;EACA,kCAAA;EACA,oBAAA;EACA,iBAAA;EACA,sDAAA;ACCF;;ADEA;EACE,UAAA;EACA,yBAAA;EACA,eAAA;EACA,sBAAA;EACA,qBAAA;ACCF;;ADEA;EACE,wBAAA;EACA,aAAA;EACA,eAAA;ACCF;;ADEA,mBAAA;AACA;EACE,kBAAA;EACA,oCAAA;EACA,YAAA;EACA,iBAAA;EACA,kBAAA;EACA,eAAA;EACA,oBAAA;EACA,cAAA;EACA,qCAAA;EACA,wCAAA;EACA,mBAAA;ACCF","file":"chart.css"}
package/css/chart.scss ADDED
@@ -0,0 +1,159 @@
1
+ :root {
2
+ --chart-bg: #ffffff;
3
+ --zone-left-bg: #e0f7fa;
4
+ --zone-mid-bg: #fff9c4;
5
+ --zone-right-bg: #d0f7db;
6
+ --grid-line-color: #bdbdbd;
7
+ --row-hover-bg: #f5f5f5;
8
+ --line-color: #1976d2;
9
+ --point-color: #d32f2f;
10
+ --text-color: #333;
11
+ --font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
12
+ }
13
+
14
+ #chart-container {
15
+ position: relative;
16
+ }
17
+
18
+ /* Background Zones Layer */
19
+ .chart-background {
20
+ position: absolute;
21
+ top: 0;
22
+ left: 0;
23
+ width: 100%;
24
+ height: 100%;
25
+ display: flex;
26
+ z-index: 0;
27
+ pointer-events: none;
28
+ }
29
+
30
+ .zone {
31
+ height: 100%;
32
+ border-right: 1px dashed rgba(0, 0, 0, 0.05);
33
+ /* Optional zone separator */
34
+ }
35
+
36
+ .zone-left {
37
+ background-color: var(--zone-left-bg);
38
+ }
39
+
40
+ .zone-mid {
41
+ background-color: var(--zone-mid-bg);
42
+ }
43
+
44
+ .zone-right {
45
+ background-color: var(--zone-right-bg);
46
+ }
47
+
48
+ /* Grid Lines Layer */
49
+ .grid-lines {
50
+ position: absolute;
51
+ top: 0;
52
+ left: 0;
53
+ width: 100%;
54
+ height: 100%;
55
+ z-index: 1;
56
+ pointer-events: none;
57
+ }
58
+
59
+ .grid-line {
60
+ position: absolute;
61
+ top: 0;
62
+ bottom: 0;
63
+ width: 1px;
64
+ background-color: var(--grid-line-color);
65
+ }
66
+
67
+ .grid-label {
68
+ position: absolute;
69
+ top: 10px;
70
+ transform: translateX(-50%);
71
+ font-size: 10px;
72
+ color: #666;
73
+ }
74
+
75
+ /* Content Layer */
76
+ .chart-content {
77
+ position: relative;
78
+ z-index: 2;
79
+ }
80
+
81
+ .chart-row {
82
+ display: flex;
83
+ align-items: center;
84
+ padding: 10px 20px;
85
+ border-bottom: 1px solid rgba(0, 0, 0, 0.05);
86
+ transition: background-color 0.2s;
87
+ height: 40px;
88
+ /* Fixed height for easier calculation */
89
+ box-sizing: border-box;
90
+ }
91
+
92
+ .chart-row:hover {
93
+ background-color: rgba(255, 255, 255, 0.5);
94
+ }
95
+
96
+ .row-info {
97
+ width: 350px;
98
+ /* Fixed width for info column */
99
+ flex-shrink: 0;
100
+ font-size: 11px;
101
+ color: var(--text-color);
102
+ z-index: 3;
103
+ /* Above lines */
104
+ }
105
+
106
+ .row-name {
107
+ font-weight: bold;
108
+ font-size: 12px;
109
+ }
110
+
111
+ .row-meta {
112
+ font-size: 10px;
113
+ color: #777;
114
+ }
115
+
116
+ /* SVG Layer for Line */
117
+ .chart-svg-layer {
118
+ position: absolute;
119
+ top: 0;
120
+ left: 0;
121
+ width: 100%;
122
+ height: 100%;
123
+ z-index: 9999;
124
+ /* Nuclear option for visibility */
125
+ pointer-events: none;
126
+ overflow: visible;
127
+ /* Allow points to extend beyond container if needed */
128
+ }
129
+
130
+ .chart-polyline {
131
+ fill: none;
132
+ stroke: var(--line-color);
133
+ stroke-width: 2;
134
+ stroke-linejoin: round;
135
+ stroke-linecap: round;
136
+ }
137
+
138
+ .chart-point {
139
+ fill: var(--point-color);
140
+ stroke: white;
141
+ stroke-width: 2;
142
+ }
143
+
144
+ /* Tooltip Styles */
145
+ .chart-tooltip {
146
+ position: absolute;
147
+ background-color: rgba(0, 0, 0, 0.8);
148
+ color: white;
149
+ padding: 8px 12px;
150
+ border-radius: 4px;
151
+ font-size: 12px;
152
+ pointer-events: none;
153
+ z-index: 10000;
154
+ /* Ensure it's on top of everything */
155
+ box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
156
+ white-space: nowrap;
157
+ }
158
+
159
+ /*# sourceMappingURL=chart.css.map */
@@ -0,0 +1,97 @@
1
+ :root {
2
+ --primary-text: #1E1F24;
3
+ --secondary-text: #62636C;
4
+ --divider: #D8D9E0;
5
+ --accent-text: #3D63DD;
6
+ --error: #D64545;
7
+ --warning: #C28A00;
8
+ --success: #2E8B57;
9
+ --secondary-background: #E7E8EC;
10
+ --background: #F9F9FB;
11
+ --accent-color: #3D63DD;
12
+ --accent-color-lighten: #87A5EF;
13
+ --accent-color-text: #D8D9E0;
14
+ --disabled: #D8D9E0;
15
+ }
16
+
17
+ [data-theme=dark] {
18
+ --primary-text: #EEEEF0;
19
+ --secondary-text: #B2B3BD;
20
+ --divider: #393A40;
21
+ --accent-text: #0E496D;
22
+ --error: #FF6B6B;
23
+ --warning: #F7B500;
24
+ --success: #5CC689;
25
+ --background: #111113;
26
+ --secondary-background: #19191B;
27
+ --accent-color: #1B7BB4;
28
+ --accent-color-lighten: #175982;
29
+ --accent-color-text: #B2B3BD;
30
+ --disabled: #303136;
31
+ }
32
+
33
+ .chat-container {
34
+ width: 100%;
35
+ display: flex;
36
+ flex-direction: column;
37
+ padding: 1rem;
38
+ gap: 10px;
39
+ }
40
+
41
+ .message {
42
+ max-width: 75%;
43
+ padding: 1rem 1.5rem;
44
+ border-radius: 8px;
45
+ position: relative;
46
+ line-height: 1.2rem;
47
+ color: var(--primary-text);
48
+ box-shadow: 0 1px 2px rgba(56, 65, 74, 0.15);
49
+ word-wrap: break-word;
50
+ }
51
+
52
+ /* Metadata (time) */
53
+ .message-meta {
54
+ display: block;
55
+ font-size: 0.8rem;
56
+ color: var(--primary-text);
57
+ text-align: right;
58
+ margin-top: 4px;
59
+ }
60
+
61
+ /* Incoming Message */
62
+ .message-incoming {
63
+ align-self: flex-start;
64
+ background-color: var(--background);
65
+ border-top-left-radius: 0;
66
+ }
67
+
68
+ .message-incoming::before {
69
+ content: "";
70
+ position: absolute;
71
+ top: 0;
72
+ left: -8px;
73
+ width: 0;
74
+ height: 0;
75
+ border: 8px solid transparent;
76
+ border-top-color: var(--secondary-background);
77
+ border-right: 0;
78
+ margin-top: 0px;
79
+ }
80
+
81
+ .message-outgoing {
82
+ align-self: flex-end;
83
+ background-color: var(--accent-color-lighten);
84
+ border-top-right-radius: 0;
85
+ }
86
+
87
+ .message-outgoing::after {
88
+ content: "";
89
+ position: absolute;
90
+ top: 0;
91
+ right: -8px;
92
+ width: 0;
93
+ height: 0;
94
+ border: 8px solid transparent;
95
+ border-top-color: var(--accent-color-lighten);
96
+ border-left: 0;
97
+ }/*# sourceMappingURL=chat-bubbles.css.map */
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["properties.scss","chat-bubbles.css","chat-bubbles.scss","parameters.scss"],"names":[],"mappings":"AAAA;EACE,uBAAA;EACA,yBAAA;EACA,kBAAA;EACA,sBAAA;EACA,gBAAA;EACA,kBAAA;EACA,kBAAA;EACA,+BAAA;EACA,qBAAA;EACA,uBAAA;EACA,+BAAA;EACA,4BAAA;EACA,mBAAA;ACCF;;ADEA;EACE,uBAAA;EACA,yBAAA;EACA,kBAAA;EACA,sBAAA;EACA,gBAAA;EACA,kBAAA;EACA,kBAAA;EACA,qBAAA;EACA,+BAAA;EACA,uBAAA;EACA,+BAAA;EACA,4BAAA;EACA,mBAAA;ACCF;;AC3BA;EACE,WAAA;EACA,aAAA;EACA,sBAAA;EACA,aCPQ;EDQR,SAAA;AD8BF;;AC3BA;EACE,cAAA;EACA,oBAAA;EACA,kBAAA;EACA,kBAAA;EACA,mBAAA;EACA,0BAAA;EACA,4CCfO;EDgBP,qBAAA;AD8BF;;AC3BA,oBAAA;AACA;EACE,cAAA;EACA,iBAAA;EACA,0BAAA;EACA,iBAAA;EACA,eAAA;AD8BF;;AC3BA,qBAAA;AACA;EACE,sBAAA;EACA,mCAAA;EACA,yBAAA;AD8BF;;AC3BA;EACE,WAAA;EACA,kBAAA;EACA,MAAA;EACA,UAAA;EACA,QAAA;EACA,SAAA;EACA,6BAAA;EACA,6CAAA;EACA,eAAA;EACA,eAAA;AD8BF;;AC3BA;EACE,oBAAA;EACA,6CAAA;EACA,0BAAA;AD8BF;;AC3BA;EACE,WAAA;EACA,kBAAA;EACA,MAAA;EACA,WAAA;EACA,QAAA;EACA,SAAA;EACA,6BAAA;EACA,6CAAA;EACA,cAAA;AD8BF","file":"chat-bubbles.css"}
@@ -0,0 +1,68 @@
1
+ @use "properties";
2
+ @use "parameters" as *;
3
+
4
+ .chat-container {
5
+ width: 100%;
6
+ display: flex;
7
+ flex-direction: column;
8
+ padding: $spacing;
9
+ gap: 10px;
10
+ }
11
+
12
+ .message {
13
+ max-width: 75%;
14
+ padding: $spacing calc($spacing * 1.5);
15
+ border-radius: 8px;
16
+ position: relative;
17
+ line-height: calc($spacing * 1.2);
18
+ color: var(--primary-text);
19
+ box-shadow: $shadow;
20
+ word-wrap: break-word;
21
+ }
22
+
23
+ /* Metadata (time) */
24
+ .message-meta {
25
+ display: block;
26
+ font-size: calc($spacing * 0.8);
27
+ color: var(--primary-text);
28
+ text-align: right;
29
+ margin-top: 4px;
30
+ }
31
+
32
+ /* Incoming Message */
33
+ .message-incoming {
34
+ align-self: flex-start;
35
+ background-color: var(--background);
36
+ border-top-left-radius: 0;
37
+ }
38
+
39
+ .message-incoming::before {
40
+ content: "";
41
+ position: absolute;
42
+ top: 0;
43
+ left: -8px;
44
+ width: 0;
45
+ height: 0;
46
+ border: 8px solid transparent;
47
+ border-top-color: var(--secondary-background);
48
+ border-right: 0;
49
+ margin-top: -0px;
50
+ }
51
+
52
+ .message-outgoing {
53
+ align-self: flex-end;
54
+ background-color: var(--accent-color-lighten);
55
+ border-top-right-radius: 0;
56
+ }
57
+
58
+ .message-outgoing::after {
59
+ content: "";
60
+ position: absolute;
61
+ top: 0;
62
+ right: -8px;
63
+ width: 0;
64
+ height: 0;
65
+ border: 8px solid transparent;
66
+ border-top-color: var(--accent-color-lighten);
67
+ border-left: 0;
68
+ }
@@ -0,0 +1,77 @@
1
+ :root {
2
+ --primary-text: #1E1F24;
3
+ --secondary-text: #62636C;
4
+ --divider: #D8D9E0;
5
+ --accent-text: #3D63DD;
6
+ --error: #D64545;
7
+ --warning: #C28A00;
8
+ --success: #2E8B57;
9
+ --secondary-background: #E7E8EC;
10
+ --background: #F9F9FB;
11
+ --accent-color: #3D63DD;
12
+ --accent-color-lighten: #87A5EF;
13
+ --accent-color-text: #D8D9E0;
14
+ --disabled: #D8D9E0;
15
+ }
16
+
17
+ [data-theme=dark] {
18
+ --primary-text: #EEEEF0;
19
+ --secondary-text: #B2B3BD;
20
+ --divider: #393A40;
21
+ --accent-text: #0E496D;
22
+ --error: #FF6B6B;
23
+ --warning: #F7B500;
24
+ --success: #5CC689;
25
+ --background: #111113;
26
+ --secondary-background: #19191B;
27
+ --accent-color: #1B7BB4;
28
+ --accent-color-lighten: #175982;
29
+ --accent-color-text: #B2B3BD;
30
+ --disabled: #303136;
31
+ }
32
+
33
+ .styled-checkbox {
34
+ position: absolute;
35
+ opacity: 0;
36
+ width: auto;
37
+ }
38
+ .styled-checkbox + label {
39
+ position: relative;
40
+ cursor: pointer;
41
+ padding: 0;
42
+ display: flex;
43
+ margin-bottom: 0.5rem;
44
+ }
45
+ .styled-checkbox + label:before {
46
+ content: "";
47
+ margin-right: 10px;
48
+ display: inline-block;
49
+ width: 1rem;
50
+ height: 1rem;
51
+ transition: border 0.3s;
52
+ border: 2px solid rgba(0, 0, 0, 0.25);
53
+ margin-top: 2px;
54
+ }
55
+ .styled-checkbox:hover + label:before {
56
+ border-color: rgba(0, 0, 0, 0.5);
57
+ }
58
+ .styled-checkbox:checked + label:before {
59
+ background: var(--accent-color);
60
+ }
61
+ .styled-checkbox:disabled + label {
62
+ color: var(--disabled);
63
+ cursor: auto;
64
+ }
65
+ .styled-checkbox:disabled + label:before {
66
+ box-shadow: none;
67
+ background: var(--disabled);
68
+ }
69
+ .styled-checkbox:checked + label:after {
70
+ content: url("../icons/checkmark-outline.svg");
71
+ filter: invert(100%) sepia(100%) saturate(2%) hue-rotate(180deg) brightness(101%) contrast(101%);
72
+ position: absolute;
73
+ left: 2px;
74
+ top: 2px;
75
+ width: 1rem;
76
+ height: 1rem;
77
+ }/*# sourceMappingURL=checkbox.css.map */
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["properties.scss","checkbox.css","checkbox.scss","parameters.scss"],"names":[],"mappings":"AAAA;EACE,uBAAA;EACA,yBAAA;EACA,kBAAA;EACA,sBAAA;EACA,gBAAA;EACA,kBAAA;EACA,kBAAA;EACA,+BAAA;EACA,qBAAA;EACA,uBAAA;EACA,+BAAA;EACA,4BAAA;EACA,mBAAA;ACCF;;ADEA;EACE,uBAAA;EACA,yBAAA;EACA,kBAAA;EACA,sBAAA;EACA,gBAAA;EACA,kBAAA;EACA,kBAAA;EACA,qBAAA;EACA,+BAAA;EACA,uBAAA;EACA,+BAAA;EACA,4BAAA;EACA,mBAAA;ACCF;;AC3BA;EACE,kBAAA;EACA,UAAA;EACA,WAAA;AD8BF;AC5BE;EACE,kBAAA;EACA,eAAA;EACA,UAAA;EACA,aAAA;EACA,qBAAA;AD8BJ;AC3BE;EACE,WAAA;EACA,kBAAA;EACA,qBAAA;EACA,WCpBM;EDqBN,YCrBM;EDsBN,uBAAA;EACA,qCAAA;EACA,eAAA;AD6BJ;AC1BE;EACE,gCAAA;AD4BJ;ACzBE;EACE,+BAAA;AD2BJ;ACxBE;EACE,sBAAA;EACA,YAAA;AD0BJ;ACvBE;EACE,gBAAA;EACA,2BAAA;ADyBJ;ACtBE;EACE,8CAAA;EACA,gGAAA;EACA,kBAAA;EACA,SAAA;EACA,QAAA;EACA,WCnDM;EDoDN,YCpDM;AF4EV","file":"checkbox.css"}
@@ -0,0 +1,55 @@
1
+ @use "properties";
2
+ @use "parameters" as *;
3
+
4
+ .styled-checkbox {
5
+ position: absolute;
6
+ opacity: 0;
7
+ width: auto;
8
+
9
+ & + label {
10
+ position: relative;
11
+ cursor: pointer;
12
+ padding: 0;
13
+ display: flex;
14
+ margin-bottom: calc($spacing / 2);
15
+ }
16
+
17
+ & + label::before {
18
+ content: '';
19
+ margin-right: 10px;
20
+ display: inline-block;
21
+ width: $spacing;
22
+ height: $spacing;
23
+ transition: border 0.3s;
24
+ border: 2px solid rgba(0, 0, 0, 0.25);
25
+ margin-top: 2px;
26
+ }
27
+
28
+ &:hover + label::before {
29
+ border-color: rgba(0, 0, 0, 0.5);
30
+ }
31
+
32
+ &:checked + label::before {
33
+ background: var(--accent-color);
34
+ }
35
+
36
+ &:disabled + label {
37
+ color: var(--disabled);
38
+ cursor: auto;
39
+ }
40
+
41
+ &:disabled + label::before {
42
+ box-shadow: none;
43
+ background: var(--disabled);
44
+ }
45
+
46
+ &:checked + label::after {
47
+ content: url("../icons/checkmark-outline.svg");
48
+ filter: invert(100%) sepia(100%) saturate(2%) hue-rotate(180deg) brightness(101%) contrast(101%);
49
+ position: absolute;
50
+ left: 2px;
51
+ top: 2px;
52
+ width: $spacing;
53
+ height: $spacing;
54
+ }
55
+ }