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
@@ -12,9 +12,9 @@ const meta: Meta<typeof FileTextIcon> = {
12
12
  backgrounds: {
13
13
  default: "dark",
14
14
  values: [
15
- { name: "dark", value: "#0a0a0a" },
16
- { name: "darker", value: "#000000" },
17
- { name: "light", value: "#ffffff" },
15
+ { name: "dark", value: "var(--color-fm-surface-primary)" },
16
+ { name: "darker", value: "var(--color-fm-neutral-0)" },
17
+ { name: "light", value: "var(--color-fm-neutral-1100)" },
18
18
  ],
19
19
  },
20
20
  docs: {
@@ -47,59 +47,59 @@ const meta: Meta<typeof FileTextIcon> = {
47
47
  background: transparent !important;
48
48
  }
49
49
  body {
50
- background: #0a0a0a !important;
50
+ background: var(--color-fm-surface-primary) !important;
51
51
  }
52
52
  #storybook-docs {
53
- background: #0a0a0a !important;
53
+ background: var(--color-fm-surface-primary) !important;
54
54
  }
55
55
  .sbdocs-preview {
56
56
  background: transparent !important;
57
57
  border: none !important;
58
58
  }
59
59
  .sbdocs-h1, .sbdocs-h2, .sbdocs-h3, .sbdocs-h4, .sbdocs-h5, .sbdocs-h6 {
60
- color: white !important;
60
+ color: var(--color-fm-icon-active) !important;
61
61
  }
62
62
  .sbdocs-p, .sbdocs-li {
63
- color: rgba(255, 255, 255, 0.7) !important;
63
+ color: var(--color-fm-secondary) !important;
64
64
  }
65
65
  .sbdocs-code {
66
- background: rgba(255, 255, 255, 0.1) !important;
67
- color: rgba(168, 85, 247, 1) !important;
68
- border: 1px solid rgba(255, 255, 255, 0.1) !important;
66
+ background: var(--color-fm-surface-secondary) !important;
67
+ color: var(--color-fm-secondary-500) !important;
68
+ border: 1px solid var(--color-fm-divider-secondary) !important;
69
69
  }
70
70
  .sbdocs-pre {
71
- background: rgba(0, 0, 0, 0.4) !important;
72
- border: 1px solid rgba(255, 255, 255, 0.1) !important;
71
+ background: var(--color-fm-surface-secondary) !important;
72
+ border: 1px solid var(--color-fm-divider-secondary) !important;
73
73
  }
74
74
  .sbdocs-table {
75
- background: rgba(255, 255, 255, 0.05) !important;
76
- border: 1px solid rgba(255, 255, 255, 0.1) !important;
75
+ background: var(--color-fm-surface-secondary) !important;
76
+ border: 1px solid var(--color-fm-divider-secondary) !important;
77
77
  }
78
78
  .sbdocs-table th {
79
- background: rgba(255, 255, 255, 0.05) !important;
80
- color: white !important;
81
- border-bottom: 1px solid rgba(255, 255, 255, 0.1) !important;
79
+ background: var(--color-fm-surface-secondary) !important;
80
+ color: var(--color-fm-icon-active) !important;
81
+ border-bottom: 1px solid var(--color-fm-divider-secondary) !important;
82
82
  }
83
83
  .sbdocs-table td {
84
- color: rgba(255, 255, 255, 0.7) !important;
85
- border-bottom: 1px solid rgba(255, 255, 255, 0.05) !important;
84
+ color: var(--color-fm-secondary) !important;
85
+ border-bottom: 1px solid var(--color-fm-divider-tertiary) !important;
86
86
  }
87
87
  `}
88
88
  </style>
89
89
 
90
- <div className="min-h-screen bg-gradient-to-br from-gray-900 via-purple-900/20 to-gray-900">
90
+ <div className="bg-fm-surface-primary min-h-screen">
91
91
  {/* Header */}
92
- <div className="relative overflow-hidden border-b border-white/10 bg-black/20 backdrop-blur-xl">
93
- <div className="absolute inset-0 bg-gradient-to-r from-purple-500/10 via-transparent to-blue-500/10" />
92
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary relative overflow-hidden border-b backdrop-blur-xl">
93
+ <div className="from-fm-secondary-500/10 to-fm-icon-info/10 absolute inset-0 bg-linear-to-r via-transparent" />
94
94
  <div className="relative !mx-auto max-w-7xl px-6 py-16">
95
95
  <div className="!space-y-6 text-center">
96
- <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-indigo-500/20">
97
- <FileTextIcon className="h-12 w-12 text-blue-400" />
96
+ <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">
97
+ <FileTextIcon className="text-fm-icon-info h-12 w-12" />
98
98
  </div>
99
- <h1 className="text-5xl font-bold !text-white">
99
+ <h1 className="text-fm-icon-active! text-5xl font-bold">
100
100
  FileTextIcon
101
101
  </h1>
102
- <p className="!mx-auto max-w-3xl text-xl leading-relaxed !text-white/70">
102
+ <p className="text-fm-secondary! !mx-auto max-w-3xl text-xl leading-relaxed">
103
103
  A document icon representing text files and documents.
104
104
  Perfect for file management interfaces, document lists, and
105
105
  text-based content indicators.
@@ -108,24 +108,28 @@ const meta: Meta<typeof FileTextIcon> = {
108
108
  {/* Stats */}
109
109
  <div className="mx-auto flex items-center justify-center gap-8">
110
110
  <div className="text-center">
111
- <div className="text-3xl font-bold text-blue-300">
111
+ <div className="text-fm-icon-info text-3xl font-bold">
112
112
  Document
113
113
  </div>
114
- <div className="text-sm text-white/80">Text files</div>
114
+ <div className="text-fm-icon-active/80 text-sm">
115
+ Text files
116
+ </div>
115
117
  </div>
116
- <div className="h-8 w-px bg-white/20" />
118
+ <div className="bg-fm-divider-primary h-8 w-px" />
117
119
  <div className="text-center">
118
- <div className="text-3xl font-bold text-indigo-300">
120
+ <div className="text-fm-icon-info text-3xl font-bold">
119
121
  Content
120
122
  </div>
121
- <div className="text-sm text-white/80">Text content</div>
123
+ <div className="text-fm-icon-active/80 text-sm">
124
+ Text content
125
+ </div>
122
126
  </div>
123
- <div className="h-8 w-px bg-white/20" />
127
+ <div className="bg-fm-divider-primary h-8 w-px" />
124
128
  <div className="text-center">
125
- <div className="text-3xl font-bold text-cyan-300">
129
+ <div className="text-fm-icon-info text-3xl font-bold">
126
130
  Accessible
127
131
  </div>
128
- <div className="text-sm text-white/80">
132
+ <div className="text-fm-icon-active/80 text-sm">
129
133
  Screen reader support
130
134
  </div>
131
135
  </div>
@@ -138,34 +142,34 @@ const meta: Meta<typeof FileTextIcon> = {
138
142
  <div className="!mx-auto flex max-w-7xl flex-col gap-6 space-y-16 px-6 py-16">
139
143
  {/* Features */}
140
144
  <div className="!space-y-8">
141
- <h3 className="text-center text-2xl font-bold !text-white">
145
+ <h3 className="text-fm-icon-active! text-center text-2xl font-bold">
142
146
  Key Features
143
147
  </h3>
144
148
  <div className="grid grid-cols-1 gap-6 md:grid-cols-2 lg:grid-cols-3">
145
- <div className="space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
149
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary space-y-4 rounded-lg border p-6">
146
150
  <div className="text-3xl">📄</div>
147
- <h4 className="text-lg font-semibold !text-white">
151
+ <h4 className="text-fm-icon-active! text-lg font-semibold">
148
152
  Document Icon
149
153
  </h4>
150
- <p className="text-sm !text-white/80">
154
+ <p className="text-fm-icon-active!/80 text-sm">
151
155
  Clear representation of text documents
152
156
  </p>
153
157
  </div>
154
- <div className="space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
158
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary space-y-4 rounded-lg border p-6">
155
159
  <div className="text-3xl">♿</div>
156
- <h4 className="text-lg font-semibold !text-white">
160
+ <h4 className="text-fm-icon-active! text-lg font-semibold">
157
161
  Accessibility
158
162
  </h4>
159
- <p className="text-sm !text-white/80">
163
+ <p className="text-fm-icon-active!/80 text-sm">
160
164
  Built with screen reader support
161
165
  </p>
162
166
  </div>
163
- <div className="space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
167
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary space-y-4 rounded-lg border p-6">
164
168
  <div className="text-3xl">🎨</div>
165
- <h4 className="text-lg font-semibold !text-white">
169
+ <h4 className="text-fm-icon-active! text-lg font-semibold">
166
170
  Customizable
167
171
  </h4>
168
- <p className="text-sm !text-white/80">
172
+ <p className="text-fm-icon-active!/80 text-sm">
169
173
  Flexible styling options
170
174
  </p>
171
175
  </div>
@@ -174,43 +178,45 @@ const meta: Meta<typeof FileTextIcon> = {
174
178
 
175
179
  {/* API Reference */}
176
180
  <div className="!space-y-8">
177
- <h3 className="text-center text-2xl font-bold !text-white">
181
+ <h3 className="text-fm-icon-active! text-center text-2xl font-bold">
178
182
  API Reference
179
183
  </h3>
180
- <div className="overflow-hidden rounded-lg border border-white/10 bg-white/5">
181
- <div className="bg-white/5 p-4">
182
- <h4 className="text-lg font-semibold !text-white">Props</h4>
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
+ <h4 className="text-fm-icon-active! text-lg font-semibold">
187
+ Props
188
+ </h4>
183
189
  </div>
184
190
  <table className="!my-0 w-full">
185
- <thead className="bg-white/5">
186
- <tr className="border-b border-white/10">
187
- <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">
188
194
  Prop
189
195
  </th>
190
- <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">
191
197
  Type
192
198
  </th>
193
- <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">
194
200
  Default
195
201
  </th>
196
- <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">
197
203
  Description
198
204
  </th>
199
205
  </tr>
200
206
  </thead>
201
207
  <tbody>
202
208
  {" "}
203
- <tr className="!bg-black/10">
204
- <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">
205
211
  withAccessibility
206
212
  </td>
207
- <td className="px-6 py-4 text-sm !text-white/70">
213
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
208
214
  boolean
209
215
  </td>
210
- <td className="px-6 py-4 text-sm !text-white/50">
216
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
211
217
  true
212
218
  </td>
213
- <td className="px-6 py-4 text-sm !text-white/70">
219
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
214
220
  Whether to wrap the icon with accessibility feature
215
221
  </td>
216
222
  </tr>
@@ -221,17 +227,17 @@ const meta: Meta<typeof FileTextIcon> = {
221
227
 
222
228
  {/* Usage Examples */}
223
229
  <div className="!space-y-8">
224
- <h3 className="text-center text-2xl font-bold !text-white">
230
+ <h3 className="text-fm-icon-active! text-center text-2xl font-bold">
225
231
  Usage Examples
226
232
  </h3>
227
233
 
228
234
  <div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
229
235
  <div className="space-y-4">
230
- <h4 className="text-lg font-semibold !text-blue-300">
236
+ <h4 className="text-fm-icon-info! text-lg font-semibold">
231
237
  Basic Usage
232
238
  </h4>
233
- <div className="rounded-lg bg-black/40 p-4">
234
- <pre className="overflow-x-auto text-sm !text-green-300">
239
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
240
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
235
241
  {`import { FileTextIcon } from "@/components/ui/icons/file-text-icon"
236
242
 
237
243
  function DocumentButton() {
@@ -247,12 +253,12 @@ function DocumentButton() {
247
253
  </div>
248
254
 
249
255
  <div className="space-y-4">
250
- <h4 className="text-lg font-semibold !text-blue-300">
256
+ <h4 className="text-fm-icon-info! text-lg font-semibold">
251
257
  Live Preview
252
258
  </h4>
253
- <div className="flex h-32 items-center justify-center rounded-lg border border-white/10 bg-white/5">
254
- <button className="flex items-center gap-2 rounded-lg border border-blue-500/20 bg-blue-500/10 px-4 py-2 text-white transition-colors hover:bg-blue-500/20">
255
- <FileTextIcon className="h-4 w-4 text-blue-400" />
259
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary flex h-32 items-center justify-center rounded-lg border">
260
+ <button className="border-fm-icon-info/20 bg-fm-icon-info/10 text-fm-icon-active hover:bg-fm-icon-info/20 flex items-center gap-2 rounded-lg border px-4 py-2 transition-colors">
261
+ <FileTextIcon className="text-fm-icon-info h-4 w-4" />
256
262
  <span>Open Document</span>
257
263
  </button>
258
264
  </div>
@@ -262,50 +268,62 @@ function DocumentButton() {
262
268
 
263
269
  {/* Size Examples */}
264
270
  <div className="!space-y-8">
265
- <h3 className="text-center text-2xl font-bold !text-white">
271
+ <h3 className="text-fm-icon-active! text-center text-2xl font-bold">
266
272
  Size Examples
267
273
  </h3>
268
- <div className="rounded-lg border border-white/10 bg-white/5 p-8">
274
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-8">
269
275
  <div className="!space-y-6">
270
276
  <div className="grid grid-cols-1 gap-8 md:grid-cols-2">
271
277
  <div className="!space-y-4">
272
- <h3 className="text-lg font-semibold !text-blue-300">
278
+ <h3 className="text-fm-icon-info! text-lg font-semibold">
273
279
  Standard Sizes
274
280
  </h3>
275
- <div className="flex items-end gap-6 rounded-lg bg-black/20 p-6">
281
+ <div className="bg-fm-surface-secondary flex items-end gap-6 rounded-lg p-6">
276
282
  <div className="text-center">
277
- <FileTextIcon className="!mx-auto mb-2 h-3 w-3 text-blue-400" />
278
- <span className="text-xs text-white/60">12px</span>
283
+ <FileTextIcon className="text-fm-icon-info !mx-auto mb-2 h-3 w-3" />
284
+ <span className="text-fm-tertiary text-xs">
285
+ 12px
286
+ </span>
279
287
  </div>
280
288
  <div className="text-center">
281
- <FileTextIcon className="!mx-auto mb-2 h-4 w-4 text-blue-400" />
282
- <span className="text-xs text-white/60">16px</span>
289
+ <FileTextIcon className="text-fm-icon-info !mx-auto mb-2 h-4 w-4" />
290
+ <span className="text-fm-tertiary text-xs">
291
+ 16px
292
+ </span>
283
293
  </div>
284
294
  <div className="text-center">
285
- <FileTextIcon className="!mx-auto mb-2 h-5 w-5 text-blue-400" />
286
- <span className="text-xs text-white/60">20px</span>
295
+ <FileTextIcon className="text-fm-icon-info !mx-auto mb-2 h-5 w-5" />
296
+ <span className="text-fm-tertiary text-xs">
297
+ 20px
298
+ </span>
287
299
  </div>
288
300
  <div className="text-center">
289
- <FileTextIcon className="!mx-auto mb-2 h-6 w-6 text-blue-400" />
290
- <span className="text-xs text-white/60">24px</span>
301
+ <FileTextIcon className="text-fm-icon-info !mx-auto mb-2 h-6 w-6" />
302
+ <span className="text-fm-tertiary text-xs">
303
+ 24px
304
+ </span>
291
305
  </div>
292
306
  <div className="text-center">
293
- <FileTextIcon className="!mx-auto mb-2 h-8 w-8 text-blue-400" />
294
- <span className="text-xs text-white/60">32px</span>
307
+ <FileTextIcon className="text-fm-icon-info !mx-auto mb-2 h-8 w-8" />
308
+ <span className="text-fm-tertiary text-xs">
309
+ 32px
310
+ </span>
295
311
  </div>
296
312
  <div className="text-center">
297
- <FileTextIcon className="!mx-auto mb-2 h-12 w-12 text-blue-400" />
298
- <span className="text-xs text-white/60">48px</span>
313
+ <FileTextIcon className="text-fm-icon-info !mx-auto mb-2 h-12 w-12" />
314
+ <span className="text-fm-tertiary text-xs">
315
+ 48px
316
+ </span>
299
317
  </div>
300
318
  </div>
301
319
  </div>
302
320
 
303
321
  <div className="!space-y-4">
304
- <h3 className="text-lg font-semibold !text-blue-300">
322
+ <h3 className="text-fm-icon-info! text-lg font-semibold">
305
323
  Code Example
306
324
  </h3>
307
- <div className="rounded-lg bg-black/40 p-4">
308
- <pre className="overflow-x-auto text-sm !text-green-300">
325
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
326
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
309
327
  {`// Small (16px)
310
328
  <FileTextIcon className="h-4 w-4" />
311
329
 
@@ -327,34 +345,34 @@ function DocumentButton() {
327
345
 
328
346
  {/* Common Use Cases */}
329
347
  <div className="!space-y-8">
330
- <h3 className="text-center text-2xl font-bold !text-white">
348
+ <h3 className="text-fm-icon-active! text-center text-2xl font-bold">
331
349
  Common Use Cases
332
350
  </h3>
333
351
  <div className="grid grid-cols-1 gap-6 md:grid-cols-2 lg:grid-cols-3">
334
- <div className="space-y-3 rounded-lg border border-white/10 bg-white/5 p-6">
352
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary space-y-3 rounded-lg border p-6">
335
353
  <div className="text-2xl">📄</div>
336
- <h4 className="text-lg font-semibold !text-white">
354
+ <h4 className="text-fm-icon-active! text-lg font-semibold">
337
355
  File Management
338
356
  </h4>
339
- <p className="text-sm !text-white/80">
357
+ <p className="text-fm-icon-active!/80 text-sm">
340
358
  Document lists and file browsers
341
359
  </p>
342
360
  </div>
343
- <div className="space-y-3 rounded-lg border border-white/10 bg-white/5 p-6">
361
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary space-y-3 rounded-lg border p-6">
344
362
  <div className="text-2xl">📝</div>
345
- <h4 className="text-lg font-semibold !text-white">
363
+ <h4 className="text-fm-icon-active! text-lg font-semibold">
346
364
  Text Editors
347
365
  </h4>
348
- <p className="text-sm !text-white/80">
366
+ <p className="text-fm-icon-active!/80 text-sm">
349
367
  Document editing interfaces
350
368
  </p>
351
369
  </div>
352
- <div className="space-y-3 rounded-lg border border-white/10 bg-white/5 p-6">
370
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary space-y-3 rounded-lg border p-6">
353
371
  <div className="text-2xl">📚</div>
354
- <h4 className="text-lg font-semibold !text-white">
372
+ <h4 className="text-fm-icon-active! text-lg font-semibold">
355
373
  Content Management
356
374
  </h4>
357
- <p className="text-sm !text-white/80">
375
+ <p className="text-fm-icon-active!/80 text-sm">
358
376
  Content organization systems
359
377
  </p>
360
378
  </div>
@@ -363,50 +381,50 @@ function DocumentButton() {
363
381
 
364
382
  {/* Best Practices */}
365
383
  <div className="!space-y-8">
366
- <h3 className="text-center text-2xl font-bold !text-white">
384
+ <h3 className="text-fm-icon-active! text-center text-2xl font-bold">
367
385
  Best Practices
368
386
  </h3>
369
387
  <div className="grid grid-cols-1 gap-6 md:grid-cols-2">
370
- <div className="space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
371
- <h4 className="text-lg font-semibold !text-emerald-300">
388
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary space-y-4 rounded-lg border p-6">
389
+ <h4 className="text-fm-icon-positive! text-lg font-semibold">
372
390
  ✅ Do
373
391
  </h4>
374
- <ul className="space-y-2 text-sm !text-white/80">
375
- <li className="!text-white/80">
392
+ <ul className="text-fm-icon-active!/80 space-y-2 text-sm">
393
+ <li className="text-fm-icon-active!/80">
376
394
  Use appropriate sizes for different contexts
377
395
  </li>
378
- <li className="!text-white/80">
396
+ <li className="text-fm-icon-active!/80">
379
397
  Choose colors that match your UI theme
380
398
  </li>
381
- <li className="!text-white/80">
399
+ <li className="text-fm-icon-active!/80">
382
400
  Provide clear labels for icon buttons
383
401
  </li>
384
- <li className="!text-white/80">
402
+ <li className="text-fm-icon-active!/80">
385
403
  Use consistent styling across your app
386
404
  </li>
387
- <li className="!text-white/80">
405
+ <li className="text-fm-icon-active!/80">
388
406
  Consider accessibility in all implementations
389
407
  </li>
390
408
  </ul>
391
409
  </div>
392
- <div className="space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
393
- <h4 className="text-lg font-semibold !text-red-300">
410
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary space-y-4 rounded-lg border p-6">
411
+ <h4 className="text-fm-icon-negative! text-lg font-semibold">
394
412
  ❌ Don't
395
413
  </h4>
396
- <ul className="space-y-2 text-sm !text-white/80">
397
- <li className="!text-white/80">
414
+ <ul className="text-fm-icon-active!/80 space-y-2 text-sm">
415
+ <li className="text-fm-icon-active!/80">
398
416
  Use multiple icon styles in the same view
399
417
  </li>
400
- <li className="!text-white/80">
418
+ <li className="text-fm-icon-active!/80">
401
419
  Overuse the icon in navigation
402
420
  </li>
403
- <li className="!text-white/80">
421
+ <li className="text-fm-icon-active!/80">
404
422
  Use inappropriate sizes for the context
405
423
  </li>
406
- <li className="!text-white/80">
424
+ <li className="text-fm-icon-active!/80">
407
425
  Forget to add hover states
408
426
  </li>
409
- <li className="!text-white/80">
427
+ <li className="text-fm-icon-active!/80">
410
428
  Ignore accessibility requirements
411
429
  </li>
412
430
  </ul>
@@ -416,68 +434,72 @@ function DocumentButton() {
416
434
  </div>
417
435
 
418
436
  <div className="!space-y-8 p-7">
419
- <h2 className="text-center text-3xl font-bold !text-white">
437
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
420
438
  Related Icons
421
439
  </h2>
422
440
  <div className="grid grid-cols-2 gap-6 md:grid-cols-4">
423
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
424
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-blue-500/20">
425
- <ArrowRightUpIcon className="h-6 w-6 rotate-90 text-blue-400" />
441
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
442
+ <div className="bg-fm-icon-info/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
443
+ <ArrowRightUpIcon className="text-fm-icon-info h-6 w-6 rotate-90" />
426
444
  </div>
427
445
  <div>
428
- <div className="font-medium text-white">
446
+ <div className="text-fm-icon-active font-medium">
429
447
  ArrowRightDownIcon
430
448
  </div>
431
- <div className="text-xs text-white/60">
449
+ <div className="text-fm-tertiary text-xs">
432
450
  Download/decrease
433
451
  </div>
434
452
  </div>
435
453
  </div>
436
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
437
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-cyan-500/20">
438
- <ArrowRightUpIcon className="h-6 w-6 -rotate-90 text-cyan-400" />
454
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
455
+ <div className="bg-fm-icon-info/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
456
+ <ArrowRightUpIcon className="text-fm-icon-info h-6 w-6 -rotate-90" />
439
457
  </div>
440
458
  <div>
441
- <div className="font-medium text-white">
459
+ <div className="text-fm-icon-active font-medium">
442
460
  ArrowLeftUpIcon
443
461
  </div>
444
- <div className="text-xs text-white/60">Back and up</div>
462
+ <div className="text-fm-tertiary text-xs">Back and up</div>
445
463
  </div>
446
464
  </div>
447
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
448
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-green-500/20">
465
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
466
+ <div className="bg-fm-icon-positive/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
449
467
  <span className="text-2xl">↗️</span>
450
468
  </div>
451
469
  <div>
452
- <div className="font-medium text-white">
470
+ <div className="text-fm-icon-active font-medium">
453
471
  ExternalLinkIcon
454
472
  </div>
455
- <div className="text-xs text-white/60">
473
+ <div className="text-fm-tertiary text-xs">
456
474
  Alternative style
457
475
  </div>
458
476
  </div>
459
477
  </div>
460
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
461
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-purple-500/20">
478
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
479
+ <div className="bg-fm-secondary-500/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
462
480
  <span className="text-2xl">📈</span>
463
481
  </div>
464
482
  <div>
465
- <div className="font-medium text-white">TrendingUpIcon</div>
466
- <div className="text-xs text-white/60">Growth metrics</div>
483
+ <div className="text-fm-icon-active font-medium">
484
+ TrendingUpIcon
485
+ </div>
486
+ <div className="text-fm-tertiary text-xs">
487
+ Growth metrics
488
+ </div>
467
489
  </div>
468
490
  </div>
469
491
  </div>
470
492
  </div>
471
493
 
472
494
  {/* Footer */}
473
- <div className="border-t border-white/10 bg-black/20 backdrop-blur-xl">
495
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary border-t backdrop-blur-xl">
474
496
  <div className="!mx-auto max-w-7xl px-6 py-8">
475
497
  <div className="!space-y-4 text-center">
476
- <p className="!text-white/60">
498
+ <p className="text-fm-tertiary!">
477
499
  FileTextIcon is part of the Aural UI icon library, designed
478
500
  for document and text file interfaces.
479
501
  </p>
480
- <p className="text-sm !text-white/40">
502
+ <p className="text-fm-placeholder! text-sm">
481
503
  Perfect for file management, document editors, content
482
504
  management systems, and any interface requiring text
483
505
  document representation.
@@ -519,8 +541,8 @@ const storyParameters = {
519
541
  backgrounds: {
520
542
  default: "dark",
521
543
  values: [
522
- { name: "dark", value: "#0a0a0a" },
523
- { name: "darker", value: "#000000" },
544
+ { name: "dark", value: "var(--color-fm-surface-primary)" },
545
+ { name: "darker", value: "var(--color-fm-neutral-0)" },
524
546
  ],
525
547
  },
526
548
  }
@@ -529,12 +551,12 @@ export const Default: Story = {
529
551
  args: {
530
552
  width: 24,
531
553
  height: 24,
532
- className: "text-blue-400",
554
+ className: "text-fm-icon-info",
533
555
  withAccessibility: true,
534
556
  },
535
557
  parameters: storyParameters,
536
558
  render: (args) => (
537
- <div className="flex h-32 min-h-dvh items-center justify-center rounded-lg bg-gradient-to-br from-gray-900 to-gray-800">
559
+ <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">
538
560
  <FileTextIcon {...args} />
539
561
  </div>
540
562
  ),
@@ -551,30 +573,30 @@ export const SizeVariations: Story = {
551
573
  },
552
574
  },
553
575
  render: () => (
554
- <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">
576
+ <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">
555
577
  <div className="text-center">
556
- <FileTextIcon className="!mx-auto mb-2 h-3 w-3 text-blue-400" />
557
- <span className="text-xs text-white/60">12px</span>
578
+ <FileTextIcon className="text-fm-icon-info !mx-auto mb-2 h-3 w-3" />
579
+ <span className="text-fm-tertiary text-xs">12px</span>
558
580
  </div>
559
581
  <div className="text-center">
560
- <FileTextIcon className="!mx-auto mb-2 h-4 w-4 text-blue-400" />
561
- <span className="text-xs text-white/60">16px</span>
582
+ <FileTextIcon className="text-fm-icon-info !mx-auto mb-2 h-4 w-4" />
583
+ <span className="text-fm-tertiary text-xs">16px</span>
562
584
  </div>
563
585
  <div className="text-center">
564
- <FileTextIcon className="!mx-auto mb-2 h-5 w-5 text-blue-400" />
565
- <span className="text-xs text-white/60">20px</span>
586
+ <FileTextIcon className="text-fm-icon-info !mx-auto mb-2 h-5 w-5" />
587
+ <span className="text-fm-tertiary text-xs">20px</span>
566
588
  </div>
567
589
  <div className="text-center">
568
- <FileTextIcon className="!mx-auto mb-2 h-6 w-6 text-blue-400" />
569
- <span className="text-xs text-white/60">24px</span>
590
+ <FileTextIcon className="text-fm-icon-info !mx-auto mb-2 h-6 w-6" />
591
+ <span className="text-fm-tertiary text-xs">24px</span>
570
592
  </div>
571
593
  <div className="text-center">
572
- <FileTextIcon className="!mx-auto mb-2 h-8 w-8 text-blue-400" />
573
- <span className="text-xs text-white/60">32px</span>
594
+ <FileTextIcon className="text-fm-icon-info !mx-auto mb-2 h-8 w-8" />
595
+ <span className="text-fm-tertiary text-xs">32px</span>
574
596
  </div>
575
597
  <div className="text-center">
576
- <FileTextIcon className="!mx-auto mb-2 h-12 w-12 text-blue-400" />
577
- <span className="text-xs text-white/60">48px</span>
598
+ <FileTextIcon className="text-fm-icon-info !mx-auto mb-2 h-12 w-12" />
599
+ <span className="text-fm-tertiary text-xs">48px</span>
578
600
  </div>
579
601
  </div>
580
602
  ),
@@ -591,26 +613,26 @@ export const ColorVariations: Story = {
591
613
  },
592
614
  },
593
615
  render: () => (
594
- <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">
616
+ <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">
595
617
  <div className="text-center">
596
- <FileTextIcon className="!mx-auto mb-2 h-6 w-6 text-blue-400" />
597
- <span className="text-xs text-white/60">Blue</span>
618
+ <FileTextIcon className="text-fm-icon-info !mx-auto mb-2 h-6 w-6" />
619
+ <span className="text-fm-tertiary text-xs">Blue</span>
598
620
  </div>
599
621
  <div className="text-center">
600
- <FileTextIcon className="!mx-auto mb-2 h-6 w-6 text-purple-400" />
601
- <span className="text-xs text-white/60">Purple</span>
622
+ <FileTextIcon className="text-fm-secondary-600 !mx-auto mb-2 h-6 w-6" />
623
+ <span className="text-fm-tertiary text-xs">Purple</span>
602
624
  </div>
603
625
  <div className="text-center">
604
- <FileTextIcon className="!mx-auto mb-2 h-6 w-6 text-green-400" />
605
- <span className="text-xs text-white/60">Green</span>
626
+ <FileTextIcon className="text-fm-icon-positive !mx-auto mb-2 h-6 w-6" />
627
+ <span className="text-fm-tertiary text-xs">Green</span>
606
628
  </div>
607
629
  <div className="text-center">
608
- <FileTextIcon className="!mx-auto mb-2 h-6 w-6 text-red-400" />
609
- <span className="text-xs text-white/60">Red</span>
630
+ <FileTextIcon className="text-fm-icon-negative !mx-auto mb-2 h-6 w-6" />
631
+ <span className="text-fm-tertiary text-xs">Red</span>
610
632
  </div>
611
633
  <div className="text-center">
612
- <FileTextIcon className="!mx-auto mb-2 h-6 w-6 text-yellow-400" />
613
- <span className="text-xs text-white/60">Yellow</span>
634
+ <FileTextIcon className="text-fm-icon-warning !mx-auto mb-2 h-6 w-6" />
635
+ <span className="text-fm-tertiary text-xs">Yellow</span>
614
636
  </div>
615
637
  </div>
616
638
  ),
@@ -626,25 +648,25 @@ export const UsageExamples: Story = {
626
648
  },
627
649
  },
628
650
  render: () => (
629
- <div className="flex h-64 min-h-dvh flex-col items-center justify-center gap-8 rounded-lg bg-gradient-to-br from-gray-900 to-gray-800 p-8">
651
+ <div className="from-fm-surface-primary to-fm-surface-secondary flex h-64 min-h-dvh flex-col items-center justify-center gap-8 rounded-lg bg-linear-to-br p-8">
630
652
  <div className="flex items-center gap-4">
631
- <button className="flex items-center gap-2 rounded-lg border border-blue-500/20 bg-blue-500/10 px-4 py-2 text-white transition-colors hover:bg-blue-500/20">
632
- <FileTextIcon className="h-4 w-4 text-blue-400" />
653
+ <button className="border-fm-icon-info/20 bg-fm-icon-info/10 text-fm-icon-active hover:bg-fm-icon-info/20 flex items-center gap-2 rounded-lg border px-4 py-2 transition-colors">
654
+ <FileTextIcon className="text-fm-icon-info h-4 w-4" />
633
655
  <span>New Document</span>
634
656
  </button>
635
- <button className="flex items-center gap-2 rounded-lg border border-purple-500/20 bg-purple-500/10 px-4 py-2 text-white transition-colors hover:bg-purple-500/20">
636
- <FileTextIcon className="h-4 w-4 text-purple-400" />
657
+ <button className="border-fm-secondary-500/20 bg-fm-secondary-500/10 text-fm-icon-active hover:bg-fm-secondary-500/20 flex items-center gap-2 rounded-lg border px-4 py-2 transition-colors">
658
+ <FileTextIcon className="text-fm-secondary-600 h-4 w-4" />
637
659
  <span>Open Document</span>
638
660
  </button>
639
661
  </div>
640
662
  <div className="flex items-center gap-4">
641
- <div className="flex items-center gap-2 rounded-lg border border-white/10 bg-white/5 px-4 py-2">
642
- <FileTextIcon className="h-4 w-4 text-green-400" />
643
- <span className="text-white/80">Document 1</span>
663
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary flex items-center gap-2 rounded-lg border px-4 py-2">
664
+ <FileTextIcon className="text-fm-icon-positive h-4 w-4" />
665
+ <span className="text-fm-icon-active/80">Document 1</span>
644
666
  </div>
645
- <div className="flex items-center gap-2 rounded-lg border border-white/10 bg-white/5 px-4 py-2">
646
- <FileTextIcon className="h-4 w-4 text-blue-400" />
647
- <span className="text-white/80">Document 2</span>
667
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary flex items-center gap-2 rounded-lg border px-4 py-2">
668
+ <FileTextIcon className="text-fm-icon-info h-4 w-4" />
669
+ <span className="text-fm-icon-active/80">Document 2</span>
648
670
  </div>
649
671
  </div>
650
672
  </div>
@@ -664,11 +686,11 @@ export const Playground: Story = {
664
686
  args: {
665
687
  width: 32,
666
688
  height: 32,
667
- className: "text-blue-400",
689
+ className: "text-fm-icon-info",
668
690
  },
669
691
  render: (args) => (
670
- <div className="flex h-64 min-h-dvh items-center justify-center rounded-lg bg-gradient-to-br from-gray-900 to-gray-800">
671
- <div className="rounded-lg border border-white/10 bg-white/5 p-8">
692
+ <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">
693
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-8">
672
694
  <FileTextIcon {...args} />
673
695
  </div>
674
696
  </div>