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 TwitterXIcon> = {
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 TwitterXIcon> = {
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-slate-900/20 to-gray-900">
83
+ <div className="from-fm-surface-primary via-fm-surface-secondary/20 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-slate-500/10 via-transparent to-gray-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-surface-tertiary/10 to-fm-surface-tertiary/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-slate-500/30 bg-gradient-to-br from-slate-500/20 to-gray-500/20">
90
- <TwitterXIcon className="h-12 w-12 text-white" />
89
+ <div className="border-fm-divider-primary from-fm-surface-tertiary/20 to-fm-surface-tertiary/20 !mx-auto flex h-24 w-24 items-center justify-center rounded-2xl border bg-linear-to-br">
90
+ <TwitterXIcon className="text-fm-icon-active h-12 w-12" />
91
91
  </div>
92
- <h1 className="text-5xl font-bold !text-white">
92
+ <h1 className="text-fm-icon-active! text-5xl font-bold">
93
93
  TwitterXIcon
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
  The official Twitter X brand icon featuring the distinctive
97
97
  "X" logo. Essential for social media integration, sharing
98
98
  buttons, profile links, social login options, and any
@@ -102,28 +102,28 @@ const meta: Meta<typeof TwitterXIcon> = {
102
102
  {/* Stats */}
103
103
  <div className="flex items-center justify-center gap-8 pt-8">
104
104
  <div className="text-center">
105
- <div className="text-3xl font-bold text-slate-300">
105
+ <div className="text-fm-secondary text-3xl font-bold">
106
106
  Social Media
107
107
  </div>
108
- <div className="text-sm text-white/60">
108
+ <div className="text-fm-tertiary text-sm">
109
109
  Platform integration
110
110
  </div>
111
111
  </div>
112
- <div className="h-8 w-px bg-white/20" />
112
+ <div className="bg-fm-divider-primary h-8 w-px" />
113
113
  <div className="text-center">
114
- <div className="text-3xl font-bold text-gray-300">
114
+ <div className="text-fm-secondary text-3xl font-bold">
115
115
  Brand Recognition
116
116
  </div>
117
- <div className="text-sm text-white/60">
117
+ <div className="text-fm-tertiary text-sm">
118
118
  Official identity
119
119
  </div>
120
120
  </div>
121
- <div className="h-8 w-px bg-white/20" />
121
+ <div className="bg-fm-divider-primary h-8 w-px" />
122
122
  <div className="text-center">
123
- <div className="text-3xl font-bold text-zinc-300">
123
+ <div className="text-fm-secondary text-3xl font-bold">
124
124
  Universal
125
125
  </div>
126
- <div className="text-sm text-white/60">
126
+ <div className="text-fm-tertiary text-sm">
127
127
  Global platform
128
128
  </div>
129
129
  </div>
@@ -136,16 +136,16 @@ const meta: Meta<typeof TwitterXIcon> = {
136
136
  <div className="!mx-auto max-w-7xl !space-y-16 px-6 py-12">
137
137
  {/* Quick Usage */}
138
138
  <div className="!space-y-8">
139
- <h2 className="text-center text-3xl font-bold !text-white">
139
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
140
140
  Quick Start
141
141
  </h2>
142
142
  <div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
143
143
  <div className="!space-y-4">
144
- <h3 className="text-xl font-semibold !text-slate-300">
144
+ <h3 className="text-fm-secondary! text-xl font-semibold">
145
145
  Basic Usage
146
146
  </h3>
147
- <div className="rounded-lg bg-black/40 p-4">
148
- <pre className="overflow-x-auto text-sm !text-green-300">
147
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
148
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
149
149
  {`import { TwitterXIcon } from "@icons/twitter-x-icon"
150
150
 
151
151
  function ShareButton() {
@@ -165,13 +165,13 @@ function ShareButton() {
165
165
  </div>
166
166
 
167
167
  <div className="!space-y-4">
168
- <h3 className="text-xl font-semibold !text-slate-300">
168
+ <h3 className="text-fm-secondary! text-xl font-semibold">
169
169
  Live Preview
170
170
  </h3>
171
- <div className="flex h-32 items-center justify-center rounded-lg border border-white/10 bg-white/5">
172
- <button className="flex items-center gap-2 rounded-lg border border-slate-500/20 bg-black px-4 py-2 transition-colors hover:bg-gray-800">
173
- <TwitterXIcon className="h-5 w-5 text-white" />
174
- <span className="font-medium text-white">
171
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary flex h-32 items-center justify-center rounded-lg border">
172
+ <button className="border-fm-divider-secondary bg-fm-surface-primary hover:bg-fm-surface-secondary flex items-center gap-2 rounded-lg border px-4 py-2 transition-colors">
173
+ <TwitterXIcon className="text-fm-icon-active h-5 w-5" />
174
+ <span className="text-fm-icon-active font-medium">
175
175
  Share on X
176
176
  </span>
177
177
  </button>
@@ -182,108 +182,116 @@ function ShareButton() {
182
182
 
183
183
  {/* Props Documentation */}
184
184
  <div className="!space-y-8">
185
- <h2 className="text-center text-3xl font-bold !text-white">
185
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
186
186
  Props & Configuration
187
187
  </h2>
188
188
 
189
- <div className="overflow-hidden rounded-lg border border-white/10 bg-white/5">
190
- <div className="bg-white/5 p-4">
191
- <h3 className="text-xl font-semibold !text-white">Props</h3>
189
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary overflow-hidden rounded-lg border">
190
+ <div className="bg-fm-surface-secondary p-4">
191
+ <h3 className="text-fm-icon-active! text-xl font-semibold">
192
+ Props
193
+ </h3>
192
194
  </div>
193
195
  <table className="!my-0 w-full">
194
- <thead className="bg-white/5">
195
- <tr className="border-b border-white/10">
196
- <th className="px-6 py-4 text-left text-sm font-semibold !text-white">
196
+ <thead className="bg-fm-surface-secondary">
197
+ <tr className="border-fm-divider-secondary border-b">
198
+ <th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
197
199
  Prop
198
200
  </th>
199
- <th className="px-6 py-4 text-left text-sm font-semibold !text-white">
201
+ <th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
200
202
  Type
201
203
  </th>
202
- <th className="px-6 py-4 text-left text-sm font-semibold !text-white">
204
+ <th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
203
205
  Default
204
206
  </th>
205
- <th className="px-6 py-4 text-left text-sm font-semibold !text-white">
207
+ <th className="text-fm-icon-active! px-6 py-4 text-left text-sm font-semibold">
206
208
  Description
207
209
  </th>
208
210
  </tr>
209
211
  </thead>
210
212
  <tbody>
211
213
  {" "}
212
- <tr className="!bg-black/10">
213
- <td className="px-6 py-4 font-mono text-sm !text-blue-300">
214
+ <tr className="bg-fm-surface-secondary!">
215
+ <td className="text-fm-icon-info! px-6 py-4 font-mono text-sm">
214
216
  withAccessibility
215
217
  </td>
216
- <td className="px-6 py-4 text-sm !text-white/70">
218
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
217
219
  boolean
218
220
  </td>
219
- <td className="px-6 py-4 text-sm !text-white/50">
221
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
220
222
  true
221
223
  </td>
222
- <td className="px-6 py-4 text-sm !text-white/70">
224
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
223
225
  Whether to wrap the icon with accessibility feature
224
226
  </td>
225
227
  </tr>
226
- <tr className="border-b border-white/5 !bg-black/10">
227
- <td className="px-6 py-4 font-mono text-sm !text-slate-300">
228
+ <tr className="border-fm-divider-tertiary bg-fm-surface-secondary! border-b">
229
+ <td className="text-fm-secondary! px-6 py-4 font-mono text-sm">
228
230
  height
229
231
  </td>
230
- <td className="px-6 py-4 text-sm !text-white/70">
232
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
231
233
  number | string
232
234
  </td>
233
- <td className="px-6 py-4 text-sm !text-white/50">
235
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
234
236
  auto
235
237
  </td>
236
- <td className="px-6 py-4 text-sm !text-white/70">
238
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
237
239
  Height of the icon (maintains aspect ratio)
238
240
  </td>
239
241
  </tr>
240
- <tr className="border-b border-white/5">
241
- <td className="px-6 py-4 font-mono text-sm !text-slate-300">
242
+ <tr className="border-fm-divider-tertiary border-b">
243
+ <td className="text-fm-secondary! px-6 py-4 font-mono text-sm">
242
244
  fill
243
245
  </td>
244
- <td className="px-6 py-4 text-sm !text-white/70">
246
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
245
247
  string
246
248
  </td>
247
- <td className="px-6 py-4 text-sm !text-white/50">
249
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
248
250
  currentColor
249
251
  </td>
250
- <td className="px-6 py-4 text-sm !text-white/70">
252
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
251
253
  Fill color of the X logo
252
254
  </td>
253
255
  </tr>
254
- <tr className="border-b border-white/5 !bg-black/10">
255
- <td className="px-6 py-4 font-mono text-sm !text-slate-300">
256
+ <tr className="border-fm-divider-tertiary bg-fm-surface-secondary! border-b">
257
+ <td className="text-fm-secondary! px-6 py-4 font-mono text-sm">
256
258
  className
257
259
  </td>
258
- <td className="px-6 py-4 text-sm !text-white/70">
260
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
259
261
  string
260
262
  </td>
261
- <td className="px-6 py-4 text-sm !text-white/50">-</td>
262
- <td className="px-6 py-4 text-sm !text-white/70">
263
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
264
+ -
265
+ </td>
266
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
263
267
  CSS classes for styling and sizing
264
268
  </td>
265
269
  </tr>
266
- <tr className="border-b border-white/5">
267
- <td className="px-6 py-4 font-mono text-sm !text-slate-300">
270
+ <tr className="border-fm-divider-tertiary border-b">
271
+ <td className="text-fm-secondary! px-6 py-4 font-mono text-sm">
268
272
  onClick
269
273
  </td>
270
- <td className="px-6 py-4 text-sm !text-white/70">
274
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
271
275
  function
272
276
  </td>
273
- <td className="px-6 py-4 text-sm !text-white/50">-</td>
274
- <td className="px-6 py-4 text-sm !text-white/70">
277
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
278
+ -
279
+ </td>
280
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
275
281
  Click handler for social interactions
276
282
  </td>
277
283
  </tr>
278
- <tr className="!bg-black/10">
279
- <td className="px-6 py-4 font-mono text-sm !text-slate-300">
284
+ <tr className="bg-fm-surface-secondary!">
285
+ <td className="text-fm-secondary! px-6 py-4 font-mono text-sm">
280
286
  ...svgProps
281
287
  </td>
282
- <td className="px-6 py-4 text-sm !text-white/70">
288
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
283
289
  SVGProps
284
290
  </td>
285
- <td className="px-6 py-4 text-sm !text-white/50">-</td>
286
- <td className="px-6 py-4 text-sm !text-white/70">
291
+ <td className="text-fm-placeholder! px-6 py-4 text-sm">
292
+ -
293
+ </td>
294
+ <td className="text-fm-secondary! px-6 py-4 text-sm">
287
295
  All standard SVG element props
288
296
  </td>
289
297
  </tr>
@@ -291,8 +299,8 @@ function ShareButton() {
291
299
  </table>
292
300
  </div>
293
301
 
294
- <div className="rounded-lg border border-slate-500/20 bg-slate-500/10 p-4">
295
- <div className="flex items-center gap-2 text-sm text-slate-200">
302
+ <div className="border-fm-divider-secondary bg-fm-icon-inactive/10 rounded-lg border p-4">
303
+ <div className="text-fm-secondary flex items-center gap-2 text-sm">
296
304
  <TwitterXIcon className="h-4 w-4" />
297
305
  <span>
298
306
  <strong>Brand Guidelines:</strong> Follow Twitter/X's
@@ -305,50 +313,62 @@ function ShareButton() {
305
313
 
306
314
  {/* Size Variations */}
307
315
  <div className="!space-y-8">
308
- <h2 className="text-center text-3xl font-bold !text-white">
316
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
309
317
  Size Variations
310
318
  </h2>
311
- <div className="rounded-lg border border-white/10 bg-white/5 p-8">
319
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-8">
312
320
  <div className="!space-y-6">
313
321
  <div className="grid grid-cols-1 gap-8 md:grid-cols-2">
314
322
  <div className="!space-y-4">
315
- <h3 className="text-lg font-semibold !text-slate-300">
323
+ <h3 className="text-fm-secondary! text-lg font-semibold">
316
324
  Standard Sizes
317
325
  </h3>
318
- <div className="flex items-end gap-6 rounded-lg bg-black/20 p-6">
326
+ <div className="bg-fm-surface-secondary flex items-end gap-6 rounded-lg p-6">
319
327
  <div className="text-center">
320
- <TwitterXIcon className="!mx-auto mb-2 h-3 w-3 text-white" />
321
- <span className="text-xs text-white/60">12px</span>
328
+ <TwitterXIcon className="text-fm-icon-active !mx-auto mb-2 h-3 w-3" />
329
+ <span className="text-fm-tertiary text-xs">
330
+ 12px
331
+ </span>
322
332
  </div>
323
333
  <div className="text-center">
324
- <TwitterXIcon className="!mx-auto mb-2 h-4 w-4 text-white" />
325
- <span className="text-xs text-white/60">16px</span>
334
+ <TwitterXIcon className="text-fm-icon-active !mx-auto mb-2 h-4 w-4" />
335
+ <span className="text-fm-tertiary text-xs">
336
+ 16px
337
+ </span>
326
338
  </div>
327
339
  <div className="text-center">
328
- <TwitterXIcon className="!mx-auto mb-2 h-5 w-5 text-white" />
329
- <span className="text-xs text-white/60">20px</span>
340
+ <TwitterXIcon className="text-fm-icon-active !mx-auto mb-2 h-5 w-5" />
341
+ <span className="text-fm-tertiary text-xs">
342
+ 20px
343
+ </span>
330
344
  </div>
331
345
  <div className="text-center">
332
- <TwitterXIcon className="!mx-auto mb-2 h-6 w-6 text-white" />
333
- <span className="text-xs text-white/60">24px</span>
346
+ <TwitterXIcon className="text-fm-icon-active !mx-auto mb-2 h-6 w-6" />
347
+ <span className="text-fm-tertiary text-xs">
348
+ 24px
349
+ </span>
334
350
  </div>
335
351
  <div className="text-center">
336
- <TwitterXIcon className="!mx-auto mb-2 h-8 w-8 text-white" />
337
- <span className="text-xs text-white/60">32px</span>
352
+ <TwitterXIcon className="text-fm-icon-active !mx-auto mb-2 h-8 w-8" />
353
+ <span className="text-fm-tertiary text-xs">
354
+ 32px
355
+ </span>
338
356
  </div>
339
357
  <div className="text-center">
340
- <TwitterXIcon className="!mx-auto mb-2 h-12 w-12 text-white" />
341
- <span className="text-xs text-white/60">48px</span>
358
+ <TwitterXIcon className="text-fm-icon-active !mx-auto mb-2 h-12 w-12" />
359
+ <span className="text-fm-tertiary text-xs">
360
+ 48px
361
+ </span>
342
362
  </div>
343
363
  </div>
344
364
  </div>
345
365
 
346
366
  <div className="!space-y-4">
347
- <h3 className="text-lg font-semibold !text-slate-300">
367
+ <h3 className="text-fm-secondary! text-lg font-semibold">
348
368
  Code Example
349
369
  </h3>
350
- <div className="rounded-lg bg-black/40 p-4">
351
- <pre className="overflow-x-auto text-sm !text-cyan-300">
370
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
371
+ <pre className="text-fm-icon-info! overflow-x-auto text-sm">
352
372
  {`// Small (16px) - inline social links
353
373
  <TwitterXIcon className="h-4 w-4" />
354
374
 
@@ -370,63 +390,63 @@ function ShareButton() {
370
390
 
371
391
  {/* Color & Styling */}
372
392
  <div className="!space-y-8">
373
- <h2 className="text-center text-3xl font-bold !text-white">
393
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
374
394
  Color & Styling
375
395
  </h2>
376
396
  <div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
377
397
  <div className="!space-y-4">
378
- <h3 className="text-lg font-semibold !text-slate-300">
398
+ <h3 className="text-fm-secondary! text-lg font-semibold">
379
399
  Brand Colors
380
400
  </h3>
381
- <div className="!space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
401
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
382
402
  <div className="flex items-center gap-4">
383
- <div className="flex h-12 w-12 items-center justify-center rounded-lg bg-black">
384
- <TwitterXIcon className="h-6 w-6 text-white" />
403
+ <div className="bg-fm-surface-primary flex h-12 w-12 items-center justify-center rounded-lg">
404
+ <TwitterXIcon className="text-fm-icon-active h-6 w-6" />
385
405
  </div>
386
406
  <div>
387
- <div className="text-sm font-medium text-white">
407
+ <div className="text-fm-icon-active text-sm font-medium">
388
408
  Official Black
389
409
  </div>
390
- <div className="text-xs text-white/60">
410
+ <div className="text-fm-tertiary text-xs">
391
411
  Primary brand color
392
412
  </div>
393
413
  </div>
394
414
  </div>
395
415
  <div className="flex items-center gap-4">
396
- <div className="flex h-12 w-12 items-center justify-center rounded-lg border border-gray-300 bg-white">
397
- <TwitterXIcon className="h-6 w-6 text-black" />
416
+ <div className="border-fm-divider-primary bg-fm-surface-contrast flex h-12 w-12 items-center justify-center rounded-lg border">
417
+ <TwitterXIcon className="text-fm-icon-active h-6 w-6" />
398
418
  </div>
399
419
  <div>
400
- <div className="text-sm font-medium text-white">
420
+ <div className="text-fm-icon-active text-sm font-medium">
401
421
  Inverted White
402
422
  </div>
403
- <div className="text-xs text-white/60">
423
+ <div className="text-fm-tertiary text-xs">
404
424
  Light backgrounds
405
425
  </div>
406
426
  </div>
407
427
  </div>
408
428
  <div className="flex items-center gap-4">
409
- <div className="flex h-12 w-12 items-center justify-center rounded-lg bg-gray-600">
410
- <TwitterXIcon className="h-6 w-6 text-white" />
429
+ <div className="bg-fm-surface-tertiary flex h-12 w-12 items-center justify-center rounded-lg">
430
+ <TwitterXIcon className="text-fm-icon-active h-6 w-6" />
411
431
  </div>
412
432
  <div>
413
- <div className="text-sm font-medium text-white">
433
+ <div className="text-fm-icon-active text-sm font-medium">
414
434
  Neutral Gray
415
435
  </div>
416
- <div className="text-xs text-white/60">
436
+ <div className="text-fm-tertiary text-xs">
417
437
  Subtle integration
418
438
  </div>
419
439
  </div>
420
440
  </div>
421
441
  <div className="flex items-center gap-4">
422
- <div className="flex h-12 w-12 items-center justify-center rounded-lg bg-blue-500">
423
- <TwitterXIcon className="h-6 w-6 text-white" />
442
+ <div className="bg-fm-icon-info flex h-12 w-12 items-center justify-center rounded-lg">
443
+ <TwitterXIcon className="text-fm-icon-active h-6 w-6" />
424
444
  </div>
425
445
  <div>
426
- <div className="text-sm font-medium text-white">
446
+ <div className="text-fm-icon-active text-sm font-medium">
427
447
  Accent Color
428
448
  </div>
429
- <div className="text-xs text-white/60">
449
+ <div className="text-fm-tertiary text-xs">
430
450
  Themed integration
431
451
  </div>
432
452
  </div>
@@ -435,11 +455,11 @@ function ShareButton() {
435
455
  </div>
436
456
 
437
457
  <div className="!space-y-4">
438
- <h3 className="text-lg font-semibold !text-slate-300">
458
+ <h3 className="text-fm-secondary! text-lg font-semibold">
439
459
  Usage Examples
440
460
  </h3>
441
- <div className="rounded-lg bg-black/40 p-4">
442
- <pre className="overflow-x-auto text-sm !text-green-300">
461
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
462
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
443
463
  {`// Official black on white
444
464
  <TwitterXIcon className="h-6 w-6 text-black" />
445
465
 
@@ -472,73 +492,81 @@ function ShareButton() {
472
492
 
473
493
  {/* Usage Examples */}
474
494
  <div className="!space-y-8">
475
- <h2 className="text-center text-3xl font-bold !text-white">
495
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
476
496
  Usage Examples
477
497
  </h2>
478
498
 
479
499
  <div className="grid grid-cols-1 gap-8 lg:grid-cols-2">
480
500
  {/* Social Share Buttons */}
481
501
  <div className="!space-y-4">
482
- <h3 className="text-lg font-semibold !text-slate-300">
502
+ <h3 className="text-fm-secondary! text-lg font-semibold">
483
503
  Social Share Buttons
484
504
  </h3>
485
505
  <div className="!space-y-4">
486
- <div className="rounded-lg border border-white/10 bg-white/5 p-6">
506
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-6">
487
507
  <div className="space-y-4">
488
- <h4 className="mb-3 text-sm font-medium text-white">
508
+ <h4 className="text-fm-icon-active mb-3 text-sm font-medium">
489
509
  Share this article
490
510
  </h4>
491
511
  <div className="flex flex-wrap gap-3">
492
- <button className="flex items-center gap-2 rounded-lg border border-gray-700 bg-black px-4 py-2 transition-colors hover:bg-gray-800">
493
- <TwitterXIcon className="h-4 w-4 text-white" />
494
- <span className="text-sm text-white">
512
+ <button className="border-fm-divider-contrast bg-fm-surface-primary hover:bg-fm-surface-secondary flex items-center gap-2 rounded-lg border px-4 py-2 transition-colors">
513
+ <TwitterXIcon className="text-fm-icon-active h-4 w-4" />
514
+ <span className="text-fm-icon-active text-sm">
495
515
  Share on X
496
516
  </span>
497
517
  </button>
498
- <button className="flex items-center gap-2 rounded-lg bg-blue-600 px-4 py-2 transition-colors hover:bg-blue-700">
499
- <span className="text-sm text-white">📘</span>
500
- <span className="text-sm text-white">
518
+ <button className="bg-fm-icon-info hover:bg-fm-icon-info flex items-center gap-2 rounded-lg px-4 py-2 transition-colors">
519
+ <span className="text-fm-icon-active text-sm">
520
+ 📘
521
+ </span>
522
+ <span className="text-fm-icon-active text-sm">
501
523
  Facebook
502
524
  </span>
503
525
  </button>
504
- <button className="flex items-center gap-2 rounded-lg bg-blue-500 px-4 py-2 transition-colors hover:bg-blue-600">
505
- <span className="text-sm text-white">💼</span>
506
- <span className="text-sm text-white">
526
+ <button className="bg-fm-icon-info hover:bg-fm-icon-info flex items-center gap-2 rounded-lg px-4 py-2 transition-colors">
527
+ <span className="text-fm-icon-active text-sm">
528
+ 💼
529
+ </span>
530
+ <span className="text-fm-icon-active text-sm">
507
531
  LinkedIn
508
532
  </span>
509
533
  </button>
510
534
  </div>
511
- <div className="border-t border-white/10 pt-4">
535
+ <div className="border-fm-divider-secondary border-t pt-4">
512
536
  <div className="flex items-center gap-3">
513
- <span className="text-sm text-white/60">
537
+ <span className="text-fm-tertiary text-sm">
514
538
  Follow us:
515
539
  </span>
516
540
  <div className="flex gap-2">
517
541
  <a
518
542
  href="#"
519
- className="rounded bg-black p-2 transition-colors hover:bg-gray-800"
543
+ className="bg-fm-surface-primary hover:bg-fm-surface-secondary rounded p-2 transition-colors"
520
544
  >
521
- <TwitterXIcon className="h-4 w-4 text-white" />
545
+ <TwitterXIcon className="text-fm-icon-active h-4 w-4" />
522
546
  </a>
523
547
  <a
524
548
  href="#"
525
- className="rounded bg-blue-600 p-2 transition-colors hover:bg-blue-700"
549
+ className="bg-fm-icon-info hover:bg-fm-icon-info rounded p-2 transition-colors"
526
550
  >
527
- <span className="text-sm text-white">📘</span>
551
+ <span className="text-fm-icon-active text-sm">
552
+ 📘
553
+ </span>
528
554
  </a>
529
555
  <a
530
556
  href="#"
531
- className="rounded bg-red-600 p-2 transition-colors hover:bg-red-700"
557
+ className="bg-fm-icon-negative hover:bg-fm-icon-negative rounded p-2 transition-colors"
532
558
  >
533
- <span className="text-sm text-white">📺</span>
559
+ <span className="text-fm-icon-active text-sm">
560
+ 📺
561
+ </span>
534
562
  </a>
535
563
  </div>
536
564
  </div>
537
565
  </div>
538
566
  </div>
539
567
  </div>
540
- <div className="rounded-lg bg-black/40 p-4">
541
- <pre className="overflow-x-auto text-sm !text-green-300">
568
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
569
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
542
570
  {`// Social sharing component
543
571
  <div className="share-buttons">
544
572
  <h4>Share this article</h4>
@@ -575,45 +603,47 @@ function ShareButton() {
575
603
 
576
604
  {/* Social Login */}
577
605
  <div className="!space-y-4">
578
- <h3 className="text-lg font-semibold !text-slate-300">
606
+ <h3 className="text-fm-secondary! text-lg font-semibold">
579
607
  Social Authentication
580
608
  </h3>
581
609
  <div className="!space-y-4">
582
- <div className="rounded-lg border border-white/10 bg-white/5 p-6">
583
- <div className="overflow-hidden rounded-lg border border-white/20 bg-black/50">
584
- <div className="border-b border-white/10 bg-white/5 p-6">
585
- <h4 className="mb-2 text-center text-xl font-semibold text-white">
610
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-6">
611
+ <div className="border-fm-divider-primary bg-fm-surface-secondary overflow-hidden rounded-lg border">
612
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary border-b p-6">
613
+ <h4 className="text-fm-icon-active mb-2 text-center text-xl font-semibold">
586
614
  Welcome Back
587
615
  </h4>
588
- <p className="text-center text-sm text-white/60">
616
+ <p className="text-fm-tertiary text-center text-sm">
589
617
  Sign in to your account
590
618
  </p>
591
619
  </div>
592
620
  <div className="space-y-4 p-6">
593
- <button className="flex w-full items-center justify-center gap-3 rounded-lg border border-gray-700 bg-black px-4 py-3 transition-colors hover:bg-gray-800">
594
- <TwitterXIcon className="h-5 w-5 text-white" />
595
- <span className="font-medium text-white">
621
+ <button className="border-fm-divider-contrast bg-fm-surface-primary hover:bg-fm-surface-secondary flex w-full items-center justify-center gap-3 rounded-lg border px-4 py-3 transition-colors">
622
+ <TwitterXIcon className="text-fm-icon-active h-5 w-5" />
623
+ <span className="text-fm-icon-active font-medium">
596
624
  Continue with X
597
625
  </span>
598
626
  </button>
599
- <button className="flex w-full items-center justify-center gap-3 rounded-lg border border-gray-300 bg-white px-4 py-3 transition-colors hover:bg-gray-50">
627
+ <button className="border-fm-divider-primary bg-fm-surface-contrast hover:bg-fm-surface-secondary flex w-full items-center justify-center gap-3 rounded-lg border px-4 py-3 transition-colors">
600
628
  <span className="text-xl">🔍</span>
601
- <span className="font-medium text-gray-700">
629
+ <span className="text-fm-primary font-medium">
602
630
  Continue with Google
603
631
  </span>
604
632
  </button>
605
- <button className="flex w-full items-center justify-center gap-3 rounded-lg bg-blue-600 px-4 py-3 transition-colors hover:bg-blue-700">
606
- <span className="text-xl text-white">📘</span>
607
- <span className="font-medium text-white">
633
+ <button className="bg-fm-icon-info hover:bg-fm-icon-info flex w-full items-center justify-center gap-3 rounded-lg px-4 py-3 transition-colors">
634
+ <span className="text-fm-icon-active text-xl">
635
+ 📘
636
+ </span>
637
+ <span className="text-fm-icon-active font-medium">
608
638
  Continue with Facebook
609
639
  </span>
610
640
  </button>
611
641
  <div className="relative">
612
642
  <div className="absolute inset-0 flex items-center">
613
- <div className="w-full border-t border-white/20"></div>
643
+ <div className="border-fm-divider-primary w-full border-t"></div>
614
644
  </div>
615
645
  <div className="relative flex justify-center text-sm">
616
- <span className="bg-black/50 px-2 text-white/60">
646
+ <span className="bg-fm-surface-secondary text-fm-tertiary px-2">
617
647
  or continue with email
618
648
  </span>
619
649
  </div>
@@ -622,22 +652,22 @@ function ShareButton() {
622
652
  <input
623
653
  type="email"
624
654
  placeholder="Email address"
625
- className="w-full rounded-lg border border-white/20 bg-white/10 px-3 py-2 text-white placeholder-white/60"
655
+ className="border-fm-divider-primary bg-fm-surface-secondary text-fm-icon-active w-full rounded-lg border px-3 py-2 placeholder-white/60"
626
656
  />
627
657
  <input
628
658
  type="password"
629
659
  placeholder="Password"
630
- className="w-full rounded-lg border border-white/20 bg-white/10 px-3 py-2 text-white placeholder-white/60"
660
+ className="border-fm-divider-primary bg-fm-surface-secondary text-fm-icon-active w-full rounded-lg border px-3 py-2 placeholder-white/60"
631
661
  />
632
- <button className="w-full rounded-lg bg-blue-600 py-2 font-medium text-white transition-colors hover:bg-blue-700">
662
+ <button className="bg-fm-icon-info text-fm-icon-active hover:bg-fm-icon-info w-full rounded-lg py-2 font-medium transition-colors">
633
663
  Sign In
634
664
  </button>
635
665
  </div>
636
666
  </div>
637
667
  </div>
638
668
  </div>
639
- <div className="rounded-lg bg-black/40 p-4">
640
- <pre className="overflow-x-auto text-sm !text-green-300">
669
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
670
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
641
671
  {`// Social authentication options
642
672
  <div className="auth-container">
643
673
  <div className="auth-header">
@@ -668,15 +698,15 @@ function ShareButton() {
668
698
 
669
699
  {/* Profile Links */}
670
700
  <div className="!space-y-4">
671
- <h3 className="text-lg font-semibold !text-slate-300">
701
+ <h3 className="text-fm-secondary! text-lg font-semibold">
672
702
  Profile Social Links
673
703
  </h3>
674
704
  <div className="!space-y-4">
675
- <div className="rounded-lg border border-white/10 bg-white/5 p-6">
676
- <div className="overflow-hidden rounded-lg border border-white/20 bg-black/50">
677
- <div className="relative h-32 bg-gradient-to-r from-blue-500/20 to-purple-500/20">
705
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-6">
706
+ <div className="border-fm-divider-primary bg-fm-surface-secondary overflow-hidden rounded-lg border">
707
+ <div className="from-fm-icon-info/20 to-fm-secondary-500/20 relative h-32 bg-linear-to-r">
678
708
  <div className="absolute -bottom-8 left-6">
679
- <div className="flex h-16 w-16 items-center justify-center rounded-full border-4 border-black/50 bg-white/10">
709
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary flex h-16 w-16 items-center justify-center rounded-full border-4">
680
710
  <span className="text-2xl">👤</span>
681
711
  </div>
682
712
  </div>
@@ -684,89 +714,95 @@ function ShareButton() {
684
714
  <div className="p-6 pt-12">
685
715
  <div className="flex items-start justify-between">
686
716
  <div>
687
- <h4 className="text-lg font-semibold text-white">
717
+ <h4 className="text-fm-icon-active text-lg font-semibold">
688
718
  Sarah Johnson
689
719
  </h4>
690
- <p className="text-sm text-white/60">
720
+ <p className="text-fm-tertiary text-sm">
691
721
  @sarahjohnson
692
722
  </p>
693
- <p className="mt-2 text-sm text-white/70">
723
+ <p className="text-fm-secondary mt-2 text-sm">
694
724
  Product Designer passionate about creating
695
725
  intuitive user experiences
696
726
  </p>
697
727
  </div>
698
- <button className="rounded-lg bg-white px-4 py-2 font-medium text-black transition-colors hover:bg-gray-100">
728
+ <button className="bg-fm-surface-contrast text-fm-icon-active hover:bg-fm-surface-secondary rounded-lg px-4 py-2 font-medium transition-colors">
699
729
  Follow
700
730
  </button>
701
731
  </div>
702
732
  <div className="mt-4 flex items-center gap-4">
703
- <div className="flex items-center gap-2 text-sm text-white/60">
733
+ <div className="text-fm-tertiary flex items-center gap-2 text-sm">
704
734
  <span>📍</span>
705
735
  <span>San Francisco, CA</span>
706
736
  </div>
707
- <div className="flex items-center gap-2 text-sm text-white/60">
737
+ <div className="text-fm-tertiary flex items-center gap-2 text-sm">
708
738
  <span>📅</span>
709
739
  <span>Joined March 2020</span>
710
740
  </div>
711
741
  </div>
712
742
  <div className="mt-4 flex items-center gap-6">
713
743
  <div className="text-sm">
714
- <span className="font-medium text-white">
744
+ <span className="text-fm-icon-active font-medium">
715
745
  1,234
716
746
  </span>
717
- <span className="ml-1 text-white/60">
747
+ <span className="text-fm-tertiary ml-1">
718
748
  Following
719
749
  </span>
720
750
  </div>
721
751
  <div className="text-sm">
722
- <span className="font-medium text-white">
752
+ <span className="text-fm-icon-active font-medium">
723
753
  5,678
724
754
  </span>
725
- <span className="ml-1 text-white/60">
755
+ <span className="text-fm-tertiary ml-1">
726
756
  Followers
727
757
  </span>
728
758
  </div>
729
759
  </div>
730
- <div className="mt-4 flex items-center gap-3 border-t border-white/10 pt-4">
731
- <span className="text-sm text-white/60">
760
+ <div className="border-fm-divider-secondary mt-4 flex items-center gap-3 border-t pt-4">
761
+ <span className="text-fm-tertiary text-sm">
732
762
  Connect:
733
763
  </span>
734
764
  <div className="flex gap-2">
735
765
  <a
736
766
  href="#"
737
- className="rounded bg-black p-2 transition-colors hover:bg-gray-800"
767
+ className="bg-fm-surface-primary hover:bg-fm-surface-secondary rounded p-2 transition-colors"
738
768
  aria-label="Follow on X"
739
769
  >
740
- <TwitterXIcon className="h-4 w-4 text-white" />
770
+ <TwitterXIcon className="text-fm-icon-active h-4 w-4" />
741
771
  </a>
742
772
  <a
743
773
  href="#"
744
- className="rounded bg-blue-500 p-2 transition-colors hover:bg-blue-600"
774
+ className="bg-fm-icon-info hover:bg-fm-icon-info rounded p-2 transition-colors"
745
775
  aria-label="Connect on LinkedIn"
746
776
  >
747
- <span className="text-sm text-white">💼</span>
777
+ <span className="text-fm-icon-active text-sm">
778
+ 💼
779
+ </span>
748
780
  </a>
749
781
  <a
750
782
  href="#"
751
- className="rounded bg-gray-600 p-2 transition-colors hover:bg-gray-700"
783
+ className="bg-fm-surface-tertiary hover:bg-fm-surface-secondary rounded p-2 transition-colors"
752
784
  aria-label="View GitHub"
753
785
  >
754
- <span className="text-sm text-white">🐙</span>
786
+ <span className="text-fm-icon-active text-sm">
787
+ 🐙
788
+ </span>
755
789
  </a>
756
790
  <a
757
791
  href="#"
758
- className="rounded bg-pink-500 p-2 transition-colors hover:bg-pink-600"
792
+ className="bg-fm-secondary-500 hover:bg-fm-secondary-600 rounded p-2 transition-colors"
759
793
  aria-label="View Dribbble"
760
794
  >
761
- <span className="text-sm text-white">🏀</span>
795
+ <span className="text-fm-icon-active text-sm">
796
+ 🏀
797
+ </span>
762
798
  </a>
763
799
  </div>
764
800
  </div>
765
801
  </div>
766
802
  </div>
767
803
  </div>
768
- <div className="rounded-lg bg-black/40 p-4">
769
- <pre className="overflow-x-auto text-sm !text-green-300">
804
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
805
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
770
806
  {`// User profile with social links
771
807
  <div className="user-profile">
772
808
  <div className="profile-header">
@@ -805,59 +841,59 @@ function ShareButton() {
805
841
 
806
842
  {/* Website Footer */}
807
843
  <div className="!space-y-4">
808
- <h3 className="text-lg font-semibold !text-slate-300">
844
+ <h3 className="text-fm-secondary! text-lg font-semibold">
809
845
  Website Footer
810
846
  </h3>
811
847
  <div className="!space-y-4">
812
- <div className="rounded-lg border border-white/10 bg-white/5 p-6">
813
- <div className="overflow-hidden rounded-lg border border-white/20 bg-black/50">
848
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-6">
849
+ <div className="border-fm-divider-primary bg-fm-surface-secondary overflow-hidden rounded-lg border">
814
850
  <div className="p-8">
815
851
  <div className="grid grid-cols-1 gap-8 md:grid-cols-4">
816
852
  <div className="md:col-span-2">
817
- <h4 className="mb-4 text-lg font-semibold text-white">
853
+ <h4 className="text-fm-icon-active mb-4 text-lg font-semibold">
818
854
  Company Name
819
855
  </h4>
820
- <p className="mb-4 max-w-md text-sm text-white/70">
856
+ <p className="text-fm-secondary mb-4 max-w-md text-sm">
821
857
  Building the future of digital experiences
822
858
  with cutting-edge technology and innovative
823
859
  design solutions.
824
860
  </p>
825
861
  <div className="flex items-center gap-3">
826
- <span className="text-sm text-white/60">
862
+ <span className="text-fm-tertiary text-sm">
827
863
  Follow us:
828
864
  </span>
829
865
  <div className="flex gap-2">
830
866
  <a
831
867
  href="#"
832
- className="rounded bg-black p-2 transition-colors hover:bg-gray-800"
868
+ className="bg-fm-surface-primary hover:bg-fm-surface-secondary rounded p-2 transition-colors"
833
869
  aria-label="Follow on X"
834
870
  >
835
- <TwitterXIcon className="h-4 w-4 text-white" />
871
+ <TwitterXIcon className="text-fm-icon-active h-4 w-4" />
836
872
  </a>
837
873
  <a
838
874
  href="#"
839
- className="rounded bg-blue-600 p-2 transition-colors hover:bg-blue-700"
875
+ className="bg-fm-icon-info hover:bg-fm-icon-info rounded p-2 transition-colors"
840
876
  aria-label="Like on Facebook"
841
877
  >
842
- <span className="text-sm text-white">
878
+ <span className="text-fm-icon-active text-sm">
843
879
  📘
844
880
  </span>
845
881
  </a>
846
882
  <a
847
883
  href="#"
848
- className="rounded bg-blue-500 p-2 transition-colors hover:bg-blue-600"
884
+ className="bg-fm-icon-info hover:bg-fm-icon-info rounded p-2 transition-colors"
849
885
  aria-label="Connect on LinkedIn"
850
886
  >
851
- <span className="text-sm text-white">
887
+ <span className="text-fm-icon-active text-sm">
852
888
  💼
853
889
  </span>
854
890
  </a>
855
891
  <a
856
892
  href="#"
857
- className="rounded bg-red-600 p-2 transition-colors hover:bg-red-700"
893
+ className="bg-fm-icon-negative hover:bg-fm-icon-negative rounded p-2 transition-colors"
858
894
  aria-label="Subscribe on YouTube"
859
895
  >
860
- <span className="text-sm text-white">
896
+ <span className="text-fm-icon-active text-sm">
861
897
  📺
862
898
  </span>
863
899
  </a>
@@ -865,14 +901,14 @@ function ShareButton() {
865
901
  </div>
866
902
  </div>
867
903
  <div>
868
- <h5 className="mb-3 text-sm font-semibold text-white">
904
+ <h5 className="text-fm-icon-active mb-3 text-sm font-semibold">
869
905
  Product
870
906
  </h5>
871
- <ul className="space-y-2 text-sm text-white/60">
907
+ <ul className="text-fm-tertiary space-y-2 text-sm">
872
908
  <li>
873
909
  <a
874
910
  href="#"
875
- className="transition-colors hover:text-white"
911
+ className="hover:text-fm-icon-active transition-colors"
876
912
  >
877
913
  Features
878
914
  </a>
@@ -880,7 +916,7 @@ function ShareButton() {
880
916
  <li>
881
917
  <a
882
918
  href="#"
883
- className="transition-colors hover:text-white"
919
+ className="hover:text-fm-icon-active transition-colors"
884
920
  >
885
921
  Pricing
886
922
  </a>
@@ -888,7 +924,7 @@ function ShareButton() {
888
924
  <li>
889
925
  <a
890
926
  href="#"
891
- className="transition-colors hover:text-white"
927
+ className="hover:text-fm-icon-active transition-colors"
892
928
  >
893
929
  Documentation
894
930
  </a>
@@ -896,7 +932,7 @@ function ShareButton() {
896
932
  <li>
897
933
  <a
898
934
  href="#"
899
- className="transition-colors hover:text-white"
935
+ className="hover:text-fm-icon-active transition-colors"
900
936
  >
901
937
  API
902
938
  </a>
@@ -904,14 +940,14 @@ function ShareButton() {
904
940
  </ul>
905
941
  </div>
906
942
  <div>
907
- <h5 className="mb-3 text-sm font-semibold text-white">
943
+ <h5 className="text-fm-icon-active mb-3 text-sm font-semibold">
908
944
  Company
909
945
  </h5>
910
- <ul className="space-y-2 text-sm text-white/60">
946
+ <ul className="text-fm-tertiary space-y-2 text-sm">
911
947
  <li>
912
948
  <a
913
949
  href="#"
914
- className="transition-colors hover:text-white"
950
+ className="hover:text-fm-icon-active transition-colors"
915
951
  >
916
952
  About
917
953
  </a>
@@ -919,7 +955,7 @@ function ShareButton() {
919
955
  <li>
920
956
  <a
921
957
  href="#"
922
- className="transition-colors hover:text-white"
958
+ className="hover:text-fm-icon-active transition-colors"
923
959
  >
924
960
  Blog
925
961
  </a>
@@ -927,7 +963,7 @@ function ShareButton() {
927
963
  <li>
928
964
  <a
929
965
  href="#"
930
- className="transition-colors hover:text-white"
966
+ className="hover:text-fm-icon-active transition-colors"
931
967
  >
932
968
  Careers
933
969
  </a>
@@ -935,7 +971,7 @@ function ShareButton() {
935
971
  <li>
936
972
  <a
937
973
  href="#"
938
- className="transition-colors hover:text-white"
974
+ className="hover:text-fm-icon-active transition-colors"
939
975
  >
940
976
  Contact
941
977
  </a>
@@ -943,26 +979,26 @@ function ShareButton() {
943
979
  </ul>
944
980
  </div>
945
981
  </div>
946
- <div className="mt-8 flex flex-col items-center justify-between border-t border-white/10 pt-8 md:flex-row">
947
- <p className="text-sm text-white/60">
982
+ <div className="border-fm-divider-secondary mt-8 flex flex-col items-center justify-between border-t pt-8 md:flex-row">
983
+ <p className="text-fm-tertiary text-sm">
948
984
  © 2024 Company Name. All rights reserved.
949
985
  </p>
950
986
  <div className="mt-4 flex gap-4 md:mt-0">
951
987
  <a
952
988
  href="#"
953
- className="text-sm text-white/60 transition-colors hover:text-white"
989
+ className="text-fm-tertiary hover:text-fm-icon-active text-sm transition-colors"
954
990
  >
955
991
  Privacy Policy
956
992
  </a>
957
993
  <a
958
994
  href="#"
959
- className="text-sm text-white/60 transition-colors hover:text-white"
995
+ className="text-fm-tertiary hover:text-fm-icon-active text-sm transition-colors"
960
996
  >
961
997
  Terms of Service
962
998
  </a>
963
999
  <a
964
1000
  href="#"
965
- className="text-sm text-white/60 transition-colors hover:text-white"
1001
+ className="text-fm-tertiary hover:text-fm-icon-active text-sm transition-colors"
966
1002
  >
967
1003
  Cookie Policy
968
1004
  </a>
@@ -971,8 +1007,8 @@ function ShareButton() {
971
1007
  </div>
972
1008
  </div>
973
1009
  </div>
974
- <div className="rounded-lg bg-black/40 p-4">
975
- <pre className="overflow-x-auto text-sm !text-green-300">
1010
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
1011
+ <pre className="text-fm-icon-positive! overflow-x-auto text-sm">
976
1012
  {`// Website footer with social links
977
1013
  <footer className="site-footer">
978
1014
  <div className="footer-content">
@@ -1008,65 +1044,65 @@ function ShareButton() {
1008
1044
 
1009
1045
  {/* Accessibility */}
1010
1046
  <div className="!space-y-8">
1011
- <h2 className="text-center text-3xl font-bold !text-white">
1047
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
1012
1048
  Accessibility Features
1013
1049
  </h2>
1014
1050
  <div className="grid grid-cols-1 gap-8 md:grid-cols-2">
1015
- <div className="!space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
1016
- <h3 className="text-lg font-semibold !text-green-300">
1051
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
1052
+ <h3 className="text-fm-icon-positive! text-lg font-semibold">
1017
1053
  ✅ Built-in Features
1018
1054
  </h3>
1019
- <ul className="!space-y-2 text-sm !text-white/70">
1020
- <li className="!text-white/70">
1055
+ <ul className="text-fm-secondary! !space-y-2 text-sm">
1056
+ <li className="text-fm-secondary!">
1021
1057
  Uses Radix UI AccessibleIcon wrapper
1022
1058
  </li>
1023
- <li className="!text-white/70">
1059
+ <li className="text-fm-secondary!">
1024
1060
  Provides screen reader label "Twitter X icon"
1025
1061
  </li>
1026
- <li className="!text-white/70">
1062
+ <li className="text-fm-secondary!">
1027
1063
  Supports keyboard navigation when interactive
1028
1064
  </li>
1029
- <li className="!text-white/70">
1065
+ <li className="text-fm-secondary!">
1030
1066
  High contrast design for visibility
1031
1067
  </li>
1032
- <li className="!text-white/70">
1068
+ <li className="text-fm-secondary!">
1033
1069
  Maintains aspect ratio across all sizes
1034
1070
  </li>
1035
1071
  </ul>
1036
1072
  </div>
1037
1073
 
1038
- <div className="!space-y-4 rounded-lg border border-white/10 bg-white/5 p-6">
1039
- <h3 className="text-lg font-semibold !text-slate-300">
1074
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-4 rounded-lg border p-6">
1075
+ <h3 className="text-fm-secondary! text-lg font-semibold">
1040
1076
  💡 Best Practices
1041
1077
  </h3>
1042
- <ul className="!space-y-2 text-sm text-white/70">
1043
- <li className="!text-white/70">
1078
+ <ul className="text-fm-secondary !space-y-2 text-sm">
1079
+ <li className="text-fm-secondary!">
1044
1080
  Always provide descriptive aria-labels for social
1045
1081
  actions
1046
1082
  </li>
1047
- <li className="!text-white/70">
1083
+ <li className="text-fm-secondary!">
1048
1084
  Follow official Twitter/X brand guidelines
1049
1085
  </li>
1050
- <li className="!text-white/70">
1086
+ <li className="text-fm-secondary!">
1051
1087
  Ensure sufficient contrast ratios for visibility
1052
1088
  </li>
1053
- <li className="!text-white/70">
1089
+ <li className="text-fm-secondary!">
1054
1090
  Use consistent sizing across social media icons
1055
1091
  </li>
1056
- <li className="!text-white/70">
1092
+ <li className="text-fm-secondary!">
1057
1093
  Provide text alternatives when icons are standalone
1058
1094
  </li>
1059
1095
  </ul>
1060
1096
  </div>
1061
1097
  </div>
1062
1098
 
1063
- <div className="rounded-lg border border-white/10 bg-white/5 p-6">
1064
- <h3 className="mb-4 text-lg font-semibold !text-blue-300">
1099
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-6">
1100
+ <h3 className="text-fm-icon-info! mb-4 text-lg font-semibold">
1065
1101
  Proper ARIA Implementation
1066
1102
  </h3>
1067
1103
  <div className="grid grid-cols-1 gap-6 lg:grid-cols-2">
1068
- <div className="rounded-lg bg-black/40 p-4">
1069
- <pre className="overflow-x-auto text-sm !text-cyan-300">
1104
+ <div className="bg-fm-surface-secondary rounded-lg p-4">
1105
+ <pre className="text-fm-icon-info! overflow-x-auto text-sm">
1070
1106
  {`// Social share button
1071
1107
  <button
1072
1108
  onClick={shareOnTwitter}
@@ -1133,14 +1169,14 @@ function ShareButton() {
1133
1169
  </pre>
1134
1170
  </div>
1135
1171
  <div className="!space-y-4">
1136
- <p className="text-sm !text-white/70">
1172
+ <p className="text-fm-secondary! text-sm">
1137
1173
  When using TwitterXIcon for social integration, always
1138
1174
  provide clear context about the action and destination
1139
1175
  platform. Include proper external link indicators when
1140
1176
  applicable.
1141
1177
  </p>
1142
- <div className="rounded-lg border border-slate-500/20 bg-slate-500/10 p-4">
1143
- <div className="flex items-center gap-2 text-sm text-slate-200">
1178
+ <div className="border-fm-divider-secondary bg-fm-icon-inactive/10 rounded-lg border p-4">
1179
+ <div className="text-fm-secondary flex items-center gap-2 text-sm">
1144
1180
  <TwitterXIcon className="h-4 w-4" />
1145
1181
  <span>
1146
1182
  Use "X (formerly Twitter)" in aria-labels during the
@@ -1155,52 +1191,60 @@ function ShareButton() {
1155
1191
 
1156
1192
  {/* Related Icons */}
1157
1193
  <div className="!space-y-8">
1158
- <h2 className="text-center text-3xl font-bold !text-white">
1194
+ <h2 className="text-fm-icon-active! text-center text-3xl font-bold">
1159
1195
  Related Icons
1160
1196
  </h2>
1161
1197
  <div className="grid grid-cols-2 gap-6 md:grid-cols-4">
1162
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
1163
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-blue-500/20">
1164
- <span className="!text-2xl !text-white">📘</span>
1198
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
1199
+ <div className="bg-fm-icon-info/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
1200
+ <span className="text-fm-icon-active! !text-2xl">📘</span>
1165
1201
  </div>
1166
1202
  <div>
1167
- <div className="font-medium text-white">FacebookIcon</div>
1168
- <div className="text-xs text-white/60">
1203
+ <div className="text-fm-icon-active font-medium">
1204
+ FacebookIcon
1205
+ </div>
1206
+ <div className="text-fm-tertiary text-xs">
1169
1207
  Social platform
1170
1208
  </div>
1171
1209
  </div>
1172
1210
  </div>
1173
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
1174
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-blue-600/20">
1175
- <span className="!text-2xl !text-white">💼</span>
1211
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
1212
+ <div className="bg-fm-icon-info/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
1213
+ <span className="text-fm-icon-active! !text-2xl">💼</span>
1176
1214
  </div>
1177
1215
  <div>
1178
- <div className="font-medium text-white">LinkedInIcon</div>
1179
- <div className="text-xs text-white/60">
1216
+ <div className="text-fm-icon-active font-medium">
1217
+ LinkedInIcon
1218
+ </div>
1219
+ <div className="text-fm-tertiary text-xs">
1180
1220
  Professional network
1181
1221
  </div>
1182
1222
  </div>
1183
1223
  </div>
1184
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
1185
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-red-500/20">
1186
- <span className="!text-2xl !text-white">📺</span>
1224
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
1225
+ <div className="bg-fm-icon-negative/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
1226
+ <span className="text-fm-icon-active! !text-2xl">📺</span>
1187
1227
  </div>
1188
1228
  <div>
1189
- <div className="font-medium text-white">YouTubeIcon</div>
1190
- <div className="text-xs text-white/60">
1229
+ <div className="text-fm-icon-active font-medium">
1230
+ YouTubeIcon
1231
+ </div>
1232
+ <div className="text-fm-tertiary text-xs">
1191
1233
  Video platform
1192
1234
  </div>
1193
1235
  </div>
1194
1236
  </div>
1195
- <div className="!space-y-3 rounded-lg border border-white/10 bg-white/5 p-4 text-center">
1196
- <div className="!mx-auto flex h-12 w-12 items-center justify-center rounded-lg bg-purple-500/20">
1197
- <span className="!text-2xl !text-white">📷</span>
1237
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary !space-y-3 rounded-lg border p-4 text-center">
1238
+ <div className="bg-fm-secondary-500/20 !mx-auto flex h-12 w-12 items-center justify-center rounded-lg">
1239
+ <span className="text-fm-icon-active! !text-2xl">📷</span>
1198
1240
  </div>
1199
1241
  <div>
1200
- <div className="font-medium text-white">
1242
+ <div className="text-fm-icon-active font-medium">
1201
1243
  InstagramIcon
1202
1244
  </div>
1203
- <div className="text-xs text-white/60">Photo sharing</div>
1245
+ <div className="text-fm-tertiary text-xs">
1246
+ Photo sharing
1247
+ </div>
1204
1248
  </div>
1205
1249
  </div>
1206
1250
  </div>
@@ -1208,15 +1252,15 @@ function ShareButton() {
1208
1252
  </div>
1209
1253
 
1210
1254
  {/* Footer */}
1211
- <div className="border-t border-white/10 bg-black/20 backdrop-blur-xl">
1255
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary border-t backdrop-blur-xl">
1212
1256
  <div className="!mx-auto max-w-7xl px-6 py-8">
1213
1257
  <div className="!space-y-4 text-center">
1214
- <p className="!text-white/60">
1258
+ <p className="text-fm-tertiary!">
1215
1259
  TwitterXIcon is part of the Aural UI icon library, built
1216
1260
  with accessibility and social media integration best
1217
1261
  practices in mind.
1218
1262
  </p>
1219
- <p className="text-sm !text-white/40">
1263
+ <p className="text-fm-placeholder! text-sm">
1220
1264
  All icons use Radix UI's AccessibleIcon for screen reader
1221
1265
  compatibility and follow WCAG guidelines for social platform
1222
1266
  recognition and brand consistency.
@@ -1266,20 +1310,20 @@ const storyParameters = {
1266
1310
  backgrounds: {
1267
1311
  default: "dark",
1268
1312
  values: [
1269
- { name: "dark", value: "#0a0a0a" },
1270
- { name: "darker", value: "#000000" },
1313
+ { name: "dark", value: "var(--color-fm-surface-primary)" },
1314
+ { name: "darker", value: "var(--color-fm-neutral-0)" },
1271
1315
  ],
1272
1316
  },
1273
1317
  }
1274
1318
 
1275
1319
  export const Default: Story = {
1276
1320
  args: {
1277
- className: "h-8 w-8 text-white",
1321
+ className: "h-8 w-8 text-fm-icon-active",
1278
1322
  withAccessibility: true,
1279
1323
  },
1280
1324
  parameters: storyParameters,
1281
1325
  render: (args) => (
1282
- <div className="flex h-32 min-h-dvh items-center justify-center rounded-lg bg-gradient-to-br from-gray-900 to-gray-800">
1326
+ <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">
1283
1327
  <TwitterXIcon {...args} />
1284
1328
  </div>
1285
1329
  ),
@@ -1296,30 +1340,30 @@ export const SizeVariations: Story = {
1296
1340
  },
1297
1341
  },
1298
1342
  render: () => (
1299
- <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">
1343
+ <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">
1300
1344
  <div className="text-center">
1301
- <TwitterXIcon className="!mx-auto mb-2 h-3 w-3 text-white" />
1302
- <span className="text-xs text-white/60">12px</span>
1345
+ <TwitterXIcon className="text-fm-icon-active !mx-auto mb-2 h-3 w-3" />
1346
+ <span className="text-fm-tertiary text-xs">12px</span>
1303
1347
  </div>
1304
1348
  <div className="text-center">
1305
- <TwitterXIcon className="!mx-auto mb-2 h-4 w-4 text-white" />
1306
- <span className="text-xs text-white/60">16px</span>
1349
+ <TwitterXIcon className="text-fm-icon-active !mx-auto mb-2 h-4 w-4" />
1350
+ <span className="text-fm-tertiary text-xs">16px</span>
1307
1351
  </div>
1308
1352
  <div className="text-center">
1309
- <TwitterXIcon className="!mx-auto mb-2 h-5 w-5 text-white" />
1310
- <span className="text-xs text-white/60">20px</span>
1353
+ <TwitterXIcon className="text-fm-icon-active !mx-auto mb-2 h-5 w-5" />
1354
+ <span className="text-fm-tertiary text-xs">20px</span>
1311
1355
  </div>
1312
1356
  <div className="text-center">
1313
- <TwitterXIcon className="!mx-auto mb-2 h-6 w-6 text-white" />
1314
- <span className="text-xs text-white/60">24px</span>
1357
+ <TwitterXIcon className="text-fm-icon-active !mx-auto mb-2 h-6 w-6" />
1358
+ <span className="text-fm-tertiary text-xs">24px</span>
1315
1359
  </div>
1316
1360
  <div className="text-center">
1317
- <TwitterXIcon className="!mx-auto mb-2 h-8 w-8 text-white" />
1318
- <span className="text-xs text-white/60">32px</span>
1361
+ <TwitterXIcon className="text-fm-icon-active !mx-auto mb-2 h-8 w-8" />
1362
+ <span className="text-fm-tertiary text-xs">32px</span>
1319
1363
  </div>
1320
1364
  <div className="text-center">
1321
- <TwitterXIcon className="!mx-auto mb-2 h-12 w-12 text-white" />
1322
- <span className="text-xs text-white/60">48px</span>
1365
+ <TwitterXIcon className="text-fm-icon-active !mx-auto mb-2 h-12 w-12" />
1366
+ <span className="text-fm-tertiary text-xs">48px</span>
1323
1367
  </div>
1324
1368
  </div>
1325
1369
  ),
@@ -1336,34 +1380,42 @@ export const BrandColors: Story = {
1336
1380
  },
1337
1381
  },
1338
1382
  render: () => (
1339
- <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">
1383
+ <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">
1340
1384
  <div className="text-center">
1341
- <div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg bg-black">
1342
- <TwitterXIcon className="h-8 w-8 text-white" />
1385
+ <div className="bg-fm-surface-primary !mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg">
1386
+ <TwitterXIcon className="text-fm-icon-active h-8 w-8" />
1387
+ </div>
1388
+ <div className="text-fm-icon-active text-sm font-medium">
1389
+ Official Black
1343
1390
  </div>
1344
- <div className="text-sm font-medium text-white">Official Black</div>
1345
- <div className="text-xs text-white/60">Primary brand</div>
1391
+ <div className="text-fm-tertiary text-xs">Primary brand</div>
1346
1392
  </div>
1347
1393
  <div className="text-center">
1348
- <div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border border-gray-300 bg-white">
1349
- <TwitterXIcon className="h-8 w-8 text-black" />
1394
+ <div className="border-fm-divider-primary bg-fm-surface-contrast !mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg border">
1395
+ <TwitterXIcon className="text-fm-icon-active h-8 w-8" />
1350
1396
  </div>
1351
- <div className="text-sm font-medium text-white">Inverted White</div>
1352
- <div className="text-xs text-white/60">Light backgrounds</div>
1397
+ <div className="text-fm-icon-active text-sm font-medium">
1398
+ Inverted White
1399
+ </div>
1400
+ <div className="text-fm-tertiary text-xs">Light backgrounds</div>
1353
1401
  </div>
1354
1402
  <div className="text-center">
1355
- <div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg bg-gray-600">
1356
- <TwitterXIcon className="h-8 w-8 text-white" />
1403
+ <div className="bg-fm-surface-tertiary !mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg">
1404
+ <TwitterXIcon className="text-fm-icon-active h-8 w-8" />
1405
+ </div>
1406
+ <div className="text-fm-icon-active text-sm font-medium">
1407
+ Neutral Gray
1357
1408
  </div>
1358
- <div className="text-sm font-medium text-white">Neutral Gray</div>
1359
- <div className="text-xs text-white/60">Subtle integration</div>
1409
+ <div className="text-fm-tertiary text-xs">Subtle integration</div>
1360
1410
  </div>
1361
1411
  <div className="text-center">
1362
- <div className="!mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg bg-blue-500">
1363
- <TwitterXIcon className="h-8 w-8 text-white" />
1412
+ <div className="bg-fm-icon-info !mx-auto mb-3 flex h-16 w-16 items-center justify-center rounded-lg">
1413
+ <TwitterXIcon className="text-fm-icon-active h-8 w-8" />
1414
+ </div>
1415
+ <div className="text-fm-icon-active text-sm font-medium">
1416
+ Accent Color
1364
1417
  </div>
1365
- <div className="text-sm font-medium text-white">Accent Color</div>
1366
- <div className="text-xs text-white/60">Themed integration</div>
1418
+ <div className="text-fm-tertiary text-xs">Themed integration</div>
1367
1419
  </div>
1368
1420
  </div>
1369
1421
  ),
@@ -1380,19 +1432,21 @@ export const UsageExamples: Story = {
1380
1432
  },
1381
1433
  },
1382
1434
  render: () => (
1383
- <div className="min-h-dvh !space-y-8 rounded-lg bg-gradient-to-br from-gray-900 to-gray-800 p-8">
1435
+ <div className="from-fm-surface-primary to-fm-surface-secondary min-h-dvh !space-y-8 rounded-lg bg-linear-to-br p-8">
1384
1436
  {/* Share Button */}
1385
1437
  <div className="!space-y-2">
1386
- <h3 className="text-sm font-medium text-white">Social Share Button</h3>
1387
- <div className="rounded-lg border border-white/10 bg-white/5 p-4">
1438
+ <h3 className="text-fm-icon-active text-sm font-medium">
1439
+ Social Share Button
1440
+ </h3>
1441
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-4">
1388
1442
  <div className="flex gap-3">
1389
- <button className="flex items-center gap-2 rounded-lg border border-gray-700 bg-black px-4 py-2 transition-colors hover:bg-gray-800">
1390
- <TwitterXIcon className="h-4 w-4 text-white" />
1391
- <span className="text-sm text-white">Share on X</span>
1443
+ <button className="border-fm-divider-contrast bg-fm-surface-primary hover:bg-fm-surface-secondary flex items-center gap-2 rounded-lg border px-4 py-2 transition-colors">
1444
+ <TwitterXIcon className="text-fm-icon-active h-4 w-4" />
1445
+ <span className="text-fm-icon-active text-sm">Share on X</span>
1392
1446
  </button>
1393
- <button className="flex items-center gap-2 rounded-lg bg-blue-600 px-4 py-2 transition-colors hover:bg-blue-700">
1394
- <span className="text-sm text-white">📘</span>
1395
- <span className="text-sm text-white">Facebook</span>
1447
+ <button className="bg-fm-icon-info hover:bg-fm-icon-info flex items-center gap-2 rounded-lg px-4 py-2 transition-colors">
1448
+ <span className="text-fm-icon-active text-sm">📘</span>
1449
+ <span className="text-fm-icon-active text-sm">Facebook</span>
1396
1450
  </button>
1397
1451
  </div>
1398
1452
  </div>
@@ -1400,41 +1454,45 @@ export const UsageExamples: Story = {
1400
1454
 
1401
1455
  {/* Social Auth */}
1402
1456
  <div className="!space-y-2">
1403
- <h3 className="text-sm font-medium text-white">
1457
+ <h3 className="text-fm-icon-active text-sm font-medium">
1404
1458
  Social Authentication
1405
1459
  </h3>
1406
- <div className="rounded-lg border border-white/10 bg-white/5 p-4">
1407
- <button className="flex w-full items-center justify-center gap-3 rounded-lg border border-gray-700 bg-black px-4 py-3 transition-colors hover:bg-gray-800">
1408
- <TwitterXIcon className="h-5 w-5 text-white" />
1409
- <span className="font-medium text-white">Continue with X</span>
1460
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-4">
1461
+ <button className="border-fm-divider-contrast bg-fm-surface-primary hover:bg-fm-surface-secondary flex w-full items-center justify-center gap-3 rounded-lg border px-4 py-3 transition-colors">
1462
+ <TwitterXIcon className="text-fm-icon-active h-5 w-5" />
1463
+ <span className="text-fm-icon-active font-medium">
1464
+ Continue with X
1465
+ </span>
1410
1466
  </button>
1411
1467
  </div>
1412
1468
  </div>
1413
1469
 
1414
1470
  {/* Footer Links */}
1415
1471
  <div className="!space-y-2">
1416
- <h3 className="text-sm font-medium text-white">Footer Social Links</h3>
1417
- <div className="rounded-lg border border-white/10 bg-white/5 p-4">
1472
+ <h3 className="text-fm-icon-active text-sm font-medium">
1473
+ Footer Social Links
1474
+ </h3>
1475
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-4">
1418
1476
  <div className="flex items-center gap-3">
1419
- <span className="text-sm text-white/60">Follow us:</span>
1477
+ <span className="text-fm-tertiary text-sm">Follow us:</span>
1420
1478
  <div className="flex gap-2">
1421
1479
  <a
1422
1480
  href="#"
1423
- className="rounded bg-black p-2 transition-colors hover:bg-gray-800"
1481
+ className="bg-fm-surface-primary hover:bg-fm-surface-secondary rounded p-2 transition-colors"
1424
1482
  >
1425
- <TwitterXIcon className="h-4 w-4 text-white" />
1483
+ <TwitterXIcon className="text-fm-icon-active h-4 w-4" />
1426
1484
  </a>
1427
1485
  <a
1428
1486
  href="#"
1429
- className="rounded bg-blue-600 p-2 transition-colors hover:bg-blue-700"
1487
+ className="bg-fm-icon-info hover:bg-fm-icon-info rounded p-2 transition-colors"
1430
1488
  >
1431
- <span className="text-sm text-white">📘</span>
1489
+ <span className="text-fm-icon-active text-sm">📘</span>
1432
1490
  </a>
1433
1491
  <a
1434
1492
  href="#"
1435
- className="rounded bg-red-600 p-2 transition-colors hover:bg-red-700"
1493
+ className="bg-fm-icon-negative hover:bg-fm-icon-negative rounded p-2 transition-colors"
1436
1494
  >
1437
- <span className="text-sm text-white">📺</span>
1495
+ <span className="text-fm-icon-active text-sm">📺</span>
1438
1496
  </a>
1439
1497
  </div>
1440
1498
  </div>
@@ -1457,11 +1515,11 @@ export const Playground: Story = {
1457
1515
  args: {
1458
1516
  width: 24,
1459
1517
  height: 24,
1460
- className: "text-white",
1518
+ className: "text-fm-icon-active",
1461
1519
  },
1462
1520
  render: (args) => (
1463
- <div className="flex h-64 min-h-dvh items-center justify-center rounded-lg bg-gradient-to-br from-gray-900 to-gray-800">
1464
- <div className="rounded-lg border border-white/10 bg-white/5 p-8">
1521
+ <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">
1522
+ <div className="border-fm-divider-secondary bg-fm-surface-secondary rounded-lg border p-8">
1465
1523
  <TwitterXIcon {...args} />
1466
1524
  </div>
1467
1525
  </div>