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 HeartIcon> = {
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 HeartIcon> = {
40
40
  background: transparent !important;
41
41
  }
42
42
  body {
43
- background: #0a0a0a !important;
43
+ background: var(--color-fm-surface-primary) !important;
44
44
  }
45
45
  #storybook-docs {
46
- background: #0a0a0a !important;
46
+ background: var(--color-fm-surface-primary) !important;
47
47
  }
48
48
  .sbdocs-preview {
49
49
  background: transparent !important;
50
50
  border: none !important;
51
51
  }
52
52
  .sbdocs-h1, .sbdocs-h2, .sbdocs-h3, .sbdocs-h4, .sbdocs-h5, .sbdocs-h6 {
53
- color: white !important;
53
+ color: var(--color-fm-icon-active) !important;
54
54
  }
55
55
  .sbdocs-p, .sbdocs-li {
56
- color: rgba(255, 255, 255, 0.7) !important;
56
+ color: var(--color-fm-secondary) !important;
57
57
  }
58
58
  .sbdocs-code {
59
- background: rgba(255, 255, 255, 0.1) !important;
60
- color: rgba(168, 85, 247, 1) !important;
61
- border: 1px solid rgba(255, 255, 255, 0.1) !important;
59
+ background: var(--color-fm-surface-secondary) !important;
60
+ color: var(--color-fm-secondary-500) !important;
61
+ border: 1px solid var(--color-fm-divider-secondary) !important;
62
62
  }
63
63
  .sbdocs-pre {
64
- background: rgba(0, 0, 0, 0.4) !important;
65
- border: 1px solid rgba(255, 255, 255, 0.1) !important;
64
+ background: var(--color-fm-surface-secondary) !important;
65
+ border: 1px solid var(--color-fm-divider-secondary) !important;
66
66
  }
67
67
  .sbdocs-table {
68
- background: rgba(255, 255, 255, 0.05) !important;
69
- border: 1px solid rgba(255, 255, 255, 0.1) !important;
68
+ background: var(--color-fm-surface-secondary) !important;
69
+ border: 1px solid var(--color-fm-divider-secondary) !important;
70
70
  }
71
71
  .sbdocs-table th {
72
- background: rgba(255, 255, 255, 0.05) !important;
73
- color: white !important;
74
- border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
72
+ background: var(--color-fm-surface-secondary) !important;
73
+ color: var(--color-fm-icon-active) !important;
74
+ border-bottom: 1px solid var(--color-fm-divider-secondary) !important;
75
75
  }
76
76
  .sbdocs-table td {
77
- color: rgba(255, 255, 255, 0.7) !important;
78
- border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
77
+ color: var(--color-fm-secondary) !important;
78
+ border-bottom: 1px solid var(--color-fm-divider-tertiary) !important;
79
79
  }
80
80
  `}
81
81
  </style>
82
82
 
83
- <div className="min-h-screen bg-gradient-to-br from-gray-900 via-red-900/20 to-gray-900">
83
+ <div className="from-fm-surface-primary via-fm-icon-negative/5 to-fm-surface-primary min-h-screen bg-linear-to-br">
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-red-500/10 via-transparent to-pink-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-icon-negative/10 to-fm-secondary-500/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-red-500/30 bg-gradient-to-br from-red-500/20 to-pink-500/20">
90
- <HeartIcon className="h-12 w-12 text-red-400" />
89
+ <div className="border-fm-icon-negative/30 from-fm-icon-negative/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
+ <HeartIcon className="text-fm-icon-negative h-12 w-12" />
91
91
  </div>
92
92
  <h1 className="!text-fm-primary text-5xl font-bold">
93
93
  HeartIcon
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 versatile heart icon for like buttons, favorites, and
97
97
  expressing positive emotions. Built with accessibility in
98
98
  mind using Radix UI's AccessibleIcon wrapper.
@@ -101,28 +101,28 @@ const meta: Meta<typeof HeartIcon> = {
101
101
  {/* Stats */}
102
102
  <div className="flex items-center justify-center gap-8 pt-8">
103
103
  <div className="text-center">
104
- <div className="text-3xl font-bold text-red-300">
104
+ <div className="text-fm-icon-negative text-3xl font-bold">
105
105
  Accessible
106
106
  </div>
107
- <div className="text-sm text-white/60">
107
+ <div className="text-fm-tertiary text-sm">
108
108
  Screen reader friendly
109
109
  </div>
110
110
  </div>
111
- <div className="h-8 w-px bg-white/20" />
111
+ <div className="bg-fm-divider-primary h-8 w-px" />
112
112
  <div className="text-center">
113
- <div className="text-3xl font-bold text-pink-300">
113
+ <div className="text-fm-secondary-600 text-3xl font-bold">
114
114
  Scalable
115
115
  </div>
116
- <div className="text-sm text-white/60">
116
+ <div className="text-fm-tertiary text-sm">
117
117
  Any size needed
118
118
  </div>
119
119
  </div>
120
- <div className="h-8 w-px bg-white/20" />
120
+ <div className="bg-fm-divider-primary h-8 w-px" />
121
121
  <div className="text-center">
122
- <div className="text-3xl font-bold text-rose-300">
122
+ <div className="text-fm-icon-negative text-3xl font-bold">
123
123
  Flexible
124
124
  </div>
125
- <div className="text-sm text-white/60">
125
+ <div className="text-fm-tertiary text-sm">
126
126
  Customizable styling
127
127
  </div>
128
128
  </div>
@@ -135,16 +135,16 @@ const meta: Meta<typeof HeartIcon> = {
135
135
  <div className="!mx-auto max-w-7xl !space-y-16 px-6 py-12">
136
136
  {/* Quick Usage */}
137
137
  <div className="!space-y-8">
138
- <h2 className="text-center text-3xl font-bold !text-white">
138
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
139
139
  Quick Start
140
140
  </h2>
141
141
  <div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
142
142
  <div className="!space-y-4">
143
- <h3 className="text-xl font-semibold !text-red-300">
143
+ <h3 className="text-fm-icon-negative! text-xl font-semibold">
144
144
  Basic Usage
145
145
  </h3>
146
- <div className="rounded-lg bg-black/40 p-4">
147
- <pre className="overflow-x-auto text-sm !text-green-300">
146
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
147
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
148
148
  {`import { HeartIcon } from "@icons/heart-icon"
149
149
 
150
150
  function MyComponent() {
@@ -157,11 +157,11 @@ function MyComponent() {
157
157
  </div>
158
158
 
159
159
  <div className="!space-y-4">
160
- <h3 className="text-xl font-semibold !text-red-300">
160
+ <h3 className="text-fm-icon-negative! text-xl font-semibold">
161
161
  Live Preview
162
162
  </h3>
163
- <div className="flex h-32 items-center justify-center rounded-lg border border-white/10 bg-white/5">
164
- <HeartIcon className="h-12 w-12 text-red-400" />
163
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary flex h-32 items-center justify-center rounded-lg border">
164
+ <HeartIcon className="text-fm-icon-negative h-12 w-12" />
165
165
  </div>
166
166
  </div>
167
167
  </div>
@@ -169,122 +169,130 @@ function MyComponent() {
169
169
 
170
170
  {/* Props Documentation */}
171
171
  <div className="!space-y-8">
172
- <h2 className="text-center text-3xl font-bold !text-white">
172
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
173
173
  Props & Configuration
174
174
  </h2>
175
175
 
176
- <div className="overflow-hidden rounded-lg border border-white/10 bg-white/5">
177
- <div className="bg-white/5 p-4">
178
- <h3 className="text-xl font-semibold !text-white">Props</h3>
176
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary overflow-hidden rounded-lg border">
177
+ <div className="bg-fm-surface-secondary p-4">
178
+ <h3 className="text-fm-icon-active! text-xl font-semibold">
179
+ Props
180
+ </h3>
179
181
  </div>
180
182
  <table className="!my-0 w-full">
181
- <thead className="bg-white/5">
182
- <tr className="border-b border-white/10">
183
- <th className="px-6 py-4 text-left text-sm font-semibold !text-white">
183
+ <thead className="bg-fm-surface-secondary">
184
+ <tr className="border-fm-divider-secondary border-b">
185
+ <th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
184
186
  Prop
185
187
  </th>
186
- <th className="px-6 py-4 text-left text-sm font-semibold !text-white">
188
+ <th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
187
189
  Type
188
190
  </th>
189
- <th className="px-6 py-4 text-left text-sm font-semibold !text-white">
191
+ <th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
190
192
  Default
191
193
  </th>
192
- <th className="px-6 py-4 text-left text-sm font-semibold !text-white">
194
+ <th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
193
195
  Description
194
196
  </th>
195
197
  </tr>
196
198
  </thead>
197
199
  <tbody>
198
200
  {" "}
199
- <tr className="!bg-black/10">
200
- <td className="px-6 py-4 font-mono text-sm !text-blue-300">
201
+ <tr className="bg-fm-surface-secondary!">
202
+ <td className="text-fm-icon-info! px-6 py-4 font-mono text-sm">
201
203
  withAccessibility
202
204
  </td>
203
- <td className="px-6 py-4 text-sm !text-white/70">
205
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
204
206
  boolean
205
207
  </td>
206
- <td className="px-6 py-4 text-sm !text-white/50">
208
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
207
209
  true
208
210
  </td>
209
- <td className="px-6 py-4 text-sm !text-white/70">
211
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
210
212
  Whether to wrap the icon with accessibility feature
211
213
  </td>
212
214
  </tr>
213
- <tr className="border-b border-white/5 !bg-black/10">
214
- <td className="px-6 py-4 font-mono text-sm !text-red-300">
215
+ <tr className="border-fm-divider-tertiary bg-fm-surface-secondary! border-b">
216
+ <td className="text-fm-icon-negative! px-6 py-4 font-mono text-sm">
215
217
  height
216
218
  </td>
217
- <td className="px-6 py-4 text-sm !text-white/70">
219
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
218
220
  number | string
219
221
  </td>
220
- <td className="px-6 py-4 text-sm !text-white/50">20</td>
221
- <td className="px-6 py-4 text-sm !text-white/70">
222
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
223
+ 20
224
+ </td>
225
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
222
226
  Height of the icon in pixels
223
227
  </td>
224
228
  </tr>
225
- <tr className="border-b border-white/5">
226
- <td className="px-6 py-4 font-mono text-sm !text-red-300">
229
+ <tr className="border-fm-divider-tertiary border-b">
230
+ <td className="text-fm-icon-negative! px-6 py-4 font-mono text-sm">
227
231
  stroke
228
232
  </td>
229
- <td className="px-6 py-4 text-sm !text-white/70">
233
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
230
234
  string
231
235
  </td>
232
- <td className="px-6 py-4 text-sm !text-white/50">
236
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
233
237
  currentColor
234
238
  </td>
235
- <td className="px-6 py-4 text-sm !text-white/70">
239
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
236
240
  Stroke color of the heart outline
237
241
  </td>
238
242
  </tr>
239
- <tr className="border-b border-white/5 !bg-black/10">
240
- <td className="px-6 py-4 font-mono text-sm !text-red-300">
243
+ <tr className="border-fm-divider-tertiary bg-fm-surface-secondary! border-b">
244
+ <td className="text-fm-icon-negative! px-6 py-4 font-mono text-sm">
241
245
  strokeWidth
242
246
  </td>
243
- <td className="px-6 py-4 text-sm !text-white/70">
247
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
244
248
  number | string
245
249
  </td>
246
- <td className="px-6 py-4 text-sm !text-white/50">
250
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
247
251
  1.25
248
252
  </td>
249
- <td className="px-6 py-4 text-sm !text-white/70">
253
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
250
254
  Width of the stroke line
251
255
  </td>
252
256
  </tr>
253
- <tr className="border-b border-white/5">
254
- <td className="px-6 py-4 font-mono text-sm !text-red-300">
257
+ <tr className="border-fm-divider-tertiary border-b">
258
+ <td className="text-fm-icon-negative! px-6 py-4 font-mono text-sm">
255
259
  fill
256
260
  </td>
257
- <td className="px-6 py-4 text-sm !text-white/70">
261
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
258
262
  string
259
263
  </td>
260
- <td className="px-6 py-4 text-sm !text-white/50">
264
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
261
265
  none
262
266
  </td>
263
- <td className="px-6 py-4 text-sm !text-white/70">
267
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
264
268
  Fill color for solid hearts
265
269
  </td>
266
270
  </tr>
267
- <tr className="border-b border-white/5 !bg-black/10">
268
- <td className="px-6 py-4 font-mono text-sm !text-red-300">
271
+ <tr className="border-fm-divider-tertiary bg-fm-surface-secondary! border-b">
272
+ <td className="text-fm-icon-negative! px-6 py-4 font-mono text-sm">
269
273
  className
270
274
  </td>
271
- <td className="px-6 py-4 text-sm !text-white/70">
275
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
272
276
  string
273
277
  </td>
274
- <td className="px-6 py-4 text-sm !text-white/50">-</td>
275
- <td className="px-6 py-4 text-sm !text-white/70">
278
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
279
+ -
280
+ </td>
281
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
276
282
  CSS classes for styling
277
283
  </td>
278
284
  </tr>
279
- <tr className="!bg-black/10">
280
- <td className="px-6 py-4 font-mono text-sm !text-red-300">
285
+ <tr className="bg-fm-surface-secondary!">
286
+ <td className="text-fm-icon-negative! px-6 py-4 font-mono text-sm">
281
287
  onClick
282
288
  </td>
283
- <td className="px-6 py-4 text-sm !text-white/70">
289
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
284
290
  function
285
291
  </td>
286
- <td className="px-6 py-4 text-sm !text-white/50">-</td>
287
- <td className="px-6 py-4 text-sm !text-white/70">
292
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
293
+ -
294
+ </td>
295
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
288
296
  Click handler for interactions
289
297
  </td>
290
298
  </tr>
@@ -295,25 +303,29 @@ function MyComponent() {
295
303
  {/* Styling Options */}
296
304
  <div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
297
305
  <div className="!space-y-4">
298
- <h3 className="text-lg font-semibold !text-red-300">
306
+ <h3 className="text-fm-icon-negative! text-lg font-semibold">
299
307
  Fill vs Stroke States
300
308
  </h3>
301
309
  <div className="!space-y-4">
302
310
  <div className="flex gap-4">
303
311
  <div className="flex items-center gap-2">
304
- <HeartIcon className="h-6 w-6 text-red-400" />
305
- <span className="text-sm text-white">Outline</span>
312
+ <HeartIcon className="text-fm-icon-negative h-6 w-6" />
313
+ <span className="text-fm-icon-active text-sm">
314
+ Outline
315
+ </span>
306
316
  </div>
307
317
  <div className="flex items-center gap-2">
308
318
  <HeartIcon
309
- className="h-6 w-6 text-red-400"
319
+ className="text-fm-icon-negative h-6 w-6"
310
320
  fill="currentColor"
311
321
  />
312
- <span className="text-sm text-white">Filled</span>
322
+ <span className="text-fm-icon-active text-sm">
323
+ Filled
324
+ </span>
313
325
  </div>
314
326
  </div>
315
- <div className="rounded-lg bg-black/40 p-4">
316
- <pre className="overflow-x-auto text-sm !text-green-300">
327
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
328
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
317
329
  {`// Outline heart (default)
318
330
  <HeartIcon className="h-6 w-6 text-red-400" />
319
331
 
@@ -328,17 +340,17 @@ function MyComponent() {
328
340
  </div>
329
341
 
330
342
  <div className="!space-y-4">
331
- <h3 className="text-lg font-semibold !text-red-300">
343
+ <h3 className="text-fm-icon-negative! text-lg font-semibold">
332
344
  Color Customization
333
345
  </h3>
334
346
  <div className="!space-y-4">
335
347
  <div className="flex gap-4">
336
- <HeartIcon className="h-6 w-6 text-red-400" />
337
- <HeartIcon className="h-6 w-6 text-pink-400" />
338
- <HeartIcon className="h-6 w-6 text-rose-400" />
348
+ <HeartIcon className="text-fm-icon-negative h-6 w-6" />
349
+ <HeartIcon className="text-fm-secondary-600 h-6 w-6" />
350
+ <HeartIcon className="text-fm-icon-negative h-6 w-6" />
339
351
  </div>
340
- <div className="rounded-lg bg-black/40 p-4">
341
- <pre className="overflow-x-auto text-sm !text-green-300">
352
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
353
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
342
354
  {`// Using Tailwind classes
343
355
  <HeartIcon className="h-6 w-6 text-red-400" />
344
356
  <HeartIcon className="h-6 w-6 text-pink-400" />
@@ -364,50 +376,62 @@ function MyComponent() {
364
376
 
365
377
  {/* Size Variations */}
366
378
  <div className="!space-y-8">
367
- <h2 className="text-center text-3xl font-bold !text-white">
379
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
368
380
  Size Variations
369
381
  </h2>
370
- <div className="rounded-lg border border-white/10 bg-white/5 p-8">
382
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-8">
371
383
  <div className="!space-y-6">
372
384
  <div className="grid grid-cols-1 gap-8 md:grid-cols-2">
373
385
  <div className="!space-y-4">
374
- <h3 className="text-lg font-semibold !text-red-300">
386
+ <h3 className="text-fm-icon-negative! text-lg font-semibold">
375
387
  Standard Sizes
376
388
  </h3>
377
- <div className="flex items-end gap-6 rounded-lg bg-black/20 p-6">
389
+ <div className="bg-fm-surface-secondary flex items-end gap-6 rounded-lg p-6">
378
390
  <div className="text-center">
379
- <HeartIcon className="!mx-auto mb-2 h-3 w-3 text-red-400" />
380
- <span className="text-xs text-white/60">12px</span>
391
+ <HeartIcon className="text-fm-icon-negative !mx-auto mb-2 h-3 w-3" />
392
+ <span className="text-fm-tertiary text-xs">
393
+ 12px
394
+ </span>
381
395
  </div>
382
396
  <div className="text-center">
383
- <HeartIcon className="!mx-auto mb-2 h-4 w-4 text-red-400" />
384
- <span className="text-xs text-white/60">16px</span>
397
+ <HeartIcon className="text-fm-icon-negative !mx-auto mb-2 h-4 w-4" />
398
+ <span className="text-fm-tertiary text-xs">
399
+ 16px
400
+ </span>
385
401
  </div>
386
402
  <div className="text-center">
387
- <HeartIcon className="!mx-auto mb-2 h-5 w-5 text-red-400" />
388
- <span className="text-xs text-white/60">20px</span>
403
+ <HeartIcon className="text-fm-icon-negative !mx-auto mb-2 h-5 w-5" />
404
+ <span className="text-fm-tertiary text-xs">
405
+ 20px
406
+ </span>
389
407
  </div>
390
408
  <div className="text-center">
391
- <HeartIcon className="!mx-auto mb-2 h-6 w-6 text-red-400" />
392
- <span className="text-xs text-white/60">24px</span>
409
+ <HeartIcon className="text-fm-icon-negative !mx-auto mb-2 h-6 w-6" />
410
+ <span className="text-fm-tertiary text-xs">
411
+ 24px
412
+ </span>
393
413
  </div>
394
414
  <div className="text-center">
395
- <HeartIcon className="!mx-auto mb-2 h-8 w-8 text-red-400" />
396
- <span className="text-xs text-white/60">32px</span>
415
+ <HeartIcon className="text-fm-icon-negative !mx-auto mb-2 h-8 w-8" />
416
+ <span className="text-fm-tertiary text-xs">
417
+ 32px
418
+ </span>
397
419
  </div>
398
420
  <div className="text-center">
399
- <HeartIcon className="!mx-auto mb-2 h-12 w-12 text-red-400" />
400
- <span className="text-xs text-white/60">48px</span>
421
+ <HeartIcon className="text-fm-icon-negative !mx-auto mb-2 h-12 w-12" />
422
+ <span className="text-fm-tertiary text-xs">
423
+ 48px
424
+ </span>
401
425
  </div>
402
426
  </div>
403
427
  </div>
404
428
 
405
429
  <div className="!space-y-4">
406
- <h3 className="text-lg font-semibold !text-red-300">
430
+ <h3 className="text-fm-icon-negative! text-lg font-semibold">
407
431
  Code Example
408
432
  </h3>
409
- <div className="rounded-lg bg-black/40 p-4">
410
- <pre className="overflow-x-auto text-sm !text-blue-300">
433
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
434
+ <pre className="text-fm-icon-info! overflow-x-auto text-sm">
411
435
  {`// Small (16px)
412
436
  <HeartIcon className="h-4 w-4" />
413
437
 
@@ -429,56 +453,56 @@ function MyComponent() {
429
453
 
430
454
  {/* Color Variations */}
431
455
  <div className="!space-y-8">
432
- <h2 className="text-center text-3xl font-bold !text-white">
456
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
433
457
  Color Variations
434
458
  </h2>
435
459
  <div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
436
460
  <div className="!space-y-4">
437
- <h3 className="text-lg font-semibold !text-red-300">
461
+ <h3 className="text-fm-icon-negative! text-lg font-semibold">
438
462
  Semantic Colors
439
463
  </h3>
440
- <div className="!space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
464
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
441
465
  <div className="flex items-center gap-4">
442
- <HeartIcon className="h-6 w-6 text-red-400" />
466
+ <HeartIcon className="text-fm-icon-negative h-6 w-6" />
443
467
  <div>
444
- <div className="text-sm font-medium text-white">
468
+ <div className="text-fm-icon-active text-sm font-medium">
445
469
  Love
446
470
  </div>
447
- <div className="text-xs text-white/60">
448
- text-red-400
471
+ <div className="text-fm-tertiary text-xs">
472
+ text-fm-icon-negative
449
473
  </div>
450
474
  </div>
451
475
  </div>
452
476
  <div className="flex items-center gap-4">
453
- <HeartIcon className="h-6 w-6 text-pink-400" />
477
+ <HeartIcon className="text-fm-secondary-600 h-6 w-6" />
454
478
  <div>
455
- <div className="text-sm font-medium text-white">
479
+ <div className="text-fm-icon-active text-sm font-medium">
456
480
  Affection
457
481
  </div>
458
- <div className="text-xs text-white/60">
459
- text-pink-400
482
+ <div className="text-fm-tertiary text-xs">
483
+ text-fm-secondary-600
460
484
  </div>
461
485
  </div>
462
486
  </div>
463
487
  <div className="flex items-center gap-4">
464
- <HeartIcon className="h-6 w-6 text-rose-400" />
488
+ <HeartIcon className="text-fm-icon-negative h-6 w-6" />
465
489
  <div>
466
- <div className="text-sm font-medium text-white">
490
+ <div className="text-fm-icon-active text-sm font-medium">
467
491
  Romance
468
492
  </div>
469
- <div className="text-xs text-white/60">
470
- text-rose-400
493
+ <div className="text-fm-tertiary text-xs">
494
+ text-fm-icon-negative
471
495
  </div>
472
496
  </div>
473
497
  </div>
474
498
  <div className="flex items-center gap-4">
475
- <HeartIcon className="h-6 w-6 text-white/40" />
499
+ <HeartIcon className="text-fm-placeholder h-6 w-6" />
476
500
  <div>
477
- <div className="text-sm font-medium text-white">
501
+ <div className="text-fm-icon-active text-sm font-medium">
478
502
  Inactive
479
503
  </div>
480
- <div className="text-xs text-white/60">
481
- text-white/40
504
+ <div className="text-fm-tertiary text-xs">
505
+ text-fm-placeholder
482
506
  </div>
483
507
  </div>
484
508
  </div>
@@ -486,11 +510,11 @@ function MyComponent() {
486
510
  </div>
487
511
 
488
512
  <div className="!space-y-4">
489
- <h3 className="text-lg font-semibold !text-red-300">
513
+ <h3 className="text-fm-icon-negative! text-lg font-semibold">
490
514
  Custom Colors
491
515
  </h3>
492
- <div className="rounded-lg bg-black/40 p-4">
493
- <pre className="overflow-x-auto text-sm !text-green-300">
516
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
517
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
494
518
  {`// Using Tailwind classes
495
519
  <HeartIcon className="h-6 w-6 text-red-400" />
496
520
  <HeartIcon className="h-6 w-6 text-pink-500" />
@@ -515,29 +539,29 @@ function MyComponent() {
515
539
 
516
540
  {/* Usage Examples */}
517
541
  <div className="!space-y-8">
518
- <h2 className="text-center text-3xl font-bold !text-white">
542
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
519
543
  Usage Examples
520
544
  </h2>
521
545
 
522
546
  <div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
523
547
  {/* Like Button */}
524
548
  <div className="!space-y-4">
525
- <h3 className="text-lg font-semibold !text-red-300">
549
+ <h3 className="text-fm-icon-negative! text-lg font-semibold">
526
550
  Like Button
527
551
  </h3>
528
552
  <div className="!space-y-4">
529
553
  <div className="flex gap-4">
530
- <button className="flex items-center gap-2 rounded-lg border border-red-500/30 bg-red-500/20 px-4 py-2 text-red-200 transition-colors hover:bg-red-500/30">
554
+ <button className="border-fm-icon-negative/30 bg-fm-icon-negative/20 text-fm-icon-negative hover:bg-fm-icon-negative/30 flex items-center gap-2 rounded-lg border px-4 py-2 transition-colors">
531
555
  <HeartIcon className="h-4 w-4" fill="currentColor" />
532
556
  Liked
533
557
  </button>
534
- <button className="flex items-center gap-2 rounded-lg border border-gray-500/30 bg-gray-500/20 px-3 py-2 text-gray-200 transition-colors hover:bg-gray-500/30">
558
+ <button className="border-fm-divider-primary bg-fm-surface-tertiary/20 text-fm-secondary hover:bg-fm-surface-tertiary/30 flex items-center gap-2 rounded-lg border px-3 py-2 transition-colors">
535
559
  <HeartIcon className="h-4 w-4" />
536
560
  Like
537
561
  </button>
538
562
  </div>
539
- <div className="rounded-lg bg-black/40 p-4">
540
- <pre className="overflow-x-auto text-sm !text-green-300">
563
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
564
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
541
565
  {`// Liked state
542
566
  <button className="flex items-center gap-2 bg-red-500/20 border border-red-500/30 px-4 py-2 rounded-lg">
543
567
  <HeartIcon className="h-4 w-4" fill="currentColor" />
@@ -556,24 +580,24 @@ function MyComponent() {
556
580
 
557
581
  {/* Wishlist Item */}
558
582
  <div className="!space-y-4">
559
- <h3 className="text-lg font-semibold !text-red-300">
583
+ <h3 className="text-fm-icon-negative! text-lg font-semibold">
560
584
  Wishlist Actions
561
585
  </h3>
562
586
  <div className="!space-y-4">
563
- <div className="rounded-lg border border-white/10 bg-white/5 p-4">
587
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-4">
564
588
  <div className="flex items-center justify-between">
565
589
  <div className="flex items-center gap-3">
566
- <div className="h-10 w-10 rounded-lg bg-blue-500/20"></div>
590
+ <div className="bg-fm-icon-info/20 h-10 w-10 rounded-lg"></div>
567
591
  <div>
568
- <div className="text-sm font-medium text-white">
592
+ <div className="text-fm-icon-active text-sm font-medium">
569
593
  Premium Headphones
570
594
  </div>
571
- <div className="text-xs text-white/60">
595
+ <div className="text-fm-tertiary text-xs">
572
596
  $299 • In Stock
573
597
  </div>
574
598
  </div>
575
599
  </div>
576
- <button className="rounded-lg bg-red-500/20 p-2 text-red-400 transition-colors hover:bg-red-500/30">
600
+ <button className="bg-fm-icon-negative/20 text-fm-icon-negative hover:bg-fm-icon-negative/30 rounded-lg p-2 transition-colors">
577
601
  <HeartIcon
578
602
  className="h-4 w-4"
579
603
  fill="currentColor"
@@ -581,8 +605,8 @@ function MyComponent() {
581
605
  </button>
582
606
  </div>
583
607
  </div>
584
- <div className="rounded-lg bg-black/40 p-4">
585
- <pre className="overflow-x-auto text-sm !text-green-300">
608
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
609
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
586
610
  {`<div className="flex items-center justify-between">
587
611
  <div className="flex items-center gap-3">
588
612
  {/* Product info */}
@@ -598,30 +622,30 @@ function MyComponent() {
598
622
 
599
623
  {/* Social Media */}
600
624
  <div className="!space-y-4">
601
- <h3 className="text-lg font-semibold !text-red-300">
625
+ <h3 className="text-fm-icon-negative! text-lg font-semibold">
602
626
  Social Media Post
603
627
  </h3>
604
628
  <div className="!space-y-4">
605
- <div className="rounded-lg border border-white/10 bg-white/5 p-4">
606
- <div className="mb-3 text-sm text-white">
629
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-4">
630
+ <div className="text-fm-icon-active mb-3 text-sm">
607
631
  Just launched our new design system! 🎨✨
608
632
  </div>
609
633
  <div className="flex items-center gap-6">
610
- <button className="flex items-center gap-2 text-red-400 transition-colors hover:text-red-300">
634
+ <button className="text-fm-icon-negative hover:text-fm-icon-negative flex items-center gap-2 transition-colors">
611
635
  <HeartIcon
612
636
  className="h-4 w-4"
613
637
  fill="currentColor"
614
638
  />
615
639
  <span className="text-sm">247</span>
616
640
  </button>
617
- <button className="flex items-center gap-2 text-gray-400 transition-colors hover:text-blue-400">
641
+ <button className="text-fm-placeholder hover:text-fm-icon-info flex items-center gap-2 transition-colors">
618
642
  <span className="text-sm">💬</span>
619
643
  <span className="text-sm">32</span>
620
644
  </button>
621
645
  </div>
622
646
  </div>
623
- <div className="rounded-lg bg-black/40 p-4">
624
- <pre className="overflow-x-auto text-sm !text-green-300">
647
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
648
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
625
649
  {`// Social media interactions
626
650
  <button className="flex items-center gap-2 text-red-400 hover:text-red-300 transition-colors">
627
651
  <HeartIcon className="h-4 w-4" fill="currentColor" />
@@ -634,41 +658,41 @@ function MyComponent() {
634
658
 
635
659
  {/* Rating System */}
636
660
  <div className="!space-y-4">
637
- <h3 className="text-lg font-semibold !text-red-300">
661
+ <h3 className="text-fm-icon-negative! text-lg font-semibold">
638
662
  Heart Rating
639
663
  </h3>
640
664
  <div className="!space-y-4">
641
- <div className="rounded-lg border border-pink-500/20 bg-pink-500/5 p-6">
665
+ <div className="border-fm-secondary-500/20 bg-fm-secondary-500/5 rounded-lg border p-6">
642
666
  <div className="text-center">
643
- <div className="mb-4 text-sm text-white">
667
+ <div className="text-fm-icon-active mb-4 text-sm">
644
668
  Rate this experience
645
669
  </div>
646
670
  <div className="mb-3 flex justify-center gap-1">
647
671
  <HeartIcon
648
- className="h-6 w-6 cursor-pointer text-red-400"
672
+ className="text-fm-icon-negative h-6 w-6 cursor-pointer"
649
673
  fill="currentColor"
650
674
  />
651
675
  <HeartIcon
652
- className="h-6 w-6 cursor-pointer text-red-400"
676
+ className="text-fm-icon-negative h-6 w-6 cursor-pointer"
653
677
  fill="currentColor"
654
678
  />
655
679
  <HeartIcon
656
- className="h-6 w-6 cursor-pointer text-red-400"
680
+ className="text-fm-icon-negative h-6 w-6 cursor-pointer"
657
681
  fill="currentColor"
658
682
  />
659
683
  <HeartIcon
660
- className="h-6 w-6 cursor-pointer text-red-400"
684
+ className="text-fm-icon-negative h-6 w-6 cursor-pointer"
661
685
  fill="currentColor"
662
686
  />
663
- <HeartIcon className="h-6 w-6 cursor-pointer text-gray-400" />
687
+ <HeartIcon className="text-fm-placeholder h-6 w-6 cursor-pointer" />
664
688
  </div>
665
- <div className="text-xs text-white/60">
689
+ <div className="text-fm-tertiary text-xs">
666
690
  4 out of 5 hearts
667
691
  </div>
668
692
  </div>
669
693
  </div>
670
- <div className="rounded-lg bg-black/40 p-4">
671
- <pre className="overflow-x-auto text-sm !text-green-300">
694
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
695
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
672
696
  {`// Heart rating system
673
697
  <div className="flex justify-center gap-1">
674
698
  <HeartIcon className="h-6 w-6 text-red-400 cursor-pointer" fill="currentColor" />
@@ -686,64 +710,64 @@ function MyComponent() {
686
710
 
687
711
  {/* Accessibility */}
688
712
  <div className="!space-y-8">
689
- <h2 className="text-center text-3xl font-bold !text-white">
713
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
690
714
  Accessibility Features
691
715
  </h2>
692
716
  <div className="grid grid-cols-1 gap-8 md:grid-cols-2">
693
- <div className="!space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
694
- <h3 className="text-lg font-semibold !text-green-300">
717
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
718
+ <h3 className="text-fm-icon-positive! text-lg font-semibold">
695
719
  ✅ Built-in Features
696
720
  </h3>
697
- <ul className="!space-y-2 text-sm !text-white/70">
698
- <li className="!text-white/70">
721
+ <ul className="text-fm-secondary! !space-y-2 text-sm">
722
+ <li className="text-fm-secondary!">
699
723
  Uses Radix UI AccessibleIcon wrapper
700
724
  </li>
701
- <li className="!text-white/70">
725
+ <li className="text-fm-secondary!">
702
726
  Provides screen reader label "Heart icon"
703
727
  </li>
704
- <li className="!text-white/70">
728
+ <li className="text-fm-secondary!">
705
729
  Supports keyboard navigation when interactive
706
730
  </li>
707
- <li className="!text-white/70">
731
+ <li className="text-fm-secondary!">
708
732
  Maintains proper color contrast ratios
709
733
  </li>
710
- <li className="!text-white/70">
734
+ <li className="text-fm-secondary!">
711
735
  Scales with user's font size preferences
712
736
  </li>
713
737
  </ul>
714
738
  </div>
715
739
 
716
- <div className="!space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
717
- <h3 className="text-lg font-semibold !text-red-300">
740
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
741
+ <h3 className="text-fm-icon-negative! text-lg font-semibold">
718
742
  💡 Best Practices
719
743
  </h3>
720
- <ul className="!space-y-2 text-sm text-white/70">
721
- <li className="!text-white/70">
744
+ <ul className="text-fm-secondary !space-y-2 text-sm">
745
+ <li className="text-fm-secondary!">
722
746
  Always pair with descriptive labels
723
747
  </li>
724
- <li className="!text-white/70">
748
+ <li className="text-fm-secondary!">
725
749
  Use appropriate color states (filled/outline)
726
750
  </li>
727
- <li className="!text-white/70">
751
+ <li className="text-fm-secondary!">
728
752
  Ensure sufficient color contrast
729
753
  </li>
730
- <li className="!text-white/70">
754
+ <li className="text-fm-secondary!">
731
755
  Add focus states for interactive elements
732
756
  </li>
733
- <li className="!text-white/70">
757
+ <li className="text-fm-secondary!">
734
758
  Consider animation feedback for state changes
735
759
  </li>
736
760
  </ul>
737
761
  </div>
738
762
  </div>
739
763
 
740
- <div className="rounded-lg border border-white/10 bg-white/5 p-6">
741
- <h3 className="mb-4 text-lg font-semibold !text-purple-300">
764
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-6">
765
+ <h3 className="text-fm-secondary-600! mb-4 text-lg font-semibold">
742
766
  Custom Accessibility Label
743
767
  </h3>
744
768
  <div className="grid grid-cols-1 gap-6 lg:grid-cols-2">
745
- <div className="rounded-lg bg-black/40 p-4">
746
- <pre className="overflow-x-auto text-sm !text-blue-300">
769
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
770
+ <pre className="text-fm-icon-info! overflow-x-auto text-sm">
747
771
  {`// Custom implementation with specific label
748
772
  import { AccessibleIcon } from "@radix-ui/react-accessible-icon"
749
773
 
@@ -763,13 +787,13 @@ function CustomHeartIcon({ label = "Like", ...props }) {
763
787
  </pre>
764
788
  </div>
765
789
  <div className="!space-y-4">
766
- <p className="text-sm !text-white/70">
790
+ <p className="text-fm-secondary! text-sm">
767
791
  For specific contexts, you can wrap the HeartIcon with a
768
792
  custom AccessibleIcon component that provides more
769
793
  descriptive labels.
770
794
  </p>
771
- <div className="rounded-lg border border-red-500/20 bg-red-500/10 p-4">
772
- <div className="flex items-center gap-2 text-sm text-red-200">
795
+ <div className="border-fm-icon-negative/20 bg-fm-icon-negative/10 rounded-lg border p-4">
796
+ <div className="text-fm-icon-negative flex items-center gap-2 text-sm">
773
797
  <HeartIcon className="h-4 w-4" />
774
798
  <span>
775
799
  This approach gives screen readers more context
@@ -783,50 +807,58 @@ function CustomHeartIcon({ label = "Like", ...props }) {
783
807
 
784
808
  {/* Related Icons */}
785
809
  <div className="!space-y-8">
786
- <h2 className="text-center text-3xl font-bold !text-white">
810
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
787
811
  Related Icons
788
812
  </h2>
789
813
  <div className="grid grid-cols-2 gap-6 md:grid-cols-4">
790
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
791
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-yellow-500/20">
814
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
815
+ <div className="bg-fm-icon-warning/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
792
816
  <span className="text-2xl">⭐</span>
793
817
  </div>
794
818
  <div>
795
- <div className="font-medium text-white">StarIcon</div>
796
- <div className="text-xs text-white/60">
819
+ <div className="text-fm-icon-active font-medium">
820
+ StarIcon
821
+ </div>
822
+ <div className="text-fm-tertiary text-xs">
797
823
  Rating & favorites
798
824
  </div>
799
825
  </div>
800
826
  </div>
801
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
802
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-blue-500/20">
803
- <span className="!text-2xl !text-white">👍</span>
827
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
828
+ <div className="bg-fm-icon-info/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
829
+ <span className="text-fm-icon-active! !text-2xl">👍</span>
804
830
  </div>
805
831
  <div>
806
- <div className="font-medium text-white">ThumbsUpIcon</div>
807
- <div className="text-xs text-white/60">
832
+ <div className="text-fm-icon-active font-medium">
833
+ ThumbsUpIcon
834
+ </div>
835
+ <div className="text-fm-tertiary text-xs">
808
836
  Positive reactions
809
837
  </div>
810
838
  </div>
811
839
  </div>
812
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
813
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-purple-500/20">
840
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
841
+ <div className="bg-fm-secondary-500/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
814
842
  <span className="text-2xl">🔖</span>
815
843
  </div>
816
844
  <div>
817
- <div className="font-medium text-white">BookmarkIcon</div>
818
- <div className="text-xs text-white/60">
845
+ <div className="text-fm-icon-active font-medium">
846
+ BookmarkIcon
847
+ </div>
848
+ <div className="text-fm-tertiary text-xs">
819
849
  Save for later
820
850
  </div>
821
851
  </div>
822
852
  </div>
823
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
824
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-orange-500/20">
853
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
854
+ <div className="bg-fm-icon-warning/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
825
855
  <span className="text-2xl">📤</span>
826
856
  </div>
827
857
  <div>
828
- <div className="font-medium text-white">ShareIcon</div>
829
- <div className="text-xs text-white/60">
858
+ <div className="text-fm-icon-active font-medium">
859
+ ShareIcon
860
+ </div>
861
+ <div className="text-fm-tertiary text-xs">
830
862
  Social sharing
831
863
  </div>
832
864
  </div>
@@ -836,14 +868,14 @@ function CustomHeartIcon({ label = "Like", ...props }) {
836
868
  </div>
837
869
 
838
870
  {/* Footer */}
839
- <div className="border-t border-white/10 bg-black/20 backdrop-blur-xl">
871
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary border-t backdrop-blur-xl">
840
872
  <div className="!mx-auto max-w-7xl px-6 py-8">
841
873
  <div className="!space-y-4 text-center">
842
- <p className="!text-white/60">
874
+ <p className="text-fm-tertiary!">
843
875
  HeartIcon is part of the Aural UI icon library, built with
844
876
  accessibility and consistency in mind.
845
877
  </p>
846
- <p className="text-sm !text-white/40">
878
+ <p className="text-fm-placeholder! text-sm">
847
879
  All icons use Radix UI's AccessibleIcon for screen reader
848
880
  compatibility and follow WCAG guidelines.
849
881
  </p>
@@ -888,8 +920,8 @@ const storyParameters = {
888
920
  backgrounds: {
889
921
  default: "dark",
890
922
  values: [
891
- { name: "dark", value: "#0a0a0a" },
892
- { name: "darker", value: "#000000" },
923
+ { name: "dark", value: "var(--color-fm-surface-primary)" },
924
+ { name: "darker", value: "var(--color-fm-neutral-0)" },
893
925
  ],
894
926
  },
895
927
  }
@@ -898,12 +930,12 @@ export const Default: Story = {
898
930
  args: {
899
931
  width: 24,
900
932
  height: 24,
901
- className: "text-red-400",
933
+ className: "text-fm-icon-negative",
902
934
  withAccessibility: true,
903
935
  },
904
936
  parameters: storyParameters,
905
937
  render: (args) => (
906
- <div className="flex h-32 min-h-dvh items-center justify-center rounded-lg bg-gradient-to-br from-gray-900 to-gray-800">
938
+ <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">
907
939
  <HeartIcon {...args} />
908
940
  </div>
909
941
  ),
@@ -920,30 +952,30 @@ export const SizeVariations: Story = {
920
952
  },
921
953
  },
922
954
  render: () => (
923
- <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">
955
+ <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">
924
956
  <div className="text-center">
925
- <HeartIcon className="!mx-auto mb-2 h-3 w-3 text-red-400" />
926
- <span className="text-xs text-white/60">12px</span>
957
+ <HeartIcon className="text-fm-icon-negative !mx-auto mb-2 h-3 w-3" />
958
+ <span className="text-fm-tertiary text-xs">12px</span>
927
959
  </div>
928
960
  <div className="text-center">
929
- <HeartIcon className="!mx-auto mb-2 h-4 w-4 text-red-400" />
930
- <span className="text-xs text-white/60">16px</span>
961
+ <HeartIcon className="text-fm-icon-negative !mx-auto mb-2 h-4 w-4" />
962
+ <span className="text-fm-tertiary text-xs">16px</span>
931
963
  </div>
932
964
  <div className="text-center">
933
- <HeartIcon className="!mx-auto mb-2 h-5 w-5 text-red-400" />
934
- <span className="text-xs text-white/60">20px</span>
965
+ <HeartIcon className="text-fm-icon-negative !mx-auto mb-2 h-5 w-5" />
966
+ <span className="text-fm-tertiary text-xs">20px</span>
935
967
  </div>
936
968
  <div className="text-center">
937
- <HeartIcon className="!mx-auto mb-2 h-6 w-6 text-red-400" />
938
- <span className="text-xs text-white/60">24px</span>
969
+ <HeartIcon className="text-fm-icon-negative !mx-auto mb-2 h-6 w-6" />
970
+ <span className="text-fm-tertiary text-xs">24px</span>
939
971
  </div>
940
972
  <div className="text-center">
941
- <HeartIcon className="!mx-auto mb-2 h-8 w-8 text-red-400" />
942
- <span className="text-xs text-white/60">32px</span>
973
+ <HeartIcon className="text-fm-icon-negative !mx-auto mb-2 h-8 w-8" />
974
+ <span className="text-fm-tertiary text-xs">32px</span>
943
975
  </div>
944
976
  <div className="text-center">
945
- <HeartIcon className="!mx-auto mb-2 h-12 w-12 text-red-400" />
946
- <span className="text-xs text-white/60">48px</span>
977
+ <HeartIcon className="text-fm-icon-negative !mx-auto mb-2 h-12 w-12" />
978
+ <span className="text-fm-tertiary text-xs">48px</span>
947
979
  </div>
948
980
  </div>
949
981
  ),
@@ -959,34 +991,40 @@ export const ColorVariations: Story = {
959
991
  },
960
992
  },
961
993
  render: () => (
962
- <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-4">
994
+ <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-4">
963
995
  <div className="text-center">
964
- <div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border border-red-500/30 bg-red-500/20">
965
- <HeartIcon className="h-8 w-8 text-red-400" />
996
+ <div className="border-fm-icon-negative/30 bg-fm-icon-negative/20 !mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border">
997
+ <HeartIcon className="text-fm-icon-negative h-8 w-8" />
998
+ </div>
999
+ <div className="text-fm-icon-active text-sm font-medium">Love</div>
1000
+ <div className="text-fm-icon-negative text-xs">
1001
+ text-fm-icon-negative
966
1002
  </div>
967
- <div className="text-sm font-medium text-white">Love</div>
968
- <div className="text-xs text-red-400">text-red-400</div>
969
1003
  </div>
970
1004
  <div className="text-center">
971
- <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">
972
- <HeartIcon className="h-8 w-8 text-pink-400" />
1005
+ <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">
1006
+ <HeartIcon className="text-fm-secondary-600 h-8 w-8" />
1007
+ </div>
1008
+ <div className="text-fm-icon-active text-sm font-medium">Affection</div>
1009
+ <div className="text-fm-secondary-600 text-xs">
1010
+ text-fm-secondary-600
973
1011
  </div>
974
- <div className="text-sm font-medium text-white">Affection</div>
975
- <div className="text-xs text-pink-400">text-pink-400</div>
976
1012
  </div>
977
1013
  <div className="text-center">
978
- <div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border border-rose-500/30 bg-rose-500/20">
979
- <HeartIcon className="h-8 w-8 text-rose-400" />
1014
+ <div className="border-fm-icon-negative/30 bg-fm-icon-negative/20 !mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border">
1015
+ <HeartIcon className="text-fm-icon-negative h-8 w-8" />
1016
+ </div>
1017
+ <div className="text-fm-icon-active text-sm font-medium">Romance</div>
1018
+ <div className="text-fm-icon-negative text-xs">
1019
+ text-fm-icon-negative
980
1020
  </div>
981
- <div className="text-sm font-medium text-white">Romance</div>
982
- <div className="text-xs text-rose-400">text-rose-400</div>
983
1021
  </div>
984
1022
  <div className="text-center">
985
- <div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border border-white/20 bg-white/5">
986
- <HeartIcon className="h-8 w-8 text-white/40" />
1023
+ <div className="border-fm-divider-primary bg-fm-surface-secondary !mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border">
1024
+ <HeartIcon className="text-fm-placeholder h-8 w-8" />
987
1025
  </div>
988
- <div className="text-sm font-medium text-white">Inactive</div>
989
- <div className="text-xs text-white/40">text-white/40</div>
1026
+ <div className="text-fm-icon-active text-sm font-medium">Inactive</div>
1027
+ <div className="text-fm-placeholder text-xs">text-fm-placeholder</div>
990
1028
  </div>
991
1029
  </div>
992
1030
  ),
@@ -1003,16 +1041,18 @@ export const UsageExamples: Story = {
1003
1041
  },
1004
1042
  },
1005
1043
  render: () => (
1006
- <div className="min-h-dvh !space-y-8 rounded-lg bg-gradient-to-br from-gray-900 to-gray-800 p-8">
1044
+ <div className="from-fm-surface-primary to-fm-surface-secondary min-h-dvh !space-y-8 rounded-lg bg-linear-to-br p-8">
1007
1045
  {/* Like Button */}
1008
1046
  <div className="!space-y-2">
1009
- <h3 className="text-sm font-medium text-white">Like Buttons</h3>
1047
+ <h3 className="text-fm-icon-active text-sm font-medium">
1048
+ Like Buttons
1049
+ </h3>
1010
1050
  <div className="flex gap-4">
1011
- <button className="flex items-center gap-2 rounded-lg border border-red-500/30 bg-red-500/20 px-4 py-2 text-red-200 transition-colors hover:bg-red-500/30">
1051
+ <button className="border-fm-icon-negative/30 bg-fm-icon-negative/20 text-fm-icon-negative hover:bg-fm-icon-negative/30 flex items-center gap-2 rounded-lg border px-4 py-2 transition-colors">
1012
1052
  <HeartIcon className="h-4 w-4" fill="currentColor" />
1013
1053
  Liked
1014
1054
  </button>
1015
- <button className="flex items-center gap-2 rounded-lg border border-gray-500/30 bg-gray-500/20 px-3 py-2 text-gray-200 transition-colors hover:bg-gray-500/30">
1055
+ <button className="border-fm-divider-primary bg-fm-surface-tertiary/20 text-fm-secondary hover:bg-fm-surface-tertiary/30 flex items-center gap-2 rounded-lg border px-3 py-2 transition-colors">
1016
1056
  <HeartIcon className="h-4 w-4" />
1017
1057
  Like
1018
1058
  </button>
@@ -1021,19 +1061,21 @@ export const UsageExamples: Story = {
1021
1061
 
1022
1062
  {/* Wishlist Item */}
1023
1063
  <div className="!space-y-2">
1024
- <h3 className="text-sm font-medium text-white">Wishlist Actions</h3>
1025
- <div className="rounded-lg border border-white/10 bg-white/5 p-4">
1064
+ <h3 className="text-fm-icon-active text-sm font-medium">
1065
+ Wishlist Actions
1066
+ </h3>
1067
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-4">
1026
1068
  <div className="flex items-center justify-between">
1027
1069
  <div className="flex items-center gap-3">
1028
- <div className="h-10 w-10 rounded-lg bg-blue-500/20"></div>
1070
+ <div className="bg-fm-icon-info/20 h-10 w-10 rounded-lg"></div>
1029
1071
  <div>
1030
- <div className="text-sm font-medium text-white">
1072
+ <div className="text-fm-icon-active text-sm font-medium">
1031
1073
  Premium Headphones
1032
1074
  </div>
1033
- <div className="text-xs text-white/60">$299 • In Stock</div>
1075
+ <div className="text-fm-tertiary text-xs">$299 • In Stock</div>
1034
1076
  </div>
1035
1077
  </div>
1036
- <button className="rounded-lg bg-red-500/20 p-2 text-red-400 transition-colors hover:bg-red-500/30">
1078
+ <button className="bg-fm-icon-negative/20 text-fm-icon-negative hover:bg-fm-icon-negative/30 rounded-lg p-2 transition-colors">
1037
1079
  <HeartIcon className="h-4 w-4" fill="currentColor" />
1038
1080
  </button>
1039
1081
  </div>
@@ -1042,17 +1084,19 @@ export const UsageExamples: Story = {
1042
1084
 
1043
1085
  {/* Social Media */}
1044
1086
  <div className="!space-y-2">
1045
- <h3 className="text-sm font-medium text-white">Social Media Post</h3>
1046
- <div className="rounded-lg border border-white/10 bg-white/5 p-4">
1047
- <div className="mb-3 text-sm text-white">
1087
+ <h3 className="text-fm-icon-active text-sm font-medium">
1088
+ Social Media Post
1089
+ </h3>
1090
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-4">
1091
+ <div className="text-fm-icon-active mb-3 text-sm">
1048
1092
  Just launched our new design system! 🎨✨
1049
1093
  </div>
1050
1094
  <div className="flex items-center gap-6">
1051
- <button className="flex items-center gap-2 text-red-400 transition-colors hover:text-red-300">
1095
+ <button className="text-fm-icon-negative hover:text-fm-icon-negative flex items-center gap-2 transition-colors">
1052
1096
  <HeartIcon className="h-4 w-4" fill="currentColor" />
1053
1097
  <span className="text-sm">247</span>
1054
1098
  </button>
1055
- <button className="flex items-center gap-2 text-gray-400 transition-colors hover:text-blue-400">
1099
+ <button className="text-fm-placeholder hover:text-fm-icon-info flex items-center gap-2 transition-colors">
1056
1100
  <span className="text-sm">💬</span>
1057
1101
  <span className="text-sm">32</span>
1058
1102
  </button>
@@ -1076,11 +1120,11 @@ export const Playground: Story = {
1076
1120
  args: {
1077
1121
  width: 32,
1078
1122
  height: 32,
1079
- className: "text-red-400",
1123
+ className: "text-fm-icon-negative",
1080
1124
  },
1081
1125
  render: (args) => (
1082
- <div className="flex h-64 min-h-dvh items-center justify-center rounded-lg bg-gradient-to-br from-gray-900 to-gray-800">
1083
- <div className="rounded-lg border border-white/10 bg-white/5 p-8">
1126
+ <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">
1127
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-8">
1084
1128
  <HeartIcon {...args} />
1085
1129
  </div>
1086
1130
  </div>