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 ForwardTenSecondsIcon> = {
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 ForwardTenSecondsIcon> = {
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-emerald-900/20 to-gray-900">
83
+ <div className="from-fm-surface-primary via-fm-icon-positive/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-emerald-500/10 via-transparent to-green-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-positive/10 to-fm-icon-positive/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-emerald-500/30 bg-gradient-to-br from-emerald-500/20 to-green-500/20">
90
- <ForwardTenSecondsIcon className="h-12 w-12 text-emerald-400" />
89
+ <div className="border-fm-icon-positive/30 from-fm-icon-positive/20 to-fm-icon-positive/20 !mx-auto flex h-24 w-24 items-center justify-center rounded-2xl border bg-linear-to-br">
90
+ <ForwardTenSecondsIcon className="text-fm-icon-positive h-12 w-12" />
91
91
  </div>
92
- <h1 className="text-5xl font-bold !text-white">
92
+ <h1 className="text-fm-icon-active! text-5xl font-bold">
93
93
  ForwardTenSecondsIcon
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 media control icon for skipping forward 10 seconds in
97
97
  audio and video players. Features a circular arrow with "10"
98
98
  seconds indicator, perfect for podcast apps, video players,
@@ -102,28 +102,28 @@ const meta: Meta<typeof ForwardTenSecondsIcon> = {
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-emerald-300">
105
+ <div className="text-fm-icon-positive text-3xl font-bold">
106
106
  Media Control
107
107
  </div>
108
- <div className="text-sm text-white/60">
108
+ <div className="text-fm-tertiary text-sm">
109
109
  10-second skip forward
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-green-300">
114
+ <div className="text-fm-icon-positive text-3xl font-bold">
115
115
  Accessible
116
116
  </div>
117
- <div className="text-sm text-white/60">
117
+ <div className="text-fm-tertiary text-sm">
118
118
  Screen reader friendly
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-teal-300">
123
+ <div className="text-fm-icon-info text-3xl font-bold">
124
124
  Universal
125
125
  </div>
126
- <div className="text-sm text-white/60">
126
+ <div className="text-fm-tertiary text-sm">
127
127
  Cross-platform standard
128
128
  </div>
129
129
  </div>
@@ -136,16 +136,16 @@ const meta: Meta<typeof ForwardTenSecondsIcon> = {
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-emerald-300">
144
+ <h3 className="text-fm-icon-positive! 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 { ForwardTenSecondsIcon } from "@icons/forward-ten-seconds-icon"
150
150
 
151
151
  function MediaPlayer() {
@@ -163,12 +163,12 @@ function MediaPlayer() {
163
163
  </div>
164
164
 
165
165
  <div className="!space-y-4">
166
- <h3 className="text-xl font-semibold !text-emerald-300">
166
+ <h3 className="text-fm-icon-positive! text-xl font-semibold">
167
167
  Live Preview
168
168
  </h3>
169
- <div className="flex h-32 items-center justify-center rounded-lg border border-white/10 bg-white/5">
170
- <button className="rounded-lg border border-emerald-500/20 bg-emerald-500/10 p-3 transition-colors hover:bg-emerald-500/20">
171
- <ForwardTenSecondsIcon className="h-6 w-6 text-emerald-400" />
169
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary flex h-32 items-center justify-center rounded-lg border">
170
+ <button className="border-fm-icon-positive/20 bg-fm-icon-positive/10 hover:bg-fm-icon-positive/20 rounded-lg border p-3 transition-colors">
171
+ <ForwardTenSecondsIcon className="text-fm-icon-positive h-6 w-6" />
172
172
  </button>
173
173
  </div>
174
174
  </div>
@@ -177,108 +177,116 @@ function MediaPlayer() {
177
177
 
178
178
  {/* Props Documentation */}
179
179
  <div className="!space-y-8">
180
- <h2 className="text-center text-3xl font-bold !text-white">
180
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
181
181
  Props & Configuration
182
182
  </h2>
183
183
 
184
- <div className="overflow-hidden rounded-lg border border-white/10 bg-white/5">
185
- <div className="bg-white/5 p-4">
186
- <h3 className="text-xl font-semibold !text-white">Props</h3>
184
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary overflow-hidden rounded-lg border">
185
+ <div className="bg-fm-surface-secondary p-4">
186
+ <h3 className="text-fm-icon-active! text-xl font-semibold">
187
+ Props
188
+ </h3>
187
189
  </div>
188
190
  <table className="!my-0 w-full">
189
- <thead className="bg-white/5">
190
- <tr className="border-b border-white/10">
191
- <th className="px-6 py-4 text-left text-sm font-semibold !text-white">
191
+ <thead className="bg-fm-surface-secondary">
192
+ <tr className="border-fm-divider-secondary border-b">
193
+ <th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
192
194
  Prop
193
195
  </th>
194
- <th className="px-6 py-4 text-left text-sm font-semibold !text-white">
196
+ <th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
195
197
  Type
196
198
  </th>
197
- <th className="px-6 py-4 text-left text-sm font-semibold !text-white">
199
+ <th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
198
200
  Default
199
201
  </th>
200
- <th className="px-6 py-4 text-left text-sm font-semibold !text-white">
202
+ <th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
201
203
  Description
202
204
  </th>
203
205
  </tr>
204
206
  </thead>
205
207
  <tbody>
206
208
  {" "}
207
- <tr className="!bg-black/10">
208
- <td className="px-6 py-4 font-mono text-sm !text-blue-300">
209
+ <tr className="bg-fm-surface-secondary!">
210
+ <td className="text-fm-icon-info! px-6 py-4 font-mono text-sm">
209
211
  withAccessibility
210
212
  </td>
211
- <td className="px-6 py-4 text-sm !text-white/70">
213
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
212
214
  boolean
213
215
  </td>
214
- <td className="px-6 py-4 text-sm !text-white/50">
216
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
215
217
  true
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
  Whether to wrap the icon with accessibility feature
219
221
  </td>
220
222
  </tr>
221
- <tr className="border-b border-white/5 !bg-black/10">
222
- <td className="px-6 py-4 font-mono text-sm !text-emerald-300">
223
+ <tr className="border-fm-divider-tertiary bg-fm-surface-secondary! border-b">
224
+ <td className="text-fm-icon-positive! px-6 py-4 font-mono text-sm">
223
225
  height
224
226
  </td>
225
- <td className="px-6 py-4 text-sm !text-white/70">
227
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
226
228
  number | string
227
229
  </td>
228
- <td className="px-6 py-4 text-sm !text-white/50">44</td>
229
- <td className="px-6 py-4 text-sm !text-white/70">
230
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
231
+ 44
232
+ </td>
233
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
230
234
  Height of the icon in pixels
231
235
  </td>
232
236
  </tr>
233
- <tr className="border-b border-white/5">
234
- <td className="px-6 py-4 font-mono text-sm !text-emerald-300">
237
+ <tr className="border-fm-divider-tertiary border-b">
238
+ <td className="text-fm-icon-positive! px-6 py-4 font-mono text-sm">
235
239
  stroke
236
240
  </td>
237
- <td className="px-6 py-4 text-sm !text-white/70">
241
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
238
242
  string
239
243
  </td>
240
- <td className="px-6 py-4 text-sm !text-white/50">
244
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
241
245
  currentColor
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
  Stroke color of the icon
245
249
  </td>
246
250
  </tr>
247
- <tr className="border-b border-white/5 !bg-black/10">
248
- <td className="px-6 py-4 font-mono text-sm !text-emerald-300">
251
+ <tr className="border-fm-divider-tertiary bg-fm-surface-secondary! border-b">
252
+ <td className="text-fm-icon-positive! px-6 py-4 font-mono text-sm">
249
253
  strokeWidth
250
254
  </td>
251
- <td className="px-6 py-4 text-sm !text-white/70">
255
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
252
256
  string | number
253
257
  </td>
254
- <td className="px-6 py-4 text-sm !text-white/50">
258
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
255
259
  1.5
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
  Width of the stroke
259
263
  </td>
260
264
  </tr>
261
- <tr className="border-b border-white/5">
262
- <td className="px-6 py-4 font-mono text-sm !text-emerald-300">
265
+ <tr className="border-fm-divider-tertiary border-b">
266
+ <td className="text-fm-icon-positive! px-6 py-4 font-mono text-sm">
263
267
  className
264
268
  </td>
265
- <td className="px-6 py-4 text-sm !text-white/70">
269
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
266
270
  string
267
271
  </td>
268
- <td className="px-6 py-4 text-sm !text-white/50">-</td>
269
- <td className="px-6 py-4 text-sm !text-white/70">
272
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
273
+ -
274
+ </td>
275
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
270
276
  CSS classes for styling (use for overrides)
271
277
  </td>
272
278
  </tr>
273
- <tr className="!bg-black/10">
274
- <td className="px-6 py-4 font-mono text-sm !text-emerald-300">
279
+ <tr className="bg-fm-surface-secondary!">
280
+ <td className="text-fm-icon-positive! px-6 py-4 font-mono text-sm">
275
281
  ...svgProps
276
282
  </td>
277
- <td className="px-6 py-4 text-sm !text-white/70">
283
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
278
284
  SVGProps
279
285
  </td>
280
- <td className="px-6 py-4 text-sm !text-white/50">-</td>
281
- <td className="px-6 py-4 text-sm !text-white/70">
286
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
287
+ -
288
+ </td>
289
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
282
290
  All standard SVG element props
283
291
  </td>
284
292
  </tr>
@@ -289,50 +297,62 @@ function MediaPlayer() {
289
297
 
290
298
  {/* Size Variations */}
291
299
  <div className="!space-y-8">
292
- <h2 className="text-center text-3xl font-bold !text-white">
300
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
293
301
  Size Variations
294
302
  </h2>
295
- <div className="rounded-lg border border-white/10 bg-white/5 p-8">
303
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-8">
296
304
  <div className="!space-y-6">
297
305
  <div className="grid grid-cols-1 gap-8 md:grid-cols-2">
298
306
  <div className="!space-y-4">
299
- <h3 className="text-lg font-semibold !text-emerald-300">
307
+ <h3 className="text-fm-icon-positive! text-lg font-semibold">
300
308
  Standard Sizes
301
309
  </h3>
302
- <div className="flex items-end gap-6 rounded-lg bg-black/20 p-6">
310
+ <div className="bg-fm-surface-secondary flex items-end gap-6 rounded-lg p-6">
303
311
  <div className="text-center">
304
- <ForwardTenSecondsIcon className="!mx-auto mb-2 h-3 w-3 text-emerald-400" />
305
- <span className="text-xs text-white/60">12px</span>
312
+ <ForwardTenSecondsIcon className="text-fm-icon-positive !mx-auto mb-2 h-3 w-3" />
313
+ <span className="text-fm-tertiary text-xs">
314
+ 12px
315
+ </span>
306
316
  </div>
307
317
  <div className="text-center">
308
- <ForwardTenSecondsIcon className="!mx-auto mb-2 h-4 w-4 text-emerald-400" />
309
- <span className="text-xs text-white/60">16px</span>
318
+ <ForwardTenSecondsIcon className="text-fm-icon-positive !mx-auto mb-2 h-4 w-4" />
319
+ <span className="text-fm-tertiary text-xs">
320
+ 16px
321
+ </span>
310
322
  </div>
311
323
  <div className="text-center">
312
- <ForwardTenSecondsIcon className="!mx-auto mb-2 h-5 w-5 text-emerald-400" />
313
- <span className="text-xs text-white/60">20px</span>
324
+ <ForwardTenSecondsIcon className="text-fm-icon-positive !mx-auto mb-2 h-5 w-5" />
325
+ <span className="text-fm-tertiary text-xs">
326
+ 20px
327
+ </span>
314
328
  </div>
315
329
  <div className="text-center">
316
- <ForwardTenSecondsIcon className="!mx-auto mb-2 h-6 w-6 text-emerald-400" />
317
- <span className="text-xs text-white/60">24px</span>
330
+ <ForwardTenSecondsIcon className="text-fm-icon-positive !mx-auto mb-2 h-6 w-6" />
331
+ <span className="text-fm-tertiary text-xs">
332
+ 24px
333
+ </span>
318
334
  </div>
319
335
  <div className="text-center">
320
- <ForwardTenSecondsIcon className="!mx-auto mb-2 h-8 w-8 text-emerald-400" />
321
- <span className="text-xs text-white/60">32px</span>
336
+ <ForwardTenSecondsIcon className="text-fm-icon-positive !mx-auto mb-2 h-8 w-8" />
337
+ <span className="text-fm-tertiary text-xs">
338
+ 32px
339
+ </span>
322
340
  </div>
323
341
  <div className="text-center">
324
- <ForwardTenSecondsIcon className="!mx-auto mb-2 h-12 w-12 text-emerald-400" />
325
- <span className="text-xs text-white/60">48px</span>
342
+ <ForwardTenSecondsIcon className="text-fm-icon-positive !mx-auto mb-2 h-12 w-12" />
343
+ <span className="text-fm-tertiary text-xs">
344
+ 48px
345
+ </span>
326
346
  </div>
327
347
  </div>
328
348
  </div>
329
349
 
330
350
  <div className="!space-y-4">
331
- <h3 className="text-lg font-semibold !text-emerald-300">
351
+ <h3 className="text-fm-icon-positive! text-lg font-semibold">
332
352
  Code Example
333
353
  </h3>
334
- <div className="rounded-lg bg-black/40 p-4">
335
- <pre className="overflow-x-auto text-sm !text-cyan-300">
354
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
355
+ <pre className="text-fm-icon-info! overflow-x-auto text-sm">
336
356
  {`// Small (16px)
337
357
  <ForwardTenSecondsIcon className="h-4 w-4" />
338
358
 
@@ -354,56 +374,56 @@ function MediaPlayer() {
354
374
 
355
375
  {/* Color Variations */}
356
376
  <div className="!space-y-8">
357
- <h2 className="text-center text-3xl font-bold !text-white">
377
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
358
378
  Color Variations
359
379
  </h2>
360
380
  <div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
361
381
  <div className="!space-y-4">
362
- <h3 className="text-lg font-semibold !text-emerald-300">
382
+ <h3 className="text-fm-icon-positive! text-lg font-semibold">
363
383
  Semantic Colors
364
384
  </h3>
365
- <div className="!space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
385
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
366
386
  <div className="flex items-center gap-4">
367
- <ForwardTenSecondsIcon className="h-6 w-6 text-emerald-400" />
387
+ <ForwardTenSecondsIcon className="text-fm-icon-positive h-6 w-6" />
368
388
  <div>
369
- <div className="text-sm font-medium text-white">
389
+ <div className="text-fm-icon-active text-sm font-medium">
370
390
  Primary
371
391
  </div>
372
- <div className="text-xs text-white/60">
373
- text-emerald-400
392
+ <div className="text-fm-tertiary text-xs">
393
+ text-fm-icon-positive
374
394
  </div>
375
395
  </div>
376
396
  </div>
377
397
  <div className="flex items-center gap-4">
378
- <ForwardTenSecondsIcon className="h-6 w-6 text-green-400" />
398
+ <ForwardTenSecondsIcon className="text-fm-icon-positive h-6 w-6" />
379
399
  <div>
380
- <div className="text-sm font-medium text-white">
400
+ <div className="text-fm-icon-active text-sm font-medium">
381
401
  Secondary
382
402
  </div>
383
- <div className="text-xs text-white/60">
384
- text-green-400
403
+ <div className="text-fm-tertiary text-xs">
404
+ text-fm-icon-positive
385
405
  </div>
386
406
  </div>
387
407
  </div>
388
408
  <div className="flex items-center gap-4">
389
- <ForwardTenSecondsIcon className="h-6 w-6 text-teal-400" />
409
+ <ForwardTenSecondsIcon className="text-fm-icon-info h-6 w-6" />
390
410
  <div>
391
- <div className="text-sm font-medium text-white">
411
+ <div className="text-fm-icon-active text-sm font-medium">
392
412
  Accent
393
413
  </div>
394
- <div className="text-xs text-white/60">
395
- text-teal-400
414
+ <div className="text-fm-tertiary text-xs">
415
+ text-fm-icon-info
396
416
  </div>
397
417
  </div>
398
418
  </div>
399
419
  <div className="flex items-center gap-4">
400
- <ForwardTenSecondsIcon className="h-6 w-6 text-white/40" />
420
+ <ForwardTenSecondsIcon className="text-fm-placeholder h-6 w-6" />
401
421
  <div>
402
- <div className="text-sm font-medium text-white">
422
+ <div className="text-fm-icon-active text-sm font-medium">
403
423
  Disabled
404
424
  </div>
405
- <div className="text-xs text-white/60">
406
- text-white/40
425
+ <div className="text-fm-tertiary text-xs">
426
+ text-fm-placeholder
407
427
  </div>
408
428
  </div>
409
429
  </div>
@@ -411,11 +431,11 @@ function MediaPlayer() {
411
431
  </div>
412
432
 
413
433
  <div className="!space-y-4">
414
- <h3 className="text-lg font-semibold !text-emerald-300">
434
+ <h3 className="text-fm-icon-positive! text-lg font-semibold">
415
435
  Custom Colors
416
436
  </h3>
417
- <div className="rounded-lg bg-black/40 p-4">
418
- <pre className="overflow-x-auto text-sm !text-green-300">
437
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
438
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
419
439
  {`// Using Tailwind classes
420
440
  <ForwardTenSecondsIcon className="h-6 w-6 text-emerald-400" />
421
441
  <ForwardTenSecondsIcon className="h-6 w-6 text-green-500" />
@@ -440,41 +460,41 @@ function MediaPlayer() {
440
460
 
441
461
  {/* Usage Examples */}
442
462
  <div className="!space-y-8">
443
- <h2 className="text-center text-3xl font-bold !text-white">
463
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
444
464
  Usage Examples
445
465
  </h2>
446
466
 
447
467
  <div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
448
468
  {/* Podcast Player */}
449
469
  <div className="!space-y-4">
450
- <h3 className="text-lg font-semibold !text-emerald-300">
470
+ <h3 className="text-fm-icon-positive! text-lg font-semibold">
451
471
  Podcast Player
452
472
  </h3>
453
473
  <div className="!space-y-4">
454
- <div className="rounded-lg border border-white/10 bg-white/5 p-6">
474
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-6">
455
475
  <div className="mb-4 flex items-center justify-between">
456
- <h3 className="text-lg font-semibold !text-white">
476
+ <h3 className="text-fm-icon-active! text-lg font-semibold">
457
477
  Now Playing
458
478
  </h3>
459
479
  </div>
460
480
  <div className="mb-4 flex items-center justify-center gap-4">
461
- <button className="rounded-lg p-2 transition-colors hover:bg-white/10">
462
- <div className="h-6 w-6 rounded-full border border-white/60 bg-white/20" />
481
+ <button className="hover:bg-fm-surface-secondary rounded-lg p-2 transition-colors">
482
+ <div className="border-fm-divider-contrast bg-fm-divider-primary h-6 w-6 rounded-full border" />
463
483
  </button>
464
- <button className="rounded-lg p-3 transition-colors hover:bg-white/10">
465
- <div className="h-8 w-8 rounded-full border-2 border-white/60 bg-white/20" />
484
+ <button className="hover:bg-fm-surface-secondary rounded-lg p-3 transition-colors">
485
+ <div className="border-fm-divider-contrast bg-fm-divider-primary h-8 w-8 rounded-full border-2" />
466
486
  </button>
467
- <button className="rounded-lg p-2 transition-colors hover:bg-white/10">
468
- <ForwardTenSecondsIcon className="h-6 w-6 text-emerald-400" />
487
+ <button className="hover:bg-fm-surface-secondary rounded-lg p-2 transition-colors">
488
+ <ForwardTenSecondsIcon className="text-fm-icon-positive h-6 w-6" />
469
489
  </button>
470
490
  </div>
471
- <p className="text-sm !text-white/70">
491
+ <p className="text-fm-secondary! text-sm">
472
492
  Skip forward 10 seconds to bypass ads or get past
473
493
  content
474
494
  </p>
475
495
  </div>
476
- <div className="rounded-lg bg-black/40 p-4">
477
- <pre className="overflow-x-auto text-sm !text-green-300">
496
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
497
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
478
498
  {`// Podcast control bar
479
499
  <div className="flex items-center justify-center gap-4">
480
500
  <button onClick={() => skipSeconds(-10)}>
@@ -494,30 +514,30 @@ function MediaPlayer() {
494
514
 
495
515
  {/* Video Player */}
496
516
  <div className="!space-y-4">
497
- <h3 className="text-lg font-semibold !text-emerald-300">
517
+ <h3 className="text-fm-icon-positive! text-lg font-semibold">
498
518
  Video Player Controls
499
519
  </h3>
500
520
  <div className="!space-y-4">
501
- <div className="rounded-lg border border-white/10 bg-white/5 p-4">
502
- <div className="mb-4 h-32 rounded bg-gradient-to-r from-emerald-500/20 to-green-500/20" />
521
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-4">
522
+ <div className="from-fm-icon-positive/20 to-fm-icon-positive/20 mb-4 h-32 rounded bg-linear-to-r" />
503
523
  <div className="flex items-center justify-between">
504
524
  <div className="flex items-center gap-2">
505
- <span className="text-sm text-white/60">
525
+ <span className="text-fm-tertiary text-sm">
506
526
  8:15 / 24:30
507
527
  </span>
508
- <button className="rounded p-1.5 hover:bg-white/10">
509
- <ForwardTenSecondsIcon className="h-5 w-5 text-emerald-400" />
528
+ <button className="hover:bg-fm-surface-secondary rounded p-1.5">
529
+ <ForwardTenSecondsIcon className="text-fm-icon-positive h-5 w-5" />
510
530
  </button>
511
531
  </div>
512
532
  <div className="flex items-center gap-2">
513
- <button className="rounded p-1.5 hover:bg-white/10">
514
- <div className="h-5 w-5 rounded-full border border-white/60 bg-white/20" />
533
+ <button className="hover:bg-fm-surface-secondary rounded p-1.5">
534
+ <div className="border-fm-divider-contrast bg-fm-divider-primary h-5 w-5 rounded-full border" />
515
535
  </button>
516
536
  </div>
517
537
  </div>
518
538
  </div>
519
- <div className="rounded-lg bg-black/40 p-4">
520
- <pre className="overflow-x-auto text-sm !text-green-300">
539
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
540
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
521
541
  {`// Video player with fast forward
522
542
  <div className="video-controls">
523
543
  <div className="flex items-center gap-2">
@@ -537,42 +557,42 @@ function MediaPlayer() {
537
557
 
538
558
  {/* Music Player */}
539
559
  <div className="!space-y-4">
540
- <h3 className="text-lg font-semibold !text-emerald-300">
560
+ <h3 className="text-fm-icon-positive! text-lg font-semibold">
541
561
  Music Player Interface
542
562
  </h3>
543
563
  <div className="!space-y-4">
544
- <div className="rounded-lg border border-white/10 bg-white/5 p-4">
564
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-4">
545
565
  <div className="mb-4 flex items-center gap-3">
546
- <div className="h-12 w-12 rounded-lg bg-gradient-to-br from-emerald-500/20 to-green-500/20" />
566
+ <div className="from-fm-icon-positive/20 to-fm-icon-positive/20 h-12 w-12 rounded-lg bg-linear-to-br" />
547
567
  <div>
548
- <div className="text-sm font-medium !text-white">
568
+ <div className="text-fm-icon-active! text-sm font-medium">
549
569
  Song Title
550
570
  </div>
551
- <div className="text-xs !text-white/60">
571
+ <div className="text-fm-tertiary! text-xs">
552
572
  Artist Name
553
573
  </div>
554
574
  </div>
555
575
  </div>
556
576
  <div className="flex items-center justify-center gap-6">
557
- <button className="rounded-lg p-1.5 hover:bg-white/10">
558
- <div className="h-4 w-4 rounded-full border border-white/60 bg-white/20" />
577
+ <button className="hover:bg-fm-surface-secondary rounded-lg p-1.5">
578
+ <div className="border-fm-divider-contrast bg-fm-divider-primary h-4 w-4 rounded-full border" />
559
579
  </button>
560
- <button className="rounded-lg p-2 hover:bg-white/10">
561
- <div className="h-6 w-6 rounded-full border border-white/60 bg-white/20" />
580
+ <button className="hover:bg-fm-surface-secondary rounded-lg p-2">
581
+ <div className="border-fm-divider-contrast bg-fm-divider-primary h-6 w-6 rounded-full border" />
562
582
  </button>
563
- <button className="rounded-lg p-2 hover:bg-white/10">
564
- <div className="h-8 w-8 rounded-full border-2 border-white/60 bg-white/20" />
583
+ <button className="hover:bg-fm-surface-secondary rounded-lg p-2">
584
+ <div className="border-fm-divider-contrast bg-fm-divider-primary h-8 w-8 rounded-full border-2" />
565
585
  </button>
566
- <button className="rounded-lg p-2 hover:bg-white/10">
567
- <div className="h-6 w-6 rounded-full border border-white/60 bg-white/20" />
586
+ <button className="hover:bg-fm-surface-secondary rounded-lg p-2">
587
+ <div className="border-fm-divider-contrast bg-fm-divider-primary h-6 w-6 rounded-full border" />
568
588
  </button>
569
- <button className="rounded-lg p-1.5 hover:bg-white/10">
570
- <ForwardTenSecondsIcon className="h-4 w-4 text-emerald-400" />
589
+ <button className="hover:bg-fm-surface-secondary rounded-lg p-1.5">
590
+ <ForwardTenSecondsIcon className="text-fm-icon-positive h-4 w-4" />
571
591
  </button>
572
592
  </div>
573
593
  </div>
574
- <div className="rounded-lg bg-black/40 p-4">
575
- <pre className="overflow-x-auto text-sm !text-green-300">
594
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
595
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
576
596
  {`// Music player with skip controls
577
597
  <div className="music-controls">
578
598
  <div className="flex items-center justify-center gap-6">
@@ -600,38 +620,38 @@ function MediaPlayer() {
600
620
 
601
621
  {/* Educational Content */}
602
622
  <div className="!space-y-4">
603
- <h3 className="text-lg font-semibold !text-emerald-300">
623
+ <h3 className="text-fm-icon-positive! text-lg font-semibold">
604
624
  Educational Video Player
605
625
  </h3>
606
626
  <div className="!space-y-4">
607
- <div className="rounded-lg border border-white/10 bg-white/5 p-4">
627
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-4">
608
628
  <div className="mb-4">
609
629
  <div className="mb-2 flex items-center gap-2">
610
- <div className="h-2 w-2 rounded-full bg-green-500" />
611
- <span className="text-sm font-medium !text-white">
630
+ <div className="bg-fm-icon-positive h-2 w-2 rounded-full" />
631
+ <span className="text-fm-icon-active! text-sm font-medium">
612
632
  Lesson 3: Advanced Concepts
613
633
  </span>
614
634
  </div>
615
- <h4 className="text-sm !text-white/70">
635
+ <h4 className="text-fm-secondary! text-sm">
616
636
  Interactive Learning Module
617
637
  </h4>
618
638
  </div>
619
639
  <div className="flex items-center justify-between">
620
640
  <div className="flex items-center gap-2">
621
- <span className="text-xs !text-white/60">
641
+ <span className="text-fm-tertiary! text-xs">
622
642
  Skip to next section
623
643
  </span>
624
- <button className="rounded p-1.5 hover:bg-white/10">
625
- <ForwardTenSecondsIcon className="h-5 w-5 text-emerald-400" />
644
+ <button className="hover:bg-fm-surface-secondary rounded p-1.5">
645
+ <ForwardTenSecondsIcon className="text-fm-icon-positive h-5 w-5" />
626
646
  </button>
627
647
  </div>
628
- <button className="rounded-lg border border-green-500/30 bg-green-500/10 px-3 py-1 text-xs text-green-200">
648
+ <button className="border-fm-icon-positive/30 bg-fm-icon-positive/10 text-fm-icon-positive rounded-lg border px-3 py-1 text-xs">
629
649
  Next Chapter
630
650
  </button>
631
651
  </div>
632
652
  </div>
633
- <div className="rounded-lg bg-black/40 p-4">
634
- <pre className="overflow-x-auto text-sm !text-green-300">
653
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
654
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
635
655
  {`// Educational content with skip ahead
636
656
  <div className="lesson-controls">
637
657
  <div className="flex items-center gap-2">
@@ -656,64 +676,64 @@ function MediaPlayer() {
656
676
 
657
677
  {/* Accessibility */}
658
678
  <div className="!space-y-8">
659
- <h2 className="text-center text-3xl font-bold !text-white">
679
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
660
680
  Accessibility Features
661
681
  </h2>
662
682
  <div className="grid grid-cols-1 gap-8 md:grid-cols-2">
663
- <div className="!space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
664
- <h3 className="text-lg font-semibold !text-green-300">
683
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
684
+ <h3 className="text-fm-icon-positive! text-lg font-semibold">
665
685
  ✅ Built-in Features
666
686
  </h3>
667
- <ul className="!space-y-2 text-sm !text-white/70">
668
- <li className="!text-white/70">
687
+ <ul className="text-fm-secondary! !space-y-2 text-sm">
688
+ <li className="text-fm-secondary!">
669
689
  Uses Radix UI AccessibleIcon wrapper
670
690
  </li>
671
- <li className="!text-white/70">
691
+ <li className="text-fm-secondary!">
672
692
  Provides screen reader label "Forward ten seconds icon"
673
693
  </li>
674
- <li className="!text-white/70">
694
+ <li className="text-fm-secondary!">
675
695
  Supports keyboard navigation when interactive
676
696
  </li>
677
- <li className="!text-white/70">
697
+ <li className="text-fm-secondary!">
678
698
  Maintains proper color contrast ratios
679
699
  </li>
680
- <li className="!text-white/70">
700
+ <li className="text-fm-secondary!">
681
701
  Scales with user's font size preferences
682
702
  </li>
683
703
  </ul>
684
704
  </div>
685
705
 
686
- <div className="!space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
687
- <h3 className="text-lg font-semibold !text-emerald-300">
706
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
707
+ <h3 className="text-fm-icon-positive! text-lg font-semibold">
688
708
  💡 Best Practices
689
709
  </h3>
690
- <ul className="!space-y-2 text-sm text-white/70">
691
- <li className="!text-white/70">
710
+ <ul className="text-fm-secondary !space-y-2 text-sm">
711
+ <li className="text-fm-secondary!">
692
712
  Always provide descriptive aria-labels for buttons
693
713
  </li>
694
- <li className="!text-white/70">
714
+ <li className="text-fm-secondary!">
695
715
  Use consistent placement in media control groups
696
716
  </li>
697
- <li className="!text-white/70">
717
+ <li className="text-fm-secondary!">
698
718
  Ensure sufficient touch target size (44px minimum)
699
719
  </li>
700
- <li className="!text-white/70">
720
+ <li className="text-fm-secondary!">
701
721
  Provide visible focus states for keyboard users
702
722
  </li>
703
- <li className="!text-white/70">
723
+ <li className="text-fm-secondary!">
704
724
  Consider keyboard shortcuts (e.g., Right Arrow key)
705
725
  </li>
706
726
  </ul>
707
727
  </div>
708
728
  </div>
709
729
 
710
- <div className="rounded-lg border border-white/10 bg-white/5 p-6">
711
- <h3 className="mb-4 text-lg font-semibold !text-green-300">
730
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-6">
731
+ <h3 className="text-fm-icon-positive! mb-4 text-lg font-semibold">
712
732
  Proper ARIA Implementation
713
733
  </h3>
714
734
  <div className="grid grid-cols-1 gap-6 lg:grid-cols-2">
715
- <div className="rounded-lg bg-black/40 p-4">
716
- <pre className="overflow-x-auto text-sm !text-cyan-300">
735
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
736
+ <pre className="text-fm-icon-info! overflow-x-auto text-sm">
717
737
  {`// Media control with proper ARIA
718
738
  <button
719
739
  aria-label="Fast forward 10 seconds"
@@ -741,14 +761,14 @@ function MediaPlayer() {
741
761
  </pre>
742
762
  </div>
743
763
  <div className="!space-y-4">
744
- <p className="text-sm !text-white/70">
764
+ <p className="text-fm-secondary! text-sm">
745
765
  When using ForwardTenSecondsIcon for interactive
746
766
  elements, always provide clear context about what action
747
767
  will be performed and the current playback state when
748
768
  relevant.
749
769
  </p>
750
- <div className="rounded-lg border border-emerald-500/20 bg-emerald-500/10 p-4">
751
- <div className="flex items-center gap-2 text-sm text-emerald-200">
770
+ <div className="border-fm-icon-positive/20 bg-fm-icon-positive/10 rounded-lg border p-4">
771
+ <div className="text-fm-icon-positive flex items-center gap-2 text-sm">
752
772
  <ForwardTenSecondsIcon className="h-4 w-4" />
753
773
  <span>
754
774
  Screen readers need specific context about the fast
@@ -763,50 +783,56 @@ function MediaPlayer() {
763
783
 
764
784
  {/* Related Icons */}
765
785
  <div className="!space-y-8">
766
- <h2 className="text-center text-3xl font-bold !text-white">
786
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
767
787
  Related Icons
768
788
  </h2>
769
789
  <div className="grid grid-cols-2 gap-6 md:grid-cols-4">
770
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
771
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-emerald-500/20">
772
- <span className="!text-2xl !text-white">⏪</span>
790
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
791
+ <div className="bg-fm-icon-positive/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
792
+ <span className="text-fm-icon-active! !text-2xl">⏪</span>
773
793
  </div>
774
794
  <div>
775
- <div className="font-medium text-white">
795
+ <div className="text-fm-icon-active font-medium">
776
796
  BackwardTenSecondsIcon
777
797
  </div>
778
- <div className="text-xs text-white/60">
798
+ <div className="text-fm-tertiary text-xs">
779
799
  Skip backward 10s
780
800
  </div>
781
801
  </div>
782
802
  </div>
783
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
784
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-green-500/20">
785
- <span className="!text-2xl !text-white">⏸</span>
803
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
804
+ <div className="bg-fm-icon-positive/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
805
+ <span className="text-fm-icon-active! !text-2xl">⏸</span>
786
806
  </div>
787
807
  <div>
788
- <div className="font-medium text-white">PlayIcon</div>
789
- <div className="text-xs text-white/60">Play/pause</div>
808
+ <div className="text-fm-icon-active font-medium">
809
+ PlayIcon
810
+ </div>
811
+ <div className="text-fm-tertiary text-xs">Play/pause</div>
790
812
  </div>
791
813
  </div>
792
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
793
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-teal-500/20">
794
- <span className="!text-2xl !text-white">⏩</span>
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-info/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
816
+ <span className="text-fm-icon-active! !text-2xl">⏩</span>
795
817
  </div>
796
818
  <div>
797
- <div className="font-medium text-white">
819
+ <div className="text-fm-icon-active font-medium">
798
820
  FastForwardIcon
799
821
  </div>
800
- <div className="text-xs text-white/60">Fast forward</div>
822
+ <div className="text-fm-tertiary text-xs">
823
+ Fast forward
824
+ </div>
801
825
  </div>
802
826
  </div>
803
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
804
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-cyan-500/20">
805
- <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>
806
830
  </div>
807
831
  <div>
808
- <div className="font-medium text-white">NextIcon</div>
809
- <div className="text-xs text-white/60">Next track</div>
832
+ <div className="text-fm-icon-active font-medium">
833
+ NextIcon
834
+ </div>
835
+ <div className="text-fm-tertiary text-xs">Next track</div>
810
836
  </div>
811
837
  </div>
812
838
  </div>
@@ -814,15 +840,15 @@ function MediaPlayer() {
814
840
  </div>
815
841
 
816
842
  {/* Footer */}
817
- <div className="border-t border-white/10 bg-black/20 backdrop-blur-xl">
843
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary border-t backdrop-blur-xl">
818
844
  <div className="!mx-auto max-w-7xl px-6 py-8">
819
845
  <div className="!space-y-4 text-center">
820
- <p className="!text-white/60">
846
+ <p className="text-fm-tertiary!">
821
847
  ForwardTenSecondsIcon is part of the Aural UI icon library,
822
848
  built with accessibility and media control best practices in
823
849
  mind.
824
850
  </p>
825
- <p className="text-sm !text-white/40">
851
+ <p className="text-fm-placeholder! text-sm">
826
852
  All icons use Radix UI's AccessibleIcon for screen reader
827
853
  compatibility and follow WCAG guidelines.
828
854
  </p>
@@ -875,20 +901,20 @@ const storyParameters = {
875
901
  backgrounds: {
876
902
  default: "dark",
877
903
  values: [
878
- { name: "dark", value: "#0a0a0a" },
879
- { name: "darker", value: "#000000" },
904
+ { name: "dark", value: "var(--color-fm-surface-primary)" },
905
+ { name: "darker", value: "var(--color-fm-neutral-0)" },
880
906
  ],
881
907
  },
882
908
  }
883
909
 
884
910
  export const Default: Story = {
885
911
  args: {
886
- className: "h-8 w-8 text-emerald-400",
912
+ className: "h-8 w-8 text-fm-icon-positive",
887
913
  withAccessibility: true,
888
914
  },
889
915
  parameters: storyParameters,
890
916
  render: (args) => (
891
- <div className="flex h-32 min-h-dvh items-center justify-center rounded-lg bg-gradient-to-br from-gray-900 to-gray-800">
917
+ <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">
892
918
  <ForwardTenSecondsIcon {...args} />
893
919
  </div>
894
920
  ),
@@ -905,30 +931,30 @@ export const SizeVariations: Story = {
905
931
  },
906
932
  },
907
933
  render: () => (
908
- <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">
934
+ <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">
909
935
  <div className="text-center">
910
- <ForwardTenSecondsIcon className="!mx-auto mb-2 h-3 w-3 text-emerald-400" />
911
- <span className="text-xs text-white/60">12px</span>
936
+ <ForwardTenSecondsIcon className="text-fm-icon-positive !mx-auto mb-2 h-3 w-3" />
937
+ <span className="text-fm-tertiary text-xs">12px</span>
912
938
  </div>
913
939
  <div className="text-center">
914
- <ForwardTenSecondsIcon className="!mx-auto mb-2 h-4 w-4 text-emerald-400" />
915
- <span className="text-xs text-white/60">16px</span>
940
+ <ForwardTenSecondsIcon className="text-fm-icon-positive !mx-auto mb-2 h-4 w-4" />
941
+ <span className="text-fm-tertiary text-xs">16px</span>
916
942
  </div>
917
943
  <div className="text-center">
918
- <ForwardTenSecondsIcon className="!mx-auto mb-2 h-5 w-5 text-emerald-400" />
919
- <span className="text-xs text-white/60">20px</span>
944
+ <ForwardTenSecondsIcon className="text-fm-icon-positive !mx-auto mb-2 h-5 w-5" />
945
+ <span className="text-fm-tertiary text-xs">20px</span>
920
946
  </div>
921
947
  <div className="text-center">
922
- <ForwardTenSecondsIcon className="!mx-auto mb-2 h-6 w-6 text-emerald-400" />
923
- <span className="text-xs text-white/60">24px</span>
948
+ <ForwardTenSecondsIcon className="text-fm-icon-positive !mx-auto mb-2 h-6 w-6" />
949
+ <span className="text-fm-tertiary text-xs">24px</span>
924
950
  </div>
925
951
  <div className="text-center">
926
- <ForwardTenSecondsIcon className="!mx-auto mb-2 h-8 w-8 text-emerald-400" />
927
- <span className="text-xs text-white/60">32px</span>
952
+ <ForwardTenSecondsIcon className="text-fm-icon-positive !mx-auto mb-2 h-8 w-8" />
953
+ <span className="text-fm-tertiary text-xs">32px</span>
928
954
  </div>
929
955
  <div className="text-center">
930
- <ForwardTenSecondsIcon className="!mx-auto mb-2 h-12 w-12 text-emerald-400" />
931
- <span className="text-xs text-white/60">48px</span>
956
+ <ForwardTenSecondsIcon className="text-fm-icon-positive !mx-auto mb-2 h-12 w-12" />
957
+ <span className="text-fm-tertiary text-xs">48px</span>
932
958
  </div>
933
959
  </div>
934
960
  ),
@@ -945,34 +971,38 @@ export const ColorVariations: Story = {
945
971
  },
946
972
  },
947
973
  render: () => (
948
- <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">
974
+ <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">
949
975
  <div className="text-center">
950
- <div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border border-emerald-500/30 bg-emerald-500/20">
951
- <ForwardTenSecondsIcon className="h-8 w-8 text-emerald-400" />
976
+ <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">
977
+ <ForwardTenSecondsIcon className="text-fm-icon-positive h-8 w-8" />
978
+ </div>
979
+ <div className="text-fm-icon-active text-sm font-medium">Primary</div>
980
+ <div className="text-fm-icon-positive text-xs">
981
+ text-fm-icon-positive
952
982
  </div>
953
- <div className="text-sm font-medium text-white">Primary</div>
954
- <div className="text-xs text-emerald-400">text-emerald-400</div>
955
983
  </div>
956
984
  <div className="text-center">
957
- <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">
958
- <ForwardTenSecondsIcon className="h-8 w-8 text-green-400" />
985
+ <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">
986
+ <ForwardTenSecondsIcon className="text-fm-icon-positive h-8 w-8" />
987
+ </div>
988
+ <div className="text-fm-icon-active text-sm font-medium">Secondary</div>
989
+ <div className="text-fm-icon-positive text-xs">
990
+ text-fm-icon-positive
959
991
  </div>
960
- <div className="text-sm font-medium text-white">Secondary</div>
961
- <div className="text-xs text-green-400">text-green-400</div>
962
992
  </div>
963
993
  <div className="text-center">
964
- <div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border border-teal-500/30 bg-teal-500/20">
965
- <ForwardTenSecondsIcon className="h-8 w-8 text-teal-400" />
994
+ <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">
995
+ <ForwardTenSecondsIcon className="text-fm-icon-info h-8 w-8" />
966
996
  </div>
967
- <div className="text-sm font-medium text-white">Accent</div>
968
- <div className="text-xs text-teal-400">text-teal-400</div>
997
+ <div className="text-fm-icon-active text-sm font-medium">Accent</div>
998
+ <div className="text-fm-icon-info text-xs">text-fm-icon-info</div>
969
999
  </div>
970
1000
  <div className="text-center">
971
- <div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border border-white/10 bg-white/5">
972
- <ForwardTenSecondsIcon className="h-8 w-8 text-white/40" />
1001
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border">
1002
+ <ForwardTenSecondsIcon className="text-fm-placeholder h-8 w-8" />
973
1003
  </div>
974
- <div className="text-sm font-medium text-white">Disabled</div>
975
- <div className="text-xs text-white/40">text-white/40</div>
1004
+ <div className="text-fm-icon-active text-sm font-medium">Disabled</div>
1005
+ <div className="text-fm-placeholder text-xs">text-fm-placeholder</div>
976
1006
  </div>
977
1007
  </div>
978
1008
  ),
@@ -989,23 +1019,27 @@ export const UsageExamples: Story = {
989
1019
  },
990
1020
  },
991
1021
  render: () => (
992
- <div className="min-h-dvh !space-y-8 rounded-lg bg-gradient-to-br from-gray-900 to-gray-800 p-8">
1022
+ <div className="from-fm-surface-primary to-fm-surface-secondary min-h-dvh !space-y-8 rounded-lg bg-linear-to-br p-8">
993
1023
  {/* Podcast Player */}
994
1024
  <div className="!space-y-2">
995
- <h3 className="text-sm font-medium text-white">Podcast Player</h3>
996
- <div className="rounded-lg border border-white/10 bg-white/5 p-6">
1025
+ <h3 className="text-fm-icon-active text-sm font-medium">
1026
+ Podcast Player
1027
+ </h3>
1028
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-6">
997
1029
  <div className="mb-4 flex items-center justify-between">
998
- <h3 className="text-lg font-semibold text-white">Now Playing</h3>
1030
+ <h3 className="text-fm-icon-active text-lg font-semibold">
1031
+ Now Playing
1032
+ </h3>
999
1033
  </div>
1000
1034
  <div className="flex items-center justify-center gap-4">
1001
- <button className="rounded-lg p-2 transition-colors hover:bg-white/10">
1002
- <div className="h-6 w-6 rounded-full border border-white/60 bg-white/20" />
1035
+ <button className="hover:bg-fm-surface-secondary rounded-lg p-2 transition-colors">
1036
+ <div className="border-fm-divider-contrast bg-fm-divider-primary h-6 w-6 rounded-full border" />
1003
1037
  </button>
1004
- <button className="rounded-lg p-3 transition-colors hover:bg-white/10">
1005
- <div className="h-8 w-8 rounded-full border-2 border-white/60 bg-white/20" />
1038
+ <button className="hover:bg-fm-surface-secondary rounded-lg p-3 transition-colors">
1039
+ <div className="border-fm-divider-contrast bg-fm-divider-primary h-8 w-8 rounded-full border-2" />
1006
1040
  </button>
1007
- <button className="rounded-lg p-2 transition-colors hover:bg-white/10">
1008
- <ForwardTenSecondsIcon className="h-6 w-6 text-emerald-400" />
1041
+ <button className="hover:bg-fm-surface-secondary rounded-lg p-2 transition-colors">
1042
+ <ForwardTenSecondsIcon className="text-fm-icon-positive h-6 w-6" />
1009
1043
  </button>
1010
1044
  </div>
1011
1045
  </div>
@@ -1013,21 +1047,21 @@ export const UsageExamples: Story = {
1013
1047
 
1014
1048
  {/* Video Player */}
1015
1049
  <div className="!space-y-2">
1016
- <h3 className="text-sm font-medium text-white">
1050
+ <h3 className="text-fm-icon-active text-sm font-medium">
1017
1051
  Video Player Controls
1018
1052
  </h3>
1019
- <div className="rounded-lg border border-white/10 bg-white/5 p-4">
1020
- <div className="mb-4 h-32 rounded bg-gradient-to-r from-emerald-500/20 to-green-500/20" />
1053
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-4">
1054
+ <div className="from-fm-icon-positive/20 to-fm-icon-positive/20 mb-4 h-32 rounded bg-linear-to-r" />
1021
1055
  <div className="flex items-center justify-between">
1022
1056
  <div className="flex items-center gap-2">
1023
- <span className="text-sm text-white/60">8:15 / 24:30</span>
1024
- <button className="rounded p-1.5 hover:bg-white/10">
1025
- <ForwardTenSecondsIcon className="h-5 w-5 text-emerald-400" />
1057
+ <span className="text-fm-tertiary text-sm">8:15 / 24:30</span>
1058
+ <button className="hover:bg-fm-surface-secondary rounded p-1.5">
1059
+ <ForwardTenSecondsIcon className="text-fm-icon-positive h-5 w-5" />
1026
1060
  </button>
1027
1061
  </div>
1028
1062
  <div className="flex items-center gap-2">
1029
- <button className="rounded p-1.5 hover:bg-white/10">
1030
- <div className="h-5 w-5 rounded-full border border-white/60 bg-white/20" />
1063
+ <button className="hover:bg-fm-surface-secondary rounded p-1.5">
1064
+ <div className="border-fm-divider-contrast bg-fm-divider-primary h-5 w-5 rounded-full border" />
1031
1065
  </button>
1032
1066
  </div>
1033
1067
  </div>
@@ -1050,11 +1084,11 @@ export const Playground: Story = {
1050
1084
  args: {
1051
1085
  width: 44,
1052
1086
  height: 44,
1053
- className: "text-emerald-400",
1087
+ className: "text-fm-icon-positive",
1054
1088
  },
1055
1089
  render: (args) => (
1056
- <div className="flex h-64 min-h-dvh items-center justify-center rounded-lg bg-gradient-to-br from-gray-900 to-gray-800">
1057
- <div className="rounded-lg border border-white/10 bg-white/5 p-8">
1090
+ <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">
1091
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-8">
1058
1092
  <ForwardTenSecondsIcon {...args} />
1059
1093
  </div>
1060
1094
  </div>