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 EmailIcon> = {
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 EmailIcon> = {
40
40
  background: transparent !important;
41
41
  }
42
42
  body {
43
- background: #0a0a0a !important;
43
+ background: var(--color-fm-surface-primary) !important;
44
44
  }
45
45
  #storybook-docs {
46
- background: #0a0a0a !important;
46
+ background: var(--color-fm-surface-primary) !important;
47
47
  }
48
48
  .sbdocs-preview {
49
49
  background: transparent !important;
50
50
  border: none !important;
51
51
  }
52
52
  .sbdocs-h1, .sbdocs-h2, .sbdocs-h3, .sbdocs-h4, .sbdocs-h5, .sbdocs-h6 {
53
- color: white !important;
53
+ color: var(--color-fm-icon-active) !important;
54
54
  }
55
55
  .sbdocs-p, .sbdocs-li {
56
- color: rgba(255, 255, 255, 0.7) !important;
56
+ color: var(--color-fm-secondary) !important;
57
57
  }
58
58
  .sbdocs-code {
59
- background: rgba(255, 255, 255, 0.1) !important;
60
- color: rgba(168, 85, 247, 1) !important;
61
- border: 1px solid rgba(255, 255, 255, 0.1) !important;
59
+ background: var(--color-fm-surface-secondary) !important;
60
+ color: var(--color-fm-secondary-500) !important;
61
+ border: 1px solid var(--color-fm-divider-secondary) !important;
62
62
  }
63
63
  .sbdocs-pre {
64
- background: rgba(0, 0, 0, 0.4) !important;
65
- border: 1px solid rgba(255, 255, 255, 0.1) !important;
64
+ background: var(--color-fm-surface-secondary) !important;
65
+ border: 1px solid var(--color-fm-divider-secondary) !important;
66
66
  }
67
67
  .sbdocs-table {
68
- background: rgba(255, 255, 255, 0.05) !important;
69
- border: 1px solid rgba(255, 255, 255, 0.1) !important;
68
+ background: var(--color-fm-surface-secondary) !important;
69
+ border: 1px solid var(--color-fm-divider-secondary) !important;
70
70
  }
71
71
  .sbdocs-table th {
72
- background: rgba(255, 255, 255, 0.05) !important;
73
- color: white !important;
74
- border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
72
+ background: var(--color-fm-surface-secondary) !important;
73
+ color: var(--color-fm-icon-active) !important;
74
+ border-bottom: 1px solid var(--color-fm-divider-secondary) !important;
75
75
  }
76
76
  .sbdocs-table td {
77
- color: rgba(255, 255, 255, 0.7) !important;
78
- border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
77
+ color: var(--color-fm-secondary) !important;
78
+ border-bottom: 1px solid var(--color-fm-divider-tertiary) !important;
79
79
  }
80
80
  `}
81
81
  </style>
82
82
 
83
- <div className="min-h-screen bg-gradient-to-br from-gray-900 via-blue-900/20 to-gray-900">
83
+ <div className="from-fm-surface-primary via-fm-icon-info/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-blue-500/10 via-cyan-500/10 to-blue-500/10" />
85
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary relative overflow-hidden border-b backdrop-blur-xl">
86
+ <div className="from-fm-icon-info/10 via-fm-icon-info/10 to-fm-icon-info/10 absolute inset-0 bg-linear-to-r" />
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-blue-500/30 bg-gradient-to-br from-blue-500/20 to-cyan-500/20">
90
- <EmailIcon className="h-12 w-12 text-blue-400" />
89
+ <div className="border-fm-icon-info/30 from-fm-icon-info/20 to-fm-icon-info/20 !mx-auto flex h-24 w-24 items-center justify-center rounded-2xl border bg-linear-to-br">
90
+ <EmailIcon className="text-fm-icon-info h-12 w-12" />
91
91
  </div>
92
92
  <h1 className="!text-fm-primary text-5xl font-bold">
93
93
  EmailIcon
94
94
  </h1>
95
- <p className="!mx-auto max-w-3xl text-xl leading-relaxed !text-white/70">
95
+ <p className="text-fm-secondary! !mx-auto max-w-3xl text-xl leading-relaxed">
96
96
  A versatile mail envelope icon for email functionality,
97
97
  messaging systems, and communication features. Built with
98
98
  accessibility in mind using Radix UI's AccessibleIcon
@@ -102,28 +102,28 @@ const meta: Meta<typeof EmailIcon> = {
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-blue-300">
105
+ <div className="text-fm-icon-info text-3xl font-bold">
106
106
  Accessible
107
107
  </div>
108
- <div className="text-sm text-white/60">
108
+ <div className="text-fm-tertiary text-sm">
109
109
  Screen reader friendly
110
110
  </div>
111
111
  </div>
112
- <div className="h-8 w-px bg-white/20" />
112
+ <div className="bg-fm-divider-primary h-8 w-px" />
113
113
  <div className="text-center">
114
- <div className="text-3xl font-bold text-cyan-300">
114
+ <div className="text-fm-icon-info text-3xl font-bold">
115
115
  Scalable
116
116
  </div>
117
- <div className="text-sm text-white/60">
117
+ <div className="text-fm-tertiary text-sm">
118
118
  Any size needed
119
119
  </div>
120
120
  </div>
121
- <div className="h-8 w-px bg-white/20" />
121
+ <div className="bg-fm-divider-primary h-8 w-px" />
122
122
  <div className="text-center">
123
- <div className="text-3xl font-bold text-purple-300">
123
+ <div className="text-fm-secondary-600 text-3xl font-bold">
124
124
  Flexible
125
125
  </div>
126
- <div className="text-sm text-white/60">
126
+ <div className="text-fm-tertiary text-sm">
127
127
  Customizable styling
128
128
  </div>
129
129
  </div>
@@ -136,16 +136,16 @@ const meta: Meta<typeof EmailIcon> = {
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-blue-300">
144
+ <h3 className="text-fm-icon-info! 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 { EmailIcon } from "@icons/mail-icon"
150
150
 
151
151
  function ContactForm() {
@@ -161,13 +161,13 @@ function ContactForm() {
161
161
  </div>
162
162
 
163
163
  <div className="!space-y-4">
164
- <h3 className="text-xl font-semibold !text-blue-300">
164
+ <h3 className="text-fm-icon-info! text-xl font-semibold">
165
165
  Live Preview
166
166
  </h3>
167
- <div className="flex h-32 items-center justify-center rounded-lg border border-white/10 bg-white/5">
168
- <button className="flex items-center gap-3 rounded-lg border border-blue-500/20 bg-blue-500/10 px-4 py-2 transition-colors hover:bg-blue-500/20">
169
- <EmailIcon className="h-5 w-5 text-blue-400" />
170
- <span className="text-white">Send Email</span>
167
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary flex h-32 items-center justify-center rounded-lg border">
168
+ <button className="border-fm-icon-info/20 bg-fm-icon-info/10 hover:bg-fm-icon-info/20 flex items-center gap-3 rounded-lg border px-4 py-2 transition-colors">
169
+ <EmailIcon className="text-fm-icon-info h-5 w-5" />
170
+ <span className="text-fm-icon-active">Send Email</span>
171
171
  </button>
172
172
  </div>
173
173
  </div>
@@ -176,94 +176,102 @@ function ContactForm() {
176
176
 
177
177
  {/* Props Documentation */}
178
178
  <div className="!space-y-8">
179
- <h2 className="text-center text-3xl font-bold !text-white">
179
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
180
180
  Props & Configuration
181
181
  </h2>
182
182
 
183
- <div className="overflow-hidden rounded-lg border border-white/10 bg-white/5">
184
- <div className="bg-white/5 p-4">
185
- <h3 className="text-xl font-semibold !text-white">Props</h3>
183
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary overflow-hidden rounded-lg border">
184
+ <div className="bg-fm-surface-secondary p-4">
185
+ <h3 className="text-fm-icon-active! text-xl font-semibold">
186
+ Props
187
+ </h3>
186
188
  </div>
187
189
  <table className="!my-0 w-full">
188
- <thead className="bg-white/5">
189
- <tr className="border-b border-white/10">
190
- <th className="px-6 py-4 text-left text-sm font-semibold !text-white">
190
+ <thead className="bg-fm-surface-secondary">
191
+ <tr className="border-fm-divider-secondary border-b">
192
+ <th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
191
193
  Prop
192
194
  </th>
193
- <th className="px-6 py-4 text-left text-sm font-semibold !text-white">
195
+ <th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
194
196
  Type
195
197
  </th>
196
- <th className="px-6 py-4 text-left text-sm font-semibold !text-white">
198
+ <th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
197
199
  Default
198
200
  </th>
199
- <th className="px-6 py-4 text-left text-sm font-semibold !text-white">
201
+ <th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
200
202
  Description
201
203
  </th>
202
204
  </tr>
203
205
  </thead>
204
206
  <tbody>
205
207
  {" "}
206
- <tr className="!bg-black/10">
207
- <td className="px-6 py-4 font-mono text-sm !text-blue-300">
208
+ <tr className="bg-fm-surface-secondary!">
209
+ <td className="text-fm-icon-info! px-6 py-4 font-mono text-sm">
208
210
  withAccessibility
209
211
  </td>
210
- <td className="px-6 py-4 text-sm !text-white/70">
212
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
211
213
  boolean
212
214
  </td>
213
- <td className="px-6 py-4 text-sm !text-white/50">
215
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
214
216
  true
215
217
  </td>
216
- <td className="px-6 py-4 text-sm !text-white/70">
218
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
217
219
  Whether to wrap the icon with accessibility feature
218
220
  </td>
219
221
  </tr>
220
- <tr className="border-b border-white/5 !bg-black/10">
221
- <td className="px-6 py-4 font-mono text-sm !text-blue-300">
222
+ <tr className="border-fm-divider-tertiary bg-fm-surface-secondary! border-b">
223
+ <td className="text-fm-icon-info! px-6 py-4 font-mono text-sm">
222
224
  height
223
225
  </td>
224
- <td className="px-6 py-4 text-sm !text-white/70">
226
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
225
227
  number | string
226
228
  </td>
227
- <td className="px-6 py-4 text-sm !text-white/50">21</td>
228
- <td className="px-6 py-4 text-sm !text-white/70">
229
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
230
+ 21
231
+ </td>
232
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
229
233
  Height of the icon in pixels
230
234
  </td>
231
235
  </tr>
232
- <tr className="border-b border-white/5">
233
- <td className="px-6 py-4 font-mono text-sm !text-blue-300">
236
+ <tr className="border-fm-divider-tertiary border-b">
237
+ <td className="text-fm-icon-info! px-6 py-4 font-mono text-sm">
234
238
  fill
235
239
  </td>
236
- <td className="px-6 py-4 text-sm !text-white/70">
240
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
237
241
  string
238
242
  </td>
239
- <td className="px-6 py-4 text-sm !text-white/50">
243
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
240
244
  currentColor
241
245
  </td>
242
- <td className="px-6 py-4 text-sm !text-white/70">
246
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
243
247
  Fill color of the icon
244
248
  </td>
245
249
  </tr>
246
- <tr className="border-b border-white/5 !bg-black/10">
247
- <td className="px-6 py-4 font-mono text-sm !text-blue-300">
250
+ <tr className="border-fm-divider-tertiary bg-fm-surface-secondary! border-b">
251
+ <td className="text-fm-icon-info! px-6 py-4 font-mono text-sm">
248
252
  className
249
253
  </td>
250
- <td className="px-6 py-4 text-sm !text-white/70">
254
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
251
255
  string
252
256
  </td>
253
- <td className="px-6 py-4 text-sm !text-white/50">-</td>
254
- <td className="px-6 py-4 text-sm !text-white/70">
257
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
258
+ -
259
+ </td>
260
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
255
261
  CSS classes for styling
256
262
  </td>
257
263
  </tr>
258
- <tr className="!bg-black/10">
259
- <td className="px-6 py-4 font-mono text-sm !text-blue-300">
264
+ <tr className="bg-fm-surface-secondary!">
265
+ <td className="text-fm-icon-info! px-6 py-4 font-mono text-sm">
260
266
  ...svgProps
261
267
  </td>
262
- <td className="px-6 py-4 text-sm !text-white/70">
268
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
263
269
  SVGProps
264
270
  </td>
265
- <td className="px-6 py-4 text-sm !text-white/50">-</td>
266
- <td className="px-6 py-4 text-sm !text-white/70">
271
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
272
+ -
273
+ </td>
274
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
267
275
  All standard SVG element props
268
276
  </td>
269
277
  </tr>
@@ -274,50 +282,62 @@ function ContactForm() {
274
282
 
275
283
  {/* Size Variations */}
276
284
  <div className="!space-y-8">
277
- <h2 className="text-center text-3xl font-bold !text-white">
285
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
278
286
  Size Variations
279
287
  </h2>
280
- <div className="rounded-lg border border-white/10 bg-white/5 p-8">
288
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-8">
281
289
  <div className="!space-y-6">
282
290
  <div className="grid grid-cols-1 gap-8 md:grid-cols-2">
283
291
  <div className="!space-y-4">
284
- <h3 className="text-lg font-semibold !text-blue-300">
292
+ <h3 className="text-fm-icon-info! text-lg font-semibold">
285
293
  Standard Sizes
286
294
  </h3>
287
- <div className="flex items-end gap-6 rounded-lg bg-black/20 p-6">
295
+ <div className="bg-fm-surface-secondary flex items-end gap-6 rounded-lg p-6">
288
296
  <div className="text-center">
289
- <EmailIcon className="!mx-auto mb-2 h-3 w-3 text-blue-400" />
290
- <span className="text-xs text-white/60">12px</span>
297
+ <EmailIcon className="text-fm-icon-info !mx-auto mb-2 h-3 w-3" />
298
+ <span className="text-fm-tertiary text-xs">
299
+ 12px
300
+ </span>
291
301
  </div>
292
302
  <div className="text-center">
293
- <EmailIcon className="!mx-auto mb-2 h-4 w-4 text-blue-400" />
294
- <span className="text-xs text-white/60">16px</span>
303
+ <EmailIcon className="text-fm-icon-info !mx-auto mb-2 h-4 w-4" />
304
+ <span className="text-fm-tertiary text-xs">
305
+ 16px
306
+ </span>
295
307
  </div>
296
308
  <div className="text-center">
297
- <EmailIcon className="!mx-auto mb-2 h-5 w-5 text-blue-400" />
298
- <span className="text-xs text-white/60">20px</span>
309
+ <EmailIcon className="text-fm-icon-info !mx-auto mb-2 h-5 w-5" />
310
+ <span className="text-fm-tertiary text-xs">
311
+ 20px
312
+ </span>
299
313
  </div>
300
314
  <div className="text-center">
301
- <EmailIcon className="!mx-auto mb-2 h-6 w-6 text-blue-400" />
302
- <span className="text-xs text-white/60">24px</span>
315
+ <EmailIcon className="text-fm-icon-info !mx-auto mb-2 h-6 w-6" />
316
+ <span className="text-fm-tertiary text-xs">
317
+ 24px
318
+ </span>
303
319
  </div>
304
320
  <div className="text-center">
305
- <EmailIcon className="!mx-auto mb-2 h-8 w-8 text-blue-400" />
306
- <span className="text-xs text-white/60">32px</span>
321
+ <EmailIcon className="text-fm-icon-info !mx-auto mb-2 h-8 w-8" />
322
+ <span className="text-fm-tertiary text-xs">
323
+ 32px
324
+ </span>
307
325
  </div>
308
326
  <div className="text-center">
309
- <EmailIcon className="!mx-auto mb-2 h-12 w-12 text-blue-400" />
310
- <span className="text-xs text-white/60">48px</span>
327
+ <EmailIcon className="text-fm-icon-info !mx-auto mb-2 h-12 w-12" />
328
+ <span className="text-fm-tertiary text-xs">
329
+ 48px
330
+ </span>
311
331
  </div>
312
332
  </div>
313
333
  </div>
314
334
 
315
335
  <div className="!space-y-4">
316
- <h3 className="text-lg font-semibold !text-blue-300">
336
+ <h3 className="text-fm-icon-info! text-lg font-semibold">
317
337
  Code Example
318
338
  </h3>
319
- <div className="rounded-lg bg-black/40 p-4">
320
- <pre className="overflow-x-auto text-sm !text-blue-300">
339
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
340
+ <pre className="text-fm-icon-info! overflow-x-auto text-sm">
321
341
  {`// Small (16px)
322
342
  <EmailIcon className="h-4 w-4" />
323
343
 
@@ -339,56 +359,56 @@ function ContactForm() {
339
359
 
340
360
  {/* Color Variations */}
341
361
  <div className="!space-y-8">
342
- <h2 className="text-center text-3xl font-bold !text-white">
362
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
343
363
  Color Variations
344
364
  </h2>
345
365
  <div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
346
366
  <div className="!space-y-4">
347
- <h3 className="text-lg font-semibold !text-blue-300">
367
+ <h3 className="text-fm-icon-info! text-lg font-semibold">
348
368
  Semantic Colors
349
369
  </h3>
350
- <div className="!space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
370
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
351
371
  <div className="flex items-center gap-4">
352
- <EmailIcon className="h-6 w-6 text-blue-400" />
372
+ <EmailIcon className="text-fm-icon-info h-6 w-6" />
353
373
  <div>
354
- <div className="text-sm font-medium text-white">
374
+ <div className="text-fm-icon-active text-sm font-medium">
355
375
  Primary
356
376
  </div>
357
- <div className="text-xs text-white/60">
358
- text-blue-400
377
+ <div className="text-fm-tertiary text-xs">
378
+ text-fm-icon-info
359
379
  </div>
360
380
  </div>
361
381
  </div>
362
382
  <div className="flex items-center gap-4">
363
- <EmailIcon className="h-6 w-6 text-green-400" />
383
+ <EmailIcon className="text-fm-icon-positive h-6 w-6" />
364
384
  <div>
365
- <div className="text-sm font-medium text-white">
385
+ <div className="text-fm-icon-active text-sm font-medium">
366
386
  Success
367
387
  </div>
368
- <div className="text-xs text-white/60">
369
- text-green-400
388
+ <div className="text-fm-tertiary text-xs">
389
+ text-fm-icon-positive
370
390
  </div>
371
391
  </div>
372
392
  </div>
373
393
  <div className="flex items-center gap-4">
374
- <EmailIcon className="h-6 w-6 text-yellow-400" />
394
+ <EmailIcon className="text-fm-icon-warning h-6 w-6" />
375
395
  <div>
376
- <div className="text-sm font-medium text-white">
396
+ <div className="text-fm-icon-active text-sm font-medium">
377
397
  Warning
378
398
  </div>
379
- <div className="text-xs text-white/60">
380
- text-yellow-400
399
+ <div className="text-fm-tertiary text-xs">
400
+ text-fm-icon-warning
381
401
  </div>
382
402
  </div>
383
403
  </div>
384
404
  <div className="flex items-center gap-4">
385
- <EmailIcon className="h-6 w-6 text-gray-400" />
405
+ <EmailIcon className="text-fm-placeholder h-6 w-6" />
386
406
  <div>
387
- <div className="text-sm font-medium text-white">
407
+ <div className="text-fm-icon-active text-sm font-medium">
388
408
  Neutral
389
409
  </div>
390
- <div className="text-xs text-white/60">
391
- text-gray-400
410
+ <div className="text-fm-tertiary text-xs">
411
+ text-fm-placeholder
392
412
  </div>
393
413
  </div>
394
414
  </div>
@@ -396,11 +416,11 @@ function ContactForm() {
396
416
  </div>
397
417
 
398
418
  <div className="!space-y-4">
399
- <h3 className="text-lg font-semibold !text-blue-300">
419
+ <h3 className="text-fm-icon-info! text-lg font-semibold">
400
420
  Custom Colors
401
421
  </h3>
402
- <div className="rounded-lg bg-black/40 p-4">
403
- <pre className="overflow-x-auto text-sm !text-green-300">
422
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
423
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
404
424
  {`// Using Tailwind classes
405
425
  <EmailIcon className="h-6 w-6 text-blue-400" />
406
426
  <EmailIcon className="h-6 w-6 text-green-500" />
@@ -425,29 +445,29 @@ function ContactForm() {
425
445
 
426
446
  {/* Usage Examples */}
427
447
  <div className="!space-y-8">
428
- <h2 className="text-center text-3xl font-bold !text-white">
448
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
429
449
  Usage Examples
430
450
  </h2>
431
451
 
432
452
  <div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
433
453
  {/* Email Button */}
434
454
  <div className="!space-y-4">
435
- <h3 className="text-lg font-semibold !text-blue-300">
455
+ <h3 className="text-fm-icon-info! text-lg font-semibold">
436
456
  Email Actions
437
457
  </h3>
438
458
  <div className="!space-y-4">
439
459
  <div className="flex gap-4">
440
- <button className="flex items-center gap-2 rounded-lg border border-blue-500/30 bg-blue-500/20 px-4 py-2 text-blue-200 transition-colors hover:bg-blue-500/30">
460
+ <button className="border-fm-icon-info/30 bg-fm-icon-info/20 text-fm-icon-info hover:bg-fm-icon-info/30 flex items-center gap-2 rounded-lg border px-4 py-2 transition-colors">
441
461
  <EmailIcon className="h-4 w-4" />
442
462
  Send Email
443
463
  </button>
444
- <button className="flex items-center gap-2 rounded-lg border border-green-500/30 bg-green-500/20 px-3 py-2 text-green-200 transition-colors hover:bg-green-500/30">
464
+ <button className="border-fm-icon-positive/30 bg-fm-icon-positive/20 text-fm-icon-positive hover:bg-fm-icon-positive/30 flex items-center gap-2 rounded-lg border px-3 py-2 transition-colors">
445
465
  <EmailIcon className="h-4 w-4" />
446
466
  Compose
447
467
  </button>
448
468
  </div>
449
- <div className="rounded-lg bg-black/40 p-4">
450
- <pre className="overflow-x-auto text-sm !text-green-300">
469
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
470
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
451
471
  {`// Primary email button
452
472
  <button className="flex items-center gap-2 bg-blue-500/20 border border-blue-500/30 px-4 py-2 rounded-lg">
453
473
  <EmailIcon className="h-4 w-4" />
@@ -466,32 +486,32 @@ function ContactForm() {
466
486
 
467
487
  {/* Contact Card */}
468
488
  <div className="!space-y-4">
469
- <h3 className="text-lg font-semibold !text-blue-300">
489
+ <h3 className="text-fm-icon-info! text-lg font-semibold">
470
490
  Contact Information
471
491
  </h3>
472
492
  <div className="!space-y-4">
473
- <div className="rounded-lg border border-white/10 bg-white/5 p-4">
493
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-4">
474
494
  <div className="flex items-center justify-between">
475
495
  <div className="flex items-center gap-3">
476
- <div className="flex h-10 w-10 items-center justify-center rounded-lg bg-blue-500/20">
477
- <EmailIcon className="h-5 w-5 text-blue-400" />
496
+ <div className="bg-fm-icon-info/20 flex h-10 w-10 items-center justify-center rounded-lg">
497
+ <EmailIcon className="text-fm-icon-info h-5 w-5" />
478
498
  </div>
479
499
  <div>
480
- <div className="text-sm font-medium text-white">
500
+ <div className="text-fm-icon-active text-sm font-medium">
481
501
  john@example.com
482
502
  </div>
483
- <div className="text-xs text-white/60">
503
+ <div className="text-fm-tertiary text-xs">
484
504
  Primary email address
485
505
  </div>
486
506
  </div>
487
507
  </div>
488
- <button className="rounded-lg p-2 text-gray-400 transition-colors hover:bg-blue-500/20 hover:text-blue-400">
508
+ <button className="text-fm-placeholder hover:bg-fm-icon-info/20 hover:text-fm-icon-info rounded-lg p-2 transition-colors">
489
509
  <EmailIcon className="h-4 w-4" />
490
510
  </button>
491
511
  </div>
492
512
  </div>
493
- <div className="rounded-lg bg-black/40 p-4">
494
- <pre className="overflow-x-auto text-sm !text-green-300">
513
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
514
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
495
515
  {`<div className="flex items-center justify-between">
496
516
  <div className="flex items-center gap-3">
497
517
  <div className="flex h-10 w-10 items-center justify-center rounded-lg bg-blue-500/20">
@@ -513,37 +533,37 @@ function ContactForm() {
513
533
 
514
534
  {/* Newsletter Card */}
515
535
  <div className="!space-y-4">
516
- <h3 className="text-lg font-semibold !text-blue-300">
536
+ <h3 className="text-fm-icon-info! text-lg font-semibold">
517
537
  Newsletter Signup
518
538
  </h3>
519
539
  <div className="!space-y-4">
520
- <div className="rounded-lg border border-blue-500/20 bg-blue-500/5 p-6">
540
+ <div className="border-fm-icon-info/20 bg-fm-icon-info/5 rounded-lg border p-6">
521
541
  <div className="flex items-start gap-4">
522
- <div className="flex h-12 w-12 items-center justify-center rounded-lg bg-blue-500/20">
523
- <EmailIcon className="h-6 w-6 text-blue-400" />
542
+ <div className="bg-fm-icon-info/20 flex h-12 w-12 items-center justify-center rounded-lg">
543
+ <EmailIcon className="text-fm-icon-info h-6 w-6" />
524
544
  </div>
525
545
  <div className="flex-1">
526
- <h4 className="mb-2 font-medium !text-white">
546
+ <h4 className="text-fm-icon-active! mb-2 font-medium">
527
547
  Stay Updated
528
548
  </h4>
529
- <p className="mb-4 text-sm !text-white/70">
549
+ <p className="text-fm-secondary! mb-4 text-sm">
530
550
  Subscribe to our newsletter for the latest updates
531
551
  and insights.
532
552
  </p>
533
553
  <div className="flex gap-3">
534
554
  <input
535
- className="flex-1 rounded-lg border border-white/20 bg-white/5 px-3 py-2 text-sm text-white placeholder-white/50"
555
+ className="border-fm-divider-primary bg-fm-surface-secondary text-fm-icon-active flex-1 rounded-lg border px-3 py-2 text-sm placeholder-white/50"
536
556
  placeholder="Enter your email"
537
557
  />
538
- <button className="rounded-lg border border-blue-500/30 bg-blue-500/20 px-4 py-2 text-sm text-blue-200">
558
+ <button className="border-fm-icon-info/30 bg-fm-icon-info/20 text-fm-icon-info rounded-lg border px-4 py-2 text-sm">
539
559
  Subscribe
540
560
  </button>
541
561
  </div>
542
562
  </div>
543
563
  </div>
544
564
  </div>
545
- <div className="rounded-lg bg-black/40 p-4">
546
- <pre className="overflow-x-auto text-sm !text-green-300">
565
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
566
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
547
567
  {`<div className="border border-blue-500/20 bg-blue-500/5 p-6 rounded-lg">
548
568
  <div className="flex items-start gap-4">
549
569
  <div className="flex h-12 w-12 items-center justify-center rounded-lg bg-blue-500/20">
@@ -565,28 +585,30 @@ function ContactForm() {
565
585
 
566
586
  {/* Email Status */}
567
587
  <div className="!space-y-4">
568
- <h3 className="text-lg font-semibold !text-blue-300">
588
+ <h3 className="text-fm-icon-info! text-lg font-semibold">
569
589
  Email Status
570
590
  </h3>
571
591
  <div className="!space-y-4">
572
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4">
592
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4">
573
593
  <div className="flex items-center gap-3 rounded px-3 py-2 text-sm">
574
- <EmailIcon className="h-4 w-4 text-blue-400" />
575
- <span className="text-white">Inbox (5)</span>
576
- <span className="ml-auto h-2 w-2 rounded-full bg-blue-400"></span>
594
+ <EmailIcon className="text-fm-icon-info h-4 w-4" />
595
+ <span className="text-fm-icon-active">Inbox (5)</span>
596
+ <span className="bg-fm-icon-info ml-auto h-2 w-2 rounded-full"></span>
577
597
  </div>
578
598
  <div className="flex items-center gap-3 rounded px-3 py-2 text-sm">
579
- <EmailIcon className="h-4 w-4 text-green-400" />
580
- <span className="text-white">Sent</span>
599
+ <EmailIcon className="text-fm-icon-positive h-4 w-4" />
600
+ <span className="text-fm-icon-active">Sent</span>
581
601
  </div>
582
602
  <div className="flex items-center gap-3 rounded px-3 py-2 text-sm">
583
- <EmailIcon className="h-4 w-4 text-yellow-400" />
584
- <span className="text-white">Drafts (2)</span>
585
- <span className="ml-auto h-2 w-2 rounded-full bg-yellow-400"></span>
603
+ <EmailIcon className="text-fm-icon-warning h-4 w-4" />
604
+ <span className="text-fm-icon-active">
605
+ Drafts (2)
606
+ </span>
607
+ <span className="bg-fm-icon-warning ml-auto h-2 w-2 rounded-full"></span>
586
608
  </div>
587
609
  </div>
588
- <div className="rounded-lg bg-black/40 p-4">
589
- <pre className="overflow-x-auto text-sm !text-green-300">
610
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
611
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
590
612
  {`// Email status indicators
591
613
  <div className="flex items-center gap-3 px-3 py-2 text-sm rounded">
592
614
  <EmailIcon className="h-4 w-4 text-blue-400" />
@@ -602,64 +624,64 @@ function ContactForm() {
602
624
 
603
625
  {/* Accessibility */}
604
626
  <div className="!space-y-8">
605
- <h2 className="text-center text-3xl font-bold !text-white">
627
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
606
628
  Accessibility Features
607
629
  </h2>
608
630
  <div className="grid grid-cols-1 gap-8 md:grid-cols-2">
609
- <div className="!space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
610
- <h3 className="text-lg font-semibold !text-green-300">
631
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
632
+ <h3 className="text-fm-icon-positive! text-lg font-semibold">
611
633
  ✅ Built-in Features
612
634
  </h3>
613
- <ul className="!space-y-2 text-sm !text-white/70">
614
- <li className="!text-white/70">
635
+ <ul className="text-fm-secondary! !space-y-2 text-sm">
636
+ <li className="text-fm-secondary!">
615
637
  Uses Radix UI AccessibleIcon wrapper
616
638
  </li>
617
- <li className="!text-white/70">
639
+ <li className="text-fm-secondary!">
618
640
  Provides screen reader label "Email icon"
619
641
  </li>
620
- <li className="!text-white/70">
642
+ <li className="text-fm-secondary!">
621
643
  Supports keyboard navigation when interactive
622
644
  </li>
623
- <li className="!text-white/70">
645
+ <li className="text-fm-secondary!">
624
646
  Maintains proper color contrast ratios
625
647
  </li>
626
- <li className="!text-white/70">
648
+ <li className="text-fm-secondary!">
627
649
  Scales with user's font size preferences
628
650
  </li>
629
651
  </ul>
630
652
  </div>
631
653
 
632
- <div className="!space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
633
- <h3 className="text-lg font-semibold !text-blue-300">
654
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
655
+ <h3 className="text-fm-icon-info! text-lg font-semibold">
634
656
  💡 Best Practices
635
657
  </h3>
636
- <ul className="!space-y-2 text-sm text-white/70">
637
- <li className="!text-white/70">
658
+ <ul className="text-fm-secondary !space-y-2 text-sm">
659
+ <li className="text-fm-secondary!">
638
660
  Always pair with descriptive text for actions
639
661
  </li>
640
- <li className="!text-white/70">
662
+ <li className="text-fm-secondary!">
641
663
  Use consistent colors for email states
642
664
  </li>
643
- <li className="!text-white/70">
665
+ <li className="text-fm-secondary!">
644
666
  Ensure sufficient color contrast on backgrounds
645
667
  </li>
646
- <li className="!text-white/70">
668
+ <li className="text-fm-secondary!">
647
669
  Add focus states for interactive elements
648
670
  </li>
649
- <li className="!text-white/70">
671
+ <li className="text-fm-secondary!">
650
672
  Consider unread indicators for clarity
651
673
  </li>
652
674
  </ul>
653
675
  </div>
654
676
  </div>
655
677
 
656
- <div className="rounded-lg border border-white/10 bg-white/5 p-6">
657
- <h3 className="mb-4 text-lg font-semibold !text-purple-300">
678
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-6">
679
+ <h3 className="text-fm-secondary-600! mb-4 text-lg font-semibold">
658
680
  Custom Accessibility Label
659
681
  </h3>
660
682
  <div className="grid grid-cols-1 gap-6 lg:grid-cols-2">
661
- <div className="rounded-lg bg-black/40 p-4">
662
- <pre className="overflow-x-auto text-sm !text-blue-300">
683
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
684
+ <pre className="text-fm-icon-info! overflow-x-auto text-sm">
663
685
  {`// Custom implementation with specific label
664
686
  import { AccessibleIcon } from "@radix-ui/react-accessible-icon"
665
687
 
@@ -679,14 +701,14 @@ function CustomEmailIcon({ label = "Email", ...props }) {
679
701
  </pre>
680
702
  </div>
681
703
  <div className="!space-y-4">
682
- <p className="text-sm !text-white/70">
704
+ <p className="text-fm-secondary! text-sm">
683
705
  For specific contexts, you can wrap the EmailIcon with a
684
706
  custom AccessibleIcon component that provides more
685
707
  descriptive labels for email functionality and
686
708
  messaging.
687
709
  </p>
688
- <div className="rounded-lg border border-blue-500/20 bg-blue-500/10 p-4">
689
- <div className="flex items-center gap-2 text-sm text-blue-200">
710
+ <div className="border-fm-icon-info/20 bg-fm-icon-info/10 rounded-lg border p-4">
711
+ <div className="text-fm-icon-info flex items-center gap-2 text-sm">
690
712
  <EmailIcon className="h-4 w-4" />
691
713
  <span>
692
714
  This approach gives screen readers more context
@@ -700,44 +722,60 @@ function CustomEmailIcon({ label = "Email", ...props }) {
700
722
 
701
723
  {/* Related Icons */}
702
724
  <div className="!space-y-8">
703
- <h2 className="text-center text-3xl font-bold !text-white">
725
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
704
726
  Related Icons
705
727
  </h2>
706
728
  <div className="grid grid-cols-2 gap-6 md:grid-cols-4">
707
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
708
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-green-500/20">
729
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
730
+ <div className="bg-fm-icon-positive/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
709
731
  <span className="text-2xl">📨</span>
710
732
  </div>
711
733
  <div>
712
- <div className="font-medium text-white">InboxIcon</div>
713
- <div className="text-xs text-white/60">Email inbox</div>
734
+ <div className="text-fm-icon-active font-medium">
735
+ InboxIcon
736
+ </div>
737
+ <div className="text-fm-tertiary text-xs">
738
+ Email inbox
739
+ </div>
714
740
  </div>
715
741
  </div>
716
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
717
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-blue-500/20">
742
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
743
+ <div className="bg-fm-icon-info/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
718
744
  <span className="text-2xl">💬</span>
719
745
  </div>
720
746
  <div>
721
- <div className="font-medium text-white">MessageIcon</div>
722
- <div className="text-xs text-white/60">Chat messages</div>
747
+ <div className="text-fm-icon-active font-medium">
748
+ MessageIcon
749
+ </div>
750
+ <div className="text-fm-tertiary text-xs">
751
+ Chat messages
752
+ </div>
723
753
  </div>
724
754
  </div>
725
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
726
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-orange-500/20">
755
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
756
+ <div className="bg-fm-icon-warning/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
727
757
  <span className="text-2xl">📧</span>
728
758
  </div>
729
759
  <div>
730
- <div className="font-medium text-white">SendIcon</div>
731
- <div className="text-xs text-white/60">Send actions</div>
760
+ <div className="text-fm-icon-active font-medium">
761
+ SendIcon
762
+ </div>
763
+ <div className="text-fm-tertiary text-xs">
764
+ Send actions
765
+ </div>
732
766
  </div>
733
767
  </div>
734
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
735
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-purple-500/20">
768
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
769
+ <div className="bg-fm-secondary-500/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
736
770
  <span className="text-2xl">📮</span>
737
771
  </div>
738
772
  <div>
739
- <div className="font-medium text-white">MailboxIcon</div>
740
- <div className="text-xs text-white/60">Mail delivery</div>
773
+ <div className="text-fm-icon-active font-medium">
774
+ MailboxIcon
775
+ </div>
776
+ <div className="text-fm-tertiary text-xs">
777
+ Mail delivery
778
+ </div>
741
779
  </div>
742
780
  </div>
743
781
  </div>
@@ -745,14 +783,14 @@ function CustomEmailIcon({ label = "Email", ...props }) {
745
783
  </div>
746
784
 
747
785
  {/* Footer */}
748
- <div className="border-t border-white/10 bg-black/20 backdrop-blur-xl">
786
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary border-t backdrop-blur-xl">
749
787
  <div className="!mx-auto max-w-7xl px-6 py-8">
750
788
  <div className="!space-y-4 text-center">
751
- <p className="!text-white/60">
789
+ <p className="text-fm-tertiary!">
752
790
  EmailIcon is part of the Aural UI icon library, built with
753
791
  accessibility and communication clarity in mind.
754
792
  </p>
755
- <p className="text-sm !text-white/40">
793
+ <p className="text-fm-placeholder! text-sm">
756
794
  All icons use Radix UI's AccessibleIcon for screen reader
757
795
  compatibility and follow WCAG guidelines.
758
796
  </p>
@@ -797,8 +835,8 @@ const storyParameters = {
797
835
  backgrounds: {
798
836
  default: "dark",
799
837
  values: [
800
- { name: "dark", value: "#0a0a0a" },
801
- { name: "darker", value: "#000000" },
838
+ { name: "dark", value: "var(--color-fm-surface-primary)" },
839
+ { name: "darker", value: "var(--color-fm-neutral-0)" },
802
840
  ],
803
841
  },
804
842
  }
@@ -807,12 +845,12 @@ export const Default: Story = {
807
845
  args: {
808
846
  width: 20,
809
847
  height: 21,
810
- className: "text-blue-400",
848
+ className: "text-fm-icon-info",
811
849
  withAccessibility: true,
812
850
  },
813
851
  parameters: storyParameters,
814
852
  render: (args) => (
815
- <div className="flex h-32 min-h-dvh items-center justify-center rounded-lg bg-gradient-to-br from-gray-900 to-gray-800">
853
+ <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">
816
854
  <EmailIcon {...args} />
817
855
  </div>
818
856
  ),
@@ -829,30 +867,30 @@ export const SizeVariations: Story = {
829
867
  },
830
868
  },
831
869
  render: () => (
832
- <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">
870
+ <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">
833
871
  <div className="text-center">
834
- <EmailIcon className="!mx-auto mb-2 h-3 w-3 text-blue-400" />
835
- <span className="text-xs text-white/60">12px</span>
872
+ <EmailIcon className="text-fm-icon-info !mx-auto mb-2 h-3 w-3" />
873
+ <span className="text-fm-tertiary text-xs">12px</span>
836
874
  </div>
837
875
  <div className="text-center">
838
- <EmailIcon className="!mx-auto mb-2 h-4 w-4 text-blue-400" />
839
- <span className="text-xs text-white/60">16px</span>
876
+ <EmailIcon className="text-fm-icon-info !mx-auto mb-2 h-4 w-4" />
877
+ <span className="text-fm-tertiary text-xs">16px</span>
840
878
  </div>
841
879
  <div className="text-center">
842
- <EmailIcon className="!mx-auto mb-2 h-5 w-5 text-blue-400" />
843
- <span className="text-xs text-white/60">20px</span>
880
+ <EmailIcon className="text-fm-icon-info !mx-auto mb-2 h-5 w-5" />
881
+ <span className="text-fm-tertiary text-xs">20px</span>
844
882
  </div>
845
883
  <div className="text-center">
846
- <EmailIcon className="!mx-auto mb-2 h-6 w-6 text-blue-400" />
847
- <span className="text-xs text-white/60">24px</span>
884
+ <EmailIcon className="text-fm-icon-info !mx-auto mb-2 h-6 w-6" />
885
+ <span className="text-fm-tertiary text-xs">24px</span>
848
886
  </div>
849
887
  <div className="text-center">
850
- <EmailIcon className="!mx-auto mb-2 h-8 w-8 text-blue-400" />
851
- <span className="text-xs text-white/60">32px</span>
888
+ <EmailIcon className="text-fm-icon-info !mx-auto mb-2 h-8 w-8" />
889
+ <span className="text-fm-tertiary text-xs">32px</span>
852
890
  </div>
853
891
  <div className="text-center">
854
- <EmailIcon className="!mx-auto mb-2 h-12 w-12 text-blue-400" />
855
- <span className="text-xs text-white/60">48px</span>
892
+ <EmailIcon className="text-fm-icon-info !mx-auto mb-2 h-12 w-12" />
893
+ <span className="text-fm-tertiary text-xs">48px</span>
856
894
  </div>
857
895
  </div>
858
896
  ),
@@ -869,34 +907,36 @@ export const ColorVariations: Story = {
869
907
  },
870
908
  },
871
909
  render: () => (
872
- <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">
910
+ <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">
873
911
  <div className="text-center">
874
- <div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border border-blue-500/30 bg-blue-500/20">
875
- <EmailIcon className="h-8 w-8 text-blue-400" />
912
+ <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">
913
+ <EmailIcon className="text-fm-icon-info h-8 w-8" />
876
914
  </div>
877
- <div className="text-sm font-medium text-white">Primary</div>
878
- <div className="text-xs text-blue-400">text-blue-400</div>
915
+ <div className="text-fm-icon-active text-sm font-medium">Primary</div>
916
+ <div className="text-fm-icon-info text-xs">text-fm-icon-info</div>
879
917
  </div>
880
918
  <div className="text-center">
881
- <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">
882
- <EmailIcon className="h-8 w-8 text-green-400" />
919
+ <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">
920
+ <EmailIcon className="text-fm-icon-positive h-8 w-8" />
921
+ </div>
922
+ <div className="text-fm-icon-active text-sm font-medium">Success</div>
923
+ <div className="text-fm-icon-positive text-xs">
924
+ text-fm-icon-positive
883
925
  </div>
884
- <div className="text-sm font-medium text-white">Success</div>
885
- <div className="text-xs text-green-400">text-green-400</div>
886
926
  </div>
887
927
  <div className="text-center">
888
- <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">
889
- <EmailIcon className="h-8 w-8 text-yellow-400" />
928
+ <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">
929
+ <EmailIcon className="text-fm-icon-warning h-8 w-8" />
890
930
  </div>
891
- <div className="text-sm font-medium text-white">Warning</div>
892
- <div className="text-xs text-yellow-400">text-yellow-400</div>
931
+ <div className="text-fm-icon-active text-sm font-medium">Warning</div>
932
+ <div className="text-fm-icon-warning text-xs">text-fm-icon-warning</div>
893
933
  </div>
894
934
  <div className="text-center">
895
- <div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border border-gray-500/30 bg-gray-500/20">
896
- <EmailIcon className="h-8 w-8 text-gray-400" />
935
+ <div className="border-fm-divider-primary bg-fm-surface-tertiary/20 !mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border">
936
+ <EmailIcon className="text-fm-placeholder h-8 w-8" />
897
937
  </div>
898
- <div className="text-sm font-medium text-white">Neutral</div>
899
- <div className="text-xs text-gray-400">text-gray-400</div>
938
+ <div className="text-fm-icon-active text-sm font-medium">Neutral</div>
939
+ <div className="text-fm-placeholder text-xs">text-fm-placeholder</div>
900
940
  </div>
901
941
  </div>
902
942
  ),
@@ -913,16 +953,18 @@ export const UsageExamples: Story = {
913
953
  },
914
954
  },
915
955
  render: () => (
916
- <div className="min-h-dvh !space-y-8 rounded-lg bg-gradient-to-br from-gray-900 to-gray-800 p-8">
956
+ <div className="from-fm-surface-primary to-fm-surface-secondary min-h-dvh !space-y-8 rounded-lg bg-linear-to-br p-8">
917
957
  {/* Email Actions */}
918
958
  <div className="!space-y-2">
919
- <h3 className="text-sm font-medium text-white">Email Actions</h3>
959
+ <h3 className="text-fm-icon-active text-sm font-medium">
960
+ Email Actions
961
+ </h3>
920
962
  <div className="flex gap-4">
921
- <button className="flex items-center gap-2 rounded-lg border border-blue-500/30 bg-blue-500/20 px-4 py-2 text-blue-200 transition-colors hover:bg-blue-500/30">
963
+ <button className="border-fm-icon-info/30 bg-fm-icon-info/20 text-fm-icon-info hover:bg-fm-icon-info/30 flex items-center gap-2 rounded-lg border px-4 py-2 transition-colors">
922
964
  <EmailIcon className="h-4 w-4" />
923
965
  Send Email
924
966
  </button>
925
- <button className="flex items-center gap-2 rounded-lg border border-green-500/30 bg-green-500/20 px-3 py-2 text-green-200 transition-colors hover:bg-green-500/30">
967
+ <button className="border-fm-icon-positive/30 bg-fm-icon-positive/20 text-fm-icon-positive hover:bg-fm-icon-positive/30 flex items-center gap-2 rounded-lg border px-3 py-2 transition-colors">
926
968
  <EmailIcon className="h-4 w-4" />
927
969
  Compose
928
970
  </button>
@@ -931,23 +973,25 @@ export const UsageExamples: Story = {
931
973
 
932
974
  {/* Contact Information */}
933
975
  <div className="!space-y-2">
934
- <h3 className="text-sm font-medium text-white">Contact Information</h3>
935
- <div className="rounded-lg border border-white/10 bg-white/5 p-4">
976
+ <h3 className="text-fm-icon-active text-sm font-medium">
977
+ Contact Information
978
+ </h3>
979
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-4">
936
980
  <div className="flex items-center justify-between">
937
981
  <div className="flex items-center gap-3">
938
- <div className="flex h-10 w-10 items-center justify-center rounded-lg bg-blue-500/20">
939
- <EmailIcon className="h-5 w-5 text-blue-400" />
982
+ <div className="bg-fm-icon-info/20 flex h-10 w-10 items-center justify-center rounded-lg">
983
+ <EmailIcon className="text-fm-icon-info h-5 w-5" />
940
984
  </div>
941
985
  <div>
942
- <div className="text-sm font-medium text-white">
986
+ <div className="text-fm-icon-active text-sm font-medium">
943
987
  john@example.com
944
988
  </div>
945
- <div className="text-xs text-white/60">
989
+ <div className="text-fm-tertiary text-xs">
946
990
  Primary email address
947
991
  </div>
948
992
  </div>
949
993
  </div>
950
- <button className="rounded-lg p-2 text-gray-400 transition-colors hover:bg-blue-500/20 hover:text-blue-400">
994
+ <button className="text-fm-placeholder hover:bg-fm-icon-info/20 hover:text-fm-icon-info rounded-lg p-2 transition-colors">
951
995
  <EmailIcon className="h-4 w-4" />
952
996
  </button>
953
997
  </div>
@@ -956,21 +1000,23 @@ export const UsageExamples: Story = {
956
1000
 
957
1001
  {/* Email Status */}
958
1002
  <div className="!space-y-2">
959
- <h3 className="text-sm font-medium text-white">Email Status</h3>
960
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4">
1003
+ <h3 className="text-fm-icon-active text-sm font-medium">
1004
+ Email Status
1005
+ </h3>
1006
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4">
961
1007
  <div className="flex items-center gap-3 rounded px-3 py-2 text-sm">
962
- <EmailIcon className="h-4 w-4 text-blue-400" />
963
- <span className="text-white">Inbox (5)</span>
964
- <span className="ml-auto h-2 w-2 rounded-full bg-blue-400"></span>
1008
+ <EmailIcon className="text-fm-icon-info h-4 w-4" />
1009
+ <span className="text-fm-icon-active">Inbox (5)</span>
1010
+ <span className="bg-fm-icon-info ml-auto h-2 w-2 rounded-full"></span>
965
1011
  </div>
966
1012
  <div className="flex items-center gap-3 rounded px-3 py-2 text-sm">
967
- <EmailIcon className="h-4 w-4 text-green-400" />
968
- <span className="text-white">Sent</span>
1013
+ <EmailIcon className="text-fm-icon-positive h-4 w-4" />
1014
+ <span className="text-fm-icon-active">Sent</span>
969
1015
  </div>
970
1016
  <div className="flex items-center gap-3 rounded px-3 py-2 text-sm">
971
- <EmailIcon className="h-4 w-4 text-yellow-400" />
972
- <span className="text-white">Drafts (2)</span>
973
- <span className="ml-auto h-2 w-2 rounded-full bg-yellow-400"></span>
1017
+ <EmailIcon className="text-fm-icon-warning h-4 w-4" />
1018
+ <span className="text-fm-icon-active">Drafts (2)</span>
1019
+ <span className="bg-fm-icon-warning ml-auto h-2 w-2 rounded-full"></span>
974
1020
  </div>
975
1021
  </div>
976
1022
  </div>
@@ -991,11 +1037,11 @@ export const Playground: Story = {
991
1037
  args: {
992
1038
  width: 32,
993
1039
  height: 32,
994
- className: "text-blue-400",
1040
+ className: "text-fm-icon-info",
995
1041
  },
996
1042
  render: (args) => (
997
- <div className="flex h-64 min-h-dvh items-center justify-center rounded-lg bg-gradient-to-br from-gray-900 to-gray-800">
998
- <div className="rounded-lg border border-white/10 bg-white/5 p-8">
1043
+ <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">
1044
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-8">
999
1045
  <EmailIcon {...args} />
1000
1046
  </div>
1001
1047
  </div>