@getmicdrop/svelte-components 5.21.0 → 5.21.2

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/dist/calendar/AboutShow/AboutShow.spec.js +10 -10
  2. package/dist/calendar/AboutShow/AboutShow.svelte +191 -191
  3. package/dist/calendar/Calendar/MiniMonthCalendar.spec.js +9 -8
  4. package/dist/calendar/Calendar/MiniMonthCalendar.svelte +800 -803
  5. package/dist/calendar/Calendar/MiniMonthCalendar.svelte.d.ts.map +1 -1
  6. package/dist/calendar/FAQs/FAQs.spec.js +6 -6
  7. package/dist/calendar/FAQs/FAQs.svelte +88 -88
  8. package/dist/calendar/MonthSwitcher/MonthSwitcher.svelte +136 -140
  9. package/dist/calendar/OrderSummary/OrderSummary.svelte +461 -461
  10. package/dist/calendar/PublicCard/PublicCard.spec.js +3 -3
  11. package/dist/calendar/PublicCard/PublicCard.svelte +164 -164
  12. package/dist/calendar/ShowCard/ShowCard.spec.js +8 -8
  13. package/dist/calendar/ShowCard/ShowCard.svelte +180 -180
  14. package/dist/calendar/ShowTimeCard/ShowTimeCard.spec.js +4 -4
  15. package/dist/calendar/ShowTimeCard/ShowTimeCard.svelte +80 -80
  16. package/dist/calendar/index.js +15 -15
  17. package/dist/components/Heading.spec.js +89 -89
  18. package/dist/components/Heading.svelte +66 -66
  19. package/dist/components/Layout/AppShell.svelte +104 -104
  20. package/dist/components/Layout/ContentSection.svelte +80 -80
  21. package/dist/components/Layout/Grid.svelte +101 -101
  22. package/dist/components/Layout/Heading.svelte +81 -81
  23. package/dist/components/Layout/PageContainer.svelte +69 -69
  24. package/dist/components/Layout/Responsive.svelte +75 -75
  25. package/dist/components/Layout/Section.spec.js +4 -4
  26. package/dist/components/Layout/Section.svelte +80 -80
  27. package/dist/components/Layout/ShowOnDesktop.svelte +37 -37
  28. package/dist/components/Layout/ShowOnMobile.svelte +37 -37
  29. package/dist/components/Layout/Sidebar.svelte +108 -108
  30. package/dist/components/Layout/Stack.spec.js +1 -1
  31. package/dist/components/Layout/Stack.svelte +52 -52
  32. package/dist/components/Layout/Text.svelte +87 -87
  33. package/dist/components/Layout/TwoColumn.svelte +108 -108
  34. package/dist/components/Layout/__tests__/AppShell.test.js +5 -5
  35. package/dist/components/Layout/__tests__/ContentSection.test.js +1 -1
  36. package/dist/components/Layout/__tests__/Heading.test.js +3 -3
  37. package/dist/components/Layout/__tests__/PageContainer.test.js +4 -4
  38. package/dist/components/Layout/__tests__/Text.test.js +9 -9
  39. package/dist/components/Text.spec.js +89 -89
  40. package/dist/components/Text.svelte +64 -64
  41. package/dist/config.js +160 -160
  42. package/dist/config.spec.js +29 -29
  43. package/dist/constants/formOptions.js +48 -48
  44. package/dist/constants/validation.js +91 -91
  45. package/dist/constants/validation.spec.js +64 -64
  46. package/dist/datetime/README.md +323 -323
  47. package/dist/datetime/__tests__/format.test.js +1 -1
  48. package/dist/datetime/__tests__/parse.test.js +1 -1
  49. package/dist/datetime/__tests__/timezone.test.js +1 -1
  50. package/dist/datetime/parse.js +1 -1
  51. package/dist/forms/createFormStore.svelte.js +1 -0
  52. package/dist/forms/createFormStore.svelte.spec.js +1 -0
  53. package/dist/index.js +85 -85
  54. package/dist/index.spec.js +369 -369
  55. package/dist/patterns/chat/ChatActivityNotice.spec.js +59 -59
  56. package/dist/patterns/chat/ChatActivityNotice.svelte +41 -41
  57. package/dist/patterns/chat/ChatBubble.spec.js +91 -91
  58. package/dist/patterns/chat/ChatBubble.svelte +103 -103
  59. package/dist/patterns/chat/ChatContainer.spec.js +30 -30
  60. package/dist/patterns/chat/ChatContainer.svelte +46 -46
  61. package/dist/patterns/chat/ChatDateDivider.spec.js +30 -30
  62. package/dist/patterns/chat/ChatDateDivider.svelte +27 -27
  63. package/dist/patterns/chat/ChatInvitationBubble.spec.js +46 -46
  64. package/dist/patterns/chat/ChatInvitationBubble.svelte +46 -46
  65. package/dist/patterns/chat/ChatInvitationNotice.spec.js +32 -32
  66. package/dist/patterns/chat/ChatInvitationNotice.svelte +36 -36
  67. package/dist/patterns/chat/ChatMessageGroup.spec.js +58 -58
  68. package/dist/patterns/chat/ChatMessageGroup.svelte +57 -57
  69. package/dist/patterns/chat/ChatSlotUpdate.spec.js +65 -65
  70. package/dist/patterns/chat/ChatSlotUpdate.svelte +46 -46
  71. package/dist/patterns/chat/ChatStatusBadge.spec.js +79 -79
  72. package/dist/patterns/chat/ChatStatusBadge.svelte +91 -91
  73. package/dist/patterns/chat/ChatStatusTransition.spec.js +81 -81
  74. package/dist/patterns/chat/ChatStatusTransition.svelte +64 -64
  75. package/dist/patterns/chat/ChatTextBubble.spec.js +35 -35
  76. package/dist/patterns/chat/ChatTextBubble.svelte +41 -41
  77. package/dist/patterns/chat/index.js +22 -22
  78. package/dist/patterns/data/DataGrid.svelte +45 -45
  79. package/dist/patterns/data/DataList.spec.js +5 -5
  80. package/dist/patterns/data/DataList.svelte +24 -24
  81. package/dist/patterns/data/DataTable.spec.js +18 -18
  82. package/dist/patterns/data/DataTable.svelte +45 -45
  83. package/dist/patterns/data/index.js +4 -4
  84. package/dist/patterns/forms/FormActions.spec.js +95 -95
  85. package/dist/patterns/forms/FormActions.stories.svelte +97 -97
  86. package/dist/patterns/forms/FormActions.svelte +46 -46
  87. package/dist/patterns/forms/FormGrid.svelte +33 -33
  88. package/dist/patterns/forms/FormSection.spec.js +4 -4
  89. package/dist/patterns/forms/FormSection.svelte +33 -33
  90. package/dist/patterns/forms/FormValidationSummary.spec.js +2 -2
  91. package/dist/patterns/forms/FormValidationSummary.stories.svelte +97 -97
  92. package/dist/patterns/forms/FormValidationSummary.svelte +82 -82
  93. package/dist/patterns/forms/index.js +5 -5
  94. package/dist/patterns/index.js +21 -21
  95. package/dist/patterns/layout/Sidebar.svelte +39 -39
  96. package/dist/patterns/layout/SidebarTestWrapper.svelte +34 -34
  97. package/dist/patterns/layout/Stack.svelte +61 -61
  98. package/dist/patterns/layout/index.js +29 -29
  99. package/dist/patterns/navigation/BottomNav.stories.svelte +117 -117
  100. package/dist/patterns/navigation/BottomNav.svelte +82 -82
  101. package/dist/patterns/navigation/Header.spec.js +9 -9
  102. package/dist/patterns/navigation/Header.stories.svelte +77 -77
  103. package/dist/patterns/navigation/Header.svelte +261 -263
  104. package/dist/patterns/navigation/Header.svelte.d.ts.map +1 -1
  105. package/dist/patterns/navigation/index.js +3 -3
  106. package/dist/patterns/page/PageHeader.svelte +49 -49
  107. package/dist/patterns/page/PageLayout.spec.js +5 -5
  108. package/dist/patterns/page/PageLayout.svelte +40 -40
  109. package/dist/patterns/page/PageLoader.spec.js +57 -57
  110. package/dist/patterns/page/PageLoader.stories.svelte +137 -137
  111. package/dist/patterns/page/PageLoader.svelte +62 -62
  112. package/dist/patterns/page/SectionHeader.spec.js +8 -8
  113. package/dist/patterns/page/SectionHeader.svelte +51 -51
  114. package/dist/patterns/page/index.js +5 -5
  115. package/dist/presets/badges.js +112 -112
  116. package/dist/presets/buttons.js +76 -76
  117. package/dist/presets/buttons.spec.js +4 -4
  118. package/dist/presets/index.js +9 -9
  119. package/dist/primitives/Accordion/Accordion.spec.js +5 -5
  120. package/dist/primitives/Accordion/Accordion.stories.svelte +75 -75
  121. package/dist/primitives/Accordion/Accordion.svelte +62 -62
  122. package/dist/primitives/Accordion/AccordionItem.spec.js +19 -28
  123. package/dist/primitives/Accordion/AccordionItem.svelte +103 -103
  124. package/dist/primitives/Accordion/AccordionItemWrapper.test.svelte +107 -107
  125. package/dist/primitives/Accordion/AccordionToggleWrapper.test.svelte +28 -28
  126. package/dist/primitives/Alert/Alert.spec.js +173 -173
  127. package/dist/primitives/Alert/Alert.stories.svelte +88 -88
  128. package/dist/primitives/Alert/Alert.svelte +72 -72
  129. package/dist/primitives/Avatar/Avatar.spec.js +11 -11
  130. package/dist/primitives/Avatar/Avatar.stories.svelte +95 -94
  131. package/dist/primitives/Avatar/Avatar.stories.svelte.d.ts.map +1 -1
  132. package/dist/primitives/Avatar/Avatar.svelte +66 -66
  133. package/dist/primitives/AvatarButton/AvatarButton.svelte +57 -57
  134. package/dist/primitives/Badges/Badge.spec.js +144 -144
  135. package/dist/primitives/Badges/Badge.stories.svelte +86 -86
  136. package/dist/primitives/Badges/Badge.svelte +99 -99
  137. package/dist/primitives/BottomSheet/BottomSheet.spec.js +238 -238
  138. package/dist/primitives/BottomSheet/BottomSheet.stories.svelte +83 -83
  139. package/dist/primitives/BottomSheet/BottomSheet.svelte +115 -115
  140. package/dist/primitives/BottomSheet/BottomSheetWithActions.test.svelte +20 -20
  141. package/dist/primitives/Breadcrumb/Breadcrumb.spec.js +125 -123
  142. package/dist/primitives/Breadcrumb/Breadcrumb.stories.svelte +23 -23
  143. package/dist/primitives/Breadcrumb/Breadcrumb.svelte +107 -107
  144. package/dist/primitives/Button/Button.spec.js +225 -225
  145. package/dist/primitives/Button/Button.stories.svelte +76 -76
  146. package/dist/primitives/Button/Button.svelte +278 -278
  147. package/dist/primitives/Button/ButtonGroup.spec.js +44 -44
  148. package/dist/primitives/Button/ButtonGroup.svelte +50 -50
  149. package/dist/primitives/Button/ButtonSaveDemo.spec.js +146 -146
  150. package/dist/primitives/Button/ButtonSaveDemo.svelte +25 -25
  151. package/dist/primitives/Button/ButtonVariantShowcase.spec.js +1 -1
  152. package/dist/primitives/Button/ButtonVariantShowcase.svelte +129 -129
  153. package/dist/primitives/Card.spec.js +49 -49
  154. package/dist/primitives/Card.stories.svelte +22 -22
  155. package/dist/primitives/Card.svelte +28 -28
  156. package/dist/primitives/CardAction/CardAction.svelte +68 -68
  157. package/dist/primitives/Checkbox/Checkbox.spec.js +16 -16
  158. package/dist/primitives/Checkbox/Checkbox.stories.svelte +84 -84
  159. package/dist/primitives/Checkbox/Checkbox.svelte +88 -88
  160. package/dist/primitives/DarkModeToggle.spec.js +390 -390
  161. package/dist/primitives/DarkModeToggle.stories.svelte +57 -57
  162. package/dist/primitives/DarkModeToggle.svelte +147 -147
  163. package/dist/primitives/Drawer/Drawer.spec.js +4 -4
  164. package/dist/primitives/Drawer/Drawer.stories.svelte +100 -100
  165. package/dist/primitives/Drawer/Drawer.svelte +224 -224
  166. package/dist/primitives/Drawer/DrawerTestWrapper.svelte +86 -86
  167. package/dist/primitives/Dropdown/Dropdown.spec.js +9 -9
  168. package/dist/primitives/Dropdown/Dropdown.stories.svelte +137 -137
  169. package/dist/primitives/Dropdown/Dropdown.svelte +179 -179
  170. package/dist/primitives/Dropdown/DropdownDivider.spec.js +30 -30
  171. package/dist/primitives/Dropdown/DropdownDivider.svelte +9 -9
  172. package/dist/primitives/Dropdown/DropdownItem.spec.js +8 -15
  173. package/dist/primitives/Dropdown/DropdownItem.svelte +80 -80
  174. package/dist/primitives/Dropdown/DropdownItemTestWrapper.svelte +43 -43
  175. package/dist/primitives/Helper/Helper.spec.js +57 -57
  176. package/dist/primitives/Helper/Helper.svelte +33 -33
  177. package/dist/primitives/Icons/ArrowLeft.svelte +21 -21
  178. package/dist/primitives/Icons/ArrowRight.svelte +21 -21
  179. package/dist/primitives/Icons/Availability.svelte +27 -27
  180. package/dist/primitives/Icons/Back.svelte +27 -27
  181. package/dist/primitives/Icons/CheckCircle.svelte +19 -19
  182. package/dist/primitives/Icons/CheckCircleOutline.svelte +28 -28
  183. package/dist/primitives/Icons/ChevronLeft.svelte +17 -17
  184. package/dist/primitives/Icons/ChevronRight.svelte +17 -17
  185. package/dist/primitives/Icons/Copy.svelte +28 -28
  186. package/dist/primitives/Icons/Cross.svelte +18 -18
  187. package/dist/primitives/Icons/DownArrow.svelte +21 -21
  188. package/dist/primitives/Icons/ErrorCircle.svelte +19 -19
  189. package/dist/primitives/Icons/FacebookIcon.svelte +15 -15
  190. package/dist/primitives/Icons/Home.svelte +28 -28
  191. package/dist/primitives/Icons/Icon.spec.js +175 -175
  192. package/dist/primitives/Icons/Icon.stories.svelte +100 -100
  193. package/dist/primitives/Icons/Icon.svelte +79 -79
  194. package/dist/primitives/Icons/IconGallery.stories.svelte +235 -235
  195. package/dist/primitives/Icons/Icons.spec.js +3 -3
  196. package/dist/primitives/Icons/ImageOutline.svelte +21 -21
  197. package/dist/primitives/Icons/Info.svelte +20 -20
  198. package/dist/primitives/Icons/InstagramIcon.svelte +21 -21
  199. package/dist/primitives/Icons/LogoInstagram.svelte +15 -15
  200. package/dist/primitives/Icons/Message.svelte +28 -28
  201. package/dist/primitives/Icons/MoonIcon.svelte +18 -18
  202. package/dist/primitives/Icons/More.svelte +34 -34
  203. package/dist/primitives/Icons/MoreHori.spec.js +67 -67
  204. package/dist/primitives/Icons/MoreHori.svelte +35 -35
  205. package/dist/primitives/Icons/Notification.svelte +27 -27
  206. package/dist/primitives/Icons/Payment.svelte +27 -27
  207. package/dist/primitives/Icons/Profile.svelte +34 -34
  208. package/dist/primitives/Icons/Reload.svelte +42 -42
  209. package/dist/primitives/Icons/Shows.svelte +34 -34
  210. package/dist/primitives/Icons/Signout.svelte +34 -34
  211. package/dist/primitives/Icons/SunIcon.svelte +21 -21
  212. package/dist/primitives/Icons/TiktokIcon.svelte +15 -15
  213. package/dist/primitives/Icons/TrashBinOutline.svelte +21 -21
  214. package/dist/primitives/Icons/TwitterIcon.svelte +15 -15
  215. package/dist/primitives/Icons/WarningIcon.spec.js +30 -30
  216. package/dist/primitives/Icons/WarningIcon.svelte +24 -24
  217. package/dist/primitives/Input/Input.spec.js +1237 -1237
  218. package/dist/primitives/Input/Input.stories.svelte +139 -139
  219. package/dist/primitives/Input/Input.svelte +444 -444
  220. package/dist/primitives/Input/Select.spec.js +632 -632
  221. package/dist/primitives/Input/Select.stories.svelte +112 -112
  222. package/dist/primitives/Input/Select.svelte +252 -252
  223. package/dist/primitives/Input/Textarea.spec.js +8 -8
  224. package/dist/primitives/Input/Textarea.stories.svelte +137 -137
  225. package/dist/primitives/Input/Textarea.svelte +105 -105
  226. package/dist/primitives/Label/Label.spec.js +20 -21
  227. package/dist/primitives/Label/Label.svelte +37 -37
  228. package/dist/primitives/LandingButton/LandingButton.spec.js +61 -61
  229. package/dist/primitives/LandingButton/LandingButton.svelte +92 -92
  230. package/dist/primitives/MenuItem/MenuItem.spec.js +130 -130
  231. package/dist/primitives/MenuItem/MenuItem.svelte +85 -85
  232. package/dist/primitives/Modal/Modal.spec.js +314 -314
  233. package/dist/primitives/Modal/Modal.stories.svelte +86 -86
  234. package/dist/primitives/Modal/Modal.svelte +181 -181
  235. package/dist/primitives/NavItem/NavItem.spec.js +97 -97
  236. package/dist/primitives/NavItem/NavItem.svelte +75 -75
  237. package/dist/primitives/NumberInput/NumberInput.spec.js +17 -17
  238. package/dist/primitives/NumberInput/NumberInput.svelte +113 -113
  239. package/dist/primitives/Pagination/DotIndicator.svelte +66 -66
  240. package/dist/primitives/Pagination/Pagination.spec.js +6 -6
  241. package/dist/primitives/Pagination/Pagination.stories.svelte +76 -76
  242. package/dist/primitives/Pagination/Pagination.svelte +275 -275
  243. package/dist/primitives/Radio/Radio.spec.js +19 -19
  244. package/dist/primitives/Radio/Radio.stories.svelte +80 -80
  245. package/dist/primitives/Radio/Radio.svelte +67 -67
  246. package/dist/primitives/SearchResultItem/SearchResultItem.spec.js +78 -78
  247. package/dist/primitives/SearchResultItem/SearchResultItem.svelte +109 -109
  248. package/dist/primitives/SidebarToggle/SidebarToggle.spec.js +61 -61
  249. package/dist/primitives/SidebarToggle/SidebarToggle.svelte +55 -55
  250. package/dist/primitives/Skeleton/CardPlaceholder.spec.js +1 -1
  251. package/dist/primitives/Skeleton/CardPlaceholder.svelte +96 -96
  252. package/dist/primitives/Skeleton/ImagePlaceholder.spec.js +2 -2
  253. package/dist/primitives/Skeleton/ImagePlaceholder.svelte +68 -68
  254. package/dist/primitives/Skeleton/ListPlaceholder.spec.js +2 -2
  255. package/dist/primitives/Skeleton/ListPlaceholder.svelte +85 -85
  256. package/dist/primitives/Skeleton/Skeleton.spec.js +7 -7
  257. package/dist/primitives/Skeleton/Skeleton.stories.svelte +151 -151
  258. package/dist/primitives/Skeleton/Skeleton.svelte +55 -55
  259. package/dist/primitives/Spinner/Spinner.spec.js +83 -84
  260. package/dist/primitives/Spinner/Spinner.stories.svelte +29 -29
  261. package/dist/primitives/Spinner/Spinner.svelte +52 -52
  262. package/dist/primitives/Tabs/TabItem.svelte +52 -52
  263. package/dist/primitives/Tabs/Tabs.spec.js +14 -14
  264. package/dist/primitives/Tabs/Tabs.stories.svelte +112 -112
  265. package/dist/primitives/Tabs/Tabs.svelte +137 -137
  266. package/dist/primitives/Toggle.spec.js +219 -221
  267. package/dist/primitives/Toggle.stories.svelte +92 -92
  268. package/dist/primitives/Toggle.svelte +141 -141
  269. package/dist/primitives/ToggleTestWrapper.svelte +30 -30
  270. package/dist/primitives/Tooltip/Tooltip.spec.js +126 -126
  271. package/dist/primitives/Tooltip/Tooltip.svelte +83 -83
  272. package/dist/primitives/Typography/Typography.svelte +53 -53
  273. package/dist/primitives/ValidationError.spec.js +103 -103
  274. package/dist/primitives/ValidationError.stories.svelte +112 -112
  275. package/dist/primitives/ValidationError.svelte +29 -29
  276. package/dist/primitives/index.js +114 -114
  277. package/dist/recipes/CropImage/CropImage.spec.js +208 -208
  278. package/dist/recipes/CropImage/CropImage.stories.svelte +104 -104
  279. package/dist/recipes/CropImage/CropImage.svelte +241 -241
  280. package/dist/recipes/ImageUploader/ImageUploader.spec.js +1 -1
  281. package/dist/recipes/ImageUploader/ImageUploader.stories.svelte +125 -125
  282. package/dist/recipes/ImageUploader/ImageUploader.svelte +972 -994
  283. package/dist/recipes/SuperLogin/SuperLogin.svelte +24 -24
  284. package/dist/recipes/Toaster/Toaster.stories.svelte +62 -62
  285. package/dist/recipes/feedback/EmptyState/EmptyState.svelte +75 -75
  286. package/dist/recipes/feedback/ErrorDisplay.spec.js +69 -69
  287. package/dist/recipes/feedback/ErrorDisplay.stories.svelte +113 -113
  288. package/dist/recipes/feedback/ErrorDisplay.svelte +67 -67
  289. package/dist/recipes/feedback/StatusIndicator/StatusIndicator.spec.js +133 -133
  290. package/dist/recipes/feedback/StatusIndicator/StatusIndicator.svelte +176 -176
  291. package/dist/recipes/feedback/index.js +4 -4
  292. package/dist/recipes/fields/CheckboxField.spec.js +2 -2
  293. package/dist/recipes/fields/CheckboxField.svelte +85 -85
  294. package/dist/recipes/fields/FormField.spec.js +4 -4
  295. package/dist/recipes/fields/FormField.svelte +58 -58
  296. package/dist/recipes/fields/RadioGroup.spec.js +1 -1
  297. package/dist/recipes/fields/RadioGroup.svelte +95 -95
  298. package/dist/recipes/fields/SelectField.spec.js +2 -2
  299. package/dist/recipes/fields/SelectField.svelte +82 -82
  300. package/dist/recipes/fields/TextareaField.spec.js +2 -2
  301. package/dist/recipes/fields/TextareaField.svelte +101 -101
  302. package/dist/recipes/fields/ToggleField.spec.js +2 -2
  303. package/dist/recipes/fields/ToggleField.svelte +60 -60
  304. package/dist/recipes/fields/index.js +7 -7
  305. package/dist/recipes/index.js +24 -24
  306. package/dist/recipes/inputs/MultiSelect.spec.js +263 -263
  307. package/dist/recipes/inputs/MultiSelect.stories.svelte +133 -133
  308. package/dist/recipes/inputs/MultiSelect.svelte +291 -291
  309. package/dist/recipes/inputs/OTPInput.spec.js +251 -251
  310. package/dist/recipes/inputs/OTPInput.stories.svelte +162 -162
  311. package/dist/recipes/inputs/OTPInput.svelte +128 -128
  312. package/dist/recipes/inputs/PasswordInput.spec.js +2 -2
  313. package/dist/recipes/inputs/PasswordInput.svelte +130 -130
  314. package/dist/recipes/inputs/PasswordStrengthIndicator/PasswordStrengthIndicator.spec.js +14 -14
  315. package/dist/recipes/inputs/PasswordStrengthIndicator/PasswordStrengthIndicator.svelte +142 -142
  316. package/dist/recipes/inputs/PasswordStrengthIndicator/TestWrapper.svelte +2 -2
  317. package/dist/recipes/inputs/PhoneInput.svelte +254 -254
  318. package/dist/recipes/inputs/PlaceAutocomplete/PlaceAutocomplete.spec.js +10 -10
  319. package/dist/recipes/inputs/PlaceAutocomplete/PlaceAutocomplete.stories.svelte +170 -170
  320. package/dist/recipes/inputs/PlaceAutocomplete/PlaceAutocomplete.svelte +346 -349
  321. package/dist/recipes/inputs/PlaceAutocomplete/PlaceAutocomplete.svelte.d.ts.map +1 -1
  322. package/dist/recipes/inputs/Search.spec.js +3 -3
  323. package/dist/recipes/inputs/Search.svelte +110 -110
  324. package/dist/recipes/inputs/index.js +8 -8
  325. package/dist/recipes/inputs/phoneInput/CountrySelector.svelte +240 -240
  326. package/dist/recipes/modals/AlertModal.spec.js +36 -36
  327. package/dist/recipes/modals/AlertModal.svelte +139 -139
  328. package/dist/recipes/modals/ConfirmationModal.spec.js +396 -396
  329. package/dist/recipes/modals/ConfirmationModal.stories.svelte +119 -119
  330. package/dist/recipes/modals/ConfirmationModal.svelte +169 -169
  331. package/dist/recipes/modals/FeedbackModal.svelte +205 -205
  332. package/dist/recipes/modals/InputModal.spec.js +17 -17
  333. package/dist/recipes/modals/InputModal.svelte +194 -194
  334. package/dist/recipes/modals/ModalStateManager.spec.js +100 -100
  335. package/dist/recipes/modals/ModalStateManager.svelte +77 -77
  336. package/dist/recipes/modals/ModalTestWrapper.svelte +65 -65
  337. package/dist/recipes/modals/StatusModal.spec.js +7 -7
  338. package/dist/recipes/modals/StatusModal.svelte +216 -216
  339. package/dist/recipes/modals/index.js +8 -8
  340. package/dist/schemas/__tests__/order.test.js +1 -1
  341. package/dist/schemas/auth.d.ts +107 -17
  342. package/dist/schemas/auth.d.ts.map +1 -1
  343. package/dist/schemas/common.d.ts +41 -13
  344. package/dist/schemas/common.d.ts.map +1 -1
  345. package/dist/schemas/common.js +1 -1
  346. package/dist/schemas/event.d.ts +147 -41
  347. package/dist/schemas/event.d.ts.map +1 -1
  348. package/dist/schemas/event.js +1 -1
  349. package/dist/schemas/order.d.ts +208 -51
  350. package/dist/schemas/order.d.ts.map +1 -1
  351. package/dist/schemas/order.js +1 -0
  352. package/dist/schemas/performer.d.ts +199 -44
  353. package/dist/schemas/performer.d.ts.map +1 -1
  354. package/dist/schemas/performer.js +1 -1
  355. package/dist/schemas/promo.d.ts +221 -55
  356. package/dist/schemas/promo.d.ts.map +1 -1
  357. package/dist/schemas/promo.js +2 -2
  358. package/dist/schemas/ticket.d.ts +187 -61
  359. package/dist/schemas/ticket.d.ts.map +1 -1
  360. package/dist/schemas/ticket.js +1 -1
  361. package/dist/schemas/user.d.ts +114 -54
  362. package/dist/schemas/user.d.ts.map +1 -1
  363. package/dist/schemas/user.js +2 -1
  364. package/dist/schemas/venue.d.ts +238 -20
  365. package/dist/schemas/venue.d.ts.map +1 -1
  366. package/dist/services/show.service.d.ts +46 -46
  367. package/dist/stores/auth.d.ts +8 -8
  368. package/dist/stores/auth.svelte.spec.js +1 -1
  369. package/dist/stores/index.js +9 -9
  370. package/dist/stores/toaster.d.ts +3 -3
  371. package/dist/stores/toaster.js +13 -13
  372. package/dist/stores/toaster.spec.js +59 -59
  373. package/dist/stories/ButtonAuditDashboard.spec.js +12 -12
  374. package/dist/stories/ButtonAuditDashboard.svelte +55 -55
  375. package/dist/stories/ButtonAuditReview.spec.js +8 -8
  376. package/dist/stories/ButtonAuditReview.stories.svelte +14 -14
  377. package/dist/stories/ButtonAuditReview.svelte +427 -427
  378. package/dist/stories/ButtonGridView.spec.js +27 -27
  379. package/dist/stories/ButtonGridView.svelte +22 -22
  380. package/dist/stories/ButtonShowcase.spec.js +4 -4
  381. package/dist/stories/ButtonShowcase.svelte +119 -119
  382. package/dist/stories/ComponentConsolidation.stories.svelte +453 -453
  383. package/dist/stories/DesignSystemAudit.stories.svelte +127 -127
  384. package/dist/stories/PatternsGallery.spec.js +3 -3
  385. package/dist/stories/PatternsGallery.stories.svelte +19 -19
  386. package/dist/stories/PatternsGallery.svelte +399 -399
  387. package/dist/stories/PrimitivesGallery.spec.js +9 -9
  388. package/dist/stories/PrimitivesGallery.stories.svelte +19 -19
  389. package/dist/stories/PrimitivesGallery.svelte +756 -756
  390. package/dist/stories/RecipesGallery.stories.svelte +19 -19
  391. package/dist/stories/RecipesGallery.svelte +454 -454
  392. package/dist/stories/button-audit-manifest.json +11186 -11186
  393. package/dist/tailwind/preset.cjs +107 -87
  394. package/dist/tailwind/preset.d.cts +16 -0
  395. package/dist/tailwind/preset.d.cts.map +1 -1
  396. package/dist/telemetry.js +401 -401
  397. package/dist/telemetry.server.js +212 -212
  398. package/dist/telemetry.server.spec.js +437 -437
  399. package/dist/telemetry.spec.js +1273 -1273
  400. package/dist/tokens/__tests__/typography-base.test.js +5 -5
  401. package/dist/tokens/__tests__/typography.test.js +32 -36
  402. package/dist/tokens/__tests__/variants.test.js +63 -78
  403. package/dist/tokens/tokens.css +123 -87
  404. package/dist/tokens/typography-base.css +163 -163
  405. package/dist/tokens/typography.d.ts +29 -29
  406. package/dist/tokens/typography.js +29 -29
  407. package/dist/tokens/utilities.css +418 -430
  408. package/dist/tokens/variants.d.ts +32 -32
  409. package/dist/tokens/variants.js +32 -32
  410. package/dist/utils/__tests__/auth.test.js +431 -431
  411. package/dist/utils/apiConfig.d.ts +29 -29
  412. package/dist/utils/apiConfig.js +142 -142
  413. package/dist/utils/auth.d.ts +46 -46
  414. package/dist/utils/auth.js +195 -195
  415. package/dist/utils/greetings.js +187 -187
  416. package/dist/utils/greetings.spec.js +337 -337
  417. package/dist/utils/haptic.spec.js +1 -1
  418. package/dist/utils/imageValidation.js +121 -121
  419. package/dist/utils/imageValidation.spec.js +223 -223
  420. package/dist/utils/portal.d.ts +11 -11
  421. package/dist/utils/portal.js +25 -25
  422. package/dist/utils/portal.spec.js +143 -143
  423. package/dist/utils/transitions.js +16 -16
  424. package/dist/utils/utils/utils.d.ts +2 -2
  425. package/dist/utils/utils/utils.js +3 -3
  426. package/dist/utils/utils/utils.spec.js +698 -698
  427. package/dist/utils/utils.d.ts +41 -41
  428. package/dist/utils/utils.js +59 -59
  429. package/dist/utils/utils.spec.js +643 -643
  430. package/package.json +306 -306
@@ -15,24 +15,24 @@
15
15
 
16
16
  <Story name="Overview">
17
17
  <div class="space-y-8">
18
- <div class="bg-blue-50 dark:bg-blue-900/20 rounded-lg p-6">
19
- <h1 class="text-2xl font-bold text-gray-900 dark:text-white mb-4">Component Consolidation Audit</h1>
20
- <p class="text-gray-700 dark:text-gray-300">
18
+ <div class="bg-status-info-bg rounded-lg p-6">
19
+ <h1 class="text-2xl font-bold text-text-primary mb-4">Component Consolidation Audit</h1>
20
+ <p class="text-text-secondary">
21
21
  This audit documents raw native HTML elements across all Micdrop repositories that should be using
22
- shared components from <code class="bg-gray-200 dark:bg-gray-700 px-1 rounded">@getmicdrop/svelte-components</code>.
22
+ shared components from <code class="bg-bg-tertiary px-1 rounded">@getmicdrop/svelte-components</code>.
23
23
  </p>
24
- <p class="text-gray-600 dark:text-gray-400 mt-2 text-sm">
24
+ <p class="text-text-secondary mt-2 text-sm">
25
25
  <strong>Goal:</strong> Eliminate raw native elements in consumer repos, consolidate duplicates within this library,
26
26
  and ensure consistent UI across all Micdrop applications.
27
27
  </p>
28
28
  </div>
29
29
 
30
30
  <!-- Architecture Overview -->
31
- <div class="bg-gray-100 dark:bg-gray-800 rounded-lg p-6">
32
- <h2 class="text-xl font-bold text-gray-900 dark:text-white mb-4">Repository Architecture</h2>
31
+ <div class="bg-muted rounded-lg p-6">
32
+ <h2 class="text-xl font-bold text-text-primary mb-4">Repository Architecture</h2>
33
33
 
34
- <div class="bg-white dark:bg-gray-900 rounded-lg p-4 mb-4">
35
- <pre class="text-sm text-gray-700 dark:text-gray-300 overflow-x-auto">
34
+ <div class="bg-card rounded-lg p-4 mb-4">
35
+ <pre class="text-sm text-text-secondary overflow-x-auto">
36
36
  ┌─────────────────────────────────────────────────────────────────┐
37
37
  │ @getmicdrop/svelte-components │
38
38
  │ (NPM Package v5.2.1) │
@@ -56,78 +56,78 @@
56
56
  </div>
57
57
 
58
58
  <div class="grid md:grid-cols-3 gap-4 text-sm">
59
- <div class="bg-blue-50 dark:bg-blue-900/20 p-3 rounded">
60
- <h4 class="font-semibold text-blue-800 dark:text-blue-300">svelte-components</h4>
61
- <p class="text-blue-700 dark:text-blue-400">Source of truth. Has Storybook. All shared components live here.</p>
59
+ <div class="bg-status-info-bg p-3 rounded">
60
+ <h4 class="font-semibold text-status-info-text">svelte-components</h4>
61
+ <p class="text-brand-primary">Source of truth. Has Storybook. All shared components live here.</p>
62
62
  </div>
63
- <div class="bg-green-50 dark:bg-green-900/20 p-3 rounded">
64
- <h4 class="font-semibold text-green-800 dark:text-green-300">Consumer Repos</h4>
65
- <p class="text-green-700 dark:text-green-400">Import via NPM. Should NOT have local UI components.</p>
63
+ <div class="bg-status-success-bg p-3 rounded">
64
+ <h4 class="font-semibold text-status-success-text">Consumer Repos</h4>
65
+ <p class="text-status-success-text">Import via NPM. Should NOT have local UI components.</p>
66
66
  </div>
67
- <div class="bg-amber-50 dark:bg-amber-900/20 p-3 rounded">
68
- <h4 class="font-semibold text-amber-800 dark:text-amber-300">venue-calendar-npm</h4>
69
- <p class="text-amber-700 dark:text-amber-400">Embedded in calendar/. Needs separate handling.</p>
67
+ <div class="bg-status-warning-bg p-3 rounded">
68
+ <h4 class="font-semibold text-accent-warning">venue-calendar-npm</h4>
69
+ <p class="text-accent-warning">Embedded in calendar/. Needs separate handling.</p>
70
70
  </div>
71
71
  </div>
72
72
  </div>
73
73
 
74
74
  <!-- Summary Statistics -->
75
- <div class="bg-red-50 dark:bg-red-900/20 rounded-lg p-6">
76
- <h2 class="text-xl font-bold text-red-800 dark:text-red-300 mb-4">Problems Found (Complete Audit)</h2>
75
+ <div class="bg-status-error-bg rounded-lg p-6">
76
+ <h2 class="text-xl font-bold text-status-error-text mb-4">Problems Found (Complete Audit)</h2>
77
77
 
78
78
  <table class="w-full text-sm mb-4">
79
79
  <thead>
80
- <tr class="text-left border-b border-red-300 dark:border-red-700">
81
- <th class="py-2 font-semibold text-red-700 dark:text-red-300">Repository</th>
82
- <th class="py-2 font-semibold text-red-700 dark:text-red-300">Raw Buttons</th>
83
- <th class="py-2 font-semibold text-red-700 dark:text-red-300">Raw Inputs</th>
84
- <th class="py-2 font-semibold text-red-700 dark:text-red-300">Raw Forms</th>
85
- <th class="py-2 font-semibold text-red-700 dark:text-red-300">Shared Lib Usage</th>
80
+ <tr class="text-left border-b border-status-error-border">
81
+ <th class="py-2 font-semibold text-status-error-text">Repository</th>
82
+ <th class="py-2 font-semibold text-status-error-text">Raw Buttons</th>
83
+ <th class="py-2 font-semibold text-status-error-text">Raw Inputs</th>
84
+ <th class="py-2 font-semibold text-status-error-text">Raw Forms</th>
85
+ <th class="py-2 font-semibold text-status-error-text">Shared Lib Usage</th>
86
86
  </tr>
87
87
  </thead>
88
- <tbody class="text-red-600 dark:text-red-400">
89
- <tr class="border-b border-red-200 dark:border-red-800">
88
+ <tbody class="text-accent-danger">
89
+ <tr class="border-b border-status-error-border">
90
90
  <td class="py-2 font-medium">svelte-components</td>
91
91
  <td class="py-2">110 in 43 files</td>
92
92
  <td class="py-2">12 in 8 files</td>
93
93
  <td class="py-2">4 in 1 file</td>
94
- <td class="py-2 text-green-600 dark:text-green-400">N/A (IS the library)</td>
94
+ <td class="py-2 text-accent-success">N/A (IS the library)</td>
95
95
  </tr>
96
- <tr class="border-b border-red-200 dark:border-red-800">
96
+ <tr class="border-b border-status-error-border">
97
97
  <td class="py-2 font-medium">micdrop-frontend</td>
98
98
  <td class="py-2">35 in 16 files</td>
99
99
  <td class="py-2">76 in 41 files</td>
100
100
  <td class="py-2">22 in 21 files</td>
101
- <td class="py-2 text-green-600 dark:text-green-400">329 files use shared lib</td>
101
+ <td class="py-2 text-accent-success">329 files use shared lib</td>
102
102
  </tr>
103
- <tr class="border-b border-red-200 dark:border-red-800">
103
+ <tr class="border-b border-status-error-border">
104
104
  <td class="py-2 font-medium">performers-portal</td>
105
105
  <td class="py-2">27 in 7 files</td>
106
106
  <td class="py-2">3 in 2 files</td>
107
107
  <td class="py-2">5 in 2 files</td>
108
- <td class="py-2 text-amber-600 dark:text-amber-400">Only 3 files use shared lib</td>
108
+ <td class="py-2 text-accent-warning">Only 3 files use shared lib</td>
109
109
  </tr>
110
110
  <tr>
111
111
  <td class="py-2 font-medium">venue-calendar-npm</td>
112
112
  <td class="py-2">68 in 21 files</td>
113
113
  <td class="py-2">9 in 3 files</td>
114
114
  <td class="py-2">0</td>
115
- <td class="py-2 text-red-600 dark:text-red-400">Standalone package</td>
115
+ <td class="py-2 text-accent-danger">Standalone package</td>
116
116
  </tr>
117
117
  </tbody>
118
118
  </table>
119
119
 
120
120
  <div class="grid md:grid-cols-2 gap-4 mt-4">
121
- <div class="bg-green-50 dark:bg-green-900/20 p-3 rounded">
122
- <h4 class="font-semibold text-green-800 dark:text-green-300 mb-1">Good News</h4>
123
- <p class="text-sm text-green-700 dark:text-green-400">
121
+ <div class="bg-status-success-bg p-3 rounded">
122
+ <h4 class="font-semibold text-status-success-text mb-1">Good News</h4>
123
+ <p class="text-sm text-status-success-text">
124
124
  micdrop-frontend already has 329 files importing from @getmicdrop/svelte-components.
125
125
  The shared library is being adopted.
126
126
  </p>
127
127
  </div>
128
- <div class="bg-red-50 dark:bg-red-900/20 p-3 rounded">
129
- <h4 class="font-semibold text-red-800 dark:text-red-300 mb-1">Main Issue</h4>
130
- <p class="text-sm text-red-700 dark:text-red-400">
128
+ <div class="bg-status-error-bg p-3 rounded">
129
+ <h4 class="font-semibold text-status-error-text mb-1">Main Issue</h4>
130
+ <p class="text-sm text-status-error-text">
131
131
  performers-portal barely uses the shared lib (only 3 files).
132
132
  venue-calendar-npm is standalone and needs separate handling.
133
133
  </p>
@@ -139,27 +139,27 @@
139
139
 
140
140
  <Story name="Workflow Decision">
141
141
  <div class="space-y-8">
142
- <h1 class="text-2xl font-bold text-gray-900 dark:text-white">Workflow: Where to Do the Work</h1>
142
+ <h1 class="text-2xl font-bold text-text-primary">Workflow: Where to Do the Work</h1>
143
143
 
144
- <div class="bg-amber-50 dark:bg-amber-900/20 rounded-lg p-6">
145
- <h2 class="text-xl font-semibold text-amber-800 dark:text-amber-300 mb-4">The Key Question</h2>
146
- <p class="text-amber-700 dark:text-amber-400 text-lg">
144
+ <div class="bg-status-warning-bg rounded-lg p-6">
145
+ <h2 class="text-xl font-semibold text-accent-warning mb-4">The Key Question</h2>
146
+ <p class="text-accent-warning text-lg">
147
147
  "Can I do everything from svelte-components, or do I need to run scans in each consumer repo?"
148
148
  </p>
149
149
  </div>
150
150
 
151
151
  <div class="grid md:grid-cols-2 gap-6">
152
152
  <!-- Option A -->
153
- <div class="bg-green-50 dark:bg-green-900/20 rounded-lg p-6 border-2 border-green-500">
154
- <h3 class="text-lg font-bold text-green-800 dark:text-green-300 mb-3">
153
+ <div class="bg-status-success-bg rounded-lg p-6 border-2 border-accent-success">
154
+ <h3 class="text-lg font-bold text-status-success-text mb-3">
155
155
  Recommended: Work from svelte-components
156
156
  </h3>
157
157
 
158
- <div class="space-y-4 text-sm text-green-700 dark:text-green-400">
158
+ <div class="space-y-4 text-sm text-status-success-text">
159
159
  <div>
160
160
  <h4 class="font-semibold">For Component Development:</h4>
161
161
  <ul class="list-disc list-inside mt-1 space-y-1">
162
- <li>Edit components in <code class="bg-green-100 dark:bg-green-800 px-1 rounded">src/lib/</code></li>
162
+ <li>Edit components in <code class="bg-status-success-bg px-1 rounded">src/lib/</code></li>
163
163
  <li>Preview in Storybook (port 6006)</li>
164
164
  <li>Test component behavior in isolation</li>
165
165
  <li>Publish to NPM when ready</li>
@@ -176,7 +176,7 @@
176
176
 
177
177
  <div>
178
178
  <h4 class="font-semibold">You CAN scan consumer repos from here:</h4>
179
- <pre class="bg-white dark:bg-gray-800 p-2 rounded mt-1 overflow-x-auto text-xs">
179
+ <pre class="bg-card p-2 rounded mt-1 overflow-x-auto text-xs">
180
180
  # From svelte-components directory:
181
181
  grep -r "&lt;button" /Users/peet/repos/micdrop-frontend/src --include="*.svelte" -l
182
182
  grep -r "&lt;button" /Users/peet/repos/performers-portal/src --include="*.svelte" -l</pre>
@@ -185,12 +185,12 @@ grep -r "&lt;button" /Users/peet/repos/performers-portal/src --include="*.svelte
185
185
  </div>
186
186
 
187
187
  <!-- Option B -->
188
- <div class="bg-gray-50 dark:bg-gray-800 rounded-lg p-6 border border-gray-300 dark:border-gray-600">
189
- <h3 class="text-lg font-bold text-gray-700 dark:text-gray-300 mb-3">
188
+ <div class="bg-bg-secondary rounded-lg p-6 border border-stroke-primary">
189
+ <h3 class="text-lg font-bold text-text-secondary mb-3">
190
190
  When to Work in Consumer Repos
191
191
  </h3>
192
192
 
193
- <div class="space-y-4 text-sm text-gray-600 dark:text-gray-400">
193
+ <div class="space-y-4 text-sm text-text-secondary">
194
194
  <div>
195
195
  <h4 class="font-semibold">For Applying Fixes:</h4>
196
196
  <ul class="list-disc list-inside mt-1 space-y-1">
@@ -213,10 +213,10 @@ grep -r "&lt;button" /Users/peet/repos/performers-portal/src --include="*.svelte
213
213
  </div>
214
214
 
215
215
  <!-- Recommended Workflow -->
216
- <div class="bg-blue-50 dark:bg-blue-900/20 rounded-lg p-6">
217
- <h3 class="text-lg font-bold text-blue-800 dark:text-blue-300 mb-4">Recommended Consolidation Workflow</h3>
216
+ <div class="bg-status-info-bg rounded-lg p-6">
217
+ <h3 class="text-lg font-bold text-status-info-text mb-4">Recommended Consolidation Workflow</h3>
218
218
 
219
- <ol class="list-decimal list-inside space-y-4 text-blue-700 dark:text-blue-400">
219
+ <ol class="list-decimal list-inside space-y-4 text-brand-primary">
220
220
  <li>
221
221
  <strong>Phase 1: Audit (Do from svelte-components)</strong>
222
222
  <ul class="list-disc list-inside ml-6 mt-1 text-sm">
@@ -250,304 +250,304 @@ grep -r "&lt;button" /Users/peet/repos/performers-portal/src --include="*.svelte
250
250
 
251
251
  <Story name="svelte-components Problems">
252
252
  <div class="space-y-8">
253
- <h1 class="text-2xl font-bold text-gray-900 dark:text-white">svelte-components: Complete Element Audit (Dec 26, 2025)</h1>
254
- <p class="text-gray-600 dark:text-gray-400">
253
+ <h1 class="text-2xl font-bold text-text-primary">svelte-components: Complete Element Audit (Dec 26, 2025)</h1>
254
+ <p class="text-text-secondary">
255
255
  Comprehensive audit of raw HTML elements in this library: buttons, inputs, forms, textareas, and selects.
256
256
  Categorized by what needs fixing vs. what's expected as primitive implementations.
257
257
  </p>
258
258
 
259
259
  <!-- SUMMARY BOX -->
260
- <div class="bg-blue-50 dark:bg-blue-900/20 rounded-lg p-6">
261
- <h2 class="text-xl font-semibold text-blue-800 dark:text-blue-300 mb-4">Summary by Element Type</h2>
260
+ <div class="bg-status-info-bg rounded-lg p-6">
261
+ <h2 class="text-xl font-semibold text-status-info-text mb-4">Summary by Element Type</h2>
262
262
  <div class="grid grid-cols-3 md:grid-cols-6 gap-3 text-center">
263
- <div class="bg-white dark:bg-gray-800 p-3 rounded-lg">
264
- <div class="text-2xl font-bold text-green-600">✓</div>
265
- <div class="text-xs text-gray-500">Buttons</div>
266
- <div class="text-xs text-green-600">0 remaining</div>
267
- </div>
268
- <div class="bg-white dark:bg-gray-800 p-3 rounded-lg">
269
- <div class="text-2xl font-bold text-green-600">5</div>
270
- <div class="text-xs text-gray-500">Inputs</div>
271
- <div class="text-xs text-green-600">primitives</div>
272
- </div>
273
- <div class="bg-white dark:bg-gray-800 p-3 rounded-lg">
274
- <div class="text-2xl font-bold text-amber-600">5</div>
275
- <div class="text-xs text-gray-500">Recipe Inputs</div>
276
- <div class="text-xs text-amber-600">specialized</div>
277
- </div>
278
- <div class="bg-white dark:bg-gray-800 p-3 rounded-lg">
279
- <div class="text-2xl font-bold text-green-600">3</div>
280
- <div class="text-xs text-gray-500">Textareas</div>
281
- <div class="text-xs text-green-600">expected</div>
282
- </div>
283
- <div class="bg-white dark:bg-gray-800 p-3 rounded-lg">
284
- <div class="text-2xl font-bold text-gray-400">4</div>
285
- <div class="text-xs text-gray-500">Forms</div>
286
- <div class="text-xs text-gray-400">semantic</div>
287
- </div>
288
- <div class="bg-white dark:bg-gray-800 p-3 rounded-lg">
289
- <div class="text-2xl font-bold text-green-600">0</div>
290
- <div class="text-xs text-gray-500">Selects</div>
291
- <div class="text-xs text-green-600">none</div>
263
+ <div class="bg-card p-3 rounded-lg">
264
+ <div class="text-2xl font-bold text-accent-success">✓</div>
265
+ <div class="text-xs text-muted-foreground">Buttons</div>
266
+ <div class="text-xs text-accent-success">0 remaining</div>
267
+ </div>
268
+ <div class="bg-card p-3 rounded-lg">
269
+ <div class="text-2xl font-bold text-accent-success">5</div>
270
+ <div class="text-xs text-muted-foreground">Inputs</div>
271
+ <div class="text-xs text-accent-success">primitives</div>
272
+ </div>
273
+ <div class="bg-card p-3 rounded-lg">
274
+ <div class="text-2xl font-bold text-accent-warning">5</div>
275
+ <div class="text-xs text-muted-foreground">Recipe Inputs</div>
276
+ <div class="text-xs text-accent-warning">specialized</div>
277
+ </div>
278
+ <div class="bg-card p-3 rounded-lg">
279
+ <div class="text-2xl font-bold text-accent-success">3</div>
280
+ <div class="text-xs text-muted-foreground">Textareas</div>
281
+ <div class="text-xs text-accent-success">expected</div>
282
+ </div>
283
+ <div class="bg-card p-3 rounded-lg">
284
+ <div class="text-2xl font-bold text-muted-foreground">4</div>
285
+ <div class="text-xs text-muted-foreground">Forms</div>
286
+ <div class="text-xs text-muted-foreground">semantic</div>
287
+ </div>
288
+ <div class="bg-card p-3 rounded-lg">
289
+ <div class="text-2xl font-bold text-accent-success">0</div>
290
+ <div class="text-xs text-muted-foreground">Selects</div>
291
+ <div class="text-xs text-accent-success">none</div>
292
292
  </div>
293
293
  </div>
294
294
  </div>
295
295
 
296
296
  <!-- COMPLETED - ALL FIXED -->
297
- <div class="bg-green-50 dark:bg-green-900/20 rounded-lg p-6">
298
- <h2 class="text-xl font-semibold text-green-800 dark:text-green-300 mb-4">
297
+ <div class="bg-status-success-bg rounded-lg p-6">
298
+ <h2 class="text-xl font-semibold text-status-success-text mb-4">
299
299
  ✓ Completed: All High-Priority Files Migrated (Dec 26, 2025)
300
300
  </h2>
301
- <p class="text-sm text-green-700 dark:text-green-400 mb-4">
301
+ <p class="text-sm text-status-success-text mb-4">
302
302
  All files that needed fixing have been migrated to use the Button component with appropriate variants.
303
303
  </p>
304
304
 
305
305
  <div class="space-y-3">
306
- <div class="bg-white dark:bg-gray-800 rounded-lg p-3 border-l-4 border-green-500 flex justify-between items-center">
306
+ <div class="bg-card rounded-lg p-3 border-l-4 border-accent-success flex justify-between items-center">
307
307
  <div>
308
- <span class="font-medium text-gray-900 dark:text-white">patterns/navigation/Header.svelte</span>
309
- <span class="text-sm text-green-600 dark:text-green-400 ml-2">9 buttons → Button avatar/menu-item/menu-item-danger</span>
308
+ <span class="font-medium text-text-primary">patterns/navigation/Header.svelte</span>
309
+ <span class="text-sm text-accent-success ml-2">9 buttons → Button avatar/menu-item/menu-item-danger</span>
310
310
  </div>
311
- <span class="text-green-600">✓</span>
311
+ <span class="text-accent-success">✓</span>
312
312
  </div>
313
- <div class="bg-white dark:bg-gray-800 rounded-lg p-3 border-l-4 border-green-500 flex justify-between items-center">
313
+ <div class="bg-card rounded-lg p-3 border-l-4 border-accent-success flex justify-between items-center">
314
314
  <div>
315
- <span class="font-medium text-gray-900 dark:text-white">recipes/SuperLogin/SuperLogin.svelte</span>
316
- <span class="text-sm text-green-600 dark:text-green-400 ml-2">4 buttons → Button card/link variants</span>
315
+ <span class="font-medium text-text-primary">recipes/SuperLogin/SuperLogin.svelte</span>
316
+ <span class="text-sm text-accent-success ml-2">4 buttons → Button card/link variants</span>
317
317
  </div>
318
- <span class="text-green-600">✓</span>
318
+ <span class="text-accent-success">✓</span>
319
319
  </div>
320
- <div class="bg-white dark:bg-gray-800 rounded-lg p-3 border-l-4 border-green-500 flex justify-between items-center">
320
+ <div class="bg-card rounded-lg p-3 border-l-4 border-accent-success flex justify-between items-center">
321
321
  <div>
322
- <span class="font-medium text-gray-900 dark:text-white">recipes/CropImage/CropImage.svelte</span>
323
- <span class="text-sm text-green-600 dark:text-green-400 ml-2">5 Button uses, 0 raw</span>
322
+ <span class="font-medium text-text-primary">recipes/CropImage/CropImage.svelte</span>
323
+ <span class="text-sm text-accent-success ml-2">5 Button uses, 0 raw</span>
324
324
  </div>
325
- <span class="text-green-600">✓</span>
325
+ <span class="text-accent-success">✓</span>
326
326
  </div>
327
327
  </div>
328
328
 
329
- <div class="mt-4 p-3 bg-green-50 dark:bg-green-900/20 rounded text-sm">
330
- <strong class="text-green-700 dark:text-green-400">Extracted to dedicated components:</strong>
331
- <ul class="mt-2 list-disc list-inside text-green-600 dark:text-green-400 space-y-1">
332
- <li><code class="bg-gray-200 dark:bg-gray-700 px-1 rounded">&lt;AvatarButton&gt;</code> - Avatar/image trigger buttons (opacity hover)</li>
333
- <li><code class="bg-gray-200 dark:bg-gray-700 px-1 rounded">&lt;MenuItem&gt;</code> - Dropdown menu items (full width, left-aligned)</li>
334
- <li><code class="bg-gray-200 dark:bg-gray-700 px-1 rounded">&lt;MenuItem danger&gt;</code> - Destructive menu items (red text)</li>
335
- <li><code class="bg-gray-200 dark:bg-gray-700 px-1 rounded">&lt;CardAction&gt;</code> - Selectable card buttons (bordered)</li>
329
+ <div class="mt-4 p-3 bg-status-success-bg rounded text-sm">
330
+ <strong class="text-status-success-text">Extracted to dedicated components:</strong>
331
+ <ul class="mt-2 list-disc list-inside text-accent-success space-y-1">
332
+ <li><code class="bg-bg-tertiary px-1 rounded">&lt;AvatarButton&gt;</code> - Avatar/image trigger buttons (opacity hover)</li>
333
+ <li><code class="bg-bg-tertiary px-1 rounded">&lt;MenuItem&gt;</code> - Dropdown menu items (full width, left-aligned)</li>
334
+ <li><code class="bg-bg-tertiary px-1 rounded">&lt;MenuItem danger&gt;</code> - Destructive menu items (red text)</li>
335
+ <li><code class="bg-bg-tertiary px-1 rounded">&lt;CardAction&gt;</code> - Selectable card buttons (bordered)</li>
336
336
  </ul>
337
337
  </div>
338
338
  </div>
339
339
 
340
340
  <!-- PRIMITIVES - EXPECTED -->
341
- <div class="bg-gray-50 dark:bg-gray-800 rounded-lg p-6">
342
- <h2 class="text-xl font-semibold text-gray-700 dark:text-gray-300 mb-4">
341
+ <div class="bg-bg-secondary rounded-lg p-6">
342
+ <h2 class="text-xl font-semibold text-text-secondary mb-4">
343
343
  Primitives: Raw Buttons Expected (15 total)
344
344
  </h2>
345
- <p class="text-sm text-gray-600 dark:text-gray-400 mb-4">
346
- These ARE the button implementations. Raw <code class="bg-gray-200 dark:bg-gray-700 px-1 rounded">&lt;button&gt;</code> is correct here.
345
+ <p class="text-sm text-text-secondary mb-4">
346
+ These ARE the button implementations. Raw <code class="bg-bg-tertiary px-1 rounded">&lt;button&gt;</code> is correct here.
347
347
  </p>
348
348
 
349
349
  <div class="grid md:grid-cols-2 gap-3 text-sm">
350
- <div class="bg-white dark:bg-gray-900 p-3 rounded flex justify-between">
350
+ <div class="bg-card p-3 rounded flex justify-between">
351
351
  <span>Button/Button.svelte</span>
352
- <span class="text-gray-400">1 button</span>
352
+ <span class="text-muted-foreground">1 button</span>
353
353
  </div>
354
- <div class="bg-white dark:bg-gray-900 p-3 rounded flex justify-between">
354
+ <div class="bg-card p-3 rounded flex justify-between">
355
355
  <span>Pagination/Pagination.svelte</span>
356
- <span class="text-gray-400">10 buttons</span>
356
+ <span class="text-muted-foreground">10 buttons</span>
357
357
  </div>
358
- <div class="bg-white dark:bg-gray-900 p-3 rounded flex justify-between">
358
+ <div class="bg-card p-3 rounded flex justify-between">
359
359
  <span>Accordion/AccordionItem.svelte</span>
360
- <span class="text-gray-400">1 button</span>
360
+ <span class="text-muted-foreground">1 button</span>
361
361
  </div>
362
- <div class="bg-white dark:bg-gray-900 p-3 rounded flex justify-between">
362
+ <div class="bg-card p-3 rounded flex justify-between">
363
363
  <span>Tabs/Tabs.svelte</span>
364
- <span class="text-gray-400">1 button</span>
364
+ <span class="text-muted-foreground">1 button</span>
365
365
  </div>
366
- <div class="bg-white dark:bg-gray-900 p-3 rounded flex justify-between">
366
+ <div class="bg-card p-3 rounded flex justify-between">
367
367
  <span>DarkModeToggle.svelte</span>
368
- <span class="text-gray-400">1 button</span>
368
+ <span class="text-muted-foreground">1 button</span>
369
369
  </div>
370
- <div class="bg-white dark:bg-gray-900 p-3 rounded flex justify-between">
370
+ <div class="bg-card p-3 rounded flex justify-between">
371
371
  <span>Dropdown/DropdownItem.svelte</span>
372
- <span class="text-gray-400">1 button</span>
372
+ <span class="text-muted-foreground">1 button</span>
373
373
  </div>
374
374
  </div>
375
375
  </div>
376
376
 
377
377
  <!-- RAW INPUTS - PRIMITIVES (EXPECTED) -->
378
- <div class="bg-gray-50 dark:bg-gray-800 rounded-lg p-6">
379
- <h2 class="text-xl font-semibold text-gray-700 dark:text-gray-300 mb-4">
378
+ <div class="bg-bg-secondary rounded-lg p-6">
379
+ <h2 class="text-xl font-semibold text-text-secondary mb-4">
380
380
  Raw &lt;input&gt; Elements: Primitives (5 files - Expected)
381
381
  </h2>
382
- <p class="text-sm text-gray-600 dark:text-gray-400 mb-4">
383
- These ARE the input implementations. Raw <code class="bg-gray-200 dark:bg-gray-700 px-1 rounded">&lt;input&gt;</code> is correct here.
382
+ <p class="text-sm text-text-secondary mb-4">
383
+ These ARE the input implementations. Raw <code class="bg-bg-tertiary px-1 rounded">&lt;input&gt;</code> is correct here.
384
384
  </p>
385
385
 
386
386
  <div class="grid md:grid-cols-2 gap-3 text-sm">
387
- <div class="bg-white dark:bg-gray-900 p-3 rounded flex justify-between">
387
+ <div class="bg-card p-3 rounded flex justify-between">
388
388
  <span>primitives/Input/Input.svelte</span>
389
- <span class="text-gray-400">2 inputs</span>
389
+ <span class="text-muted-foreground">2 inputs</span>
390
390
  </div>
391
- <div class="bg-white dark:bg-gray-900 p-3 rounded flex justify-between">
391
+ <div class="bg-card p-3 rounded flex justify-between">
392
392
  <span>primitives/Checkbox/Checkbox.svelte</span>
393
- <span class="text-gray-400">1 input</span>
393
+ <span class="text-muted-foreground">1 input</span>
394
394
  </div>
395
- <div class="bg-white dark:bg-gray-900 p-3 rounded flex justify-between">
395
+ <div class="bg-card p-3 rounded flex justify-between">
396
396
  <span>primitives/Radio/Radio.svelte</span>
397
- <span class="text-gray-400">1 input</span>
397
+ <span class="text-muted-foreground">1 input</span>
398
398
  </div>
399
- <div class="bg-white dark:bg-gray-900 p-3 rounded flex justify-between">
399
+ <div class="bg-card p-3 rounded flex justify-between">
400
400
  <span>primitives/Toggle.svelte</span>
401
- <span class="text-gray-400">1 input</span>
401
+ <span class="text-muted-foreground">1 input</span>
402
402
  </div>
403
- <div class="bg-white dark:bg-gray-900 p-3 rounded flex justify-between">
403
+ <div class="bg-card p-3 rounded flex justify-between">
404
404
  <span>primitives/Input/Textarea.svelte</span>
405
- <span class="text-gray-400">1 textarea</span>
405
+ <span class="text-muted-foreground">1 textarea</span>
406
406
  </div>
407
407
  </div>
408
408
  </div>
409
409
 
410
410
  <!-- RAW INPUTS - RECIPES (SPECIALIZED) -->
411
- <div class="bg-amber-50 dark:bg-amber-900/20 rounded-lg p-6">
412
- <h2 class="text-xl font-semibold text-amber-800 dark:text-amber-300 mb-4">
411
+ <div class="bg-status-warning-bg rounded-lg p-6">
412
+ <h2 class="text-xl font-semibold text-accent-warning mb-4">
413
413
  Raw &lt;input&gt; Elements: Recipes (5 files - Specialized)
414
414
  </h2>
415
- <p class="text-sm text-amber-700 dark:text-amber-400 mb-4">
415
+ <p class="text-sm text-accent-warning mb-4">
416
416
  These are specialized input controls with unique behavior. Using raw inputs is acceptable for these specialized use cases.
417
417
  </p>
418
418
 
419
419
  <div class="space-y-3">
420
- <div class="bg-white dark:bg-gray-800 rounded-lg p-3 border-l-4 border-green-500">
420
+ <div class="bg-card rounded-lg p-3 border-l-4 border-accent-success">
421
421
  <div class="flex justify-between">
422
422
  <span class="font-medium">recipes/inputs/OTPInput.svelte</span>
423
- <span class="text-green-600">1 input ✓</span>
423
+ <span class="text-accent-success">1 input ✓</span>
424
424
  </div>
425
- <p class="text-sm text-gray-500 mt-1">OTP digit inputs - highly specialized, raw input appropriate</p>
425
+ <p class="text-sm text-muted-foreground mt-1">OTP digit inputs - highly specialized, raw input appropriate</p>
426
426
  </div>
427
- <div class="bg-white dark:bg-gray-800 rounded-lg p-3 border-l-4 border-green-500">
427
+ <div class="bg-card rounded-lg p-3 border-l-4 border-accent-success">
428
428
  <div class="flex justify-between">
429
429
  <span class="font-medium">recipes/inputs/Search.svelte</span>
430
- <span class="text-green-600">1 input ✓</span>
430
+ <span class="text-accent-success">1 input ✓</span>
431
431
  </div>
432
- <p class="text-sm text-gray-500 mt-1">Search input - specialized styling and behavior</p>
432
+ <p class="text-sm text-muted-foreground mt-1">Search input - specialized styling and behavior</p>
433
433
  </div>
434
- <div class="bg-white dark:bg-gray-800 rounded-lg p-3 border-l-4 border-green-500">
434
+ <div class="bg-card rounded-lg p-3 border-l-4 border-accent-success">
435
435
  <div class="flex justify-between">
436
436
  <span class="font-medium">recipes/inputs/MultiSelect.svelte</span>
437
- <span class="text-green-600">1 input ✓</span>
437
+ <span class="text-accent-success">1 input ✓</span>
438
438
  </div>
439
- <p class="text-sm text-gray-500 mt-1">Filter/search input within multiselect dropdown</p>
439
+ <p class="text-sm text-muted-foreground mt-1">Filter/search input within multiselect dropdown</p>
440
440
  </div>
441
- <div class="bg-white dark:bg-gray-800 rounded-lg p-3 border-l-4 border-green-500">
441
+ <div class="bg-card rounded-lg p-3 border-l-4 border-accent-success">
442
442
  <div class="flex justify-between">
443
443
  <span class="font-medium">recipes/inputs/PlaceAutocomplete.svelte</span>
444
- <span class="text-green-600">1 input ✓</span>
444
+ <span class="text-accent-success">1 input ✓</span>
445
445
  </div>
446
- <p class="text-sm text-gray-500 mt-1">Google Places API integration - requires raw input for autocomplete</p>
446
+ <p class="text-sm text-muted-foreground mt-1">Google Places API integration - requires raw input for autocomplete</p>
447
447
  </div>
448
- <div class="bg-white dark:bg-gray-800 rounded-lg p-3 border-l-4 border-green-500">
448
+ <div class="bg-card rounded-lg p-3 border-l-4 border-accent-success">
449
449
  <div class="flex justify-between">
450
450
  <span class="font-medium">recipes/CropImage/CropImage.svelte</span>
451
- <span class="text-green-600">1 input ✓</span>
451
+ <span class="text-accent-success">1 input ✓</span>
452
452
  </div>
453
- <p class="text-sm text-gray-500 mt-1">File input for image upload - must be raw for file picker</p>
453
+ <p class="text-sm text-muted-foreground mt-1">File input for image upload - must be raw for file picker</p>
454
454
  </div>
455
455
  </div>
456
456
  </div>
457
457
 
458
458
  <!-- RAW FORMS -->
459
- <div class="bg-gray-50 dark:bg-gray-800 rounded-lg p-6">
460
- <h2 class="text-xl font-semibold text-gray-700 dark:text-gray-300 mb-4">
459
+ <div class="bg-bg-secondary rounded-lg p-6">
460
+ <h2 class="text-xl font-semibold text-text-secondary mb-4">
461
461
  Raw &lt;form&gt; Elements (1 file, 4 forms)
462
462
  </h2>
463
- <p class="text-sm text-gray-600 dark:text-gray-400 mb-4">
464
- No shared Form component exists. Raw <code class="bg-gray-200 dark:bg-gray-700 px-1 rounded">&lt;form&gt;</code> elements are acceptable as semantic containers.
463
+ <p class="text-sm text-text-secondary mb-4">
464
+ No shared Form component exists. Raw <code class="bg-bg-tertiary px-1 rounded">&lt;form&gt;</code> elements are acceptable as semantic containers.
465
465
  </p>
466
466
 
467
- <div class="bg-white dark:bg-gray-900 p-3 rounded">
467
+ <div class="bg-card p-3 rounded">
468
468
  <div class="flex justify-between">
469
469
  <span class="font-medium">recipes/SuperLogin/SuperLogin.svelte</span>
470
- <span class="text-gray-400">4 forms</span>
470
+ <span class="text-muted-foreground">4 forms</span>
471
471
  </div>
472
- <p class="text-sm text-gray-500 mt-1">Login, password reset, OTP, and email verification forms - semantic containers for form submission</p>
472
+ <p class="text-sm text-muted-foreground mt-1">Login, password reset, OTP, and email verification forms - semantic containers for form submission</p>
473
473
  </div>
474
474
  </div>
475
475
 
476
476
  <!-- RAW TEXTAREAS -->
477
- <div class="bg-gray-50 dark:bg-gray-800 rounded-lg p-6">
478
- <h2 class="text-xl font-semibold text-gray-700 dark:text-gray-300 mb-4">
477
+ <div class="bg-bg-secondary rounded-lg p-6">
478
+ <h2 class="text-xl font-semibold text-text-secondary mb-4">
479
479
  Raw &lt;textarea&gt; Elements (3 files - Expected)
480
480
  </h2>
481
- <p class="text-sm text-gray-600 dark:text-gray-400 mb-4">
481
+ <p class="text-sm text-text-secondary mb-4">
482
482
  All textarea usage is in primitives and recipes - no migration needed.
483
483
  </p>
484
484
 
485
485
  <div class="grid md:grid-cols-3 gap-3 text-sm">
486
- <div class="bg-white dark:bg-gray-900 p-3 rounded flex justify-between">
486
+ <div class="bg-card p-3 rounded flex justify-between">
487
487
  <span>primitives/Input/Textarea.svelte</span>
488
- <span class="text-green-500">primitive ✓</span>
488
+ <span class="text-accent-success">primitive ✓</span>
489
489
  </div>
490
- <div class="bg-white dark:bg-gray-900 p-3 rounded flex justify-between">
490
+ <div class="bg-card p-3 rounded flex justify-between">
491
491
  <span>primitives/Input/Input.svelte</span>
492
- <span class="text-green-500">primitive ✓</span>
492
+ <span class="text-accent-success">primitive ✓</span>
493
493
  </div>
494
- <div class="bg-white dark:bg-gray-900 p-3 rounded flex justify-between">
494
+ <div class="bg-card p-3 rounded flex justify-between">
495
495
  <span>recipes/modals/InputModal.svelte</span>
496
- <span class="text-green-500">recipe ✓</span>
496
+ <span class="text-accent-success">recipe ✓</span>
497
497
  </div>
498
498
  </div>
499
499
  </div>
500
500
 
501
501
  <!-- RAW SELECTS -->
502
- <div class="bg-green-50 dark:bg-green-900/20 rounded-lg p-6">
503
- <h2 class="text-xl font-semibold text-green-800 dark:text-green-300 mb-4">
502
+ <div class="bg-status-success-bg rounded-lg p-6">
503
+ <h2 class="text-xl font-semibold text-status-success-text mb-4">
504
504
  Raw &lt;select&gt; Elements: None Found ✓
505
505
  </h2>
506
- <p class="text-sm text-green-700 dark:text-green-400">
507
- No raw <code class="bg-green-100 dark:bg-green-800 px-1 rounded">&lt;select&gt;</code> elements found outside of primitives.
506
+ <p class="text-sm text-status-success-text">
507
+ No raw <code class="bg-status-success-bg px-1 rounded">&lt;select&gt;</code> elements found outside of primitives.
508
508
  All select functionality uses the MultiSelect custom dropdown component.
509
509
  </p>
510
510
  </div>
511
511
 
512
512
  <!-- CALENDAR PACKAGE -->
513
- <div class="bg-purple-50 dark:bg-purple-900/20 rounded-lg p-6">
514
- <h2 class="text-xl font-semibold text-purple-800 dark:text-purple-300 mb-4">
513
+ <div class="bg-status-info-bg rounded-lg p-6">
514
+ <h2 class="text-xl font-semibold text-brand-primary mb-4">
515
515
  Calendar Package: Phase 4 (16 buttons in 6 files)
516
516
  </h2>
517
- <p class="text-sm text-purple-700 dark:text-purple-400 mb-4">
517
+ <p class="text-sm text-brand-primary mb-4">
518
518
  Embedded from venue-calendar-npm. Handle separately - cannot import from svelte-components (circular dependency).
519
519
  </p>
520
520
 
521
521
  <table class="w-full text-sm">
522
522
  <thead>
523
- <tr class="text-left border-b border-purple-300 dark:border-purple-700">
524
- <th class="py-2 font-semibold text-purple-700 dark:text-purple-300">File</th>
525
- <th class="py-2 font-semibold text-purple-700 dark:text-purple-300">Count</th>
526
- <th class="py-2 font-semibold text-purple-700 dark:text-purple-300">Purpose</th>
523
+ <tr class="text-left border-b border-border">
524
+ <th class="py-2 font-semibold text-brand-primary">File</th>
525
+ <th class="py-2 font-semibold text-brand-primary">Count</th>
526
+ <th class="py-2 font-semibold text-brand-primary">Purpose</th>
527
527
  </tr>
528
528
  </thead>
529
- <tbody class="text-purple-600 dark:text-purple-400">
530
- <tr class="border-b border-purple-200 dark:border-purple-800">
529
+ <tbody class="text-brand-primary">
530
+ <tr class="border-b border-border">
531
531
  <td class="py-2">OrderSummary.svelte</td>
532
532
  <td class="py-2">5</td>
533
533
  <td class="py-2">Checkout actions</td>
534
534
  </tr>
535
- <tr class="border-b border-purple-200 dark:border-purple-800">
535
+ <tr class="border-b border-border">
536
536
  <td class="py-2">MiniMonthCalendar.svelte</td>
537
537
  <td class="py-2">3</td>
538
538
  <td class="py-2">Month navigation</td>
539
539
  </tr>
540
- <tr class="border-b border-purple-200 dark:border-purple-800">
540
+ <tr class="border-b border-border">
541
541
  <td class="py-2">MonthSwitcher.svelte</td>
542
542
  <td class="py-2">3</td>
543
543
  <td class="py-2">Month navigation</td>
544
544
  </tr>
545
- <tr class="border-b border-purple-200 dark:border-purple-800">
545
+ <tr class="border-b border-border">
546
546
  <td class="py-2">AboutShow.svelte</td>
547
547
  <td class="py-2">3</td>
548
548
  <td class="py-2">Show details</td>
549
549
  </tr>
550
- <tr class="border-b border-purple-200 dark:border-purple-800">
550
+ <tr class="border-b border-border">
551
551
  <td class="py-2">ShowCard.svelte</td>
552
552
  <td class="py-2">1</td>
553
553
  <td class="py-2">CTA button</td>
@@ -562,11 +562,11 @@ grep -r "&lt;button" /Users/peet/repos/performers-portal/src --include="*.svelte
562
562
  </div>
563
563
 
564
564
  <!-- STORIES - LOW PRIORITY -->
565
- <div class="bg-gray-100 dark:bg-gray-800/50 rounded-lg p-6">
566
- <h2 class="text-xl font-semibold text-gray-600 dark:text-gray-400 mb-4">
565
+ <div class="bg-muted rounded-lg p-6">
566
+ <h2 class="text-xl font-semibold text-text-secondary mb-4">
567
567
  Stories: Low Priority (~30 buttons in 19 files)
568
568
  </h2>
569
- <p class="text-sm text-gray-500 dark:text-gray-500">
569
+ <p class="text-sm text-muted-foreground">
570
570
  Demo and test files. Not user-facing. Fix only if time permits.
571
571
  </p>
572
572
  </div>
@@ -575,131 +575,131 @@ grep -r "&lt;button" /Users/peet/repos/performers-portal/src --include="*.svelte
575
575
 
576
576
  <Story name="micdrop-frontend Detailed">
577
577
  <div class="space-y-8">
578
- <h1 class="text-2xl font-bold text-gray-900 dark:text-white">micdrop-frontend: Fresh Audit (Dec 26, 2025)</h1>
579
- <p class="text-gray-600 dark:text-gray-400">
578
+ <h1 class="text-2xl font-bold text-text-primary">micdrop-frontend: Fresh Audit (Dec 26, 2025)</h1>
579
+ <p class="text-text-secondary">
580
580
  <strong>12 files</strong> with raw buttons. Total: <strong>25 raw buttons</strong> (9 production, 8 storybook).
581
581
  </p>
582
582
 
583
583
  <!-- Summary -->
584
- <div class="bg-blue-50 dark:bg-blue-900/20 rounded-lg p-6">
585
- <h2 class="text-xl font-semibold text-blue-800 dark:text-blue-300 mb-4">Summary</h2>
584
+ <div class="bg-status-info-bg rounded-lg p-6">
585
+ <h2 class="text-xl font-semibold text-status-info-text mb-4">Summary</h2>
586
586
  <div class="grid md:grid-cols-4 gap-4">
587
- <div class="bg-white dark:bg-gray-800 p-4 rounded-lg text-center">
588
- <div class="text-3xl font-bold text-red-600">25</div>
589
- <div class="text-sm text-gray-600 dark:text-gray-400">Raw Buttons</div>
590
- <div class="text-xs text-gray-500">in 12 files</div>
591
- </div>
592
- <div class="bg-white dark:bg-gray-800 p-4 rounded-lg text-center">
593
- <div class="text-3xl font-bold text-red-600">76</div>
594
- <div class="text-sm text-gray-600 dark:text-gray-400">Raw Inputs</div>
595
- <div class="text-xs text-gray-500">in 41 files</div>
596
- </div>
597
- <div class="bg-white dark:bg-gray-800 p-4 rounded-lg text-center">
598
- <div class="text-3xl font-bold text-red-600">22</div>
599
- <div class="text-sm text-gray-600 dark:text-gray-400">Raw Forms</div>
600
- <div class="text-xs text-gray-500">in 21 files</div>
601
- </div>
602
- <div class="bg-white dark:bg-gray-800 p-4 rounded-lg text-center">
603
- <div class="text-3xl font-bold text-green-600">329</div>
604
- <div class="text-sm text-gray-600 dark:text-gray-400">Shared Lib Imports</div>
605
- <div class="text-xs text-gray-500">good adoption!</div>
587
+ <div class="bg-card p-4 rounded-lg text-center">
588
+ <div class="text-3xl font-bold text-accent-danger">25</div>
589
+ <div class="text-sm text-text-secondary">Raw Buttons</div>
590
+ <div class="text-xs text-muted-foreground">in 12 files</div>
591
+ </div>
592
+ <div class="bg-card p-4 rounded-lg text-center">
593
+ <div class="text-3xl font-bold text-accent-danger">76</div>
594
+ <div class="text-sm text-text-secondary">Raw Inputs</div>
595
+ <div class="text-xs text-muted-foreground">in 41 files</div>
596
+ </div>
597
+ <div class="bg-card p-4 rounded-lg text-center">
598
+ <div class="text-3xl font-bold text-accent-danger">22</div>
599
+ <div class="text-sm text-text-secondary">Raw Forms</div>
600
+ <div class="text-xs text-muted-foreground">in 21 files</div>
601
+ </div>
602
+ <div class="bg-card p-4 rounded-lg text-center">
603
+ <div class="text-3xl font-bold text-accent-success">329</div>
604
+ <div class="text-sm text-text-secondary">Shared Lib Imports</div>
605
+ <div class="text-xs text-muted-foreground">good adoption!</div>
606
606
  </div>
607
607
  </div>
608
608
  </div>
609
609
 
610
610
  <!-- Raw Buttons -->
611
- <div class="bg-red-50 dark:bg-red-900/20 rounded-lg p-6">
612
- <h2 class="text-xl font-semibold text-red-800 dark:text-red-300 mb-4">Raw Buttons (25 instances, 12 files)</h2>
611
+ <div class="bg-status-error-bg rounded-lg p-6">
612
+ <h2 class="text-xl font-semibold text-status-error-text mb-4">Raw Buttons (25 instances, 12 files)</h2>
613
613
  <div class="overflow-x-auto">
614
614
  <table class="w-full text-sm">
615
615
  <thead>
616
- <tr class="text-left border-b border-red-300 dark:border-red-700">
617
- <th class="py-2 font-semibold text-red-700 dark:text-red-300">File</th>
618
- <th class="py-2 font-semibold text-red-700 dark:text-red-300 text-center">Count</th>
619
- <th class="py-2 font-semibold text-red-700 dark:text-red-300">Priority</th>
616
+ <tr class="text-left border-b border-status-error-border">
617
+ <th class="py-2 font-semibold text-status-error-text">File</th>
618
+ <th class="py-2 font-semibold text-status-error-text text-center">Count</th>
619
+ <th class="py-2 font-semibold text-status-error-text">Priority</th>
620
620
  </tr>
621
621
  </thead>
622
- <tbody class="text-red-600 dark:text-red-400">
623
- <tr class="border-b border-red-200 dark:border-red-800">
622
+ <tbody class="text-accent-danger">
623
+ <tr class="border-b border-status-error-border">
624
624
  <td class="py-2">components/FeaturesTable/FeaturesReportsTableUnified.svelte</td>
625
625
  <td class="py-2 text-center font-bold">3</td>
626
- <td class="py-2"><span class="px-2 py-0.5 bg-red-100 text-red-800 rounded text-xs">HIGH</span></td>
626
+ <td class="py-2"><span class="px-2 py-0.5 bg-status-error-bg text-status-error-text rounded text-xs">HIGH</span></td>
627
627
  </tr>
628
- <tr class="border-b border-red-200 dark:border-red-800">
628
+ <tr class="border-b border-status-error-border">
629
629
  <td class="py-2">components/UserProfileDropdown/UserDropdown.svelte</td>
630
630
  <td class="py-2 text-center font-bold">3</td>
631
- <td class="py-2"><span class="px-2 py-0.5 bg-red-100 text-red-800 rounded text-xs">HIGH</span></td>
631
+ <td class="py-2"><span class="px-2 py-0.5 bg-status-error-bg text-status-error-text rounded text-xs">HIGH</span></td>
632
632
  </tr>
633
- <tr class="border-b border-red-200 dark:border-red-800">
633
+ <tr class="border-b border-status-error-border">
634
634
  <td class="py-2">components/MainLayout/Sidebar.svelte</td>
635
635
  <td class="py-2 text-center font-bold">3</td>
636
- <td class="py-2"><span class="px-2 py-0.5 bg-red-100 text-red-800 rounded text-xs">HIGH</span></td>
636
+ <td class="py-2"><span class="px-2 py-0.5 bg-status-error-bg text-status-error-text rounded text-xs">HIGH</span></td>
637
637
  </tr>
638
- <tr class="border-b border-red-200 dark:border-red-800">
638
+ <tr class="border-b border-status-error-border">
639
639
  <td class="py-2">components/SingleEventSeriesReportTable/...Unified.svelte</td>
640
640
  <td class="py-2 text-center font-bold">2</td>
641
- <td class="py-2"><span class="px-2 py-0.5 bg-amber-100 text-amber-800 rounded text-xs">MEDIUM</span></td>
641
+ <td class="py-2"><span class="px-2 py-0.5 bg-status-warning-bg text-accent-warning rounded text-xs">MEDIUM</span></td>
642
642
  </tr>
643
- <tr class="border-b border-red-200 dark:border-red-800">
643
+ <tr class="border-b border-status-error-border">
644
644
  <td class="py-2">components/Events/Details/FAQs.svelte</td>
645
645
  <td class="py-2 text-center font-bold">2</td>
646
- <td class="py-2"><span class="px-2 py-0.5 bg-amber-100 text-amber-800 rounded text-xs">MEDIUM</span></td>
646
+ <td class="py-2"><span class="px-2 py-0.5 bg-status-warning-bg text-accent-warning rounded text-xs">MEDIUM</span></td>
647
647
  </tr>
648
- <tr class="border-b border-red-200 dark:border-red-800">
648
+ <tr class="border-b border-status-error-border">
649
649
  <td class="py-2">components/MainLayout/Header.svelte</td>
650
650
  <td class="py-2 text-center font-bold">1</td>
651
- <td class="py-2"><span class="px-2 py-0.5 bg-red-100 text-red-800 rounded text-xs">HIGH</span></td>
651
+ <td class="py-2"><span class="px-2 py-0.5 bg-status-error-bg text-status-error-text rounded text-xs">HIGH</span></td>
652
652
  </tr>
653
- <tr class="border-b border-red-200 dark:border-red-800">
653
+ <tr class="border-b border-status-error-border">
654
654
  <td class="py-2">components/Dashboard/DashboardCards/CardWrapper.svelte</td>
655
655
  <td class="py-2 text-center font-bold">1</td>
656
- <td class="py-2"><span class="px-2 py-0.5 bg-amber-100 text-amber-800 rounded text-xs">MEDIUM</span></td>
656
+ <td class="py-2"><span class="px-2 py-0.5 bg-status-warning-bg text-accent-warning rounded text-xs">MEDIUM</span></td>
657
657
  </tr>
658
- <tr class="border-b border-red-200 dark:border-red-800">
658
+ <tr class="border-b border-status-error-border">
659
659
  <td class="py-2">components/Events/Details/AboutShow.svelte</td>
660
660
  <td class="py-2 text-center font-bold">1</td>
661
- <td class="py-2"><span class="px-2 py-0.5 bg-amber-100 text-amber-800 rounded text-xs">MEDIUM</span></td>
661
+ <td class="py-2"><span class="px-2 py-0.5 bg-status-warning-bg text-accent-warning rounded text-xs">MEDIUM</span></td>
662
662
  </tr>
663
- <tr class="border-b border-red-200 dark:border-red-800">
663
+ <tr class="border-b border-status-error-border">
664
664
  <td class="py-2">components/Events/Details/Disclaimer.svelte</td>
665
665
  <td class="py-2 text-center font-bold">1</td>
666
- <td class="py-2"><span class="px-2 py-0.5 bg-amber-100 text-amber-800 rounded text-xs">MEDIUM</span></td>
666
+ <td class="py-2"><span class="px-2 py-0.5 bg-status-warning-bg text-accent-warning rounded text-xs">MEDIUM</span></td>
667
667
  </tr>
668
- <tr class="border-b border-red-200 dark:border-red-800 text-gray-500 dark:text-gray-500">
668
+ <tr class="border-b border-status-error-border text-muted-foreground">
669
669
  <td class="py-2">stories/CalendarComparison/CalendarComparison.stories.svelte</td>
670
670
  <td class="py-2 text-center font-bold">3</td>
671
- <td class="py-2"><span class="px-2 py-0.5 bg-gray-100 text-gray-600 rounded text-xs">STORYBOOK</span></td>
671
+ <td class="py-2"><span class="px-2 py-0.5 bg-muted text-text-secondary rounded text-xs">STORYBOOK</span></td>
672
672
  </tr>
673
- <tr class="border-b border-red-200 dark:border-red-800 text-gray-500 dark:text-gray-500">
673
+ <tr class="border-b border-status-error-border text-muted-foreground">
674
674
  <td class="py-2">stories/ComponentInstancesAudit/BadgeInstances.svelte</td>
675
675
  <td class="py-2 text-center font-bold">3</td>
676
- <td class="py-2"><span class="px-2 py-0.5 bg-gray-100 text-gray-600 rounded text-xs">STORYBOOK</span></td>
676
+ <td class="py-2"><span class="px-2 py-0.5 bg-muted text-text-secondary rounded text-xs">STORYBOOK</span></td>
677
677
  </tr>
678
- <tr class="text-gray-500 dark:text-gray-500">
678
+ <tr class="text-muted-foreground">
679
679
  <td class="py-2">stories/ComponentInstancesAudit/AlertInstances.svelte</td>
680
680
  <td class="py-2 text-center font-bold">2</td>
681
- <td class="py-2"><span class="px-2 py-0.5 bg-gray-100 text-gray-600 rounded text-xs">STORYBOOK</span></td>
681
+ <td class="py-2"><span class="px-2 py-0.5 bg-muted text-text-secondary rounded text-xs">STORYBOOK</span></td>
682
682
  </tr>
683
683
  </tbody>
684
684
  </table>
685
685
  </div>
686
- <p class="mt-4 text-sm text-red-600 dark:text-red-400">
686
+ <p class="mt-4 text-sm text-accent-danger">
687
687
  <strong>Note:</strong> Storybook files (gray) are lower priority - focus on production components first.
688
688
  </p>
689
689
  </div>
690
690
 
691
691
  <!-- Local Components Issue -->
692
- <div class="bg-amber-50 dark:bg-amber-900/20 rounded-lg p-6">
693
- <h2 class="text-xl font-semibold text-amber-800 dark:text-amber-300 mb-4">Local Component Duplicates</h2>
694
- <p class="text-sm text-amber-700 dark:text-amber-400 mb-4">
695
- This repo has <strong>95 items</strong> in <code class="bg-amber-100 dark:bg-amber-800 px-1 rounded">src/components/</code>.
692
+ <div class="bg-status-warning-bg rounded-lg p-6">
693
+ <h2 class="text-xl font-semibold text-accent-warning mb-4">Local Component Duplicates</h2>
694
+ <p class="text-sm text-accent-warning mb-4">
695
+ This repo has <strong>95 items</strong> in <code class="bg-status-warning-bg px-1 rounded">src/components/</code>.
696
696
  Many are app-specific, but some likely duplicate shared library components.
697
697
  </p>
698
698
 
699
699
  <div class="grid md:grid-cols-2 gap-4">
700
- <div class="bg-white dark:bg-gray-800 p-4 rounded-lg">
701
- <h3 class="font-semibold text-amber-800 dark:text-amber-300 mb-2">Likely Duplicates (Check These):</h3>
702
- <ul class="list-disc list-inside text-sm text-amber-600 dark:text-amber-400 space-y-1">
700
+ <div class="bg-card p-4 rounded-lg">
701
+ <h3 class="font-semibold text-accent-warning mb-2">Likely Duplicates (Check These):</h3>
702
+ <ul class="list-disc list-inside text-sm text-accent-warning space-y-1">
703
703
  <li>CropImage/ → exists in svelte-components/recipes/</li>
704
704
  <li>Modal/ → exists in svelte-components/primitives/</li>
705
705
  <li>Input/ → exists in svelte-components/primitives/</li>
@@ -709,9 +709,9 @@ grep -r "&lt;button" /Users/peet/repos/performers-portal/src --include="*.svelte
709
709
  <li>PlaceAutocomplete/ → specialized, may be fine</li>
710
710
  </ul>
711
711
  </div>
712
- <div class="bg-white dark:bg-gray-800 p-4 rounded-lg">
713
- <h3 class="font-semibold text-green-800 dark:text-green-300 mb-2">App-Specific (OK to Keep):</h3>
714
- <ul class="list-disc list-inside text-sm text-green-600 dark:text-green-400 space-y-1">
712
+ <div class="bg-card p-4 rounded-lg">
713
+ <h3 class="font-semibold text-status-success-text mb-2">App-Specific (OK to Keep):</h3>
714
+ <ul class="list-disc list-inside text-sm text-accent-success space-y-1">
715
715
  <li>EventForm/, EventReportsTable/</li>
716
716
  <li>Dashboard/, DashboardTable/</li>
717
717
  <li>UnifiedTable/, UnifiedCalendar/</li>
@@ -724,24 +724,24 @@ grep -r "&lt;button" /Users/peet/repos/performers-portal/src --include="*.svelte
724
724
  </div>
725
725
 
726
726
  <!-- Recommendations -->
727
- <div class="bg-green-50 dark:bg-green-900/20 rounded-lg p-6">
728
- <h2 class="text-xl font-semibold text-green-800 dark:text-green-300 mb-4">Recommendations</h2>
729
- <ol class="list-decimal list-inside space-y-3 text-sm text-green-700 dark:text-green-400">
727
+ <div class="bg-status-success-bg rounded-lg p-6">
728
+ <h2 class="text-xl font-semibold text-status-success-text mb-4">Recommendations</h2>
729
+ <ol class="list-decimal list-inside space-y-3 text-sm text-status-success-text">
730
730
  <li>
731
731
  <strong>Fix MainLayout components first</strong> (Header, Sidebar, UserDropdown)
732
- <br/><span class="text-green-600 dark:text-green-500 ml-4">These are on every page, highest impact</span>
732
+ <br/><span class="text-accent-success ml-4">These are on every page, highest impact</span>
733
733
  </li>
734
734
  <li>
735
735
  <strong>Fix table components</strong> (FeaturesReportsTableUnified, SingleEventSeriesReportTableUnified)
736
- <br/><span class="text-green-600 dark:text-green-500 ml-4">Replace raw buttons with Button component</span>
736
+ <br/><span class="text-accent-success ml-4">Replace raw buttons with Button component</span>
737
737
  </li>
738
738
  <li>
739
739
  <strong>Audit local CropImage, Modal, Input</strong>
740
- <br/><span class="text-green-600 dark:text-green-500 ml-4">Delete if identical to shared lib versions</span>
740
+ <br/><span class="text-accent-success ml-4">Delete if identical to shared lib versions</span>
741
741
  </li>
742
742
  <li>
743
743
  <strong>Keep app-specific components</strong> (tables, forms, etc.)
744
- <br/><span class="text-green-600 dark:text-green-500 ml-4">But ensure they USE shared primitives internally</span>
744
+ <br/><span class="text-accent-success ml-4">But ensure they USE shared primitives internally</span>
745
745
  </li>
746
746
  </ol>
747
747
  </div>
@@ -750,98 +750,98 @@ grep -r "&lt;button" /Users/peet/repos/performers-portal/src --include="*.svelte
750
750
 
751
751
  <Story name="performers-portal Detailed">
752
752
  <div class="space-y-8">
753
- <h1 class="text-2xl font-bold text-gray-900 dark:text-white">performers-portal: Fresh Audit (Dec 26, 2025)</h1>
754
- <p class="text-gray-600 dark:text-gray-400">
753
+ <h1 class="text-2xl font-bold text-text-primary">performers-portal: Fresh Audit (Dec 26, 2025)</h1>
754
+ <p class="text-text-secondary">
755
755
  <strong>7 files</strong> with raw buttons. Total: <strong>27 raw buttons</strong> (24 production, 3 test/story).
756
- <span class="text-red-600 font-medium">Critical: Only 3 files use shared library!</span>
756
+ <span class="text-accent-danger font-medium">Critical: Only 3 files use shared library!</span>
757
757
  </p>
758
758
 
759
759
  <!-- Summary -->
760
- <div class="bg-amber-50 dark:bg-amber-900/20 rounded-lg p-6">
761
- <h2 class="text-xl font-semibold text-amber-800 dark:text-amber-300 mb-4">Summary</h2>
760
+ <div class="bg-status-warning-bg rounded-lg p-6">
761
+ <h2 class="text-xl font-semibold text-accent-warning mb-4">Summary</h2>
762
762
  <div class="grid md:grid-cols-4 gap-4">
763
- <div class="bg-white dark:bg-gray-800 p-4 rounded-lg text-center">
764
- <div class="text-3xl font-bold text-red-600">27</div>
765
- <div class="text-sm text-gray-600 dark:text-gray-400">Raw Buttons</div>
766
- <div class="text-xs text-gray-500">in 7 files</div>
767
- </div>
768
- <div class="bg-white dark:bg-gray-800 p-4 rounded-lg text-center">
769
- <div class="text-3xl font-bold text-red-600">3</div>
770
- <div class="text-sm text-gray-600 dark:text-gray-400">Raw Inputs</div>
771
- <div class="text-xs text-gray-500">in 2 files</div>
772
- </div>
773
- <div class="bg-white dark:bg-gray-800 p-4 rounded-lg text-center">
774
- <div class="text-3xl font-bold text-red-600">5</div>
775
- <div class="text-sm text-gray-600 dark:text-gray-400">Raw Forms</div>
776
- <div class="text-xs text-gray-500">in 2 files</div>
777
- </div>
778
- <div class="bg-white dark:bg-gray-800 p-4 rounded-lg text-center">
779
- <div class="text-3xl font-bold text-amber-600">3</div>
780
- <div class="text-sm text-gray-600 dark:text-gray-400">Shared Lib Imports</div>
781
- <div class="text-xs text-red-500">poor adoption!</div>
763
+ <div class="bg-card p-4 rounded-lg text-center">
764
+ <div class="text-3xl font-bold text-accent-danger">27</div>
765
+ <div class="text-sm text-text-secondary">Raw Buttons</div>
766
+ <div class="text-xs text-muted-foreground">in 7 files</div>
767
+ </div>
768
+ <div class="bg-card p-4 rounded-lg text-center">
769
+ <div class="text-3xl font-bold text-accent-danger">3</div>
770
+ <div class="text-sm text-text-secondary">Raw Inputs</div>
771
+ <div class="text-xs text-muted-foreground">in 2 files</div>
772
+ </div>
773
+ <div class="bg-card p-4 rounded-lg text-center">
774
+ <div class="text-3xl font-bold text-accent-danger">5</div>
775
+ <div class="text-sm text-text-secondary">Raw Forms</div>
776
+ <div class="text-xs text-muted-foreground">in 2 files</div>
777
+ </div>
778
+ <div class="bg-card p-4 rounded-lg text-center">
779
+ <div class="text-3xl font-bold text-accent-warning">3</div>
780
+ <div class="text-sm text-text-secondary">Shared Lib Imports</div>
781
+ <div class="text-xs text-accent-danger">poor adoption!</div>
782
782
  </div>
783
783
  </div>
784
784
  </div>
785
785
 
786
786
  <!-- Critical Issue -->
787
- <div class="bg-red-50 dark:bg-red-900/20 rounded-lg p-6 border-2 border-red-500">
788
- <h2 class="text-xl font-semibold text-red-800 dark:text-red-300 mb-4">⚠️ Critical Issue: Poor Shared Library Adoption</h2>
789
- <p class="text-red-700 dark:text-red-400 mb-4">
790
- Only <strong>3 files</strong> import from <code class="bg-red-100 dark:bg-red-800 px-1 rounded">@getmicdrop/svelte-components</code>.
787
+ <div class="bg-status-error-bg rounded-lg p-6 border-2 border-status-error-border">
788
+ <h2 class="text-xl font-semibold text-status-error-text mb-4">⚠️ Critical Issue: Poor Shared Library Adoption</h2>
789
+ <p class="text-status-error-text mb-4">
790
+ Only <strong>3 files</strong> import from <code class="bg-status-error-bg px-1 rounded">@getmicdrop/svelte-components</code>.
791
791
  This entire repo needs migration to the shared library.
792
792
  </p>
793
- <p class="text-sm text-red-600 dark:text-red-400">
793
+ <p class="text-sm text-accent-danger">
794
794
  Compare: micdrop-frontend has 329 files using the shared lib.
795
795
  </p>
796
796
  </div>
797
797
 
798
798
  <!-- Raw Buttons -->
799
- <div class="bg-red-50 dark:bg-red-900/20 rounded-lg p-6">
800
- <h2 class="text-xl font-semibold text-red-800 dark:text-red-300 mb-4">Raw Buttons (27 instances, 7 files)</h2>
799
+ <div class="bg-status-error-bg rounded-lg p-6">
800
+ <h2 class="text-xl font-semibold text-status-error-text mb-4">Raw Buttons (27 instances, 7 files)</h2>
801
801
  <div class="overflow-x-auto">
802
802
  <table class="w-full text-sm">
803
803
  <thead>
804
- <tr class="text-left border-b border-red-300 dark:border-red-700">
805
- <th class="py-2 font-semibold text-red-700 dark:text-red-300">File</th>
806
- <th class="py-2 font-semibold text-red-700 dark:text-red-300 text-center">Count</th>
807
- <th class="py-2 font-semibold text-red-700 dark:text-red-300">Priority</th>
804
+ <tr class="text-left border-b border-status-error-border">
805
+ <th class="py-2 font-semibold text-status-error-text">File</th>
806
+ <th class="py-2 font-semibold text-status-error-text text-center">Count</th>
807
+ <th class="py-2 font-semibold text-status-error-text">Priority</th>
808
808
  </tr>
809
809
  </thead>
810
- <tbody class="text-red-600 dark:text-red-400">
811
- <tr class="border-b border-red-200 dark:border-red-800">
810
+ <tbody class="text-accent-danger">
811
+ <tr class="border-b border-status-error-border">
812
812
  <td class="py-2">routes/login/+page.svelte</td>
813
813
  <td class="py-2 text-center font-bold">9</td>
814
- <td class="py-2"><span class="px-2 py-0.5 bg-red-100 text-red-800 rounded text-xs">CRITICAL</span></td>
814
+ <td class="py-2"><span class="px-2 py-0.5 bg-status-error-bg text-status-error-text rounded text-xs">CRITICAL</span></td>
815
815
  </tr>
816
- <tr class="border-b border-red-200 dark:border-red-800">
816
+ <tr class="border-b border-status-error-border">
817
817
  <td class="py-2">routes/account-settings/+page.svelte</td>
818
818
  <td class="py-2 text-center font-bold">6</td>
819
- <td class="py-2"><span class="px-2 py-0.5 bg-red-100 text-red-800 rounded text-xs">HIGH</span></td>
819
+ <td class="py-2"><span class="px-2 py-0.5 bg-status-error-bg text-status-error-text rounded text-xs">HIGH</span></td>
820
820
  </tr>
821
- <tr class="border-b border-red-200 dark:border-red-800">
821
+ <tr class="border-b border-status-error-border">
822
822
  <td class="py-2">routes/profile/+page.svelte</td>
823
823
  <td class="py-2 text-center font-bold">5</td>
824
- <td class="py-2"><span class="px-2 py-0.5 bg-red-100 text-red-800 rounded text-xs">HIGH</span></td>
824
+ <td class="py-2"><span class="px-2 py-0.5 bg-status-error-bg text-status-error-text rounded text-xs">HIGH</span></td>
825
825
  </tr>
826
- <tr class="border-b border-red-200 dark:border-red-800">
826
+ <tr class="border-b border-status-error-border">
827
827
  <td class="py-2">routes/verify-phone/+page.svelte</td>
828
828
  <td class="py-2 text-center font-bold">3</td>
829
- <td class="py-2"><span class="px-2 py-0.5 bg-amber-100 text-amber-800 rounded text-xs">MEDIUM</span></td>
829
+ <td class="py-2"><span class="px-2 py-0.5 bg-status-warning-bg text-accent-warning rounded text-xs">MEDIUM</span></td>
830
830
  </tr>
831
- <tr class="border-b border-red-200 dark:border-red-800">
831
+ <tr class="border-b border-status-error-border">
832
832
  <td class="py-2">components/Modal/ModalTestWrapper.svelte</td>
833
833
  <td class="py-2 text-center font-bold">2</td>
834
- <td class="py-2"><span class="px-2 py-0.5 bg-gray-100 text-gray-600 rounded text-xs">TEST</span></td>
834
+ <td class="py-2"><span class="px-2 py-0.5 bg-muted text-text-secondary rounded text-xs">TEST</span></td>
835
835
  </tr>
836
- <tr class="border-b border-red-200 dark:border-red-800">
836
+ <tr class="border-b border-status-error-border">
837
837
  <td class="py-2">routes/availability/[venueId]/+page.svelte</td>
838
838
  <td class="py-2 text-center font-bold">1</td>
839
- <td class="py-2"><span class="px-2 py-0.5 bg-amber-100 text-amber-800 rounded text-xs">MEDIUM</span></td>
839
+ <td class="py-2"><span class="px-2 py-0.5 bg-status-warning-bg text-accent-warning rounded text-xs">MEDIUM</span></td>
840
840
  </tr>
841
841
  <tr>
842
- <td class="py-2 text-gray-500">stories/Button.svelte</td>
843
- <td class="py-2 text-center font-bold text-gray-500">1</td>
844
- <td class="py-2"><span class="px-2 py-0.5 bg-gray-100 text-gray-600 rounded text-xs">STORYBOOK</span></td>
842
+ <td class="py-2 text-muted-foreground">stories/Button.svelte</td>
843
+ <td class="py-2 text-center font-bold text-muted-foreground">1</td>
844
+ <td class="py-2"><span class="px-2 py-0.5 bg-muted text-text-secondary rounded text-xs">STORYBOOK</span></td>
845
845
  </tr>
846
846
  </tbody>
847
847
  </table>
@@ -849,23 +849,23 @@ grep -r "&lt;button" /Users/peet/repos/performers-portal/src --include="*.svelte
849
849
  </div>
850
850
 
851
851
  <!-- Local Components -->
852
- <div class="bg-amber-50 dark:bg-amber-900/20 rounded-lg p-6">
853
- <h2 class="text-xl font-semibold text-amber-800 dark:text-amber-300 mb-4">Local Components (8 items)</h2>
854
- <p class="text-sm text-amber-700 dark:text-amber-400 mb-4">
855
- This repo has a smaller <code class="bg-amber-100 dark:bg-amber-800 px-1 rounded">src/components/</code> directory.
852
+ <div class="bg-status-warning-bg rounded-lg p-6">
853
+ <h2 class="text-xl font-semibold text-accent-warning mb-4">Local Components (8 items)</h2>
854
+ <p class="text-sm text-accent-warning mb-4">
855
+ This repo has a smaller <code class="bg-status-warning-bg px-1 rounded">src/components/</code> directory.
856
856
  </p>
857
857
 
858
858
  <div class="grid md:grid-cols-2 gap-4">
859
- <div class="bg-white dark:bg-gray-800 p-4 rounded-lg">
860
- <h3 class="font-semibold text-red-800 dark:text-red-300 mb-2">Should Migrate to Shared Lib:</h3>
861
- <ul class="list-disc list-inside text-sm text-red-600 dark:text-red-400 space-y-1">
859
+ <div class="bg-card p-4 rounded-lg">
860
+ <h3 class="font-semibold text-status-error-text mb-2">Should Migrate to Shared Lib:</h3>
861
+ <ul class="list-disc list-inside text-sm text-accent-danger space-y-1">
862
862
  <li>Modal/ → use svelte-components/primitives/Modal</li>
863
863
  <li>Layout/ → patterns should come from shared lib</li>
864
864
  </ul>
865
865
  </div>
866
- <div class="bg-white dark:bg-gray-800 p-4 rounded-lg">
867
- <h3 class="font-semibold text-amber-800 dark:text-amber-300 mb-2">App-Specific (Evaluate):</h3>
868
- <ul class="list-disc list-inside text-sm text-amber-600 dark:text-amber-400 space-y-1">
866
+ <div class="bg-card p-4 rounded-lg">
867
+ <h3 class="font-semibold text-accent-warning mb-2">App-Specific (Evaluate):</h3>
868
+ <ul class="list-disc list-inside text-sm text-accent-warning space-y-1">
869
869
  <li>CalendarOnboardingModal.svelte</li>
870
870
  <li>HomeOnboardingModal.svelte</li>
871
871
  <li>ProfileOnboardingModal.svelte</li>
@@ -878,24 +878,24 @@ grep -r "&lt;button" /Users/peet/repos/performers-portal/src --include="*.svelte
878
878
  </div>
879
879
 
880
880
  <!-- Recommendations -->
881
- <div class="bg-green-50 dark:bg-green-900/20 rounded-lg p-6">
882
- <h2 class="text-xl font-semibold text-green-800 dark:text-green-300 mb-4">Recommendations</h2>
883
- <ol class="list-decimal list-inside space-y-3 text-sm text-green-700 dark:text-green-400">
881
+ <div class="bg-status-success-bg rounded-lg p-6">
882
+ <h2 class="text-xl font-semibold text-status-success-text mb-4">Recommendations</h2>
883
+ <ol class="list-decimal list-inside space-y-3 text-sm text-status-success-text">
884
884
  <li>
885
885
  <strong>Migrate login/+page.svelte to use SuperLogin</strong>
886
- <br/><span class="text-green-600 dark:text-green-500 ml-4">9 raw buttons → 0 by using shared login component</span>
886
+ <br/><span class="text-accent-success ml-4">9 raw buttons → 0 by using shared login component</span>
887
887
  </li>
888
888
  <li>
889
889
  <strong>Replace all buttons with Button component</strong>
890
- <br/><span class="text-green-600 dark:text-green-500 ml-4">Import from @getmicdrop/svelte-components</span>
890
+ <br/><span class="text-accent-success ml-4">Import from @getmicdrop/svelte-components</span>
891
891
  </li>
892
892
  <li>
893
893
  <strong>Use shared Modal instead of local Modal/</strong>
894
- <br/><span class="text-green-600 dark:text-green-500 ml-4">Delete local Modal/ directory after migration</span>
894
+ <br/><span class="text-accent-success ml-4">Delete local Modal/ directory after migration</span>
895
895
  </li>
896
896
  <li>
897
897
  <strong>Onboarding modals may use ConfirmationModal or StatusModal</strong>
898
- <br/><span class="text-green-600 dark:text-green-500 ml-4">Check if shared recipes cover the use cases</span>
898
+ <br/><span class="text-accent-success ml-4">Check if shared recipes cover the use cases</span>
899
899
  </li>
900
900
  </ol>
901
901
  </div>
@@ -904,37 +904,37 @@ grep -r "&lt;button" /Users/peet/repos/performers-portal/src --include="*.svelte
904
904
 
905
905
  <Story name="venue-calendar-npm Detailed">
906
906
  <div class="space-y-8">
907
- <h1 class="text-2xl font-bold text-gray-900 dark:text-white">venue-calendar-npm: Detailed Audit</h1>
908
- <p class="text-gray-600 dark:text-gray-400">
907
+ <h1 class="text-2xl font-bold text-text-primary">venue-calendar-npm: Detailed Audit</h1>
908
+ <p class="text-text-secondary">
909
909
  This is a standalone package embedded in svelte-components/calendar/. Changes here propagate to all consumers.
910
910
  </p>
911
911
 
912
912
  <!-- Summary -->
913
- <div class="bg-purple-50 dark:bg-purple-900/20 rounded-lg p-6">
914
- <h2 class="text-xl font-semibold text-purple-800 dark:text-purple-300 mb-4">Summary</h2>
913
+ <div class="bg-status-info-bg rounded-lg p-6">
914
+ <h2 class="text-xl font-semibold text-brand-primary mb-4">Summary</h2>
915
915
  <div class="grid md:grid-cols-3 gap-4">
916
- <div class="bg-white dark:bg-gray-800 p-4 rounded-lg text-center">
917
- <div class="text-3xl font-bold text-red-600">68</div>
918
- <div class="text-sm text-gray-600 dark:text-gray-400">Raw Buttons</div>
919
- <div class="text-xs text-gray-500">in 21 files</div>
916
+ <div class="bg-card p-4 rounded-lg text-center">
917
+ <div class="text-3xl font-bold text-accent-danger">68</div>
918
+ <div class="text-sm text-text-secondary">Raw Buttons</div>
919
+ <div class="text-xs text-muted-foreground">in 21 files</div>
920
920
  </div>
921
- <div class="bg-white dark:bg-gray-800 p-4 rounded-lg text-center">
922
- <div class="text-3xl font-bold text-red-600">9</div>
923
- <div class="text-sm text-gray-600 dark:text-gray-400">Raw Inputs</div>
924
- <div class="text-xs text-gray-500">in 3 files</div>
921
+ <div class="bg-card p-4 rounded-lg text-center">
922
+ <div class="text-3xl font-bold text-accent-danger">9</div>
923
+ <div class="text-sm text-text-secondary">Raw Inputs</div>
924
+ <div class="text-xs text-muted-foreground">in 3 files</div>
925
925
  </div>
926
- <div class="bg-white dark:bg-gray-800 p-4 rounded-lg text-center">
927
- <div class="text-3xl font-bold text-green-600">0</div>
928
- <div class="text-sm text-gray-600 dark:text-gray-400">Raw Forms</div>
929
- <div class="text-xs text-gray-500">good!</div>
926
+ <div class="bg-card p-4 rounded-lg text-center">
927
+ <div class="text-3xl font-bold text-accent-success">0</div>
928
+ <div class="text-sm text-text-secondary">Raw Forms</div>
929
+ <div class="text-xs text-muted-foreground">good!</div>
930
930
  </div>
931
931
  </div>
932
932
  </div>
933
933
 
934
934
  <!-- Special Note -->
935
- <div class="bg-amber-50 dark:bg-amber-900/20 rounded-lg p-6 border-l-4 border-amber-500">
936
- <h2 class="text-lg font-semibold text-amber-800 dark:text-amber-300 mb-2">⚠️ Special Handling Required</h2>
937
- <p class="text-sm text-amber-700 dark:text-amber-400">
935
+ <div class="bg-status-warning-bg rounded-lg p-6 border-l-4 border-accent-warning">
936
+ <h2 class="text-lg font-semibold text-accent-warning mb-2">⚠️ Special Handling Required</h2>
937
+ <p class="text-sm text-accent-warning">
938
938
  This package is <strong>standalone</strong> and embedded in svelte-components. It cannot directly import
939
939
  from @getmicdrop/svelte-components (circular dependency). Raw buttons here may be intentional to avoid
940
940
  dependency coupling. Consider creating a minimal Button for the calendar package.
@@ -942,108 +942,108 @@ grep -r "&lt;button" /Users/peet/repos/performers-portal/src --include="*.svelte
942
942
  </div>
943
943
 
944
944
  <!-- Raw Buttons by Category -->
945
- <div class="bg-red-50 dark:bg-red-900/20 rounded-lg p-6">
946
- <h2 class="text-xl font-semibold text-red-800 dark:text-red-300 mb-4">Raw Buttons by Category</h2>
945
+ <div class="bg-status-error-bg rounded-lg p-6">
946
+ <h2 class="text-xl font-semibold text-status-error-text mb-4">Raw Buttons by Category</h2>
947
947
 
948
948
  <div class="space-y-4">
949
949
  <!-- Routes (Test Pages) -->
950
- <div class="bg-white dark:bg-gray-800 p-4 rounded-lg">
951
- <h3 class="font-semibold text-gray-700 dark:text-gray-300 mb-2">Routes (Test/Demo Pages)</h3>
950
+ <div class="bg-card p-4 rounded-lg">
951
+ <h3 class="font-semibold text-text-secondary mb-2">Routes (Test/Demo Pages)</h3>
952
952
  <table class="w-full text-sm">
953
- <tbody class="text-gray-600 dark:text-gray-400">
954
- <tr class="border-b border-gray-200 dark:border-gray-700">
953
+ <tbody class="text-text-secondary">
954
+ <tr class="border-b border-border">
955
955
  <td class="py-1">routes/scenarios/+page.svelte</td>
956
956
  <td class="py-1 text-center font-bold">12</td>
957
- <td class="py-1"><span class="px-2 py-0.5 bg-gray-100 text-gray-600 rounded text-xs">LOW</span></td>
957
+ <td class="py-1"><span class="px-2 py-0.5 bg-muted text-text-secondary rounded text-xs">LOW</span></td>
958
958
  </tr>
959
- <tr class="border-b border-gray-200 dark:border-gray-700">
959
+ <tr class="border-b border-border">
960
960
  <td class="py-1">routes/preview/+page.svelte</td>
961
961
  <td class="py-1 text-center font-bold">9</td>
962
- <td class="py-1"><span class="px-2 py-0.5 bg-gray-100 text-gray-600 rounded text-xs">LOW</span></td>
962
+ <td class="py-1"><span class="px-2 py-0.5 bg-muted text-text-secondary rounded text-xs">LOW</span></td>
963
963
  </tr>
964
- <tr class="border-b border-gray-200 dark:border-gray-700">
964
+ <tr class="border-b border-border">
965
965
  <td class="py-1">routes/[id]/[slug]/+page.svelte</td>
966
966
  <td class="py-1 text-center font-bold">8</td>
967
- <td class="py-1"><span class="px-2 py-0.5 bg-amber-100 text-amber-800 rounded text-xs">MEDIUM</span></td>
967
+ <td class="py-1"><span class="px-2 py-0.5 bg-status-warning-bg text-accent-warning rounded text-xs">MEDIUM</span></td>
968
968
  </tr>
969
- <tr class="border-b border-gray-200 dark:border-gray-700">
969
+ <tr class="border-b border-border">
970
970
  <td class="py-1">routes/[id]/[slug]/tickets/checkout/+page.svelte</td>
971
971
  <td class="py-1 text-center font-bold">3</td>
972
- <td class="py-1"><span class="px-2 py-0.5 bg-amber-100 text-amber-800 rounded text-xs">MEDIUM</span></td>
972
+ <td class="py-1"><span class="px-2 py-0.5 bg-status-warning-bg text-accent-warning rounded text-xs">MEDIUM</span></td>
973
973
  </tr>
974
- <tr class="border-b border-gray-200 dark:border-gray-700">
974
+ <tr class="border-b border-border">
975
975
  <td class="py-1">routes/[id]/[slug]/tickets/checkout/success/+page.svelte</td>
976
976
  <td class="py-1 text-center font-bold">2</td>
977
- <td class="py-1"><span class="px-2 py-0.5 bg-amber-100 text-amber-800 rounded text-xs">MEDIUM</span></td>
977
+ <td class="py-1"><span class="px-2 py-0.5 bg-status-warning-bg text-accent-warning rounded text-xs">MEDIUM</span></td>
978
978
  </tr>
979
979
  <tr>
980
980
  <td class="py-1">routes/+error.svelte</td>
981
981
  <td class="py-1 text-center font-bold">2</td>
982
- <td class="py-1"><span class="px-2 py-0.5 bg-gray-100 text-gray-600 rounded text-xs">LOW</span></td>
982
+ <td class="py-1"><span class="px-2 py-0.5 bg-muted text-text-secondary rounded text-xs">LOW</span></td>
983
983
  </tr>
984
984
  </tbody>
985
985
  </table>
986
986
  </div>
987
987
 
988
988
  <!-- Components (Embedded) -->
989
- <div class="bg-white dark:bg-gray-800 p-4 rounded-lg">
990
- <h3 class="font-semibold text-red-700 dark:text-red-300 mb-2">Components (Embedded in svelte-components)</h3>
989
+ <div class="bg-card p-4 rounded-lg">
990
+ <h3 class="font-semibold text-status-error-text mb-2">Components (Embedded in svelte-components)</h3>
991
991
  <table class="w-full text-sm">
992
- <tbody class="text-red-600 dark:text-red-400">
993
- <tr class="border-b border-red-200 dark:border-red-800">
992
+ <tbody class="text-accent-danger">
993
+ <tr class="border-b border-status-error-border">
994
994
  <td class="py-1">components/Calendar/Calendar.svelte</td>
995
995
  <td class="py-1 text-center font-bold">3</td>
996
- <td class="py-1"><span class="px-2 py-0.5 bg-red-100 text-red-800 rounded text-xs">HIGH</span></td>
996
+ <td class="py-1"><span class="px-2 py-0.5 bg-status-error-bg text-status-error-text rounded text-xs">HIGH</span></td>
997
997
  </tr>
998
- <tr class="border-b border-red-200 dark:border-red-800">
998
+ <tr class="border-b border-status-error-border">
999
999
  <td class="py-1">components/Calendar/CalendarHeader.svelte</td>
1000
1000
  <td class="py-1 text-center font-bold">2</td>
1001
- <td class="py-1"><span class="px-2 py-0.5 bg-red-100 text-red-800 rounded text-xs">HIGH</span></td>
1001
+ <td class="py-1"><span class="px-2 py-0.5 bg-status-error-bg text-status-error-text rounded text-xs">HIGH</span></td>
1002
1002
  </tr>
1003
- <tr class="border-b border-red-200 dark:border-red-800">
1003
+ <tr class="border-b border-status-error-border">
1004
1004
  <td class="py-1">components/DateSelector/DateSelector.svelte</td>
1005
1005
  <td class="py-1 text-center font-bold">3</td>
1006
- <td class="py-1"><span class="px-2 py-0.5 bg-red-100 text-red-800 rounded text-xs">HIGH</span></td>
1006
+ <td class="py-1"><span class="px-2 py-0.5 bg-status-error-bg text-status-error-text rounded text-xs">HIGH</span></td>
1007
1007
  </tr>
1008
- <tr class="border-b border-red-200 dark:border-red-800">
1008
+ <tr class="border-b border-status-error-border">
1009
1009
  <td class="py-1">components/DateSelector/DateSelectorGrouped.svelte</td>
1010
1010
  <td class="py-1 text-center font-bold">3</td>
1011
- <td class="py-1"><span class="px-2 py-0.5 bg-red-100 text-red-800 rounded text-xs">HIGH</span></td>
1011
+ <td class="py-1"><span class="px-2 py-0.5 bg-status-error-bg text-status-error-text rounded text-xs">HIGH</span></td>
1012
1012
  </tr>
1013
- <tr class="border-b border-red-200 dark:border-red-800">
1013
+ <tr class="border-b border-status-error-border">
1014
1014
  <td class="py-1">components/Views/EventDetailsView.svelte</td>
1015
1015
  <td class="py-1 text-center font-bold">3</td>
1016
- <td class="py-1"><span class="px-2 py-0.5 bg-red-100 text-red-800 rounded text-xs">HIGH</span></td>
1016
+ <td class="py-1"><span class="px-2 py-0.5 bg-status-error-bg text-status-error-text rounded text-xs">HIGH</span></td>
1017
1017
  </tr>
1018
- <tr class="border-b border-red-200 dark:border-red-800">
1018
+ <tr class="border-b border-status-error-border">
1019
1019
  <td class="py-1">components/Views/Checkout.svelte</td>
1020
1020
  <td class="py-1 text-center font-bold">3</td>
1021
- <td class="py-1"><span class="px-2 py-0.5 bg-red-100 text-red-800 rounded text-xs">HIGH</span></td>
1021
+ <td class="py-1"><span class="px-2 py-0.5 bg-status-error-bg text-status-error-text rounded text-xs">HIGH</span></td>
1022
1022
  </tr>
1023
- <tr class="border-b border-red-200 dark:border-red-800">
1023
+ <tr class="border-b border-status-error-border">
1024
1024
  <td class="py-1">components/Events/Checkout/PaymentSection.svelte</td>
1025
1025
  <td class="py-1 text-center font-bold">3</td>
1026
- <td class="py-1"><span class="px-2 py-0.5 bg-amber-100 text-amber-800 rounded text-xs">MEDIUM</span></td>
1026
+ <td class="py-1"><span class="px-2 py-0.5 bg-status-warning-bg text-accent-warning rounded text-xs">MEDIUM</span></td>
1027
1027
  </tr>
1028
- <tr class="border-b border-red-200 dark:border-red-800">
1028
+ <tr class="border-b border-status-error-border">
1029
1029
  <td class="py-1">components/Events/Tickets/PromocodeInput.svelte</td>
1030
1030
  <td class="py-1 text-center font-bold">2</td>
1031
- <td class="py-1"><span class="px-2 py-0.5 bg-amber-100 text-amber-800 rounded text-xs">MEDIUM</span></td>
1031
+ <td class="py-1"><span class="px-2 py-0.5 bg-status-warning-bg text-accent-warning rounded text-xs">MEDIUM</span></td>
1032
1032
  </tr>
1033
- <tr class="border-b border-red-200 dark:border-red-800">
1033
+ <tr class="border-b border-status-error-border">
1034
1034
  <td class="py-1">components/Events/Tickets/TicketBlock.svelte</td>
1035
1035
  <td class="py-1 text-center font-bold">2</td>
1036
- <td class="py-1"><span class="px-2 py-0.5 bg-amber-100 text-amber-800 rounded text-xs">MEDIUM</span></td>
1036
+ <td class="py-1"><span class="px-2 py-0.5 bg-status-warning-bg text-accent-warning rounded text-xs">MEDIUM</span></td>
1037
1037
  </tr>
1038
- <tr class="border-b border-red-200 dark:border-red-800">
1038
+ <tr class="border-b border-status-error-border">
1039
1039
  <td class="py-1">components/Events/Checkout/CheckoutEventInfo.svelte</td>
1040
1040
  <td class="py-1 text-center font-bold">2</td>
1041
- <td class="py-1"><span class="px-2 py-0.5 bg-amber-100 text-amber-800 rounded text-xs">MEDIUM</span></td>
1041
+ <td class="py-1"><span class="px-2 py-0.5 bg-status-warning-bg text-accent-warning rounded text-xs">MEDIUM</span></td>
1042
1042
  </tr>
1043
1043
  <tr>
1044
1044
  <td class="py-1">+ 5 more files with 1-2 buttons each</td>
1045
1045
  <td class="py-1 text-center font-bold">6</td>
1046
- <td class="py-1"><span class="px-2 py-0.5 bg-amber-100 text-amber-800 rounded text-xs">MEDIUM</span></td>
1046
+ <td class="py-1"><span class="px-2 py-0.5 bg-status-warning-bg text-accent-warning rounded text-xs">MEDIUM</span></td>
1047
1047
  </tr>
1048
1048
  </tbody>
1049
1049
  </table>
@@ -1052,24 +1052,24 @@ grep -r "&lt;button" /Users/peet/repos/performers-portal/src --include="*.svelte
1052
1052
  </div>
1053
1053
 
1054
1054
  <!-- Recommendations -->
1055
- <div class="bg-green-50 dark:bg-green-900/20 rounded-lg p-6">
1056
- <h2 class="text-xl font-semibold text-green-800 dark:text-green-300 mb-4">Recommendations</h2>
1057
- <ol class="list-decimal list-inside space-y-3 text-sm text-green-700 dark:text-green-400">
1055
+ <div class="bg-status-success-bg rounded-lg p-6">
1056
+ <h2 class="text-xl font-semibold text-status-success-text mb-4">Recommendations</h2>
1057
+ <ol class="list-decimal list-inside space-y-3 text-sm text-status-success-text">
1058
1058
  <li>
1059
1059
  <strong>Create a minimal CalendarButton component</strong>
1060
- <br/><span class="text-green-600 dark:text-green-500 ml-4">Internal to venue-calendar-npm, consistent styling</span>
1060
+ <br/><span class="text-accent-success ml-4">Internal to venue-calendar-npm, consistent styling</span>
1061
1061
  </li>
1062
1062
  <li>
1063
1063
  <strong>Focus on components/, not routes/</strong>
1064
- <br/><span class="text-green-600 dark:text-green-500 ml-4">Routes are test/demo pages, lower priority</span>
1064
+ <br/><span class="text-accent-success ml-4">Routes are test/demo pages, lower priority</span>
1065
1065
  </li>
1066
1066
  <li>
1067
1067
  <strong>Handle AFTER main consolidation</strong>
1068
- <br/><span class="text-green-600 dark:text-green-500 ml-4">This is Phase 4, do consumer repos first</span>
1068
+ <br/><span class="text-accent-success ml-4">This is Phase 4, do consumer repos first</span>
1069
1069
  </li>
1070
1070
  <li>
1071
1071
  <strong>Consider design token sharing</strong>
1072
- <br/><span class="text-green-600 dark:text-green-500 ml-4">Calendar buttons should match app styling</span>
1072
+ <br/><span class="text-accent-success ml-4">Calendar buttons should match app styling</span>
1073
1073
  </li>
1074
1074
  </ol>
1075
1075
  </div>
@@ -1078,50 +1078,50 @@ grep -r "&lt;button" /Users/peet/repos/performers-portal/src --include="*.svelte
1078
1078
 
1079
1079
  <Story name="Duplicate Components">
1080
1080
  <div class="space-y-8">
1081
- <h1 class="text-2xl font-bold text-gray-900 dark:text-white">Duplicate/Outdated Components</h1>
1082
- <p class="text-gray-600 dark:text-gray-400">
1081
+ <h1 class="text-2xl font-bold text-text-primary">Duplicate/Outdated Components</h1>
1082
+ <p class="text-text-secondary">
1083
1083
  Components that exist in multiple places or are outdated versions.
1084
1084
  </p>
1085
1085
 
1086
- <div class="bg-amber-50 dark:bg-amber-900/20 rounded-lg p-6">
1087
- <h2 class="text-xl font-semibold text-amber-800 dark:text-amber-300 mb-4">
1086
+ <div class="bg-status-warning-bg rounded-lg p-6">
1087
+ <h2 class="text-xl font-semibold text-accent-warning mb-4">
1088
1088
  Known Duplicates to Investigate
1089
1089
  </h2>
1090
1090
 
1091
- <p class="text-sm text-amber-700 dark:text-amber-400 mb-4">
1091
+ <p class="text-sm text-accent-warning mb-4">
1092
1092
  These need to be audited - consumer repos may have local copies of components that are now in svelte-components:
1093
1093
  </p>
1094
1094
 
1095
1095
  <table class="w-full text-sm">
1096
1096
  <thead>
1097
- <tr class="text-left border-b border-amber-300 dark:border-amber-700">
1098
- <th class="py-2 font-semibold text-amber-700 dark:text-amber-300">Component</th>
1099
- <th class="py-2 font-semibold text-amber-700 dark:text-amber-300">In svelte-components</th>
1100
- <th class="py-2 font-semibold text-amber-700 dark:text-amber-300">Check Consumer Repos</th>
1097
+ <tr class="text-left border-b border-accent-warning">
1098
+ <th class="py-2 font-semibold text-accent-warning">Component</th>
1099
+ <th class="py-2 font-semibold text-accent-warning">In svelte-components</th>
1100
+ <th class="py-2 font-semibold text-accent-warning">Check Consumer Repos</th>
1101
1101
  </tr>
1102
1102
  </thead>
1103
- <tbody class="text-amber-600 dark:text-amber-400">
1104
- <tr class="border-b border-amber-200 dark:border-amber-800">
1103
+ <tbody class="text-accent-warning">
1104
+ <tr class="border-b border-status-warning-border">
1105
1105
  <td class="py-2">Button</td>
1106
1106
  <td class="py-2">primitives/Button/Button.svelte</td>
1107
1107
  <td class="py-2">$lib/components/Button?</td>
1108
1108
  </tr>
1109
- <tr class="border-b border-amber-200 dark:border-amber-800">
1109
+ <tr class="border-b border-status-warning-border">
1110
1110
  <td class="py-2">Input</td>
1111
1111
  <td class="py-2">primitives/Input/Input.svelte</td>
1112
1112
  <td class="py-2">$lib/components/Input?</td>
1113
1113
  </tr>
1114
- <tr class="border-b border-amber-200 dark:border-amber-800">
1114
+ <tr class="border-b border-status-warning-border">
1115
1115
  <td class="py-2">Modal</td>
1116
1116
  <td class="py-2">primitives/Modal/Modal.svelte</td>
1117
1117
  <td class="py-2">$lib/components/Modal?</td>
1118
1118
  </tr>
1119
- <tr class="border-b border-amber-200 dark:border-amber-800">
1119
+ <tr class="border-b border-status-warning-border">
1120
1120
  <td class="py-2">Checkbox</td>
1121
1121
  <td class="py-2">primitives/Checkbox/Checkbox.svelte</td>
1122
1122
  <td class="py-2">$lib/components/Checkbox?</td>
1123
1123
  </tr>
1124
- <tr class="border-b border-amber-200 dark:border-amber-800">
1124
+ <tr class="border-b border-status-warning-border">
1125
1125
  <td class="py-2">Avatar</td>
1126
1126
  <td class="py-2">primitives/Avatar/Avatar.svelte</td>
1127
1127
  <td class="py-2">$lib/components/Avatar?</td>
@@ -1134,9 +1134,9 @@ grep -r "&lt;button" /Users/peet/repos/performers-portal/src --include="*.svelte
1134
1134
  </tbody>
1135
1135
  </table>
1136
1136
 
1137
- <div class="mt-4 bg-white dark:bg-gray-800 rounded p-3">
1138
- <h4 class="font-semibold text-gray-700 dark:text-gray-300 mb-2">Audit Commands:</h4>
1139
- <pre class="text-xs bg-gray-100 dark:bg-gray-900 p-2 rounded overflow-x-auto">
1137
+ <div class="mt-4 bg-card rounded p-3">
1138
+ <h4 class="font-semibold text-text-secondary mb-2">Audit Commands:</h4>
1139
+ <pre class="text-xs bg-muted p-2 rounded overflow-x-auto">
1140
1140
  # Check what local components exist:
1141
1141
  ls -la /Users/peet/repos/micdrop-frontend/src/lib/components/
1142
1142
  ls -la /Users/peet/repos/performers-portal/src/lib/components/
@@ -1146,27 +1146,27 @@ grep -r "from '\$lib/components/Button" /Users/peet/repos/micdrop-frontend/src -
1146
1146
  </div>
1147
1147
  </div>
1148
1148
 
1149
- <div class="bg-blue-50 dark:bg-blue-900/20 rounded-lg p-6">
1150
- <h2 class="text-xl font-semibold text-blue-800 dark:text-blue-300 mb-4">
1149
+ <div class="bg-status-info-bg rounded-lg p-6">
1150
+ <h2 class="text-xl font-semibold text-status-info-text mb-4">
1151
1151
  Within svelte-components: Potential Consolidation
1152
1152
  </h2>
1153
1153
 
1154
- <p class="text-sm text-blue-700 dark:text-blue-400 mb-4">
1154
+ <p class="text-sm text-brand-primary mb-4">
1155
1155
  Check if any of these serve similar purposes and could be merged:
1156
1156
  </p>
1157
1157
 
1158
- <ul class="list-disc list-inside text-sm text-blue-600 dark:text-blue-400 space-y-2">
1158
+ <ul class="list-disc list-inside text-sm text-brand-primary space-y-2">
1159
1159
  <li>
1160
1160
  <strong>Modal vs BottomSheet vs StatusModal vs ConfirmationModal</strong>
1161
- <br/><span class="text-blue-500 dark:text-blue-500 ml-4">→ Are these all necessary, or can some be variants of one component?</span>
1161
+ <br/><span class="text-brand-primary ml-4">→ Are these all necessary, or can some be variants of one component?</span>
1162
1162
  </li>
1163
1163
  <li>
1164
1164
  <strong>Select vs MultiSelect</strong>
1165
- <br/><span class="text-blue-500 dark:text-blue-500 ml-4">→ Should these share more code? (SelectDropdown removed)</span>
1165
+ <br/><span class="text-brand-primary ml-4">→ Should these share more code? (SelectDropdown removed)</span>
1166
1166
  </li>
1167
1167
  <li>
1168
1168
  <strong>Input vs OTPInput vs PlaceAutocomplete</strong>
1169
- <br/><span class="text-blue-500 dark:text-blue-500 ml-4">→ Can OTPInput and PlaceAutocomplete build on Input?</span>
1169
+ <br/><span class="text-brand-primary ml-4">→ Can OTPInput and PlaceAutocomplete build on Input?</span>
1170
1170
  </li>
1171
1171
  </ul>
1172
1172
  </div>
@@ -1175,77 +1175,77 @@ grep -r "from '\$lib/components/Button" /Users/peet/repos/micdrop-frontend/src -
1175
1175
 
1176
1176
  <Story name="Action Plan">
1177
1177
  <div class="space-y-8">
1178
- <h1 class="text-2xl font-bold text-gray-900 dark:text-white">Recommended Action Plan</h1>
1178
+ <h1 class="text-2xl font-bold text-text-primary">Recommended Action Plan</h1>
1179
1179
 
1180
1180
  <!-- Phase 1 COMPLETE -->
1181
- <div class="bg-green-50 dark:bg-green-900/20 rounded-lg p-6 border-2 border-green-500">
1182
- <h2 class="text-xl font-bold text-green-800 dark:text-green-300 mb-4">✓ Phase 1: Audit Complete (Dec 26, 2025)</h2>
1181
+ <div class="bg-status-success-bg rounded-lg p-6 border-2 border-accent-success">
1182
+ <h2 class="text-xl font-bold text-status-success-text mb-4">✓ Phase 1: Audit Complete (Dec 26, 2025)</h2>
1183
1183
 
1184
1184
  <div class="space-y-3">
1185
1185
  <div class="flex items-start gap-3">
1186
1186
  <input type="checkbox" checked disabled class="mt-1" />
1187
1187
  <div>
1188
- <p class="font-medium text-green-700 dark:text-green-400 line-through">Scan svelte-components: 36 files, 13 need fixing</p>
1188
+ <p class="font-medium text-status-success-text line-through">Scan svelte-components: 36 files, 13 need fixing</p>
1189
1189
  </div>
1190
1190
  </div>
1191
1191
  <div class="flex items-start gap-3">
1192
1192
  <input type="checkbox" checked disabled class="mt-1" />
1193
1193
  <div>
1194
- <p class="font-medium text-green-700 dark:text-green-400 line-through">Scan micdrop-frontend: 12 files, 25 raw buttons</p>
1194
+ <p class="font-medium text-status-success-text line-through">Scan micdrop-frontend: 12 files, 25 raw buttons</p>
1195
1195
  </div>
1196
1196
  </div>
1197
1197
  <div class="flex items-start gap-3">
1198
1198
  <input type="checkbox" checked disabled class="mt-1" />
1199
1199
  <div>
1200
- <p class="font-medium text-green-700 dark:text-green-400 line-through">Scan performers-portal: 7 files, 27 raw buttons</p>
1200
+ <p class="font-medium text-status-success-text line-through">Scan performers-portal: 7 files, 27 raw buttons</p>
1201
1201
  </div>
1202
1202
  </div>
1203
1203
  <div class="flex items-start gap-3">
1204
1204
  <input type="checkbox" checked disabled class="mt-1" />
1205
1205
  <div>
1206
- <p class="font-medium text-green-700 dark:text-green-400 line-through">Document findings with categorization and suggestions</p>
1206
+ <p class="font-medium text-status-success-text line-through">Document findings with categorization and suggestions</p>
1207
1207
  </div>
1208
1208
  </div>
1209
1209
  </div>
1210
1210
  </div>
1211
1211
 
1212
1212
  <!-- Phase 2 COMPLETE -->
1213
- <div class="bg-green-50 dark:bg-green-900/20 rounded-lg p-6 border-2 border-green-500">
1214
- <h2 class="text-xl font-bold text-green-800 dark:text-green-300 mb-4">✓ Phase 2: Fix svelte-components (COMPLETE - Dec 26, 2025)</h2>
1215
- <p class="text-sm text-green-600 dark:text-green-400 mb-4">All 13 raw buttons in 2 files have been migrated. New Button variants added: avatar, menu-item, menu-item-danger, card.</p>
1213
+ <div class="bg-status-success-bg rounded-lg p-6 border-2 border-accent-success">
1214
+ <h2 class="text-xl font-bold text-status-success-text mb-4">✓ Phase 2: Fix svelte-components (COMPLETE - Dec 26, 2025)</h2>
1215
+ <p class="text-sm text-accent-success mb-4">All 13 raw buttons in 2 files have been migrated. New Button variants added: avatar, menu-item, menu-item-danger, card.</p>
1216
1216
 
1217
1217
  <div class="space-y-3">
1218
1218
  <div class="flex items-start gap-3">
1219
1219
  <input type="checkbox" checked disabled class="mt-1" />
1220
1220
  <div>
1221
- <p class="font-medium text-green-700 dark:text-green-400 line-through">CropImage.svelte - fully migrated to Button</p>
1221
+ <p class="font-medium text-status-success-text line-through">CropImage.svelte - fully migrated to Button</p>
1222
1222
  </div>
1223
1223
  </div>
1224
1224
  <div class="flex items-start gap-3">
1225
1225
  <input type="checkbox" checked disabled class="mt-1" />
1226
1226
  <div>
1227
- <p class="font-medium text-green-700 dark:text-green-400 line-through">Header.svelte - 9 raw buttons → Button avatar/menu-item/menu-item-danger</p>
1227
+ <p class="font-medium text-status-success-text line-through">Header.svelte - 9 raw buttons → Button avatar/menu-item/menu-item-danger</p>
1228
1228
  </div>
1229
1229
  </div>
1230
1230
  <div class="flex items-start gap-3">
1231
1231
  <input type="checkbox" checked disabled class="mt-1" />
1232
1232
  <div>
1233
- <p class="font-medium text-green-700 dark:text-green-400 line-through">SuperLogin.svelte - 4 raw buttons → Button card/link variants</p>
1233
+ <p class="font-medium text-status-success-text line-through">SuperLogin.svelte - 4 raw buttons → Button card/link variants</p>
1234
1234
  </div>
1235
1235
  </div>
1236
1236
  <div class="flex items-start gap-3">
1237
1237
  <input type="checkbox" checked disabled class="mt-1" />
1238
1238
  <div>
1239
- <p class="font-medium text-green-700 dark:text-green-400 line-through">PR #25 updated with all fixes</p>
1239
+ <p class="font-medium text-status-success-text line-through">PR #25 updated with all fixes</p>
1240
1240
  </div>
1241
1241
  </div>
1242
1242
  </div>
1243
1243
  </div>
1244
1244
 
1245
- <div class="bg-green-50 dark:bg-green-900/20 rounded-lg p-6">
1246
- <h2 class="text-xl font-bold text-green-800 dark:text-green-300 mb-4">Phase 3: Fix Consumer Repos</h2>
1245
+ <div class="bg-status-success-bg rounded-lg p-6">
1246
+ <h2 class="text-xl font-bold text-status-success-text mb-4">Phase 3: Fix Consumer Repos</h2>
1247
1247
 
1248
- <p class="text-sm text-green-700 dark:text-green-400 mb-4">
1248
+ <p class="text-sm text-status-success-text mb-4">
1249
1249
  <strong>Do one repo at a time.</strong> Start with performers-portal (smaller), then micdrop-frontend.
1250
1250
  </p>
1251
1251
 
@@ -1253,46 +1253,46 @@ grep -r "from '\$lib/components/Button" /Users/peet/repos/micdrop-frontend/src -
1253
1253
  <div class="flex items-start gap-3">
1254
1254
  <input type="checkbox" class="mt-1" />
1255
1255
  <div>
1256
- <p class="font-medium text-green-700 dark:text-green-400">Update to latest @getmicdrop/svelte-components</p>
1256
+ <p class="font-medium text-status-success-text">Update to latest @getmicdrop/svelte-components</p>
1257
1257
  </div>
1258
1258
  </div>
1259
1259
  <div class="flex items-start gap-3">
1260
1260
  <input type="checkbox" class="mt-1" />
1261
1261
  <div>
1262
- <p class="font-medium text-green-700 dark:text-green-400">Replace raw &lt;button&gt; with Button component</p>
1262
+ <p class="font-medium text-status-success-text">Replace raw &lt;button&gt; with Button component</p>
1263
1263
  </div>
1264
1264
  </div>
1265
1265
  <div class="flex items-start gap-3">
1266
1266
  <input type="checkbox" class="mt-1" />
1267
1267
  <div>
1268
- <p class="font-medium text-green-700 dark:text-green-400">Replace raw &lt;input&gt; with Input component</p>
1268
+ <p class="font-medium text-status-success-text">Replace raw &lt;input&gt; with Input component</p>
1269
1269
  </div>
1270
1270
  </div>
1271
1271
  <div class="flex items-start gap-3">
1272
1272
  <input type="checkbox" class="mt-1" />
1273
1273
  <div>
1274
- <p class="font-medium text-green-700 dark:text-green-400">Delete local $lib/components that are now in shared lib</p>
1274
+ <p class="font-medium text-status-success-text">Delete local $lib/components that are now in shared lib</p>
1275
1275
  </div>
1276
1276
  </div>
1277
1277
  <div class="flex items-start gap-3">
1278
1278
  <input type="checkbox" class="mt-1" />
1279
1279
  <div>
1280
- <p class="font-medium text-green-700 dark:text-green-400">Update imports to use @getmicdrop/svelte-components</p>
1280
+ <p class="font-medium text-status-success-text">Update imports to use @getmicdrop/svelte-components</p>
1281
1281
  </div>
1282
1282
  </div>
1283
1283
  <div class="flex items-start gap-3">
1284
1284
  <input type="checkbox" class="mt-1" />
1285
1285
  <div>
1286
- <p class="font-medium text-green-700 dark:text-green-400">Test all affected pages</p>
1286
+ <p class="font-medium text-status-success-text">Test all affected pages</p>
1287
1287
  </div>
1288
1288
  </div>
1289
1289
  </div>
1290
1290
  </div>
1291
1291
 
1292
- <div class="bg-purple-50 dark:bg-purple-900/20 rounded-lg p-6">
1293
- <h2 class="text-xl font-bold text-purple-800 dark:text-purple-300 mb-4">Phase 4: Calendar Package (Separate)</h2>
1292
+ <div class="bg-status-info-bg rounded-lg p-6">
1293
+ <h2 class="text-xl font-bold text-brand-primary mb-4">Phase 4: Calendar Package (Separate)</h2>
1294
1294
 
1295
- <p class="text-sm text-purple-700 dark:text-purple-400 mb-4">
1295
+ <p class="text-sm text-brand-primary mb-4">
1296
1296
  Handle venue-calendar-npm as a separate project after the main consolidation.
1297
1297
  </p>
1298
1298
 
@@ -1300,13 +1300,13 @@ grep -r "from '\$lib/components/Button" /Users/peet/repos/micdrop-frontend/src -
1300
1300
  <div class="flex items-start gap-3">
1301
1301
  <input type="checkbox" class="mt-1" />
1302
1302
  <div>
1303
- <p class="font-medium text-purple-700 dark:text-purple-400">Fix raw buttons in venue-calendar-npm source</p>
1303
+ <p class="font-medium text-brand-primary">Fix raw buttons in venue-calendar-npm source</p>
1304
1304
  </div>
1305
1305
  </div>
1306
1306
  <div class="flex items-start gap-3">
1307
1307
  <input type="checkbox" class="mt-1" />
1308
1308
  <div>
1309
- <p class="font-medium text-purple-700 dark:text-purple-400">Re-embed updated calendar components</p>
1309
+ <p class="font-medium text-brand-primary">Re-embed updated calendar components</p>
1310
1310
  </div>
1311
1311
  </div>
1312
1312
  </div>