aural-ui 3.0.7 → 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 (166) 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/collapsible/Collapsible.stories.tsx +1 -1
  9. package/dist/components/command/Command.stories.tsx +52 -38
  10. package/dist/components/dialog/Dialog.stories.tsx +89 -84
  11. package/dist/components/divider/Divider.stories.tsx +86 -60
  12. package/dist/components/dot-loader/DotLoader.stories.tsx +12 -12
  13. package/dist/components/drawer/Drawer.stories.tsx +74 -44
  14. package/dist/components/drawer/index.tsx +3 -3
  15. package/dist/components/dropdown/Dropdown.stories.tsx +42 -32
  16. package/dist/components/helper-text/HelperText.stories.tsx +2 -2
  17. package/dist/components/hover-card/HoverCard.stories.tsx +211 -178
  18. package/dist/components/input/Input.stories.tsx +2 -2
  19. package/dist/components/label/Label.stories.tsx +10 -10
  20. package/dist/components/list/List.stories.tsx +58 -44
  21. package/dist/components/marquee/Marquee.stories.tsx +131 -113
  22. package/dist/components/otp-inputs/OtpInputs.stories.tsx +47 -35
  23. package/dist/components/overlay/Overlay.stories.tsx +98 -92
  24. package/dist/components/overlay/index.tsx +4 -4
  25. package/dist/components/popover/Popover.stories.tsx +132 -106
  26. package/dist/components/radio/Radio.stories.tsx +2 -2
  27. package/dist/components/resizable/Resizable.stories.tsx +186 -138
  28. package/dist/components/scroll-area/ScrollArea.stories.tsx +174 -120
  29. package/dist/components/search/Search.stories.tsx +81 -59
  30. package/dist/components/select/Select.stories.tsx +3 -1
  31. package/dist/components/sheet/Sheet.stories.tsx +68 -54
  32. package/dist/components/slider/Slider.stories.tsx +71 -47
  33. package/dist/components/stepper/Stepper.stories.tsx +16 -16
  34. package/dist/components/switch/Switch.stories.tsx +12 -12
  35. package/dist/components/table/Table.stories.tsx +8 -6
  36. package/dist/components/tabs/Tabs.stories.tsx +324 -268
  37. package/dist/components/textarea/TextArea.stories.tsx +1 -1
  38. package/dist/components/thumbnail-tags/ThumbnailTags.stories.tsx +16 -10
  39. package/dist/components/toast/Toast.stories.tsx +51 -45
  40. package/dist/components/toggle/Toggle.stories.tsx +111 -89
  41. package/dist/components/tooltip/Tooltip.stories.tsx +160 -144
  42. package/dist/icons/Icons.stories.tsx +2 -2
  43. package/dist/icons/ai-avatar-icon/AiAvatarIcon.stories.tsx +287 -237
  44. package/dist/icons/alert-icon/AlertIcon.stories.tsx +290 -248
  45. package/dist/icons/all-icons.tsx +97 -81
  46. package/dist/icons/angle-down-icon/AngleDownIcon.stories.tsx +312 -270
  47. package/dist/icons/apple-logo-icon/AppleLogoIcon.stories.tsx +294 -244
  48. package/dist/icons/arrow-box-left-icon/ArrowBoxLeftIcon.stories.tsx +309 -279
  49. package/dist/icons/arrow-corner-up-left-icon/ArrowCornerUpLeftIcon.stories.tsx +294 -258
  50. package/dist/icons/arrow-corner-up-right-icon/ArrowCornerUpRightIcon.stories.tsx +289 -255
  51. package/dist/icons/arrow-left-icon/ArrowLeftIcon.stories.tsx +288 -256
  52. package/dist/icons/arrow-right-icon/ArrowRightIcon.stories.tsx +322 -288
  53. package/dist/icons/arrow-right-up-icon/ArrowRightUpIcon.stories.tsx +340 -296
  54. package/dist/icons/art-board-icon/ArtBoardIcon.stories.tsx +197 -177
  55. package/dist/icons/audio-bar-icon/AudioBarIcon.stories.tsx +390 -328
  56. package/dist/icons/backward-ten-seconds-icon/BackwardTenSecondsIcon.stories.tsx +313 -277
  57. package/dist/icons/bubble-check-icon/BubbleCheckIcon.stories.tsx +367 -309
  58. package/dist/icons/bubble-crossed-icon/BubbleCrossedIcon.stories.tsx +356 -308
  59. package/dist/icons/bubble-sparkle-icon/BubbleSparkleIcon.stories.tsx +280 -234
  60. package/dist/icons/camera-icon/CameraIcon.stories.tsx +370 -326
  61. package/dist/icons/capital-a-letter-icon/CapitalALetterIcon.stories.tsx +300 -256
  62. package/dist/icons/chevron-double-left-icon/ChevronDoubleLeftIcon.stories.tsx +298 -262
  63. package/dist/icons/chevron-double-right-icon/ChevronDoubleRightIcon.stories.tsx +294 -260
  64. package/dist/icons/chevron-down-icon/ChevronDownIcon.stories.tsx +291 -259
  65. package/dist/icons/chevron-left-icon/ChevronLeftIcon.stories.tsx +286 -256
  66. package/dist/icons/chevron-right-icon/ChevronRightIcon.stories.tsx +282 -256
  67. package/dist/icons/chevron-up-icon/ChevronUpIcon.stories.tsx +292 -256
  68. package/dist/icons/circle-tick-icon/CircleTickIcon.stories.tsx +338 -290
  69. package/dist/icons/circular-play-icon/CircularPlayIcon.stories.tsx +167 -148
  70. package/dist/icons/coin-icon/CoinIcon.stories.tsx +342 -296
  71. package/dist/icons/coin-toons-icon/CoinToonsIcon.stories.tsx +342 -296
  72. package/dist/icons/column-wide-add-icon/ColumnWideAddIcon.stories.tsx +280 -238
  73. package/dist/icons/command-icon/CommandIcon.stories.tsx +328 -280
  74. package/dist/icons/copy-icon/CopyIcon.stories.tsx +294 -256
  75. package/dist/icons/cross-circle-icon/CrossCircleIcon.stories.tsx +285 -235
  76. package/dist/icons/cross-icon/CrossIcon.stories.tsx +308 -266
  77. package/dist/icons/download-icon/DownloadIcon.stories.tsx +271 -231
  78. package/dist/icons/edit-big-icon/EditBigIcon.stories.tsx +330 -278
  79. package/dist/icons/email-icon/EmailIcon.stories.tsx +303 -257
  80. package/dist/icons/expand-icon/ExpandIcon.stories.tsx +324 -286
  81. package/dist/icons/eye-close-icon/EyeCloseIcon.stories.tsx +317 -271
  82. package/dist/icons/eye-open-icon/EyeOpenIcon.stories.tsx +320 -272
  83. package/dist/icons/feature-shine-icon/FeatureShineIcon.stories.tsx +322 -280
  84. package/dist/icons/file-chart-icon/FileChartIcon.stories.tsx +315 -277
  85. package/dist/icons/file-text-icon/FileTextIcon.stories.tsx +199 -177
  86. package/dist/icons/filter-bar-row-icon/FilterBarRowIcon.stories.tsx +304 -264
  87. package/dist/icons/forward-ten-seconds-icon/ForwardTenSecondsIcon.stories.tsx +311 -277
  88. package/dist/icons/git-branch-icon/GitBranchIcon.stories.tsx +327 -287
  89. package/dist/icons/git-fork-icon/GitForkIcon.stories.tsx +314 -278
  90. package/dist/icons/globe-icon/GlobeIcon.stories.tsx +113 -98
  91. package/dist/icons/google-logo-icon/GoogleLogoIcon.stories.tsx +274 -226
  92. package/dist/icons/grip-vertical-icon/GripVerticalIcon.stories.tsx +349 -303
  93. package/dist/icons/head-icon/HeadIcon.stories.tsx +286 -246
  94. package/dist/icons/heart-icon/HeartIcon.stories.tsx +312 -268
  95. package/dist/icons/image-avatar-sparkle-icon/ImageAvatarSparkleIcon.stories.tsx +246 -210
  96. package/dist/icons/image-icon/ImageIcon.stories.tsx +330 -284
  97. package/dist/icons/import-folder-icon/ImportFolderIcon.stories.tsx +326 -282
  98. package/dist/icons/import-left-arrow-folder-icon/ImportLeftArrowFolderIcon.stories.tsx +330 -294
  99. package/dist/icons/indian-flag-icon/IndianFlagIcon.stories.tsx +288 -234
  100. package/dist/icons/instagram-icon/InstagramIcon.stories.tsx +386 -330
  101. package/dist/icons/layout-column-icon/LayoutColumnIcon.stories.tsx +305 -263
  102. package/dist/icons/layout-left-icon/LayoutLeftIcon.stories.tsx +295 -259
  103. package/dist/icons/layout-right-icon/LayoutRightIcon.stories.tsx +296 -256
  104. package/dist/icons/light-bulb-simple-icon/LightBulbSimpleIcon.stories.tsx +322 -282
  105. package/dist/icons/linked-in-icon/LinkedInIcon.stories.tsx +399 -359
  106. package/dist/icons/magic-book-icon/MagicBookIcon.stories.tsx +314 -272
  107. package/dist/icons/magic-edit-icon/MagicEditIcon.stories.tsx +238 -206
  108. package/dist/icons/maintenance-icon/MaintenanceIcon.stories.tsx +322 -276
  109. package/dist/icons/message-icon/MessageIcon.stories.tsx +192 -170
  110. package/dist/icons/minimize-icon/MinimizeIcon.stories.tsx +348 -304
  111. package/dist/icons/moon-icon/MoonIcon.stories.tsx +191 -167
  112. package/dist/icons/move-horizontal-icon/MoveHorizontalIcon.stories.tsx +380 -326
  113. package/dist/icons/move-vertical-icon/MoveVerticalIcon.stories.tsx +345 -291
  114. package/dist/icons/musical-note-icon/MusicalNoteIcon.stories.tsx +310 -266
  115. package/dist/icons/notepad-icon/NotepadIcon.stories.tsx +311 -271
  116. package/dist/icons/notes-icon/NotesIcon.stories.tsx +311 -271
  117. package/dist/icons/page-search-icon/PageSearchIcon.stories.tsx +309 -271
  118. package/dist/icons/page-text-icon/PageTextIcon.stories.tsx +248 -210
  119. package/dist/icons/paint-roll-icon/PaintRollIcon.stories.tsx +310 -262
  120. package/dist/icons/paper-plane-icon/PaperPlaneIcon.stories.tsx +274 -236
  121. package/dist/icons/pause-icon/PauseIcon.stories.tsx +324 -280
  122. package/dist/icons/pencil-icon/PencilIcon.stories.tsx +323 -281
  123. package/dist/icons/phone-icon/PhoneIcon.stories.tsx +288 -240
  124. package/dist/icons/plus-icon/PlusIcon.stories.tsx +315 -273
  125. package/dist/icons/pocket-studio-icon/PocketStudioIcon.stories.tsx +278 -234
  126. package/dist/icons/scroll-down-icon/ScrollDownIcon.stories.tsx +161 -151
  127. package/dist/icons/search-icon/SearchIcon.stories.tsx +324 -284
  128. package/dist/icons/setting-icon/SettingIcon.stories.tsx +306 -264
  129. package/dist/icons/share-icon/ShareIcon.stories.tsx +314 -272
  130. package/dist/icons/shield-icon/ShieldIcon.stories.tsx +281 -235
  131. package/dist/icons/site-logo-icon/SiteLogoIcon.stories.tsx +309 -250
  132. package/dist/icons/skip-backward-icon/SkipBackwardIcon.stories.tsx +317 -279
  133. package/dist/icons/skip-forward-icon/SkipForwardIcon.stories.tsx +315 -279
  134. package/dist/icons/sparkles-soft-icon/SparklesSoftIcon.stories.tsx +299 -253
  135. package/dist/icons/spinner-gradient-icon/SpinnerGradientIcon.stories.tsx +185 -169
  136. package/dist/icons/spinner-gradient-icon/index.tsx +6 -1
  137. package/dist/icons/spinner-solid-icon/SpinnerSolidIcon.stories.tsx +192 -168
  138. package/dist/icons/spinner-solid-icon/index.tsx +6 -1
  139. package/dist/icons/spinner-solid-neutral-icon/SpinnerSolidINeutralcon.stories.tsx +212 -178
  140. package/dist/icons/spinner-solid-neutral-icon/index.tsx +1 -1
  141. package/dist/icons/star-icon/StarIcon.stories.tsx +290 -244
  142. package/dist/icons/store-coin-icon/StoreCoinIcon.stories.tsx +286 -234
  143. package/dist/icons/suggestion-icon/SuggestionIcon.stories.tsx +272 -230
  144. package/dist/icons/sun-icon/SunIcon.stories.tsx +262 -226
  145. package/dist/icons/text-color-icon/TextColorIcon.stories.tsx +321 -279
  146. package/dist/icons/text-indicator-icon/TextIndicatorIcon.stories.tsx +332 -282
  147. package/dist/icons/threads-icon/ThreadsIcon.stories.tsx +394 -342
  148. package/dist/icons/tick-circle-icon/TickCircleIcon.stories.tsx +338 -290
  149. package/dist/icons/tick-icon/TickIcon.stories.tsx +364 -315
  150. package/dist/icons/trash-icon/TrashIcon.stories.tsx +293 -253
  151. package/dist/icons/twitter-x-icon/TwitterXIcon.stories.tsx +396 -338
  152. package/dist/icons/upload-icon/UploadIcon.stories.tsx +291 -247
  153. package/dist/icons/vertical-menu-icon/VerticalMenuIcon.stories.tsx +309 -271
  154. package/dist/icons/video-play-list-icon/VideoPlaylistIcon.stories.tsx +336 -290
  155. package/dist/icons/voice-playing-icon/VoicePlayingIcon.stories.tsx +382 -334
  156. package/dist/icons/volume-full-icon/VolumeFullIcon.stories.tsx +349 -305
  157. package/dist/icons/volume-half-icon/VolumeHalfIcon.stories.tsx +327 -295
  158. package/dist/icons/volume-off-icon/VolumeOffIcon.stories.tsx +336 -296
  159. package/dist/icons/warning-icon/WarningIcon.stories.tsx +314 -274
  160. package/dist/icons/youtube-icon/YoutubeIcon.stories.tsx +311 -261
  161. package/dist/index.cjs +84 -84
  162. package/dist/index.js +84 -84
  163. package/dist/styles/aural-all-theme.css +1222 -0
  164. package/dist/styles/{aural-theme.css → aural-dark-theme.css} +15 -3
  165. package/dist/styles/aural-light-theme.css +1047 -0
  166. package/package.json +1 -1
@@ -11,9 +11,9 @@ const meta: Meta<typeof WarningIcon> = {
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 WarningIcon> = {
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-yellow-900/20 to-gray-900">
83
+ <div className="from-fm-surface-primary via-fm-icon-warning/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-yellow-500/10 via-transparent to-amber-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-warning/10 to-fm-icon-warning/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-yellow-500/30 bg-gradient-to-br from-yellow-500/20 to-amber-500/20">
90
- <WarningIcon className="h-12 w-12 text-yellow-400" />
89
+ <div className="border-fm-icon-warning/30 from-fm-icon-warning/20 to-fm-icon-warning/20 !mx-auto flex h-24 w-24 items-center justify-center rounded-2xl border bg-linear-to-br">
90
+ <WarningIcon className="text-fm-icon-warning 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
  WarningIcon
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 universal warning alert icon for user interfaces. Features
97
97
  the classic triangular warning design with exclamation mark,
98
98
  essential for error states, validation messages,
@@ -103,28 +103,28 @@ const meta: Meta<typeof WarningIcon> = {
103
103
  {/* Stats */}
104
104
  <div className="flex items-center justify-center gap-8 pt-8">
105
105
  <div className="text-center">
106
- <div className="text-3xl font-bold text-yellow-300">
106
+ <div className="text-fm-icon-warning text-3xl font-bold">
107
107
  Alert Users
108
108
  </div>
109
- <div className="text-sm text-white/60">
109
+ <div className="text-fm-tertiary text-sm">
110
110
  Critical warnings
111
111
  </div>
112
112
  </div>
113
- <div className="h-8 w-px bg-white/20" />
113
+ <div className="bg-fm-divider-primary h-8 w-px" />
114
114
  <div className="text-center">
115
- <div className="text-3xl font-bold text-amber-300">
115
+ <div className="text-fm-icon-warning text-3xl font-bold">
116
116
  Accessible
117
117
  </div>
118
- <div className="text-sm text-white/60">
118
+ <div className="text-fm-tertiary text-sm">
119
119
  Screen reader friendly
120
120
  </div>
121
121
  </div>
122
- <div className="h-8 w-px bg-white/20" />
122
+ <div className="bg-fm-divider-primary h-8 w-px" />
123
123
  <div className="text-center">
124
- <div className="text-3xl font-bold text-orange-300">
124
+ <div className="text-fm-icon-warning text-3xl font-bold">
125
125
  Universal
126
126
  </div>
127
- <div className="text-sm text-white/60">
127
+ <div className="text-fm-tertiary text-sm">
128
128
  Standard alert symbol
129
129
  </div>
130
130
  </div>
@@ -137,16 +137,16 @@ const meta: Meta<typeof WarningIcon> = {
137
137
  <div className="!mx-auto max-w-7xl !space-y-16 px-6 py-12">
138
138
  {/* Quick Usage */}
139
139
  <div className="!space-y-8">
140
- <h2 className="text-center text-3xl font-bold !text-white">
140
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
141
141
  Quick Start
142
142
  </h2>
143
143
  <div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
144
144
  <div className="!space-y-4">
145
- <h3 className="text-xl font-semibold !text-yellow-300">
145
+ <h3 className="text-fm-icon-warning! text-xl font-semibold">
146
146
  Basic Usage
147
147
  </h3>
148
- <div className="rounded-lg bg-black/40 p-4">
149
- <pre className="overflow-x-auto text-sm !text-green-300">
148
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
149
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
150
150
  {`import { WarningIcon } from "@icons/warning-icon"
151
151
 
152
152
  function ErrorAlert() {
@@ -162,13 +162,15 @@ function ErrorAlert() {
162
162
  </div>
163
163
 
164
164
  <div className="!space-y-4">
165
- <h3 className="text-xl font-semibold !text-yellow-300">
165
+ <h3 className="text-fm-icon-warning! text-xl font-semibold">
166
166
  Live Preview
167
167
  </h3>
168
- <div className="flex h-32 items-center justify-center rounded-lg border border-white/10 bg-white/5">
169
- <div className="flex items-center gap-2 rounded-lg border border-yellow-500/20 bg-yellow-500/10 p-3">
170
- <WarningIcon className="h-5 w-5 text-yellow-400" />
171
- <span className="text-yellow-200">Warning message</span>
168
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary flex h-32 items-center justify-center rounded-lg border">
169
+ <div className="border-fm-icon-warning/20 bg-fm-icon-warning/10 flex items-center gap-2 rounded-lg border p-3">
170
+ <WarningIcon className="text-fm-icon-warning h-5 w-5" />
171
+ <span className="text-fm-icon-warning">
172
+ Warning message
173
+ </span>
172
174
  </div>
173
175
  </div>
174
176
  </div>
@@ -177,122 +179,130 @@ function ErrorAlert() {
177
179
 
178
180
  {/* Props Documentation */}
179
181
  <div className="!space-y-8">
180
- <h2 className="text-center text-3xl font-bold !text-white">
182
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
181
183
  Props & Configuration
182
184
  </h2>
183
185
 
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>
186
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary overflow-hidden rounded-lg border">
187
+ <div className="bg-fm-surface-secondary p-4">
188
+ <h3 className="text-fm-icon-active! text-xl font-semibold">
189
+ Props
190
+ </h3>
187
191
  </div>
188
192
  <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">
193
+ <thead className="bg-fm-surface-secondary">
194
+ <tr className="border-fm-divider-secondary border-b">
195
+ <th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
192
196
  Prop
193
197
  </th>
194
- <th className="px-6 py-4 text-left text-sm font-semibold !text-white">
198
+ <th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
195
199
  Type
196
200
  </th>
197
- <th className="px-6 py-4 text-left text-sm font-semibold !text-white">
201
+ <th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
198
202
  Default
199
203
  </th>
200
- <th className="px-6 py-4 text-left text-sm font-semibold !text-white">
204
+ <th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
201
205
  Description
202
206
  </th>
203
207
  </tr>
204
208
  </thead>
205
209
  <tbody>
206
210
  {" "}
207
- <tr className="!bg-black/10">
208
- <td className="px-6 py-4 font-mono text-sm !text-blue-300">
211
+ <tr className="bg-fm-surface-secondary!">
212
+ <td className="text-fm-icon-info! px-6 py-4 font-mono text-sm">
209
213
  withAccessibility
210
214
  </td>
211
- <td className="px-6 py-4 text-sm !text-white/70">
215
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
212
216
  boolean
213
217
  </td>
214
- <td className="px-6 py-4 text-sm !text-white/50">
218
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
215
219
  true
216
220
  </td>
217
- <td className="px-6 py-4 text-sm !text-white/70">
221
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
218
222
  Whether to wrap the icon with accessibility feature
219
223
  </td>
220
224
  </tr>
221
- <tr className="border-b border-white/5 !bg-black/10">
222
- <td className="px-6 py-4 font-mono text-sm !text-yellow-300">
225
+ <tr className="border-fm-divider-tertiary bg-fm-surface-secondary! border-b">
226
+ <td className="text-fm-icon-warning! px-6 py-4 font-mono text-sm">
223
227
  height
224
228
  </td>
225
- <td className="px-6 py-4 text-sm !text-white/70">
229
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
226
230
  number | string
227
231
  </td>
228
- <td className="px-6 py-4 text-sm !text-white/50">24</td>
229
- <td className="px-6 py-4 text-sm !text-white/70">
232
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
233
+ 24
234
+ </td>
235
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
230
236
  Height of the icon in pixels
231
237
  </td>
232
238
  </tr>
233
- <tr className="border-b border-white/5">
234
- <td className="px-6 py-4 font-mono text-sm !text-yellow-300">
239
+ <tr className="border-fm-divider-tertiary border-b">
240
+ <td className="text-fm-icon-warning! px-6 py-4 font-mono text-sm">
235
241
  stroke
236
242
  </td>
237
- <td className="px-6 py-4 text-sm !text-white/70">
243
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
238
244
  string
239
245
  </td>
240
- <td className="px-6 py-4 text-sm !text-white/50">
246
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
241
247
  currentColor
242
248
  </td>
243
- <td className="px-6 py-4 text-sm !text-white/70">
249
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
244
250
  Stroke color of the icon
245
251
  </td>
246
252
  </tr>
247
- <tr className="border-b border-white/5 !bg-black/10">
248
- <td className="px-6 py-4 font-mono text-sm !text-yellow-300">
253
+ <tr className="border-fm-divider-tertiary bg-fm-surface-secondary! border-b">
254
+ <td className="text-fm-icon-warning! px-6 py-4 font-mono text-sm">
249
255
  strokeWidth
250
256
  </td>
251
- <td className="px-6 py-4 text-sm !text-white/70">
257
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
252
258
  string | number
253
259
  </td>
254
- <td className="px-6 py-4 text-sm !text-white/50">
260
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
255
261
  1.5
256
262
  </td>
257
- <td className="px-6 py-4 text-sm !text-white/70">
263
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
258
264
  Width of the stroke
259
265
  </td>
260
266
  </tr>
261
- <tr className="border-b border-white/5">
262
- <td className="px-6 py-4 font-mono text-sm !text-yellow-300">
267
+ <tr className="border-fm-divider-tertiary border-b">
268
+ <td className="text-fm-icon-warning! px-6 py-4 font-mono text-sm">
263
269
  strokeLinecap
264
270
  </td>
265
- <td className="px-6 py-4 text-sm !text-white/70">
271
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
266
272
  string
267
273
  </td>
268
- <td className="px-6 py-4 text-sm !text-white/50">
274
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
269
275
  square
270
276
  </td>
271
- <td className="px-6 py-4 text-sm !text-white/70">
277
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
272
278
  Style of line endings
273
279
  </td>
274
280
  </tr>
275
- <tr className="border-b border-white/5 !bg-black/10">
276
- <td className="px-6 py-4 font-mono text-sm !text-yellow-300">
281
+ <tr className="border-fm-divider-tertiary bg-fm-surface-secondary! border-b">
282
+ <td className="text-fm-icon-warning! px-6 py-4 font-mono text-sm">
277
283
  className
278
284
  </td>
279
- <td className="px-6 py-4 text-sm !text-white/70">
285
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
280
286
  string
281
287
  </td>
282
- <td className="px-6 py-4 text-sm !text-white/50">-</td>
283
- <td className="px-6 py-4 text-sm !text-white/70">
288
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
289
+ -
290
+ </td>
291
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
284
292
  CSS classes for styling (use for overrides)
285
293
  </td>
286
294
  </tr>
287
- <tr className="!bg-black/10">
288
- <td className="px-6 py-4 font-mono text-sm !text-yellow-300">
295
+ <tr className="bg-fm-surface-secondary!">
296
+ <td className="text-fm-icon-warning! px-6 py-4 font-mono text-sm">
289
297
  ...svgProps
290
298
  </td>
291
- <td className="px-6 py-4 text-sm !text-white/70">
299
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
292
300
  SVGProps
293
301
  </td>
294
- <td className="px-6 py-4 text-sm !text-white/50">-</td>
295
- <td className="px-6 py-4 text-sm !text-white/70">
302
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
303
+ -
304
+ </td>
305
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
296
306
  All standard SVG element props
297
307
  </td>
298
308
  </tr>
@@ -303,50 +313,62 @@ function ErrorAlert() {
303
313
 
304
314
  {/* Size Variations */}
305
315
  <div className="!space-y-8">
306
- <h2 className="text-center text-3xl font-bold !text-white">
316
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
307
317
  Size Variations
308
318
  </h2>
309
- <div className="rounded-lg border border-white/10 bg-white/5 p-8">
319
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-8">
310
320
  <div className="!space-y-6">
311
321
  <div className="grid grid-cols-1 gap-8 md:grid-cols-2">
312
322
  <div className="!space-y-4">
313
- <h3 className="text-lg font-semibold !text-yellow-300">
323
+ <h3 className="text-fm-icon-warning! text-lg font-semibold">
314
324
  Standard Sizes
315
325
  </h3>
316
- <div className="flex items-end gap-6 rounded-lg bg-black/20 p-6">
326
+ <div className="bg-fm-surface-secondary flex items-end gap-6 rounded-lg p-6">
317
327
  <div className="text-center">
318
- <WarningIcon className="!mx-auto mb-2 h-3 w-3 text-yellow-400" />
319
- <span className="text-xs text-white/60">12px</span>
328
+ <WarningIcon className="text-fm-icon-warning !mx-auto mb-2 h-3 w-3" />
329
+ <span className="text-fm-tertiary text-xs">
330
+ 12px
331
+ </span>
320
332
  </div>
321
333
  <div className="text-center">
322
- <WarningIcon className="!mx-auto mb-2 h-4 w-4 text-yellow-400" />
323
- <span className="text-xs text-white/60">16px</span>
334
+ <WarningIcon className="text-fm-icon-warning !mx-auto mb-2 h-4 w-4" />
335
+ <span className="text-fm-tertiary text-xs">
336
+ 16px
337
+ </span>
324
338
  </div>
325
339
  <div className="text-center">
326
- <WarningIcon className="!mx-auto mb-2 h-5 w-5 text-yellow-400" />
327
- <span className="text-xs text-white/60">20px</span>
340
+ <WarningIcon className="text-fm-icon-warning !mx-auto mb-2 h-5 w-5" />
341
+ <span className="text-fm-tertiary text-xs">
342
+ 20px
343
+ </span>
328
344
  </div>
329
345
  <div className="text-center">
330
- <WarningIcon className="!mx-auto mb-2 h-6 w-6 text-yellow-400" />
331
- <span className="text-xs text-white/60">24px</span>
346
+ <WarningIcon className="text-fm-icon-warning !mx-auto mb-2 h-6 w-6" />
347
+ <span className="text-fm-tertiary text-xs">
348
+ 24px
349
+ </span>
332
350
  </div>
333
351
  <div className="text-center">
334
- <WarningIcon className="!mx-auto mb-2 h-8 w-8 text-yellow-400" />
335
- <span className="text-xs text-white/60">32px</span>
352
+ <WarningIcon className="text-fm-icon-warning !mx-auto mb-2 h-8 w-8" />
353
+ <span className="text-fm-tertiary text-xs">
354
+ 32px
355
+ </span>
336
356
  </div>
337
357
  <div className="text-center">
338
- <WarningIcon className="!mx-auto mb-2 h-12 w-12 text-yellow-400" />
339
- <span className="text-xs text-white/60">48px</span>
358
+ <WarningIcon className="text-fm-icon-warning !mx-auto mb-2 h-12 w-12" />
359
+ <span className="text-fm-tertiary text-xs">
360
+ 48px
361
+ </span>
340
362
  </div>
341
363
  </div>
342
364
  </div>
343
365
 
344
366
  <div className="!space-y-4">
345
- <h3 className="text-lg font-semibold !text-yellow-300">
367
+ <h3 className="text-fm-icon-warning! text-lg font-semibold">
346
368
  Code Example
347
369
  </h3>
348
- <div className="rounded-lg bg-black/40 p-4">
349
- <pre className="overflow-x-auto text-sm !text-cyan-300">
370
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
371
+ <pre className="text-fm-icon-info! overflow-x-auto text-sm">
350
372
  {`// Small (16px) - inline warnings
351
373
  <WarningIcon className="h-4 w-4" />
352
374
 
@@ -368,56 +390,56 @@ function ErrorAlert() {
368
390
 
369
391
  {/* Color Variations */}
370
392
  <div className="!space-y-8">
371
- <h2 className="text-center text-3xl font-bold !text-white">
393
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
372
394
  Color Variations
373
395
  </h2>
374
396
  <div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
375
397
  <div className="!space-y-4">
376
- <h3 className="text-lg font-semibold !text-yellow-300">
398
+ <h3 className="text-fm-icon-warning! text-lg font-semibold">
377
399
  Semantic Colors
378
400
  </h3>
379
- <div className="!space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
401
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
380
402
  <div className="flex items-center gap-4">
381
- <WarningIcon className="h-6 w-6 text-yellow-400" />
403
+ <WarningIcon className="text-fm-icon-warning h-6 w-6" />
382
404
  <div>
383
- <div className="text-sm font-medium text-white">
405
+ <div className="text-fm-icon-active text-sm font-medium">
384
406
  Warning
385
407
  </div>
386
- <div className="text-xs text-white/60">
387
- text-yellow-400
408
+ <div className="text-fm-tertiary text-xs">
409
+ text-fm-icon-warning
388
410
  </div>
389
411
  </div>
390
412
  </div>
391
413
  <div className="flex items-center gap-4">
392
- <WarningIcon className="h-6 w-6 text-amber-400" />
414
+ <WarningIcon className="text-fm-icon-warning h-6 w-6" />
393
415
  <div>
394
- <div className="text-sm font-medium text-white">
416
+ <div className="text-fm-icon-active text-sm font-medium">
395
417
  Caution
396
418
  </div>
397
- <div className="text-xs text-white/60">
398
- text-amber-400
419
+ <div className="text-fm-tertiary text-xs">
420
+ text-fm-icon-warning
399
421
  </div>
400
422
  </div>
401
423
  </div>
402
424
  <div className="flex items-center gap-4">
403
- <WarningIcon className="h-6 w-6 text-orange-400" />
425
+ <WarningIcon className="text-fm-icon-warning h-6 w-6" />
404
426
  <div>
405
- <div className="text-sm font-medium text-white">
427
+ <div className="text-fm-icon-active text-sm font-medium">
406
428
  Alert
407
429
  </div>
408
- <div className="text-xs text-white/60">
409
- text-orange-400
430
+ <div className="text-fm-tertiary text-xs">
431
+ text-fm-icon-warning
410
432
  </div>
411
433
  </div>
412
434
  </div>
413
435
  <div className="flex items-center gap-4">
414
- <WarningIcon className="h-6 w-6 text-red-400" />
436
+ <WarningIcon className="text-fm-icon-negative h-6 w-6" />
415
437
  <div>
416
- <div className="text-sm font-medium text-white">
438
+ <div className="text-fm-icon-active text-sm font-medium">
417
439
  Critical
418
440
  </div>
419
- <div className="text-xs text-white/60">
420
- text-red-400
441
+ <div className="text-fm-tertiary text-xs">
442
+ text-fm-icon-negative
421
443
  </div>
422
444
  </div>
423
445
  </div>
@@ -425,11 +447,11 @@ function ErrorAlert() {
425
447
  </div>
426
448
 
427
449
  <div className="!space-y-4">
428
- <h3 className="text-lg font-semibold !text-yellow-300">
450
+ <h3 className="text-fm-icon-warning! text-lg font-semibold">
429
451
  Custom Colors
430
452
  </h3>
431
- <div className="rounded-lg bg-black/40 p-4">
432
- <pre className="overflow-x-auto text-sm !text-green-300">
453
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
454
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
433
455
  {`// Using Tailwind classes
434
456
  <WarningIcon className="h-6 w-6 text-yellow-400" />
435
457
  <WarningIcon className="h-6 w-6 text-amber-500" />
@@ -454,29 +476,29 @@ function ErrorAlert() {
454
476
 
455
477
  {/* Usage Examples */}
456
478
  <div className="!space-y-8">
457
- <h2 className="text-center text-3xl font-bold !text-white">
479
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
458
480
  Usage Examples
459
481
  </h2>
460
482
 
461
483
  <div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
462
484
  {/* Form Validation */}
463
485
  <div className="!space-y-4">
464
- <h3 className="text-lg font-semibold !text-yellow-300">
486
+ <h3 className="text-fm-icon-warning! text-lg font-semibold">
465
487
  Form Validation
466
488
  </h3>
467
489
  <div className="!space-y-4">
468
- <div className="rounded-lg border border-white/10 bg-white/5 p-6">
490
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-6">
469
491
  <div className="!space-y-4">
470
492
  <div>
471
- <label className="mb-2 block text-sm font-medium text-white">
493
+ <label className="text-fm-icon-active mb-2 block text-sm font-medium">
472
494
  Email Address
473
495
  </label>
474
496
  <input
475
497
  type="email"
476
- className="w-full rounded-lg border border-red-400/50 bg-white/10 p-3 text-white placeholder-white/50"
498
+ className="border-fm-icon-negative/50 bg-fm-surface-secondary text-fm-icon-active w-full rounded-lg border p-3 placeholder-white/50"
477
499
  placeholder="Enter your email"
478
500
  />
479
- <div className="mt-2 flex items-center gap-2 text-red-400">
501
+ <div className="text-fm-icon-negative mt-2 flex items-center gap-2">
480
502
  <WarningIcon className="h-4 w-4" />
481
503
  <span className="text-sm">
482
504
  Please enter a valid email address
@@ -484,15 +506,15 @@ function ErrorAlert() {
484
506
  </div>
485
507
  </div>
486
508
  <div>
487
- <label className="mb-2 block text-sm font-medium text-white">
509
+ <label className="text-fm-icon-active mb-2 block text-sm font-medium">
488
510
  Password
489
511
  </label>
490
512
  <input
491
513
  type="password"
492
- className="w-full rounded-lg border border-yellow-400/50 bg-white/10 p-3 text-white placeholder-white/50"
514
+ className="border-fm-icon-warning/50 bg-fm-surface-secondary text-fm-icon-active w-full rounded-lg border p-3 placeholder-white/50"
493
515
  placeholder="Enter your password"
494
516
  />
495
- <div className="mt-2 flex items-center gap-2 text-yellow-400">
517
+ <div className="text-fm-icon-warning mt-2 flex items-center gap-2">
496
518
  <WarningIcon className="h-4 w-4" />
497
519
  <span className="text-sm">
498
520
  Password must be at least 8 characters
@@ -501,8 +523,8 @@ function ErrorAlert() {
501
523
  </div>
502
524
  </div>
503
525
  </div>
504
- <div className="rounded-lg bg-black/40 p-4">
505
- <pre className="overflow-x-auto text-sm !text-green-300">
526
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
527
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
506
528
  {`// Form validation with warning icon
507
529
  <div className="field-error">
508
530
  <div className="flex items-center gap-2 text-red-400">
@@ -525,50 +547,50 @@ function ErrorAlert() {
525
547
 
526
548
  {/* Alert Banners */}
527
549
  <div className="!space-y-4">
528
- <h3 className="text-lg font-semibold !text-yellow-300">
550
+ <h3 className="text-fm-icon-warning! text-lg font-semibold">
529
551
  Alert Banners
530
552
  </h3>
531
553
  <div className="!space-y-4">
532
554
  <div className="!space-y-3">
533
- <div className="flex items-center gap-3 rounded-lg border border-yellow-400/30 bg-yellow-400/10 p-4">
534
- <WarningIcon className="h-6 w-6 flex-shrink-0 text-yellow-400" />
555
+ <div className="border-fm-icon-warning/30 bg-fm-icon-warning/10 flex items-center gap-3 rounded-lg border p-4">
556
+ <WarningIcon className="text-fm-icon-warning h-6 w-6 flex-shrink-0" />
535
557
  <div>
536
- <div className="font-medium text-yellow-200">
558
+ <div className="text-fm-icon-warning font-medium">
537
559
  System Maintenance
538
560
  </div>
539
- <div className="text-sm text-yellow-300/70">
561
+ <div className="text-fm-icon-warning/70 text-sm">
540
562
  Scheduled maintenance will occur tonight from 2-4
541
563
  AM EST.
542
564
  </div>
543
565
  </div>
544
566
  </div>
545
- <div className="flex items-center gap-3 rounded-lg border border-red-400/30 bg-red-400/10 p-4">
546
- <WarningIcon className="h-6 w-6 flex-shrink-0 text-red-400" />
567
+ <div className="border-fm-icon-negative/30 bg-fm-icon-negative/10 flex items-center gap-3 rounded-lg border p-4">
568
+ <WarningIcon className="text-fm-icon-negative h-6 w-6 flex-shrink-0" />
547
569
  <div>
548
- <div className="font-medium text-red-200">
570
+ <div className="text-fm-icon-negative font-medium">
549
571
  Service Disruption
550
572
  </div>
551
- <div className="text-sm text-red-300/70">
573
+ <div className="text-fm-icon-negative/70 text-sm">
552
574
  We're experiencing issues with our payment system.
553
575
  Please try again later.
554
576
  </div>
555
577
  </div>
556
578
  </div>
557
- <div className="flex items-center gap-3 rounded-lg border border-orange-400/30 bg-orange-400/10 p-4">
558
- <WarningIcon className="h-6 w-6 flex-shrink-0 text-orange-400" />
579
+ <div className="border-fm-icon-warning/30 bg-fm-icon-warning/10 flex items-center gap-3 rounded-lg border p-4">
580
+ <WarningIcon className="text-fm-icon-warning h-6 w-6 flex-shrink-0" />
559
581
  <div>
560
- <div className="font-medium text-orange-200">
582
+ <div className="text-fm-icon-warning font-medium">
561
583
  Security Alert
562
584
  </div>
563
- <div className="text-sm text-orange-300/70">
585
+ <div className="text-fm-icon-warning/70 text-sm">
564
586
  Unusual login activity detected. Please verify
565
587
  your account.
566
588
  </div>
567
589
  </div>
568
590
  </div>
569
591
  </div>
570
- <div className="rounded-lg bg-black/40 p-4">
571
- <pre className="overflow-x-auto text-sm !text-green-300">
592
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
593
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
572
594
  {`// Alert banner component
573
595
  <div className="alert-banner warning">
574
596
  <div className="flex items-center gap-3">
@@ -588,37 +610,37 @@ function ErrorAlert() {
588
610
 
589
611
  {/* Confirmation Dialogs */}
590
612
  <div className="!space-y-4">
591
- <h3 className="text-lg font-semibold !text-yellow-300">
613
+ <h3 className="text-fm-icon-warning! text-lg font-semibold">
592
614
  Confirmation Dialogs
593
615
  </h3>
594
616
  <div className="!space-y-4">
595
- <div className="rounded-lg border border-white/10 bg-white/5 p-6">
617
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-6">
596
618
  <div className="!space-y-4 text-center">
597
- <div className="!mx-auto flex h-16 w-16 items-center justify-center rounded-full bg-yellow-400/20">
598
- <WarningIcon className="h-8 w-8 text-yellow-400" />
619
+ <div className="bg-fm-icon-warning/20 !mx-auto flex h-16 w-16 items-center justify-center rounded-full">
620
+ <WarningIcon className="text-fm-icon-warning h-8 w-8" />
599
621
  </div>
600
622
  <div>
601
- <h3 className="text-lg font-semibold text-white">
623
+ <h3 className="text-fm-icon-active text-lg font-semibold">
602
624
  Delete Account
603
625
  </h3>
604
- <p className="mt-2 text-sm text-white/70">
626
+ <p className="text-fm-secondary mt-2 text-sm">
605
627
  Are you sure you want to delete your account? This
606
628
  action cannot be undone and all your data will be
607
629
  permanently removed.
608
630
  </p>
609
631
  </div>
610
632
  <div className="flex justify-center gap-3 pt-4">
611
- <button className="rounded-lg border border-white/20 px-4 py-2 text-white hover:bg-white/10">
633
+ <button className="border-fm-divider-primary text-fm-icon-active hover:bg-fm-surface-secondary rounded-lg border px-4 py-2">
612
634
  Cancel
613
635
  </button>
614
- <button className="rounded-lg bg-red-500 px-4 py-2 text-white hover:bg-red-600">
636
+ <button className="bg-fm-icon-negative text-fm-icon-active hover:bg-fm-icon-negative rounded-lg px-4 py-2">
615
637
  Delete Account
616
638
  </button>
617
639
  </div>
618
640
  </div>
619
641
  </div>
620
- <div className="rounded-lg bg-black/40 p-4">
621
- <pre className="overflow-x-auto text-sm !text-green-300">
642
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
643
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
622
644
  {`// Confirmation dialog with warning
623
645
  <div className="confirmation-dialog">
624
646
  <div className="icon-container">
@@ -638,42 +660,42 @@ function ErrorAlert() {
638
660
 
639
661
  {/* Toast Notifications */}
640
662
  <div className="!space-y-4">
641
- <h3 className="text-lg font-semibold !text-yellow-300">
663
+ <h3 className="text-fm-icon-warning! text-lg font-semibold">
642
664
  Toast Notifications
643
665
  </h3>
644
666
  <div className="!space-y-4">
645
667
  <div className="!space-y-3">
646
- <div className="flex items-center gap-3 rounded-lg border border-yellow-400/30 bg-yellow-400/10 p-4 shadow-lg">
647
- <WarningIcon className="h-5 w-5 flex-shrink-0 text-yellow-400" />
668
+ <div className="border-fm-icon-warning/30 bg-fm-icon-warning/10 flex items-center gap-3 rounded-lg border p-4 shadow-lg">
669
+ <WarningIcon className="text-fm-icon-warning h-5 w-5 flex-shrink-0" />
648
670
  <div className="flex-1">
649
- <div className="text-sm font-medium text-yellow-200">
671
+ <div className="text-fm-icon-warning text-sm font-medium">
650
672
  Connection Issue
651
673
  </div>
652
- <div className="text-xs text-yellow-300/70">
674
+ <div className="text-fm-icon-warning/70 text-xs">
653
675
  Check your internet connection and try again.
654
676
  </div>
655
677
  </div>
656
- <button className="text-yellow-400/60 hover:text-yellow-400">
678
+ <button className="text-fm-icon-warning/60 hover:text-fm-icon-warning">
657
679
  <div className="h-4 w-4">×</div>
658
680
  </button>
659
681
  </div>
660
- <div className="flex items-center gap-3 rounded-lg border border-amber-400/30 bg-amber-400/10 p-4 shadow-lg">
661
- <WarningIcon className="h-5 w-5 flex-shrink-0 text-amber-400" />
682
+ <div className="border-fm-icon-warning/30 bg-fm-icon-warning/10 flex items-center gap-3 rounded-lg border p-4 shadow-lg">
683
+ <WarningIcon className="text-fm-icon-warning h-5 w-5 flex-shrink-0" />
662
684
  <div className="flex-1">
663
- <div className="text-sm font-medium text-amber-200">
685
+ <div className="text-fm-icon-warning text-sm font-medium">
664
686
  Storage Almost Full
665
687
  </div>
666
- <div className="text-xs text-amber-300/70">
688
+ <div className="text-fm-icon-warning/70 text-xs">
667
689
  You're using 95% of your storage space.
668
690
  </div>
669
691
  </div>
670
- <button className="text-amber-400/60 hover:text-amber-400">
692
+ <button className="text-fm-icon-warning/60 hover:text-fm-icon-warning">
671
693
  <div className="h-4 w-4">×</div>
672
694
  </button>
673
695
  </div>
674
696
  </div>
675
- <div className="rounded-lg bg-black/40 p-4">
676
- <pre className="overflow-x-auto text-sm !text-green-300">
697
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
698
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
677
699
  {`// Toast notification with warning
678
700
  <div className="toast warning">
679
701
  <div className="flex items-center gap-3">
@@ -696,64 +718,64 @@ function ErrorAlert() {
696
718
 
697
719
  {/* Accessibility */}
698
720
  <div className="!space-y-8">
699
- <h2 className="text-center text-3xl font-bold !text-white">
721
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
700
722
  Accessibility Features
701
723
  </h2>
702
724
  <div className="grid grid-cols-1 gap-8 md:grid-cols-2">
703
- <div className="!space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
704
- <h3 className="text-lg font-semibold !text-green-300">
725
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
726
+ <h3 className="text-fm-icon-positive! text-lg font-semibold">
705
727
  ✅ Built-in Features
706
728
  </h3>
707
- <ul className="!space-y-2 text-sm !text-white/70">
708
- <li className="!text-white/70">
729
+ <ul className="text-fm-secondary! !space-y-2 text-sm">
730
+ <li className="text-fm-secondary!">
709
731
  Uses Radix UI AccessibleIcon wrapper
710
732
  </li>
711
- <li className="!text-white/70">
733
+ <li className="text-fm-secondary!">
712
734
  Provides screen reader label "Warning icon"
713
735
  </li>
714
- <li className="!text-white/70">
736
+ <li className="text-fm-secondary!">
715
737
  Supports keyboard navigation when interactive
716
738
  </li>
717
- <li className="!text-white/70">
739
+ <li className="text-fm-secondary!">
718
740
  Maintains proper color contrast ratios
719
741
  </li>
720
- <li className="!text-white/70">
742
+ <li className="text-fm-secondary!">
721
743
  Scales with user's font size preferences
722
744
  </li>
723
745
  </ul>
724
746
  </div>
725
747
 
726
- <div className="!space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
727
- <h3 className="text-lg font-semibold !text-yellow-300">
748
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
749
+ <h3 className="text-fm-icon-warning! text-lg font-semibold">
728
750
  💡 Best Practices
729
751
  </h3>
730
- <ul className="!space-y-2 text-sm text-white/70">
731
- <li className="!text-white/70">
752
+ <ul className="text-fm-secondary !space-y-2 text-sm">
753
+ <li className="text-fm-secondary!">
732
754
  Always provide descriptive warning messages
733
755
  </li>
734
- <li className="!text-white/70">
756
+ <li className="text-fm-secondary!">
735
757
  Use appropriate color combinations for severity
736
758
  </li>
737
- <li className="!text-white/70">
759
+ <li className="text-fm-secondary!">
738
760
  Include role="alert" for critical warnings
739
761
  </li>
740
- <li className="!text-white/70">
762
+ <li className="text-fm-secondary!">
741
763
  Provide alternative text for screen readers
742
764
  </li>
743
- <li className="!text-white/70">
765
+ <li className="text-fm-secondary!">
744
766
  Consider animation for attention-grabbing alerts
745
767
  </li>
746
768
  </ul>
747
769
  </div>
748
770
  </div>
749
771
 
750
- <div className="rounded-lg border border-white/10 bg-white/5 p-6">
751
- <h3 className="mb-4 text-lg font-semibold !text-amber-300">
772
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-6">
773
+ <h3 className="text-fm-icon-warning! mb-4 text-lg font-semibold">
752
774
  Proper ARIA Implementation
753
775
  </h3>
754
776
  <div className="grid grid-cols-1 gap-6 lg:grid-cols-2">
755
- <div className="rounded-lg bg-black/40 p-4">
756
- <pre className="overflow-x-auto text-sm !text-cyan-300">
777
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
778
+ <pre className="text-fm-icon-info! overflow-x-auto text-sm">
757
779
  {`// Alert banner with proper ARIA
758
780
  <div
759
781
  role="alert"
@@ -793,14 +815,14 @@ function ErrorAlert() {
793
815
  </pre>
794
816
  </div>
795
817
  <div className="!space-y-4">
796
- <p className="text-sm !text-white/70">
818
+ <p className="text-fm-secondary! text-sm">
797
819
  When using WarningIcon for alerts and warnings, always
798
820
  provide proper ARIA roles and descriptive text to ensure
799
821
  screen reader users understand the importance and
800
822
  context.
801
823
  </p>
802
- <div className="rounded-lg border border-yellow-500/20 bg-yellow-500/10 p-4">
803
- <div className="flex items-center gap-2 text-sm text-yellow-200">
824
+ <div className="border-fm-icon-warning/20 bg-fm-icon-warning/10 rounded-lg border p-4">
825
+ <div className="text-fm-icon-warning flex items-center gap-2 text-sm">
804
826
  <WarningIcon className="h-4 w-4" />
805
827
  <span>
806
828
  Critical warnings should use role="alert" for
@@ -815,46 +837,58 @@ function ErrorAlert() {
815
837
 
816
838
  {/* Related Icons */}
817
839
  <div className="!space-y-8">
818
- <h2 className="text-center text-3xl font-bold !text-white">
840
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
819
841
  Related Icons
820
842
  </h2>
821
843
  <div className="grid grid-cols-2 gap-6 md:grid-cols-4">
822
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
823
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-red-500/20">
824
- <span className="!text-2xl !text-white">❌</span>
844
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
845
+ <div className="bg-fm-icon-negative/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
846
+ <span className="text-fm-icon-active! !text-2xl">❌</span>
825
847
  </div>
826
848
  <div>
827
- <div className="font-medium text-white">ErrorIcon</div>
828
- <div className="text-xs text-white/60">Error states</div>
849
+ <div className="text-fm-icon-active font-medium">
850
+ ErrorIcon
851
+ </div>
852
+ <div className="text-fm-tertiary text-xs">
853
+ Error states
854
+ </div>
829
855
  </div>
830
856
  </div>
831
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
832
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-green-500/20">
833
- <span className="!text-2xl !text-white">✓</span>
857
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
858
+ <div className="bg-fm-icon-positive/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
859
+ <span className="text-fm-icon-active! !text-2xl">✓</span>
834
860
  </div>
835
861
  <div>
836
- <div className="font-medium text-white">SuccessIcon</div>
837
- <div className="text-xs text-white/60">
862
+ <div className="text-fm-icon-active font-medium">
863
+ SuccessIcon
864
+ </div>
865
+ <div className="text-fm-tertiary text-xs">
838
866
  Success states
839
867
  </div>
840
868
  </div>
841
869
  </div>
842
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
843
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-blue-500/20">
844
- <span className="!text-2xl !text-white">ℹ</span>
870
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
871
+ <div className="bg-fm-icon-info/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
872
+ <span className="text-fm-icon-active! !text-2xl">ℹ</span>
845
873
  </div>
846
874
  <div>
847
- <div className="font-medium text-white">InfoIcon</div>
848
- <div className="text-xs text-white/60">Information</div>
875
+ <div className="text-fm-icon-active font-medium">
876
+ InfoIcon
877
+ </div>
878
+ <div className="text-fm-tertiary text-xs">
879
+ Information
880
+ </div>
849
881
  </div>
850
882
  </div>
851
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
852
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-purple-500/20">
853
- <span className="!text-2xl !text-white">?</span>
883
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
884
+ <div className="bg-fm-secondary-500/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
885
+ <span className="text-fm-icon-active! !text-2xl">?</span>
854
886
  </div>
855
887
  <div>
856
- <div className="font-medium text-white">HelpIcon</div>
857
- <div className="text-xs text-white/60">
888
+ <div className="text-fm-icon-active font-medium">
889
+ HelpIcon
890
+ </div>
891
+ <div className="text-fm-tertiary text-xs">
858
892
  Help & support
859
893
  </div>
860
894
  </div>
@@ -864,14 +898,14 @@ function ErrorAlert() {
864
898
  </div>
865
899
 
866
900
  {/* Footer */}
867
- <div className="border-t border-white/10 bg-black/20 backdrop-blur-xl">
901
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary border-t backdrop-blur-xl">
868
902
  <div className="!mx-auto max-w-7xl px-6 py-8">
869
903
  <div className="!space-y-4 text-center">
870
- <p className="!text-white/60">
904
+ <p className="text-fm-tertiary!">
871
905
  WarningIcon is part of the Aural UI icon library, built with
872
906
  accessibility and user experience best practices in mind.
873
907
  </p>
874
- <p className="text-sm !text-white/40">
908
+ <p className="text-fm-placeholder! text-sm">
875
909
  All icons use Radix UI's AccessibleIcon for screen reader
876
910
  compatibility and follow WCAG guidelines for alerts and
877
911
  warnings.
@@ -929,20 +963,20 @@ const storyParameters = {
929
963
  backgrounds: {
930
964
  default: "dark",
931
965
  values: [
932
- { name: "dark", value: "#0a0a0a" },
933
- { name: "darker", value: "#000000" },
966
+ { name: "dark", value: "var(--color-fm-surface-primary)" },
967
+ { name: "darker", value: "var(--color-fm-neutral-0)" },
934
968
  ],
935
969
  },
936
970
  }
937
971
 
938
972
  export const Default: Story = {
939
973
  args: {
940
- className: "h-8 w-8 text-yellow-400",
974
+ className: "h-8 w-8 text-fm-icon-warning",
941
975
  withAccessibility: true,
942
976
  },
943
977
  parameters: storyParameters,
944
978
  render: (args) => (
945
- <div className="flex h-32 min-h-dvh items-center justify-center rounded-lg bg-gradient-to-br from-gray-900 to-gray-800">
979
+ <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">
946
980
  <WarningIcon {...args} />
947
981
  </div>
948
982
  ),
@@ -959,30 +993,30 @@ export const SizeVariations: Story = {
959
993
  },
960
994
  },
961
995
  render: () => (
962
- <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">
996
+ <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">
963
997
  <div className="text-center">
964
- <WarningIcon className="!mx-auto mb-2 h-3 w-3 text-yellow-400" />
965
- <span className="text-xs text-white/60">12px</span>
998
+ <WarningIcon className="text-fm-icon-warning !mx-auto mb-2 h-3 w-3" />
999
+ <span className="text-fm-tertiary text-xs">12px</span>
966
1000
  </div>
967
1001
  <div className="text-center">
968
- <WarningIcon className="!mx-auto mb-2 h-4 w-4 text-yellow-400" />
969
- <span className="text-xs text-white/60">16px</span>
1002
+ <WarningIcon className="text-fm-icon-warning !mx-auto mb-2 h-4 w-4" />
1003
+ <span className="text-fm-tertiary text-xs">16px</span>
970
1004
  </div>
971
1005
  <div className="text-center">
972
- <WarningIcon className="!mx-auto mb-2 h-5 w-5 text-yellow-400" />
973
- <span className="text-xs text-white/60">20px</span>
1006
+ <WarningIcon className="text-fm-icon-warning !mx-auto mb-2 h-5 w-5" />
1007
+ <span className="text-fm-tertiary text-xs">20px</span>
974
1008
  </div>
975
1009
  <div className="text-center">
976
- <WarningIcon className="!mx-auto mb-2 h-6 w-6 text-yellow-400" />
977
- <span className="text-xs text-white/60">24px</span>
1010
+ <WarningIcon className="text-fm-icon-warning !mx-auto mb-2 h-6 w-6" />
1011
+ <span className="text-fm-tertiary text-xs">24px</span>
978
1012
  </div>
979
1013
  <div className="text-center">
980
- <WarningIcon className="!mx-auto mb-2 h-8 w-8 text-yellow-400" />
981
- <span className="text-xs text-white/60">32px</span>
1014
+ <WarningIcon className="text-fm-icon-warning !mx-auto mb-2 h-8 w-8" />
1015
+ <span className="text-fm-tertiary text-xs">32px</span>
982
1016
  </div>
983
1017
  <div className="text-center">
984
- <WarningIcon className="!mx-auto mb-2 h-12 w-12 text-yellow-400" />
985
- <span className="text-xs text-white/60">48px</span>
1018
+ <WarningIcon className="text-fm-icon-warning !mx-auto mb-2 h-12 w-12" />
1019
+ <span className="text-fm-tertiary text-xs">48px</span>
986
1020
  </div>
987
1021
  </div>
988
1022
  ),
@@ -999,34 +1033,36 @@ export const ColorVariations: Story = {
999
1033
  },
1000
1034
  },
1001
1035
  render: () => (
1002
- <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">
1036
+ <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">
1003
1037
  <div className="text-center">
1004
- <div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border border-yellow-500/30 bg-yellow-500/20">
1005
- <WarningIcon className="h-8 w-8 text-yellow-400" />
1038
+ <div className="border-fm-icon-warning/30 bg-fm-icon-warning/20 !mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border">
1039
+ <WarningIcon className="text-fm-icon-warning h-8 w-8" />
1006
1040
  </div>
1007
- <div className="text-sm font-medium text-white">Warning</div>
1008
- <div className="text-xs text-yellow-400">text-yellow-400</div>
1041
+ <div className="text-fm-icon-active text-sm font-medium">Warning</div>
1042
+ <div className="text-fm-icon-warning text-xs">text-fm-icon-warning</div>
1009
1043
  </div>
1010
1044
  <div className="text-center">
1011
- <div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border border-amber-500/30 bg-amber-500/20">
1012
- <WarningIcon className="h-8 w-8 text-amber-400" />
1045
+ <div className="border-fm-icon-warning/30 bg-fm-icon-warning/20 !mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border">
1046
+ <WarningIcon className="text-fm-icon-warning h-8 w-8" />
1013
1047
  </div>
1014
- <div className="text-sm font-medium text-white">Caution</div>
1015
- <div className="text-xs text-amber-400">text-amber-400</div>
1048
+ <div className="text-fm-icon-active text-sm font-medium">Caution</div>
1049
+ <div className="text-fm-icon-warning text-xs">text-fm-icon-warning</div>
1016
1050
  </div>
1017
1051
  <div className="text-center">
1018
- <div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border border-orange-500/30 bg-orange-500/20">
1019
- <WarningIcon className="h-8 w-8 text-orange-400" />
1052
+ <div className="border-fm-icon-warning/30 bg-fm-icon-warning/20 !mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border">
1053
+ <WarningIcon className="text-fm-icon-warning h-8 w-8" />
1020
1054
  </div>
1021
- <div className="text-sm font-medium text-white">Alert</div>
1022
- <div className="text-xs text-orange-400">text-orange-400</div>
1055
+ <div className="text-fm-icon-active text-sm font-medium">Alert</div>
1056
+ <div className="text-fm-icon-warning text-xs">text-fm-icon-warning</div>
1023
1057
  </div>
1024
1058
  <div className="text-center">
1025
- <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">
1026
- <WarningIcon className="h-8 w-8 text-red-400" />
1059
+ <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">
1060
+ <WarningIcon className="text-fm-icon-negative h-8 w-8" />
1061
+ </div>
1062
+ <div className="text-fm-icon-active text-sm font-medium">Critical</div>
1063
+ <div className="text-fm-icon-negative text-xs">
1064
+ text-fm-icon-negative
1027
1065
  </div>
1028
- <div className="text-sm font-medium text-white">Critical</div>
1029
- <div className="text-xs text-red-400">text-red-400</div>
1030
1066
  </div>
1031
1067
  </div>
1032
1068
  ),
@@ -1043,22 +1079,24 @@ export const UsageExamples: Story = {
1043
1079
  },
1044
1080
  },
1045
1081
  render: () => (
1046
- <div className="min-h-dvh !space-y-8 rounded-lg bg-gradient-to-br from-gray-900 to-gray-800 p-8">
1082
+ <div className="from-fm-surface-primary to-fm-surface-secondary min-h-dvh !space-y-8 rounded-lg bg-linear-to-br p-8">
1047
1083
  {/* Form Validation */}
1048
1084
  <div className="!space-y-2">
1049
- <h3 className="text-sm font-medium text-white">Form Validation</h3>
1050
- <div className="rounded-lg border border-white/10 bg-white/5 p-6">
1085
+ <h3 className="text-fm-icon-active text-sm font-medium">
1086
+ Form Validation
1087
+ </h3>
1088
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-6">
1051
1089
  <div className="!space-y-4">
1052
1090
  <div>
1053
- <label className="mb-2 block text-sm font-medium text-white">
1091
+ <label className="text-fm-icon-active mb-2 block text-sm font-medium">
1054
1092
  Email Address
1055
1093
  </label>
1056
1094
  <input
1057
1095
  type="email"
1058
- className="w-full rounded-lg border border-red-400/50 bg-white/10 p-3 text-white placeholder-white/50"
1096
+ className="border-fm-icon-negative/50 bg-fm-surface-secondary text-fm-icon-active w-full rounded-lg border p-3 placeholder-white/50"
1059
1097
  placeholder="Enter your email"
1060
1098
  />
1061
- <div className="mt-2 flex items-center gap-2 text-red-400">
1099
+ <div className="text-fm-icon-negative mt-2 flex items-center gap-2">
1062
1100
  <WarningIcon className="h-4 w-4" />
1063
1101
  <span className="text-sm">
1064
1102
  Please enter a valid email address
@@ -1071,14 +1109,16 @@ export const UsageExamples: Story = {
1071
1109
 
1072
1110
  {/* Alert Banner */}
1073
1111
  <div className="!space-y-2">
1074
- <h3 className="text-sm font-medium text-white">Alert Banner</h3>
1075
- <div className="flex items-center gap-3 rounded-lg border border-yellow-400/30 bg-yellow-400/10 p-4">
1076
- <WarningIcon className="h-6 w-6 flex-shrink-0 text-yellow-400" />
1112
+ <h3 className="text-fm-icon-active text-sm font-medium">
1113
+ Alert Banner
1114
+ </h3>
1115
+ <div className="border-fm-icon-warning/30 bg-fm-icon-warning/10 flex items-center gap-3 rounded-lg border p-4">
1116
+ <WarningIcon className="text-fm-icon-warning h-6 w-6 flex-shrink-0" />
1077
1117
  <div>
1078
- <div className="font-medium text-yellow-200">
1118
+ <div className="text-fm-icon-warning font-medium">
1079
1119
  System Maintenance
1080
1120
  </div>
1081
- <div className="text-sm text-yellow-300/70">
1121
+ <div className="text-fm-icon-warning/70 text-sm">
1082
1122
  Scheduled maintenance will occur tonight from 2-4 AM EST.
1083
1123
  </div>
1084
1124
  </div>
@@ -1101,12 +1141,12 @@ export const Playground: Story = {
1101
1141
  args: {
1102
1142
  width: 24,
1103
1143
  height: 24,
1104
- className: "text-yellow-400",
1144
+ className: "text-fm-icon-warning",
1105
1145
  strokeLinecap: "square",
1106
1146
  },
1107
1147
  render: (args) => (
1108
- <div className="flex h-64 min-h-dvh items-center justify-center rounded-lg bg-gradient-to-br from-gray-900 to-gray-800">
1109
- <div className="rounded-lg border border-white/10 bg-white/5 p-8">
1148
+ <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">
1149
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-8">
1110
1150
  <WarningIcon {...args} />
1111
1151
  </div>
1112
1152
  </div>