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 SunIcon> = {
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 SunIcon> = {
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-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-transparent to-purple-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 to-fm-secondary-500/10 absolute inset-0 bg-linear-to-r via-transparent" />
87
87
  <div className="relative !mx-auto max-w-7xl px-6 py-16">
88
88
  <div className="!space-y-6 text-center">
89
- <div className="!mx-auto flex h-24 w-24 items-center justify-center rounded-2xl border border-blue-500/30 bg-gradient-to-br from-blue-500/20 to-purple-500/20">
90
- <SunIcon className="h-12 w-12 text-blue-400" />
89
+ <div className="border-fm-icon-info/30 from-fm-icon-info/20 to-fm-secondary-500/20 !mx-auto flex h-24 w-24 items-center justify-center rounded-2xl border bg-linear-to-br">
90
+ <SunIcon 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
  SunIcon
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 suggestion icon for hints, recommendations, and
97
97
  guidance elements. Built with accessibility in mind using
98
98
  Radix UI's AccessibleIcon wrapper.
@@ -101,28 +101,28 @@ const meta: Meta<typeof SunIcon> = {
101
101
  {/* Stats */}
102
102
  <div className="flex items-center justify-center gap-8 pt-8">
103
103
  <div className="text-center">
104
- <div className="text-3xl font-bold text-blue-300">
104
+ <div className="text-fm-icon-info text-3xl font-bold">
105
105
  Accessible
106
106
  </div>
107
- <div className="text-sm text-white/60">
107
+ <div className="text-fm-tertiary text-sm">
108
108
  Screen reader friendly
109
109
  </div>
110
110
  </div>
111
- <div className="h-8 w-px bg-white/20" />
111
+ <div className="bg-fm-divider-primary h-8 w-px" />
112
112
  <div className="text-center">
113
- <div className="text-3xl font-bold text-purple-300">
113
+ <div className="text-fm-secondary-600 text-3xl font-bold">
114
114
  Scalable
115
115
  </div>
116
- <div className="text-sm text-white/60">
116
+ <div className="text-fm-tertiary text-sm">
117
117
  Any size needed
118
118
  </div>
119
119
  </div>
120
- <div className="h-8 w-px bg-white/20" />
120
+ <div className="bg-fm-divider-primary h-8 w-px" />
121
121
  <div className="text-center">
122
- <div className="text-3xl font-bold text-indigo-300">
122
+ <div className="text-fm-icon-info text-3xl font-bold">
123
123
  Flexible
124
124
  </div>
125
- <div className="text-sm text-white/60">
125
+ <div className="text-fm-tertiary text-sm">
126
126
  Customizable styling
127
127
  </div>
128
128
  </div>
@@ -135,16 +135,16 @@ const meta: Meta<typeof SunIcon> = {
135
135
  <div className="!mx-auto max-w-7xl !space-y-16 px-6 py-12">
136
136
  {/* Quick Usage */}
137
137
  <div className="!space-y-8">
138
- <h2 className="text-center text-3xl font-bold !text-white">
138
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
139
139
  Quick Start
140
140
  </h2>
141
141
  <div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
142
142
  <div className="!space-y-4">
143
- <h3 className="text-xl font-semibold !text-blue-300">
143
+ <h3 className="text-fm-icon-info! text-xl font-semibold">
144
144
  Basic Usage
145
145
  </h3>
146
- <div className="rounded-lg bg-black/40 p-4">
147
- <pre className="overflow-x-auto text-sm !text-green-300">
146
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
147
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
148
148
  {`import { SunIcon } from "@icons/suggestion-icon"
149
149
 
150
150
  function MyComponent() {
@@ -160,13 +160,15 @@ function MyComponent() {
160
160
  </div>
161
161
 
162
162
  <div className="!space-y-4">
163
- <h3 className="text-xl font-semibold !text-blue-300">
163
+ <h3 className="text-fm-icon-info! text-xl font-semibold">
164
164
  Live Preview
165
165
  </h3>
166
- <div className="flex h-32 items-center justify-center rounded-lg border border-white/10 bg-white/5">
167
- <div className="flex items-center gap-3 rounded-lg border border-blue-500/20 bg-blue-500/10 px-4 py-2">
168
- <SunIcon className="h-5 w-5 text-blue-400" />
169
- <span className="text-white">Try this suggestion</span>
166
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary flex h-32 items-center justify-center rounded-lg border">
167
+ <div className="border-fm-icon-info/20 bg-fm-icon-info/10 flex items-center gap-3 rounded-lg border px-4 py-2">
168
+ <SunIcon className="text-fm-icon-info h-5 w-5" />
169
+ <span className="text-fm-icon-active">
170
+ Try this suggestion
171
+ </span>
170
172
  </div>
171
173
  </div>
172
174
  </div>
@@ -175,110 +177,116 @@ function MyComponent() {
175
177
 
176
178
  {/* Props Documentation */}
177
179
  <div className="!space-y-8">
178
- <h2 className="text-center text-3xl font-bold !text-white">
180
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
179
181
  Props & Configuration
180
182
  </h2>
181
183
 
182
- <div className="overflow-hidden rounded-lg border border-white/10 bg-white/5">
183
- <div className="bg-white/5 p-4">
184
- <h3 className="text-xl font-semibold !text-white">Props</h3>
184
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary overflow-hidden rounded-lg border">
185
+ <div className="bg-fm-surface-secondary p-4">
186
+ <h3 className="text-fm-icon-active! text-xl font-semibold">
187
+ Props
188
+ </h3>
185
189
  </div>
186
190
  <table className="!my-0 w-full">
187
- <thead className="bg-white/5">
188
- <tr className="border-b border-white/10">
189
- <th className="px-6 py-4 text-left text-sm font-semibold !text-white">
191
+ <thead className="bg-fm-surface-secondary">
192
+ <tr className="border-fm-divider-secondary border-b">
193
+ <th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
190
194
  Prop
191
195
  </th>
192
- <th className="px-6 py-4 text-left text-sm font-semibold !text-white">
196
+ <th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
193
197
  Type
194
198
  </th>
195
- <th className="px-6 py-4 text-left text-sm font-semibold !text-white">
199
+ <th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
196
200
  Default
197
201
  </th>
198
- <th className="px-6 py-4 text-left text-sm font-semibold !text-white">
202
+ <th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
199
203
  Description
200
204
  </th>
201
205
  </tr>
202
206
  </thead>
203
207
  <tbody>
204
208
  {" "}
205
- <tr className="!bg-black/10">
206
- <td className="px-6 py-4 font-mono text-sm !text-blue-300">
209
+ <tr className="bg-fm-surface-secondary!">
210
+ <td className="text-fm-icon-info! px-6 py-4 font-mono text-sm">
207
211
  withAccessibility
208
212
  </td>
209
- <td className="px-6 py-4 text-sm !text-white/70">
213
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
210
214
  boolean
211
215
  </td>
212
- <td className="px-6 py-4 text-sm !text-white/50">
216
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
213
217
  true
214
218
  </td>
215
- <td className="px-6 py-4 text-sm !text-white/70">
219
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
216
220
  Whether to wrap the icon with accessibility feature
217
221
  </td>
218
222
  </tr>
219
- <tr className="border-b border-white/5 !bg-black/10">
220
- <td className="px-6 py-4 font-mono text-sm !text-blue-300">
223
+ <tr className="border-fm-divider-tertiary bg-fm-surface-secondary! border-b">
224
+ <td className="text-fm-icon-info! px-6 py-4 font-mono text-sm">
221
225
  height
222
226
  </td>
223
- <td className="px-6 py-4 text-sm !text-white/70">
227
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
224
228
  number | string
225
229
  </td>
226
- <td className="px-6 py-4 text-sm !text-white/50">24</td>
227
- <td className="px-6 py-4 text-sm !text-white/70">
230
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
231
+ 24
232
+ </td>
233
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
228
234
  Height of the icon in pixels
229
235
  </td>
230
236
  </tr>
231
- <tr className="border-b border-white/5">
232
- <td className="px-6 py-4 font-mono text-sm !text-blue-300">
237
+ <tr className="border-fm-divider-tertiary border-b">
238
+ <td className="text-fm-icon-info! px-6 py-4 font-mono text-sm">
233
239
  fill
234
240
  </td>
235
- <td className="px-6 py-4 text-sm !text-white/70">
241
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
236
242
  string
237
243
  </td>
238
- <td className="px-6 py-4 text-sm !text-white/50">
244
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
239
245
  currentColor
240
246
  </td>
241
- <td className="px-6 py-4 text-sm !text-white/70">
247
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
242
248
  Fill color of the icon
243
249
  </td>
244
250
  </tr>
245
- <tr className="border-b border-white/5 !bg-black/10">
246
- <td className="px-6 py-4 font-mono text-sm !text-blue-300">
251
+ <tr className="border-fm-divider-tertiary bg-fm-surface-secondary! border-b">
252
+ <td className="text-fm-icon-info! px-6 py-4 font-mono text-sm">
247
253
  className
248
254
  </td>
249
- <td className="px-6 py-4 text-sm !text-white/70">
255
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
250
256
  string
251
257
  </td>
252
- <td className="px-6 py-4 text-sm !text-white/50">
258
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
253
259
  undefined
254
260
  </td>
255
- <td className="px-6 py-4 text-sm !text-white/70">
261
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
256
262
  CSS classes for styling
257
263
  </td>
258
264
  </tr>
259
- <tr className="border-b border-white/5">
260
- <td className="px-6 py-4 font-mono text-sm !text-blue-300">
265
+ <tr className="border-fm-divider-tertiary border-b">
266
+ <td className="text-fm-icon-info! px-6 py-4 font-mono text-sm">
261
267
  stroke
262
268
  </td>
263
- <td className="px-6 py-4 text-sm !text-white/70">
269
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
264
270
  string
265
271
  </td>
266
- <td className="px-6 py-4 text-sm !text-white/50">
272
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
267
273
  currentColor
268
274
  </td>
269
- <td className="px-6 py-4 text-sm !text-white/70">
275
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
270
276
  Stroke color of the icon
271
277
  </td>
272
278
  </tr>
273
- <tr className="!bg-black/10">
274
- <td className="px-6 py-4 font-mono text-sm !text-blue-300">
279
+ <tr className="bg-fm-surface-secondary!">
280
+ <td className="text-fm-icon-info! px-6 py-4 font-mono text-sm">
275
281
  strokeWidth
276
282
  </td>
277
- <td className="px-6 py-4 text-sm !text-white/70">
283
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
278
284
  number | string
279
285
  </td>
280
- <td className="px-6 py-4 text-sm !text-white/50">1</td>
281
- <td className="px-6 py-4 text-sm !text-white/70">
286
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
287
+ 1
288
+ </td>
289
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
282
290
  Width of the stroke
283
291
  </td>
284
292
  </tr>
@@ -289,48 +297,60 @@ function MyComponent() {
289
297
 
290
298
  {/* Size Variations */}
291
299
  <div className="!space-y-8">
292
- <h2 className="text-center text-3xl font-bold !text-white">
300
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
293
301
  Size Variations
294
302
  </h2>
295
- <div className="rounded-lg border border-white/10 bg-white/5 p-8">
303
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-8">
296
304
  <div className="!space-y-6">
297
305
  <div className="grid grid-cols-1 gap-8 md:grid-cols-2">
298
306
  <div className="!space-y-4">
299
- <h3 className="text-lg font-semibold !text-blue-300">
307
+ <h3 className="text-fm-icon-info! text-lg font-semibold">
300
308
  Common Sizes
301
309
  </h3>
302
310
  <div className="flex items-center gap-6">
303
311
  <div className="text-center">
304
- <SunIcon className="!mx-auto mb-2 h-4 w-4 text-blue-400" />
305
- <span className="text-xs text-white/60">16px</span>
312
+ <SunIcon className="text-fm-icon-info !mx-auto mb-2 h-4 w-4" />
313
+ <span className="text-fm-tertiary text-xs">
314
+ 16px
315
+ </span>
306
316
  </div>
307
317
  <div className="text-center">
308
- <SunIcon className="!mx-auto mb-2 h-5 w-5 text-blue-400" />
309
- <span className="text-xs text-white/60">20px</span>
318
+ <SunIcon className="text-fm-icon-info !mx-auto mb-2 h-5 w-5" />
319
+ <span className="text-fm-tertiary text-xs">
320
+ 20px
321
+ </span>
310
322
  </div>
311
323
  <div className="text-center">
312
- <SunIcon className="!mx-auto mb-2 h-6 w-6 text-blue-400" />
313
- <span className="text-xs text-white/60">24px</span>
324
+ <SunIcon className="text-fm-icon-info !mx-auto mb-2 h-6 w-6" />
325
+ <span className="text-fm-tertiary text-xs">
326
+ 24px
327
+ </span>
314
328
  </div>
315
329
  <div className="text-center">
316
- <SunIcon className="!mx-auto mb-2 h-8 w-8 text-blue-400" />
317
- <span className="text-xs text-white/60">32px</span>
330
+ <SunIcon className="text-fm-icon-info !mx-auto mb-2 h-8 w-8" />
331
+ <span className="text-fm-tertiary text-xs">
332
+ 32px
333
+ </span>
318
334
  </div>
319
335
  </div>
320
336
  </div>
321
337
 
322
338
  <div className="!space-y-4">
323
- <h3 className="text-lg font-semibold !text-blue-300">
339
+ <h3 className="text-fm-icon-info! text-lg font-semibold">
324
340
  Large Displays
325
341
  </h3>
326
342
  <div className="flex items-center gap-6">
327
343
  <div className="text-center">
328
- <SunIcon className="!mx-auto mb-2 h-12 w-12 text-blue-400" />
329
- <span className="text-xs text-white/60">48px</span>
344
+ <SunIcon className="text-fm-icon-info !mx-auto mb-2 h-12 w-12" />
345
+ <span className="text-fm-tertiary text-xs">
346
+ 48px
347
+ </span>
330
348
  </div>
331
349
  <div className="text-center">
332
- <SunIcon className="!mx-auto mb-2 h-16 w-16 text-blue-400" />
333
- <span className="text-xs text-white/60">64px</span>
350
+ <SunIcon className="text-fm-icon-info !mx-auto mb-2 h-16 w-16" />
351
+ <span className="text-fm-tertiary text-xs">
352
+ 64px
353
+ </span>
334
354
  </div>
335
355
  </div>
336
356
  </div>
@@ -341,42 +361,44 @@ function MyComponent() {
341
361
 
342
362
  {/* Color Variations */}
343
363
  <div className="!space-y-8">
344
- <h2 className="text-center text-3xl font-bold !text-white">
364
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
345
365
  Color Variations
346
366
  </h2>
347
367
  <div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
348
368
  <div className="!space-y-4">
349
- <h3 className="text-lg font-semibold !text-blue-300">
369
+ <h3 className="text-fm-icon-info! text-lg font-semibold">
350
370
  Semantic Colors
351
371
  </h3>
352
- <div className="!space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
372
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
353
373
  <div className="flex items-center gap-4">
354
- <SunIcon className="h-6 w-6 text-blue-400" />
355
- <span className="text-blue-300">
374
+ <SunIcon className="text-fm-icon-info h-6 w-6" />
375
+ <span className="text-fm-icon-info">
356
376
  Primary suggestion
357
377
  </span>
358
378
  </div>
359
379
  <div className="flex items-center gap-4">
360
- <SunIcon className="h-6 w-6 text-purple-400" />
361
- <span className="text-purple-300">Hint</span>
380
+ <SunIcon className="text-fm-secondary-600 h-6 w-6" />
381
+ <span className="text-fm-secondary-600">Hint</span>
362
382
  </div>
363
383
  <div className="flex items-center gap-4">
364
- <SunIcon className="h-6 w-6 text-indigo-400" />
365
- <span className="text-indigo-300">Recommendation</span>
384
+ <SunIcon className="text-fm-icon-info h-6 w-6" />
385
+ <span className="text-fm-icon-info">
386
+ Recommendation
387
+ </span>
366
388
  </div>
367
389
  <div className="flex items-center gap-4">
368
- <SunIcon className="h-6 w-6 text-cyan-400" />
369
- <span className="text-cyan-300">Tip</span>
390
+ <SunIcon className="text-fm-icon-info h-6 w-6" />
391
+ <span className="text-fm-icon-info">Tip</span>
370
392
  </div>
371
393
  </div>
372
394
  </div>
373
395
 
374
396
  <div className="!space-y-4">
375
- <h3 className="text-lg font-semibold !text-blue-300">
397
+ <h3 className="text-fm-icon-info! text-lg font-semibold">
376
398
  Custom Colors
377
399
  </h3>
378
- <div className="rounded-lg bg-black/40 p-4">
379
- <pre className="overflow-x-auto text-sm !text-green-300">
400
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
401
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
380
402
  {`// Using Tailwind classes
381
403
  <SunIcon className="h-6 w-6 text-blue-500" />
382
404
  <SunIcon className="h-6 w-6 text-purple-500" />
@@ -395,32 +417,32 @@ function MyComponent() {
395
417
 
396
418
  {/* Usage Examples */}
397
419
  <div className="!space-y-8">
398
- <h2 className="text-center text-3xl font-bold !text-white">
420
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
399
421
  Usage Examples
400
422
  </h2>
401
423
 
402
424
  <div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
403
425
  {/* Suggestion Card */}
404
426
  <div className="!space-y-4">
405
- <h3 className="text-lg font-semibold !text-blue-300">
427
+ <h3 className="text-fm-icon-info! text-lg font-semibold">
406
428
  Suggestion Card
407
429
  </h3>
408
430
  <div className="!space-y-4">
409
- <div className="rounded-lg border border-blue-500/20 bg-blue-500/10 p-4">
431
+ <div className="border-fm-icon-info/20 bg-fm-icon-info/10 rounded-lg border p-4">
410
432
  <div className="flex items-start gap-3">
411
- <SunIcon className="mt-0.5 h-5 w-5 flex-shrink-0 text-blue-400" />
433
+ <SunIcon className="text-fm-icon-info mt-0.5 h-5 w-5 flex-shrink-0" />
412
434
  <div>
413
- <h4 className="font-medium !text-blue-200">
435
+ <h4 className="text-fm-icon-info! font-medium">
414
436
  Pro Tip
415
437
  </h4>
416
- <p className="text-sm !text-blue-300/80">
438
+ <p className="text-fm-icon-info!/80 text-sm">
417
439
  Use keyboard shortcuts to speed up your workflow.
418
440
  </p>
419
441
  </div>
420
442
  </div>
421
443
  </div>
422
- <div className="rounded-lg bg-black/40 p-4">
423
- <pre className="overflow-x-auto text-sm !text-green-300">
444
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
445
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
424
446
  {`<div className="border border-blue-500/20 bg-blue-500/10 p-4">
425
447
  <div className="flex items-start gap-3">
426
448
  <SunIcon className="h-5 w-5 text-blue-400" />
@@ -437,26 +459,26 @@ function MyComponent() {
437
459
 
438
460
  {/* Help Text */}
439
461
  <div className="!space-y-4">
440
- <h3 className="text-lg font-semibold !text-blue-300">
462
+ <h3 className="text-fm-icon-info! text-lg font-semibold">
441
463
  Help Text
442
464
  </h3>
443
465
  <div className="!space-y-4">
444
466
  <div className="!space-y-2">
445
- <label className="block text-sm font-medium text-white">
467
+ <label className="text-fm-icon-active block text-sm font-medium">
446
468
  Username
447
469
  </label>
448
470
  <input
449
471
  type="text"
450
- className="w-full rounded-lg border border-white/20 bg-white/5 px-3 py-2 text-white placeholder-white/50"
472
+ className="border-fm-divider-primary bg-fm-surface-secondary text-fm-icon-active w-full rounded-lg border px-3 py-2 placeholder-white/50"
451
473
  placeholder="Enter username"
452
474
  />
453
- <div className="flex items-center gap-2 text-sm text-blue-400">
475
+ <div className="text-fm-icon-info flex items-center gap-2 text-sm">
454
476
  <SunIcon className="h-4 w-4" />
455
477
  <span>Use at least 3 characters</span>
456
478
  </div>
457
479
  </div>
458
- <div className="rounded-lg bg-black/40 p-4">
459
- <pre className="overflow-x-auto text-sm !text-green-300">
480
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
481
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
460
482
  {`<div className="flex items-center gap-2 text-blue-400">
461
483
  <SunIcon className="h-4 w-4" />
462
484
  <span>Use at least 3 characters</span>
@@ -468,22 +490,22 @@ function MyComponent() {
468
490
 
469
491
  {/* Button Integration */}
470
492
  <div className="!space-y-4">
471
- <h3 className="text-lg font-semibold !text-blue-300">
493
+ <h3 className="text-fm-icon-info! text-lg font-semibold">
472
494
  Button Integration
473
495
  </h3>
474
496
  <div className="!space-y-4">
475
497
  <div className="flex gap-4">
476
- <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">
498
+ <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">
477
499
  <SunIcon className="h-4 w-4" />
478
500
  Show Hints
479
501
  </button>
480
- <button className="flex items-center gap-2 rounded-lg border border-purple-500/30 bg-purple-500/20 px-4 py-2 text-purple-200 transition-colors hover:bg-purple-500/30">
502
+ <button className="border-fm-secondary-500/30 bg-fm-secondary-500/20 text-fm-secondary-600 hover:bg-fm-secondary-500/30 flex items-center gap-2 rounded-lg border px-4 py-2 transition-colors">
481
503
  <SunIcon className="h-4 w-4" />
482
504
  Get Suggestions
483
505
  </button>
484
506
  </div>
485
- <div className="rounded-lg bg-black/40 p-4">
486
- <pre className="overflow-x-auto text-sm !text-green-300">
507
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
508
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
487
509
  {`<button className="flex items-center gap-2">
488
510
  <SunIcon className="h-4 w-4" />
489
511
  Show Hints
@@ -495,21 +517,21 @@ function MyComponent() {
495
517
 
496
518
  {/* Tooltip */}
497
519
  <div className="!space-y-4">
498
- <h3 className="text-lg font-semibold !text-blue-300">
520
+ <h3 className="text-fm-icon-info! text-lg font-semibold">
499
521
  Interactive Tooltip
500
522
  </h3>
501
523
  <div className="!space-y-4">
502
524
  <div className="flex items-center gap-2">
503
- <span className="text-white">Need help?</span>
525
+ <span className="text-fm-icon-active">Need help?</span>
504
526
  <div className="group relative">
505
- <SunIcon className="h-4 w-4 cursor-help text-blue-400" />
506
- <div className="invisible absolute bottom-full left-1/2 mb-2 -translate-x-1/2 transform rounded bg-black px-2 py-1 text-xs text-white opacity-0 transition-all group-hover:visible group-hover:opacity-100">
527
+ <SunIcon className="text-fm-icon-info h-4 w-4 cursor-help" />
528
+ <div className="bg-fm-surface-primary text-fm-icon-active invisible absolute bottom-full left-1/2 mb-2 -translate-x-1/2 transform rounded px-2 py-1 text-xs opacity-0 transition-all group-hover:visible group-hover:opacity-100">
507
529
  Click for suggestions
508
530
  </div>
509
531
  </div>
510
532
  </div>
511
- <div className="rounded-lg bg-black/40 p-4">
512
- <pre className="overflow-x-auto text-sm !text-green-300">
533
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
534
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
513
535
  {`<div className="group relative">
514
536
  <SunIcon className="h-4 w-4 cursor-help text-blue-400" />
515
537
  <div className="tooltip">Click for suggestions</div>
@@ -523,64 +545,64 @@ function MyComponent() {
523
545
 
524
546
  {/* Accessibility */}
525
547
  <div className="!space-y-8">
526
- <h2 className="text-center text-3xl font-bold !text-white">
548
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
527
549
  Accessibility Features
528
550
  </h2>
529
551
  <div className="grid grid-cols-1 gap-8 md:grid-cols-2">
530
- <div className="!space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
531
- <h3 className="text-lg font-semibold !text-green-300">
552
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
553
+ <h3 className="text-fm-icon-positive! text-lg font-semibold">
532
554
  ✅ Built-in Features
533
555
  </h3>
534
- <ul className="!space-y-2 text-sm !text-white/70">
535
- <li className="!text-white/70">
556
+ <ul className="text-fm-secondary! !space-y-2 text-sm">
557
+ <li className="text-fm-secondary!">
536
558
  Uses Radix UI AccessibleIcon wrapper
537
559
  </li>
538
- <li className="!text-white/70">
560
+ <li className="text-fm-secondary!">
539
561
  Provides screen reader label "Suggestion icon"
540
562
  </li>
541
- <li className="!text-white/70">
563
+ <li className="text-fm-secondary!">
542
564
  Supports keyboard navigation when interactive
543
565
  </li>
544
- <li className="!text-white/70">
566
+ <li className="text-fm-secondary!">
545
567
  Maintains proper color contrast ratios
546
568
  </li>
547
- <li className="!text-white/70">
569
+ <li className="text-fm-secondary!">
548
570
  Scales with user's font size preferences
549
571
  </li>
550
572
  </ul>
551
573
  </div>
552
574
 
553
- <div className="!space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
554
- <h3 className="text-lg font-semibold !text-blue-300">
575
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
576
+ <h3 className="text-fm-icon-info! text-lg font-semibold">
555
577
  💡 Best Practices
556
578
  </h3>
557
- <ul className="!space-y-2 text-sm text-white/70">
558
- <li className="!text-white/70">
579
+ <ul className="text-fm-secondary !space-y-2 text-sm">
580
+ <li className="text-fm-secondary!">
559
581
  Always pair with descriptive text
560
582
  </li>
561
- <li className="!text-white/70">
583
+ <li className="text-fm-secondary!">
562
584
  Use consistent colors for suggestion types
563
585
  </li>
564
- <li className="!text-white/70">
586
+ <li className="text-fm-secondary!">
565
587
  Ensure sufficient color contrast
566
588
  </li>
567
- <li className="!text-white/70">
589
+ <li className="text-fm-secondary!">
568
590
  Add focus states for interactive elements
569
591
  </li>
570
- <li className="!text-white/70">
592
+ <li className="text-fm-secondary!">
571
593
  Provide alternative text for screen readers
572
594
  </li>
573
595
  </ul>
574
596
  </div>
575
597
  </div>
576
598
 
577
- <div className="rounded-lg border border-white/10 bg-white/5 p-6">
578
- <h3 className="mb-4 text-lg font-semibold !text-purple-300">
599
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-6">
600
+ <h3 className="text-fm-secondary-600! mb-4 text-lg font-semibold">
579
601
  Custom Accessibility Label
580
602
  </h3>
581
603
  <div className="grid grid-cols-1 gap-6 lg:grid-cols-2">
582
- <div className="rounded-lg bg-black/40 p-4">
583
- <pre className="overflow-x-auto text-sm !text-blue-300">
604
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
605
+ <pre className="text-fm-icon-info! overflow-x-auto text-sm">
584
606
  {`import { AccessibleIcon } from "@radix-ui/react-accessible-icon"
585
607
  import { SunIcon } from "@icons/suggestion-icon"
586
608
 
@@ -590,13 +612,13 @@ import { SunIcon } from "@icons/suggestion-icon"
590
612
  </pre>
591
613
  </div>
592
614
  <div className="!space-y-4">
593
- <p className="text-sm !text-white/70">
615
+ <p className="text-fm-secondary! text-sm">
594
616
  For specific contexts, you can wrap the SunIcon with a
595
617
  custom AccessibleIcon component that provides more
596
618
  descriptive labels.
597
619
  </p>
598
- <div className="rounded-lg border border-blue-500/20 bg-blue-500/10 p-4">
599
- <div className="flex items-center gap-2 text-blue-200">
620
+ <div className="border-fm-icon-info/20 bg-fm-icon-info/10 rounded-lg border p-4">
621
+ <div className="text-fm-icon-info flex items-center gap-2">
600
622
  <SunIcon className="h-4 w-4" />
601
623
  <span>Helpful tip available</span>
602
624
  </div>
@@ -608,50 +630,60 @@ import { SunIcon } from "@icons/suggestion-icon"
608
630
 
609
631
  {/* Related Icons */}
610
632
  <div className="!space-y-8">
611
- <h2 className="text-center text-3xl font-bold !text-white">
633
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
612
634
  Related Icons
613
635
  </h2>
614
636
  <div className="grid grid-cols-2 gap-6 md:grid-cols-4">
615
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
616
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-blue-500/20">
637
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
638
+ <div className="bg-fm-icon-info/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
617
639
  <span className="text-2xl">ℹ️</span>
618
640
  </div>
619
641
  <div>
620
- <div className="font-medium text-white">InfoIcon</div>
621
- <div className="text-xs text-white/60">
642
+ <div className="text-fm-icon-active font-medium">
643
+ InfoIcon
644
+ </div>
645
+ <div className="text-fm-tertiary text-xs">
622
646
  Information states
623
647
  </div>
624
648
  </div>
625
649
  </div>
626
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
627
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-yellow-500/20">
650
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
651
+ <div className="bg-fm-icon-warning/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
628
652
  <span className="text-2xl">💡</span>
629
653
  </div>
630
654
  <div>
631
- <div className="font-medium text-white">
655
+ <div className="text-fm-icon-active font-medium">
632
656
  LightbulbIcon
633
657
  </div>
634
- <div className="text-xs text-white/60">Ideas & tips</div>
658
+ <div className="text-fm-tertiary text-xs">
659
+ Ideas & tips
660
+ </div>
635
661
  </div>
636
662
  </div>
637
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
638
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-purple-500/20">
663
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
664
+ <div className="bg-fm-secondary-500/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
639
665
  <span className="text-2xl">❓</span>
640
666
  </div>
641
667
  <div>
642
- <div className="font-medium text-white">HelpIcon</div>
643
- <div className="text-xs text-white/60">
668
+ <div className="text-fm-icon-active font-medium">
669
+ HelpIcon
670
+ </div>
671
+ <div className="text-fm-tertiary text-xs">
644
672
  Help & guidance
645
673
  </div>
646
674
  </div>
647
675
  </div>
648
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
649
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-green-500/20">
676
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
677
+ <div className="bg-fm-icon-positive/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
650
678
  <span className="text-2xl">✨</span>
651
679
  </div>
652
680
  <div>
653
- <div className="font-medium text-white">SparkleIcon</div>
654
- <div className="text-xs text-white/60">Enhancement</div>
681
+ <div className="text-fm-icon-active font-medium">
682
+ SparkleIcon
683
+ </div>
684
+ <div className="text-fm-tertiary text-xs">
685
+ Enhancement
686
+ </div>
655
687
  </div>
656
688
  </div>
657
689
  </div>
@@ -659,14 +691,14 @@ import { SunIcon } from "@icons/suggestion-icon"
659
691
  </div>
660
692
 
661
693
  {/* Footer */}
662
- <div className="border-t border-white/10 bg-black/20 backdrop-blur-xl">
694
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary border-t backdrop-blur-xl">
663
695
  <div className="!mx-auto max-w-7xl px-6 py-8">
664
696
  <div className="!space-y-4 text-center">
665
- <p className="!text-white/60">
697
+ <p className="text-fm-tertiary!">
666
698
  SunIcon is part of the Aural UI icon library, built with
667
699
  accessibility and consistency in mind.
668
700
  </p>
669
- <p className="text-sm !text-white/40">
701
+ <p className="text-fm-placeholder! text-sm">
670
702
  All icons use Radix UI's AccessibleIcon for screen reader
671
703
  compatibility and follow WCAG guidelines.
672
704
  </p>
@@ -719,8 +751,8 @@ const storyParameters = {
719
751
  backgrounds: {
720
752
  default: "dark",
721
753
  values: [
722
- { name: "dark", value: "#0a0a0a" },
723
- { name: "darker", value: "#000000" },
754
+ { name: "dark", value: "var(--color-fm-surface-primary)" },
755
+ { name: "darker", value: "var(--color-fm-neutral-0)" },
724
756
  ],
725
757
  },
726
758
  }
@@ -729,12 +761,12 @@ export const Default: Story = {
729
761
  args: {
730
762
  width: 24,
731
763
  height: 24,
732
- className: "text-blue-400",
764
+ className: "text-fm-icon-info",
733
765
  withAccessibility: true,
734
766
  },
735
767
  parameters: storyParameters,
736
768
  render: (args) => (
737
- <div className="flex h-32 min-h-dvh items-center justify-center rounded-lg bg-gradient-to-br from-gray-900 to-gray-800">
769
+ <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">
738
770
  <SunIcon {...args} />
739
771
  </div>
740
772
  ),
@@ -751,30 +783,30 @@ export const SizeVariations: Story = {
751
783
  },
752
784
  },
753
785
  render: () => (
754
- <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">
786
+ <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">
755
787
  <div className="text-center">
756
- <SunIcon className="!mx-auto mb-2 h-3 w-3 text-blue-400" />
757
- <span className="text-xs text-white/60">12px</span>
788
+ <SunIcon className="text-fm-icon-info !mx-auto mb-2 h-3 w-3" />
789
+ <span className="text-fm-tertiary text-xs">12px</span>
758
790
  </div>
759
791
  <div className="text-center">
760
- <SunIcon className="!mx-auto mb-2 h-4 w-4 text-blue-400" />
761
- <span className="text-xs text-white/60">16px</span>
792
+ <SunIcon className="text-fm-icon-info !mx-auto mb-2 h-4 w-4" />
793
+ <span className="text-fm-tertiary text-xs">16px</span>
762
794
  </div>
763
795
  <div className="text-center">
764
- <SunIcon className="!mx-auto mb-2 h-5 w-5 text-blue-400" />
765
- <span className="text-xs text-white/60">20px</span>
796
+ <SunIcon className="text-fm-icon-info !mx-auto mb-2 h-5 w-5" />
797
+ <span className="text-fm-tertiary text-xs">20px</span>
766
798
  </div>
767
799
  <div className="text-center">
768
- <SunIcon className="!mx-auto mb-2 h-6 w-6 text-blue-400" />
769
- <span className="text-xs text-white/60">24px</span>
800
+ <SunIcon className="text-fm-icon-info !mx-auto mb-2 h-6 w-6" />
801
+ <span className="text-fm-tertiary text-xs">24px</span>
770
802
  </div>
771
803
  <div className="text-center">
772
- <SunIcon className="!mx-auto mb-2 h-8 w-8 text-blue-400" />
773
- <span className="text-xs text-white/60">32px</span>
804
+ <SunIcon className="text-fm-icon-info !mx-auto mb-2 h-8 w-8" />
805
+ <span className="text-fm-tertiary text-xs">32px</span>
774
806
  </div>
775
807
  <div className="text-center">
776
- <SunIcon className="!mx-auto mb-2 h-12 w-12 text-blue-400" />
777
- <span className="text-xs text-white/60">48px</span>
808
+ <SunIcon className="text-fm-icon-info !mx-auto mb-2 h-12 w-12" />
809
+ <span className="text-fm-tertiary text-xs">48px</span>
778
810
  </div>
779
811
  </div>
780
812
  ),
@@ -791,34 +823,38 @@ export const ColorVariations: Story = {
791
823
  },
792
824
  },
793
825
  render: () => (
794
- <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">
826
+ <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">
795
827
  <div className="text-center">
796
- <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">
797
- <SunIcon className="h-8 w-8 text-blue-400" />
828
+ <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">
829
+ <SunIcon className="text-fm-icon-info h-8 w-8" />
798
830
  </div>
799
- <div className="text-sm font-medium text-white">Primary</div>
800
- <div className="text-xs text-blue-400">text-blue-400</div>
831
+ <div className="text-fm-icon-active text-sm font-medium">Primary</div>
832
+ <div className="text-fm-icon-info text-xs">text-fm-icon-info</div>
801
833
  </div>
802
834
  <div className="text-center">
803
- <div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border border-purple-500/30 bg-purple-500/20">
804
- <SunIcon className="h-8 w-8 text-purple-400" />
835
+ <div className="border-fm-secondary-500/30 bg-fm-secondary-500/20 !mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border">
836
+ <SunIcon className="text-fm-secondary-600 h-8 w-8" />
837
+ </div>
838
+ <div className="text-fm-icon-active text-sm font-medium">Hint</div>
839
+ <div className="text-fm-secondary-600 text-xs">
840
+ text-fm-secondary-600
805
841
  </div>
806
- <div className="text-sm font-medium text-white">Hint</div>
807
- <div className="text-xs text-purple-400">text-purple-400</div>
808
842
  </div>
809
843
  <div className="text-center">
810
- <div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border border-indigo-500/30 bg-indigo-500/20">
811
- <SunIcon className="h-8 w-8 text-indigo-400" />
844
+ <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">
845
+ <SunIcon className="text-fm-icon-info h-8 w-8" />
846
+ </div>
847
+ <div className="text-fm-icon-active text-sm font-medium">
848
+ Recommendation
812
849
  </div>
813
- <div className="text-sm font-medium text-white">Recommendation</div>
814
- <div className="text-xs text-indigo-400">text-indigo-400</div>
850
+ <div className="text-fm-icon-info text-xs">text-fm-icon-info</div>
815
851
  </div>
816
852
  <div className="text-center">
817
- <div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border border-cyan-500/30 bg-cyan-500/20">
818
- <SunIcon className="h-8 w-8 text-cyan-400" />
853
+ <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">
854
+ <SunIcon className="text-fm-icon-info h-8 w-8" />
819
855
  </div>
820
- <div className="text-sm font-medium text-white">Tip</div>
821
- <div className="text-xs text-cyan-400">text-cyan-400</div>
856
+ <div className="text-fm-icon-active text-sm font-medium">Tip</div>
857
+ <div className="text-fm-icon-info text-xs">text-fm-icon-info</div>
822
858
  </div>
823
859
  </div>
824
860
  ),
@@ -835,10 +871,10 @@ export const UsageExamples: Story = {
835
871
  },
836
872
  },
837
873
  render: () => (
838
- <div className="min-h-dvh !space-y-8 rounded-lg bg-gradient-to-br from-gray-900 to-gray-800 p-8 text-white">
874
+ <div className="from-fm-surface-primary to-fm-surface-secondary text-fm-icon-active min-h-dvh !space-y-8 rounded-lg bg-linear-to-br p-8">
839
875
  <div className="!space-y-2">
840
876
  <h3 className="text-sm font-medium">Theme Toggle Button</h3>
841
- <button className="flex items-center gap-2 rounded-lg border border-yellow-400/30 bg-yellow-400/20 px-4 py-2 text-yellow-300 transition-colors hover:bg-yellow-400/30">
877
+ <button className="border-fm-icon-warning/30 bg-fm-icon-warning/20 text-fm-icon-warning hover:bg-fm-icon-warning/30 flex items-center gap-2 rounded-lg border px-4 py-2 transition-colors">
842
878
  <SunIcon className="h-5 w-5" />
843
879
  Light Mode
844
880
  </button>
@@ -846,20 +882,20 @@ export const UsageExamples: Story = {
846
882
 
847
883
  <div className="!space-y-2">
848
884
  <h3 className="text-sm font-medium">Weather Widget</h3>
849
- <div className="flex items-center gap-3 rounded-lg border border-yellow-400/20 bg-yellow-400/10 p-4">
850
- <SunIcon className="h-6 w-6 text-yellow-300" />
885
+ <div className="border-fm-icon-warning/20 bg-fm-icon-warning/10 flex items-center gap-3 rounded-lg border p-4">
886
+ <SunIcon className="text-fm-icon-warning h-6 w-6" />
851
887
  <div>
852
888
  <p className="font-medium">Sunny</p>
853
- <span className="text-sm text-yellow-200/80">27°C / 81°F</span>
889
+ <span className="text-fm-icon-warning/80 text-sm">27°C / 81°F</span>
854
890
  </div>
855
891
  </div>
856
892
  </div>
857
893
 
858
894
  <div className="!space-y-2">
859
895
  <h3 className="text-sm font-medium">System Status</h3>
860
- <div className="flex items-center gap-2 rounded-lg border border-green-400/20 bg-green-400/10 px-4 py-2">
861
- <SunIcon className="h-4 w-4 text-green-300" />
862
- <span className="text-green-200">
896
+ <div className="border-fm-icon-positive/20 bg-fm-icon-positive/10 flex items-center gap-2 rounded-lg border px-4 py-2">
897
+ <SunIcon className="text-fm-icon-positive h-4 w-4" />
898
+ <span className="text-fm-icon-positive">
863
899
  System running at optimal performance
864
900
  </span>
865
901
  </div>
@@ -881,12 +917,12 @@ export const Playground: Story = {
881
917
  args: {
882
918
  width: 32,
883
919
  height: 32,
884
- className: "text-blue-400",
920
+ className: "text-fm-icon-info",
885
921
  strokeWidth: 1,
886
922
  },
887
923
  render: (args) => (
888
- <div className="flex h-64 min-h-dvh items-center justify-center rounded-lg bg-gradient-to-br from-gray-900 to-gray-800">
889
- <div className="rounded-lg border border-white/10 bg-white/5 p-8">
924
+ <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">
925
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-8">
890
926
  <SunIcon {...args} />
891
927
  </div>
892
928
  </div>