aural-ui 3.0.6 → 4.0.1

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 (169) hide show
  1. package/dist/components/aspect-ratio/AspectRatio.stories.tsx +271 -242
  2. package/dist/components/avatar/Avatar.stories.tsx +84 -70
  3. package/dist/components/button/Button.stories.tsx +7 -7
  4. package/dist/components/button/index.tsx +7 -7
  5. package/dist/components/card/Card.stories.tsx +3 -3
  6. package/dist/components/char-count/CharCount.stories.tsx +9 -9
  7. package/dist/components/circular-loader/CircularLoader.stories.tsx +109 -93
  8. package/dist/components/clamp-lines/ClampLines.stories.tsx +25 -0
  9. package/dist/components/clamp-lines/index.tsx +6 -1
  10. package/dist/components/collapsible/Collapsible.stories.tsx +1 -1
  11. package/dist/components/command/Command.stories.tsx +52 -38
  12. package/dist/components/dialog/Dialog.stories.tsx +89 -84
  13. package/dist/components/divider/Divider.stories.tsx +86 -60
  14. package/dist/components/dot-loader/DotLoader.stories.tsx +12 -12
  15. package/dist/components/drawer/Drawer.stories.tsx +74 -44
  16. package/dist/components/drawer/index.tsx +3 -3
  17. package/dist/components/dropdown/Dropdown.stories.tsx +42 -32
  18. package/dist/components/helper-text/HelperText.stories.tsx +2 -2
  19. package/dist/components/hover-card/HoverCard.stories.tsx +211 -178
  20. package/dist/components/input/Input.stories.tsx +2 -2
  21. package/dist/components/input/index.tsx +2 -0
  22. package/dist/components/label/Label.stories.tsx +10 -10
  23. package/dist/components/list/List.stories.tsx +58 -44
  24. package/dist/components/marquee/Marquee.stories.tsx +131 -113
  25. package/dist/components/otp-inputs/OtpInputs.stories.tsx +47 -35
  26. package/dist/components/overlay/Overlay.stories.tsx +98 -92
  27. package/dist/components/overlay/index.tsx +4 -4
  28. package/dist/components/popover/Popover.stories.tsx +132 -106
  29. package/dist/components/radio/Radio.stories.tsx +2 -2
  30. package/dist/components/resizable/Resizable.stories.tsx +186 -138
  31. package/dist/components/scroll-area/ScrollArea.stories.tsx +174 -120
  32. package/dist/components/search/Search.stories.tsx +81 -59
  33. package/dist/components/select/Select.stories.tsx +3 -1
  34. package/dist/components/sheet/Sheet.stories.tsx +68 -54
  35. package/dist/components/slider/Slider.stories.tsx +71 -47
  36. package/dist/components/stepper/Stepper.stories.tsx +16 -16
  37. package/dist/components/switch/Switch.stories.tsx +12 -12
  38. package/dist/components/table/Table.stories.tsx +8 -6
  39. package/dist/components/tabs/Tabs.stories.tsx +324 -268
  40. package/dist/components/textarea/TextArea.stories.tsx +1 -1
  41. package/dist/components/thumbnail-tags/ThumbnailTags.stories.tsx +16 -10
  42. package/dist/components/toast/Toast.stories.tsx +51 -45
  43. package/dist/components/toggle/Toggle.stories.tsx +111 -89
  44. package/dist/components/tooltip/Tooltip.stories.tsx +160 -144
  45. package/dist/icons/Icons.stories.tsx +2 -2
  46. package/dist/icons/ai-avatar-icon/AiAvatarIcon.stories.tsx +287 -237
  47. package/dist/icons/alert-icon/AlertIcon.stories.tsx +290 -248
  48. package/dist/icons/all-icons.tsx +97 -81
  49. package/dist/icons/angle-down-icon/AngleDownIcon.stories.tsx +312 -270
  50. package/dist/icons/apple-logo-icon/AppleLogoIcon.stories.tsx +294 -244
  51. package/dist/icons/arrow-box-left-icon/ArrowBoxLeftIcon.stories.tsx +309 -279
  52. package/dist/icons/arrow-corner-up-left-icon/ArrowCornerUpLeftIcon.stories.tsx +294 -258
  53. package/dist/icons/arrow-corner-up-right-icon/ArrowCornerUpRightIcon.stories.tsx +289 -255
  54. package/dist/icons/arrow-left-icon/ArrowLeftIcon.stories.tsx +288 -256
  55. package/dist/icons/arrow-right-icon/ArrowRightIcon.stories.tsx +322 -288
  56. package/dist/icons/arrow-right-up-icon/ArrowRightUpIcon.stories.tsx +340 -296
  57. package/dist/icons/art-board-icon/ArtBoardIcon.stories.tsx +197 -177
  58. package/dist/icons/audio-bar-icon/AudioBarIcon.stories.tsx +390 -328
  59. package/dist/icons/backward-ten-seconds-icon/BackwardTenSecondsIcon.stories.tsx +313 -277
  60. package/dist/icons/bubble-check-icon/BubbleCheckIcon.stories.tsx +367 -309
  61. package/dist/icons/bubble-crossed-icon/BubbleCrossedIcon.stories.tsx +356 -308
  62. package/dist/icons/bubble-sparkle-icon/BubbleSparkleIcon.stories.tsx +280 -234
  63. package/dist/icons/camera-icon/CameraIcon.stories.tsx +370 -326
  64. package/dist/icons/capital-a-letter-icon/CapitalALetterIcon.stories.tsx +300 -256
  65. package/dist/icons/chevron-double-left-icon/ChevronDoubleLeftIcon.stories.tsx +298 -262
  66. package/dist/icons/chevron-double-right-icon/ChevronDoubleRightIcon.stories.tsx +294 -260
  67. package/dist/icons/chevron-down-icon/ChevronDownIcon.stories.tsx +291 -259
  68. package/dist/icons/chevron-left-icon/ChevronLeftIcon.stories.tsx +286 -256
  69. package/dist/icons/chevron-right-icon/ChevronRightIcon.stories.tsx +282 -256
  70. package/dist/icons/chevron-up-icon/ChevronUpIcon.stories.tsx +292 -256
  71. package/dist/icons/circle-tick-icon/CircleTickIcon.stories.tsx +338 -290
  72. package/dist/icons/circular-play-icon/CircularPlayIcon.stories.tsx +167 -148
  73. package/dist/icons/coin-icon/CoinIcon.stories.tsx +342 -296
  74. package/dist/icons/coin-toons-icon/CoinToonsIcon.stories.tsx +342 -296
  75. package/dist/icons/column-wide-add-icon/ColumnWideAddIcon.stories.tsx +280 -238
  76. package/dist/icons/command-icon/CommandIcon.stories.tsx +328 -280
  77. package/dist/icons/copy-icon/CopyIcon.stories.tsx +294 -256
  78. package/dist/icons/cross-circle-icon/CrossCircleIcon.stories.tsx +285 -235
  79. package/dist/icons/cross-icon/CrossIcon.stories.tsx +308 -266
  80. package/dist/icons/download-icon/DownloadIcon.stories.tsx +271 -231
  81. package/dist/icons/edit-big-icon/EditBigIcon.stories.tsx +330 -278
  82. package/dist/icons/email-icon/EmailIcon.stories.tsx +303 -257
  83. package/dist/icons/expand-icon/ExpandIcon.stories.tsx +324 -286
  84. package/dist/icons/eye-close-icon/EyeCloseIcon.stories.tsx +317 -271
  85. package/dist/icons/eye-open-icon/EyeOpenIcon.stories.tsx +320 -272
  86. package/dist/icons/feature-shine-icon/FeatureShineIcon.stories.tsx +322 -280
  87. package/dist/icons/file-chart-icon/FileChartIcon.stories.tsx +315 -277
  88. package/dist/icons/file-text-icon/FileTextIcon.stories.tsx +199 -177
  89. package/dist/icons/filter-bar-row-icon/FilterBarRowIcon.stories.tsx +304 -264
  90. package/dist/icons/forward-ten-seconds-icon/ForwardTenSecondsIcon.stories.tsx +311 -277
  91. package/dist/icons/git-branch-icon/GitBranchIcon.stories.tsx +327 -287
  92. package/dist/icons/git-fork-icon/GitForkIcon.stories.tsx +314 -278
  93. package/dist/icons/globe-icon/GlobeIcon.stories.tsx +113 -98
  94. package/dist/icons/google-logo-icon/GoogleLogoIcon.stories.tsx +274 -226
  95. package/dist/icons/grip-vertical-icon/GripVerticalIcon.stories.tsx +349 -303
  96. package/dist/icons/head-icon/HeadIcon.stories.tsx +286 -246
  97. package/dist/icons/heart-icon/HeartIcon.stories.tsx +312 -268
  98. package/dist/icons/image-avatar-sparkle-icon/ImageAvatarSparkleIcon.stories.tsx +246 -210
  99. package/dist/icons/image-icon/ImageIcon.stories.tsx +330 -284
  100. package/dist/icons/import-folder-icon/ImportFolderIcon.stories.tsx +326 -282
  101. package/dist/icons/import-left-arrow-folder-icon/ImportLeftArrowFolderIcon.stories.tsx +330 -294
  102. package/dist/icons/indian-flag-icon/IndianFlagIcon.stories.tsx +288 -234
  103. package/dist/icons/instagram-icon/InstagramIcon.stories.tsx +386 -330
  104. package/dist/icons/layout-column-icon/LayoutColumnIcon.stories.tsx +305 -263
  105. package/dist/icons/layout-left-icon/LayoutLeftIcon.stories.tsx +295 -259
  106. package/dist/icons/layout-right-icon/LayoutRightIcon.stories.tsx +296 -256
  107. package/dist/icons/light-bulb-simple-icon/LightBulbSimpleIcon.stories.tsx +322 -282
  108. package/dist/icons/linked-in-icon/LinkedInIcon.stories.tsx +399 -359
  109. package/dist/icons/magic-book-icon/MagicBookIcon.stories.tsx +314 -272
  110. package/dist/icons/magic-edit-icon/MagicEditIcon.stories.tsx +238 -206
  111. package/dist/icons/maintenance-icon/MaintenanceIcon.stories.tsx +322 -276
  112. package/dist/icons/message-icon/MessageIcon.stories.tsx +192 -170
  113. package/dist/icons/minimize-icon/MinimizeIcon.stories.tsx +348 -304
  114. package/dist/icons/moon-icon/MoonIcon.stories.tsx +191 -167
  115. package/dist/icons/move-horizontal-icon/MoveHorizontalIcon.stories.tsx +380 -326
  116. package/dist/icons/move-vertical-icon/MoveVerticalIcon.stories.tsx +345 -291
  117. package/dist/icons/musical-note-icon/MusicalNoteIcon.stories.tsx +310 -266
  118. package/dist/icons/notepad-icon/NotepadIcon.stories.tsx +311 -271
  119. package/dist/icons/notes-icon/NotesIcon.stories.tsx +311 -271
  120. package/dist/icons/page-search-icon/PageSearchIcon.stories.tsx +309 -271
  121. package/dist/icons/page-text-icon/PageTextIcon.stories.tsx +248 -210
  122. package/dist/icons/paint-roll-icon/PaintRollIcon.stories.tsx +310 -262
  123. package/dist/icons/paper-plane-icon/PaperPlaneIcon.stories.tsx +274 -236
  124. package/dist/icons/pause-icon/PauseIcon.stories.tsx +324 -280
  125. package/dist/icons/pencil-icon/PencilIcon.stories.tsx +323 -281
  126. package/dist/icons/phone-icon/PhoneIcon.stories.tsx +288 -240
  127. package/dist/icons/plus-icon/PlusIcon.stories.tsx +315 -273
  128. package/dist/icons/pocket-studio-icon/PocketStudioIcon.stories.tsx +278 -234
  129. package/dist/icons/scroll-down-icon/ScrollDownIcon.stories.tsx +161 -151
  130. package/dist/icons/search-icon/SearchIcon.stories.tsx +324 -284
  131. package/dist/icons/setting-icon/SettingIcon.stories.tsx +306 -264
  132. package/dist/icons/share-icon/ShareIcon.stories.tsx +314 -272
  133. package/dist/icons/shield-icon/ShieldIcon.stories.tsx +281 -235
  134. package/dist/icons/site-logo-icon/SiteLogoIcon.stories.tsx +309 -250
  135. package/dist/icons/skip-backward-icon/SkipBackwardIcon.stories.tsx +317 -279
  136. package/dist/icons/skip-forward-icon/SkipForwardIcon.stories.tsx +315 -279
  137. package/dist/icons/sparkles-soft-icon/SparklesSoftIcon.stories.tsx +299 -253
  138. package/dist/icons/spinner-gradient-icon/SpinnerGradientIcon.stories.tsx +185 -169
  139. package/dist/icons/spinner-gradient-icon/index.tsx +6 -1
  140. package/dist/icons/spinner-solid-icon/SpinnerSolidIcon.stories.tsx +192 -168
  141. package/dist/icons/spinner-solid-icon/index.tsx +6 -1
  142. package/dist/icons/spinner-solid-neutral-icon/SpinnerSolidINeutralcon.stories.tsx +212 -178
  143. package/dist/icons/spinner-solid-neutral-icon/index.tsx +1 -1
  144. package/dist/icons/star-icon/StarIcon.stories.tsx +290 -244
  145. package/dist/icons/store-coin-icon/StoreCoinIcon.stories.tsx +286 -234
  146. package/dist/icons/suggestion-icon/SuggestionIcon.stories.tsx +272 -230
  147. package/dist/icons/sun-icon/SunIcon.stories.tsx +262 -226
  148. package/dist/icons/text-color-icon/TextColorIcon.stories.tsx +321 -279
  149. package/dist/icons/text-indicator-icon/TextIndicatorIcon.stories.tsx +332 -282
  150. package/dist/icons/threads-icon/ThreadsIcon.stories.tsx +394 -342
  151. package/dist/icons/tick-circle-icon/TickCircleIcon.stories.tsx +338 -290
  152. package/dist/icons/tick-icon/TickIcon.stories.tsx +364 -315
  153. package/dist/icons/trash-icon/TrashIcon.stories.tsx +293 -253
  154. package/dist/icons/twitter-x-icon/TwitterXIcon.stories.tsx +396 -338
  155. package/dist/icons/upload-icon/UploadIcon.stories.tsx +291 -247
  156. package/dist/icons/vertical-menu-icon/VerticalMenuIcon.stories.tsx +309 -271
  157. package/dist/icons/video-play-list-icon/VideoPlaylistIcon.stories.tsx +336 -290
  158. package/dist/icons/voice-playing-icon/VoicePlayingIcon.stories.tsx +382 -334
  159. package/dist/icons/volume-full-icon/VolumeFullIcon.stories.tsx +349 -305
  160. package/dist/icons/volume-half-icon/VolumeHalfIcon.stories.tsx +327 -295
  161. package/dist/icons/volume-off-icon/VolumeOffIcon.stories.tsx +336 -296
  162. package/dist/icons/warning-icon/WarningIcon.stories.tsx +314 -274
  163. package/dist/icons/youtube-icon/YoutubeIcon.stories.tsx +311 -261
  164. package/dist/index.cjs +84 -84
  165. package/dist/index.js +84 -84
  166. package/dist/styles/aural-all-theme.css +1222 -0
  167. package/dist/styles/{aural-theme.css → aural-dark-theme.css} +15 -3
  168. package/dist/styles/aural-light-theme.css +1047 -0
  169. package/package.json +1 -1
@@ -11,9 +11,9 @@ const meta: Meta<typeof MusicalNoteIcon> = {
11
11
  backgrounds: {
12
12
  default: "dark",
13
13
  values: [
14
- { name: "dark", value: "#0a0a0a" },
15
- { name: "darker", value: "#000000" },
16
- { name: "light", value: "#ffffff" },
14
+ { name: "dark", value: "var(--color-fm-surface-primary)" },
15
+ { name: "darker", value: "var(--color-fm-neutral-0)" },
16
+ { name: "light", value: "var(--color-fm-neutral-1100)" },
17
17
  ],
18
18
  },
19
19
  docs: {
@@ -40,59 +40,59 @@ const meta: Meta<typeof MusicalNoteIcon> = {
40
40
  background: transparent ;
41
41
  }
42
42
  body {
43
- background: #0a0a0a ;
43
+ background: var(--color-fm-surface-primary) ;
44
44
  }
45
45
  #storybook-docs {
46
- background: #0a0a0a ;
46
+ background: var(--color-fm-surface-primary) ;
47
47
  }
48
48
  .sbdocs-preview {
49
49
  background: transparent ;
50
50
  border: none ;
51
51
  }
52
52
  .sbdocs-h1, .sbdocs-h2, .sbdocs-h3, .sbdocs-h4, .sbdocs-h5, .sbdocs-h6 {
53
- color: white ;
53
+ color: var(--color-fm-icon-active) ;
54
54
  }
55
55
  .sbdocs-p, .sbdocs-li {
56
- color: rgba(255, 255, 255, 0.7) ;
56
+ color: var(--color-fm-secondary) ;
57
57
  }
58
58
  .sbdocs-code {
59
- background: rgba(255, 255, 255, 0.1) ;
60
- color: rgba(168, 85, 247, 1) ;
61
- border: 1px solid rgba(255, 255, 255, 0.1) ;
59
+ background: var(--color-fm-surface-secondary) ;
60
+ color: var(--color-fm-secondary-500) ;
61
+ border: 1px solid var(--color-fm-divider-secondary) ;
62
62
  }
63
63
  .sbdocs-pre {
64
- background: rgba(0, 0, 0, 0.4) ;
65
- border: 1px solid rgba(255, 255, 255, 0.1) ;
64
+ background: var(--color-fm-surface-secondary) ;
65
+ border: 1px solid var(--color-fm-divider-secondary) ;
66
66
  }
67
67
  .sbdocs-table {
68
- background: rgba(255, 255, 255, 0.05) ;
69
- border: 1px solid rgba(255, 255, 255, 0.1) ;
68
+ background: var(--color-fm-surface-secondary) ;
69
+ border: 1px solid var(--color-fm-divider-secondary) ;
70
70
  }
71
71
  .sbdocs-table th {
72
- background: rgba(255, 255, 255, 0.05) ;
73
- color: white ;
74
- border-bottom: 1px solid rgba(255, 255, 255, 0.1) ;
72
+ background: var(--color-fm-surface-secondary) ;
73
+ color: var(--color-fm-icon-active) ;
74
+ border-bottom: 1px solid var(--color-fm-divider-secondary) ;
75
75
  }
76
76
  .sbdocs-table td {
77
- color: rgba(255, 255, 255, 0.7) ;
78
- border-bottom: 1px solid rgba(255, 255, 255, 0.05) ;
77
+ color: var(--color-fm-secondary) ;
78
+ border-bottom: 1px solid var(--color-fm-divider-tertiary) ;
79
79
  }
80
80
  `}
81
81
  </style>
82
82
 
83
- <div className="min-h-screen bg-gradient-to-br from-gray-900 via-purple-900/20 to-gray-900">
83
+ <div className="bg-fm-surface-primary min-h-screen">
84
84
  {/* Header */}
85
- <div className="relative overflow-hidden border-b border-white/10 bg-black/20 backdrop-blur-xl">
86
- <div className="absolute inset-0 bg-gradient-to-r from-purple-500/10 via-transparent to-blue-500/10" />
85
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary relative overflow-hidden border-b backdrop-blur-xl">
86
+ <div className="from-fm-secondary-500/10 to-fm-icon-info/10 absolute inset-0 bg-linear-to-r via-transparent" />
87
87
  <div className="relative !mx-auto max-w-7xl px-6 py-16">
88
88
  <div className="!space-y-6 text-center">
89
- <div className="!mx-auto flex h-24 w-24 items-center justify-center rounded-2xl border border-purple-500/30 bg-gradient-to-br from-purple-500/20 to-pink-500/20">
90
- <MusicalNoteIcon className="h-12 w-12 text-purple-400" />
89
+ <div className="border-fm-secondary-500/30 from-fm-secondary-500/20 to-fm-secondary-500/20 !mx-auto flex h-24 w-24 items-center justify-center rounded-2xl border bg-linear-to-br">
90
+ <MusicalNoteIcon className="text-fm-secondary-600 h-12 w-12" />
91
91
  </div>
92
92
  <h1 className="!text-fm-primary text-5xl font-bold">
93
93
  MusicalNoteIcon
94
94
  </h1>
95
- <p className="!mx-auto max-w-3xl text-xl leading-relaxed !text-white/70">
95
+ <p className="text-fm-secondary! !mx-auto max-w-3xl text-xl leading-relaxed">
96
96
  A beautiful musical note icon for audio interfaces, music
97
97
  players, and sound-related elements. Built with
98
98
  accessibility in mind using Radix UI's AccessibleIcon
@@ -102,28 +102,28 @@ const meta: Meta<typeof MusicalNoteIcon> = {
102
102
  {/* Stats */}
103
103
  <div className="flex items-center justify-center gap-8 pt-8">
104
104
  <div className="text-center">
105
- <div className="text-3xl font-bold text-purple-300">
105
+ <div className="text-fm-secondary-600 text-3xl font-bold">
106
106
  Accessible
107
107
  </div>
108
- <div className="text-sm text-white/60">
108
+ <div className="text-fm-tertiary text-sm">
109
109
  Screen reader friendly
110
110
  </div>
111
111
  </div>
112
- <div className="h-8 w-px bg-white/20" />
112
+ <div className="bg-fm-divider-primary h-8 w-px" />
113
113
  <div className="text-center">
114
- <div className="text-3xl font-bold text-pink-300">
114
+ <div className="text-fm-secondary-600 text-3xl font-bold">
115
115
  Scalable
116
116
  </div>
117
- <div className="text-sm text-white/60">
117
+ <div className="text-fm-tertiary text-sm">
118
118
  Any size needed
119
119
  </div>
120
120
  </div>
121
- <div className="h-8 w-px bg-white/20" />
121
+ <div className="bg-fm-divider-primary h-8 w-px" />
122
122
  <div className="text-center">
123
- <div className="text-3xl font-bold text-blue-300">
123
+ <div className="text-fm-icon-info text-3xl font-bold">
124
124
  Flexible
125
125
  </div>
126
- <div className="text-sm text-white/60">
126
+ <div className="text-fm-tertiary text-sm">
127
127
  Customizable styling
128
128
  </div>
129
129
  </div>
@@ -136,16 +136,16 @@ const meta: Meta<typeof MusicalNoteIcon> = {
136
136
  <div className="!mx-auto max-w-7xl !space-y-16 px-6 py-12">
137
137
  {/* Quick Usage */}
138
138
  <div className="!space-y-8">
139
- <h2 className="text-center text-3xl font-bold !text-white">
139
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
140
140
  Quick Start
141
141
  </h2>
142
142
  <div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
143
143
  <div className="!space-y-4">
144
- <h3 className="text-xl font-semibold !text-purple-300">
144
+ <h3 className="text-fm-secondary-600! text-xl font-semibold">
145
145
  Basic Usage
146
146
  </h3>
147
- <div className="rounded-lg bg-black/40 p-4">
148
- <pre className="overflow-x-auto text-sm !text-green-300">
147
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
148
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
149
149
  {`import { MusicalNoteIcon } from "@icons/musical-note-icon"
150
150
 
151
151
  function MyComponent() {
@@ -161,13 +161,13 @@ function MyComponent() {
161
161
  </div>
162
162
 
163
163
  <div className="!space-y-4">
164
- <h3 className="text-xl font-semibold !text-purple-300">
164
+ <h3 className="text-fm-secondary-600! text-xl font-semibold">
165
165
  Live Preview
166
166
  </h3>
167
- <div className="flex h-32 items-center justify-center rounded-lg border border-white/10 bg-white/5">
168
- <div className="flex items-center gap-3 rounded-lg border border-purple-500/20 bg-purple-500/10 px-4 py-2">
169
- <MusicalNoteIcon className="h-5 w-5 text-purple-400" />
170
- <span className="text-white">Now Playing</span>
167
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary flex h-32 items-center justify-center rounded-lg border">
168
+ <div className="border-fm-secondary-500/20 bg-fm-secondary-500/10 flex items-center gap-3 rounded-lg border px-4 py-2">
169
+ <MusicalNoteIcon className="text-fm-secondary-600 h-5 w-5" />
170
+ <span className="text-fm-icon-active">Now Playing</span>
171
171
  </div>
172
172
  </div>
173
173
  </div>
@@ -176,122 +176,130 @@ function MyComponent() {
176
176
 
177
177
  {/* Props Documentation */}
178
178
  <div className="!space-y-8">
179
- <h2 className="text-center text-3xl font-bold !text-white">
179
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
180
180
  Props & Configuration
181
181
  </h2>
182
182
 
183
- <div className="overflow-hidden rounded-lg border border-white/10 bg-white/5">
184
- <div className="bg-white/5 p-4">
185
- <h3 className="text-xl font-semibold !text-white">Props</h3>
183
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary overflow-hidden rounded-lg border">
184
+ <div className="bg-fm-surface-secondary p-4">
185
+ <h3 className="text-fm-icon-active! text-xl font-semibold">
186
+ Props
187
+ </h3>
186
188
  </div>
187
189
  <table className="!my-0 w-full">
188
- <thead className="bg-white/5">
189
- <tr className="border-b border-white/10">
190
- <th className="px-6 py-4 text-left text-sm font-semibold !text-white">
190
+ <thead className="bg-fm-surface-secondary">
191
+ <tr className="border-fm-divider-secondary border-b">
192
+ <th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
191
193
  Prop
192
194
  </th>
193
- <th className="px-6 py-4 text-left text-sm font-semibold !text-white">
195
+ <th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
194
196
  Type
195
197
  </th>
196
- <th className="px-6 py-4 text-left text-sm font-semibold !text-white">
198
+ <th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
197
199
  Default
198
200
  </th>
199
- <th className="px-6 py-4 text-left text-sm font-semibold !text-white">
201
+ <th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
200
202
  Description
201
203
  </th>
202
204
  </tr>
203
205
  </thead>
204
206
  <tbody>
205
207
  {" "}
206
- <tr className="!bg-black/10">
207
- <td className="px-6 py-4 font-mono text-sm !text-blue-300">
208
+ <tr className="bg-fm-surface-secondary!">
209
+ <td className="text-fm-icon-info! px-6 py-4 font-mono text-sm">
208
210
  withAccessibility
209
211
  </td>
210
- <td className="px-6 py-4 text-sm !text-white/70">
212
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
211
213
  boolean
212
214
  </td>
213
- <td className="px-6 py-4 text-sm !text-white/50">
215
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
214
216
  true
215
217
  </td>
216
- <td className="px-6 py-4 text-sm !text-white/70">
218
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
217
219
  Whether to wrap the icon with accessibility feature
218
220
  </td>
219
221
  </tr>
220
- <tr className="border-b border-white/5 !bg-black/10">
221
- <td className="px-6 py-4 font-mono text-sm !text-purple-300">
222
+ <tr className="border-fm-divider-tertiary bg-fm-surface-secondary! border-b">
223
+ <td className="text-fm-secondary-600! px-6 py-4 font-mono text-sm">
222
224
  height
223
225
  </td>
224
- <td className="px-6 py-4 text-sm !text-white/70">
226
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
225
227
  number | string
226
228
  </td>
227
- <td className="px-6 py-4 text-sm !text-white/50">12</td>
228
- <td className="px-6 py-4 text-sm !text-white/70">
229
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
230
+ 12
231
+ </td>
232
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
229
233
  Height of the icon in pixels
230
234
  </td>
231
235
  </tr>
232
- <tr className="border-b border-white/5">
233
- <td className="px-6 py-4 font-mono text-sm !text-purple-300">
236
+ <tr className="border-fm-divider-tertiary border-b">
237
+ <td className="text-fm-secondary-600! px-6 py-4 font-mono text-sm">
234
238
  fill
235
239
  </td>
236
- <td className="px-6 py-4 text-sm !text-white/70">
240
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
237
241
  string
238
242
  </td>
239
- <td className="px-6 py-4 text-sm !text-white/50">
243
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
240
244
  none
241
245
  </td>
242
- <td className="px-6 py-4 text-sm !text-white/70">
246
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
243
247
  Fill color of the icon (uses stroke by default)
244
248
  </td>
245
249
  </tr>
246
- <tr className="border-b border-white/5 !bg-black/10">
247
- <td className="px-6 py-4 font-mono text-sm !text-purple-300">
250
+ <tr className="border-fm-divider-tertiary bg-fm-surface-secondary! border-b">
251
+ <td className="text-fm-secondary-600! px-6 py-4 font-mono text-sm">
248
252
  stroke
249
253
  </td>
250
- <td className="px-6 py-4 text-sm !text-white/70">
254
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
251
255
  string
252
256
  </td>
253
- <td className="px-6 py-4 text-sm !text-white/50">
257
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
254
258
  currentColor
255
259
  </td>
256
- <td className="px-6 py-4 text-sm !text-white/70">
260
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
257
261
  Stroke color of the icon
258
262
  </td>
259
263
  </tr>
260
- <tr className="border-b border-white/5">
261
- <td className="px-6 py-4 font-mono text-sm !text-purple-300">
264
+ <tr className="border-fm-divider-tertiary border-b">
265
+ <td className="text-fm-secondary-600! px-6 py-4 font-mono text-sm">
262
266
  strokeWidth
263
267
  </td>
264
- <td className="px-6 py-4 text-sm !text-white/70">
268
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
265
269
  number | string
266
270
  </td>
267
- <td className="px-6 py-4 text-sm !text-white/50">
271
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
268
272
  1.125
269
273
  </td>
270
- <td className="px-6 py-4 text-sm !text-white/70">
274
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
271
275
  Width of the stroke
272
276
  </td>
273
277
  </tr>
274
- <tr className="border-b border-white/5 !bg-black/10">
275
- <td className="px-6 py-4 font-mono text-sm !text-purple-300">
278
+ <tr className="border-fm-divider-tertiary bg-fm-surface-secondary! border-b">
279
+ <td className="text-fm-secondary-600! px-6 py-4 font-mono text-sm">
276
280
  className
277
281
  </td>
278
- <td className="px-6 py-4 text-sm !text-white/70">
282
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
279
283
  string
280
284
  </td>
281
- <td className="px-6 py-4 text-sm !text-white/50">-</td>
282
- <td className="px-6 py-4 text-sm !text-white/70">
285
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
286
+ -
287
+ </td>
288
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
283
289
  CSS classes for styling
284
290
  </td>
285
291
  </tr>
286
- <tr className="!bg-black/10">
287
- <td className="px-6 py-4 font-mono text-sm !text-purple-300">
292
+ <tr className="bg-fm-surface-secondary!">
293
+ <td className="text-fm-secondary-600! px-6 py-4 font-mono text-sm">
288
294
  ...svgProps
289
295
  </td>
290
- <td className="px-6 py-4 text-sm !text-white/70">
296
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
291
297
  SVGProps
292
298
  </td>
293
- <td className="px-6 py-4 text-sm !text-white/50">-</td>
294
- <td className="px-6 py-4 text-sm !text-white/70">
299
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
300
+ -
301
+ </td>
302
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
295
303
  All standard SVG element props
296
304
  </td>
297
305
  </tr>
@@ -302,50 +310,62 @@ function MyComponent() {
302
310
 
303
311
  {/* Size Variations */}
304
312
  <div className="!space-y-8">
305
- <h2 className="text-center text-3xl font-bold !text-white">
313
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
306
314
  Size Variations
307
315
  </h2>
308
- <div className="rounded-lg border border-white/10 bg-white/5 p-8">
316
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-8">
309
317
  <div className="!space-y-6">
310
318
  <div className="grid grid-cols-1 gap-8 md:grid-cols-2">
311
319
  <div className="!space-y-4">
312
- <h3 className="text-lg font-semibold !text-purple-300">
320
+ <h3 className="text-fm-secondary-600! text-lg font-semibold">
313
321
  Standard Sizes
314
322
  </h3>
315
- <div className="flex items-end gap-6 rounded-lg bg-black/20 p-6">
323
+ <div className="bg-fm-surface-secondary flex items-end gap-6 rounded-lg p-6">
316
324
  <div className="text-center">
317
- <MusicalNoteIcon className="!mx-auto mb-2 h-3 w-3 text-purple-400" />
318
- <span className="text-xs text-white/60">12px</span>
325
+ <MusicalNoteIcon className="text-fm-secondary-600 !mx-auto mb-2 h-3 w-3" />
326
+ <span className="text-fm-tertiary text-xs">
327
+ 12px
328
+ </span>
319
329
  </div>
320
330
  <div className="text-center">
321
- <MusicalNoteIcon className="!mx-auto mb-2 h-4 w-4 text-purple-400" />
322
- <span className="text-xs text-white/60">16px</span>
331
+ <MusicalNoteIcon className="text-fm-secondary-600 !mx-auto mb-2 h-4 w-4" />
332
+ <span className="text-fm-tertiary text-xs">
333
+ 16px
334
+ </span>
323
335
  </div>
324
336
  <div className="text-center">
325
- <MusicalNoteIcon className="!mx-auto mb-2 h-5 w-5 text-purple-400" />
326
- <span className="text-xs text-white/60">20px</span>
337
+ <MusicalNoteIcon className="text-fm-secondary-600 !mx-auto mb-2 h-5 w-5" />
338
+ <span className="text-fm-tertiary text-xs">
339
+ 20px
340
+ </span>
327
341
  </div>
328
342
  <div className="text-center">
329
- <MusicalNoteIcon className="!mx-auto mb-2 h-6 w-6 text-purple-400" />
330
- <span className="text-xs text-white/60">24px</span>
343
+ <MusicalNoteIcon className="text-fm-secondary-600 !mx-auto mb-2 h-6 w-6" />
344
+ <span className="text-fm-tertiary text-xs">
345
+ 24px
346
+ </span>
331
347
  </div>
332
348
  <div className="text-center">
333
- <MusicalNoteIcon className="!mx-auto mb-2 h-8 w-8 text-purple-400" />
334
- <span className="text-xs text-white/60">32px</span>
349
+ <MusicalNoteIcon className="text-fm-secondary-600 !mx-auto mb-2 h-8 w-8" />
350
+ <span className="text-fm-tertiary text-xs">
351
+ 32px
352
+ </span>
335
353
  </div>
336
354
  <div className="text-center">
337
- <MusicalNoteIcon className="!mx-auto mb-2 h-12 w-12 text-purple-400" />
338
- <span className="text-xs text-white/60">48px</span>
355
+ <MusicalNoteIcon className="text-fm-secondary-600 !mx-auto mb-2 h-12 w-12" />
356
+ <span className="text-fm-tertiary text-xs">
357
+ 48px
358
+ </span>
339
359
  </div>
340
360
  </div>
341
361
  </div>
342
362
 
343
363
  <div className="!space-y-4">
344
- <h3 className="text-lg font-semibold !text-purple-300">
364
+ <h3 className="text-fm-secondary-600! text-lg font-semibold">
345
365
  Code Example
346
366
  </h3>
347
- <div className="rounded-lg bg-black/40 p-4">
348
- <pre className="overflow-x-auto text-sm !text-blue-300">
367
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
368
+ <pre className="text-fm-icon-info! overflow-x-auto text-sm">
349
369
  {`// Small (16px)
350
370
  <MusicalNoteIcon className="h-4 w-4" />
351
371
 
@@ -367,67 +387,67 @@ function MyComponent() {
367
387
 
368
388
  {/* Color Variations */}
369
389
  <div className="!space-y-8">
370
- <h2 className="text-center text-3xl font-bold !text-white">
390
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
371
391
  Color Variations
372
392
  </h2>
373
393
  <div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
374
394
  <div className="!space-y-4">
375
- <h3 className="text-lg font-semibold !text-purple-300">
395
+ <h3 className="text-fm-secondary-600! text-lg font-semibold">
376
396
  Musical Themes
377
397
  </h3>
378
- <div className="!space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
398
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
379
399
  <div className="flex items-center gap-4">
380
- <MusicalNoteIcon className="h-6 w-6 text-purple-400" />
400
+ <MusicalNoteIcon className="text-fm-secondary-600 h-6 w-6" />
381
401
  <div>
382
- <div className="text-sm font-medium text-white">
402
+ <div className="text-fm-icon-active text-sm font-medium">
383
403
  Classic
384
404
  </div>
385
- <div className="text-xs text-white/60">
386
- text-purple-400
405
+ <div className="text-fm-tertiary text-xs">
406
+ text-fm-secondary-600
387
407
  </div>
388
408
  </div>
389
409
  </div>
390
410
  <div className="flex items-center gap-4">
391
- <MusicalNoteIcon className="h-6 w-6 text-pink-400" />
411
+ <MusicalNoteIcon className="text-fm-secondary-600 h-6 w-6" />
392
412
  <div>
393
- <div className="text-sm font-medium text-white">
413
+ <div className="text-fm-icon-active text-sm font-medium">
394
414
  Pop
395
415
  </div>
396
- <div className="text-xs text-white/60">
397
- text-pink-400
416
+ <div className="text-fm-tertiary text-xs">
417
+ text-fm-secondary-600
398
418
  </div>
399
419
  </div>
400
420
  </div>
401
421
  <div className="flex items-center gap-4">
402
- <MusicalNoteIcon className="h-6 w-6 text-blue-400" />
422
+ <MusicalNoteIcon className="text-fm-icon-info h-6 w-6" />
403
423
  <div>
404
- <div className="text-sm font-medium text-white">
424
+ <div className="text-fm-icon-active text-sm font-medium">
405
425
  Jazz
406
426
  </div>
407
- <div className="text-xs text-white/60">
408
- text-blue-400
427
+ <div className="text-fm-tertiary text-xs">
428
+ text-fm-icon-info
409
429
  </div>
410
430
  </div>
411
431
  </div>
412
432
  <div className="flex items-center gap-4">
413
- <MusicalNoteIcon className="h-6 w-6 text-green-400" />
433
+ <MusicalNoteIcon className="text-fm-icon-positive h-6 w-6" />
414
434
  <div>
415
- <div className="text-sm font-medium text-white">
435
+ <div className="text-fm-icon-active text-sm font-medium">
416
436
  Electronic
417
437
  </div>
418
- <div className="text-xs text-white/60">
419
- text-green-400
438
+ <div className="text-fm-tertiary text-xs">
439
+ text-fm-icon-positive
420
440
  </div>
421
441
  </div>
422
442
  </div>
423
443
  <div className="flex items-center gap-4">
424
- <MusicalNoteIcon className="h-6 w-6 text-orange-400" />
444
+ <MusicalNoteIcon className="text-fm-icon-warning h-6 w-6" />
425
445
  <div>
426
- <div className="text-sm font-medium text-white">
446
+ <div className="text-fm-icon-active text-sm font-medium">
427
447
  Rock
428
448
  </div>
429
- <div className="text-xs text-white/60">
430
- text-orange-400
449
+ <div className="text-fm-tertiary text-xs">
450
+ text-fm-icon-warning
431
451
  </div>
432
452
  </div>
433
453
  </div>
@@ -435,11 +455,11 @@ function MyComponent() {
435
455
  </div>
436
456
 
437
457
  <div className="!space-y-4">
438
- <h3 className="text-lg font-semibold !text-purple-300">
458
+ <h3 className="text-fm-secondary-600! text-lg font-semibold">
439
459
  Custom Colors
440
460
  </h3>
441
- <div className="rounded-lg bg-black/40 p-4">
442
- <pre className="overflow-x-auto text-sm !text-green-300">
461
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
462
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
443
463
  {`// Using Tailwind classes
444
464
  <MusicalNoteIcon className="h-6 w-6 text-purple-400" />
445
465
  <MusicalNoteIcon className="h-6 w-6 text-pink-500" />
@@ -464,33 +484,33 @@ function MyComponent() {
464
484
 
465
485
  {/* Usage Examples */}
466
486
  <div className="!space-y-8">
467
- <h2 className="text-center text-3xl font-bold !text-white">
487
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
468
488
  Usage Examples
469
489
  </h2>
470
490
 
471
491
  <div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
472
492
  {/* Music Player */}
473
493
  <div className="!space-y-4">
474
- <h3 className="text-lg font-semibold !text-purple-300">
494
+ <h3 className="text-fm-secondary-600! text-lg font-semibold">
475
495
  Music Player
476
496
  </h3>
477
497
  <div className="!space-y-4">
478
- <div className="rounded-lg border border-white/10 bg-white/5 p-4">
498
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-4">
479
499
  <div className="flex items-center gap-3">
480
- <div className="flex h-12 w-12 items-center justify-center rounded-lg bg-purple-500/20">
481
- <MusicalNoteIcon className="h-6 w-6 text-purple-400" />
500
+ <div className="bg-fm-secondary-500/20 flex h-12 w-12 items-center justify-center rounded-lg">
501
+ <MusicalNoteIcon className="text-fm-secondary-600 h-6 w-6" />
482
502
  </div>
483
503
  <div className="flex-1">
484
- <h4 className="font-medium !text-white">
504
+ <h4 className="text-fm-icon-active! font-medium">
485
505
  Bohemian Rhapsody
486
506
  </h4>
487
- <p className="text-sm !text-white/60">Queen</p>
507
+ <p className="text-fm-tertiary! text-sm">Queen</p>
488
508
  </div>
489
- <div className="text-sm text-white/60">3:42</div>
509
+ <div className="text-fm-tertiary text-sm">3:42</div>
490
510
  </div>
491
511
  </div>
492
- <div className="rounded-lg bg-black/40 p-4">
493
- <pre className="overflow-x-auto text-sm !text-green-300">
512
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
513
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
494
514
  {`<div className="flex items-center gap-3">
495
515
  <div className="flex h-12 w-12 items-center justify-center rounded-lg bg-purple-500/20">
496
516
  <MusicalNoteIcon className="h-6 w-6 text-purple-400" />
@@ -508,21 +528,21 @@ function MyComponent() {
508
528
 
509
529
  {/* Audio Upload */}
510
530
  <div className="!space-y-4">
511
- <h3 className="text-lg font-semibold !text-purple-300">
531
+ <h3 className="text-fm-secondary-600! text-lg font-semibold">
512
532
  Audio Upload
513
533
  </h3>
514
534
  <div className="!space-y-4">
515
- <div className="rounded-lg border-2 border-dashed border-purple-500/30 bg-purple-500/5 p-8 text-center">
516
- <MusicalNoteIcon className="!mx-auto mb-4 h-12 w-12 text-purple-400" />
517
- <h4 className="mb-2 font-medium !text-white">
535
+ <div className="border-fm-secondary-500/30 bg-fm-secondary-500/5 rounded-lg border-2 border-dashed p-8 text-center">
536
+ <MusicalNoteIcon className="text-fm-secondary-600 !mx-auto mb-4 h-12 w-12" />
537
+ <h4 className="text-fm-icon-active! mb-2 font-medium">
518
538
  Drop your audio files here
519
539
  </h4>
520
- <p className="text-sm !text-white/60">
540
+ <p className="text-fm-tertiary! text-sm">
521
541
  Supports MP3, WAV, FLAC formats
522
542
  </p>
523
543
  </div>
524
- <div className="rounded-lg bg-black/40 p-4">
525
- <pre className="overflow-x-auto text-sm !text-green-300">
544
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
545
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
526
546
  {`<div className="rounded-lg border-2 border-dashed border-purple-500/30 bg-purple-500/5 p-8 text-center">
527
547
  <MusicalNoteIcon className="mx-auto mb-4 h-12 w-12 text-purple-400" />
528
548
  <h4 className="mb-2 font-medium text-white">
@@ -539,37 +559,37 @@ function MyComponent() {
539
559
 
540
560
  {/* Navigation Menu */}
541
561
  <div className="!space-y-4">
542
- <h3 className="text-lg font-semibold !text-purple-300">
562
+ <h3 className="text-fm-secondary-600! text-lg font-semibold">
543
563
  Navigation Menu
544
564
  </h3>
545
565
  <div className="!space-y-4">
546
- <div className="rounded-lg border border-white/10 bg-white/5 p-4">
566
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-4">
547
567
  <nav className="!space-y-2">
548
568
  <a
549
569
  href="#"
550
- className="flex items-center gap-3 rounded-lg bg-purple-500/20 px-3 py-2 text-purple-200"
570
+ className="bg-fm-secondary-500/20 text-fm-secondary-600 flex items-center gap-3 rounded-lg px-3 py-2"
551
571
  >
552
572
  <MusicalNoteIcon className="h-5 w-5" />
553
573
  <span>My Music</span>
554
574
  </a>
555
575
  <a
556
576
  href="#"
557
- className="flex items-center gap-3 px-3 py-2 text-white/60 hover:text-white"
577
+ className="text-fm-tertiary hover:text-fm-icon-active flex items-center gap-3 px-3 py-2"
558
578
  >
559
579
  <span className="h-5 w-5">📀</span>
560
580
  <span>Albums</span>
561
581
  </a>
562
582
  <a
563
583
  href="#"
564
- className="flex items-center gap-3 px-3 py-2 text-white/60 hover:text-white"
584
+ className="text-fm-tertiary hover:text-fm-icon-active flex items-center gap-3 px-3 py-2"
565
585
  >
566
586
  <span className="h-5 w-5">🎵</span>
567
587
  <span>Playlists</span>
568
588
  </a>
569
589
  </nav>
570
590
  </div>
571
- <div className="rounded-lg bg-black/40 p-4">
572
- <pre className="overflow-x-auto text-sm !text-green-300">
591
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
592
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
573
593
  {`<nav className="space-y-2">
574
594
  <a href="#" className="flex items-center gap-3 rounded-lg bg-purple-500/20 px-3 py-2 text-purple-200">
575
595
  <MusicalNoteIcon className="h-5 w-5" />
@@ -587,26 +607,26 @@ function MyComponent() {
587
607
 
588
608
  {/* Status Indicator */}
589
609
  <div className="!space-y-4">
590
- <h3 className="text-lg font-semibold !text-purple-300">
610
+ <h3 className="text-fm-secondary-600! text-lg font-semibold">
591
611
  Status Indicator
592
612
  </h3>
593
613
  <div className="!space-y-4">
594
614
  <div className="flex items-center gap-4">
595
615
  <div className="relative">
596
- <MusicalNoteIcon className="h-6 w-6 text-purple-400" />
597
- <div className="absolute -top-1 -right-1 h-3 w-3 animate-pulse rounded-full bg-green-500"></div>
616
+ <MusicalNoteIcon className="text-fm-secondary-600 h-6 w-6" />
617
+ <div className="bg-fm-icon-positive absolute -top-1 -right-1 h-3 w-3 animate-pulse rounded-full"></div>
598
618
  </div>
599
619
  <div>
600
- <div className="font-medium text-white">
620
+ <div className="text-fm-icon-active font-medium">
601
621
  Audio Playing
602
622
  </div>
603
- <div className="text-sm text-white/60">
623
+ <div className="text-fm-tertiary text-sm">
604
624
  Click to pause
605
625
  </div>
606
626
  </div>
607
627
  </div>
608
- <div className="rounded-lg bg-black/40 p-4">
609
- <pre className="overflow-x-auto text-sm !text-green-300">
628
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
629
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
610
630
  {`<div className="relative">
611
631
  <MusicalNoteIcon className="h-6 w-6 text-purple-400" />
612
632
  <div className="absolute -top-1 -right-1 h-3 w-3 rounded-full bg-green-500 animate-pulse"></div>
@@ -620,64 +640,64 @@ function MyComponent() {
620
640
 
621
641
  {/* Accessibility */}
622
642
  <div className="!space-y-8">
623
- <h2 className="text-center text-3xl font-bold !text-white">
643
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
624
644
  Accessibility Features
625
645
  </h2>
626
646
  <div className="grid grid-cols-1 gap-8 md:grid-cols-2">
627
- <div className="!space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
628
- <h3 className="text-lg font-semibold !text-green-300">
647
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
648
+ <h3 className="text-fm-icon-positive! text-lg font-semibold">
629
649
  ✅ Built-in Features
630
650
  </h3>
631
- <ul className="!space-y-2 text-sm !text-white/70">
632
- <li className="!text-white/70">
651
+ <ul className="text-fm-secondary! !space-y-2 text-sm">
652
+ <li className="text-fm-secondary!">
633
653
  Uses Radix UI AccessibleIcon wrapper
634
654
  </li>
635
- <li className="!text-white/70">
655
+ <li className="text-fm-secondary!">
636
656
  Provides screen reader label "Musical Note Icon"
637
657
  </li>
638
- <li className="!text-white/70">
658
+ <li className="text-fm-secondary!">
639
659
  Supports keyboard navigation when interactive
640
660
  </li>
641
- <li className="!text-white/70">
661
+ <li className="text-fm-secondary!">
642
662
  Maintains proper color contrast ratios
643
663
  </li>
644
- <li className="!text-white/70">
664
+ <li className="text-fm-secondary!">
645
665
  Scales with user's font size preferences
646
666
  </li>
647
667
  </ul>
648
668
  </div>
649
669
 
650
- <div className="!space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
651
- <h3 className="text-lg font-semibold !text-purple-300">
670
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
671
+ <h3 className="text-fm-secondary-600! text-lg font-semibold">
652
672
  💡 Best Practices
653
673
  </h3>
654
- <ul className="!space-y-2 text-sm text-white/70">
655
- <li className="!text-white/70">
674
+ <ul className="text-fm-secondary !space-y-2 text-sm">
675
+ <li className="text-fm-secondary!">
656
676
  Always pair with descriptive text
657
677
  </li>
658
- <li className="!text-white/70">
678
+ <li className="text-fm-secondary!">
659
679
  Use consistent colors for music states
660
680
  </li>
661
- <li className="!text-white/70">
681
+ <li className="text-fm-secondary!">
662
682
  Ensure sufficient color contrast
663
683
  </li>
664
- <li className="!text-white/70">
684
+ <li className="text-fm-secondary!">
665
685
  Add focus states for interactive elements
666
686
  </li>
667
- <li className="!text-white/70">
687
+ <li className="text-fm-secondary!">
668
688
  Consider motion sensitivity for animations
669
689
  </li>
670
690
  </ul>
671
691
  </div>
672
692
  </div>
673
693
 
674
- <div className="rounded-lg border border-white/10 bg-white/5 p-6">
675
- <h3 className="mb-4 text-lg font-semibold !text-purple-300">
694
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-6">
695
+ <h3 className="text-fm-secondary-600! mb-4 text-lg font-semibold">
676
696
  Custom Accessibility Label
677
697
  </h3>
678
698
  <div className="grid grid-cols-1 gap-6 lg:grid-cols-2">
679
- <div className="rounded-lg bg-black/40 p-4">
680
- <pre className="overflow-x-auto text-sm !text-blue-300">
699
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
700
+ <pre className="text-fm-icon-info! overflow-x-auto text-sm">
681
701
  {`// Custom implementation with specific label
682
702
  import { AccessibleIcon } from "@radix-ui/react-accessible-icon"
683
703
 
@@ -697,13 +717,13 @@ function CustomMusicalNoteIcon({ label = "Musical Note", ...props }) {
697
717
  </pre>
698
718
  </div>
699
719
  <div className="!space-y-4">
700
- <p className="text-sm !text-white/70">
720
+ <p className="text-fm-secondary! text-sm">
701
721
  For specific contexts, you can wrap the MusicalNoteIcon
702
722
  with a custom AccessibleIcon component that provides
703
723
  more descriptive labels.
704
724
  </p>
705
- <div className="rounded-lg border border-purple-500/20 bg-purple-500/10 p-4">
706
- <div className="flex items-center gap-2 text-sm text-purple-200">
725
+ <div className="border-fm-secondary-500/20 bg-fm-secondary-500/10 rounded-lg border p-4">
726
+ <div className="text-fm-secondary-600 flex items-center gap-2 text-sm">
707
727
  <MusicalNoteIcon className="h-4 w-4" />
708
728
  <span>
709
729
  This approach gives screen readers more context
@@ -717,52 +737,60 @@ function CustomMusicalNoteIcon({ label = "Musical Note", ...props }) {
717
737
 
718
738
  {/* Related Icons */}
719
739
  <div className="!space-y-8">
720
- <h2 className="text-center text-3xl font-bold !text-white">
740
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
721
741
  Related Icons
722
742
  </h2>
723
743
  <div className="grid grid-cols-2 gap-6 md:grid-cols-4">
724
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
725
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-purple-500/20">
744
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
745
+ <div className="bg-fm-secondary-500/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
726
746
  <span className="text-2xl">🎵</span>
727
747
  </div>
728
748
  <div>
729
- <div className="font-medium text-white">PlayIcon</div>
730
- <div className="text-xs text-white/60">
749
+ <div className="text-fm-icon-active font-medium">
750
+ PlayIcon
751
+ </div>
752
+ <div className="text-fm-tertiary text-xs">
731
753
  Playback controls
732
754
  </div>
733
755
  </div>
734
756
  </div>
735
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
736
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-pink-500/20">
757
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
758
+ <div className="bg-fm-secondary-500/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
737
759
  <span className="text-2xl">⏸️</span>
738
760
  </div>
739
761
  <div>
740
- <div className="font-medium text-white">PauseIcon</div>
741
- <div className="text-xs text-white/60">
762
+ <div className="text-fm-icon-active font-medium">
763
+ PauseIcon
764
+ </div>
765
+ <div className="text-fm-tertiary text-xs">
742
766
  Pause controls
743
767
  </div>
744
768
  </div>
745
769
  </div>
746
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
747
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-blue-500/20">
770
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
771
+ <div className="bg-fm-icon-info/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
748
772
  <span className="text-2xl">🔊</span>
749
773
  </div>
750
774
  <div>
751
- <div className="font-medium text-white">VolumeIcon</div>
752
- <div className="text-xs text-white/60">
775
+ <div className="text-fm-icon-active font-medium">
776
+ VolumeIcon
777
+ </div>
778
+ <div className="text-fm-tertiary text-xs">
753
779
  Volume controls
754
780
  </div>
755
781
  </div>
756
782
  </div>
757
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
758
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-green-500/20">
783
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
784
+ <div className="bg-fm-icon-positive/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
759
785
  <span className="text-2xl">🎧</span>
760
786
  </div>
761
787
  <div>
762
- <div className="font-medium text-white">
788
+ <div className="text-fm-icon-active font-medium">
763
789
  HeadphoneIcon
764
790
  </div>
765
- <div className="text-xs text-white/60">Audio devices</div>
791
+ <div className="text-fm-tertiary text-xs">
792
+ Audio devices
793
+ </div>
766
794
  </div>
767
795
  </div>
768
796
  </div>
@@ -770,14 +798,14 @@ function CustomMusicalNoteIcon({ label = "Musical Note", ...props }) {
770
798
  </div>
771
799
 
772
800
  {/* Footer */}
773
- <div className="border-t border-white/10 bg-black/20 backdrop-blur-xl">
801
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary border-t backdrop-blur-xl">
774
802
  <div className="!mx-auto max-w-7xl px-6 py-8">
775
803
  <div className="!space-y-4 text-center">
776
- <p className="!text-white/60">
804
+ <p className="text-fm-tertiary!">
777
805
  MusicalNoteIcon is part of the Aural UI icon library, built
778
806
  with accessibility and consistency in mind.
779
807
  </p>
780
- <p className="text-sm !text-white/40">
808
+ <p className="text-fm-placeholder! text-sm">
781
809
  All icons use Radix UI's AccessibleIcon for screen reader
782
810
  compatibility and follow WCAG guidelines.
783
811
  </p>
@@ -826,8 +854,8 @@ const storyParameters = {
826
854
  backgrounds: {
827
855
  default: "dark",
828
856
  values: [
829
- { name: "dark", value: "#0a0a0a" },
830
- { name: "darker", value: "#000000" },
857
+ { name: "dark", value: "var(--color-fm-surface-primary)" },
858
+ { name: "darker", value: "var(--color-fm-neutral-0)" },
831
859
  ],
832
860
  },
833
861
  }
@@ -836,12 +864,12 @@ export const Default: Story = {
836
864
  args: {
837
865
  width: 24,
838
866
  height: 24,
839
- className: "text-purple-400",
867
+ className: "text-fm-secondary-600",
840
868
  withAccessibility: true,
841
869
  },
842
870
  parameters: storyParameters,
843
871
  render: (args) => (
844
- <div className="flex h-32 min-h-dvh items-center justify-center rounded-lg bg-gradient-to-br from-gray-900 to-gray-800">
872
+ <div className="from-fm-surface-primary to-fm-surface-secondary flex h-32 min-h-dvh items-center justify-center rounded-lg bg-linear-to-br">
845
873
  <MusicalNoteIcon {...args} />
846
874
  </div>
847
875
  ),
@@ -858,30 +886,30 @@ export const SizeVariations: Story = {
858
886
  },
859
887
  },
860
888
  render: () => (
861
- <div className="flex h-64 min-h-dvh items-center justify-center gap-8 rounded-lg bg-gradient-to-br from-gray-900 to-gray-800 p-8">
889
+ <div className="from-fm-surface-primary to-fm-surface-secondary flex h-64 min-h-dvh items-center justify-center gap-8 rounded-lg bg-linear-to-br p-8">
862
890
  <div className="text-center">
863
- <MusicalNoteIcon className="!mx-auto mb-2 h-3 w-3 text-purple-400" />
864
- <span className="text-xs text-white/60">12px</span>
891
+ <MusicalNoteIcon className="text-fm-secondary-600 !mx-auto mb-2 h-3 w-3" />
892
+ <span className="text-fm-tertiary text-xs">12px</span>
865
893
  </div>
866
894
  <div className="text-center">
867
- <MusicalNoteIcon className="!mx-auto mb-2 h-4 w-4 text-purple-400" />
868
- <span className="text-xs text-white/60">16px</span>
895
+ <MusicalNoteIcon className="text-fm-secondary-600 !mx-auto mb-2 h-4 w-4" />
896
+ <span className="text-fm-tertiary text-xs">16px</span>
869
897
  </div>
870
898
  <div className="text-center">
871
- <MusicalNoteIcon className="!mx-auto mb-2 h-5 w-5 text-purple-400" />
872
- <span className="text-xs text-white/60">20px</span>
899
+ <MusicalNoteIcon className="text-fm-secondary-600 !mx-auto mb-2 h-5 w-5" />
900
+ <span className="text-fm-tertiary text-xs">20px</span>
873
901
  </div>
874
902
  <div className="text-center">
875
- <MusicalNoteIcon className="!mx-auto mb-2 h-6 w-6 text-purple-400" />
876
- <span className="text-xs text-white/60">24px</span>
903
+ <MusicalNoteIcon className="text-fm-secondary-600 !mx-auto mb-2 h-6 w-6" />
904
+ <span className="text-fm-tertiary text-xs">24px</span>
877
905
  </div>
878
906
  <div className="text-center">
879
- <MusicalNoteIcon className="!mx-auto mb-2 h-8 w-8 text-purple-400" />
880
- <span className="text-xs text-white/60">32px</span>
907
+ <MusicalNoteIcon className="text-fm-secondary-600 !mx-auto mb-2 h-8 w-8" />
908
+ <span className="text-fm-tertiary text-xs">32px</span>
881
909
  </div>
882
910
  <div className="text-center">
883
- <MusicalNoteIcon className="!mx-auto mb-2 h-12 w-12 text-purple-400" />
884
- <span className="text-xs text-white/60">48px</span>
911
+ <MusicalNoteIcon className="text-fm-secondary-600 !mx-auto mb-2 h-12 w-12" />
912
+ <span className="text-fm-tertiary text-xs">48px</span>
885
913
  </div>
886
914
  </div>
887
915
  ),
@@ -898,41 +926,49 @@ export const ColorVariations: Story = {
898
926
  },
899
927
  },
900
928
  render: () => (
901
- <div className="grid min-h-dvh grid-cols-2 items-center justify-center gap-6 rounded-lg bg-gradient-to-br from-gray-900 to-gray-800 p-8 md:grid-cols-5">
929
+ <div className="from-fm-surface-primary to-fm-surface-secondary grid min-h-dvh grid-cols-2 items-center justify-center gap-6 rounded-lg bg-linear-to-br p-8 md:grid-cols-5">
902
930
  <div className="text-center">
903
- <div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border border-purple-500/30 bg-purple-500/20">
904
- <MusicalNoteIcon className="h-8 w-8 text-purple-400" />
931
+ <div className="border-fm-secondary-500/30 bg-fm-secondary-500/20 !mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border">
932
+ <MusicalNoteIcon className="text-fm-secondary-600 h-8 w-8" />
933
+ </div>
934
+ <div className="text-fm-icon-active text-sm font-medium">Classic</div>
935
+ <div className="text-fm-secondary-600 text-xs">
936
+ text-fm-secondary-600
905
937
  </div>
906
- <div className="text-sm font-medium text-white">Classic</div>
907
- <div className="text-xs text-purple-400">text-purple-400</div>
908
938
  </div>
909
939
  <div className="text-center">
910
- <div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border border-pink-500/30 bg-pink-500/20">
911
- <MusicalNoteIcon className="h-8 w-8 text-pink-400" />
940
+ <div className="border-fm-secondary-500/30 bg-fm-secondary-500/20 !mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border">
941
+ <MusicalNoteIcon className="text-fm-secondary-600 h-8 w-8" />
942
+ </div>
943
+ <div className="text-fm-icon-active text-sm font-medium">Pop</div>
944
+ <div className="text-fm-secondary-600 text-xs">
945
+ text-fm-secondary-600
912
946
  </div>
913
- <div className="text-sm font-medium text-white">Pop</div>
914
- <div className="text-xs text-pink-400">text-pink-400</div>
915
947
  </div>
916
948
  <div className="text-center">
917
- <div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border border-blue-500/30 bg-blue-500/20">
918
- <MusicalNoteIcon className="h-8 w-8 text-blue-400" />
949
+ <div className="border-fm-icon-info/30 bg-fm-icon-info/20 !mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border">
950
+ <MusicalNoteIcon className="text-fm-icon-info h-8 w-8" />
919
951
  </div>
920
- <div className="text-sm font-medium text-white">Jazz</div>
921
- <div className="text-xs text-blue-400">text-blue-400</div>
952
+ <div className="text-fm-icon-active text-sm font-medium">Jazz</div>
953
+ <div className="text-fm-icon-info text-xs">text-fm-icon-info</div>
922
954
  </div>
923
955
  <div className="text-center">
924
- <div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border border-green-500/30 bg-green-500/20">
925
- <MusicalNoteIcon className="h-8 w-8 text-green-400" />
956
+ <div className="border-fm-icon-positive/30 bg-fm-icon-positive/20 !mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border">
957
+ <MusicalNoteIcon className="text-fm-icon-positive h-8 w-8" />
958
+ </div>
959
+ <div className="text-fm-icon-active text-sm font-medium">
960
+ Electronic
961
+ </div>
962
+ <div className="text-fm-icon-positive text-xs">
963
+ text-fm-icon-positive
926
964
  </div>
927
- <div className="text-sm font-medium text-white">Electronic</div>
928
- <div className="text-xs text-green-400">text-green-400</div>
929
965
  </div>
930
966
  <div className="text-center">
931
- <div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border border-orange-500/30 bg-orange-500/20">
932
- <MusicalNoteIcon className="h-8 w-8 text-orange-400" />
967
+ <div className="border-fm-icon-warning/30 bg-fm-icon-warning/20 !mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border">
968
+ <MusicalNoteIcon className="text-fm-icon-warning h-8 w-8" />
933
969
  </div>
934
- <div className="text-sm font-medium text-white">Rock</div>
935
- <div className="text-xs text-orange-400">text-orange-400</div>
970
+ <div className="text-fm-icon-active text-sm font-medium">Rock</div>
971
+ <div className="text-fm-icon-warning text-xs">text-fm-icon-warning</div>
936
972
  </div>
937
973
  </div>
938
974
  ),
@@ -949,33 +985,39 @@ export const UsageExamples: Story = {
949
985
  },
950
986
  },
951
987
  render: () => (
952
- <div className="min-h-dvh !space-y-8 rounded-lg bg-gradient-to-br from-gray-900 to-gray-800 p-8">
988
+ <div className="from-fm-surface-primary to-fm-surface-secondary min-h-dvh !space-y-8 rounded-lg bg-linear-to-br p-8">
953
989
  {/* Music Player */}
954
990
  <div className="!space-y-2">
955
- <h3 className="text-sm font-medium text-white">Music Player</h3>
956
- <div className="rounded-lg border border-white/10 bg-white/5 p-4">
991
+ <h3 className="text-fm-icon-active text-sm font-medium">
992
+ Music Player
993
+ </h3>
994
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-4">
957
995
  <div className="flex items-center gap-3">
958
- <div className="flex h-12 w-12 items-center justify-center rounded-lg bg-purple-500/20">
959
- <MusicalNoteIcon className="h-6 w-6 text-purple-400" />
996
+ <div className="bg-fm-secondary-500/20 flex h-12 w-12 items-center justify-center rounded-lg">
997
+ <MusicalNoteIcon className="text-fm-secondary-600 h-6 w-6" />
960
998
  </div>
961
999
  <div className="flex-1">
962
- <h4 className="font-medium text-white">Bohemian Rhapsody</h4>
963
- <p className="text-sm text-white/60">Queen</p>
1000
+ <h4 className="text-fm-icon-active font-medium">
1001
+ Bohemian Rhapsody
1002
+ </h4>
1003
+ <p className="text-fm-tertiary text-sm">Queen</p>
964
1004
  </div>
965
- <div className="text-sm text-white/60">3:42</div>
1005
+ <div className="text-fm-tertiary text-sm">3:42</div>
966
1006
  </div>
967
1007
  </div>
968
1008
  </div>
969
1009
 
970
1010
  {/* Audio Upload */}
971
1011
  <div className="!space-y-2">
972
- <h3 className="text-sm font-medium text-white">Audio Upload</h3>
973
- <div className="rounded-lg border-2 border-dashed border-purple-500/30 bg-purple-500/5 p-8 text-center">
974
- <MusicalNoteIcon className="!mx-auto mb-4 h-12 w-12 text-purple-400" />
975
- <h4 className="mb-2 font-medium text-white">
1012
+ <h3 className="text-fm-icon-active text-sm font-medium">
1013
+ Audio Upload
1014
+ </h3>
1015
+ <div className="border-fm-secondary-500/30 bg-fm-secondary-500/5 rounded-lg border-2 border-dashed p-8 text-center">
1016
+ <MusicalNoteIcon className="text-fm-secondary-600 !mx-auto mb-4 h-12 w-12" />
1017
+ <h4 className="text-fm-icon-active mb-2 font-medium">
976
1018
  Drop your audio files here
977
1019
  </h4>
978
- <p className="text-sm text-white/60">
1020
+ <p className="text-fm-tertiary text-sm">
979
1021
  Supports MP3, WAV, FLAC formats
980
1022
  </p>
981
1023
  </div>
@@ -983,26 +1025,28 @@ export const UsageExamples: Story = {
983
1025
 
984
1026
  {/* Navigation Menu */}
985
1027
  <div className="!space-y-2">
986
- <h3 className="text-sm font-medium text-white">Navigation Menu</h3>
987
- <div className="rounded-lg border border-white/10 bg-white/5 p-4">
1028
+ <h3 className="text-fm-icon-active text-sm font-medium">
1029
+ Navigation Menu
1030
+ </h3>
1031
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-4">
988
1032
  <nav className="!space-y-2">
989
1033
  <a
990
1034
  href="#"
991
- className="flex items-center gap-3 rounded-lg bg-purple-500/20 px-3 py-2 text-purple-200"
1035
+ className="bg-fm-secondary-500/20 text-fm-secondary-600 flex items-center gap-3 rounded-lg px-3 py-2"
992
1036
  >
993
1037
  <MusicalNoteIcon className="h-5 w-5" />
994
1038
  <span>My Music</span>
995
1039
  </a>
996
1040
  <a
997
1041
  href="#"
998
- className="flex items-center gap-3 px-3 py-2 text-white/60 hover:text-white"
1042
+ className="text-fm-tertiary hover:text-fm-icon-active flex items-center gap-3 px-3 py-2"
999
1043
  >
1000
1044
  <span className="h-5 w-5">📀</span>
1001
1045
  <span>Albums</span>
1002
1046
  </a>
1003
1047
  <a
1004
1048
  href="#"
1005
- className="flex items-center gap-3 px-3 py-2 text-white/60 hover:text-white"
1049
+ className="text-fm-tertiary hover:text-fm-icon-active flex items-center gap-3 px-3 py-2"
1006
1050
  >
1007
1051
  <span className="h-5 w-5">🎵</span>
1008
1052
  <span>Playlists</span>
@@ -1027,12 +1071,12 @@ export const Playground: Story = {
1027
1071
  args: {
1028
1072
  width: 32,
1029
1073
  height: 32,
1030
- className: "text-purple-400",
1074
+ className: "text-fm-secondary-600",
1031
1075
  strokeWidth: 1.125,
1032
1076
  },
1033
1077
  render: (args) => (
1034
- <div className="flex h-64 min-h-dvh items-center justify-center rounded-lg bg-gradient-to-br from-gray-900 to-gray-800">
1035
- <div className="rounded-lg border border-white/10 bg-white/5 p-8">
1078
+ <div className="from-fm-surface-primary to-fm-surface-secondary flex h-64 min-h-dvh items-center justify-center rounded-lg bg-linear-to-br">
1079
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-8">
1036
1080
  <MusicalNoteIcon {...args} />
1037
1081
  </div>
1038
1082
  </div>