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