agmon 0.2.0 → 0.2.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 (278) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/build-manifest.json +3 -3
  3. package/.next/fallback-build-manifest.json +3 -3
  4. package/.next/prerender-manifest.json +8 -8
  5. package/.next/server/app/_global-error.html +1 -1
  6. package/.next/server/app/_global-error.rsc +1 -1
  7. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  8. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  9. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  10. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  11. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  12. package/.next/server/app/_not-found.html +1 -1
  13. package/.next/server/app/_not-found.rsc +15 -14
  14. package/.next/server/app/_not-found.segments/_full.segment.rsc +15 -14
  15. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +4 -3
  16. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  17. package/.next/server/app/api/media/route.js.nft.json +1 -1
  18. package/.next/server/app/api/reports/tokens/route.js.nft.json +1 -1
  19. package/.next/server/app/api/sessions/[id]/transcript/route.js.nft.json +1 -1
  20. package/.next/server/app/api/traces/stream/route.js.nft.json +1 -1
  21. package/.next/server/app/api/version/route.js.nft.json +1 -1
  22. package/.next/server/app/api/workspace/file-content/route.js.nft.json +1 -1
  23. package/.next/server/app/api/workspace/files/route.js.nft.json +1 -1
  24. package/.next/server/app/chat/page.js.nft.json +1 -1
  25. package/.next/server/app/chat/page_client-reference-manifest.js +1 -1
  26. package/.next/server/app/chat.html +1 -1
  27. package/.next/server/app/chat.rsc +20 -19
  28. package/.next/server/app/chat.segments/_full.segment.rsc +20 -19
  29. package/.next/server/app/chat.segments/_tree.segment.rsc +2 -2
  30. package/.next/server/app/chat.segments/chat/__PAGE__.segment.rsc +21 -20
  31. package/.next/server/app/index.html +1 -1
  32. package/.next/server/app/index.rsc +20 -18
  33. package/.next/server/app/index.segments/__PAGE__.segment.rsc +8 -8
  34. package/.next/server/app/index.segments/_full.segment.rsc +20 -18
  35. package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  36. package/.next/server/app/page.js.nft.json +1 -1
  37. package/.next/server/app/page_client-reference-manifest.js +1 -1
  38. package/.next/server/app/reports/page.js.nft.json +1 -1
  39. package/.next/server/app/reports/page_client-reference-manifest.js +1 -1
  40. package/.next/server/app/reports.html +1 -1
  41. package/.next/server/app/reports.rsc +4 -4
  42. package/.next/server/app/reports.segments/_full.segment.rsc +4 -4
  43. package/.next/server/app/reports.segments/_tree.segment.rsc +2 -2
  44. package/.next/server/app/reports.segments/reports/__PAGE__.segment.rsc +4 -4
  45. package/.next/server/app/store/page.js.nft.json +1 -1
  46. package/.next/server/app/store/page_client-reference-manifest.js +1 -1
  47. package/.next/server/app/store.html +1 -1
  48. package/.next/server/app/store.rsc +5 -5
  49. package/.next/server/app/store.segments/_full.segment.rsc +5 -5
  50. package/.next/server/app/store.segments/_tree.segment.rsc +2 -2
  51. package/.next/server/app/store.segments/store/__PAGE__.segment.rsc +5 -5
  52. package/.next/server/chunks/_0ao-_t4jkb46h._.js +2 -2
  53. package/.next/server/chunks/_0ao-_t4jkb46h._.js.map +1 -1
  54. package/.next/server/chunks/src_lib_watchers_antigravityWatcher_0w1-atg39y__p.js.map +1 -1
  55. package/.next/server/chunks/ssr/[root-of-the-server]__0i2rbwbkxbdog._.js +3 -0
  56. package/.next/server/chunks/ssr/[root-of-the-server]__0i2rbwbkxbdog._.js.map +1 -0
  57. package/.next/server/chunks/ssr/[root-of-the-server]__0qzscpxebh28_._.js +3 -0
  58. package/.next/server/chunks/ssr/[root-of-the-server]__0qzscpxebh28_._.js.map +1 -0
  59. package/.next/server/chunks/ssr/[root-of-the-server]__1jwplflwix8wi._.js +427 -0
  60. package/.next/server/chunks/ssr/[root-of-the-server]__1jwplflwix8wi._.js.map +1 -0
  61. package/.next/server/chunks/ssr/[root-of-the-server]__1kt7h7bz59mdn._.js +1 -1
  62. package/.next/server/chunks/ssr/[root-of-the-server]__1kt7h7bz59mdn._.js.map +1 -1
  63. package/.next/server/chunks/ssr/[root-of-the-server]__1otsvjy81s8my._.js +427 -0
  64. package/.next/server/chunks/ssr/[root-of-the-server]__1otsvjy81s8my._.js.map +1 -0
  65. package/.next/server/chunks/ssr/_0--937zhi743v._.js +3 -0
  66. package/.next/server/chunks/ssr/_0--937zhi743v._.js.map +1 -0
  67. package/.next/server/chunks/ssr/_0e3frtjrk-wi9._.js +3 -0
  68. package/.next/server/chunks/ssr/_0e3frtjrk-wi9._.js.map +1 -0
  69. package/.next/server/chunks/ssr/_0h29jdf4relbq._.js +3 -0
  70. package/.next/server/chunks/ssr/_0h29jdf4relbq._.js.map +1 -0
  71. package/.next/server/chunks/ssr/_1487-zi23c5eb._.js +1 -1
  72. package/.next/server/chunks/ssr/_1487-zi23c5eb._.js.map +1 -1
  73. package/.next/server/chunks/ssr/_1vgwoe-shb9z7._.js +3 -0
  74. package/.next/server/chunks/ssr/_1vgwoe-shb9z7._.js.map +1 -0
  75. package/.next/server/chunks/ssr/_1zm4m-s8k7oe3._.js +3 -0
  76. package/.next/server/chunks/ssr/_1zm4m-s8k7oe3._.js.map +1 -0
  77. package/.next/server/chunks/ssr/_202tntue-jj6s._.js +3 -0
  78. package/.next/server/chunks/ssr/_202tntue-jj6s._.js.map +1 -0
  79. package/.next/server/chunks/ssr/{node_modules_1wlwrgnt65zus._.js → node_modules_00ebs67b4u61w._.js} +1 -1
  80. package/.next/server/chunks/ssr/{node_modules_0m3ihe65818y_._.js → node_modules_01p9ctt-n2dxp._.js} +1 -1
  81. package/.next/server/chunks/ssr/{node_modules_1kr1c-ncf8q9t._.js → node_modules_05i69rc9pwcdx._.js} +1 -1
  82. package/.next/server/chunks/ssr/{node_modules_02jwra-d9iqim._.js → node_modules_06mgkab1v5iox._.js} +2 -2
  83. package/.next/server/chunks/ssr/{node_modules_1dff7b_kvngr-._.js → node_modules_07bjxeq9dfgn1._.js} +2 -2
  84. package/.next/server/chunks/ssr/{node_modules_02vtgweceovke._.js → node_modules_08q6a-f2itxyo._.js} +1 -1
  85. package/.next/server/chunks/ssr/{node_modules_13nsmuhey_ti_._.js → node_modules_09v49jhajmvl4._.js} +2 -2
  86. package/.next/server/chunks/ssr/{node_modules_0oukyh0iq21ow._.js → node_modules_0b8zi3pbl-y9n._.js} +2 -2
  87. package/.next/server/chunks/ssr/{node_modules_061uaylfjwqk7._.js → node_modules_0d2ios01ot1in._.js} +1 -1
  88. package/.next/server/chunks/ssr/{node_modules_0b8ndnuql44z1._.js → node_modules_0dw0vozejrnml._.js} +2 -2
  89. package/.next/server/chunks/ssr/{node_modules_05w7qhtrzvnk6._.js → node_modules_0e3njj436xau-._.js} +1 -1
  90. package/.next/server/chunks/ssr/{node_modules_0z7rdbaf13024._.js → node_modules_0e6qoh__e4a69._.js} +1 -1
  91. package/.next/server/chunks/ssr/{node_modules_1ll-58c1c-qab._.js → node_modules_0hb0q0epwvp--._.js} +1 -1
  92. package/.next/server/chunks/ssr/{node_modules_0f773uqgzj7y7._.js → node_modules_0jla9ugf1y6rb._.js} +1 -1
  93. package/.next/server/chunks/ssr/{node_modules_0fd1swhk15cx3._.js → node_modules_0l-y0kqtu_r3o._.js} +1 -1
  94. package/.next/server/chunks/ssr/{node_modules_1zs2nou5uogby._.js → node_modules_0l814qpw677vm._.js} +1 -1
  95. package/.next/server/chunks/ssr/{node_modules_1c8i3jrmo4393._.js → node_modules_0lqovp8j8ld76._.js} +1 -1
  96. package/.next/server/chunks/ssr/{node_modules_0z3elum1675ve._.js → node_modules_0o63z1gd17rhb._.js} +1 -1
  97. package/.next/server/chunks/ssr/{node_modules_1xyxigbqzb8vs._.js → node_modules_0sjdrli5douui._.js} +1 -1
  98. package/.next/server/chunks/ssr/{node_modules_1iovyom0-y7o_._.js → node_modules_0xh8tnq1niblb._.js} +1 -1
  99. package/.next/server/chunks/ssr/{node_modules_0nde84kzuwv2n._.js → node_modules_0yayrqhzfk8wy._.js} +1 -1
  100. package/.next/server/chunks/ssr/{node_modules_0__m9_odts7_e._.js → node_modules_0z1e37smavebg._.js} +2 -2
  101. package/.next/server/chunks/ssr/{node_modules_0f4xh33v3iltc._.js → node_modules_0zb0i39mnjdf3._.js} +1 -1
  102. package/.next/server/chunks/ssr/{node_modules_02nv3yff2pqh8._.js → node_modules_10g1mmrf63d8a._.js} +2 -2
  103. package/.next/server/chunks/ssr/{node_modules_0-6sb1gkbjo93._.js → node_modules_152txg4c7ose3._.js} +2 -2
  104. package/.next/server/chunks/ssr/{node_modules_12qn4bepdou5v._.js → node_modules_185fuy4cv7loa._.js} +2 -2
  105. package/.next/server/chunks/ssr/{node_modules_0dq0dsblt-q0g._.js → node_modules_1aqaelh-8fme6._.js} +1 -1
  106. package/.next/server/chunks/ssr/{node_modules_1-iyhsn_1p9nx._.js → node_modules_1d4sreyq0ubqg._.js} +2 -2
  107. package/.next/server/chunks/ssr/{node_modules_0hqa9oxz17hip._.js → node_modules_1e_nc2eyg4djz._.js} +1 -1
  108. package/.next/server/chunks/ssr/{node_modules_1rlnehdn16ay-._.js → node_modules_1hd7j-tdb8drq._.js} +1 -1
  109. package/.next/server/chunks/ssr/{node_modules_12qw2ucebdvol._.js → node_modules_1i3x2csuq_-jt._.js} +1 -1
  110. package/.next/server/chunks/ssr/{node_modules_0zc49fdcopqu9._.js → node_modules_1l2g7btuh3e4s._.js} +2 -2
  111. package/.next/server/chunks/ssr/{node_modules_1-sz_-qddwilq._.js → node_modules_1l46or7mgko0z._.js} +1 -1
  112. package/.next/server/chunks/ssr/{node_modules_0fs8mckuwk2tj._.js → node_modules_1ltys5mwtcv-n._.js} +1 -1
  113. package/.next/server/chunks/ssr/{node_modules_0vn0kjn_84lmn._.js → node_modules_1nz3ckv6tu_66._.js} +1 -1
  114. package/.next/server/chunks/ssr/{node_modules_0t4h1rucl35hl._.js → node_modules_1pquu5wprusnc._.js} +2 -2
  115. package/.next/server/chunks/ssr/{node_modules_0-nvg0c4pgfb8._.js → node_modules_1qnypguag6s_l._.js} +1 -1
  116. package/.next/server/chunks/ssr/{node_modules_1v4lexrfhnlhs._.js → node_modules_1r6w-jlme6d10._.js} +1 -1
  117. package/.next/server/chunks/ssr/{node_modules_1f4geuvkvlxj1._.js → node_modules_1st9dwe66yx93._.js} +1 -1
  118. package/.next/server/chunks/ssr/{node_modules_0kovk4b6czb22._.js → node_modules_1tskcaktx6ods._.js} +1 -1
  119. package/.next/server/chunks/ssr/{node_modules_07maxxr-t28ql._.js → node_modules_1wew4nn7i1uup._.js} +1 -1
  120. package/.next/server/chunks/ssr/{node_modules_1216007ogd5om._.js → node_modules_1zbmc81s-4zsm._.js} +1 -1
  121. package/.next/server/chunks/ssr/{node_modules_1kv6lsckqs-m0._.js → node_modules_1zii7uk468cay._.js} +2 -2
  122. package/.next/server/chunks/ssr/{node_modules_katex_dist_katex_mjs_0bmuudv_6eypr._.js → node_modules_katex_dist_katex_mjs_0kqo9zl9cgwbo._.js} +1 -1
  123. package/.next/server/chunks/ssr/{node_modules_katex_dist_katex_mjs_0qyy6pq9uzpk0._.js → node_modules_katex_dist_katex_mjs_1604s1ky8db8u._.js} +1 -1
  124. package/.next/server/chunks/ssr/{node_modules_lucide-react_dist_esm_1d8fezw1qsiob._.js → node_modules_lucide-react_dist_esm_0-5bcc79665lq._.js} +2 -2
  125. package/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_0-5bcc79665lq._.js.map +1 -0
  126. package/.next/server/chunks/ssr/{node_modules_lucide-react_dist_esm_0pezg1352q13j._.js → node_modules_lucide-react_dist_esm_0axoa1eg51x1-._.js} +2 -2
  127. package/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_0axoa1eg51x1-._.js.map +1 -0
  128. package/.next/server/chunks/ssr/{node_modules_lucide-react_dist_esm_131i-tjzse3ye._.js → node_modules_lucide-react_dist_esm_18ei1-na3kusb._.js} +2 -2
  129. package/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_18ei1-na3kusb._.js.map +1 -0
  130. package/.next/server/chunks/ssr/{node_modules_lucide-react_dist_esm_1to-9cv1ysvs6._.js → node_modules_lucide-react_dist_esm_1tx493x2_auzs._.js} +2 -2
  131. package/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_1tx493x2_auzs._.js.map +1 -0
  132. package/.next/server/chunks/ssr/node_modules_mermaid_dist_mermaid_core_mjs_06it7ktosm1dr._.js +3 -0
  133. package/.next/server/chunks/ssr/node_modules_mermaid_dist_mermaid_core_mjs_06it7ktosm1dr._.js.map +1 -0
  134. package/.next/server/chunks/ssr/src_app_page_1vqfk0-j72fp6.js +1 -1
  135. package/.next/server/chunks/ssr/src_app_page_1vqfk0-j72fp6.js.map +1 -1
  136. package/.next/server/chunks/ssr/src_components_reports_TokenReportView_jsx_1g3p_enbbsadt._.js +1 -1
  137. package/.next/server/chunks/ssr/src_components_reports_TokenReportView_jsx_1g3p_enbbsadt._.js.map +1 -1
  138. package/.next/server/middleware-build-manifest.js +3 -3
  139. package/.next/server/pages/404.html +1 -1
  140. package/.next/server/pages/500.html +1 -1
  141. package/.next/server/preview-props.json +3 -3
  142. package/.next/server/server-reference-manifest.js +1 -1
  143. package/.next/server/server-reference-manifest.json +1 -1
  144. package/.next/static/chunks/0r9apkv3exqv-.js +1 -0
  145. package/.next/static/chunks/17jorrh_pfel_.js +1 -0
  146. package/.next/static/chunks/1n_lb7wmn81jj.js +1 -0
  147. package/.next/static/chunks/2-w116ewoshm1.js +1 -0
  148. package/.next/static/chunks/23uup1e8841av.js +1 -0
  149. package/.next/static/chunks/25l0z48vlvdu4.css +1 -0
  150. package/.next/static/chunks/2rx7xvi55ohln.js +1 -0
  151. package/.next/static/chunks/3og0e9qcff393.js +425 -0
  152. package/.next/static/chunks/3rtpnpqd981z9.js +1 -0
  153. package/.next/trace +1 -1
  154. package/.next/trace-build +1 -1
  155. package/bin/cli.js +12 -0
  156. package/package.json +1 -1
  157. package/src/app/chat/page.js +14 -14
  158. package/src/app/globals.css +128 -0
  159. package/src/app/layout.js +6 -1
  160. package/src/app/page.js +1 -1
  161. package/src/components/chat/ChatMessageItem.js +12 -12
  162. package/src/components/chat/CodeBlock.js +5 -5
  163. package/src/components/chat/DiffViewer.js +27 -27
  164. package/src/components/chat/MarkdownRenderer.js +19 -19
  165. package/src/components/chat/SessionChatView.js +41 -41
  166. package/src/components/chat/SessionSearch.js +8 -8
  167. package/src/components/chat/ThinkingAccordion.js +3 -3
  168. package/src/components/chat/ToolCallCard.js +6 -6
  169. package/src/components/chat/ToolOutputView.js +19 -19
  170. package/src/components/factory/office-canvas.js +134 -3
  171. package/src/components/factory/scene/characters.js +267 -32
  172. package/src/components/layout/CommandPalette.jsx +12 -0
  173. package/src/components/layout/EditorTabs.jsx +17 -0
  174. package/src/components/layout/LayoutToggles.jsx +31 -2
  175. package/src/components/layout/LeftSidebar.jsx +27 -3
  176. package/src/components/layout/RightSidebar.jsx +8 -8
  177. package/src/components/layout/TitleBar.jsx +5 -1
  178. package/src/components/layout/VSCodeWorkbench.jsx +78 -14
  179. package/src/components/store/Item3DRenderer.jsx +602 -48
  180. package/src/components/store/LiveFittingRoom.jsx +55 -791
  181. package/src/components/store/LiveReactAgent.jsx +1637 -0
  182. package/src/components/store/SupporterStoreModal.jsx +3 -2
  183. package/src/components/store/SupporterStoreView.jsx +94 -34
  184. package/src/components/theme/ThemeSettingsModal.jsx +40 -40
  185. package/src/components/ui/Button.jsx +4 -4
  186. package/src/components/ui/Input.jsx +1 -1
  187. package/src/components/ui/Modal.jsx +6 -6
  188. package/src/components/ui/Select.jsx +3 -3
  189. package/src/lib/catalog/auras.js +226 -1199
  190. package/src/lib/catalog/index.js +60 -1
  191. package/src/lib/catalog/pets.js +291 -2398
  192. package/src/lib/catalog/props.js +488 -4199
  193. package/src/lib/catalog/skins.js +773 -3249
  194. package/src/lib/catalog/trophies.js +226 -1199
  195. package/src/lib/mockTraces.js +15 -15
  196. package/src/lib/supporterStore.js +1 -1
  197. package/src/lib/traceContract.js +1 -1
  198. package/src/lib/watchers/claudeWatcher.js +24 -19
  199. package/.next/server/chunks/ssr/[root-of-the-server]__19s2v5rryc14o._.js +0 -3
  200. package/.next/server/chunks/ssr/[root-of-the-server]__19s2v5rryc14o._.js.map +0 -1
  201. package/.next/server/chunks/ssr/[root-of-the-server]__1_jerxrctq6ev._.js +0 -427
  202. package/.next/server/chunks/ssr/[root-of-the-server]__1_jerxrctq6ev._.js.map +0 -1
  203. package/.next/server/chunks/ssr/[root-of-the-server]__1pvso-uyf--97._.js +0 -427
  204. package/.next/server/chunks/ssr/[root-of-the-server]__1pvso-uyf--97._.js.map +0 -1
  205. package/.next/server/chunks/ssr/[root-of-the-server]__1y78dc7oiz7ks._.js +0 -3
  206. package/.next/server/chunks/ssr/[root-of-the-server]__1y78dc7oiz7ks._.js.map +0 -1
  207. package/.next/server/chunks/ssr/_0ozao7omdwbvd._.js +0 -3
  208. package/.next/server/chunks/ssr/_0ozao7omdwbvd._.js.map +0 -1
  209. package/.next/server/chunks/ssr/_0rcmpdyxc1qwj._.js +0 -3
  210. package/.next/server/chunks/ssr/_0rcmpdyxc1qwj._.js.map +0 -1
  211. package/.next/server/chunks/ssr/_0wv0xnhun3mk7._.js +0 -3
  212. package/.next/server/chunks/ssr/_0wv0xnhun3mk7._.js.map +0 -1
  213. package/.next/server/chunks/ssr/_17rmaft1zusua._.js +0 -3
  214. package/.next/server/chunks/ssr/_17rmaft1zusua._.js.map +0 -1
  215. package/.next/server/chunks/ssr/_1e-d4pcj59a7a._.js +0 -3
  216. package/.next/server/chunks/ssr/_1e-d4pcj59a7a._.js.map +0 -1
  217. package/.next/server/chunks/ssr/_1qr5gnh64z8pg._.js +0 -3
  218. package/.next/server/chunks/ssr/_1qr5gnh64z8pg._.js.map +0 -1
  219. package/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_0pezg1352q13j._.js.map +0 -1
  220. package/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_131i-tjzse3ye._.js.map +0 -1
  221. package/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_1d8fezw1qsiob._.js.map +0 -1
  222. package/.next/server/chunks/ssr/node_modules_lucide-react_dist_esm_1to-9cv1ysvs6._.js.map +0 -1
  223. package/.next/static/chunks/0_3s_e4gd9xl0.js +0 -1
  224. package/.next/static/chunks/0i4kx4yl-dwfg.js +0 -425
  225. package/.next/static/chunks/0z0jbobmmvqoc.js +0 -1
  226. package/.next/static/chunks/1_a_gmob5qzho.js +0 -1
  227. package/.next/static/chunks/1ifqr4qo4697b.js +0 -1
  228. package/.next/static/chunks/2ccq9i8ev4dsx.js +0 -1
  229. package/.next/static/chunks/2mif7onk_9jy-.css +0 -1
  230. package/.next/static/chunks/40wyf-mv0tiu3.js +0 -1
  231. /package/.next/server/chunks/ssr/{node_modules_1c8i3jrmo4393._.js.map → node_modules_00ebs67b4u61w._.js.map} +0 -0
  232. /package/.next/server/chunks/ssr/{node_modules_02vtgweceovke._.js.map → node_modules_01p9ctt-n2dxp._.js.map} +0 -0
  233. /package/.next/server/chunks/ssr/{node_modules_1kr1c-ncf8q9t._.js.map → node_modules_05i69rc9pwcdx._.js.map} +0 -0
  234. /package/.next/server/chunks/ssr/{node_modules_02jwra-d9iqim._.js.map → node_modules_06mgkab1v5iox._.js.map} +0 -0
  235. /package/.next/server/chunks/ssr/{node_modules_1dff7b_kvngr-._.js.map → node_modules_07bjxeq9dfgn1._.js.map} +0 -0
  236. /package/.next/server/chunks/ssr/{node_modules_0m3ihe65818y_._.js.map → node_modules_08q6a-f2itxyo._.js.map} +0 -0
  237. /package/.next/server/chunks/ssr/{node_modules_0-6sb1gkbjo93._.js.map → node_modules_09v49jhajmvl4._.js.map} +0 -0
  238. /package/.next/server/chunks/ssr/{node_modules_0oukyh0iq21ow._.js.map → node_modules_0b8zi3pbl-y9n._.js.map} +0 -0
  239. /package/.next/server/chunks/ssr/{node_modules_061uaylfjwqk7._.js.map → node_modules_0d2ios01ot1in._.js.map} +0 -0
  240. /package/.next/server/chunks/ssr/{node_modules_02nv3yff2pqh8._.js.map → node_modules_0dw0vozejrnml._.js.map} +0 -0
  241. /package/.next/server/chunks/ssr/{node_modules_0-nvg0c4pgfb8._.js.map → node_modules_0e3njj436xau-._.js.map} +0 -0
  242. /package/.next/server/chunks/ssr/{node_modules_0fs8mckuwk2tj._.js.map → node_modules_0e6qoh__e4a69._.js.map} +0 -0
  243. /package/.next/server/chunks/ssr/{node_modules_0t4h1rucl35hl._.js.map → node_modules_0hb0q0epwvp--._.js.map} +0 -0
  244. /package/.next/server/chunks/ssr/{node_modules_0f773uqgzj7y7._.js.map → node_modules_0jla9ugf1y6rb._.js.map} +0 -0
  245. /package/.next/server/chunks/ssr/{node_modules_0dq0dsblt-q0g._.js.map → node_modules_0l-y0kqtu_r3o._.js.map} +0 -0
  246. /package/.next/server/chunks/ssr/{node_modules_0zc49fdcopqu9._.js.map → node_modules_0l814qpw677vm._.js.map} +0 -0
  247. /package/.next/server/chunks/ssr/{node_modules_1wlwrgnt65zus._.js.map → node_modules_0lqovp8j8ld76._.js.map} +0 -0
  248. /package/.next/server/chunks/ssr/{node_modules_0z3elum1675ve._.js.map → node_modules_0o63z1gd17rhb._.js.map} +0 -0
  249. /package/.next/server/chunks/ssr/{node_modules_1xyxigbqzb8vs._.js.map → node_modules_0sjdrli5douui._.js.map} +0 -0
  250. /package/.next/server/chunks/ssr/{node_modules_1-iyhsn_1p9nx._.js.map → node_modules_0xh8tnq1niblb._.js.map} +0 -0
  251. /package/.next/server/chunks/ssr/{node_modules_0nde84kzuwv2n._.js.map → node_modules_0yayrqhzfk8wy._.js.map} +0 -0
  252. /package/.next/server/chunks/ssr/{node_modules_0__m9_odts7_e._.js.map → node_modules_0z1e37smavebg._.js.map} +0 -0
  253. /package/.next/server/chunks/ssr/{node_modules_0f4xh33v3iltc._.js.map → node_modules_0zb0i39mnjdf3._.js.map} +0 -0
  254. /package/.next/server/chunks/ssr/{node_modules_0b8ndnuql44z1._.js.map → node_modules_10g1mmrf63d8a._.js.map} +0 -0
  255. /package/.next/server/chunks/ssr/{node_modules_1-sz_-qddwilq._.js.map → node_modules_152txg4c7ose3._.js.map} +0 -0
  256. /package/.next/server/chunks/ssr/{node_modules_12qn4bepdou5v._.js.map → node_modules_185fuy4cv7loa._.js.map} +0 -0
  257. /package/.next/server/chunks/ssr/{node_modules_0fd1swhk15cx3._.js.map → node_modules_1aqaelh-8fme6._.js.map} +0 -0
  258. /package/.next/server/chunks/ssr/{node_modules_13nsmuhey_ti_._.js.map → node_modules_1d4sreyq0ubqg._.js.map} +0 -0
  259. /package/.next/server/chunks/ssr/{node_modules_0hqa9oxz17hip._.js.map → node_modules_1e_nc2eyg4djz._.js.map} +0 -0
  260. /package/.next/server/chunks/ssr/{node_modules_1rlnehdn16ay-._.js.map → node_modules_1hd7j-tdb8drq._.js.map} +0 -0
  261. /package/.next/server/chunks/ssr/{node_modules_07maxxr-t28ql._.js.map → node_modules_1i3x2csuq_-jt._.js.map} +0 -0
  262. /package/.next/server/chunks/ssr/{node_modules_1iovyom0-y7o_._.js.map → node_modules_1l2g7btuh3e4s._.js.map} +0 -0
  263. /package/.next/server/chunks/ssr/{node_modules_1ll-58c1c-qab._.js.map → node_modules_1l46or7mgko0z._.js.map} +0 -0
  264. /package/.next/server/chunks/ssr/{node_modules_0z7rdbaf13024._.js.map → node_modules_1ltys5mwtcv-n._.js.map} +0 -0
  265. /package/.next/server/chunks/ssr/{node_modules_0vn0kjn_84lmn._.js.map → node_modules_1nz3ckv6tu_66._.js.map} +0 -0
  266. /package/.next/server/chunks/ssr/{node_modules_1zs2nou5uogby._.js.map → node_modules_1pquu5wprusnc._.js.map} +0 -0
  267. /package/.next/server/chunks/ssr/{node_modules_05w7qhtrzvnk6._.js.map → node_modules_1qnypguag6s_l._.js.map} +0 -0
  268. /package/.next/server/chunks/ssr/{node_modules_1v4lexrfhnlhs._.js.map → node_modules_1r6w-jlme6d10._.js.map} +0 -0
  269. /package/.next/server/chunks/ssr/{node_modules_1f4geuvkvlxj1._.js.map → node_modules_1st9dwe66yx93._.js.map} +0 -0
  270. /package/.next/server/chunks/ssr/{node_modules_0kovk4b6czb22._.js.map → node_modules_1tskcaktx6ods._.js.map} +0 -0
  271. /package/.next/server/chunks/ssr/{node_modules_12qw2ucebdvol._.js.map → node_modules_1wew4nn7i1uup._.js.map} +0 -0
  272. /package/.next/server/chunks/ssr/{node_modules_1216007ogd5om._.js.map → node_modules_1zbmc81s-4zsm._.js.map} +0 -0
  273. /package/.next/server/chunks/ssr/{node_modules_1kv6lsckqs-m0._.js.map → node_modules_1zii7uk468cay._.js.map} +0 -0
  274. /package/.next/server/chunks/ssr/{node_modules_katex_dist_katex_mjs_0bmuudv_6eypr._.js.map → node_modules_katex_dist_katex_mjs_0kqo9zl9cgwbo._.js.map} +0 -0
  275. /package/.next/server/chunks/ssr/{node_modules_katex_dist_katex_mjs_0qyy6pq9uzpk0._.js.map → node_modules_katex_dist_katex_mjs_1604s1ky8db8u._.js.map} +0 -0
  276. /package/.next/static/{sQnXeiP8rV6y2v0az_xw3 → 1y6Da0YgnPr2_6ncpWrbV}/_buildManifest.js +0 -0
  277. /package/.next/static/{sQnXeiP8rV6y2v0az_xw3 → 1y6Da0YgnPr2_6ncpWrbV}/_clientMiddlewareManifest.js +0 -0
  278. /package/.next/static/{sQnXeiP8rV6y2v0az_xw3 → 1y6Da0YgnPr2_6ncpWrbV}/_ssgManifest.js +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../node_modules/lucide-react/src/icons/coffee.ts","../../../../node_modules/lucide-react/src/icons/lock.ts","../../../../node_modules/lucide-react/src/icons/gift.ts","../../../../node_modules/lucide-react/src/icons/grid-3x3.ts","../../../../node_modules/lucide-react/src/icons/laptop.ts","../../../../node_modules/lucide-react/src/icons/key.ts","../../../../node_modules/lucide-react/src/icons/trophy.ts","../../../../node_modules/lucide-react/src/icons/layout-grid.ts","../../../../node_modules/lucide-react/src/icons/palette.ts","../../../../node_modules/lucide-react/src/icons/pause.ts","../../../../node_modules/lucide-react/src/icons/play.ts","../../../../node_modules/lucide-react/src/icons/shopping-bag.ts","../../../../node_modules/lucide-react/src/icons/volume-2.ts","../../../../src/components/store/LiveReactAgent.jsx","../../../../src/components/store/LiveFittingRoom.jsx","../../../../src/components/store/SupporterStoreView.jsx","../../../../node_modules/lucide-react/src/icons/shuffle.ts","../../../../src/lib/ambientAudio.js","../../../../src/components/store/Item3DRenderer.jsx","../../../../src/lib/catalog/skins.js","../../../../src/lib/catalog/props.js","../../../../src/lib/catalog/pets.js","../../../../src/lib/catalog/auras.js","../../../../src/lib/catalog/trophies.js","../../../../src/lib/catalog/officeThemes.js","../../../../src/lib/catalog/index.js","../../../../src/lib/supporterStore.js"],"sourcesContent":["import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'coffee',\n size: 24,\n node: [\n ['path', { d: 'M10 2v2', key: '7u0qdc' }],\n ['path', { d: 'M14 2v2', key: '6buw04' }],\n [\n 'path',\n {\n d: 'M16 8a1 1 0 0 1 1 1v8a4 4 0 0 1-4 4H7a4 4 0 0 1-4-4V9a1 1 0 0 1 1-1h14a4 4 0 1 1 0 8h-1',\n key: 'pwadti',\n },\n ],\n ['path', { d: 'M6 2v2', key: 'colzsn' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Coffee\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTAgMnYyIiAvPgogIDxwYXRoIGQ9Ik0xNCAydjIiIC8+CiAgPHBhdGggZD0iTTE2IDhhMSAxIDAgMCAxIDEgMXY4YTQgNCAwIDAgMS00IDRIN2E0IDQgMCAwIDEtNC00VjlhMSAxIDAgMCAxIDEtMWgxNGE0IDQgMCAxIDEgMCA4aC0xIiAvPgogIDxwYXRoIGQ9Ik02IDJ2MiIgLz4KPC9zdmc+Cg==) - https://lucide.dev/icons/coffee\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Coffee = createLucideIcon(__iconData);\n\nexport default Coffee;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'lock',\n size: 24,\n node: [\n ['rect', { width: '18', height: '11', x: '3', y: '11', rx: '2', ry: '2', key: '1w4ew1' }],\n ['path', { d: 'M7 11V7a5 5 0 0 1 10 0v4', key: 'fwvmzm' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Lock\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cmVjdCB3aWR0aD0iMTgiIGhlaWdodD0iMTEiIHg9IjMiIHk9IjExIiByeD0iMiIgcnk9IjIiIC8+CiAgPHBhdGggZD0iTTcgMTFWN2E1IDUgMCAwIDEgMTAgMHY0IiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/lock\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Lock = createLucideIcon(__iconData);\n\nexport default Lock;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'gift',\n size: 24,\n node: [\n ['path', { d: 'M12 7v14', key: '1akyts' }],\n ['path', { d: 'M20 11v8a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-8', key: '1sqzm4' }],\n [\n 'path',\n { d: 'M7.5 7a1 1 0 0 1 0-5A4.8 8 0 0 1 12 7a4.8 8 0 0 1 4.5-5 1 1 0 0 1 0 5', key: 'kc0143' },\n ],\n ['rect', { x: '3', y: '7', width: '18', height: '4', rx: '1', key: '1hberx' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Gift\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTIgN3YxNCIgLz4KICA8cGF0aCBkPSJNMjAgMTF2OGEyIDIgMCAwIDEtMiAySDZhMiAyIDAgMCAxLTItMnYtOCIgLz4KICA8cGF0aCBkPSJNNy41IDdhMSAxIDAgMCAxIDAtNUE0LjggOCAwIDAgMSAxMiA3YTQuOCA4IDAgMCAxIDQuNS01IDEgMSAwIDAgMSAwIDUiIC8+CiAgPHJlY3QgeD0iMyIgeT0iNyIgd2lkdGg9IjE4IiBoZWlnaHQ9IjQiIHJ4PSIxIiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/gift\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Gift = createLucideIcon(__iconData);\n\nexport default Gift;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'grid-3x3',\n size: 24,\n node: [\n ['rect', { width: '18', height: '18', x: '3', y: '3', rx: '2', key: 'afitv7' }],\n ['path', { d: 'M3 9h18', key: '1pudct' }],\n ['path', { d: 'M3 15h18', key: '5xshup' }],\n ['path', { d: 'M9 3v18', key: 'fh3hqa' }],\n ['path', { d: 'M15 3v18', key: '14nvp0' }],\n ],\n aliases: ['grid', 'grid-3-x-3'],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Grid3x3\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cmVjdCB3aWR0aD0iMTgiIGhlaWdodD0iMTgiIHg9IjMiIHk9IjMiIHJ4PSIyIiAvPgogIDxwYXRoIGQ9Ik0zIDloMTgiIC8+CiAgPHBhdGggZD0iTTMgMTVoMTgiIC8+CiAgPHBhdGggZD0iTTkgM3YxOCIgLz4KICA8cGF0aCBkPSJNMTUgM3YxOCIgLz4KPC9zdmc+Cg==) - https://lucide.dev/icons/grid-3x3\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Grid3x3 = createLucideIcon(__iconData);\n\nexport default Grid3x3;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'laptop',\n size: 24,\n node: [\n [\n 'path',\n {\n d: 'M18 5a2 2 0 0 1 2 2v8.526a2 2 0 0 0 .212.897l1.068 2.127a1 1 0 0 1-.9 1.45H3.62a1 1 0 0 1-.9-1.45l1.068-2.127A2 2 0 0 0 4 15.526V7a2 2 0 0 1 2-2z',\n key: '1pdavp',\n },\n ],\n ['path', { d: 'M20.054 15.987H3.946', key: '14rxg9' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Laptop\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTggNWEyIDIgMCAwIDEgMiAydjguNTI2YTIgMiAwIDAgMCAuMjEyLjg5N2wxLjA2OCAyLjEyN2ExIDEgMCAwIDEtLjkgMS40NUgzLjYyYTEgMSAwIDAgMS0uOS0xLjQ1bDEuMDY4LTIuMTI3QTIgMiAwIDAgMCA0IDE1LjUyNlY3YTIgMiAwIDAgMSAyLTJ6IiAvPgogIDxwYXRoIGQ9Ik0yMC4wNTQgMTUuOTg3SDMuOTQ2IiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/laptop\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Laptop = createLucideIcon(__iconData);\n\nexport default Laptop;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'key',\n size: 24,\n node: [\n ['path', { d: 'm2 21 9.6-9.6', key: '9l79m3' }],\n [\n 'path',\n { d: 'm7.5 15.5 2.3 2.3a1 1 0 0 1 0 1.4l-2.1 2.1a1 1 0 0 1-1.4 0L4 19', key: 'fw8biw' },\n ],\n ['circle', { cx: '15.5', cy: '7.5', r: '5.5', key: '4wxmhb' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Key\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJtMiAyMSA5LjYtOS42IiAvPgogIDxwYXRoIGQ9Im03LjUgMTUuNSAyLjMgMi4zYTEgMSAwIDAgMSAwIDEuNGwtMi4xIDIuMWExIDEgMCAwIDEtMS40IDBMNCAxOSIgLz4KICA8Y2lyY2xlIGN4PSIxNS41IiBjeT0iNy41IiByPSI1LjUiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/key\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Key = createLucideIcon(__iconData);\n\nexport default Key;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'trophy',\n size: 24,\n node: [\n ['path', { d: 'M10 14.66V17a1 1 0 0 1-1 1 2 2 0 0 0-2 2v2', key: 'pwuv1l' }],\n ['path', { d: 'M14 14.66V17a1 1 0 0 0 1 1 2 2 0 0 1 2 2v2', key: '1y54w1' }],\n ['path', { d: 'M17.916 10H19.5A2.5 2.5 0 0 0 22 7.5V5a1 1 0 0 0-1-1h-3', key: 'e30mpu' }],\n ['path', { d: 'M4 22h16', key: '57wxv0' }],\n ['path', { d: 'M6 9a6 6 0 0 0 12 0V3a1 1 0 0 0-1-1H7a1 1 0 0 0-1 1z', key: '1mhfuq' }],\n ['path', { d: 'M6.084 10H4.5A2.5 2.5 0 0 1 2 7.5V5a1 1 0 0 1 1-1h3', key: 'i0yafy' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Trophy\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTAgMTQuNjZWMTdhMSAxIDAgMCAxLTEgMSAyIDIgMCAwIDAtMiAydjIiIC8+CiAgPHBhdGggZD0iTTE0IDE0LjY2VjE3YTEgMSAwIDAgMCAxIDEgMiAyIDAgMCAxIDIgMnYyIiAvPgogIDxwYXRoIGQ9Ik0xNy45MTYgMTBIMTkuNUEyLjUgMi41IDAgMCAwIDIyIDcuNVY1YTEgMSAwIDAgMC0xLTFoLTMiIC8+CiAgPHBhdGggZD0iTTQgMjJoMTYiIC8+CiAgPHBhdGggZD0iTTYgOWE2IDYgMCAwIDAgMTIgMFYzYTEgMSAwIDAgMC0xLTFIN2ExIDEgMCAwIDAtMSAxeiIgLz4KICA8cGF0aCBkPSJNNi4wODQgMTBINC41QTIuNSAyLjUgMCAwIDEgMiA3LjVWNWExIDEgMCAwIDEgMS0xaDMiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/trophy\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Trophy = createLucideIcon(__iconData);\n\nexport default Trophy;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'layout-grid',\n size: 24,\n node: [\n ['rect', { width: '7', height: '7', x: '3', y: '3', rx: '1', key: '1g98yp' }],\n ['rect', { width: '7', height: '7', x: '14', y: '3', rx: '1', key: '6d4xhi' }],\n ['rect', { width: '7', height: '7', x: '14', y: '14', rx: '1', key: 'nxv5o0' }],\n ['rect', { width: '7', height: '7', x: '3', y: '14', rx: '1', key: '1bb6yr' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name LayoutGrid\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSI3IiB4PSIzIiB5PSIzIiByeD0iMSIgLz4KICA8cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSI3IiB4PSIxNCIgeT0iMyIgcng9IjEiIC8+CiAgPHJlY3Qgd2lkdGg9IjciIGhlaWdodD0iNyIgeD0iMTQiIHk9IjE0IiByeD0iMSIgLz4KICA8cmVjdCB3aWR0aD0iNyIgaGVpZ2h0PSI3IiB4PSIzIiB5PSIxNCIgcng9IjEiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/layout-grid\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst LayoutGrid = createLucideIcon(__iconData);\n\nexport default LayoutGrid;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'palette',\n size: 24,\n node: [\n [\n 'path',\n {\n d: 'M12 22a1 1 0 0 1 0-20 10 9 0 0 1 10 9 5 5 0 0 1-5 5h-2.25a1.75 1.75 0 0 0-1.4 2.8l.3.4a1.75 1.75 0 0 1-1.4 2.8z',\n key: 'e79jfc',\n },\n ],\n ['circle', { cx: '13.5', cy: '6.5', r: '.5', fill: 'currentColor', key: '1okk4w' }],\n ['circle', { cx: '17.5', cy: '10.5', r: '.5', fill: 'currentColor', key: 'f64h9f' }],\n ['circle', { cx: '6.5', cy: '12.5', r: '.5', fill: 'currentColor', key: 'qy21gx' }],\n ['circle', { cx: '8.5', cy: '7.5', r: '.5', fill: 'currentColor', key: 'fotxhn' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Palette\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTIgMjJhMSAxIDAgMCAxIDAtMjAgMTAgOSAwIDAgMSAxMCA5IDUgNSAwIDAgMS01IDVoLTIuMjVhMS43NSAxLjc1IDAgMCAwLTEuNCAyLjhsLjMuNGExLjc1IDEuNzUgMCAwIDEtMS40IDIuOHoiIC8+CiAgPGNpcmNsZSBjeD0iMTMuNSIgY3k9IjYuNSIgcj0iLjUiIGZpbGw9ImN1cnJlbnRDb2xvciIgLz4KICA8Y2lyY2xlIGN4PSIxNy41IiBjeT0iMTAuNSIgcj0iLjUiIGZpbGw9ImN1cnJlbnRDb2xvciIgLz4KICA8Y2lyY2xlIGN4PSI2LjUiIGN5PSIxMi41IiByPSIuNSIgZmlsbD0iY3VycmVudENvbG9yIiAvPgogIDxjaXJjbGUgY3g9IjguNSIgY3k9IjcuNSIgcj0iLjUiIGZpbGw9ImN1cnJlbnRDb2xvciIgLz4KPC9zdmc+Cg==) - https://lucide.dev/icons/palette\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Palette = createLucideIcon(__iconData);\n\nexport default Palette;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'pause',\n size: 24,\n node: [\n ['rect', { x: '14', y: '3', width: '5', height: '18', rx: '1', key: 'kaeet6' }],\n ['rect', { x: '5', y: '3', width: '5', height: '18', rx: '1', key: '1wsw3u' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Pause\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cmVjdCB4PSIxNCIgeT0iMyIgd2lkdGg9IjUiIGhlaWdodD0iMTgiIHJ4PSIxIiAvPgogIDxyZWN0IHg9IjUiIHk9IjMiIHdpZHRoPSI1IiBoZWlnaHQ9IjE4IiByeD0iMSIgLz4KPC9zdmc+Cg==) - https://lucide.dev/icons/pause\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Pause = createLucideIcon(__iconData);\n\nexport default Pause;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'play',\n size: 24,\n node: [\n [\n 'path',\n {\n d: 'M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z',\n key: '10ikf1',\n },\n ],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Play\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNNSA1YTIgMiAwIDAgMSAzLjAwOC0xLjcyOGwxMS45OTcgNi45OThhMiAyIDAgMCAxIC4wMDMgMy40NThsLTEyIDdBMiAyIDAgMCAxIDUgMTl6IiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/play\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Play = createLucideIcon(__iconData);\n\nexport default Play;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'shopping-bag',\n size: 24,\n node: [\n ['path', { d: 'M16 10a4 4 0 0 1-8 0', key: '1ltviw' }],\n ['path', { d: 'M3.103 6.034h17.794', key: 'awc11p' }],\n [\n 'path',\n {\n d: 'M3.4 5.467a2 2 0 0 0-.4 1.2V20a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2V6.667a2 2 0 0 0-.4-1.2l-2-2.667A2 2 0 0 0 17 2H7a2 2 0 0 0-1.6.8z',\n key: 'o988cm',\n },\n ],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name ShoppingBag\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTYgMTBhNCA0IDAgMCAxLTggMCIgLz4KICA8cGF0aCBkPSJNMy4xMDMgNi4wMzRoMTcuNzk0IiAvPgogIDxwYXRoIGQ9Ik0zLjQgNS40NjdhMiAyIDAgMCAwLS40IDEuMlYyMGEyIDIgMCAwIDAgMiAyaDE0YTIgMiAwIDAgMCAyLTJWNi42NjdhMiAyIDAgMCAwLS40LTEuMmwtMi0yLjY2N0EyIDIgMCAwIDAgMTcgMkg3YTIgMiAwIDAgMC0xLjYuOHoiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/shopping-bag\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst ShoppingBag = createLucideIcon(__iconData);\n\nexport default ShoppingBag;\n","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'volume-2',\n size: 24,\n node: [\n [\n 'path',\n {\n d: 'M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z',\n key: 'uqj9uw',\n },\n ],\n ['path', { d: 'M16 9a5 5 0 0 1 0 6', key: '1q6k2b' }],\n ['path', { d: 'M19.364 18.364a9 9 0 0 0 0-12.728', key: 'ijwkga' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Volume2\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJNMTEgNC43MDJhLjcwNS43MDUgMCAwIDAtMS4yMDMtLjQ5OEw2LjQxMyA3LjU4N0ExLjQgMS40IDAgMCAxIDUuNDE2IDhIM2ExIDEgMCAwIDAtMSAxdjZhMSAxIDAgMCAwIDEgMWgyLjQxNmExLjQgMS40IDAgMCAxIC45OTcuNDEzbDMuMzgzIDMuMzg0QS43MDUuNzA1IDAgMCAwIDExIDE5LjI5OHoiIC8+CiAgPHBhdGggZD0iTTE2IDlhNSA1IDAgMCAxIDAgNiIgLz4KICA8cGF0aCBkPSJNMTkuMzY0IDE4LjM2NGE5IDkgMCAwIDAgMC0xMi43MjgiIC8+Cjwvc3ZnPgo=) - https://lucide.dev/icons/volume-2\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Volume2 = createLucideIcon(__iconData);\n\nexport default Volume2;\n","\"use client\";\n\nimport React, { useRef, useEffect, useMemo } from \"react\";\nimport { getItemById, COSMETIC_CATALOG } from \"@/lib/catalog/index.js\";\n\n// Floor theme color palettes\nconst THEME_STYLES = {\n theme_default: { name: \"Classic Charcoal Slate\", base: \"#14161a\", tile: \"#1e222b\", grid: \"#2d3548\", glow: \"#38bdf8\" },\n theme_cyberpunk: { name: \"Cyberpunk Neon Night\", base: \"#0d0819\", tile: \"#1c0d33\", grid: \"#ff2a85\", glow: \"#00f0ff\" },\n theme_matrix: { name: \"Phosphor Matrix Terminal\", base: \"#020d05\", tile: \"#051f0b\", grid: \"#00ff66\", glow: \"#10b981\" },\n theme_wood: { name: \"Cozy Scandinavian Loft\", base: \"#1f1610\", tile: \"#2c2017\", grid: \"#451a03\", glow: \"#f59e0b\" },\n theme_space: { name: \"Deep Space Void\", base: \"#030712\", tile: \"#0b1329\", grid: \"#1e1b4b\", glow: \"#6366f1\" },\n theme_blueprint: { name: \"Blueprint CAD Grid\", base: \"#0b1a30\", tile: \"#1e3a8a\", grid: \"#1d4ed8\", glow: \"#38bdf8\" },\n theme_synthwave: { name: \"Retro Synthwave 80s\", base: \"#1a052e\", tile: \"#3b0764\", grid: \"#d946ef\", glow: \"#ec4899\" },\n theme_sakura_cyber: { name: \"Sakura Cyber Garden\", base: \"#1c0e18\", tile: \"#2e1022\", grid: \"#f43f5e\", glow: \"#fb7185\" },\n theme_nordic_ice: { name: \"Minimalist Nordic Ice\", base: \"#0f172a\", tile: \"#1e293b\", grid: \"#38bdf8\", glow: \"#e2e8f0\" },\n theme_industrial: { name: \"High-Voltage Industrial\", base: \"#18181b\", tile: \"#27272a\", grid: \"#eab308\", glow: \"#f59e0b\" },\n};\n\n/**\n * 50 Curated High-Fidelity Silhouette & Accessory Variations\n */\nfunction RenderSkinAccessories({ variant, archetype, color, secondaryColor, accentColor }) {\n // 1. CYBER SUIT VARIANTS (10)\n if (variant === \"tactical_visor\") {\n return (\n <g>\n <polygon points=\"-26,-66 -34,-76 -26,-72\" fill={color} />\n <polygon points=\"26,-66 34,-76 26,-72\" fill={color} />\n <rect x=\"-24\" y=\"-66\" width=\"48\" height=\"6\" rx=\"2\" fill={color} />\n <circle cx=\"0\" cy=\"-63\" r=\"2.5\" fill={accentColor} />\n </g>\n );\n }\n if (variant === \"laser_scout\") {\n return (\n <g>\n <circle cx=\"8\" cy=\"-57\" r=\"7\" fill=\"none\" stroke={color} strokeWidth=\"1.8\" />\n <line x1=\"8\" y1=\"-66\" x2=\"8\" y2=\"-48\" stroke={color} strokeWidth=\"1\" strokeDasharray=\"1 2\" />\n <line x1=\"-1\" y1=\"-57\" x2=\"17\" y2=\"-57\" stroke={color} strokeWidth=\"1\" strokeDasharray=\"1 2\" />\n <circle cx=\"8\" cy=\"-57\" r=\"2\" fill=\"#ff0000\" />\n </g>\n );\n }\n if (variant === \"riot_shield\") {\n return (\n <g>\n <rect x=\"-25\" y=\"-68\" width=\"50\" height=\"9\" rx=\"3\" fill=\"#1e2430\" stroke={color} strokeWidth=\"1.8\" />\n <rect x=\"-20\" y=\"-34\" width=\"40\" height=\"6\" rx=\"2\" fill={color} />\n <circle cx=\"-16\" cy=\"-64\" r=\"2.5\" fill={accentColor} />\n <circle cx=\"16\" cy=\"-64\" r=\"2.5\" fill={accentColor} />\n </g>\n );\n }\n if (variant === \"cyber_horns\") {\n return (\n <g>\n <polygon points=\"-20,-70 -30,-88 -14,-76\" fill={color} stroke={secondaryColor} strokeWidth=\"1\" />\n <polygon points=\"20,-70 30,-88 14,-76\" fill={color} stroke={secondaryColor} strokeWidth=\"1\" />\n <line x1=\"-17\" y1=\"-73\" x2=\"-25\" y2=\"-82\" stroke={accentColor} strokeWidth=\"1.5\" />\n <line x1=\"17\" y1=\"-73\" x2=\"25\" y2=\"-82\" stroke={accentColor} strokeWidth=\"1.5\" />\n </g>\n );\n }\n if (variant === \"crown_radiator\") {\n return (\n <g fill={color}>\n <polygon points=\"-16,-72 -14,-86 -8,-74\" />\n <polygon points=\"-4,-74 0,-92 4,-74\" />\n <polygon points=\"8,-74 14,-86 16,-72\" />\n <circle cx=\"0\" cy=\"-70\" r=\"3\" fill={accentColor} />\n </g>\n );\n }\n if (variant === \"gas_respirator\") {\n return (\n <g>\n <circle cx=\"-14\" cy=\"-44\" r=\"6\" fill=\"#1e2430\" stroke={color} strokeWidth=\"1.5\" />\n <circle cx=\"14\" cy=\"-44\" r=\"6\" fill=\"#1e2430\" stroke={color} strokeWidth=\"1.5\" />\n <circle cx=\"-14\" cy=\"-44\" r=\"3\" fill={color} />\n <circle cx=\"14\" cy=\"-44\" r=\"3\" fill={color} />\n <rect x=\"-8\" y=\"-46\" width=\"16\" height=\"5\" fill=\"#111827\" stroke={color} strokeWidth=\"1\" />\n </g>\n );\n }\n if (variant === \"prism_goggles\") {\n return (\n <g>\n <polygon points=\"-16,-62 -8,-66 -2,-62 -2,-52 -8,-48 -16,-52\" fill=\"#0c4a6e\" stroke={color} strokeWidth=\"1.6\" />\n <polygon points=\"2,-62 8,-66 16,-62 16,-52 8,-48 2,-52\" fill=\"#0c4a6e\" stroke={color} strokeWidth=\"1.6\" />\n <circle cx=\"-9\" cy=\"-57\" r=\"2.5\" fill={accentColor} />\n <circle cx=\"9\" cy=\"-57\" r=\"2.5\" fill={accentColor} />\n </g>\n );\n }\n if (variant === \"samurai_crest\") {\n return (\n <g>\n <path d=\"M -22 -72 Q 0 -92 22 -72 Q 0 -84 -22 -72 Z\" fill={color} stroke={secondaryColor} strokeWidth=\"1\" />\n <circle cx=\"0\" cy=\"-78\" r=\"3\" fill={accentColor} />\n </g>\n );\n }\n if (variant === \"overdrive_vents\") {\n return (\n <g strokeLinecap=\"round\">\n <line x1=\"-18\" y1=\"-72\" x2=\"-28\" y2=\"-90\" stroke={color} strokeWidth=\"3\" />\n <line x1=\"18\" y1=\"-72\" x2=\"28\" y2=\"-90\" stroke={color} strokeWidth=\"3\" />\n <line x1=\"-12\" y1=\"-70\" x2=\"-20\" y2=\"-84\" stroke={accentColor} strokeWidth=\"2\" />\n <line x1=\"12\" y1=\"-70\" x2=\"20\" y2=\"-84\" stroke={accentColor} strokeWidth=\"2\" />\n </g>\n );\n }\n if (variant === \"holo_shroud\") {\n return (\n <g>\n <ellipse cx=\"0\" cy=\"-66\" rx=\"28\" ry=\"12\" fill=\"none\" stroke={color} strokeWidth=\"1.8\" strokeDasharray=\"4 2\" />\n <circle cx=\"0\" cy=\"-78\" r=\"4\" fill={accentColor} />\n </g>\n );\n }\n\n // 2. MECHA PILOT VARIANTS (10)\n if (variant === \"v_fin\") {\n return (\n <g>\n <polygon points=\"-24,-88 -18,-92 0,-76 18,-92 24,-88 0,-72\" fill={color} stroke={secondaryColor} strokeWidth=\"1\" />\n <polygon points=\"-4,-72 0,-78 4,-72 0,-68\" fill=\"#ef4444\" />\n </g>\n );\n }\n if (variant === \"blast_shield\") {\n return (\n <g>\n <rect x=\"-24\" y=\"-68\" width=\"48\" height=\"14\" rx=\"3\" fill=\"#0f172a\" stroke={color} strokeWidth=\"2\" />\n <circle cx=\"-18\" cy=\"-80\" r=\"3.5\" fill=\"#fde047\" stroke={color} strokeWidth=\"1\" />\n <circle cx=\"18\" cy=\"-80\" r=\"3.5\" fill=\"#fde047\" stroke={color} strokeWidth=\"1\" />\n </g>\n );\n }\n if (variant === \"eva_horn\") {\n return (\n <g>\n <polygon points=\"-3,-74 0,-98 3,-74\" fill={color} stroke={secondaryColor} strokeWidth=\"1\" />\n <rect x=\"-28\" y=\"-48\" width=\"5\" height=\"18\" rx=\"2\" fill={color} stroke={secondaryColor} strokeWidth=\"1\" />\n <rect x=\"23\" y=\"-48\" width=\"5\" height=\"18\" rx=\"2\" fill={color} stroke={secondaryColor} strokeWidth=\"1\" />\n </g>\n );\n }\n if (variant === \"cage_grille\") {\n return (\n <g>\n <rect x=\"-16\" y=\"-52\" width=\"32\" height=\"14\" rx=\"2\" fill=\"#18181b\" stroke={color} strokeWidth=\"1.6\" />\n <line x1=\"-10\" y1=\"-52\" x2=\"-10\" y2=\"-38\" stroke={color} strokeWidth=\"1.2\" />\n <line x1=\"-4\" y1=\"-52\" x2=\"-4\" y2=\"-38\" stroke={color} strokeWidth=\"1.2\" />\n <line x1=\"4\" y1=\"-52\" x2=\"4\" y2=\"-38\" stroke={color} strokeWidth=\"1.2\" />\n <line x1=\"10\" y1=\"-52\" x2=\"10\" y2=\"-38\" stroke={color} strokeWidth=\"1.2\" />\n <rect x=\"-22\" y=\"-86\" width=\"4\" height=\"16\" fill=\"#27272a\" stroke={color} strokeWidth=\"1\" />\n <rect x=\"18\" y=\"-86\" width=\"4\" height=\"16\" fill=\"#27272a\" stroke={color} strokeWidth=\"1\" />\n </g>\n );\n }\n if (variant === \"missile_pod\") {\n return (\n <g>\n <rect x=\"-30\" y=\"-42\" width=\"8\" height=\"12\" rx=\"2\" fill=\"#1c1917\" stroke={color} strokeWidth=\"1.5\" />\n <circle cx=\"-26\" cy=\"-38\" r=\"1.5\" fill=\"#ef4444\" />\n <circle cx=\"-26\" cy=\"-34\" r=\"1.5\" fill=\"#ef4444\" />\n <rect x=\"22\" y=\"-42\" width=\"8\" height=\"12\" rx=\"2\" fill=\"#1c1917\" stroke={color} strokeWidth=\"1.5\" />\n <circle cx=\"26\" cy=\"-38\" r=\"1.5\" fill=\"#ef4444\" />\n <circle cx=\"26\" cy=\"-34\" r=\"1.5\" fill=\"#ef4444\" />\n </g>\n );\n }\n if (variant === \"quad_array\") {\n return (\n <g stroke={color} strokeWidth=\"1.8\">\n <line x1=\"-22\" y1=\"-72\" x2=\"-26\" y2=\"-90\" />\n <line x1=\"-12\" y1=\"-76\" x2=\"-14\" y2=\"-94\" />\n <line x1=\"12\" y1=\"-76\" x2=\"14\" y2=\"-94\" />\n <line x1=\"22\" y1=\"-72\" x2=\"26\" y2=\"-90\" />\n <circle cx=\"-26\" cy=\"-90\" r=\"2\" fill={accentColor} stroke=\"none\" />\n <circle cx=\"-14\" cy=\"-94\" r=\"2\" fill={accentColor} stroke=\"none\" />\n <circle cx=\"14\" cy=\"-94\" r=\"2\" fill={accentColor} stroke=\"none\" />\n <circle cx=\"26\" cy=\"-90\" r=\"2\" fill={accentColor} stroke=\"none\" />\n </g>\n );\n }\n if (variant === \"halo_shield\") {\n return (\n <g>\n <polygon points=\"-32,-42 -26,-46 -20,-42 -20,-34 -26,-30 -32,-34\" fill=\"#064e3b\" stroke={color} strokeWidth=\"1.5\" />\n <polygon points=\"20,-42 26,-46 32,-42 32,-34 26,-30 20,-34\" fill=\"#064e3b\" stroke={color} strokeWidth=\"1.5\" />\n </g>\n );\n }\n if (variant === \"ram_horns\") {\n return (\n <g>\n <path d=\"M -18 -72 C -34 -82, -32 -96, -18 -92 C -24 -88, -24 -78, -14 -72 Z\" fill={color} stroke={secondaryColor} strokeWidth=\"1\" />\n <path d=\"M 18 -72 C 34 -82, 32 -96, 18 -92 C 24 -88, 24 -78, 14 -72 Z\" fill={color} stroke={secondaryColor} strokeWidth=\"1\" />\n </g>\n );\n }\n if (variant === \"radar_dish\") {\n return (\n <g>\n <ellipse cx=\"-24\" cy=\"-84\" rx=\"7\" ry=\"12\" fill=\"#18181b\" stroke={color} strokeWidth=\"1.5\" transform=\"rotate(-25 -24 -84)\" />\n <circle cx=\"-24\" cy=\"-84\" r=\"2\" fill={accentColor} />\n </g>\n );\n }\n if (variant === \"hyper_wings\") {\n return (\n <g>\n <polygon points=\"-26,-46 -44,-64 -34,-40\" fill={color} stroke={secondaryColor} strokeWidth=\"1.2\" />\n <polygon points=\"26,-46 44,-64 34,-40\" fill={color} stroke={secondaryColor} strokeWidth=\"1.2\" />\n </g>\n );\n }\n\n // 3. STEALTH NINJA VARIANTS (10)\n if (variant === \"flowing_headband\") {\n return (\n <g>\n <rect x=\"-24\" y=\"-66\" width=\"48\" height=\"8\" rx=\"2\" fill=\"#1e1b4b\" stroke={color} strokeWidth=\"1.5\" />\n <circle cx=\"0\" cy=\"-62\" r=\"3\" fill=\"#38bdf8\" />\n <path d=\"M 24 -62 Q 38 -56 46 -46 Q 36 -48 24 -56\" fill={color} />\n </g>\n );\n }\n if (variant === \"tactical_cowl\") {\n return (\n <g>\n <path d=\"M -24 -68 Q 0 -76 24 -68 L 22 -44 Q 0 -38 -22 -44 Z\" fill=\"#0f172a\" stroke={color} strokeWidth=\"1.4\" opacity=\"0.8\" />\n <circle cx=\"6\" cy=\"-57\" r=\"4.5\" fill=\"none\" stroke=\"#22c55e\" strokeWidth=\"1.8\" />\n <circle cx=\"6\" cy=\"-57\" r=\"1.5\" fill=\"#22c55e\" />\n </g>\n );\n }\n if (variant === \"oni_mask\") {\n return (\n <g>\n <polygon points=\"-16,-72 -24,-88 -12,-76\" fill=\"#ef4444\" stroke=\"#450a0a\" strokeWidth=\"1\" />\n <polygon points=\"16,-72 24,-88 12,-76\" fill=\"#ef4444\" stroke=\"#450a0a\" strokeWidth=\"1\" />\n <path d=\"M -16 -46 L -10 -40 L -6 -46 L 0 -42 L 6 -46 L 10 -40 L 16 -46 L 12 -36 L -12 -36 Z\" fill=\"#ffffff\" stroke={color} strokeWidth=\"1\" />\n </g>\n );\n }\n if (variant === \"kitsune_ears\") {\n return (\n <g>\n <polygon points=\"-22,-72 -14,-88 -6,-76\" fill=\"#1e2430\" />\n <polygon points=\"-20,-73 -14,-85 -8,-76\" fill={color} />\n <polygon points=\"6,-76 14,-88 22,-72\" fill=\"#1e2430\" />\n <polygon points=\"8,-76 14,-85 20,-73\" fill={color} />\n <line x1=\"-12\" y1=\"-46\" x2=\"-22\" y2=\"-48\" stroke={color} strokeWidth=\"1.2\" />\n <line x1=\"12\" y1=\"-46\" x2=\"22\" y2=\"-48\" stroke={color} strokeWidth=\"1.2\" />\n </g>\n );\n }\n if (variant === \"conical_kasa\") {\n return (\n <g>\n <polygon points=\"-36,-72 0,-92 36,-72\" fill=\"#18181b\" stroke={color} strokeWidth=\"1.6\" />\n <line x1=\"-36\" y1=\"-72\" x2=\"36\" y2=\"-72\" stroke={accentColor} strokeWidth=\"2.4\" />\n </g>\n );\n }\n if (variant === \"twin_katanas\") {\n return (\n <g strokeLinecap=\"round\">\n <line x1=\"-24\" y1=\"-32\" x2=\"28\" y2=\"-88\" stroke=\"#475569\" strokeWidth=\"3\" />\n <line x1=\"-22\" y1=\"-34\" x2=\"26\" y2=\"-86\" stroke={color} strokeWidth=\"1.6\" />\n <line x1=\"24\" y1=\"-32\" x2=\"-28\" y2=\"-88\" stroke=\"#475569\" strokeWidth=\"3\" />\n <line x1=\"22\" y1=\"-34\" x2=\"-26\" y2=\"-86\" stroke={color} strokeWidth=\"1.6\" />\n </g>\n );\n }\n if (variant === \"tengu_beak\") {\n return (\n <g>\n <polygon points=\"-12,-48 0,-34 12,-48 0,-44\" fill=\"#0f172a\" stroke={color} strokeWidth=\"1.5\" />\n </g>\n );\n }\n if (variant === \"veil_shroud\") {\n return (\n <g>\n <path d=\"M -22 -62 Q 0 -70 22 -62 L 20 -36 Q 0 -30 -20 -36 Z\" fill=\"#0f172a\" opacity=\"0.85\" stroke={color} strokeWidth=\"1.2\" strokeDasharray=\"3 2\" />\n </g>\n );\n }\n if (variant === \"scythe_crest\") {\n return (\n <g>\n <path d=\"M 0 -88 C -14 -88, -20 -76, -14 -66 C -20 -72, -14 -84, 0 -84 C 14 -84, 20 -72, 14 -66 C 20 -76, 14 -88, 0 -88 Z\" fill={color} stroke={secondaryColor} strokeWidth=\"1\" />\n </g>\n );\n }\n if (variant === \"void_mask\") {\n return (\n <g>\n <rect x=\"-18\" y=\"-62\" width=\"36\" height=\"20\" rx=\"4\" fill=\"#000000\" stroke={color} strokeWidth=\"1.8\" />\n <text x=\"0\" y=\"-48\" fill={color} fontSize=\"10\" fontFamily=\"monospace\" textAnchor=\"middle\" fontWeight=\"bold\">零</text>\n </g>\n );\n }\n\n // 4. MATRIX HACKER VARIANTS (10)\n if (variant === \"hoodie_cowl\") {\n return (\n <g>\n <path d=\"M -28 -74 Q 0 -92 28 -74 Q 28 -34 20 -32 Q 0 -28 -20 -32 Q -28 -34 -28 -74 Z\" fill=\"#051f0b\" stroke={color} strokeWidth=\"1.8\" opacity=\"0.9\" />\n <text x=\"-12\" y=\"-72\" fill={color} fontSize=\"6\" fontFamily=\"monospace\" opacity=\"0.7\">101</text>\n <text x=\"4\" y=\"-72\" fill={color} fontSize=\"6\" fontFamily=\"monospace\" opacity=\"0.7\">010</text>\n </g>\n );\n }\n if (variant === \"vr_goggles\") {\n return (\n <g>\n <rect x=\"-22\" y=\"-64\" width=\"44\" height=\"15\" rx=\"3\" fill=\"#083344\" stroke={color} strokeWidth=\"1.8\" />\n <line x1=\"-12\" y1=\"-64\" x2=\"-16\" y2=\"-82\" stroke={color} strokeWidth=\"1.6\" />\n <circle cx=\"-16\" cy=\"-82\" r=\"2.5\" fill={accentColor} />\n <line x1=\"-14\" y1=\"-56\" x2=\"14\" y2=\"-56\" stroke={accentColor} strokeWidth=\"1.4\" />\n </g>\n );\n }\n if (variant === \"daemon_horns\") {\n return (\n <g>\n <path d=\"M -24 -70 Q 0 -82 24 -70\" stroke={color} strokeWidth=\"3\" fill=\"none\" />\n <polygon points=\"-16,-70 -22,-86 -10,-74\" fill={color} stroke={secondaryColor} strokeWidth=\"1\" />\n <polygon points=\"16,-70 22,-86 10,-74\" fill={color} stroke={secondaryColor} strokeWidth=\"1\" />\n </g>\n );\n }\n if (variant === \"glitch_halo\") {\n return (\n <g>\n <rect x=\"-28\" y=\"-76\" width=\"56\" height=\"42\" fill=\"none\" stroke={color} strokeWidth=\"1.5\" strokeDasharray=\"6 3 2 4\" />\n <rect x=\"-18\" y=\"-82\" width=\"12\" height=\"6\" fill={color} opacity=\"0.7\" />\n <rect x=\"12\" y=\"-50\" width=\"10\" height=\"4\" fill={color} opacity=\"0.7\" />\n </g>\n );\n }\n if (variant === \"floating_hud\") {\n return (\n <g>\n <rect x=\"24\" y=\"-78\" width=\"34\" height=\"18\" rx=\"2\" fill=\"#09090b\" stroke={color} strokeWidth=\"1\" />\n <text x=\"27\" y=\"-66\" fill={color} fontSize=\"6\" fontFamily=\"monospace\">root#_</text>\n </g>\n );\n }\n if (variant === \"respirator_eq\") {\n return (\n <g strokeWidth=\"2\">\n <rect x=\"-18\" y=\"-46\" width=\"36\" height=\"10\" rx=\"3\" fill=\"#0f172a\" stroke={color} strokeWidth=\"1.2\" />\n <line x1=\"-12\" y1=\"-40\" x2=\"-12\" y2=\"-45\" stroke=\"#22c55e\" />\n <line x1=\"-6\" y1=\"-38\" x2=\"-6\" y2=\"-45\" stroke=\"#eab308\" />\n <line x1=\"0\" y1=\"-37\" x2=\"0\" y2=\"-45\" stroke=\"#ef4444\" />\n <line x1=\"6\" y1=\"-39\" x2=\"6\" y2=\"-45\" stroke=\"#eab308\" />\n <line x1=\"12\" y1=\"-41\" x2=\"12\" y2=\"-45\" stroke=\"#22c55e\" />\n </g>\n );\n }\n if (variant === \"heatsink_fins\") {\n return (\n <g fill=\"#ea580c\" stroke=\"#fed7aa\" strokeWidth=\"1\">\n <rect x=\"-18\" y=\"-84\" width=\"4\" height=\"14\" rx=\"1\" />\n <rect x=\"-10\" y=\"-88\" width=\"4\" height=\"18\" rx=\"1\" />\n <rect x=\"-2\" y=\"-90\" width=\"4\" height=\"20\" rx=\"1\" />\n <rect x=\"6\" y=\"-88\" width=\"4\" height=\"18\" rx=\"1\" />\n <rect x=\"14\" y=\"-84\" width=\"4\" height=\"14\" rx=\"1\" />\n </g>\n );\n }\n if (variant === \"cable_dreads\") {\n return (\n <g fill=\"none\" strokeLinecap=\"round\">\n <path d=\"M -22 -62 C -32 -48, -30 -24, -28 -12\" stroke={color} strokeWidth=\"2.5\" />\n <path d=\"M -16 -64 C -22 -44, -20 -20, -18 -8\" stroke={accentColor} strokeWidth=\"2\" />\n <path d=\"M 16 -64 C 22 -44, 20 -20, 18 -8\" stroke={accentColor} strokeWidth=\"2\" />\n <path d=\"M 22 -62 C 32 -48, 30 -24, 28 -12\" stroke={color} strokeWidth=\"2.5\" />\n </g>\n );\n }\n if (variant === \"cyber_skull\") {\n return (\n <g>\n <ellipse cx=\"-7\" cy=\"-55\" rx=\"5\" ry=\"4\" fill=\"#000000\" stroke={color} strokeWidth=\"1.5\" />\n <ellipse cx=\"7\" cy=\"-55\" rx=\"5\" ry=\"4\" fill=\"#000000\" stroke={color} strokeWidth=\"1.5\" />\n <polygon points=\"-2,-46 0,-43 2,-46\" fill={color} />\n <line x1=\"-8\" y1=\"-40\" x2=\"8\" y2=\"-40\" stroke={color} strokeWidth=\"1.8\" />\n <line x1=\"-6\" y1=\"-43\" x2=\"-6\" y2=\"-37\" stroke={color} strokeWidth=\"1.4\" />\n <line x1=\"0\" y1=\"-43\" x2=\"0\" y2=\"-37\" stroke={color} strokeWidth=\"1.4\" />\n <line x1=\"6\" y1=\"-43\" x2=\"6\" y2=\"-37\" stroke={color} strokeWidth=\"1.4\" />\n </g>\n );\n }\n if (variant === \"wireframe_cube\") {\n return (\n <g stroke={color}>\n <rect x=\"-24\" y=\"-76\" width=\"48\" height=\"42\" rx=\"4\" fill=\"none\" strokeWidth=\"1.6\" />\n <rect x=\"-16\" y=\"-68\" width=\"32\" height=\"26\" rx=\"2\" fill=\"none\" stroke={accentColor} strokeWidth=\"1.2\" strokeDasharray=\"3 2\" />\n <line x1=\"-24\" y1=\"-76\" x2=\"-16\" y2=\"-68\" strokeWidth=\"1.2\" />\n <line x1=\"24\" y1=\"-76\" x2=\"16\" y2=\"-68\" strokeWidth=\"1.2\" />\n <line x1=\"-24\" y1=\"-34\" x2=\"-16\" y2=\"-42\" strokeWidth=\"1.2\" />\n <line x1=\"24\" y1=\"-34\" x2=\"16\" y2=\"-42\" strokeWidth=\"1.2\" />\n </g>\n );\n }\n\n // 5. CELESTIAL ASTRO VARIANTS (10)\n if (variant === \"bubble_dome\") {\n return (\n <g>\n <circle cx=\"0\" cy=\"-56\" r=\"28\" fill=\"none\" stroke={color} strokeWidth=\"2.5\" opacity=\"0.9\" />\n <circle cx=\"0\" cy=\"-84\" r=\"3.5\" fill=\"#fef08a\" stroke={color} strokeWidth=\"1.2\" />\n <path d=\"M -14 -72 Q 0 -80 14 -72\" stroke=\"#ffffff\" strokeWidth=\"2\" fill=\"none\" opacity=\"0.6\" strokeLinecap=\"round\" />\n </g>\n );\n }\n if (variant === \"lunar_pack\") {\n return (\n <g>\n <rect x=\"-20\" y=\"-86\" width=\"2\" height=\"18\" fill={color} />\n <circle cx=\"-19\" cy=\"-86\" r=\"2\" fill=\"#ffffff\" />\n <ellipse cx=\"0\" cy=\"-54\" rx=\"24\" ry=\"18\" fill=\"none\" stroke=\"#e2e8f0\" strokeWidth=\"2\" />\n </g>\n );\n }\n if (variant === \"sunburst_halo\") {\n return (\n <g stroke={color} strokeWidth=\"1.8\" opacity=\"0.85\">\n <line x1=\"0\" y1=\"-86\" x2=\"0\" y2=\"-98\" />\n <line x1=\"22\" y1=\"-78\" x2=\"32\" y2=\"-88\" />\n <line x1=\"30\" y1=\"-56\" x2=\"42\" y2=\"-56\" />\n <line x1=\"22\" y1=\"-34\" x2=\"32\" y2=\"-24\" />\n <line x1=\"0\" y1=\"-26\" x2=\"0\" y2=\"-14\" />\n <line x1=\"-22\" y1=\"-34\" x2=\"-32\" y2=\"-24\" />\n <line x1=\"-30\" y1=\"-56\" x2=\"-42\" y2=\"-56\" />\n <line x1=\"-22\" y1=\"-78\" x2=\"-32\" y2=\"-88\" />\n </g>\n );\n }\n if (variant === \"saturn_ring\") {\n return (\n <g>\n <ellipse cx=\"0\" cy=\"-56\" rx=\"36\" ry=\"10\" fill=\"none\" stroke={color} strokeWidth=\"2.2\" transform=\"rotate(-15 0 -56)\" />\n <circle cx=\"28\" cy=\"-62\" r=\"3\" fill={accentColor} />\n </g>\n );\n }\n if (variant === \"star_crown\") {\n return (\n <g fill={color}>\n <polygon points=\"-16,-74 -12,-86 -8,-76\" />\n <polygon points=\"-6,-76 0,-92 6,-76\" />\n <polygon points=\"8,-76 12,-86 16,-74\" />\n <circle cx=\"0\" cy=\"-74\" r=\"2.5\" fill=\"#ffffff\" />\n </g>\n );\n }\n if (variant === \"eclipse_corona\") {\n return (\n <g>\n <ellipse cx=\"0\" cy=\"-56\" rx=\"32\" ry=\"18\" fill=\"none\" stroke={color} strokeWidth=\"3\" opacity=\"0.6\" strokeDasharray=\"8 4\" />\n <circle cx=\"0\" cy=\"-56\" r=\"22\" fill=\"#000000\" stroke={color} strokeWidth=\"1.5\" />\n </g>\n );\n }\n if (variant === \"pulsar_spires\") {\n return (\n <g stroke={color} strokeWidth=\"2.8\" strokeLinecap=\"round\">\n <line x1=\"0\" y1=\"-78\" x2=\"0\" y2=\"-98\" />\n <circle cx=\"0\" cy=\"-98\" r=\"3\" fill=\"#ffffff\" stroke=\"none\" />\n <line x1=\"0\" y1=\"-34\" x2=\"0\" y2=\"-18\" />\n <circle cx=\"0\" cy=\"-18\" r=\"3\" fill=\"#ffffff\" stroke=\"none\" />\n </g>\n );\n }\n if (variant === \"aurora_ribbons\") {\n return (\n <g fill=\"none\" strokeLinecap=\"round\">\n <path d=\"M -30 -82 Q -15 -96 0 -84 T 30 -88\" stroke={color} strokeWidth=\"3\" opacity=\"0.75\" />\n <path d=\"M -26 -88 Q -10 -100 6 -88 T 26 -92\" stroke={accentColor} strokeWidth=\"2\" opacity=\"0.6\" />\n </g>\n );\n }\n if (variant === \"angel_wings\") {\n return (\n <g>\n <polygon points=\"-26,-46 -48,-78 -32,-38\" fill={color} stroke={secondaryColor} strokeWidth=\"1.2\" opacity=\"0.85\" />\n <polygon points=\"26,-46 48,-78 32,-38\" fill={color} stroke={secondaryColor} strokeWidth=\"1.2\" opacity=\"0.85\" />\n <ellipse cx=\"0\" cy=\"-80\" rx=\"16\" ry=\"5\" fill=\"none\" stroke={accentColor} strokeWidth=\"1.6\" />\n </g>\n );\n }\n if (variant === \"singularity_core\") {\n return (\n <g>\n <ellipse cx=\"0\" cy=\"-56\" rx=\"30\" ry=\"26\" fill=\"none\" stroke=\"#ffffff\" strokeWidth=\"2\" opacity=\"0.9\" />\n <circle cx=\"-22\" cy=\"-70\" r=\"2.5\" fill={accentColor} />\n <circle cx=\"22\" cy=\"-42\" r=\"2.5\" fill={accentColor} />\n </g>\n );\n }\n\n // Archetype Fallbacks\n if (archetype === \"stealth_ninja\") {\n return (\n <g>\n <rect x=\"-24\" y=\"-66\" width=\"48\" height=\"8\" rx=\"2\" fill=\"#1e1b4b\" stroke={color} strokeWidth=\"1.5\" />\n <circle cx=\"0\" cy=\"-62\" r=\"3\" fill=\"#38bdf8\" />\n </g>\n );\n }\n if (archetype === \"mecha_pilot\") {\n return (\n <g fill={color}>\n <rect x=\"-20\" y=\"-88\" width=\"3\" height=\"20\" rx=\"1\" />\n <rect x=\"17\" y=\"-88\" width=\"3\" height=\"20\" rx=\"1\" />\n <circle cx=\"-18.5\" cy=\"-88\" r=\"3\" fill=\"#ffffff\" />\n <circle cx=\"18.5\" cy=\"-88\" r=\"3\" fill=\"#ffffff\" />\n </g>\n );\n }\n if (archetype === \"celestial_astro\") {\n return (\n <ellipse cx=\"0\" cy=\"-64\" rx=\"30\" ry=\"8\" fill=\"none\" stroke={color} strokeWidth=\"2\" opacity=\"0.9\" />\n );\n }\n if (archetype === \"matrix_hacker\") {\n return (\n <rect x=\"-26\" y=\"-76\" width=\"52\" height=\"44\" rx=\"12\" fill=\"none\" stroke={color} strokeWidth=\"1.8\" />\n );\n }\n // Default Cyber Suit\n return (\n <rect x=\"-24\" y=\"-66\" width=\"48\" height=\"6\" rx=\"2\" fill={color} />\n );\n}\n\n/**\n * 5 Distinct Staff Uniform & Torso Silhouettes for Employee Roles:\n * - cyber_suit: Corporate Tech Field Ops / Executive blazer with security ID badge lanyard & lapels\n * - mecha_pilot: Heavy Industrial DevOps / Hardware engineer with hazard chevrons, shoulder pauldrons & harness\n * - stealth_ninja: Security Auditor Shinobi with crossed gi collar, diagonal tactical sash, kunai strap & obi\n * - matrix_hacker: Streetwear Netrunner with oversized slouchy techwear cowl-hoodie, drawstrings & kangaroo pocket\n * - celestial_astro: Aerospace Scientist flight uniform with gold command epaulets, hermetic neck seal & pressure dials\n */\nexport function RenderStaffTorso({ archetype, color, secondaryColor, accentColor, idPrefix, trimColor }) {\n if (archetype === \"cyber_suit\") {\n return (\n <g id=\"staff-torso-cyber-suit\">\n {/* Tailored Corporate Blazer / Suit Jacket */}\n <polygon points=\"-18,-30 18,-30 15,-6 -15,-6\" fill={`url(#${idPrefix}_bodyGradient)`} stroke={color} strokeWidth=\"1.2\" />\n {/* Crisp Dark Lapels */}\n <polygon points=\"-17,-30 -7,-14 -13,-14\" fill=\"#0d1117\" stroke={color} strokeWidth=\"0.8\" />\n <polygon points=\"17,-30 7,-14 13,-14\" fill=\"#0d1117\" stroke={color} strokeWidth=\"0.8\" />\n {/* Center Zipper / Placket */}\n <line x1=\"0\" y1=\"-30\" x2=\"0\" y2=\"-10\" stroke={color} strokeWidth=\"1.4\" />\n {/* Dual Chest Pocket Slits */}\n <rect x=\"-14\" y=\"-22\" width=\"5\" height=\"3\" rx=\"1\" fill=\"#1f2937\" stroke={color} strokeWidth=\"0.6\" />\n <rect x=\"9\" y=\"-22\" width=\"5\" height=\"3\" rx=\"1\" fill=\"#1f2937\" stroke={color} strokeWidth=\"0.6\" />\n {/* Executive Security ID Lanyard & Hanging Badge */}\n <path d=\"M -5 -30 Q 0 -18 5 -30\" stroke={accentColor} strokeWidth=\"1.2\" fill=\"none\" opacity=\"0.85\" />\n <rect x=\"-4.5\" y=\"-19\" width=\"9\" height=\"12\" rx=\"1.5\" fill=\"#090d16\" stroke={color} strokeWidth=\"1\" />\n <rect x=\"-3\" y=\"-17.5\" width=\"6\" height=\"4.5\" rx=\"0.5\" fill={color} />\n <line x1=\"-3\" y1=\"-11\" x2=\"3\" y2=\"-11\" stroke=\"#ffffff\" strokeWidth=\"0.8\" />\n <line x1=\"-3\" y1=\"-9\" x2=\"1\" y2=\"-9\" stroke=\"#ffffff\" strokeWidth=\"0.8\" />\n {/* Polished Belt & Buckle */}\n <rect x=\"-15\" y=\"-10\" width=\"30\" height=\"4\" fill=\"#020617\" />\n <rect x=\"-3.5\" y=\"-11\" width=\"7\" height=\"6\" rx=\"1\" fill=\"#1e293b\" stroke={color} strokeWidth=\"1\" />\n </g>\n );\n }\n\n if (archetype === \"mecha_pilot\") {\n return (\n <g id=\"staff-torso-mecha-pilot\">\n {/* Broad Reinforced Heavy Armored Chest Rig */}\n <polygon points=\"-22,-30 22,-30 18,-6 -18,-6\" fill=\"#18181b\" stroke={color} strokeWidth=\"1.6\" />\n {/* Armored Shoulder Pauldrons */}\n <polygon points=\"-27,-29 -20,-33 -17,-25 -25,-20\" fill=\"#27272a\" stroke={color} strokeWidth=\"1.2\" />\n <polygon points=\"27,-29 20,-33 17,-25 25,-20\" fill=\"#27272a\" stroke={color} strokeWidth=\"1.2\" />\n {/* Heavy Industrial Hazard Chevrons (Yellow/Black) */}\n <polygon points=\"-12,-26 -7,-26 -3,-20 -8,-20\" fill=\"#eab308\" />\n <polygon points=\"-5,-26 0,-26 4,-20 -1,-20\" fill=\"#18181b\" />\n <polygon points=\"2,-26 7,-26 11,-20 6,-20\" fill=\"#eab308\" />\n <polygon points=\"9,-26 13,-26 17,-20 13,-20\" fill=\"#18181b\" />\n {/* Heavy Duty Tactical Harness Straps with Carabiners */}\n <line x1=\"-13\" y1=\"-30\" x2=\"-11\" y2=\"-6\" stroke={color} strokeWidth=\"1.8\" />\n <line x1=\"13\" y1=\"-30\" x2=\"11\" y2=\"-6\" stroke={color} strokeWidth=\"1.8\" />\n <circle cx=\"-12\" cy=\"-10\" r=\"1.8\" fill=\"none\" stroke=\"#e2e8f0\" strokeWidth=\"1\" />\n <circle cx=\"12\" cy=\"-10\" r=\"1.8\" fill=\"none\" stroke=\"#e2e8f0\" strokeWidth=\"1\" />\n {/* Central Reinforced Fusion Reactor with Protective Cage */}\n <circle cx=\"0\" cy=\"-14\" r=\"5.5\" fill=\"#09090b\" stroke={color} strokeWidth=\"1.5\" />\n <circle cx=\"0\" cy=\"-14\" r=\"3.2\" fill={color} />\n <line x1=\"-5\" y1=\"-14\" x2=\"5\" y2=\"-14\" stroke=\"#ffffff\" strokeWidth=\"1\" />\n <line x1=\"0\" y1=\"-19\" x2=\"0\" y2=\"-9\" stroke=\"#ffffff\" strokeWidth=\"1\" />\n {/* Tool Carabiner Pouch */}\n <rect x=\"-16\" y=\"-9\" width=\"7\" height=\"4\" rx=\"1\" fill=\"#3f3f46\" stroke=\"#71717a\" strokeWidth=\"0.8\" />\n <rect x=\"9\" y=\"-9\" width=\"7\" height=\"4\" rx=\"1\" fill=\"#3f3f46\" stroke=\"#71717a\" strokeWidth=\"0.8\" />\n </g>\n );\n }\n\n if (archetype === \"stealth_ninja\") {\n return (\n <g id=\"staff-torso-stealth-ninja\">\n {/* Sleek Form-Fitting Shinobi Gi / Wrapped Tunic */}\n <polygon points=\"-16,-30 16,-30 13,-6 -13,-6\" fill=\"#090d16\" stroke={color} strokeWidth=\"1.4\" />\n {/* Crossed Kimono / Gi Lapels */}\n <line x1=\"-16\" y1=\"-30\" x2=\"5\" y2=\"-14\" stroke={color} strokeWidth=\"2.2\" strokeLinecap=\"round\" />\n <line x1=\"16\" y1=\"-30\" x2=\"-3\" y2=\"-14\" stroke={color} strokeWidth=\"1.6\" strokeLinecap=\"round\" opacity=\"0.6\" />\n {/* Prominent Diagonal Tactical Sash (Torso cross-strap) */}\n <polygon points=\"-16,-28 -11,-30 14,-9 9,-7\" fill={color} opacity=\"0.9\" />\n {/* Attached Stealth Kunai / Scroll Sheath */}\n <rect x=\"-3\" y=\"-21\" width=\"11\" height=\"4\" rx=\"1.5\" fill=\"#1e293b\" stroke=\"#ffffff\" strokeWidth=\"0.8\" transform=\"rotate(-35 2 -19)\" />\n {/* Tied Fabric Obi Waist Sash with Hanging Knot Tails */}\n <rect x=\"-14\" y=\"-12\" width=\"28\" height=\"6\" rx=\"2\" fill=\"#1e1b4b\" stroke={color} strokeWidth=\"1.2\" />\n <path d=\"M 3 -7 Q 6 1 4 6 Q 1 1 3 -7\" fill={color} />\n <path d=\"M 5 -7 Q 9 0 8 5 Q 4 0 5 -7\" fill={accentColor} opacity=\"0.85\" />\n {/* Forearm Binding Accents */}\n <line x1=\"-24\" y1=\"-22\" x2=\"-18\" y2=\"-20\" stroke={color} strokeWidth=\"1.2\" />\n <line x1=\"24\" y1=\"-22\" x2=\"18\" y2=\"-20\" stroke={color} strokeWidth=\"1.2\" />\n </g>\n );\n }\n\n if (archetype === \"matrix_hacker\") {\n return (\n <g id=\"staff-torso-matrix-hacker\">\n {/* Loose Oversized Slouchy Techwear Hoodie Body */}\n <rect x=\"-21\" y=\"-30\" width=\"42\" height=\"25\" rx=\"8\" fill=\"#121217\" stroke={color} strokeWidth=\"1.6\" />\n {/* Crumpled Fabric Cowl Collar draped around neck */}\n <path d=\"M -18 -32 Q 0 -26 18 -32 Q 13 -22 0 -22 Q -13 -22 -18 -32 Z\" fill=\"#1f1f28\" stroke={color} strokeWidth=\"1.2\" />\n {/* Hanging Dual Drawstring Cords with Metal Aglets */}\n <path d=\"M -7 -23 Q -9 -14 -6 -7\" stroke=\"#ffffff\" strokeWidth=\"1.4\" fill=\"none\" strokeLinecap=\"round\" />\n <rect x=\"-7.5\" y=\"-7\" width=\"3\" height=\"4\" rx=\"0.8\" fill={color} />\n <path d=\"M 7 -23 Q 9 -13 6 -6\" stroke=\"#ffffff\" strokeWidth=\"1.4\" fill=\"none\" strokeLinecap=\"round\" />\n <rect x=\"4.5\" y=\"-6\" width=\"3\" height=\"4\" rx=\"0.8\" fill={color} />\n {/* Front Kangaroo Pouch Pocket */}\n <path d=\"M -15 -14 L 15 -14 L 13 -6 L -13 -6 Z\" fill=\"#09090d\" stroke=\"#27272a\" strokeWidth=\"1\" />\n <line x1=\"-14\" y1=\"-14\" x2=\"-11\" y2=\"-8\" stroke={color} strokeWidth=\"1.2\" />\n <line x1=\"14\" y1=\"-14\" x2=\"11\" y2=\"-8\" stroke={color} strokeWidth=\"1.2\" />\n {/* Cyber Holographic Glitch Patch on Chest */}\n <g transform=\"translate(6, -21)\">\n <rect x=\"0\" y=\"0\" width=\"9\" height=\"5\" fill=\"#000000\" stroke={accentColor} strokeWidth=\"0.8\" />\n <line x1=\"2\" y1=\"1\" x2=\"2\" y2=\"4\" stroke={color} strokeWidth=\"0.8\" />\n <line x1=\"4\" y1=\"1\" x2=\"4\" y2=\"4\" stroke={color} strokeWidth=\"1.2\" />\n <line x1=\"6.5\" y1=\"1\" x2=\"6.5\" y2=\"4\" stroke={color} strokeWidth=\"0.8\" />\n </g>\n </g>\n );\n }\n\n if (archetype === \"celestial_astro\") {\n return (\n <g id=\"staff-torso-celestial-astro\">\n {/* Pressurized Flight Suit Body */}\n <polygon points=\"-18,-30 18,-30 16,-6 -16,-6\" fill=\"#f1f5f9\" stroke={color} strokeWidth=\"1.4\" />\n {/* Hermetic Helmet Seal Ring */}\n <rect x=\"-14\" y=\"-33\" width=\"28\" height=\"5\" rx=\"2\" fill=\"#334155\" stroke={color} strokeWidth=\"1.2\" />\n {/* Gold Command Rank Epaulets on Shoulders */}\n <rect x=\"-24\" y=\"-31\" width=\"8\" height=\"4.5\" rx=\"1\" fill=\"#f59e0b\" stroke=\"#78350f\" strokeWidth=\"0.8\" />\n <line x1=\"-22\" y1=\"-30\" x2=\"-22\" y2=\"-28\" stroke=\"#ffffff\" strokeWidth=\"0.8\" />\n <line x1=\"-19\" y1=\"-30\" x2=\"-19\" y2=\"-28\" stroke=\"#ffffff\" strokeWidth=\"0.8\" />\n <rect x=\"16\" y=\"-31\" width=\"8\" height=\"4.5\" rx=\"1\" fill=\"#f59e0b\" stroke=\"#78350f\" strokeWidth=\"0.8\" />\n <line x1=\"19\" y1=\"-30\" x2=\"19\" y2=\"-28\" stroke=\"#ffffff\" strokeWidth=\"0.8\" />\n <line x1=\"22\" y1=\"-30\" x2=\"22\" y2=\"-28\" stroke=\"#ffffff\" strokeWidth=\"0.8\" />\n {/* Dual Atmospheric Pressure Regulator Dials with Connecting Glowing Tubing */}\n <circle cx=\"-7\" cy=\"-17\" r=\"3.5\" fill=\"#0f172a\" stroke={color} strokeWidth=\"1.2\" />\n <circle cx=\"-7\" cy=\"-17\" r=\"1.5\" fill=\"#22c55e\" />\n <circle cx=\"7\" cy=\"-17\" r=\"3.5\" fill=\"#0f172a\" stroke={color} strokeWidth=\"1.2\" />\n <circle cx=\"7\" cy=\"-17\" r=\"1.5\" fill=\"#38bdf8\" />\n <path d=\"M -3.5 -17 Q 0 -13 3.5 -17\" fill=\"none\" stroke={color} strokeWidth=\"1.6\" />\n {/* Planetary Mission Patch Insignia on Left Chest */}\n <polygon points=\"-12,-26 -6,-26 -9,-21\" fill={color} stroke=\"#ffffff\" strokeWidth=\"0.8\" />\n <ellipse cx=\"-9\" cy=\"-24\" rx=\"4\" ry=\"1.5\" fill=\"none\" stroke=\"#f59e0b\" strokeWidth=\"0.8\" transform=\"rotate(-20 -9 -24)\" />\n {/* Aerodynamic Thermal Seams */}\n <line x1=\"-12\" y1=\"-14\" x2=\"-10\" y2=\"-6\" stroke=\"#94a3b8\" strokeWidth=\"1\" />\n <line x1=\"12\" y1=\"-14\" x2=\"10\" y2=\"-6\" stroke=\"#94a3b8\" strokeWidth=\"1\" />\n </g>\n );\n }\n\n // Fallback default\n return (\n <g>\n <rect x=\"-17\" y=\"-30\" width=\"34\" height=\"22\" rx=\"11\" fill={`url(#${idPrefix}_bodyGradient)`} />\n <rect x=\"-14\" y=\"-12\" width=\"28\" height=\"6\" fill={trimColor} />\n <circle cx=\"0\" cy=\"-18\" r=\"4.5\" fill=\"#0f172a\" stroke={color} strokeWidth=\"1.4\" />\n <circle cx=\"0\" cy=\"-18\" r=\"2.2\" fill={color} />\n </g>\n );\n}\n\nexport function RenderStaffArms({ archetype, color, armLRef, armRRef }) {\n let sleeveL = null;\n let sleeveR = null;\n\n if (archetype === \"mecha_pilot\") {\n sleeveL = (\n <>\n <rect x=\"-27\" y=\"-26\" width=\"9\" height=\"24\" rx=\"3\" fill=\"#27272a\" stroke={color} strokeWidth=\"1\" />\n <rect x=\"-28\" y=\"-16\" width=\"11\" height=\"8\" rx=\"2\" fill=\"#3f3f46\" stroke=\"#eab308\" strokeWidth=\"1\" />\n </>\n );\n sleeveR = (\n <>\n <rect x=\"18\" y=\"-26\" width=\"9\" height=\"24\" rx=\"3\" fill=\"#27272a\" stroke={color} strokeWidth=\"1\" />\n <rect x=\"17\" y=\"-16\" width=\"11\" height=\"8\" rx=\"2\" fill=\"#3f3f46\" stroke=\"#eab308\" strokeWidth=\"1\" />\n </>\n );\n } else if (archetype === \"stealth_ninja\") {\n sleeveL = (\n <>\n <rect x=\"-26\" y=\"-26\" width=\"8\" height=\"24\" rx=\"4\" fill=\"#0f172a\" />\n <line x1=\"-26\" y1=\"-18\" x2=\"-18\" y2=\"-16\" stroke={color} strokeWidth=\"1.2\" />\n <line x1=\"-26\" y1=\"-12\" x2=\"-18\" y2=\"-10\" stroke={color} strokeWidth=\"1.2\" />\n </>\n );\n sleeveR = (\n <>\n <rect x=\"18\" y=\"-26\" width=\"8\" height=\"24\" rx=\"4\" fill=\"#0f172a\" />\n <line x1=\"18\" y1=\"-18\" x2=\"26\" y2=\"-16\" stroke={color} strokeWidth=\"1.2\" />\n <line x1=\"18\" y1=\"-12\" x2=\"26\" y2=\"-10\" stroke={color} strokeWidth=\"1.2\" />\n </>\n );\n } else if (archetype === \"matrix_hacker\") {\n sleeveL = (\n <>\n <rect x=\"-28\" y=\"-26\" width=\"11\" height=\"24\" rx=\"5\" fill=\"#18181b\" stroke={color} strokeWidth=\"1\" />\n <rect x=\"-27\" y=\"-5\" width=\"9\" height=\"3\" rx=\"1\" fill=\"#27272a\" />\n </>\n );\n sleeveR = (\n <>\n <rect x=\"17\" y=\"-26\" width=\"11\" height=\"24\" rx=\"5\" fill=\"#18181b\" stroke={color} strokeWidth=\"1\" />\n <rect x=\"18\" y=\"-5\" width=\"9\" height=\"3\" rx=\"1\" fill=\"#27272a\" />\n </>\n );\n } else if (archetype === \"celestial_astro\") {\n sleeveL = (\n <>\n <rect x=\"-26\" y=\"-26\" width=\"8\" height=\"24\" rx=\"4\" fill=\"#f1f5f9\" stroke=\"#94a3b8\" strokeWidth=\"0.8\" />\n <polygon points=\"-26,-15 -18,-15 -22,-11\" fill={color} />\n </>\n );\n sleeveR = (\n <>\n <rect x=\"18\" y=\"-26\" width=\"8\" height=\"24\" rx=\"4\" fill=\"#f1f5f9\" stroke=\"#94a3b8\" strokeWidth=\"0.8\" />\n <polygon points=\"18,-15 26,-15 22,-11\" fill={color} />\n </>\n );\n } else {\n // Default cyber suit tailored sleeve\n sleeveL = (\n <>\n <rect x=\"-26\" y=\"-26\" width=\"8\" height=\"24\" rx=\"4\" fill=\"#1e2430\" stroke={color} strokeWidth=\"0.8\" />\n <line x1=\"-25\" y1=\"-6\" x2=\"-19\" y2=\"-6\" stroke={color} strokeWidth=\"1\" />\n </>\n );\n sleeveR = (\n <>\n <rect x=\"18\" y=\"-26\" width=\"8\" height=\"24\" rx=\"4\" fill=\"#1e2430\" stroke={color} strokeWidth=\"0.8\" />\n <line x1=\"19\" y1=\"-6\" x2=\"25\" y2=\"-6\" stroke={color} strokeWidth=\"1\" />\n </>\n );\n }\n\n return (\n <>\n <g ref={armLRef}>{sleeveL}</g>\n <g ref={armRRef}>{sleeveR}</g>\n </>\n );\n}\n\n/**\n * Pure Declarative React SVG Animated Character & Workstation Engine.\n * Supports:\n * - 6 Actions: streaming, happy, sleeping, error, looping, pending\n * - Live mixing of 810 catalog items (Skins, Props, Pets, Auras, Themes)\n * - Pure SVG rendering (zero canvas dependency) with 60 FPS hardware-accelerated transforms\n * - Zero raw emojis, 100% vector scalability\n */\nexport function LiveReactAgent({\n mode = \"streaming\",\n intensity = 0.75,\n skinId = \"skin_0\",\n skinItem: propSkinItem = null,\n petId = \"pet_0\",\n petItem: propPetItem = null,\n propsList = [],\n auraId = \"aura_0\",\n auraItem: propAuraItem = null,\n themeId = \"theme_default\",\n themeItem: propThemeItem = null,\n clientType = \"cli\",\n interactive = true,\n isPlaying = true,\n showDesk = true,\n showFloor = true,\n className = \"\",\n style = {},\n onTelemetry = null,\n}) {\n const rawId = React.useId();\n const idPrefix = useMemo(() => \"lra_\" + rawId.replace(/[^a-zA-Z0-9]/g, \"_\"), [rawId]);\n // Resolve item objects from catalog or props\n const skin = useMemo(() => {\n return propSkinItem || getItemById(skinId) || (COSMETIC_CATALOG.skins || [])[0];\n }, [propSkinItem, skinId]);\n\n const pet = useMemo(() => {\n return propPetItem || getItemById(petId) || (COSMETIC_CATALOG.pets || [])[0];\n }, [propPetItem, petId]);\n\n const aura = useMemo(() => {\n return propAuraItem || getItemById(auraId) || (COSMETIC_CATALOG.auras || [])[0];\n }, [propAuraItem, auraId]);\n\n const theme = useMemo(() => {\n return propThemeItem || getItemById(themeId) || (COSMETIC_CATALOG.officeThemes || [])[0];\n }, [propThemeItem, themeId]);\n\n const themeStyle = THEME_STYLES[theme?.id] || THEME_STYLES.theme_default;\n const skinColor = skin?.color || \"#00f0ff\";\n const skinSecColor = skin?.secondaryColor || \"#111827\";\n const skinAccColor = skin?.accentColor || \"#ffffff\";\n const skinVariant = skin?.variant || \"tactical_visor\";\n const skinArch = skin?.archetype || \"cyber_suit\";\n const petColor = pet?.color || \"#00f0ff\";\n const petArch = pet?.archetype || \"none\";\n const auraColor = aura?.color || \"#00f0ff\";\n const auraArch = aura?.archetype || \"none\";\n const trimColor = clientType === \"app\" ? \"#8b5cf6\" : \"#10b981\";\n\n // SVG Animation Refs for zero-rerender 60 FPS animation\n const rootGRef = useRef(null);\n const bodyGRef = useRef(null);\n const armLRef = useRef(null);\n const armRRef = useRef(null);\n const eyeLRef = useRef(null);\n const eyeRRef = useRef(null);\n const mouthRef = useRef(null);\n const auraRef = useRef(null);\n const petGRef = useRef(null);\n const holoCubeRef = useRef(null);\n const steamRef = useRef(null);\n const serverLedsRef = useRef([]);\n const oscWaveRef = useRef(null);\n const fxGroupRef = useRef(null);\n const auraParticlesRef = useRef(null);\n const monitorScanlineRef = useRef(null);\n\n // Animation Loop Effect\n useEffect(() => {\n if (!interactive) return;\n\n let animId;\n let lastTime = performance.now();\n let frameCount = 0;\n let fpsTimer = 0;\n\n const tick = (now) => {\n const dt = now - lastTime;\n lastTime = now;\n const t = isPlaying ? now : 0;\n\n frameCount++;\n fpsTimer += dt;\n\n // 1. Body Bob, Shake & Tilt\n let bob = Math.sin(t * 0.004) * (0.8 + intensity * 1.4);\n let shake = 0;\n let tilt = 0;\n\n if (mode === \"happy\") bob = -Math.abs(Math.sin(t * 0.005)) * 4.2;\n if (mode === \"sleeping\") {\n bob = Math.sin(t * 0.0016) * 1.1 + 2.2;\n tilt = (0.12 + Math.sin(t * 0.0016) * 0.02) * (180 / Math.PI);\n }\n if (mode === \"error\") shake = Math.sin(t * 0.09) * 2.2;\n if (mode === \"looping\") {\n shake = Math.sin(t * 0.08) * 2.5;\n bob = Math.sin(t * 0.015) * 1.8;\n tilt = Math.sin(t * 0.02) * 10;\n }\n\n if (bodyGRef.current) {\n bodyGRef.current.setAttribute(\"transform\", `translate(${shake.toFixed(2)}, ${bob.toFixed(2)}) rotate(${tilt.toFixed(2)})`);\n }\n\n // 2. Arms (Shoulder Pivot at (-22, -26) and (22, -26))\n const phase = t * 0.012;\n let rotL = 0;\n let rotR = 0;\n\n if (mode === \"streaming\") {\n rotL = Math.sin(phase) * 0.14 * (0.3 + intensity) * (180 / Math.PI);\n rotR = -Math.sin(phase + 1.3) * 0.14 * (0.3 + intensity) * (180 / Math.PI);\n } else if (mode === \"pending\") {\n rotL = (2.5 + Math.sin(t * 0.012) * 0.35) * (180 / Math.PI);\n rotR = -Math.sin(phase + 1.3) * 0.06 * (180 / Math.PI);\n } else if (mode === \"happy\") {\n rotL = (2.2 + Math.sin(t * 0.01) * 0.2) * (180 / Math.PI);\n rotR = (-2.2 - Math.sin(t * 0.01 + 1) * 0.2) * (180 / Math.PI);\n } else if (mode === \"error\") {\n rotL = (2.7 + Math.sin(t * 0.08) * 0.1) * (180 / Math.PI);\n rotR = (-2.7 - Math.sin(t * 0.08) * 0.1) * (180 / Math.PI);\n } else if (mode === \"looping\") {\n rotL = (2.4 + Math.sin(t * 0.02) * 0.4) * (180 / Math.PI);\n rotR = (-2.4 - Math.sin(t * 0.02 + 1) * 0.4) * (180 / Math.PI);\n }\n\n if (armLRef.current) armLRef.current.setAttribute(\"transform\", `rotate(${rotL.toFixed(2)}, -22, -26)`);\n if (armRRef.current) armRRef.current.setAttribute(\"transform\", `rotate(${rotR.toFixed(2)}, 22, -26)`);\n\n // 3. Eyes (Blink & CRT Flicker)\n const blinking = Math.sin(t * 0.0013) > 0.985;\n const flicker = (0.85 + Math.sin(t * 0.01) * 0.15).toFixed(2);\n\n if (eyeLRef.current) {\n eyeLRef.current.setAttribute(\"opacity\", flicker);\n if (mode === \"streaming\") {\n eyeLRef.current.setAttribute(\"ry\", blinking ? \"0.8\" : \"4.4\");\n }\n }\n if (eyeRRef.current) {\n eyeRRef.current.setAttribute(\"opacity\", flicker);\n if (mode === \"streaming\") {\n eyeRRef.current.setAttribute(\"ry\", blinking ? \"0.8\" : \"4.4\");\n }\n }\n\n // Telemetry callback\n if (fpsTimer >= 400 && onTelemetry) {\n onTelemetry({\n fps: Math.round((frameCount * 1000) / fpsTimer),\n bob,\n shake,\n rotL,\n rotR,\n blink: blinking,\n });\n frameCount = 0;\n fpsTimer = 0;\n }\n\n // 4. Aura & Ambient VFX Animation\n if (auraRef.current && auraArch !== \"none\") {\n const pulse = 1 + Math.sin(t * 0.006) * 0.12;\n auraRef.current.setAttribute(\"transform\", `scale(${pulse.toFixed(3)})`);\n\n if (auraParticlesRef.current) {\n if (auraArch === \"matrix_rain\") {\n let mHtml = \"\";\n const cols = [-40, -28, -16, -4, 8, 20, 32, 44];\n const glyphs = [\"0\", \"1\", \"λ\", \"§\", \"#\", \"*\", \">\", \"Ψ\", \"Δ\", \"01\"];\n cols.forEach((colX, cIdx) => {\n const speed = 0.05 + (cIdx % 3) * 0.02;\n const dropY = -45 + ((t * speed + cIdx * 18) % 75);\n mHtml += `<line x1=\"${colX}\" y1=\"-45\" x2=\"${colX}\" y2=\"${dropY.toFixed(1)}\" stroke=\"${auraColor}\" stroke-width=\"1.2\" stroke-dasharray=\"2 3\" opacity=\"0.35\" />`;\n const glyph = glyphs[(Math.floor(t * 0.003 + cIdx * 3)) % glyphs.length];\n mHtml += `<text x=\"${colX - 3}\" y=\"${dropY.toFixed(1)}\" fill=\"${auraColor}\" font-size=\"7\" font-family=\"monospace\" font-weight=\"bold\" opacity=\"0.9\">${glyph}</text>`;\n mHtml += `<circle cx=\"${colX}\" cy=\"${(dropY + 2).toFixed(1)}\" r=\"1.6\" fill=\"#ffffff\" />`;\n });\n auraParticlesRef.current.innerHTML = mHtml;\n } else if (auraArch === \"quantum_mist\") {\n let qHtml = \"\";\n const rAng = (t * 0.02) % 360;\n qHtml += `<ellipse cx=\"0\" cy=\"0\" rx=\"46\" ry=\"18\" fill=\"none\" stroke=\"${auraColor}\" stroke-width=\"1.4\" opacity=\"0.5\" transform=\"rotate(${rAng.toFixed(1)})\" />`;\n qHtml += `<ellipse cx=\"0\" cy=\"0\" rx=\"40\" ry=\"15\" fill=\"none\" stroke=\"#ffffff\" stroke-width=\"1\" opacity=\"0.4\" transform=\"rotate(${(-rAng * 0.7).toFixed(1)})\" />`;\n for (let i = 0; i < 6; i++) {\n const orbAng = t * 0.0025 + (i * Math.PI * 2) / 6;\n const ox = Math.cos(orbAng) * 44;\n const oy = Math.sin(orbAng) * 18;\n const zScale = 0.7 + Math.sin(orbAng) * 0.3;\n const alpha = (0.4 + Math.sin(orbAng) * 0.5).toFixed(2);\n qHtml += `<circle cx=\"${ox.toFixed(1)}\" cy=\"${oy.toFixed(1)}\" r=\"${(2.5 * zScale).toFixed(1)}\" fill=\"${auraColor}\" opacity=\"${alpha}\" />`;\n qHtml += `<circle cx=\"${ox.toFixed(1)}\" cy=\"${oy.toFixed(1)}\" r=\"${(1.2 * zScale).toFixed(1)}\" fill=\"#ffffff\" opacity=\"${alpha}\" />`;\n }\n auraParticlesRef.current.innerHTML = qHtml;\n } else if (auraArch === \"glitch_halo\") {\n let gHtml = \"\";\n const isGlitch = Math.sin(t * 0.04) > 0.65;\n const jitterX = isGlitch ? Math.sin(t * 0.3) * 6 : 0;\n const jitterY = isGlitch ? Math.cos(t * 0.4) * 3 : 0;\n gHtml += `<rect x=\"${(-38 + jitterX).toFixed(1)}\" y=\"${(-26 + jitterY).toFixed(1)}\" width=\"76\" height=\"34\" rx=\"4\" fill=\"none\" stroke=\"#00f0ff\" stroke-width=\"1.8\" opacity=\"0.75\" />`;\n gHtml += `<rect x=\"${(-38 - jitterX * 0.8).toFixed(1)}\" y=\"${(-26 - jitterY * 0.8).toFixed(1)}\" width=\"76\" height=\"34\" rx=\"4\" fill=\"none\" stroke=\"#ff007f\" stroke-width=\"1.8\" opacity=\"0.75\" />`;\n gHtml += `<rect x=\"-38\" y=\"-26\" width=\"76\" height=\"34\" rx=\"4\" fill=\"none\" stroke=\"${auraColor}\" stroke-width=\"2.2\" opacity=\"0.9\" />`;\n for (let sl = -20; sl <= 20; sl += 10) {\n const sOff = isGlitch ? Math.sin(t * 0.2 + sl) * 8 : 0;\n gHtml += `<line x1=\"${(-38 + sOff).toFixed(1)}\" y1=\"${sl}\" x2=\"${(38 + sOff).toFixed(1)}\" y2=\"${sl}\" stroke=\"#ffffff\" stroke-width=\"0.8\" opacity=\"0.5\" />`;\n }\n auraParticlesRef.current.innerHTML = gHtml;\n } else {\n // Plasma Ring & Other Auras\n let pHtml = \"\";\n const rot1 = (t * 0.03) % 360;\n const rot2 = (-t * 0.045) % 360;\n pHtml += `<ellipse cx=\"0\" cy=\"0\" rx=\"46\" ry=\"18\" fill=\"none\" stroke=\"${auraColor}\" stroke-width=\"2.5\" opacity=\"0.8\" transform=\"rotate(${rot1.toFixed(1)})\" />`;\n pHtml += `<ellipse cx=\"0\" cy=\"0\" rx=\"42\" ry=\"14\" fill=\"none\" stroke=\"#ffffff\" stroke-width=\"1.2\" opacity=\"0.6\" transform=\"rotate(${rot2.toFixed(1)})\" />`;\n for (let i = 0; i < 8; i++) {\n const fAng = (t * 0.002 + (i * Math.PI * 2) / 8);\n const fx = Math.cos(fAng) * 44;\n const fy = Math.sin(fAng) * 16;\n pHtml += `<circle cx=\"${fx.toFixed(1)}\" cy=\"${fy.toFixed(1)}\" r=\"2\" fill=\"${auraColor}\" opacity=\"0.8\" />`;\n }\n auraParticlesRef.current.innerHTML = pHtml;\n }\n }\n }\n\n // 5. Props & Desk Animation\n if (holoCubeRef.current) {\n const ang = (t * 0.1) % 360;\n holoCubeRef.current.setAttribute(\"transform\", `translate(65, -15) rotate(${ang.toFixed(1)})`);\n }\n\n if (serverLedsRef.current.length > 0) {\n const ledCols = [\"#22c55e\", \"#00f0ff\", \"#f59e0b\", \"#ec4899\"];\n serverLedsRef.current.forEach((led, idx) => {\n if (!led) return;\n const on = Math.sin(t * 0.008 + idx * 1.6) > 0;\n led.setAttribute(\"fill\", on ? ledCols[idx] : \"#0f172a\");\n });\n }\n\n if (oscWaveRef.current) {\n let d = \"M 57 21\";\n for (let ox = 57; ox <= 85; ox += 3) {\n const oy = 21 + Math.sin(t * 0.01 + ox * 0.8) * 4;\n d += ` L ${ox} ${oy.toFixed(1)}`;\n }\n oscWaveRef.current.setAttribute(\"d\", d);\n }\n\n if (steamRef.current) {\n let sHtml = \"\";\n for (let i = 0; i < 3; i++) {\n const p = ((t * 0.0008 + i / 3) % 1);\n const sy = 8 - p * 22;\n const sx = -73 + Math.sin(p * 5 + i * 2) * 4;\n const alpha = (0.55 * (1 - p)).toFixed(2);\n const r = 1 + p * 2.5;\n sHtml += `<circle cx=\"${sx.toFixed(1)}\" cy=\"${sy.toFixed(1)}\" r=\"${r.toFixed(1)}\" fill=\"#ffffff\" opacity=\"${alpha}\" />`;\n }\n steamRef.current.innerHTML = sHtml;\n }\n\n if (monitorScanlineRef.current) {\n const sY = -42 + ((t * 0.035) % 42);\n monitorScanlineRef.current.setAttribute(\"y1\", sY.toFixed(1));\n monitorScanlineRef.current.setAttribute(\"y2\", sY.toFixed(1));\n }\n\n // 6. Pet Animation\n if (petGRef.current && petArch !== \"none\") {\n if (petArch === \"hover_drone\") {\n const droneY = -25 + Math.sin(t * 0.005) * 5;\n petGRef.current.setAttribute(\"transform\", `translate(80, ${droneY.toFixed(2)})`);\n } else if (mode === \"happy\") {\n const jumpY = -Math.abs(Math.sin(t * 0.008)) * 8;\n const squash = 1 + Math.abs(Math.sin(t * 0.008)) * 0.15;\n petGRef.current.setAttribute(\"transform\", `translate(80, ${jumpY.toFixed(2)}) scale(1, ${squash.toFixed(2)})`);\n } else if (mode === \"sleeping\") {\n const breathe = 1 + Math.sin(t * 0.0016) * 0.04;\n petGRef.current.setAttribute(\"transform\", `translate(80, 0) scale(1, ${breathe.toFixed(2)})`);\n } else if (mode === \"error\") {\n const petShake = Math.sin(t * 0.08) * 2;\n petGRef.current.setAttribute(\"transform\", `translate(${(80 + petShake).toFixed(2)}, 0)`);\n } else if (mode === \"looping\") {\n const petTilt = Math.sin(t * 0.04) * 8;\n petGRef.current.setAttribute(\"transform\", `translate(80, 0) rotate(${petTilt.toFixed(1)})`);\n } else {\n petGRef.current.setAttribute(\"transform\", \"translate(80, 0)\");\n }\n }\n\n // 7. Dynamic Workstation & Action Particle Effects\n if (fxGroupRef.current) {\n if (mode === \"streaming\" || mode === \"pending\") {\n // Keystroke sparks & floating code bits shooting up from keyboard\n let inner = \"\";\n const numParticles = Math.min(8, Math.round(3 + intensity * 6));\n const codeTokens = [\"✦\", \"01\", \"</>\", \"{ }\", \"++\", \"=>\", \"•\", \"λ\", \"==\"];\n for (let k = 0; k < numParticles; k++) {\n const p = ((t * (0.0006 + intensity * 0.0006) + k / numParticles) % 1);\n const sx = 20 - p * 30 + Math.sin(p * 6 + k) * 6;\n const sy = 25 - p * 42;\n const alpha = (Math.sin(p * Math.PI) * (0.4 + intensity * 0.6)).toFixed(2);\n const token = codeTokens[k % codeTokens.length];\n if (k % 2 === 0) {\n inner += `<text x=\"${sx.toFixed(1)}\" y=\"${sy.toFixed(1)}\" fill=\"${skinColor}\" font-size=\"5.5\" font-family=\"monospace\" font-weight=\"bold\" opacity=\"${alpha}\">${token}</text>`;\n } else {\n inner += `<circle cx=\"${sx.toFixed(1)}\" cy=\"${sy.toFixed(1)}\" r=\"${(1 + p * 1.5).toFixed(1)}\" fill=\"#00f0ff\" opacity=\"${alpha}\" />`;\n }\n }\n fxGroupRef.current.innerHTML = inner;\n } else if (mode === \"happy\") {\n // Celebration Confetti & Sparkles\n let inner = \"\";\n const colors = [\"#fbbf24\", \"#00f0ff\", \"#f43f5e\", \"#10b981\", \"#a855f7\", \"#ffffff\"];\n const shapes = [\"✦\", \"★\", \"✧\", \"•\"];\n for (let k = 0; k < 10; k++) {\n const p = ((t * 0.0007 + k / 10) % 1);\n const ang = (k / 10) * Math.PI * 2;\n const dist = 18 + p * 45;\n const cx = Math.cos(ang) * dist;\n const cy = -50 + Math.sin(ang) * (dist * 0.7) - p * 15;\n const alpha = ((1 - p) * 0.9).toFixed(2);\n const col = colors[k % colors.length];\n const sym = shapes[k % shapes.length];\n inner += `<text x=\"${cx.toFixed(1)}\" y=\"${cy.toFixed(1)}\" fill=\"${col}\" font-size=\"7\" font-weight=\"bold\" opacity=\"${alpha}\">${sym}</text>`;\n }\n fxGroupRef.current.innerHTML = inner;\n } else if (mode === \"sleeping\") {\n // Floating Sleep Z Letters & Bubbles\n let inner = \"\";\n for (let k = 0; k < 4; k++) {\n const p = ((t * 0.0004 + k / 4) % 1);\n const zx = 18 + p * 20;\n const zy = -78 - p * 34;\n const s = 3 + p * 4;\n const alpha = (1 - p).toFixed(2);\n inner += `<path d=\"M ${zx} ${zy} L ${zx + s} ${zy} L ${zx} ${zy + s} L ${zx + s} ${zy + s}\" stroke=\"#93c5fd\" stroke-width=\"1.8\" fill=\"none\" opacity=\"${alpha}\" />`;\n inner += `<circle cx=\"${(zx - 6).toFixed(1)}\" cy=\"${(zy + 8).toFixed(1)}\" r=\"${(1.5 + p * 3).toFixed(1)}\" fill=\"none\" stroke=\"#60a5fa\" stroke-width=\"0.8\" opacity=\"${(alpha * 0.6).toFixed(2)}\" />`;\n }\n fxGroupRef.current.innerHTML = inner;\n } else if (mode === \"error\" || mode === \"looping\") {\n // Billowing Smoke & Electric Arc Sparks\n let inner = \"\";\n for (let k = 0; k < 5; k++) {\n const p = ((t * 0.0008 + k / 5) % 1);\n const sx = Math.sin(p * 8 + k * 1.3) * 8 + (k - 2) * 4;\n const sy = -76 - p * 42;\n const r = 2.5 + p * 8;\n const alpha = (0.65 * (1 - p)).toFixed(2);\n inner += `<circle cx=\"${sx.toFixed(1)}\" cy=\"${sy.toFixed(1)}\" r=\"${r.toFixed(1)}\" fill=\"#4b5563\" opacity=\"${alpha}\" />`;\n }\n if (Math.sin(t * 0.05) > 0.6) {\n inner += `<path d=\"M -26 -65 L -34 -72 L -28 -74 L -36 -82\" stroke=\"#f43f5e\" stroke-width=\"1.5\" fill=\"none\" />`;\n inner += `<path d=\"M 26 -65 L 34 -72 L 28 -74 L 36 -82\" stroke=\"#facc15\" stroke-width=\"1.5\" fill=\"none\" />`;\n }\n fxGroupRef.current.innerHTML = inner;\n } else {\n fxGroupRef.current.innerHTML = \"\";\n }\n }\n\n if (isPlaying) {\n animId = requestAnimationFrame(tick);\n }\n };\n\n animId = requestAnimationFrame(tick);\n return () => cancelAnimationFrame(animId);\n }, [interactive, mode, intensity, petArch, isPlaying]);\n\n // Prop helpers & resolved list\n const resolvedProps = useMemo(() => {\n if (!propsList || propsList.length === 0) return [];\n return propsList\n .map((p) => (typeof p === \"object\" && p !== null ? p : getItemById(p) || null))\n .filter(Boolean);\n }, [propsList]);\n\n const hasProp = (keyword) => {\n const kw = String(keyword).toLowerCase();\n return (\n (propsList || []).some((p) => String(p).toLowerCase().includes(kw)) ||\n resolvedProps.some((p) => (p.archetype && p.archetype.includes(kw)) || (p.name && p.name.toLowerCase().includes(kw)))\n );\n };\n\n const getProp = (arch) => {\n const kw = String(arch).toLowerCase();\n return resolvedProps.find((p) => (p.archetype && p.archetype.includes(kw)) || (p.name && p.name.toLowerCase().includes(kw)) || String(p.id).includes(kw));\n };\n\n return (\n <div\n className={`relative select-none flex items-center justify-center overflow-hidden ${className}`}\n style={style}\n >\n <svg\n ref={rootGRef}\n viewBox={showDesk || showFloor ? \"-170 -160 340 300\" : \"-65 -95 130 130\"}\n className=\"w-full h-full block\"\n style={{ filter: \"drop-shadow(0 12px 24px rgba(0,0,0,0.5))\" }}\n >\n <defs>\n {/* Radial Ambient Glow */}\n <radialGradient id={`${idPrefix}_ambientGlow`} cx=\"50%\" cy=\"50%\" r=\"50%\">\n <stop offset=\"0%\" stopColor={themeStyle.glow} stopOpacity=\"0.25\" />\n <stop offset=\"70%\" stopColor={themeStyle.base} stopOpacity=\"0.05\" />\n <stop offset=\"100%\" stopColor=\"transparent\" stopOpacity=\"0\" />\n </radialGradient>\n\n {/* Torso & Head Shading Gradients */}\n <linearGradient id={`${idPrefix}_bodyGradient`} x1=\"0\" y1=\"0\" x2=\"0\" y2=\"1\">\n <stop offset=\"0%\" stopColor=\"#ffffff\" />\n <stop offset=\"50%\" stopColor=\"#1e2430\" />\n <stop offset=\"100%\" stopColor=\"#111622\" />\n </linearGradient>\n\n <linearGradient id={`${idPrefix}_headGradient`} x1=\"0\" y1=\"0\" x2=\"0\" y2=\"1\">\n <stop offset=\"0%\" stopColor=\"#2d3748\" />\n <stop offset=\"60%\" stopColor=\"#1e2430\" />\n <stop offset=\"100%\" stopColor=\"#111622\" />\n </linearGradient>\n\n <linearGradient id={`${idPrefix}_deskGradient`} x1=\"0\" y1=\"0\" x2=\"0\" y2=\"1\">\n <stop offset=\"0%\" stopColor=\"#2b3443\" />\n <stop offset=\"100%\" stopColor=\"#181d26\" />\n </linearGradient>\n\n <linearGradient id={`${idPrefix}_floorGradient`} x1=\"0\" y1=\"0\" x2=\"0\" y2=\"1\">\n <stop offset=\"0%\" stopColor={themeStyle.tile} />\n <stop offset=\"100%\" stopColor={themeStyle.base} />\n </linearGradient>\n </defs>\n\n {/* 1. FLOOR THEME ISOMETRIC ENVIRONMENT */}\n {showFloor && (\n <g transform=\"translate(0, 50)\">\n {/* Ambient Radial Spotlight */}\n <circle cx=\"0\" cy=\"-30\" r=\"140\" fill={`url(#${idPrefix}_ambientGlow)`} />\n\n {/* Floor Cast Shadow */}\n <ellipse cx=\"0\" cy=\"18\" rx=\"145\" ry=\"46\" fill=\"#000000\" opacity=\"0.55\" />\n\n {/* Isometric Floor Rhombus */}\n <polygon\n points=\"0,-68 150,0 0,68 -150,0\"\n fill={`url(#${idPrefix}_floorGradient)`}\n stroke={themeStyle.grid}\n strokeWidth=\"1.8\"\n />\n\n {/* Floor Bevel Extrusion Rim */}\n <polygon points=\"-150,0 0,68 0,76 -150,8\" fill=\"#090a0f\" opacity=\"0.6\" />\n <polygon points=\"150,0 0,68 0,76 150,8\" fill=\"#050608\" opacity=\"0.8\" />\n\n {/* Floor Gridlines */}\n <g stroke={themeStyle.grid} strokeWidth=\"1\" opacity=\"0.45\">\n <line x1=\"-75\" y1=\"-34\" x2=\"75\" y2=\"34\" />\n <line x1=\"-112\" y1=\"-17\" x2=\"38\" y2=\"51\" />\n <line x1=\"-38\" y1=\"-51\" x2=\"112\" y2=\"17\" />\n <line x1=\"75\" y1=\"-34\" x2=\"-75\" y2=\"34\" />\n <line x1=\"112\" y1=\"-17\" x2=\"-38\" y2=\"51\" />\n <line x1=\"38\" y1=\"-51\" x2=\"-112\" y2=\"17\" />\n </g>\n\n {/* Neon Corner Brackets */}\n <g stroke={themeStyle.glow} strokeWidth=\"2\" fill=\"none\">\n <path d=\"M -130,-4 L -145,0 L -130,4\" />\n <path d=\"M 130,-4 L 145,0 L 130,4\" />\n </g>\n </g>\n )}\n\n {/* 2. DYNAMIC AURA & ATMOSPHERE EFFECTS LAYER (Behind Character) */}\n {auraArch !== \"none\" && (\n <g transform=\"translate(0, -42)\">\n <g ref={auraRef}>\n <g ref={auraParticlesRef} />\n </g>\n </g>\n )}\n\n {/* 3. AGENT BODY & HEAD (Positioned behind desk) */}\n <g id=\"agent-root\" transform=\"translate(0, -50)\">\n <g ref={bodyGRef}>\n {/* Distinct Staff Torso & Uniform Silhouette */}\n <RenderStaffTorso\n archetype={skinArch}\n color={skinColor}\n secondaryColor={skinSecColor}\n accentColor={skinAccColor}\n idPrefix={idPrefix}\n trimColor={trimColor}\n />\n\n {/* Distinct Staff Arms with Archetype Sleeves */}\n <RenderStaffArms\n archetype={skinArch}\n color={skinColor}\n armLRef={armLRef}\n armRRef={armRRef}\n />\n\n {/* Comm Pods */}\n <circle cx=\"-27\" cy=\"-56\" r=\"8\" fill={skinColor} />\n <circle cx=\"27\" cy=\"-56\" r=\"8\" fill={skinColor} />\n\n {/* Helmet Sphere */}\n <ellipse\n cx=\"0\"\n cy=\"-56\"\n rx=\"26\"\n ry=\"24\"\n fill={`url(#${idPrefix}_headGradient)`}\n stroke={skinColor}\n strokeWidth=\"2.2\"\n />\n\n {/* Visor Cavity */}\n <ellipse cx=\"0\" cy=\"-53\" rx=\"20\" ry=\"15.5\" fill=\"#0f141c\" />\n\n {/* Custom 50 Curated Skin Accessories */}\n <RenderSkinAccessories\n variant={skinVariant}\n archetype={skinArch}\n color={skinColor}\n secondaryColor={skinSecColor}\n accentColor={skinAccColor}\n />\n\n {/* CRT Visor Eyes */}\n {mode === \"happy\" ? (\n <g stroke={skinColor} strokeWidth=\"2.2\" fill=\"none\">\n <path d=\"M -12.6 -55 A 4.6 4.6 0 0 1 -3.4 -55\" />\n <path d=\"M 3.4 -55 A 4.6 4.6 0 0 1 12.6 -55\" />\n </g>\n ) : mode === \"sleeping\" ? (\n <g stroke={skinColor} strokeWidth=\"2.2\" fill=\"none\">\n <path d=\"M -12.6 -57 A 4.6 4.6 0 0 0 -3.4 -57\" />\n <path d=\"M 3.4 -57 A 4.6 4.6 0 0 0 12.6 -57\" />\n </g>\n ) : mode === \"error\" ? (\n <g stroke={skinColor} strokeWidth=\"2.2\">\n <line x1=\"-12\" y1=\"-61\" x2=\"-4\" y2=\"-53\" />\n <line x1=\"-4\" y1=\"-61\" x2=\"-12\" y2=\"-53\" />\n <line x1=\"4\" y1=\"-61\" x2=\"12\" y2=\"-53\" />\n <line x1=\"12\" y1=\"-61\" x2=\"4\" y2=\"-53\" />\n </g>\n ) : mode === \"looping\" ? (\n <g stroke={skinColor} strokeWidth=\"1.6\" fill=\"none\">\n <circle cx=\"-8\" cy=\"-57\" r=\"4.2\" />\n <circle cx=\"-8\" cy=\"-57\" r=\"2.0\" />\n <circle cx=\"8\" cy=\"-57\" r=\"4.2\" />\n <circle cx=\"8\" cy=\"-57\" r=\"2.0\" />\n </g>\n ) : (\n <g>\n <ellipse ref={eyeLRef} cx=\"-8\" cy=\"-57\" rx=\"4.8\" ry=\"4.4\" fill={skinColor} />\n <ellipse ref={eyeRRef} cx=\"8\" cy=\"-57\" rx=\"4.8\" ry=\"4.4\" fill={skinColor} />\n </g>\n )}\n\n {/* Mouth */}\n {mode === \"happy\" ? (\n <path d=\"M -6 -48 A 6 6 0 0 0 6 -48\" stroke={skinColor} strokeWidth=\"2.2\" fill=\"none\" />\n ) : mode === \"sleeping\" ? (\n <circle cx=\"0\" cy=\"-45\" r=\"1.8\" fill=\"none\" stroke={skinColor} strokeWidth=\"1.6\" />\n ) : mode === \"error\" ? (\n <path d=\"M -7 -45 L -3.5 -48 L 0 -45 L 3.5 -48 L 7 -45\" stroke={skinColor} strokeWidth=\"2\" fill=\"none\" />\n ) : mode === \"looping\" ? (\n <circle cx=\"0\" cy=\"-46\" r=\"3.2\" fill=\"none\" stroke={skinColor} strokeWidth=\"2\" />\n ) : (\n <ellipse ref={mouthRef} cx=\"0\" cy=\"-46\" rx={5 + intensity * 3} ry={2.4 + intensity * 1.2} fill={skinColor} />\n )}\n\n {/* Particle Effects Group (Z's or Smoke) */}\n <g ref={fxGroupRef} />\n </g>\n </g>\n\n {/* 4. WORKSTATION DESK & PROPS (In front of Character) */}\n {showDesk && (\n <g id=\"desk-root\" transform=\"translate(0, 0)\">\n {/* Ground Contact Shadow */}\n <ellipse cx=\"0\" cy=\"65\" rx=\"110\" ry=\"14\" fill=\"#000000\" opacity=\"0.4\" />\n\n {/* Desk Surface & Base */}\n <rect x=\"-105\" y=\"0\" width=\"210\" height=\"120\" rx=\"10\" fill={`url(#${idPrefix}_deskGradient)`} stroke=\"#475569\" strokeWidth=\"1.5\" />\n\n {/* Desk Lip Highlight */}\n <rect x=\"-105\" y=\"0\" width=\"210\" height=\"4\" fill=\"#ffffff\" opacity=\"0.15\" />\n\n {/* Latency / Elapsed Progress Bar */}\n <rect x=\"-85\" y=\"106\" width=\"170\" height=\"6\" rx=\"3\" fill=\"#0f141c\" />\n <rect\n x=\"-85\"\n y=\"106\"\n width={170 * (0.3 + intensity * 0.7)}\n height=\"6\"\n rx=\"3\"\n fill={mode === \"error\" ? \"#f43f5e\" : intensity > 0.8 ? \"#f59e0b\" : \"#10b981\"}\n />\n\n {/* Center Monitor Screen */}\n <rect x=\"-45\" y=\"-45\" width=\"90\" height=\"48\" rx=\"4\" fill=\"#0b0e13\" />\n <rect\n x=\"-42\"\n y=\"-42\"\n width=\"84\"\n height=\"42\"\n rx=\"3\"\n fill={mode === \"error\" ? \"rgba(244,63,94,0.3)\" : \"rgba(0,240,255,0.25)\"}\n />\n\n {/* CRT Active Scanline Beam */}\n <line\n ref={monitorScanlineRef}\n x1=\"-42\"\n y1=\"-42\"\n x2=\"42\"\n y2=\"-42\"\n stroke={mode === \"error\" ? \"#f43f5e\" : \"#00f0ff\"}\n strokeWidth=\"1.6\"\n opacity=\"0.65\"\n />\n\n {/* Screen Code Lines */}\n <g fill=\"#ffffff\" opacity=\"0.5\">\n <rect x=\"-38\" y=\"-38\" width=\"24\" height=\"3\" rx=\"1\" />\n <rect x=\"-38\" y=\"-29\" width=\"42\" height=\"3\" rx=\"1\" />\n <rect x=\"-38\" y=\"-20\" width=\"30\" height=\"3\" rx=\"1\" />\n <rect x=\"-38\" y=\"-11\" width=\"36\" height=\"3\" rx=\"1\" />\n </g>\n\n {/* Monitor Client Badge */}\n <rect x=\"-42\" y=\"-42\" width=\"28\" height=\"12\" rx=\"2\" fill={clientType === \"app\" ? \"#3b0764\" : \"#064e3b\"} />\n <text x=\"-38\" y=\"-33\" fontFamily=\"monospace\" fontSize=\"8\" fontWeight=\"bold\" fill={clientType === \"app\" ? \"#d8b4fe\" : \"#6ee7b7\"}>\n {clientType.toUpperCase()}\n </text>\n\n {/* ----------------- EQUIPPED PROPS (7 DISTINCT ARCHETYPES) ----------------- */}\n\n {/* 1. SUPERCOMPUTER / SERVER TOWER */}\n {(hasProp(\"supercomputer\") || hasProp(\"server\") || hasProp(\"tower\") || (resolvedProps.length === 0 && hasProp(\"prop_1\"))) && (() => {\n const p = getProp(\"supercomputer\") || { color: \"#00f0ff\", secondaryColor: \"#003b46\" };\n return (\n <g id=\"prop-supercomputer\" transform=\"translate(-98, -26)\">\n <rect x=\"0\" y=\"0\" width=\"16\" height=\"42\" rx=\"3\" fill=\"#121824\" stroke={p.color} strokeWidth=\"1.2\" />\n {/* Drive bays */}\n <line x1=\"3\" y1=\"8\" x2=\"13\" y2=\"8\" stroke=\"#334155\" strokeWidth=\"1.5\" />\n <line x1=\"3\" y1=\"14\" x2=\"13\" y2=\"14\" stroke=\"#334155\" strokeWidth=\"1.5\" />\n <line x1=\"3\" y1=\"20\" x2=\"13\" y2=\"20\" stroke=\"#334155\" strokeWidth=\"1.5\" />\n {/* Blinking LEDs */}\n {[0, 1, 2, 3].map((idx) => (\n <circle\n key={`server-led-${idx}`}\n ref={(el) => (serverLedsRef.current[idx] = el)}\n cx=\"5\"\n cy={26 + idx * 4}\n r=\"1.4\"\n fill={p.color}\n />\n ))}\n {/* Ventilation Grill */}\n <line x1=\"9\" y1=\"26\" x2=\"13\" y2=\"26\" stroke={p.color} strokeWidth=\"0.8\" opacity=\"0.6\" />\n <line x1=\"9\" y1=\"30\" x2=\"13\" y2=\"30\" stroke={p.color} strokeWidth=\"0.8\" opacity=\"0.6\" />\n <line x1=\"9\" y1=\"34\" x2=\"13\" y2=\"34\" stroke={p.color} strokeWidth=\"0.8\" opacity=\"0.6\" />\n <line x1=\"9\" y1=\"38\" x2=\"13\" y2=\"38\" stroke={p.color} strokeWidth=\"0.8\" opacity=\"0.6\" />\n </g>\n );\n })()}\n\n {/* 2. ESPRESSO STATION */}\n {(hasProp(\"espresso_station\") || hasProp(\"espresso\") || hasProp(\"coffee\") || (resolvedProps.length === 0)) && (() => {\n const p = getProp(\"espresso_station\") || { color: \"#e2e8f0\", secondaryColor: \"#1e293b\" };\n return (\n <g id=\"prop-espresso\">\n {/* Steaming Coffee Cup */}\n <rect x=\"-80\" y=\"10\" width=\"14\" height=\"16\" rx=\"2\" fill={p.color || \"#e2e8f0\"} stroke=\"#475569\" strokeWidth=\"1\" />\n <path d=\"M -66 14 C -62 14, -62 22, -66 22\" stroke={p.color || \"#e2e8f0\"} strokeWidth=\"2\" fill=\"none\" />\n <g ref={steamRef} />\n {/* Machine Body (if explicitly an espresso station) */}\n {(hasProp(\"espresso_station\") || hasProp(\"espresso\")) && (\n <g transform=\"translate(-84, -14)\">\n <rect x=\"0\" y=\"0\" width=\"18\" height=\"24\" rx=\"2\" fill=\"#1e293b\" stroke={p.color} strokeWidth=\"1\" />\n <circle cx=\"9\" cy=\"8\" r=\"4\" fill=\"#0f172a\" stroke={p.color} strokeWidth=\"0.8\" />\n <line x1=\"9\" y1=\"8\" x2=\"11\" y2=\"6\" stroke=\"#ef4444\" strokeWidth=\"0.8\" />\n <rect x=\"6\" y=\"14\" width=\"6\" height=\"3\" fill=\"#64748b\" />\n </g>\n )}\n </g>\n );\n })()}\n\n {/* 3. ARCADE CABINET */}\n {(hasProp(\"arcade_cabinet\") || hasProp(\"arcade\")) && (() => {\n const p = getProp(\"arcade_cabinet\") || { color: \"#f43f5e\", secondaryColor: \"#881337\" };\n return (\n <g id=\"prop-arcade\" transform=\"translate(-96, -24)\">\n {/* Cabinet Body */}\n <polygon points=\"0,42 0,6 4,0 16,0 18,6 18,42\" fill=\"#18181b\" stroke={p.color} strokeWidth=\"1.2\" />\n {/* Marquee Banner */}\n <rect x=\"3\" y=\"2\" width=\"12\" height=\"6\" rx=\"1\" fill={p.color} />\n <text x=\"9\" y=\"7\" fill=\"#ffffff\" fontSize=\"4\" fontWeight=\"bold\" textAnchor=\"middle\" fontFamily=\"monospace\">PLAY</text>\n {/* Screen Bezel & Screen */}\n <polygon points=\"2,11 16,11 15,24 3,24\" fill=\"#09090b\" stroke=\"#27272a\" strokeWidth=\"0.8\" />\n <polygon points=\"3,12 15,12 14,23 4,23\" fill={p.secondaryColor || \"#09090b\"} />\n {/* 8-bit Pixel Sprite on Screen */}\n <rect x=\"7\" y=\"15\" width=\"4\" height=\"4\" fill={p.color} />\n {/* Control Panel: Joystick & Buttons */}\n <polygon points=\"2,25 16,25 17,31 1,31\" fill=\"#27272a\" stroke={p.color} strokeWidth=\"0.8\" />\n <circle cx=\"5\" cy=\"27.5\" r=\"1.6\" fill=\"#ef4444\" />\n <line x1=\"5\" y1=\"27.5\" x2=\"5\" y2=\"30\" stroke=\"#ffffff\" strokeWidth=\"0.8\" />\n <circle cx=\"11\" cy=\"28\" r=\"1.2\" fill={p.color} />\n <circle cx=\"14\" cy=\"27\" r=\"1.2\" fill=\"#eab308\" />\n {/* Coin Door */}\n <rect x=\"6\" y=\"34\" width=\"6\" height=\"6\" rx=\"1\" fill=\"#09090b\" stroke=\"#3f3f46\" strokeWidth=\"0.6\" />\n <rect x=\"8.5\" y=\"35\" width=\"1\" height=\"3\" fill=\"#eab308\" />\n </g>\n );\n })()}\n\n {/* 4. TERRARIUM BONSAI */}\n {(hasProp(\"terrarium_bonsai\") || hasProp(\"bonsai\") || hasProp(\"plant\")) && (() => {\n const p = getProp(\"terrarium_bonsai\") || { color: \"#10b981\", secondaryColor: \"#064e3b\" };\n return (\n <g id=\"prop-bonsai\" transform=\"translate(-84, 4)\">\n {/* Hexagonal Ceramic Planter */}\n <polygon points=\"2,14 16,14 14,20 4,20\" fill=\"#78350f\" stroke=\"#b45309\" strokeWidth=\"1\" />\n {/* Gnarled Bonsai Trunk */}\n <path d=\"M 9 14 Q 8 8 5 5 Q 12 2 10 -4\" stroke=\"#92400e\" strokeWidth=\"2.4\" fill=\"none\" strokeLinecap=\"round\" />\n {/* Glowing Foliage / Sakura Clouds */}\n <ellipse cx=\"5\" cy=\"2\" rx=\"6.5\" ry=\"4\" fill={p.color} opacity=\"0.9\" />\n <ellipse cx=\"12\" cy=\"-2\" rx=\"6\" ry=\"3.8\" fill={p.color} opacity=\"0.95\" />\n <ellipse cx=\"8\" cy=\"6\" rx=\"4.5\" ry=\"3\" fill={p.secondaryColor || \"#059669\"} opacity=\"0.85\" />\n <circle cx=\"5\" cy=\"2\" r=\"1.2\" fill=\"#ffffff\" />\n <circle cx=\"12\" cy=\"-2\" r=\"1.2\" fill=\"#ffffff\" />\n </g>\n );\n })()}\n\n {/* 5. DUAL MONITOR */}\n {(hasProp(\"dual_monitor\") || hasProp(\"monitor\") || hasProp(\"screen\")) && (() => {\n const p = getProp(\"dual_monitor\") || { color: \"#06b6d4\", secondaryColor: \"#083344\" };\n return (\n <g id=\"prop-dual-monitor\" transform=\"translate(50, -36)\">\n {/* Articulated Gas-Spring Mount Arm */}\n <line x1=\"22\" y1=\"28\" x2=\"22\" y2=\"46\" stroke=\"#475569\" strokeWidth=\"2.4\" />\n <ellipse cx=\"22\" cy=\"46\" rx=\"7\" ry=\"2.5\" fill=\"#334155\" />\n {/* Secondary Angled Screen */}\n <rect x=\"2\" y=\"0\" width=\"40\" height=\"30\" rx=\"3\" fill=\"#090d16\" stroke={p.color} strokeWidth=\"1.2\" />\n {/* Screen Content: Mini Syntax Code Lines & Status Bar */}\n <rect x=\"5\" y=\"4\" width=\"22\" height=\"2\" rx=\"0.5\" fill={p.color} opacity=\"0.8\" />\n <rect x=\"5\" y=\"8\" width=\"16\" height=\"2\" rx=\"0.5\" fill=\"#ffffff\" opacity=\"0.5\" />\n <rect x=\"5\" y=\"12\" width=\"28\" height=\"2\" rx=\"0.5\" fill=\"#ffffff\" opacity=\"0.4\" />\n <rect x=\"5\" y=\"16\" width=\"20\" height=\"2\" rx=\"0.5\" fill={p.color} opacity=\"0.7\" />\n {/* Telemetry Bar Chart on Right */}\n <rect x=\"30\" y=\"20\" width=\"2\" height=\"6\" fill=\"#10b981\" />\n <rect x=\"33\" y=\"16\" width=\"2\" height=\"10\" fill={p.color} />\n <rect x=\"36\" y=\"12\" width=\"2\" height=\"14\" fill=\"#f59e0b\" />\n </g>\n );\n })()}\n\n {/* 6. HOLOGRAM EMITTER */}\n {(hasProp(\"hologram_emitter\") || hasProp(\"holo\") || hasProp(\"cube\")) && (() => {\n const p = getProp(\"hologram_emitter\") || { color: skinColor, secondaryColor: \"#1e1b4b\" };\n return (\n <g id=\"prop-hologram\">\n {/* Hexagonal Emitter Pad */}\n <ellipse cx=\"65\" cy=\"14\" rx=\"14\" ry=\"5\" fill=\"#1e293b\" stroke={p.color} strokeWidth=\"1.2\" />\n <ellipse cx=\"65\" cy=\"13\" rx=\"9\" ry=\"3\" fill=\"#0f172a\" stroke={p.color} strokeWidth=\"0.8\" />\n {/* Upward Volumetric Hologram Cone */}\n <polygon points=\"65,13 46,-16 84,-16\" fill={p.color} opacity=\"0.16\" />\n <line x1=\"46\" y1=\"-16\" x2=\"84\" y2=\"-16\" stroke={p.color} strokeWidth=\"1\" opacity=\"0.4\" strokeDasharray=\"2 2\" />\n {/* Floating Rotating Hologram Core */}\n <g ref={holoCubeRef}>\n <rect x=\"-10\" y=\"-10\" width=\"20\" height=\"20\" fill=\"none\" stroke={p.color} strokeWidth=\"1.4\" opacity=\"0.9\" />\n <line x1=\"-10\" y1=\"-10\" x2=\"10\" y2=\"10\" stroke={p.color} strokeWidth=\"0.8\" opacity=\"0.5\" />\n <circle cx=\"0\" cy=\"0\" r=\"2.5\" fill={p.color} />\n </g>\n </g>\n );\n })()}\n\n {/* 7. LAB OSCILLOSCOPE */}\n {(hasProp(\"lab_oscilloscope\") || hasProp(\"osc\") || hasProp(\"scope\") || hasProp(\"wave\")) && (() => {\n const p = getProp(\"lab_oscilloscope\") || { color: \"#10b981\", secondaryColor: \"#064e3b\" };\n return (\n <g id=\"prop-oscilloscope\" transform=\"translate(56, 8)\">\n {/* Instrument Enclosure */}\n <rect x=\"0\" y=\"0\" width=\"34\" height=\"24\" rx=\"3\" fill=\"#111827\" stroke=\"#374151\" strokeWidth=\"1.2\" />\n {/* Phosphor CRT Display */}\n <rect x=\"3\" y=\"3\" width=\"20\" height=\"18\" rx=\"2\" fill=\"#051b14\" stroke={p.color} strokeWidth=\"0.8\" />\n {/* Screen Grid Reticle */}\n <line x1=\"13\" y1=\"3\" x2=\"13\" y2=\"21\" stroke={p.color} strokeWidth=\"0.4\" opacity=\"0.4\" strokeDasharray=\"1 1\" />\n <line x1=\"3\" y1=\"12\" x2=\"23\" y2=\"12\" stroke={p.color} strokeWidth=\"0.4\" opacity=\"0.4\" strokeDasharray=\"1 1\" />\n {/* Live Animated Waveform */}\n <path ref={oscWaveRef} d=\"M 4 12 L 22 12\" stroke={p.color} strokeWidth=\"1.4\" fill=\"none\" />\n {/* Control Knobs & BNC Jacks */}\n <circle cx=\"28\" cy=\"7\" r=\"2.4\" fill=\"#374151\" stroke=\"#9ca3af\" strokeWidth=\"0.6\" />\n <circle cx=\"28\" cy=\"14\" r=\"2.4\" fill=\"#374151\" stroke=\"#9ca3af\" strokeWidth=\"0.6\" />\n <circle cx=\"28\" cy=\"19.5\" r=\"1.5\" fill={p.color} />\n </g>\n );\n })()}\n\n {/* Mechanical Keyboard */}\n <g id=\"prop-keyboard\">\n <rect x=\"15\" y=\"27\" width=\"34\" height=\"8\" rx=\"2\" fill=\"#232a35\" stroke=\"#3b4554\" strokeWidth=\"1\" />\n </g>\n\n {/* ----------------- COMPANION PET ----------------- */}\n {petArch !== \"none\" && (\n <g ref={petGRef} id=\"companion-pet\">\n {petArch === \"hover_drone\" ? (\n <g>\n <ellipse cx=\"0\" cy=\"0\" rx=\"14\" ry=\"8\" fill=\"#0f172a\" stroke={petColor} strokeWidth=\"1.5\" />\n <ellipse cx=\"0\" cy=\"-6\" rx=\"16\" ry=\"3\" fill=\"none\" stroke=\"#ffffff\" strokeWidth=\"1\" />\n <circle cx=\"0\" cy=\"0\" r=\"2.5\" fill={petColor} />\n </g>\n ) : (\n <g>\n <rect x=\"-10\" y=\"-14\" width=\"20\" height=\"16\" rx=\"5\" fill=\"#1e293b\" stroke={petColor} strokeWidth=\"1.4\" />\n {/* Ears */}\n <polygon points=\"-8,-14 -4,-20 -1,-14\" fill={petColor} />\n <polygon points=\"1,-14 4,-20 8,-14\" fill={petColor} />\n {/* Eyes */}\n <circle cx=\"-4\" cy=\"-8\" r=\"1.5\" fill=\"#ffffff\" />\n <circle cx=\"4\" cy=\"-8\" r=\"1.5\" fill=\"#ffffff\" />\n </g>\n )}\n </g>\n )}\n </g>\n )}\n </svg>\n </div>\n );\n}\nexport default LiveReactAgent;\n","\"use client\";\n\nimport React, { useState, useEffect, useMemo } from \"react\";\nimport {\n Sparkles,\n Bot,\n Play,\n Pause,\n Shuffle,\n RotateCcw,\n Check,\n Palette,\n Laptop,\n Layers,\n Sliders,\n Tv,\n Eye,\n ShieldCheck,\n Search,\n Filter,\n CheckCircle2,\n Lock,\n} from \"lucide-react\";\nimport {\n COSMETIC_CATALOG,\n getSupporterState,\n equipCustomLoadout,\n SUPPORTER_CHANGE_EVENT,\n} from \"@/lib/supporterStore\";\nimport { LiveReactAgent } from \"./LiveReactAgent\";\n\n\n\nexport default function LiveFittingRoom({ initialStoreState, onEquipSuccess }) {\n const [storeState, setStoreState] = useState(initialStoreState || getSupporterState());\n\n // Loadout state (working copy in fitting room before applying)\n const [activeSkinId, setActiveSkinId] = useState(storeState.equippedSkin || \"skin_0\");\n const [activePetId, setActivePetId] = useState(storeState.equippedPet || \"pet_0\");\n const [activeProps, setActiveProps] = useState(storeState.equippedProps || [\"prop_0\"]);\n const [activeAuraId, setActiveAuraId] = useState(storeState.equippedAura || \"aura_0\");\n const [activeThemeId, setActiveThemeId] = useState(storeState.equippedOfficeTheme || \"theme_default\");\n\n // Animation & Stage controls\n const [currentMode, setCurrentMode] = useState(\"streaming\"); // 'streaming' | 'happy' | 'sleeping' | 'error' | 'looping' | 'pending'\n const [intensity, setIntensity] = useState(0.75);\n const [clientType, setClientType] = useState(\"cli\"); // 'cli' | 'app'\n const [isPlaying, setIsPlaying] = useState(true);\n\n // Mixer Category Tabs: 'skins' | 'props' | 'pets' | 'auras' | 'themes'\n const [mixerTab, setMixerTab] = useState(\"skins\");\n const [searchQuery, setSearchQuery] = useState(\"\");\n const [archetypeFilter, setArchetypeFilter] = useState(\"all\");\n const [saveToast, setSaveToast] = useState(false);\n\n const [telemetry, setTelemetry] = useState({ bob: 0, shake: 0, rotL: 0, rotR: 0, blink: false, fps: 60 });\n\n // Sync with store state changes\n useEffect(() => {\n const handleStoreChange = (e) => {\n const next = e.detail || getSupporterState();\n setStoreState(next);\n };\n window.addEventListener(SUPPORTER_CHANGE_EVENT, handleStoreChange);\n return () => window.removeEventListener(SUPPORTER_CHANGE_EVENT, handleStoreChange);\n }, []);\n\n // Lookups for currently active item metadata\n const currentSkinItem = useMemo(() => {\n return (COSMETIC_CATALOG.skins || []).find((s) => s.id === activeSkinId) || (COSMETIC_CATALOG.skins || [])[0];\n }, [activeSkinId]);\n\n const currentPetItem = useMemo(() => {\n return (COSMETIC_CATALOG.pets || []).find((p) => p.id === activePetId) || (COSMETIC_CATALOG.pets || [])[0];\n }, [activePetId]);\n\n const currentAuraItem = useMemo(() => {\n return (COSMETIC_CATALOG.auras || []).find((a) => a.id === activeAuraId) || (COSMETIC_CATALOG.auras || [])[0];\n }, [activeAuraId]);\n\n const currentThemeItem = useMemo(() => {\n return (COSMETIC_CATALOG.officeThemes || []).find((t) => t.id === activeThemeId) || (COSMETIC_CATALOG.officeThemes || [])[0];\n }, [activeThemeId]);\n\n\n\n // --------------------------------------------------------------------------\n // ACTIONS: RANDOMIZE, RESET, APPLY LOADOUT\n // --------------------------------------------------------------------------\n\n // Apply complete loadout to localStorage & Virtual Office\n const handleApplyLoadout = () => {\n const updated = equipCustomLoadout({\n equippedSkin: activeSkinId,\n equippedPet: activePetId,\n equippedProps: activeProps,\n equippedAura: activeAuraId,\n equippedOfficeTheme: activeThemeId,\n });\n setStoreState(updated);\n setSaveToast(true);\n setTimeout(() => setSaveToast(false), 3000);\n if (onEquipSuccess) onEquipSuccess(updated);\n };\n\n // Randomize loadout from unlocked or catalog items\n const handleRandomize = () => {\n const skins = COSMETIC_CATALOG.skins || [];\n const pets = COSMETIC_CATALOG.pets || [];\n const auras = COSMETIC_CATALOG.auras || [];\n const themes = COSMETIC_CATALOG.officeThemes || [];\n const props = COSMETIC_CATALOG.props || [];\n\n if (skins.length) {\n const randSkin = skins[Math.floor(Math.random() * skins.length)].id;\n setActiveSkinId(randSkin);\n }\n if (pets.length) {\n const randPet = pets[Math.floor(Math.random() * pets.length)].id;\n setActivePetId(randPet);\n }\n if (auras.length) {\n const randAura = auras[Math.floor(Math.random() * auras.length)].id;\n setActiveAuraId(randAura);\n }\n if (themes.length) {\n const randTheme = themes[Math.floor(Math.random() * themes.length)].id;\n setActiveThemeId(randTheme);\n }\n if (props.length) {\n const shuffled = [...props].sort(() => 0.5 - Math.random());\n setActiveProps(shuffled.slice(0, 3).map((p) => p.id));\n }\n };\n\n // Revert back to currently equipped state\n const handleReset = () => {\n setActiveSkinId(storeState.equippedSkin || \"skin_0\");\n setActivePetId(storeState.equippedPet || \"pet_0\");\n setActiveProps(storeState.equippedProps || [\"prop_0\"]);\n setActiveAuraId(storeState.equippedAura || \"aura_0\");\n setActiveThemeId(storeState.equippedOfficeTheme || \"theme_default\");\n };\n\n // Toggle prop selection\n const handleTogglePropItem = (propId) => {\n setActiveProps((prev) => {\n if (prev.includes(propId)) {\n return prev.filter((id) => id !== propId);\n }\n return [...prev, propId];\n });\n };\n\n // Filter items in the mixer drawer\n const filteredMixerItems = useMemo(() => {\n let list = [];\n if (mixerTab === \"skins\") list = COSMETIC_CATALOG.skins || [];\n else if (mixerTab === \"props\") list = COSMETIC_CATALOG.props || [];\n else if (mixerTab === \"pets\") list = COSMETIC_CATALOG.pets || [];\n else if (mixerTab === \"auras\") list = COSMETIC_CATALOG.auras || [];\n else if (mixerTab === \"themes\") list = COSMETIC_CATALOG.officeThemes || [];\n\n return list.filter((item) => {\n if (archetypeFilter !== \"all\" && item.archetype !== archetypeFilter) return false;\n if (!searchQuery.trim()) return true;\n const q = searchQuery.toLowerCase();\n return (\n item.name?.toLowerCase().includes(q) ||\n item.description?.toLowerCase().includes(q) ||\n item.archetype?.toLowerCase().includes(q) ||\n item.id?.toLowerCase().includes(q)\n );\n });\n }, [mixerTab, searchQuery, archetypeFilter]);\n\n return (\n <div className=\"space-y-4\">\n {/* Top Banner / Header Bar */}\n <div className=\"flex flex-wrap items-center justify-between gap-4 p-4 rounded-xl bg-gradient-to-r from-[#171922] via-[#1c1d27] to-[#14151c] border border-[#2b2d3c] shadow-lg\">\n <div className=\"flex items-center gap-3\">\n <div className=\"w-10 h-10 rounded-lg bg-gradient-to-br from-cyan-500 to-blue-600 flex items-center justify-center shadow-[0_0_15px_rgba(6,182,212,0.4)]\">\n <Sparkles className=\"w-5 h-5 text-white\" />\n </div>\n <div>\n <div className=\"flex items-center gap-2\">\n <h2 className=\"text-lg font-bold text-white tracking-tight\">Live Fitting Room & Sandbox</h2>\n <span className=\"font-mono text-[10px] px-2 py-0.5 rounded-full bg-cyan-500/20 text-cyan-300 border border-cyan-500/40 font-bold uppercase tracking-wider\">\n Interactive 3D Engine\n </span>\n </div>\n <p className=\"text-xs text-slate-400\">\n Mix and match 148 skins, desk props, cyber pets, auras, and floor themes with live animated actions.\n </p>\n </div>\n </div>\n\n {/* Global Action Buttons */}\n <div className=\"flex items-center gap-2\">\n <button\n onClick={handleRandomize}\n className=\"flex items-center gap-1.5 px-3 py-1.5 rounded-lg bg-[#242632] hover:bg-[#2e3142] border border-[#3b3e52] text-xs font-semibold text-slate-200 transition-all shadow-sm\"\n title=\"Randomize a creative mix\"\n >\n <Shuffle className=\"w-3.5 h-3.5 text-amber-400\" />\n <span>Randomize</span>\n </button>\n <button\n onClick={handleReset}\n className=\"flex items-center gap-1.5 px-3 py-1.5 rounded-lg bg-[#242632] hover:bg-[#2e3142] border border-[#3b3e52] text-xs font-semibold text-slate-200 transition-all shadow-sm\"\n title=\"Revert to currently equipped loadout\"\n >\n <RotateCcw className=\"w-3.5 h-3.5 text-slate-400\" />\n <span>Reset</span>\n </button>\n <button\n onClick={handleApplyLoadout}\n className=\"flex items-center gap-2 px-4 py-1.5 rounded-lg bg-gradient-to-r from-cyan-600 to-blue-600 hover:from-cyan-500 hover:to-blue-500 text-white text-xs font-bold transition-all shadow-[0_0_15px_rgba(6,182,212,0.4)]\"\n >\n <CheckCircle2 className=\"w-4 h-4\" />\n <span>Apply to Virtual Office</span>\n </button>\n </div>\n </div>\n\n {/* Save Toast Notification */}\n {saveToast && (\n <div className=\"p-3 rounded-lg bg-emerald-950/80 border border-emerald-500/50 text-emerald-300 text-xs font-semibold flex items-center justify-between shadow-lg\">\n <div className=\"flex items-center gap-2\">\n <Check className=\"w-4 h-4 text-emerald-400\" />\n <span>Custom loadout successfully saved and synchronized with your Virtual Office canvas!</span>\n </div>\n <span className=\"font-mono text-[10px] text-emerald-400 font-bold uppercase\">EQUIPPED LIVE</span>\n </div>\n )}\n\n {/* Main Two-Column Layout */}\n <div className=\"grid grid-cols-1 lg:grid-cols-12 gap-5\">\n {/* ==================== LEFT COLUMN: LIVE STAGE & CONTROLLER ==================== */}\n <div className=\"lg:col-span-6 space-y-4\">\n <div className=\"p-4 rounded-xl bg-[#17171e] border border-[#2b2b36] shadow-xl space-y-3\">\n {/* Stage Header */}\n <div className=\"flex items-center justify-between text-xs\">\n <div className=\"flex items-center gap-2\">\n <span className=\"w-2 h-2 rounded-full bg-emerald-400 animate-pulse\" />\n <span className=\"font-bold text-white uppercase tracking-wider text-[11px]\">Real-Time Avatar Stage</span>\n </div>\n <div className=\"flex items-center gap-3 font-mono text-[11px] text-slate-400\">\n <span>FPS: <strong className=\"text-emerald-400\">{telemetry.fps}</strong></span>\n <button\n onClick={() => setIsPlaying(!isPlaying)}\n className=\"flex items-center gap-1 text-[11px] text-slate-300 hover:text-white\"\n >\n {isPlaying ? <Pause className=\"w-3 h-3 text-amber-400\" /> : <Play className=\"w-3 h-3 text-emerald-400\" />}\n <span>{isPlaying ? \"Pause\" : \"Play\"}</span>\n </button>\n </div>\n </div>\n\n {/* Live React SVG Agent Viewport */}\n <div className=\"relative rounded-lg overflow-hidden border border-[#2d2d3a] bg-[#0c0d12] flex items-center justify-center shadow-inner h-[380px]\">\n <LiveReactAgent\n skinId={activeSkinId}\n skinItem={currentSkinItem}\n petId={activePetId}\n petItem={currentPetItem}\n propsList={activeProps}\n auraId={activeAuraId}\n auraItem={currentAuraItem}\n themeId={activeThemeId}\n themeItem={currentThemeItem}\n mode={currentMode}\n intensity={intensity}\n clientType={clientType}\n isPlaying={isPlaying}\n interactive={true}\n showFloor={true}\n showDesk={true}\n onTelemetry={setTelemetry}\n className=\"w-full h-full\"\n />\n\n {/* Theme Badge Overlay */}\n <div className=\"absolute top-2.5 left-2.5 px-2.5 py-1 rounded-md bg-black/60 backdrop-blur-md border border-white/10 text-[10px] font-mono text-slate-300 flex items-center gap-1.5 pointer-events-none z-10\">\n <Palette className=\"w-3 h-3 text-cyan-400\" />\n <span>{currentThemeItem?.name || \"Classic Slate\"}</span>\n </div>\n\n {/* Action Mode Overlay */}\n <div className=\"absolute top-2.5 right-2.5 px-2.5 py-1 rounded-md bg-black/60 backdrop-blur-md border border-white/10 text-[10px] font-mono font-bold text-cyan-300 uppercase pointer-events-none z-10\">\n {currentMode}\n </div>\n </div>\n\n {/* Test Actions (Poses) */}\n <div className=\"space-y-1.5\">\n <div className=\"flex items-center justify-between text-[11px] font-semibold text-slate-400\">\n <span>Test Agent Action & State</span>\n <span className=\"font-mono text-cyan-400 text-[10px] uppercase\">{currentMode}</span>\n </div>\n <div className=\"grid grid-cols-3 sm:grid-cols-6 gap-1.5\">\n {[\n { id: \"streaming\", label: \"Streaming\", col: \"hover:border-cyan-500\" },\n { id: \"happy\", label: \"Happy\", col: \"hover:border-emerald-500\" },\n { id: \"sleeping\", label: \"Sleeping\", col: \"hover:border-purple-500\" },\n { id: \"error\", label: \"Error\", col: \"hover:border-rose-500\" },\n { id: \"looping\", label: \"Looping\", col: \"hover:border-amber-500\" },\n { id: \"pending\", label: \"Pending\", col: \"hover:border-sky-500\" },\n ].map((act) => (\n <button\n key={act.id}\n onClick={() => setCurrentMode(act.id)}\n className={`px-2 py-1.5 rounded-md text-[11px] font-semibold transition-all border ${\n currentMode === act.id\n ? \"bg-cyan-500/20 text-cyan-300 border-cyan-500 shadow-sm font-bold\"\n : \"bg-[#202029] text-slate-300 border-[#2f2f3d] hover:bg-[#282834]\"\n }`}\n >\n {act.label}\n </button>\n ))}\n </div>\n </div>\n\n {/* Intensity Slider & Client Toggle */}\n <div className=\"grid grid-cols-1 sm:grid-cols-2 gap-3 pt-1 border-t border-[#262632]\">\n <div className=\"space-y-1\">\n <div className=\"flex items-center justify-between text-[11px] text-slate-400 font-semibold\">\n <span>Work Intensity:</span>\n <span className=\"font-mono text-white text-[10px]\">{Math.round(intensity * 100)}%</span>\n </div>\n <input\n type=\"range\"\n min=\"0\"\n max=\"1\"\n step=\"0.05\"\n value={intensity}\n onChange={(e) => setIntensity(parseFloat(e.target.value))}\n className=\"w-full accent-cyan-400 bg-slate-800 h-1.5 rounded-lg cursor-pointer\"\n />\n </div>\n\n <div className=\"space-y-1\">\n <div className=\"flex items-center justify-between text-[11px] text-slate-400 font-semibold\">\n <span>Client Badge & Trim:</span>\n <span className=\"font-mono text-[10px] uppercase text-purple-300\">{clientType}</span>\n </div>\n <div className=\"grid grid-cols-2 gap-1.5\">\n <button\n onClick={() => setClientType(\"cli\")}\n className={`px-2 py-1 rounded text-[10px] font-bold border transition-all ${\n clientType === \"cli\"\n ? \"bg-emerald-950/80 text-emerald-300 border-emerald-500\"\n : \"bg-[#202029] text-slate-400 border-[#2f2f3d]\"\n }`}\n >\n CLI (Emerald)\n </button>\n <button\n onClick={() => setClientType(\"app\")}\n className={`px-2 py-1 rounded text-[10px] font-bold border transition-all ${\n clientType === \"app\"\n ? \"bg-purple-950/80 text-purple-300 border-purple-500\"\n : \"bg-[#202029] text-slate-400 border-[#2f2f3d]\"\n }`}\n >\n APP (Purple)\n </button>\n </div>\n </div>\n </div>\n\n {/* Active VFX Indicator */}\n <div className=\"flex items-center justify-between px-2.5 py-1.5 rounded-lg bg-[#13141a] border border-[#272836] text-[11px]\">\n <div className=\"flex items-center gap-1.5 text-slate-300\">\n <Sparkles className=\"w-3.5 h-3.5 text-cyan-400\" />\n <span className=\"text-slate-400\">Equipped VFX:</span>\n <span className=\"font-bold text-cyan-300 truncate max-w-[200px]\">{currentAuraItem?.name || \"None\"}</span>\n </div>\n <span className=\"px-1.5 py-0.5 rounded bg-cyan-500/20 text-cyan-300 font-mono font-bold text-[9px] uppercase border border-cyan-500/30\">\n Live 60 FPS VFX\n </span>\n </div>\n\n {/* Live Telemetry Measurements */}\n <div className=\"grid grid-cols-4 gap-2 p-2 rounded-lg bg-[#121217] border border-[#252530] text-[10px] font-mono text-center\">\n <div>\n <span className=\"text-slate-500 block\">BOB (Y)</span>\n <span className=\"text-cyan-400 font-bold\">{telemetry.bob.toFixed(2)}px</span>\n </div>\n <div>\n <span className=\"text-slate-500 block\">SHAKE (X)</span>\n <span className=\"text-rose-400 font-bold\">{telemetry.shake.toFixed(2)}px</span>\n </div>\n <div>\n <span className=\"text-slate-500 block\">ARMS (L/R)</span>\n <span className=\"text-amber-400 font-bold\">{telemetry.rotL.toFixed(2)}</span>\n </div>\n <div>\n <span className=\"text-slate-500 block\">BLINK</span>\n <span className={telemetry.blink ? \"text-cyan-400 font-bold\" : \"text-emerald-400 font-bold\"}>\n {telemetry.blink ? \"CLOSED\" : \"OPEN\"}\n </span>\n </div>\n </div>\n </div>\n </div>\n\n {/* ==================== RIGHT COLUMN: MIX & MATCH LOADOUT ==================== */}\n <div className=\"lg:col-span-6 space-y-4\">\n <div className=\"p-4 rounded-xl bg-[#17171e] border border-[#2b2b36] shadow-xl space-y-4 flex flex-col h-full min-h-[500px]\">\n {/* Mixer Category Navigation Tabs */}\n <div className=\"flex items-center gap-1.5 border-b border-[#2b2b38] pb-2 overflow-x-auto\">\n {[\n { id: \"skins\", label: `Skins (${(COSMETIC_CATALOG.skins || []).length})`, icon: Bot, count: (COSMETIC_CATALOG.skins || []).length },\n { id: \"props\", label: `Props (${(COSMETIC_CATALOG.props || []).length})`, icon: Laptop, count: (COSMETIC_CATALOG.props || []).length },\n { id: \"pets\", label: `Pets (${(COSMETIC_CATALOG.pets || []).length})`, icon: Sparkles, count: (COSMETIC_CATALOG.pets || []).length },\n { id: \"auras\", label: `Auras (${(COSMETIC_CATALOG.auras || []).length})`, icon: Layers, count: (COSMETIC_CATALOG.auras || []).length },\n { id: \"themes\", label: `Themes (${(COSMETIC_CATALOG.officeThemes || []).length})`, icon: Palette, count: (COSMETIC_CATALOG.officeThemes || []).length },\n ].map((tab) => {\n const Icon = tab.icon;\n const active = mixerTab === tab.id;\n return (\n <button\n key={tab.id}\n onClick={() => {\n setMixerTab(tab.id);\n setArchetypeFilter(\"all\");\n }}\n className={`flex items-center gap-1.5 px-3 py-1.5 rounded-lg text-xs font-semibold whitespace-nowrap transition-all ${\n active\n ? \"bg-cyan-500/20 text-cyan-300 border border-cyan-500/50 shadow-sm\"\n : \"text-slate-400 hover:text-white hover:bg-[#22222d]\"\n }`}\n >\n <Icon className=\"w-3.5 h-3.5\" />\n <span>{tab.label}</span>\n </button>\n );\n })}\n </div>\n\n {/* Search & Archetype Filter */}\n <div className=\"flex items-center gap-2\">\n <div className=\"relative flex-1\">\n <Search className=\"w-3.5 h-3.5 absolute left-3 top-1/2 -translate-y-1/2 text-slate-400\" />\n <input\n type=\"text\"\n placeholder={`Search in ${mixerTab}...`}\n value={searchQuery}\n onChange={(e) => setSearchQuery(e.target.value)}\n className=\"w-full bg-[#111116] border border-[#2b2b36] rounded-lg pl-8 pr-3 py-1.5 text-xs text-white placeholder-slate-500 focus:outline-none focus:border-cyan-500\"\n />\n </div>\n\n {/* Archetype Quick Filter for Skins */}\n {mixerTab === \"skins\" && (\n <select\n value={archetypeFilter}\n onChange={(e) => setArchetypeFilter(e.target.value)}\n className=\"bg-[#111116] border border-[#2b2b36] rounded-lg px-2.5 py-1.5 text-xs text-slate-300 focus:outline-none\"\n >\n <option value=\"all\">All Archetypes (50)</option>\n <option value=\"cyber_suit\">Cyber Suit (10)</option>\n <option value=\"mecha_pilot\">Mecha Pilot (10)</option>\n <option value=\"stealth_ninja\">Stealth Ninja (10)</option>\n <option value=\"matrix_hacker\">Matrix Hacker (10)</option>\n <option value=\"celestial_astro\">Celestial Astro (10)</option>\n </select>\n )}\n </div>\n\n {/* Currently Active Selection Pill */}\n <div className=\"p-2.5 rounded-lg bg-[#121217] border border-[#272733] flex items-center justify-between text-xs\">\n <div className=\"flex items-center gap-2 truncate\">\n <span className=\"text-slate-400 font-semibold\">Active {mixerTab.slice(0, -1).toUpperCase()}:</span>\n <span className=\"font-bold text-cyan-300 truncate\">\n {mixerTab === \"skins\" && (currentSkinItem?.name || activeSkinId)}\n {mixerTab === \"pets\" && (currentPetItem?.name || activePetId)}\n {mixerTab === \"props\" && `${activeProps.length} desk props equipped`}\n {mixerTab === \"auras\" && (currentAuraItem?.name || activeAuraId)}\n {mixerTab === \"themes\" && (currentThemeItem?.name || activeThemeId)}\n </span>\n </div>\n <span className=\"text-[10px] font-mono text-slate-400\">{filteredMixerItems.length} available</span>\n </div>\n\n {/* Mixer Items Grid (Scrollable) */}\n <div className=\"flex-1 overflow-y-auto max-h-[380px] pr-1 space-y-1.5 custom-scrollbar\">\n <div className=\"grid grid-cols-2 sm:grid-cols-3 gap-2\">\n {filteredMixerItems.slice(0, 72).map((item) => {\n const isSkinSelected = mixerTab === \"skins\" && activeSkinId === item.id;\n const isPetSelected = mixerTab === \"pets\" && activePetId === item.id;\n const isAuraSelected = mixerTab === \"auras\" && activeAuraId === item.id;\n const isThemeSelected = mixerTab === \"themes\" && activeThemeId === item.id;\n const isPropSelected = mixerTab === \"props\" && activeProps.includes(item.id);\n const isSelected = isSkinSelected || isPetSelected || isAuraSelected || isThemeSelected || isPropSelected;\n\n const color = item.color || item.previewColor || \"#00f0ff\";\n\n return (\n <button\n key={item.id}\n onClick={() => {\n if (mixerTab === \"skins\") setActiveSkinId(item.id);\n else if (mixerTab === \"pets\") setActivePetId(item.id);\n else if (mixerTab === \"auras\") setActiveAuraId(item.id);\n else if (mixerTab === \"themes\") setActiveThemeId(item.id);\n else if (mixerTab === \"props\") handleTogglePropItem(item.id);\n }}\n className={`p-2 rounded-lg text-left transition-all relative border flex flex-col justify-between ${\n isSelected\n ? \"bg-cyan-950/40 border-cyan-400 shadow-[0_0_10px_rgba(6,182,212,0.25)]\"\n : \"bg-[#141419] border-[#252530] hover:border-[#383848] hover:bg-[#1a1a22]\"\n }`}\n >\n <div className=\"flex items-center justify-between gap-1 mb-1\">\n <span\n className=\"w-3.5 h-3.5 rounded-full shrink-0 border border-white/20 shadow-sm\"\n style={{ backgroundColor: color }}\n />\n {isSelected && (\n <span className=\"text-[9px] font-mono font-bold text-cyan-400 flex items-center gap-0.5\">\n <Check className=\"w-2.5 h-2.5\" />\n {mixerTab === \"props\" ? \"ON\" : \"EQUIP\"}\n </span>\n )}\n </div>\n\n <div className=\"space-y-0.5 min-w-0\">\n <div className=\"text-[11px] font-bold text-white truncate\">{item.name}</div>\n <div className=\"text-[9px] text-slate-400 truncate uppercase font-mono\">{item.archetype || item.tier || \"Custom\"}</div>\n </div>\n </button>\n );\n })}\n </div>\n </div>\n\n {/* Loadout Summary Footer */}\n <div className=\"pt-2 border-t border-[#262632] flex flex-wrap items-center justify-between text-[11px] text-slate-400\">\n <div className=\"truncate max-w-[80%]\">\n <span>Loadout: </span>\n <strong className=\"text-slate-200\">{currentSkinItem?.name || \"Agent\"}</strong> +{\" \"}\n <strong className=\"text-slate-200\">{activeProps.length} Props</strong> +{\" \"}\n <strong className=\"text-slate-200\">{currentPetItem?.name || \"None\"}</strong> +{\" \"}\n <strong className=\"text-cyan-300\">{currentAuraItem?.name || \"No VFX\"}</strong>\n </div>\n <button\n onClick={handleApplyLoadout}\n className=\"text-cyan-400 hover:text-cyan-300 font-bold flex items-center gap-1 text-[11px]\"\n >\n <span>Save to Canvas</span>\n <CheckCircle2 className=\"w-3.5 h-3.5\" />\n </button>\n </div>\n </div>\n </div>\n </div>\n </div>\n );\n}\n","\"use client\";\n\nimport React, { useState, useEffect, useMemo } from \"react\";\nimport {\n Coffee,\n Sparkles,\n ShieldCheck,\n Check,\n ExternalLink,\n ShoppingBag,\n Volume2,\n VolumeX,\n Key,\n X,\n Laptop,\n Play,\n Square,\n Gift,\n AlertCircle,\n Copy,\n ChevronRight,\n ChevronLeft,\n Lock,\n Search,\n Grid,\n Bot,\n Filter,\n LayoutGrid,\n Zap,\n Trophy,\n Palette,\n} from \"lucide-react\";\nimport {\n COSMETIC_CATALOG,\n getSupporterState,\n unlockWithCode,\n equipSkin,\n equipPet,\n toggleProp,\n equipAura,\n equipTrophy,\n equipOfficeTheme,\n setAmbientSound,\n SUPPORTER_CHANGE_EVENT,\n} from \"@/lib/supporterStore\";\nimport { startAmbient, stopAmbient, setAmbientVolume } from \"@/lib/ambientAudio\";\nimport { TOTAL_CATALOG_COUNT } from \"@/lib/catalog/index.js\";\nimport { Item3DPreview } from \"./Item3DRenderer\";\nimport LiveFittingRoom from \"./LiveFittingRoom\";\nimport { LiveReactAgent } from \"./LiveReactAgent\";\n\n// VietQR donation recipient info (MB Bank)\nconst VIETQR_CONFIG = {\n bankId: \"MB\",\n bankName: \"MB Bank (Military Bank)\",\n accountNo: \"0968868862\",\n template: \"qr_only\",\n};\n\nconst DONATE_TIERS = [\n {\n id: \"coffee\",\n title: \"Dev Coffee Fuel\",\n amount: 20000,\n amountUsd: \"$1\",\n tag: \"Popular\",\n description: \"Fuel developer energy for late-night coding and debugging sessions.\",\n },\n {\n id: \"lunch\",\n title: \"Lunch Encouragement\",\n amount: 50000,\n amountUsd: \"$2.5\",\n tag: \"Recommended\",\n description: \"Support server infrastructure and new feature development for AGMon.\",\n },\n {\n id: \"vip\",\n title: \"VIP Dev Buff Pack\",\n amount: 100000,\n amountUsd: \"$5\",\n tag: \"VIP Supporter\",\n description: `Unlock all ${TOTAL_CATALOG_COUNT} 3D isometric items, aura effects, and exclusive badges.`,\n },\n];\n\nconst ITEMS_PER_PAGE = 48;\n\nexport default function SupporterStoreView({ hideHeader = false, onClose = null }) {\n // Navigation: 'all' | 'skins' | 'props' | 'pets' | 'auras' | 'trophies' | 'ambient' | 'donate'\n const [activeTab, setActiveTab] = useState(\"all\");\n const [storeState, setStoreState] = useState(getSupporterState());\n const [selectedTier, setSelectedTier] = useState(DONATE_TIERS[0]);\n const [unlockCodeInput, setUnlockCodeInput] = useState(\"\");\n const [unlockFeedback, setUnlockFeedback] = useState(null);\n const [copiedBank, setCopiedBank] = useState(false);\n const [searchQuery, setSearchQuery] = useState(\"\");\n const [tierFilter, setTierFilter] = useState(\"all\"); // 'all' | 'free' | 'coffee' | 'lunch' | 'vip'\n const [gridDensity, setGridDensity] = useState(\"normal\"); // 'normal' | 'dense'\n const [currentPage, setCurrentPage] = useState(1);\n const [playingAudio, setPlayingAudio] = useState(null);\n\n // Listen for inventory updates\n useEffect(() => {\n const handleStoreChange = (e) => {\n if (e.detail) {\n setStoreState(e.detail);\n } else {\n setStoreState(getSupporterState());\n }\n };\n\n window.addEventListener(SUPPORTER_CHANGE_EVENT, handleStoreChange);\n return () => window.removeEventListener(SUPPORTER_CHANGE_EVENT, handleStoreChange);\n }, []);\n\n // Reset pagination when category, query, or tier changes\n useEffect(() => {\n setCurrentPage(1);\n }, [activeTab, searchQuery, tierFilter]);\n\n // Unlock via activation code\n const handleUnlockCode = (e) => {\n if (e && e.preventDefault) e.preventDefault();\n const code = unlockCodeInput.trim() || \"AGMON-COFFEE-VIP\";\n\n const res = unlockWithCode(code);\n setUnlockFeedback(res);\n if (res.success) {\n setUnlockCodeInput(\"\");\n setStoreState(res.state);\n setTimeout(() => setUnlockFeedback(null), 5000);\n }\n };\n\n // Quick unlock all for testing\n const handleQuickUnlockAll = () => {\n const res = unlockWithCode(\"AGMON-COFFEE-VIP\");\n setUnlockFeedback(res);\n if (res.success) {\n setStoreState(res.state);\n setTimeout(() => setUnlockFeedback(null), 5000);\n }\n };\n\n // Copy bank account number\n const handleCopyAccount = () => {\n navigator.clipboard?.writeText(VIETQR_CONFIG.accountNo);\n setCopiedBank(true);\n setTimeout(() => setCopiedBank(false), 2000);\n };\n\n // Jump to donation tab with specific tier selected\n const handleUnlockTier = (tierId) => {\n const mapped =\n tierId === \"lunch\" || tierId === \"meal\"\n ? \"lunch\"\n : tierId === \"vip\"\n ? \"vip\"\n : \"coffee\";\n const tier = DONATE_TIERS.find((t) => t.id === mapped) || DONATE_TIERS[0];\n setSelectedTier(tier);\n setActiveTab(\"donate\");\n };\n\n // VietQR image generator URL\n const vietQrUrl = `https://img.vietqr.io/image/${VIETQR_CONFIG.bankId}-${VIETQR_CONFIG.accountNo}-${VIETQR_CONFIG.template}.png?amount=${selectedTier.amount}&addInfo=AGMON%20${selectedTier.id.toUpperCase()}`;\n\n // Filter items\n const matchesSearchAndTier = (item) => {\n if (tierFilter !== \"all\") {\n const itemTier = item.tier === \"lunch\" ? \"meal\" : item.tier;\n const targetTier = tierFilter === \"lunch\" ? \"meal\" : tierFilter;\n if (itemTier !== targetTier) return false;\n }\n if (!searchQuery.trim()) return true;\n const q = searchQuery.toLowerCase();\n return (\n item.name?.toLowerCase().includes(q) ||\n item.description?.toLowerCase().includes(q) ||\n item.id?.toLowerCase().includes(q) ||\n item.archetype?.toLowerCase().includes(q)\n );\n };\n\n // Filtered lists\n const filteredSkins = useMemo(\n () => (COSMETIC_CATALOG.skins || []).filter(matchesSearchAndTier),\n [searchQuery, tierFilter]\n );\n\n const filteredProps = useMemo(\n () => (COSMETIC_CATALOG.props || []).filter(matchesSearchAndTier),\n [searchQuery, tierFilter]\n );\n\n const filteredPets = useMemo(\n () => (COSMETIC_CATALOG.pets || []).filter(matchesSearchAndTier),\n [searchQuery, tierFilter]\n );\n\n const filteredAuras = useMemo(\n () => (COSMETIC_CATALOG.auras || []).filter(matchesSearchAndTier),\n [searchQuery, tierFilter]\n );\n\n const filteredTrophies = useMemo(\n () => (COSMETIC_CATALOG.trophies || []).filter(matchesSearchAndTier),\n [searchQuery, tierFilter]\n );\n\n const filteredThemes = useMemo(\n () => (COSMETIC_CATALOG.officeThemes || []).filter(matchesSearchAndTier),\n [searchQuery, tierFilter]\n );\n\n // Active items list based on current tab\n const activeItemsList = useMemo(() => {\n if (activeTab === \"themes\") return filteredThemes;\n if (activeTab === \"skins\") return filteredSkins;\n if (activeTab === \"props\") return filteredProps;\n if (activeTab === \"pets\") return filteredPets;\n if (activeTab === \"auras\") return filteredAuras;\n if (activeTab === \"trophies\") return filteredTrophies;\n if (activeTab === \"all\") {\n return [\n ...filteredThemes,\n ...filteredSkins,\n ...filteredProps,\n ...filteredPets,\n ...filteredAuras,\n ...filteredTrophies,\n ];\n }\n return [];\n }, [\n activeTab,\n filteredThemes,\n filteredSkins,\n filteredProps,\n filteredPets,\n filteredAuras,\n filteredTrophies,\n ]);\n\n // Pagination calculations\n const totalItemsCount = activeItemsList.length;\n const totalPages = Math.max(1, Math.ceil(totalItemsCount / ITEMS_PER_PAGE));\n const paginatedItems = useMemo(() => {\n const start = (currentPage - 1) * ITEMS_PER_PAGE;\n return activeItemsList.slice(start, start + ITEMS_PER_PAGE);\n }, [activeItemsList, currentPage]);\n\n // Sidebar navigation menu items\n const asideMenuItems = [\n {\n id: \"all\",\n label: \"All Items\",\n count: TOTAL_CATALOG_COUNT,\n icon: Grid,\n desc: \"10 Themes · 50 Skins · 35 Props · 21 Pets · 16 Auras · 16 Trophies\",\n },\n {\n id: \"fitting_room\",\n label: \"Live Fitting Room\",\n badge: \"LIVE 3D\",\n icon: Sparkles,\n desc: \"Interactive avatar sandbox, mix props & test actions\",\n },\n {\n id: \"themes\",\n label: \"Office Themes\",\n count: (COSMETIC_CATALOG.officeThemes || []).length,\n icon: Palette,\n desc: \"Virtual office floor styles, neon grids & wallpapers\",\n },\n {\n id: \"skins\",\n label: \"Agent Skins 3D\",\n count: (COSMETIC_CATALOG.skins || []).length,\n icon: Bot,\n desc: \"Cyborgs, mecha frames, and cyber armor\",\n },\n {\n id: \"props\",\n label: \"Tech Desk Props\",\n count: (COSMETIC_CATALOG.props || []).length,\n icon: Laptop,\n desc: \"Workstation gear, hardware, and servers\",\n },\n {\n id: \"pets\",\n label: \"Pets & Companions\",\n count: (COSMETIC_CATALOG.pets || []).length,\n icon: Gift,\n desc: \"Cyber pets & companion hover drones\",\n },\n {\n id: \"auras\",\n label: \"Auras & Effects\",\n count: (COSMETIC_CATALOG.auras || []).length,\n icon: Sparkles,\n desc: \"Energy rings & particle spectrums\",\n },\n {\n id: \"trophies\",\n label: \"Trophies & Badges\",\n count: (COSMETIC_CATALOG.trophies || []).length,\n icon: Trophy,\n desc: \"Commemorative awards, silicon wafers & medals\",\n },\n {\n id: \"ambient\",\n label: \"Ambient Soundscapes\",\n count: (COSMETIC_CATALOG.soundscapes || []).length,\n icon: Volume2,\n desc: \"Lo-Fi beats & focus background noise\",\n },\n {\n id: \"donate\",\n label: \"Supporter Vault (VietQR)\",\n badge: \"Buff Dev\",\n icon: Coffee,\n desc: \"Scan VietQR to unlock all VIP perks\",\n },\n ];\n\n // Grid class based on density\n const gridClasses =\n gridDensity === \"dense\"\n ? \"grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-5 xl:grid-cols-6 gap-2.5 text-xs\"\n : \"grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-3.5 text-xs\";\n\n // Item equip helper\n const handleItemEquipToggle = (item) => {\n if (item.category === \"themes\") {\n equipOfficeTheme(item.id);\n } else if (item.category === \"skins\") {\n equipSkin(item.id);\n } else if (item.category === \"props\") {\n toggleProp(item.id);\n } else if (item.category === \"pets\") {\n equipPet(item.id);\n } else if (item.category === \"auras\") {\n equipAura(item.id);\n } else if (item.category === \"trophies\") {\n equipTrophy(item.id);\n }\n };\n\n const isItemEquipped = (item) => {\n if (item.category === \"themes\") return storeState.equippedOfficeTheme === item.id;\n if (item.category === \"skins\") return storeState.equippedSkin === item.id;\n if (item.category === \"props\") return storeState.equippedProps?.includes(item.id);\n if (item.category === \"pets\") return storeState.equippedPet === item.id;\n if (item.category === \"auras\") return storeState.equippedAura === item.id;\n if (item.category === \"trophies\") return storeState.equippedTrophy === item.id;\n return false;\n };\n\n const isItemUnlocked = (item) => {\n return (\n item.tier === \"free\" ||\n storeState.isSupporter ||\n storeState.unlockedItems.includes(item.id)\n );\n };\n\n return (\n <div className=\"w-full h-full flex flex-col md:flex-row bg-[#141416] text-slate-300 overflow-hidden select-none\">\n {/* ===================== ASIDE SIDEBAR MENU ===================== */}\n <aside\n data-testid=\"store-aside-menu\"\n className=\"w-full md:w-64 lg:w-72 bg-[#18181c] border-b md:border-b-0 md:border-r border-[#26262b] flex flex-col shrink-0 h-auto md:h-full z-20 shadow-xl\"\n >\n {/* Aside Header */}\n <div className=\"p-4 border-b border-[#26262b] flex items-center justify-between bg-[#151518]\">\n <div className=\"flex items-center gap-2.5\">\n <div className=\"w-8 h-8 rounded-lg bg-gradient-to-br from-amber-500/30 to-amber-600/10 border border-amber-500/40 flex items-center justify-center text-amber-400 shadow-sm\">\n <ShoppingBag className=\"w-4 h-4\" />\n </div>\n <div>\n <h2 className=\"text-sm font-bold text-white leading-tight\">Supporter Store</h2>\n <p className=\"text-[11px] text-amber-400 font-mono\">{TOTAL_CATALOG_COUNT} 3D Items & Effects</p>\n </div>\n </div>\n {onClose && (\n <button\n onClick={onClose}\n className=\"p-1 rounded-md hover:bg-[#25252a] text-slate-400 hover:text-white transition-colors\"\n title=\"Close store\"\n >\n <X className=\"w-4 h-4\" />\n </button>\n )}\n </div>\n\n {/* Aside Search Box */}\n <div className=\"p-3 border-b border-[#26262b]\">\n <div className=\"relative\">\n <Search className=\"w-3.5 h-3.5 text-slate-500 absolute left-2.5 top-1/2 -translate-y-1/2\" />\n <input\n type=\"text\"\n placeholder={`Search across ${TOTAL_CATALOG_COUNT} items...`}\n value={searchQuery}\n onChange={(e) => setSearchQuery(e.target.value)}\n className=\"w-full pl-8 pr-7 py-1.5 bg-[#202026] border border-[#33333d] rounded-lg text-xs text-white placeholder-slate-500 focus:outline-none focus:border-[#007acc] transition-colors\"\n />\n {searchQuery && (\n <button\n onClick={() => setSearchQuery(\"\")}\n className=\"absolute right-2 top-1/2 -translate-y-1/2 text-slate-400 hover:text-white text-xs\"\n >\n <X className=\"w-3 h-3\" />\n </button>\n )}\n </div>\n </div>\n\n {/* Aside Category Navigation Menu */}\n <nav className=\"flex-1 overflow-y-auto p-2 space-y-1 text-xs\">\n <div className=\"px-2 py-1 text-[10px] font-bold text-slate-500 uppercase tracking-wider\">\n Categories ({TOTAL_CATALOG_COUNT} Items)\n </div>\n {asideMenuItems.map((item) => {\n const isActive = activeTab === item.id;\n const Icon = item.icon;\n return (\n <button\n key={item.id}\n onClick={() => setActiveTab(item.id)}\n className={`w-full flex items-center justify-between px-3 py-2 rounded-lg text-left transition-all cursor-pointer ${\n isActive\n ? \"bg-[#007acc] text-white font-semibold shadow-md shadow-[#007acc]/20\"\n : \"text-slate-300 hover:text-white hover:bg-[#202026]\"\n }`}\n >\n <div className=\"flex items-center gap-2.5\">\n <Icon className={`w-4 h-4 shrink-0 ${isActive ? \"text-white\" : \"text-slate-400\"}`} />\n <div>\n <div className=\"leading-tight text-xs\">{item.label}</div>\n <div\n className={`text-[10px] ${\n isActive ? \"text-cyan-100\" : \"text-slate-500\"\n } line-clamp-1`}\n >\n {item.desc}\n </div>\n </div>\n </div>\n {item.count !== undefined && (\n <span\n className={`text-[10px] font-mono px-2 py-0.5 rounded-full ${\n isActive\n ? \"bg-white/20 text-white font-bold\"\n : \"bg-[#25252d] text-slate-400 border border-[#33333d]\"\n }`}\n >\n {item.count}\n </span>\n )}\n {item.badge && (\n <span className=\"text-[9px] font-bold font-mono px-1.5 py-0.5 rounded bg-amber-500/20 text-amber-300 border border-amber-500/40\">\n {item.badge}\n </span>\n )}\n </button>\n );\n })}\n\n {/* Tier Filter Chips */}\n <div className=\"pt-3 px-2\">\n <div className=\"text-[10px] font-bold text-slate-500 uppercase tracking-wider mb-1.5 flex items-center gap-1\">\n <Filter className=\"w-3 h-3 text-cyan-400\" />\n <span>Filter by Tier</span>\n </div>\n <div className=\"flex flex-wrap gap-1\">\n {[\n { id: \"all\", label: \"All\" },\n { id: \"free\", label: \"Free\" },\n { id: \"coffee\", label: \"Coffee (20k)\" },\n { id: \"lunch\", label: \"Lunch (50k)\" },\n { id: \"vip\", label: \"VIP (100k)\" },\n ].map((t) => (\n <button\n key={t.id}\n onClick={() => setTierFilter(t.id)}\n className={`px-2 py-1 text-[10px] rounded-md border transition-colors cursor-pointer ${\n tierFilter === t.id\n ? \"bg-cyan-500/20 text-cyan-300 border-cyan-500/50 font-bold shadow-sm\"\n : \"bg-[#202026] text-slate-400 border-[#2f2f38] hover:text-white\"\n }`}\n >\n {t.label}\n </button>\n ))}\n </div>\n </div>\n\n {/* Quick Demo Unlock Button */}\n {!storeState.isSupporter && (\n <div className=\"pt-3 px-2\">\n <button\n type=\"button\"\n onClick={handleQuickUnlockAll}\n className=\"w-full flex items-center justify-center gap-1.5 px-3 py-1.5 bg-gradient-to-r from-amber-500/20 to-amber-600/20 hover:from-amber-500/30 hover:to-amber-600/30 border border-amber-500/40 text-amber-300 rounded-lg text-xs font-semibold cursor-pointer transition-all shadow-sm\"\n title={`Unlock all ${TOTAL_CATALOG_COUNT} items instantly to preview`}\n >\n <Zap className=\"w-3.5 h-3.5 text-amber-400\" />\n <span>Unlock all {TOTAL_CATALOG_COUNT} items (VIP Demo)</span>\n </button>\n </div>\n )}\n </nav>\n\n {/* Aside Footer: Character Equipped Preview Widget */}\n <div className=\"p-3 border-t border-[#26262b] bg-[#121215] text-xs space-y-2\">\n <div className=\"flex items-center justify-between text-[11px] text-slate-400 font-semibold\">\n <span>Current Avatar</span>\n <span\n className={`font-mono text-[9px] px-1.5 py-0.5 rounded font-bold ${\n storeState.isSupporter\n ? \"bg-amber-500/20 text-amber-300 border border-amber-500/40\"\n : \"bg-slate-800 text-slate-400 border border-slate-700\"\n }`}\n >\n {storeState.isSupporter ? \"VIP SUPPORTER\" : \"FREE AGENT\"}\n </span>\n </div>\n\n <div className=\"flex items-center gap-3 p-2 rounded-xl bg-[#1d1d23] border border-[#2b2b34] shadow-inner\">\n <div className=\"w-14 h-14 rounded-lg bg-[#141418] border border-[#33333d] flex items-center justify-center shrink-0 overflow-hidden relative shadow-inner\">\n <LiveReactAgent\n skinId={storeState.equippedSkin || \"skin_0\"}\n petId={storeState.equippedPet || \"pet_0\"}\n propsList={storeState.equippedProps || []}\n auraId={storeState.equippedAura || \"aura_0\"}\n themeId={storeState.equippedOfficeTheme || \"theme_default\"}\n mode=\"streaming\"\n intensity={0.5}\n showFloor={false}\n showDesk={false}\n interactive={false}\n className=\"w-full h-full\"\n />\n </div>\n <div className=\"space-y-0.5 flex-1 min-w-0\">\n <div className=\"font-bold text-white text-xs truncate\">\n {(COSMETIC_CATALOG.skins || []).find((s) => s.id === storeState.equippedSkin)?.name || \"Classic Bot\"}\n </div>\n <div className=\"text-[10px] text-purple-300 truncate flex items-center gap-1\">\n <span>Theme:</span>\n <span className=\"font-semibold truncate\">\n {(COSMETIC_CATALOG.officeThemes || []).find((t) => t.id === storeState.equippedOfficeTheme)?.name || \"Classic Slate\"}\n </span>\n </div>\n <div className=\"text-[10px] text-slate-400 truncate flex items-center gap-1\">\n <span>Pet:</span>\n <span className=\"text-pink-300 font-semibold truncate\">\n {(COSMETIC_CATALOG.pets || []).find((p) => p.id === storeState.equippedPet)?.name || \"None selected\"}\n </span>\n </div>\n <div className=\"text-[10px] text-cyan-400 truncate flex items-center gap-1\">\n <span>Props:</span>\n <span className=\"font-bold\">{storeState.equippedProps?.length || 0} equipped</span>\n </div>\n {storeState.equippedAura && storeState.equippedAura !== \"none\" && (\n <div className=\"text-[10px] text-amber-300 truncate flex items-center gap-1\">\n <span>Aura:</span>\n <span className=\"font-semibold truncate\">\n {(COSMETIC_CATALOG.auras || []).find((a) => a.id === storeState.equippedAura)?.name || storeState.equippedAura}\n </span>\n </div>\n )}\n </div>\n </div>\n\n <button\n type=\"button\"\n onClick={() => setActiveTab(\"fitting_room\")}\n className=\"w-full flex items-center justify-center gap-1.5 py-1.5 px-3 rounded-lg bg-cyan-500/10 hover:bg-cyan-500/20 border border-cyan-500/30 text-cyan-300 text-xs font-semibold cursor-pointer transition-all shadow-sm\"\n >\n <Sparkles className=\"w-3.5 h-3.5 text-cyan-400\" />\n <span>Open 3D Fitting Room</span>\n </button>\n </div>\n </aside>\n\n {/* ===================== MAIN CONTENT AREA ===================== */}\n <main className=\"flex-1 flex flex-col h-full overflow-hidden bg-[#18181c]\">\n {/* Top Header Bar */}\n <div className=\"px-6 py-4 border-b border-[#26262b] bg-[#151518] flex flex-wrap items-center justify-between gap-3 shrink-0\">\n <div>\n <div className=\"flex items-center gap-2\">\n <span className=\"text-xs font-mono font-bold px-2 py-0.5 rounded bg-[#007acc]/20 text-cyan-300 border border-[#007acc]/40\">\n CATALOG {TOTAL_CATALOG_COUNT}\n </span>\n <h1 className=\"text-base font-bold text-white flex items-center gap-2\">\n {activeTab === \"all\" && <Grid className=\"w-4 h-4 text-cyan-400\" />}\n {activeTab === \"fitting_room\" && <Sparkles className=\"w-4 h-4 text-cyan-400\" />}\n {activeTab === \"themes\" && <Palette className=\"w-4 h-4 text-purple-400\" />}\n {activeTab === \"skins\" && <Bot className=\"w-4 h-4 text-pink-400\" />}\n {activeTab === \"props\" && <Laptop className=\"w-4 h-4 text-emerald-400\" />}\n {activeTab === \"pets\" && <Gift className=\"w-4 h-4 text-purple-400\" />}\n {activeTab === \"auras\" && <Sparkles className=\"w-4 h-4 text-amber-400\" />}\n {activeTab === \"trophies\" && <Trophy className=\"w-4 h-4 text-yellow-400\" />}\n {activeTab === \"ambient\" && <Volume2 className=\"w-4 h-4 text-cyan-400\" />}\n {activeTab === \"donate\" && <Coffee className=\"w-4 h-4 text-amber-400\" />}\n <span>\n {activeTab === \"all\" && `All ${TOTAL_CATALOG_COUNT} Tech Items & 3D Effects`}\n {activeTab === \"fitting_room\" && \"Live Avatar Fitting Room & Sandbox\"}\n {activeTab === \"themes\" && \"Office Themes & Wallpapers (10 Floor Styles)\"}\n {activeTab === \"skins\" && \"Agent 3D Skins (50 Curated Armor & Visor Models)\"}\n {activeTab === \"props\" && \"Desk Props & Hardware (35 Curated Devices & Rigs)\"}\n {activeTab === \"pets\" && \"Pets & Cyber Companions (21 Pets & Drones)\"}\n {activeTab === \"auras\" && \"Auras & Character Effects (16 Energy Spectrums)\"}\n {activeTab === \"trophies\" && \"Trophies & Silicon Badges (16 3D Medals)\"}\n {activeTab === \"ambient\" && \"Lo-Fi Ambient Audio (6 Soundscapes)\"}\n {activeTab === \"donate\" && \"Buy Me a Coffee (VietQR Bank Transfer)\"}\n </span>\n </h1>\n </div>\n <p className=\"text-xs text-slate-400 mt-1\">\n {activeTab === \"all\" && `Collection of ${TOTAL_CATALOG_COUNT} high-precision 3D isometric items: cast shadows, directional lighting, and microchip details.`}\n {activeTab === \"fitting_room\" && \"Interactive 3D sandbox to mix skins, desk props, cyber pets, auras, and floor styles with live animated actions.\"}\n {activeTab === \"themes\" && \"Custom floor environments, neon gridlines, and ambient lighting for the 2D Virtual Office canvas.\"}\n {activeTab === \"skins\" && \"Customize chibi robot avatars for AI programming agents on the visual canvas.\"}\n {activeTab === \"props\" && \"Decorate workstations with dual displays, server racks, espresso machines, and cyber bonsai.\"}\n {activeTab === \"pets\" && \"Companion robot pets and hover drones to keep you company during complex debugging sessions.\"}\n {activeTab === \"auras\" && \"Plasma radiation effects, orbital rings, and radiant particles encircling your agent.\"}\n {activeTab === \"trophies\" && \"Optical crystal blocks and silicon wafers commemorating open source development contributions.\"}\n {activeTab === \"ambient\" && \"Procedural ambient synthetic soundscapes designed for deep programming focus.\"}\n {activeTab === \"donate\" && \"Scan VietQR to unlock all VIP perks and support ongoing project development.\"}\n </p>\n </div>\n\n {/* Quick Toolbar: Density Toggle & Counter */}\n <div className=\"flex items-center gap-2.5\">\n {/* View Mode Density Toggle */}\n <div className=\"flex items-center bg-[#202026] rounded-lg p-0.5 border border-[#2f2f38]\">\n <button\n type=\"button\"\n onClick={() => setGridDensity(\"normal\")}\n className={`p-1.5 rounded text-xs transition-colors cursor-pointer ${\n gridDensity === \"normal\"\n ? \"bg-[#007acc] text-white\"\n : \"text-slate-400 hover:text-white\"\n }`}\n title=\"Standard grid layout (3-4 columns)\"\n >\n <Grid className=\"w-3.5 h-3.5\" />\n </button>\n <button\n type=\"button\"\n onClick={() => setGridDensity(\"dense\")}\n className={`p-1.5 rounded text-xs transition-colors cursor-pointer ${\n gridDensity === \"dense\"\n ? \"bg-[#007acc] text-white\"\n : \"text-slate-400 hover:text-white\"\n }`}\n title=\"Compact grid layout (5-6 columns)\"\n >\n <LayoutGrid className=\"w-3.5 h-3.5\" />\n </button>\n </div>\n\n <span className=\"text-xs font-mono text-cyan-300 bg-[#202026] px-3 py-1 rounded-md border border-[#2f2f38]\">\n {activeTab === \"fitting_room\"\n ? \"Live 3D Stage\"\n : activeTab === \"ambient\"\n ? `${(COSMETIC_CATALOG.soundscapes || []).length} Audio Tracks`\n : activeTab === \"donate\"\n ? \"3 Tiers\"\n : `${totalItemsCount} Items`}\n </span>\n\n {activeTab !== \"donate\" && (\n <button\n onClick={() => setActiveTab(\"donate\")}\n className=\"flex items-center gap-1.5 px-3 py-1 bg-gradient-to-r from-amber-500/20 to-amber-600/20 hover:from-amber-500/30 hover:to-amber-600/30 text-amber-300 border border-amber-500/40 rounded-md text-xs font-semibold cursor-pointer transition-all shadow-sm\"\n >\n <Coffee className=\"w-3.5 h-3.5\" />\n <span>Buff Dev</span>\n </button>\n )}\n </div>\n </div>\n\n {/* Quick Category Tabs Bar */}\n <div className=\"px-6 py-2 bg-[#1b1b20] border-b border-[#26262b] flex items-center gap-1.5 overflow-x-auto text-xs shrink-0\">\n {[\n { id: \"all\", label: `All (${TOTAL_CATALOG_COUNT})`, icon: Grid },\n { id: \"fitting_room\", label: \"Fitting Room (3D)\", icon: Sparkles },\n { id: \"themes\", label: `Themes (${(COSMETIC_CATALOG.officeThemes || []).length})`, icon: Palette },\n { id: \"skins\", label: `Skins (${(COSMETIC_CATALOG.skins || []).length})`, icon: Bot },\n { id: \"props\", label: `Props (${(COSMETIC_CATALOG.props || []).length})`, icon: Laptop },\n { id: \"pets\", label: `Pets (${(COSMETIC_CATALOG.pets || []).length})`, icon: Gift },\n { id: \"auras\", label: `Auras (${(COSMETIC_CATALOG.auras || []).length})`, icon: Sparkles },\n { id: \"trophies\", label: `Trophies (${(COSMETIC_CATALOG.trophies || []).length})`, icon: Trophy },\n { id: \"ambient\", label: \"Ambient (6)\", icon: Volume2 },\n { id: \"donate\", label: \"VietQR Vault\", icon: Coffee },\n ].map((cat) => {\n const Icon = cat.icon;\n const isSel = activeTab === cat.id;\n return (\n <button\n key={cat.id}\n onClick={() => setActiveTab(cat.id)}\n className={`flex items-center gap-1.5 px-3 py-1.5 rounded-lg font-medium transition-all cursor-pointer whitespace-nowrap ${\n isSel\n ? \"bg-[#007acc] text-white font-bold shadow-sm\"\n : \"text-slate-400 hover:text-white hover:bg-[#25252e]\"\n }`}\n >\n <Icon className={`w-3.5 h-3.5 ${isSel ? \"text-white\" : \"text-slate-400\"}`} />\n <span>{cat.label}</span>\n </button>\n );\n })}\n </div>\n\n {/* Scrollable Catalog Grid View */}\n <div className=\"flex-1 overflow-y-auto p-4 sm:p-6\">\n <div className=\"max-w-7xl mx-auto space-y-6\">\n\n {/* TAB: LIVE FITTING ROOM & SANDBOX */}\n {activeTab === \"fitting_room\" && (\n <LiveFittingRoom\n initialStoreState={storeState}\n onEquipSuccess={(updated) => setStoreState(updated)}\n />\n )}\n\n {/* TAB: AMBIENT SOUNDSCAPES */}\n {activeTab === \"ambient\" && (\n <section className=\"space-y-4\">\n <div className=\"border-b border-[#26262b] pb-3 flex items-center justify-between\">\n <div className=\"flex items-center gap-2\">\n <div className=\"w-8 h-8 rounded-lg bg-amber-500/20 border border-amber-500/40 flex items-center justify-center text-amber-400\">\n <Volume2 className=\"w-4 h-4\" />\n </div>\n <div>\n <h3 className=\"text-sm font-bold text-white\">Procedural Focus Audio</h3>\n <p className=\"text-xs text-slate-400\">Relaxing background ambient soundscapes to reduce coding fatigue</p>\n </div>\n </div>\n </div>\n\n <div className=\"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4\">\n {(COSMETIC_CATALOG.soundscapes || []).map((sound) => {\n const isSelected = storeState.ambientSound === sound.id;\n const isPlaying = playingAudio === sound.id;\n\n return (\n <div\n key={sound.id}\n className={`p-4 rounded-xl border transition-all bg-[#1c1c22] ${\n isSelected\n ? \"border-amber-500/60 shadow-lg shadow-amber-950/20 ring-1 ring-amber-500/40\"\n : \"border-[#2b2b35] hover:border-slate-600\"\n }`}\n >\n <div className=\"flex items-center justify-between mb-2\">\n <h4 className=\"font-bold text-white text-sm\">{sound.name}</h4>\n <span\n className={`text-[10px] font-mono px-2 py-0.5 rounded font-bold ${\n isSelected\n ? \"bg-amber-500/20 text-amber-300 border border-amber-500/40\"\n : \"bg-[#25252e] text-slate-400\"\n }`}\n >\n {isSelected ? \"EQUIPPED\" : \"READY\"}\n </span>\n </div>\n <p className=\"text-xs text-slate-400 leading-relaxed mb-4 min-h-[36px]\">\n {sound.description}\n </p>\n\n <div className=\"flex items-center gap-2 pt-2 border-t border-[#272730]\">\n <button\n type=\"button\"\n onClick={() => {\n if (isPlaying) {\n stopAmbient();\n setPlayingAudio(null);\n } else {\n startAmbient(sound.id, storeState.ambientVolume);\n setPlayingAudio(sound.id);\n }\n }}\n className={`flex items-center gap-1.5 px-3 py-1.5 rounded-lg text-xs font-semibold cursor-pointer transition-colors ${\n isPlaying\n ? \"bg-red-500/20 text-red-300 border border-red-500/40\"\n : \"bg-[#252530] text-slate-200 hover:text-white border border-[#373745]\"\n }`}\n >\n {isPlaying ? <Square className=\"w-3.5 h-3.5\" /> : <Play className=\"w-3.5 h-3.5\" />}\n <span>{isPlaying ? \"Stop\" : \"Preview\"}</span>\n </button>\n\n <button\n type=\"button\"\n onClick={() => {\n setAmbientSound(sound.id);\n if (sound.id !== \"none\") {\n startAmbient(sound.id, storeState.ambientVolume);\n setPlayingAudio(sound.id);\n } else {\n stopAmbient();\n setPlayingAudio(null);\n }\n }}\n disabled={isSelected}\n className={`flex-1 py-1.5 rounded-lg text-xs font-semibold cursor-pointer transition-colors ${\n isSelected\n ? \"bg-amber-500/20 text-amber-300 border border-amber-500/40 opacity-70\"\n : \"bg-[#007acc] hover:bg-[#0088e0] text-white font-bold\"\n }`}\n >\n {isSelected ? \"Active\" : \"Activate\"}\n </button>\n </div>\n </div>\n );\n })}\n </div>\n </section>\n )}\n\n {/* TAB: DONATE VIETQR VAULT */}\n {activeTab === \"donate\" && (\n <section className=\"space-y-6\">\n <div className=\"p-6 rounded-2xl bg-gradient-to-r from-amber-500/10 via-[#222028] to-[#1a1a24] border border-amber-500/30 shadow-xl\">\n <div className=\"max-w-3xl space-y-2\">\n <span className=\"text-xs font-mono font-bold px-2 py-0.5 rounded bg-amber-500/20 text-amber-300 border border-amber-500/40\">\n VIETQR MB BANK\n </span>\n <h2 className=\"text-xl font-bold text-white\">Supporter Vault - Fuel the Developers</h2>\n <p className=\"text-xs text-slate-300 leading-relaxed\">\n AGMon is built independently with high-quality open-source spirit.\n Every donation via VietQR helps support server infrastructure, sustain development, and unlocks all {TOTAL_CATALOG_COUNT} 3D isometric items.\n </p>\n </div>\n </div>\n\n <div className=\"grid grid-cols-1 lg:grid-cols-3 gap-6\">\n {/* Left Column: Tiers Selection */}\n <div className=\"lg:col-span-2 space-y-4\">\n <h3 className=\"text-sm font-bold text-white flex items-center gap-2\">\n <Coffee className=\"w-4 h-4 text-amber-400\" />\n <span>Choose Supporter Tier</span>\n </h3>\n\n <div className=\"grid grid-cols-1 sm:grid-cols-3 gap-3\">\n {DONATE_TIERS.map((tier) => {\n const isSelected = selectedTier.id === tier.id;\n return (\n <div\n key={tier.id}\n onClick={() => setSelectedTier(tier)}\n className={`p-4 rounded-xl border cursor-pointer transition-all flex flex-col justify-between ${\n isSelected\n ? \"bg-[#25222e] border-amber-500 shadow-lg shadow-amber-950/30 ring-1 ring-amber-500\"\n : \"bg-[#1c1c22] border-[#2c2c36] hover:border-slate-500\"\n }`}\n >\n <div>\n <div className=\"flex items-center justify-between mb-2\">\n <span className=\"text-[10px] font-mono px-2 py-0.5 rounded bg-amber-500/20 text-amber-300 font-bold\">\n {tier.tag}\n </span>\n {isSelected && <Check className=\"w-4 h-4 text-amber-400\" />}\n </div>\n <h4 className=\"font-bold text-white text-sm\">{tier.title}</h4>\n <div className=\"text-lg font-bold text-amber-400 font-mono mt-1\">\n {tier.amount.toLocaleString(\"vi-VN\")} VND\n </div>\n <p className=\"text-[11px] text-slate-400 mt-2 leading-relaxed\">\n {tier.description}\n </p>\n </div>\n </div>\n );\n })}\n </div>\n\n {/* Activation Code Form */}\n <div className=\"p-4 rounded-xl bg-[#1c1c22] border border-[#2b2b35] space-y-3\">\n <div className=\"flex items-center gap-2\">\n <Key className=\"w-4 h-4 text-cyan-400\" />\n <h4 className=\"text-xs font-bold text-white\">Have an activation key (Supporter Key)?</h4>\n </div>\n <p className=\"text-[11px] text-slate-400\">\n Enter your activation key or try the demo key <code className=\"text-cyan-300 bg-[#252530] px-1.5 py-0.5 rounded font-mono font-bold\">AGMON-COFFEE-VIP</code> to unlock immediately.\n </p>\n\n <form onSubmit={handleUnlockCode} className=\"flex gap-2\">\n <input\n type=\"text\"\n placeholder=\"e.g. AGMON-COFFEE-VIP\"\n value={unlockCodeInput}\n onChange={(e) => setUnlockCodeInput(e.target.value)}\n className=\"flex-1 px-3 py-2 bg-[#141418] border border-[#33333d] rounded-lg text-xs text-white uppercase font-mono placeholder-slate-500 focus:outline-none focus:border-cyan-500\"\n />\n <button\n type=\"submit\"\n className=\"px-4 py-2 bg-gradient-to-r from-cyan-600 to-blue-600 hover:from-cyan-500 hover:to-blue-500 text-white font-bold text-xs rounded-lg cursor-pointer transition-all shadow-md\"\n >\n Activate\n </button>\n </form>\n\n {unlockFeedback && (\n <div\n className={`p-2.5 rounded-lg text-xs flex items-center gap-2 ${\n unlockFeedback.success\n ? \"bg-emerald-500/20 text-emerald-300 border border-emerald-500/40\"\n : \"bg-red-500/20 text-red-300 border border-red-500/40\"\n }`}\n >\n {unlockFeedback.success ? (\n <Check className=\"w-4 h-4 shrink-0 text-emerald-400\" />\n ) : (\n <AlertCircle className=\"w-4 h-4 shrink-0 text-red-400\" />\n )}\n <span>{unlockFeedback.message}</span>\n </div>\n )}\n </div>\n </div>\n\n {/* Right Column: Dynamic VietQR Card */}\n <div className=\"p-5 rounded-2xl bg-[#1c1c24] border border-amber-500/30 flex flex-col items-center justify-between text-center space-y-4 shadow-xl\">\n <div className=\"space-y-1\">\n <span className=\"text-[10px] font-mono uppercase tracking-wider text-amber-400 font-bold\">\n Scan to Transfer\n </span>\n <h4 className=\"text-base font-bold text-white\">MB Bank (Military Bank)</h4>\n <p className=\"text-xs text-slate-400\">Open any banking app to scan this VietQR code</p>\n </div>\n\n {/* QR Code Container */}\n <div className=\"p-3 bg-white rounded-2xl shadow-xl flex items-center justify-center\">\n <img\n src={vietQrUrl}\n alt=\"VietQR MB Bank Donation\"\n className=\"w-48 h-48 sm:w-56 sm:h-56 object-contain rounded-lg\"\n />\n </div>\n\n {/* Account Info Box (No account name displayed per user instruction) */}\n <div className=\"w-full space-y-2\">\n <div className=\"p-2.5 rounded-xl bg-[#141418] border border-[#2b2b35] flex items-center justify-between text-xs\">\n <span className=\"text-slate-400\">Account Number:</span>\n <div className=\"flex items-center gap-2\">\n <span className=\"font-mono font-bold text-amber-300 text-sm\">{VIETQR_CONFIG.accountNo}</span>\n <button\n type=\"button\"\n onClick={handleCopyAccount}\n className=\"p-1 rounded hover:bg-[#272733] text-slate-400 hover:text-white transition-colors cursor-pointer\"\n title=\"Copy account number\"\n >\n {copiedBank ? <Check className=\"w-3.5 h-3.5 text-emerald-400\" /> : <Copy className=\"w-3.5 h-3.5\" />}\n </button>\n </div>\n </div>\n\n <div className=\"p-2.5 rounded-xl bg-[#141418] border border-[#2b2b35] flex items-center justify-between text-xs\">\n <span className=\"text-slate-400\">Amount:</span>\n <span className=\"font-mono font-bold text-emerald-400 text-sm\">\n {selectedTier.amount.toLocaleString(\"vi-VN\")} VND\n </span>\n </div>\n </div>\n </div>\n </div>\n </section>\n )}\n\n {/* TAB: ITEM GRID (ALL, THEMES, SKINS, PROPS, PETS, AURAS, TROPHIES) */}\n {activeTab !== \"ambient\" && activeTab !== \"donate\" && activeTab !== \"fitting_room\" && (\n <section className=\"space-y-4\">\n {/* Items Grid */}\n <div className={gridClasses}>\n {paginatedItems.map((item) => {\n const isEquipped = isItemEquipped(item);\n const isUnlocked = isItemUnlocked(item);\n\n return (\n <div\n key={item.id}\n className={`p-3 rounded-2xl border flex flex-col justify-between transition-all group bg-[#1d1d22] hover:bg-[#22222a] ${\n isEquipped\n ? \"border-[#007acc] shadow-lg shadow-[#007acc]/15 ring-1 ring-[#007acc]\"\n : \"border-[#2c2c36] hover:border-cyan-500/50 hover:shadow-md hover:shadow-cyan-950/20\"\n }`}\n >\n {/* 3D Isometric Art Preview */}\n <div className=\"mb-2.5\">\n <Item3DPreview item={item} />\n </div>\n\n {/* Title and details */}\n <div className=\"space-y-1 flex-1\">\n <div className=\"flex items-center justify-between gap-1\">\n <span className=\"font-bold text-white text-xs truncate\">\n {item.name}\n </span>\n <span\n className={`text-[9px] font-mono uppercase px-1.5 py-0.5 rounded font-bold border shrink-0 ${\n item.tier === \"free\"\n ? \"bg-emerald-500/20 text-emerald-300 border-emerald-500/40\"\n : item.tier === \"vip\"\n ? \"bg-purple-500/20 text-purple-300 border-purple-500/40\"\n : \"bg-amber-500/20 text-amber-300 border-amber-500/40\"\n }`}\n >\n {item.tier}\n </span>\n </div>\n <p className=\"text-slate-400 text-[11px] leading-relaxed line-clamp-2\">\n {item.description}\n </p>\n </div>\n\n {/* Equip Action Bar */}\n <div className=\"mt-3 pt-2.5 border-t border-[#2a2a34] flex items-center justify-between\">\n <div className=\"flex items-center gap-1.5\">\n <span className=\"text-[10px] text-slate-500 uppercase font-mono font-bold\">\n {isEquipped ? \"EQUIPPED\" : isUnlocked ? \"UNLOCKED\" : \"LOCKED\"}\n </span>\n <button\n type=\"button\"\n onClick={() => {\n if (item.category === \"skins\") equipSkin(item.id);\n else if (item.category === \"pets\") equipPet(item.id);\n else if (item.category === \"props\") toggleProp(item.id);\n else if (item.category === \"auras\") equipAura(item.id);\n else if (item.category === \"themes\") equipOfficeTheme(item.id);\n setActiveTab(\"fitting_room\");\n }}\n className=\"p-1 rounded hover:bg-cyan-500/20 text-slate-400 hover:text-cyan-300 transition-colors cursor-pointer\"\n title=\"Test in 3D Fitting Room\"\n >\n <Sparkles className=\"w-3.5 h-3.5\" />\n </button>\n </div>\n\n {isUnlocked ? (\n <button\n type=\"button\"\n onClick={() => handleItemEquipToggle(item)}\n disabled={isEquipped && item.category !== \"props\"}\n className={`px-3 py-1 rounded-lg text-xs font-semibold transition-all cursor-pointer ${\n isEquipped\n ? item.category === \"props\"\n ? \"bg-red-500/20 text-red-300 border border-red-500/40 hover:bg-red-500/30\"\n : \"bg-[#007acc]/20 text-[#007acc] border border-[#007acc]/30 opacity-70 cursor-default\"\n : \"bg-[#007acc] hover:bg-[#0088e0] text-white shadow-sm\"\n }`}\n >\n {isEquipped\n ? item.category === \"props\"\n ? \"Remove\"\n : \"Equipped\"\n : item.category === \"props\"\n ? \"Place on Desk\"\n : item.category === \"themes\"\n ? \"Apply Floor\"\n : \"Equip\"}\n </button>\n ) : (\n <button\n type=\"button\"\n onClick={() => handleUnlockTier(item.tier)}\n className=\"px-2.5 py-1 bg-[#252530] hover:bg-amber-500/20 hover:border-amber-500/40 border border-[#373748] text-amber-300 rounded-lg text-[11px] font-semibold flex items-center gap-1 cursor-pointer transition-colors\"\n >\n <Lock className=\"w-3 h-3 text-amber-400\" />\n <span>Unlock</span>\n </button>\n )}\n </div>\n </div>\n );\n })}\n </div>\n\n {/* Empty State */}\n {paginatedItems.length === 0 && (\n <div className=\"text-center py-16 space-y-3\">\n <div className=\"w-12 h-12 rounded-full bg-[#202028] border border-[#33333f] flex items-center justify-center text-slate-500 mx-auto\">\n <Search className=\"w-6 h-6\" />\n </div>\n <h4 className=\"text-sm font-bold text-white\">No matching items found</h4>\n <p className=\"text-xs text-slate-400 max-w-sm mx-auto\">\n No items matched &quot;{searchQuery}&quot; or the selected filters.\n </p>\n <button\n type=\"button\"\n onClick={() => {\n setSearchQuery(\"\");\n setTierFilter(\"all\");\n }}\n className=\"px-3 py-1.5 rounded-lg bg-[#252530] border border-[#373746] text-xs text-slate-300 hover:text-white\"\n >\n Clear filters\n </button>\n </div>\n )}\n\n {/* Pagination Controls */}\n {totalPages > 1 && (\n <div className=\"pt-4 border-t border-[#26262b] flex flex-wrap items-center justify-between gap-3 text-xs\">\n <span className=\"text-slate-400 font-mono text-[11px]\">\n Showing {(currentPage - 1) * ITEMS_PER_PAGE + 1} -{\" \"}\n {Math.min(currentPage * ITEMS_PER_PAGE, totalItemsCount)} of {totalItemsCount} items\n </span>\n\n <div className=\"flex items-center gap-1.5\">\n <button\n type=\"button\"\n onClick={() => setCurrentPage((p) => Math.max(1, p - 1))}\n disabled={currentPage === 1}\n className=\"px-2.5 py-1.5 rounded-lg bg-[#202026] border border-[#2f2f38] text-slate-300 hover:text-white disabled:opacity-40 disabled:cursor-not-allowed flex items-center gap-1\"\n >\n <ChevronLeft className=\"w-3.5 h-3.5\" />\n <span>Prev</span>\n </button>\n\n {/* Numeric page buttons */}\n {Array.from({ length: Math.min(5, totalPages) }, (_, i) => {\n let pageNum = i + 1;\n if (totalPages > 5 && currentPage > 3) {\n pageNum = currentPage - 3 + i;\n if (pageNum > totalPages) pageNum = totalPages - (4 - i);\n }\n return (\n <button\n key={pageNum}\n onClick={() => setCurrentPage(pageNum)}\n className={`w-7 h-7 rounded-lg text-xs font-mono font-bold transition-colors ${\n currentPage === pageNum\n ? \"bg-[#007acc] text-white\"\n : \"bg-[#202026] text-slate-400 hover:text-white border border-[#2f2f38]\"\n }`}\n >\n {pageNum}\n </button>\n );\n })}\n\n {totalPages > 5 && currentPage < totalPages - 2 && (\n <span className=\"text-slate-500 px-1\">...</span>\n )}\n\n <button\n type=\"button\"\n onClick={() => setCurrentPage((p) => Math.min(totalPages, p + 1))}\n disabled={currentPage === totalPages}\n className=\"px-2.5 py-1.5 rounded-lg bg-[#202026] border border-[#2f2f38] text-slate-300 hover:text-white disabled:opacity-40 disabled:cursor-not-allowed flex items-center gap-1\"\n >\n <span>Next</span>\n <ChevronRight className=\"w-3.5 h-3.5\" />\n </button>\n </div>\n </div>\n )}\n </section>\n )}\n\n </div>\n </div>\n </main>\n </div>\n );\n}","import createLucideIcon from '../createLucideIcon';\nimport type { LucideIconNode, LucideIconData } from '../types';\n\nexport const __iconData: LucideIconData = {\n name: 'shuffle',\n size: 24,\n node: [\n ['path', { d: 'm18 14 4 4-4 4', key: '10pe0f' }],\n ['path', { d: 'm18 2 4 4-4 4', key: 'pucp1d' }],\n ['path', { d: 'M2 18h1.973a4 4 0 0 0 3.3-1.7l5.454-8.6a4 4 0 0 1 3.3-1.7H22', key: '1ailkh' }],\n ['path', { d: 'M2 6h1.972a4 4 0 0 1 3.6 2.2', key: 'km57vx' }],\n ['path', { d: 'M22 18h-6.041a4 4 0 0 1-3.3-1.8l-.359-.45', key: 'os18l9' }],\n ],\n};\n\n/**\n * @deprecated Access `__iconData` instead.\n */\nexport const __iconNode: LucideIconNode[] = __iconData.node;\n\n/**\n * @component @name Shuffle\n * @description Lucide SVG icon component, renders SVG Element with children.\n *\n * @preview ![img](data:image/svg+xml;base64,PHN2ZyAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogIHdpZHRoPSIyNCIKICBoZWlnaHQ9IjI0IgogIHZpZXdCb3g9IjAgMCAyNCAyNCIKICBmaWxsPSJub25lIgogIHN0cm9rZT0iIzAwMCIgc3R5bGU9ImJhY2tncm91bmQtY29sb3I6ICNmZmY7IGJvcmRlci1yYWRpdXM6IDJweCIKICBzdHJva2Utd2lkdGg9IjIiCiAgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIgogIHN0cm9rZS1saW5lam9pbj0icm91bmQiCj4KICA8cGF0aCBkPSJtMTggMTQgNCA0LTQgNCIgLz4KICA8cGF0aCBkPSJtMTggMiA0IDQtNCA0IiAvPgogIDxwYXRoIGQ9Ik0yIDE4aDEuOTczYTQgNCAwIDAgMCAzLjMtMS43bDUuNDU0LTguNmE0IDQgMCAwIDEgMy4zLTEuN0gyMiIgLz4KICA8cGF0aCBkPSJNMiA2aDEuOTcyYTQgNCAwIDAgMSAzLjYgMi4yIiAvPgogIDxwYXRoIGQ9Ik0yMiAxOGgtNi4wNDFhNCA0IDAgMCAxLTMuMy0xLjhsLS4zNTktLjQ1IiAvPgo8L3N2Zz4K) - https://lucide.dev/icons/shuffle\n * @see https://lucide.dev/guide/packages/lucide-react - Documentation\n *\n * @param {Object} props - Lucide icons props and any valid SVG attribute\n * @returns {JSX.Element} JSX Element\n *\n */\nconst Shuffle = createLucideIcon(__iconData);\n\nexport default Shuffle;\n","\"use client\";\n\n/**\n * Web Audio Ambient Soundscape Generator\n * Generates procedural ambient audio (rain, lo-fi coffee shop) using the Web Audio API.\n * Zero external audio files, 100% offline, minimal CPU overhead.\n */\n\nlet audioCtx = null;\nlet masterGain = null;\nlet currentSourceNodes = [];\nlet ambientTimer = null;\nlet currentType = \"none\";\n\nfunction getAudioContext() {\n if (typeof window === \"undefined\") return null;\n const AudioContextClass = window.AudioContext || window.webkitAudioContext;\n if (!AudioContextClass) return null;\n\n if (!audioCtx) {\n audioCtx = new AudioContextClass();\n masterGain = audioCtx.createGain();\n masterGain.gain.setValueAtTime(0.35, audioCtx.currentTime);\n masterGain.connect(audioCtx.destination);\n }\n\n if (audioCtx.state === \"suspended\") {\n audioCtx.resume().catch(() => {});\n }\n\n return audioCtx;\n}\n\n/**\n * Creates a pink noise buffer (repeating loop)\n */\nfunction createPinkNoiseBuffer(ctx, duration = 4) {\n const bufferSize = ctx.sampleRate * duration;\n const buffer = ctx.createBuffer(1, bufferSize, ctx.sampleRate);\n const data = buffer.getChannelData(0);\n\n let b0 = 0, b1 = 0, b2 = 0, b3 = 0, b4 = 0, b5 = 0, b6 = 0;\n for (let i = 0; i < bufferSize; i++) {\n const white = Math.random() * 2 - 1;\n b0 = 0.99886 * b0 + white * 0.0555179;\n b1 = 0.99332 * b1 + white * 0.0750759;\n b2 = 0.96900 * b2 + white * 0.1538520;\n b3 = 0.86650 * b3 + white * 0.3104856;\n b4 = 0.55000 * b4 + white * 0.5329522;\n b5 = -0.7616 * b5 - white * 0.0168980;\n data[i] = (b0 + b1 + b2 + b3 + b4 + b5 + b6 + white * 0.5362) * 0.06;\n b6 = white * 0.115926;\n }\n return buffer;\n}\n\n/**\n * Starts gentle rain ambient audio\n */\nfunction playRain(ctx) {\n const noiseBuffer = createPinkNoiseBuffer(ctx, 4);\n const noiseSource = ctx.createBufferSource();\n noiseSource.buffer = noiseBuffer;\n noiseSource.loop = true;\n\n // Lowpass filter for soft rain timbre\n const filter = ctx.createBiquadFilter();\n filter.type = \"lowpass\";\n filter.frequency.setValueAtTime(1100, ctx.currentTime);\n\n const gain = ctx.createGain();\n gain.gain.setValueAtTime(0.7, ctx.currentTime);\n\n noiseSource.connect(filter);\n filter.connect(gain);\n gain.connect(masterGain);\n\n noiseSource.start();\n currentSourceNodes.push(noiseSource, gain);\n\n // Intermittent raindrop accents\n const dropInterval = setInterval(() => {\n if (currentType !== \"rain\" || !audioCtx) return;\n try {\n const osc = ctx.createOscillator();\n const dropGain = ctx.createGain();\n const now = ctx.currentTime;\n\n osc.type = \"sine\";\n osc.frequency.setValueAtTime(450 + Math.random() * 400, now);\n osc.frequency.exponentialRampToValueAtTime(120, now + 0.08);\n\n dropGain.gain.setValueAtTime(0.04 * Math.random(), now);\n dropGain.gain.exponentialRampToValueAtTime(0.0001, now + 0.08);\n\n osc.connect(dropGain);\n dropGain.connect(masterGain);\n\n osc.start(now);\n osc.stop(now + 0.09);\n } catch {}\n }, 350);\n\n currentSourceNodes.push({ stop: () => clearInterval(dropInterval) });\n}\n\n/**\n * Starts Lo-Fi Coffee Shop ambient soundscape\n */\nfunction playCoffeeShop(ctx) {\n const noiseBuffer = createPinkNoiseBuffer(ctx, 5);\n const noiseSource = ctx.createBufferSource();\n noiseSource.buffer = noiseBuffer;\n noiseSource.loop = true;\n\n // Lowpass filter creates warm coffee shop background rumble\n const filter = ctx.createBiquadFilter();\n filter.type = \"lowpass\";\n filter.frequency.setValueAtTime(450, ctx.currentTime);\n\n const gain = ctx.createGain();\n gain.gain.setValueAtTime(0.4, ctx.currentTime);\n\n noiseSource.connect(filter);\n filter.connect(gain);\n gain.connect(masterGain);\n\n noiseSource.start();\n currentSourceNodes.push(noiseSource, gain);\n\n // Subtle ceramic mug and utensil clinks\n const clinkInterval = setInterval(() => {\n if (currentType !== \"coffee_shop\" || !audioCtx) return;\n if (Math.random() < 0.45) {\n try {\n const osc = ctx.createOscillator();\n const clinkGain = ctx.createGain();\n const now = ctx.currentTime;\n\n osc.type = \"sine\";\n osc.frequency.setValueAtTime(2200 + Math.random() * 800, now);\n\n clinkGain.gain.setValueAtTime(0.025, now);\n clinkGain.gain.exponentialRampToValueAtTime(0.0001, now + 0.15);\n\n osc.connect(clinkGain);\n clinkGain.connect(masterGain);\n\n osc.start(now);\n osc.stop(now + 0.16);\n } catch {}\n }\n }, 2200);\n\n currentSourceNodes.push({ stop: () => clearInterval(clinkInterval) });\n}\n\n/**\n * Stops all active ambient sound sources\n */\nexport function stopAmbient() {\n currentType = \"none\";\n if (ambientTimer) {\n clearTimeout(ambientTimer);\n ambientTimer = null;\n }\n\n currentSourceNodes.forEach((node) => {\n try {\n if (typeof node.stop === \"function\") node.stop();\n if (typeof node.disconnect === \"function\") node.disconnect();\n } catch {}\n });\n currentSourceNodes = [];\n}\n\n/**\n * Adjusts ambient master volume (0.0 to 1.0)\n */\nexport function setAmbientVolume(vol) {\n const ctx = getAudioContext();\n if (ctx && masterGain) {\n const clamped = Math.max(0, Math.min(1, vol));\n masterGain.gain.setValueAtTime(clamped, ctx.currentTime);\n }\n}\n\n/**\n * Starts the specified ambient sound type\n */\nexport function startAmbient(type, volume = 0.35) {\n if (typeof window === \"undefined\") return;\n if (type === currentType && type !== \"none\") {\n setAmbientVolume(volume);\n return;\n }\n\n stopAmbient();\n if (!type || type === \"none\") return;\n\n const ctx = getAudioContext();\n if (!ctx) return;\n\n currentType = type;\n setAmbientVolume(volume);\n\n if (type === \"rain\") {\n playRain(ctx);\n } else if (type === \"coffee_shop\") {\n playCoffeeShop(ctx);\n }\n}\n\n/**\n * Automatically initializes ambient playback from supporter state\n */\nexport function initAmbientSync(supporterState) {\n if (!supporterState) return;\n if (supporterState.ambientSound && supporterState.ambientSound !== \"none\") {\n startAmbient(supporterState.ambientSound, supporterState.ambientVolume ?? 0.35);\n } else {\n stopAmbient();\n }\n}\n","\"use client\";\n\nimport React, { useMemo } from \"react\";\nimport { getItemById } from \"@/lib/catalog/index.js\";\n\n/**\n * High-Fidelity 3D Isometric Vector Renderer Engine for 1000 Catalog Items.\n * Features:\n * - 3D Isometric projection with Top, Left, Right directional shading\n * - Emissive neon glow filters & ambient occlusion contact shadows\n * - Specular edge highlights & metallic bevels\n * - Micro-details: status LEDs, panel lines, circuit traces, gradient refractions\n * - Scaled Chibi Cyber Agent mockup in 3D perspective\n */\n\nexport function Item3DPreview({ item, itemId, className = \"w-24 h-24\" }) {\n const targetItem = useMemo(() => {\n if (item) return item;\n if (itemId) return getItemById(itemId);\n return null;\n }, [item, itemId]);\n\n if (!targetItem) {\n return (\n <div className=\"w-full h-28 rounded-xl bg-[#18181c] border border-[#2b2b34] flex items-center justify-center text-slate-500 font-mono text-xs\">\n ITEM NOT FOUND\n </div>\n );\n }\n\n const itemAccent = targetItem.color || targetItem.palette?.accentColor || \"#00f0ff\";\n const { id, name, category, archetype, color = itemAccent, secondaryColor = \"#111827\", rarity = \"rare\" } = targetItem;\n const filterId = `glow-${id}`;\n const gradId = `grad-${id}`;\n\n return (\n <div className=\"w-full h-28 sm:h-32 rounded-xl bg-gradient-to-b from-[#1c1c24] to-[#0e0e14] border border-[#2a2a36] hover:border-cyan-400/80 transition-all duration-300 flex items-center justify-center relative overflow-hidden group shadow-lg\">\n {/* Background Cybernetic Ambient Radial Glow */}\n <div\n className=\"absolute inset-0 opacity-40 group-hover:opacity-70 transition-opacity pointer-events-none\"\n style={{\n background: `radial-gradient(circle at 50% 50%, ${color}25 0%, transparent 70%)`,\n }}\n />\n\n {/* SVG Canvas (100x85 isometric viewport) */}\n <svg\n viewBox=\"0 0 100 85\"\n className={`${className} relative z-10 transition-transform duration-300 group-hover:scale-105 select-none`}\n style={{ filter: `drop-shadow(0 6px 14px ${color}40)` }}\n >\n <defs>\n {/* 3D Directional Lighting Gradients */}\n <linearGradient id={`${gradId}-top`} x1=\"0%\" y1=\"0%\" x2=\"100%\" y2=\"100%\">\n <stop offset=\"0%\" stopColor=\"#ffffff\" stopOpacity=\"0.8\" />\n <stop offset=\"30%\" stopColor={color} />\n <stop offset=\"100%\" stopColor={secondaryColor} />\n </linearGradient>\n\n <linearGradient id={`${gradId}-left`} x1=\"0%\" y1=\"0%\" x2=\"100%\" y2=\"100%\">\n <stop offset=\"0%\" stopColor={color} />\n <stop offset=\"100%\" stopColor=\"#0a0a14\" />\n </linearGradient>\n\n <linearGradient id={`${gradId}-right`} x1=\"0%\" y1=\"0%\" x2=\"100%\" y2=\"100%\">\n <stop offset=\"0%\" stopColor={color} stopOpacity=\"0.7\" />\n <stop offset=\"100%\" stopColor=\"#05050a\" />\n </linearGradient>\n\n {/* Emissive Neon Glow Filter */}\n <filter id={filterId} x=\"-20%\" y=\"-20%\" width=\"140%\" height=\"140%\">\n <feGaussianBlur stdDeviation=\"2\" result=\"blur\" />\n <feComposite in=\"SourceGraphic\" in2=\"blur\" operator=\"over\" />\n </filter>\n </defs>\n\n {/* 1. Floor Ambient Occlusion Shadow */}\n <ellipse cx=\"50\" cy=\"72\" rx=\"36\" ry=\"7\" fill=\"#000000\" opacity=\"0.55\" />\n\n {/* 2. Category-Specific 3D Geometry Rendering */}\n {category === \"skins\" && <Render3DSkin item={targetItem} gradId={gradId} />}\n {category === \"props\" && <Render3DProp item={targetItem} gradId={gradId} />}\n {category === \"pets\" && <Render3DPet item={targetItem} gradId={gradId} />}\n {category === \"auras\" && <Render3DAura item={targetItem} gradId={gradId} />}\n {category === \"trophies\" && <Render3DTrophy item={targetItem} gradId={gradId} />}\n {category === \"themes\" && <Render3DTheme item={targetItem} gradId={gradId} />}\n </svg>\n\n {/* Rarity & Name Badge */}\n <span\n className=\"absolute bottom-1.5 right-2 text-[9px] font-mono px-2 py-0.5 rounded-full border uppercase tracking-wider font-bold shadow-sm\"\n style={{\n color: color,\n backgroundColor: `${color}15`,\n borderColor: `${color}40`,\n }}\n >\n {name}\n </span>\n </div>\n );\n}\n\n// ----------------------------------------------------------------------------\n// 3D CHIBI AGENT BASE MOCKUP (Used alongside props, pets, and in skins)\n// ----------------------------------------------------------------------------\nfunction RenderChibiAgent3D({ x = 12, y = 20, scale = 0.85, accentColor = \"#00f0ff\" }) {\n return (\n <g transform={`translate(${x}, ${y}) scale(${scale})`}>\n {/* 3D Contact Shadow */}\n <ellipse cx=\"20\" cy=\"50\" rx=\"14\" ry=\"4\" fill=\"#000000\" opacity=\"0.6\" />\n\n {/* 3D Boots */}\n <rect x=\"10\" y=\"44\" width=\"8\" height=\"5\" rx=\"2\" fill=\"#0d0d17\" stroke=\"#1f1f2e\" strokeWidth=\"1\" />\n <rect x=\"22\" y=\"44\" width=\"8\" height=\"5\" rx=\"2\" fill=\"#0d0d17\" stroke=\"#1f1f2e\" strokeWidth=\"1\" />\n\n {/* 3D Torso Suit */}\n <path d=\"M12,32 L28,32 L26,45 L14,45 Z\" fill=\"#161622\" stroke=\"#2c2c3d\" strokeWidth=\"1.2\" />\n {/* Chest Reactor Core */}\n <circle cx=\"20\" cy=\"38\" r=\"3.5\" fill=\"#070710\" stroke={accentColor} strokeWidth=\"1\" />\n <circle cx=\"20\" cy=\"38\" r=\"1.8\" fill={accentColor} opacity=\"0.9\" />\n\n {/* 3D Shoulder Pauldrons */}\n <polygon points=\"9,31 13,31 11,37\" fill={accentColor} opacity=\"0.8\" />\n <polygon points=\"31,31 27,31 29,37\" fill={accentColor} opacity=\"0.8\" />\n\n {/* 3D Spherical Head / Helmet */}\n <ellipse cx=\"20\" cy=\"20\" rx=\"17\" ry=\"14\" fill=\"#1c1c2b\" stroke={accentColor} strokeWidth=\"1.8\" />\n {/* 3D Helmet Top Highlight */}\n <path d=\"M10,14 Q20,8 30,14\" stroke=\"#ffffff\" strokeWidth=\"1.2\" fill=\"none\" opacity=\"0.5\" strokeLinecap=\"round\" />\n\n {/* Curved 3D Visor */}\n <path d=\"M8,20 Q20,13 32,20 L30,27 Q20,23 10,27 Z\" fill=\"#06060f\" stroke=\"#222233\" strokeWidth=\"1\" />\n {/* Emissive Visor Line */}\n <path d=\"M11,22 Q20,16 29,22\" stroke={accentColor} strokeWidth=\"2.5\" fill=\"none\" strokeLinecap=\"round\" opacity=\"0.95\" />\n <circle cx=\"16\" cy=\"21\" r=\"1\" fill=\"#ffffff\" />\n <circle cx=\"24\" cy=\"21\" r=\"1\" fill=\"#ffffff\" />\n\n {/* 3D Ear Comm Pods */}\n <ellipse cx=\"4\" cy=\"20\" rx=\"2.5\" ry=\"4\" fill=\"#0f0f1c\" stroke={accentColor} strokeWidth=\"1.2\" />\n <ellipse cx=\"36\" cy=\"20\" rx=\"2.5\" ry=\"4\" fill=\"#0f0f1c\" stroke={accentColor} strokeWidth=\"1.2\" />\n </g>\n );\n}\n\n// ----------------------------------------------------------------------------\n// 3D DISTINCT STAFF TORSO SILHOUETTES & UNIFORMS (5 ARCHETYPES)\n// ----------------------------------------------------------------------------\nfunction Render3DStaffTorso({ archetype, color, secondaryColor = \"#111827\", accentColor = \"#ffffff\", gradId }) {\n if (archetype === \"mecha_pilot\") {\n return (\n <g id=\"staff-3d-mecha-pilot\">\n {/* Heavy Armored Exoskeleton Vest */}\n <polygon points=\"26,54 74,54 67,76 33,76\" fill=\"#18181b\" stroke={color} strokeWidth=\"1.6\" />\n {/* Armored Shoulder Pauldrons */}\n <polygon points=\"22,54 30,52 28,62 20,62\" fill=\"#27272a\" stroke={color} strokeWidth=\"1\" />\n <polygon points=\"78,54 70,52 72,62 80,62\" fill=\"#27272a\" stroke={color} strokeWidth=\"1\" />\n {/* Industrial Hazard Chevrons */}\n <polygon points=\"36,57 41,57 37,62 32,62\" fill=\"#eab308\" />\n <polygon points=\"43,57 48,57 44,62 39,62\" fill=\"#18181b\" />\n <polygon points=\"52,57 57,57 53,62 48,62\" fill=\"#eab308\" />\n <polygon points=\"59,57 64,57 60,62 55,62\" fill=\"#18181b\" />\n {/* Heavy Duty Harness Straps */}\n <line x1=\"38\" y1=\"54\" x2=\"39\" y2=\"76\" stroke={color} strokeWidth=\"1.6\" />\n <line x1=\"62\" y1=\"54\" x2=\"61\" y2=\"76\" stroke={color} strokeWidth=\"1.6\" />\n {/* Central Fusion Core with Protective Cage */}\n <circle cx=\"50\" cy=\"67\" r=\"4.5\" fill=\"#09090b\" stroke={color} strokeWidth=\"1.2\" />\n <circle cx=\"50\" cy=\"67\" r=\"2.5\" fill={color} />\n <line x1=\"46\" y1=\"67\" x2=\"54\" y2=\"67\" stroke=\"#ffffff\" strokeWidth=\"0.8\" />\n <line x1=\"50\" y1=\"63\" x2=\"50\" y2=\"71\" stroke=\"#ffffff\" strokeWidth=\"0.8\" />\n </g>\n );\n }\n\n if (archetype === \"stealth_ninja\") {\n return (\n <g id=\"staff-3d-stealth-ninja\">\n {/* Form-Fitting Shinobi Gi */}\n <polygon points=\"31,54 69,54 63,74 37,74\" fill=\"#090d16\" stroke={color} strokeWidth=\"1.4\" />\n {/* Crossed Kimono Collar */}\n <line x1=\"32\" y1=\"54\" x2=\"55\" y2=\"66\" stroke={color} strokeWidth=\"1.8\" strokeLinecap=\"round\" />\n <line x1=\"68\" y1=\"54\" x2=\"48\" y2=\"66\" stroke={color} strokeWidth=\"1.4\" strokeLinecap=\"round\" opacity=\"0.6\" />\n {/* Diagonal Tactical Sash */}\n <polygon points=\"32,55 36,54 62,72 58,74\" fill={color} opacity=\"0.9\" />\n {/* Stealth Kunai Sheath */}\n <rect x=\"44\" y=\"60\" width=\"10\" height=\"3\" rx=\"1\" fill=\"#1e293b\" stroke=\"#ffffff\" strokeWidth=\"0.6\" transform=\"rotate(-30 49 61.5)\" />\n {/* Tied Fabric Obi Waist Sash with Hanging Tails */}\n <rect x=\"36\" y=\"69\" width=\"28\" height=\"5\" rx=\"1.5\" fill=\"#1e1b4b\" stroke={color} strokeWidth=\"1\" />\n <path d=\"M 52 73 Q 54 78 53 82 Q 50 78 52 73\" fill={color} />\n </g>\n );\n }\n\n if (archetype === \"matrix_hacker\") {\n return (\n <g id=\"staff-3d-matrix-hacker\">\n {/* Baggy Slouchy Hoodie Body */}\n <rect x=\"26\" y=\"54\" width=\"48\" height=\"21\" rx=\"6\" fill=\"#121217\" stroke={color} strokeWidth=\"1.5\" />\n {/* Draped Neck Cowl */}\n <path d=\"M 30 53 Q 50 58 70 53 Q 62 61 50 61 Q 38 61 30 53 Z\" fill=\"#1f1f28\" stroke={color} strokeWidth=\"1\" />\n {/* Hanging Drawstrings with Metal Aglets */}\n <path d=\"M 44 59 Q 42 66 45 71\" stroke=\"#ffffff\" strokeWidth=\"1.2\" fill=\"none\" strokeLinecap=\"round\" />\n <rect x=\"43.5\" y=\"70\" width=\"2.5\" height=\"3.5\" rx=\"0.5\" fill={color} />\n <path d=\"M 56 59 Q 58 66 55 71\" stroke=\"#ffffff\" strokeWidth=\"1.2\" fill=\"none\" strokeLinecap=\"round\" />\n <rect x=\"54\" y=\"70\" width=\"2.5\" height=\"3.5\" rx=\"0.5\" fill={color} />\n {/* Kangaroo Front Pouch Pocket */}\n <path d=\"M 35 66 L 65 66 L 62 73 L 38 73 Z\" fill=\"#09090d\" stroke=\"#27272a\" strokeWidth=\"0.8\" />\n <line x1=\"36\" y1=\"66\" x2=\"38\" y2=\"70\" stroke={color} strokeWidth=\"1\" />\n <line x1=\"64\" y1=\"66\" x2=\"62\" y2=\"70\" stroke={color} strokeWidth=\"1\" />\n {/* Glitch Barcode Patch */}\n <g transform=\"translate(56, 60)\">\n <rect x=\"0\" y=\"0\" width=\"8\" height=\"4\" fill=\"#000000\" stroke={accentColor} strokeWidth=\"0.6\" />\n <line x1=\"2\" y1=\"1\" x2=\"2\" y2=\"3\" stroke={color} strokeWidth=\"0.6\" />\n <line x1=\"4\" y1=\"1\" x2=\"4\" y2=\"3\" stroke={color} strokeWidth=\"1\" />\n <line x1=\"6\" y1=\"1\" x2=\"6\" y2=\"3\" stroke={color} strokeWidth=\"0.6\" />\n </g>\n </g>\n );\n }\n\n if (archetype === \"celestial_astro\") {\n return (\n <g id=\"staff-3d-celestial-astro\">\n {/* Streamlined Flight Suit Body */}\n <polygon points=\"28,54 72,54 66,74 34,74\" fill=\"#f1f5f9\" stroke={color} strokeWidth=\"1.4\" />\n {/* Hermetic Neck Ring */}\n <rect x=\"36\" y=\"52\" width=\"28\" height=\"4\" rx=\"1.5\" fill=\"#334155\" stroke={color} strokeWidth=\"1\" />\n {/* Gold Command Rank Epaulets */}\n <rect x=\"24\" y=\"53\" width=\"7\" height=\"4\" rx=\"0.8\" fill=\"#f59e0b\" stroke=\"#78350f\" strokeWidth=\"0.6\" />\n <rect x=\"69\" y=\"53\" width=\"7\" height=\"4\" rx=\"0.8\" fill=\"#f59e0b\" stroke=\"#78350f\" strokeWidth=\"0.6\" />\n {/* Dual Pressure Dials with Conduit */}\n <circle cx=\"44\" cy=\"65\" r=\"3\" fill=\"#0f172a\" stroke={color} strokeWidth=\"1\" />\n <circle cx=\"44\" cy=\"65\" r=\"1.2\" fill=\"#22c55e\" />\n <circle cx=\"56\" cy=\"65\" r=\"3\" fill=\"#0f172a\" stroke={color} strokeWidth=\"1\" />\n <circle cx=\"56\" cy=\"65\" r=\"1.2\" fill=\"#38bdf8\" />\n <path d=\"M 47 65 Q 50 68 53 65\" fill=\"none\" stroke={color} strokeWidth=\"1.2\" />\n {/* Mission Patch Insignia */}\n <polygon points=\"40,58 45,58 42.5,62\" fill={color} stroke=\"#ffffff\" strokeWidth=\"0.6\" />\n <ellipse cx=\"42.5\" cy=\"60\" rx=\"3.5\" ry=\"1.2\" fill=\"none\" stroke=\"#f59e0b\" strokeWidth=\"0.6\" transform=\"rotate(-20 42.5 60)\" />\n </g>\n );\n }\n\n // Default Cyber Suit (Corporate Executive)\n return (\n <g id=\"staff-3d-cyber-suit\">\n <polygon points=\"28,54 72,54 65,74 35,74\" fill={`url(#${gradId}-left)`} stroke={color} strokeWidth=\"1.4\" />\n <polygon points=\"30,54 44,66 38,66\" fill=\"#090d16\" stroke={color} strokeWidth=\"0.8\" />\n <polygon points=\"70,54 56,66 62,66\" fill=\"#090d16\" stroke={color} strokeWidth=\"0.8\" />\n <line x1=\"50\" y1=\"54\" x2=\"50\" y2=\"70\" stroke={color} strokeWidth=\"1.2\" />\n <path d=\"M 46 54 Q 50 63 54 54\" stroke={accentColor} strokeWidth=\"1\" fill=\"none\" opacity=\"0.85\" />\n <rect x=\"46\" y=\"61\" width=\"8\" height=\"10\" rx=\"1\" fill=\"#070a12\" stroke={color} strokeWidth=\"0.8\" />\n <rect x=\"47.5\" y=\"62.5\" width=\"5\" height=\"3\" fill={color} />\n <line x1=\"47.5\" y1=\"67\" x2=\"52.5\" y2=\"67\" stroke=\"#ffffff\" strokeWidth=\"0.6\" />\n <rect x=\"47\" y=\"71\" width=\"6\" height=\"3.5\" rx=\"0.8\" fill=\"#1e293b\" stroke={color} strokeWidth=\"0.8\" />\n </g>\n );\n}\n\n// ----------------------------------------------------------------------------\n// 1. 3D AGENT SKINS (50 CURATED ICONIC MODELS)\n// ----------------------------------------------------------------------------\nfunction Render3DSkin({ item, gradId }) {\n const { name, color, archetype, variant = \"tactical_visor\", secondaryColor = \"#111827\", accentColor = \"#ffffff\" } = item;\n\n let headgear = null;\n\n // 1. CYBER SUIT VARIANTS (10)\n if (variant === \"tactical_visor\") {\n headgear = (\n <g>\n <polygon points=\"40,8 60,8 55,2 45,2\" fill={color} />\n <line x1=\"50\" y1=\"2\" x2=\"50\" y2=\"8\" stroke={accentColor} strokeWidth=\"1.5\" />\n <polygon points=\"18,24 10,12 18,18\" fill={color} />\n <polygon points=\"82,24 90,12 82,18\" fill={color} />\n </g>\n );\n } else if (variant === \"laser_scout\") {\n headgear = (\n <g>\n <circle cx=\"60\" cy=\"34\" r=\"8\" fill=\"none\" stroke={color} strokeWidth=\"1.8\" />\n <line x1=\"60\" y1=\"22\" x2=\"60\" y2=\"46\" stroke={color} strokeWidth=\"1\" strokeDasharray=\"1 2\" />\n <line x1=\"48\" y1=\"34\" x2=\"72\" y2=\"34\" stroke={color} strokeWidth=\"1\" strokeDasharray=\"1 2\" />\n <circle cx=\"60\" cy=\"34\" r=\"2.5\" fill=\"#ff0000\" />\n </g>\n );\n } else if (variant === \"riot_shield\") {\n headgear = (\n <g>\n <rect x=\"22\" y=\"18\" width=\"56\" height=\"10\" rx=\"3\" fill=\"#181824\" stroke={color} strokeWidth=\"1.8\" />\n <circle cx=\"32\" cy=\"23\" r=\"2.5\" fill={accentColor} />\n <circle cx=\"68\" cy=\"23\" r=\"2.5\" fill={accentColor} />\n </g>\n );\n } else if (variant === \"cyber_horns\") {\n headgear = (\n <g>\n <polygon points=\"28,20 16,2 34,14\" fill={color} stroke={secondaryColor} strokeWidth=\"1\" />\n <polygon points=\"72,20 84,2 66,14\" fill={color} stroke={secondaryColor} strokeWidth=\"1\" />\n <line x1=\"30\" y1=\"16\" x2=\"22\" y2=\"6\" stroke={accentColor} strokeWidth=\"1.5\" />\n <line x1=\"70\" y1=\"16\" x2=\"78\" y2=\"6\" stroke={accentColor} strokeWidth=\"1.5\" />\n </g>\n );\n } else if (variant === \"crown_radiator\") {\n headgear = (\n <g fill={color}>\n <polygon points=\"32,18 36,4 42,16\" />\n <polygon points=\"46,14 50,0 54,14\" />\n <polygon points=\"58,16 64,4 68,18\" />\n <circle cx=\"50\" cy=\"18\" r=\"3\" fill={accentColor} />\n </g>\n );\n } else if (variant === \"gas_respirator\") {\n headgear = (\n <g>\n <circle cx=\"34\" cy=\"46\" r=\"7\" fill=\"#181824\" stroke={color} strokeWidth=\"1.6\" />\n <circle cx=\"66\" cy=\"46\" r=\"7\" fill=\"#181824\" stroke={color} strokeWidth=\"1.6\" />\n <circle cx=\"34\" cy=\"46\" r=\"3\" fill={color} />\n <circle cx=\"66\" cy=\"46\" r=\"3\" fill={color} />\n <rect x=\"42\" y=\"44\" width=\"16\" height=\"6\" rx=\"2\" fill=\"#0f0f18\" stroke={color} strokeWidth=\"1\" />\n </g>\n );\n } else if (variant === \"prism_goggles\") {\n headgear = (\n <g>\n <polygon points=\"30,28 40,24 48,28 48,40 40,44 30,40\" fill=\"#0c4a6e\" stroke={color} strokeWidth=\"1.8\" />\n <polygon points=\"52,28 60,24 70,28 70,40 60,44 52,40\" fill=\"#0c4a6e\" stroke={color} strokeWidth=\"1.8\" />\n <circle cx=\"39\" cy=\"34\" r=\"3\" fill={accentColor} />\n <circle cx=\"61\" cy=\"34\" r=\"3\" fill={accentColor} />\n </g>\n );\n } else if (variant === \"samurai_crest\") {\n headgear = (\n <g>\n <path d=\"M 24 18 Q 50 -6 76 18 Q 50 6 24 18 Z\" fill={color} stroke={secondaryColor} strokeWidth=\"1.2\" />\n <circle cx=\"50\" cy=\"10\" r=\"3.5\" fill={accentColor} />\n </g>\n );\n } else if (variant === \"overdrive_vents\") {\n headgear = (\n <g strokeLinecap=\"round\">\n <line x1=\"28\" y1=\"16\" x2=\"16\" y2=\"2\" stroke={color} strokeWidth=\"3.5\" />\n <line x1=\"72\" y1=\"16\" x2=\"84\" y2=\"2\" stroke={color} strokeWidth=\"3.5\" />\n <line x1=\"34\" y1=\"18\" x2=\"26\" y2=\"6\" stroke={accentColor} strokeWidth=\"2\" />\n <line x1=\"66\" y1=\"18\" x2=\"74\" y2=\"6\" stroke={accentColor} strokeWidth=\"2\" />\n </g>\n );\n } else if (variant === \"holo_shroud\") {\n headgear = (\n <g>\n <ellipse cx=\"50\" cy=\"18\" rx=\"34\" ry=\"14\" fill=\"none\" stroke={color} strokeWidth=\"1.8\" strokeDasharray=\"5 3\" />\n <circle cx=\"50\" cy=\"4\" r=\"4\" fill={accentColor} />\n </g>\n );\n }\n\n // 2. MECHA PILOT VARIANTS (10)\n else if (variant === \"v_fin\") {\n headgear = (\n <g>\n <polygon points=\"20,-2 26,-6 50,14 74,-6 80,-2 50,20\" fill={color} stroke={secondaryColor} strokeWidth=\"1.2\" />\n <polygon points=\"46,18 50,10 54,18 50,22\" fill=\"#ef4444\" />\n </g>\n );\n } else if (variant === \"blast_shield\") {\n headgear = (\n <g>\n <rect x=\"22\" y=\"22\" width=\"56\" height=\"18\" rx=\"3\" fill=\"#0f172a\" stroke={color} strokeWidth=\"2\" />\n <circle cx=\"28\" cy=\"8\" r=\"4\" fill=\"#fde047\" stroke={color} strokeWidth=\"1.5\" />\n <circle cx=\"72\" cy=\"8\" r=\"4\" fill=\"#fde047\" stroke={color} strokeWidth=\"1.5\" />\n <rect x=\"8\" y=\"48\" width=\"16\" height=\"12\" rx=\"3\" fill=\"#1a1a26\" stroke={color} strokeWidth=\"1.5\" />\n <rect x=\"76\" y=\"48\" width=\"16\" height=\"12\" rx=\"3\" fill=\"#1a1a26\" stroke={color} strokeWidth=\"1.5\" />\n </g>\n );\n } else if (variant === \"eva_horn\") {\n headgear = (\n <g>\n <polygon points=\"47,18 50,-14 53,18\" fill={color} stroke={secondaryColor} strokeWidth=\"1\" />\n <rect x=\"12\" y=\"32\" width=\"6\" height=\"24\" rx=\"2\" fill={color} stroke={secondaryColor} strokeWidth=\"1\" />\n <rect x=\"82\" y=\"32\" width=\"6\" height=\"24\" rx=\"2\" fill={color} stroke={secondaryColor} strokeWidth=\"1\" />\n </g>\n );\n } else if (variant === \"cage_grille\") {\n headgear = (\n <g>\n <rect x=\"30\" y=\"30\" width=\"40\" height=\"20\" rx=\"3\" fill=\"#18181b\" stroke={color} strokeWidth=\"1.8\" />\n <line x1=\"38\" y1=\"30\" x2=\"38\" y2=\"50\" stroke={color} strokeWidth=\"1.5\" />\n <line x1=\"46\" y1=\"30\" x2=\"46\" y2=\"50\" stroke={color} strokeWidth=\"1.5\" />\n <line x1=\"54\" y1=\"30\" x2=\"54\" y2=\"50\" stroke={color} strokeWidth=\"1.5\" />\n <line x1=\"62\" y1=\"30\" x2=\"62\" y2=\"50\" stroke={color} strokeWidth=\"1.5\" />\n <rect x=\"22\" y=\"-2\" width=\"6\" height=\"22\" rx=\"1\" fill=\"#27272a\" stroke={color} strokeWidth=\"1\" />\n <rect x=\"72\" y=\"-2\" width=\"6\" height=\"22\" rx=\"1\" fill=\"#27272a\" stroke={color} strokeWidth=\"1\" />\n </g>\n );\n } else if (variant === \"missile_pod\") {\n headgear = (\n <g>\n <rect x=\"6\" y=\"38\" width=\"14\" height=\"18\" rx=\"3\" fill=\"#1c1917\" stroke={color} strokeWidth=\"1.5\" />\n <circle cx=\"13\" cy=\"44\" r=\"2\" fill=\"#ef4444\" />\n <circle cx=\"13\" cy=\"50\" r=\"2\" fill=\"#ef4444\" />\n <rect x=\"80\" y=\"38\" width=\"14\" height=\"18\" rx=\"3\" fill=\"#1c1917\" stroke={color} strokeWidth=\"1.5\" />\n <circle cx=\"87\" cy=\"44\" r=\"2\" fill=\"#ef4444\" />\n <circle cx=\"87\" cy=\"50\" r=\"2\" fill=\"#ef4444\" />\n </g>\n );\n } else if (variant === \"quad_array\") {\n headgear = (\n <g stroke={color} strokeWidth=\"2\">\n <line x1=\"24\" y1=\"18\" x2=\"16\" y2=\"-4\" />\n <line x1=\"36\" y1=\"14\" x2=\"32\" y2=\"-8\" />\n <line x1=\"64\" y1=\"14\" x2=\"68\" y2=\"-8\" />\n <line x1=\"76\" y1=\"18\" x2=\"84\" y2=\"-4\" />\n <circle cx=\"16\" cy=\"-4\" r=\"2.5\" fill={accentColor} stroke=\"none\" />\n <circle cx=\"32\" cy=\"-8\" r=\"2.5\" fill={accentColor} stroke=\"none\" />\n <circle cx=\"68\" cy=\"-8\" r=\"2.5\" fill={accentColor} stroke=\"none\" />\n <circle cx=\"84\" cy=\"-4\" r=\"2.5\" fill={accentColor} stroke=\"none\" />\n </g>\n );\n } else if (variant === \"halo_shield\") {\n headgear = (\n <g>\n <polygon points=\"6,44 14,38 22,44 22,54 14,60 6,54\" fill=\"#064e3b\" stroke={color} strokeWidth=\"1.8\" />\n <polygon points=\"78,44 86,38 94,44 94,54 86,60 78,54\" fill=\"#064e3b\" stroke={color} strokeWidth=\"1.8\" />\n </g>\n );\n } else if (variant === \"ram_horns\") {\n headgear = (\n <g>\n <path d=\"M 28 16 C 6 2, 8 -16, 28 -10 C 20 -4, 20 8, 34 16 Z\" fill={color} stroke={secondaryColor} strokeWidth=\"1.2\" />\n <path d=\"M 72 16 C 94 2, 92 -16, 72 -10 C 80 -4, 80 8, 66 16 Z\" fill={color} stroke={secondaryColor} strokeWidth=\"1.2\" />\n </g>\n );\n } else if (variant === \"radar_dish\") {\n headgear = (\n <g>\n <ellipse cx=\"20\" cy=\"2\" rx=\"9\" ry=\"16\" fill=\"#18181b\" stroke={color} strokeWidth=\"2\" transform=\"rotate(-25 20 2)\" />\n <circle cx=\"20\" cy=\"2\" r=\"3\" fill={accentColor} />\n </g>\n );\n } else if (variant === \"hyper_wings\") {\n headgear = (\n <g>\n <polygon points=\"20,44 -2,22 10,54\" fill={color} stroke={secondaryColor} strokeWidth=\"1.5\" />\n <polygon points=\"80,44 102,22 90,54\" fill={color} stroke={secondaryColor} strokeWidth=\"1.5\" />\n </g>\n );\n }\n\n // 3. STEALTH NINJA VARIANTS (10)\n else if (variant === \"flowing_headband\") {\n headgear = (\n <g>\n <line x1=\"18\" y1=\"52\" x2=\"82\" y2=\"12\" stroke=\"#334155\" strokeWidth=\"3\" strokeLinecap=\"round\" />\n <line x1=\"22\" y1=\"48\" x2=\"80\" y2=\"14\" stroke={color} strokeWidth=\"1.5\" strokeLinecap=\"round\" opacity=\"0.8\" />\n <path d=\"M 74 32 Q 90 26 96 42 Q 84 38 72 36\" fill={color} opacity=\"0.9\" />\n </g>\n );\n } else if (variant === \"tactical_cowl\") {\n headgear = (\n <g>\n <path d=\"M 22 24 Q 50 14 78 24 L 74 52 Q 50 60 26 52 Z\" fill=\"#0f172a\" stroke={color} strokeWidth=\"1.6\" opacity=\"0.85\" />\n <circle cx=\"58\" cy=\"34\" r=\"6\" fill=\"none\" stroke=\"#22c55e\" strokeWidth=\"2\" />\n <circle cx=\"58\" cy=\"34\" r=\"2\" fill=\"#22c55e\" />\n </g>\n );\n } else if (variant === \"oni_mask\") {\n headgear = (\n <g>\n <polygon points=\"30,16 18,-4 34,8\" fill=\"#ef4444\" stroke=\"#450a0a\" strokeWidth=\"1.2\" />\n <polygon points=\"70,16 82,-4 66,8\" fill=\"#ef4444\" stroke=\"#450a0a\" strokeWidth=\"1.2\" />\n <path d=\"M 32 44 L 40 50 L 46 44 L 50 48 L 54 44 L 60 50 L 68 44 L 62 56 L 38 56 Z\" fill=\"#ffffff\" stroke={color} strokeWidth=\"1.2\" />\n </g>\n );\n } else if (variant === \"kitsune_ears\") {\n headgear = (\n <g>\n <polygon points=\"22,18 32,-4 42,12\" fill=\"#1e2430\" />\n <polygon points=\"25,16 32,-1 39,12\" fill={color} />\n <polygon points=\"58,12 68,-4 78,18\" fill=\"#1e2430\" />\n <polygon points=\"61,12 68,-1 75,16\" fill={color} />\n <line x1=\"36\" y1=\"42\" x2=\"22\" y2=\"40\" stroke={color} strokeWidth=\"1.5\" />\n <line x1=\"64\" y1=\"42\" x2=\"78\" y2=\"40\" stroke={color} strokeWidth=\"1.5\" />\n </g>\n );\n } else if (variant === \"conical_kasa\") {\n headgear = (\n <g>\n <polygon points=\"6,24 50,-8 94,24\" fill=\"#18181b\" stroke={color} strokeWidth=\"2\" />\n <line x1=\"6\" y1=\"24\" x2=\"94\" y2=\"24\" stroke={accentColor} strokeWidth=\"3\" />\n </g>\n );\n } else if (variant === \"twin_katanas\") {\n headgear = (\n <g strokeLinecap=\"round\">\n <line x1=\"16\" y1=\"56\" x2=\"84\" y2=\"-4\" stroke=\"#475569\" strokeWidth=\"3.5\" />\n <line x1=\"20\" y1=\"52\" x2=\"82\" y2=\"-2\" stroke={color} strokeWidth=\"2\" />\n <line x1=\"84\" y1=\"56\" x2=\"16\" y2=\"-4\" stroke=\"#475569\" strokeWidth=\"3.5\" />\n <line x1=\"80\" y1=\"52\" x2=\"18\" y2=\"-2\" stroke={color} strokeWidth=\"2\" />\n </g>\n );\n } else if (variant === \"tengu_beak\") {\n headgear = (\n <g>\n <polygon points=\"36,42 50,58 64,42 50,46\" fill=\"#0f172a\" stroke={color} strokeWidth=\"1.8\" />\n </g>\n );\n } else if (variant === \"veil_shroud\") {\n headgear = (\n <g>\n <path d=\"M 22 30 Q 50 18 78 30 L 74 54 Q 50 64 26 54 Z\" fill=\"#0f172a\" opacity=\"0.85\" stroke={color} strokeWidth=\"1.5\" strokeDasharray=\"4 2\" />\n </g>\n );\n } else if (variant === \"scythe_crest\") {\n headgear = (\n <g>\n <path d=\"M 50 -10 C 32 -10, 24 6, 32 18 C 24 10, 32 -4, 50 -4 C 68 -4, 76 10, 68 18 C 76 6, 68 -10, 50 -10 Z\" fill={color} stroke={secondaryColor} strokeWidth=\"1.2\" />\n </g>\n );\n } else if (variant === \"void_mask\") {\n headgear = (\n <g>\n <rect x=\"28\" y=\"24\" width=\"44\" height=\"24\" rx=\"4\" fill=\"#000000\" stroke={color} strokeWidth=\"2\" />\n <text x=\"50\" y=\"42\" fill={color} fontSize=\"14\" fontFamily=\"monospace\" textAnchor=\"middle\" fontWeight=\"bold\">零</text>\n </g>\n );\n }\n\n // 4. MATRIX HACKER VARIANTS (10)\n else if (variant === \"hoodie_cowl\") {\n headgear = (\n <g>\n <path d=\"M 14,42 Q 14,8 50,8 Q 86,8 86,42 Q 70,48 50,48 Q 30,48 14,42 Z\" fill=\"#081018\" stroke={color} strokeWidth=\"1.8\" />\n <circle cx=\"28\" cy=\"18\" r=\"1.5\" fill={color} opacity=\"0.7\" />\n <circle cx=\"36\" cy=\"14\" r=\"1.5\" fill={color} opacity=\"0.9\" />\n <circle cx=\"64\" cy=\"14\" r=\"1.5\" fill={color} opacity=\"0.9\" />\n <circle cx=\"72\" cy=\"18\" r=\"1.5\" fill={color} opacity=\"0.7\" />\n </g>\n );\n } else if (variant === \"vr_goggles\") {\n headgear = (\n <g>\n <rect x=\"24\" y=\"24\" width=\"52\" height=\"18\" rx=\"4\" fill=\"#083344\" stroke={color} strokeWidth=\"2\" />\n <line x1=\"36\" y1=\"24\" x2=\"30\" y2=\"4\" stroke={color} strokeWidth=\"2\" />\n <circle cx=\"30\" cy=\"4\" r=\"3\" fill={accentColor} />\n <line x1=\"32\" y1=\"33\" x2=\"68\" y2=\"33\" stroke={accentColor} strokeWidth=\"1.6\" />\n </g>\n );\n } else if (variant === \"daemon_horns\") {\n headgear = (\n <g>\n <path d=\"M 22 20 Q 50 4 78 20\" stroke={color} strokeWidth=\"3.5\" fill=\"none\" />\n <polygon points=\"32,20 24,0 40,14\" fill={color} stroke={secondaryColor} strokeWidth=\"1.2\" />\n <polygon points=\"68,20 76,0 60,14\" fill={color} stroke={secondaryColor} strokeWidth=\"1.2\" />\n </g>\n );\n } else if (variant === \"glitch_halo\") {\n headgear = (\n <g>\n <rect x=\"18\" y=\"10\" width=\"64\" height=\"48\" fill=\"none\" stroke={color} strokeWidth=\"1.8\" strokeDasharray=\"8 4 3 5\" />\n <rect x=\"28\" y=\"4\" width=\"16\" height=\"8\" fill={color} opacity=\"0.8\" />\n <rect x=\"62\" y=\"46\" width=\"14\" height=\"6\" fill={color} opacity=\"0.8\" />\n </g>\n );\n } else if (variant === \"floating_hud\") {\n headgear = (\n <g>\n <rect x=\"74\" y=\"6\" width=\"40\" height=\"22\" rx=\"3\" fill=\"#09090b\" stroke={color} strokeWidth=\"1.2\" />\n <text x=\"78\" y=\"20\" fill={color} fontSize=\"8\" fontFamily=\"monospace\">root#_</text>\n </g>\n );\n } else if (variant === \"respirator_eq\") {\n headgear = (\n <g strokeWidth=\"2.5\">\n <rect x=\"28\" y=\"42\" width=\"44\" height=\"14\" rx=\"4\" fill=\"#0f172a\" stroke={color} strokeWidth=\"1.5\" />\n <line x1=\"36\" y1=\"52\" x2=\"36\" y2=\"46\" stroke=\"#22c55e\" />\n <line x1=\"43\" y1=\"52\" x2=\"43\" y2=\"44\" stroke=\"#eab308\" />\n <line x1=\"50\" y1=\"52\" x2=\"50\" y2=\"43\" stroke=\"#ef4444\" />\n <line x1=\"57\" y1=\"52\" x2=\"57\" y2=\"45\" stroke=\"#eab308\" />\n <line x1=\"64\" y1=\"52\" x2=\"64\" y2=\"47\" stroke=\"#22c55e\" />\n </g>\n );\n } else if (variant === \"heatsink_fins\") {\n headgear = (\n <g fill=\"#ea580c\" stroke=\"#fed7aa\" strokeWidth=\"1.2\">\n <rect x=\"28\" y=\"-2\" width=\"6\" height=\"18\" rx=\"1.5\" />\n <rect x=\"38\" y=\"-6\" width=\"6\" height=\"22\" rx=\"1.5\" />\n <rect x=\"47\" y=\"-8\" width=\"6\" height=\"24\" rx=\"1.5\" />\n <rect x=\"56\" y=\"-6\" width=\"6\" height=\"22\" rx=\"1.5\" />\n <rect x=\"66\" y=\"-2\" width=\"6\" height=\"18\" rx=\"1.5\" />\n </g>\n );\n } else if (variant === \"cable_dreads\") {\n headgear = (\n <g fill=\"none\" strokeLinecap=\"round\">\n <path d=\"M 24 30 C 12 46, 14 74, 16 90\" stroke={color} strokeWidth=\"3\" />\n <path d=\"M 30 26 C 22 50, 24 80, 26 94\" stroke={accentColor} strokeWidth=\"2.5\" />\n <path d=\"M 70 26 C 78 50, 76 80, 74 94\" stroke={accentColor} strokeWidth=\"2.5\" />\n <path d=\"M 76 30 C 88 46, 86 74, 84 90\" stroke={color} strokeWidth=\"3\" />\n </g>\n );\n } else if (variant === \"cyber_skull\") {\n headgear = (\n <g>\n <ellipse cx=\"42\" cy=\"34\" rx=\"6\" ry=\"5\" fill=\"#000000\" stroke={color} strokeWidth=\"1.8\" />\n <ellipse cx=\"58\" cy=\"34\" rx=\"6\" ry=\"5\" fill=\"#000000\" stroke={color} strokeWidth=\"1.8\" />\n <polygon points=\"48,44 50,40 52,44\" fill={color} />\n <line x1=\"40\" y1=\"50\" x2=\"60\" y2=\"50\" stroke={color} strokeWidth=\"2\" />\n <line x1=\"44\" y1=\"47\" x2=\"44\" y2=\"53\" stroke={color} strokeWidth=\"1.5\" />\n <line x1=\"50\" y1=\"47\" x2=\"50\" y2=\"53\" stroke={color} strokeWidth=\"1.5\" />\n <line x1=\"56\" y1=\"47\" x2=\"56\" y2=\"53\" stroke={color} strokeWidth=\"1.5\" />\n </g>\n );\n } else if (variant === \"wireframe_cube\") {\n headgear = (\n <g stroke={color}>\n <rect x=\"20\" y=\"8\" width=\"60\" height=\"52\" rx=\"4\" fill=\"none\" strokeWidth=\"1.8\" />\n <rect x=\"30\" y=\"18\" width=\"40\" height=\"32\" rx=\"2\" fill=\"none\" stroke={accentColor} strokeWidth=\"1.4\" strokeDasharray=\"4 2\" />\n <line x1=\"20\" y1=\"8\" x2=\"30\" y2=\"18\" strokeWidth=\"1.4\" />\n <line x1=\"80\" y1=\"8\" x2=\"70\" y2=\"18\" strokeWidth=\"1.4\" />\n <line x1=\"20\" y1=\"60\" x2=\"30\" y2=\"50\" strokeWidth=\"1.4\" />\n <line x1=\"80\" y1=\"60\" x2=\"70\" y2=\"50\" strokeWidth=\"1.4\" />\n </g>\n );\n }\n\n // 5. CELESTIAL ASTRO VARIANTS (10)\n else if (variant === \"bubble_dome\") {\n headgear = (\n <g>\n <ellipse cx=\"50\" cy=\"34\" rx=\"36\" ry=\"26\" fill=\"none\" stroke={color} strokeWidth=\"2.8\" opacity=\"0.9\" />\n <circle cx=\"50\" cy=\"4\" r=\"4.5\" fill=\"#fef08a\" stroke={color} strokeWidth=\"1.5\" />\n <path d=\"M 32 18 Q 50 8 68 18\" stroke=\"#ffffff\" strokeWidth=\"2.5\" fill=\"none\" opacity=\"0.7\" strokeLinecap=\"round\" />\n </g>\n );\n } else if (variant === \"lunar_pack\") {\n headgear = (\n <g>\n <rect x=\"24\" y=\"-4\" width=\"3\" height=\"24\" fill={color} />\n <circle cx=\"25.5\" cy=\"-4\" r=\"2.5\" fill=\"#ffffff\" />\n <ellipse cx=\"50\" cy=\"34\" rx=\"32\" ry=\"24\" fill=\"none\" stroke=\"#e2e8f0\" strokeWidth=\"2.2\" />\n </g>\n );\n } else if (variant === \"sunburst_halo\") {\n headgear = (\n <g stroke={color} strokeWidth=\"2\" opacity=\"0.9\">\n <line x1=\"50\" y1=\"-2\" x2=\"50\" y2=\"-14\" />\n <line x1=\"76\" y1=\"8\" x2=\"88\" y2=\"-4\" />\n <line x1=\"86\" y1=\"34\" x2=\"100\" y2=\"34\" />\n <line x1=\"76\" y1=\"60\" x2=\"88\" y2=\"72\" />\n <line x1=\"50\" y1=\"70\" x2=\"50\" y2=\"82\" />\n <line x1=\"24\" y1=\"60\" x2=\"12\" y2=\"72\" />\n <line x1=\"14\" y1=\"34\" x2=\"0\" y2=\"34\" />\n <line x1=\"24\" y1=\"8\" x2=\"12\" y2=\"-4\" />\n </g>\n );\n } else if (variant === \"saturn_ring\") {\n headgear = (\n <g>\n <ellipse cx=\"50\" cy=\"34\" rx=\"46\" ry=\"14\" fill=\"none\" stroke={color} strokeWidth=\"2.8\" transform=\"rotate(-15 50 34)\" />\n <circle cx=\"86\" cy=\"26\" r=\"3.5\" fill={accentColor} />\n </g>\n );\n } else if (variant === \"star_crown\") {\n headgear = (\n <g fill={color}>\n <polygon points=\"30,12 36,-2 42,10\" />\n <polygon points=\"44,8 50,-8 56,8\" />\n <polygon points=\"58,10 64,-2 70,12\" />\n <circle cx=\"50\" cy=\"10\" r=\"3\" fill=\"#ffffff\" />\n </g>\n );\n } else if (variant === \"eclipse_corona\") {\n headgear = (\n <g>\n <ellipse cx=\"50\" cy=\"34\" rx=\"40\" ry=\"24\" fill=\"none\" stroke={color} strokeWidth=\"3.5\" opacity=\"0.65\" strokeDasharray=\"10 5\" />\n <circle cx=\"50\" cy=\"34\" r=\"28\" fill=\"#000000\" stroke={color} strokeWidth=\"1.8\" />\n </g>\n );\n } else if (variant === \"pulsar_spires\") {\n headgear = (\n <g stroke={color} strokeWidth=\"3.2\" strokeLinecap=\"round\">\n <line x1=\"50\" y1=\"8\" x2=\"50\" y2=\"-16\" />\n <circle cx=\"50\" cy=\"-16\" r=\"3.5\" fill=\"#ffffff\" stroke=\"none\" />\n <line x1=\"50\" y1=\"60\" x2=\"50\" y2=\"78\" />\n <circle cx=\"50\" cy=\"78\" r=\"3.5\" fill=\"#ffffff\" stroke=\"none\" />\n </g>\n );\n } else if (variant === \"aurora_ribbons\") {\n headgear = (\n <g fill=\"none\" strokeLinecap=\"round\">\n <path d=\"M 14 -2 Q 32 -18 50 -4 T 86 -8\" stroke={color} strokeWidth=\"3.5\" opacity=\"0.8\" />\n <path d=\"M 20 -8 Q 38 -24 56 -10 T 80 -14\" stroke={accentColor} strokeWidth=\"2.5\" opacity=\"0.6\" />\n </g>\n );\n } else if (variant === \"angel_wings\") {\n headgear = (\n <g>\n <polygon points=\"20,44 -6,6 12,54\" fill={color} stroke={secondaryColor} strokeWidth=\"1.5\" opacity=\"0.9\" />\n <polygon points=\"80,44 106,6 88,54\" fill={color} stroke={secondaryColor} strokeWidth=\"1.5\" opacity=\"0.9\" />\n <ellipse cx=\"50\" cy=\"2\" rx=\"20\" ry=\"6\" fill=\"none\" stroke={accentColor} strokeWidth=\"2\" />\n </g>\n );\n } else if (variant === \"singularity_core\") {\n headgear = (\n <g>\n <ellipse cx=\"50\" cy=\"34\" rx=\"38\" ry=\"32\" fill=\"none\" stroke=\"#ffffff\" strokeWidth=\"2.5\" opacity=\"0.9\" />\n <circle cx=\"22\" cy=\"18\" r=\"3\" fill={accentColor} />\n <circle cx=\"78\" cy=\"50\" r=\"3\" fill={accentColor} />\n </g>\n );\n } else {\n // Default High-Tech Helm\n headgear = (\n <>\n <polygon points=\"40,8 60,8 55,2 45,2\" fill={color} />\n <line x1=\"50\" y1=\"2\" x2=\"50\" y2=\"8\" stroke=\"#ffffff\" strokeWidth=\"1.5\" />\n </>\n );\n }\n\n return (\n <g transform=\"translate(0, 2)\">\n {headgear}\n\n {/* 3D Chibi Chassis Body with Distinct Staff Uniform */}\n <Render3DStaffTorso\n archetype={archetype}\n color={color}\n secondaryColor={secondaryColor}\n accentColor={accentColor}\n gradId={gradId}\n />\n\n {/* 3D Volumetric Head Helmet */}\n <ellipse cx=\"50\" cy=\"34\" rx=\"30\" ry=\"22\" fill=\"#171724\" stroke={color} strokeWidth=\"2\" />\n {/* Specular Highlight Arc */}\n <path d=\"M30,20 Q50,12 70,20\" stroke=\"#ffffff\" strokeWidth=\"1.8\" fill=\"none\" opacity=\"0.6\" strokeLinecap=\"round\" />\n\n {/* 3D Curved Visor */}\n <path d=\"M26,34 Q50,22 74,34 L70,44 Q50,38 30,44 Z\" fill=\"#06060c\" stroke=\"#1f1f2e\" strokeWidth=\"1.2\" />\n {/* Emissive Visor Screen */}\n <path d=\"M30,36 Q50,27 70,36\" stroke={color} strokeWidth=\"3\" fill=\"none\" strokeLinecap=\"round\" />\n <circle cx=\"40\" cy=\"34\" r=\"1.8\" fill=\"#ffffff\" />\n <circle cx=\"60\" cy=\"34\" r=\"1.8\" fill=\"#ffffff\" />\n\n {/* 3D Cyber Ear Pods */}\n <ellipse cx=\"20\" cy=\"34\" rx=\"4\" ry=\"7\" fill=\"#12121d\" stroke={color} strokeWidth=\"1.5\" />\n <circle cx=\"20\" cy=\"34\" r=\"2\" fill={color} />\n <ellipse cx=\"80\" cy=\"34\" rx=\"4\" ry=\"7\" fill=\"#12121d\" stroke={color} strokeWidth=\"1.5\" />\n <circle cx=\"80\" cy=\"34\" r=\"2\" fill={color} />\n </g>\n );\n}\n\n// ----------------------------------------------------------------------------\n// 2. 3D TECH DESK PROPS (35 CURATED MODELS ACROSS 7 ARCHETYPES)\n// ----------------------------------------------------------------------------\nfunction Render3DProp({ item, gradId }) {\n const { name, color, archetype } = item;\n\n // 3D Isometric Desktop Plane\n const deskSurface = (\n <g>\n {/* Desk Top Isometric Face */}\n <polygon points=\"10,68 85,68 95,73 20,73\" fill=\"#1a1c24\" stroke=\"#2d303f\" strokeWidth=\"1\" />\n {/* Desk Front Edge */}\n <polygon points=\"20,73 95,73 95,76 20,76\" fill=\"#101117\" />\n </g>\n );\n\n let prop3D = null;\n\n if (archetype === \"supercomputer\" || name.includes(\"Server\") || name.includes(\"Tower\") || name.includes(\"Mainframe\") || name.includes(\"Cluster\") || name.includes(\"Rig\")) {\n prop3D = (\n <g transform=\"translate(54, 18)\">\n {/* Isometric Top Face */}\n <polygon points=\"16,4 34,10 20,16 2,10\" fill={`url(#${gradId}-top)`} stroke={color} strokeWidth=\"1\" />\n {/* Isometric Left Face (Front Server Bays) */}\n <polygon points=\"2,10 20,16 20,52 2,46\" fill=\"#12131c\" stroke=\"#2b2d3d\" strokeWidth=\"1\" />\n {/* Isometric Right Face */}\n <polygon points=\"20,16 34,10 34,46 20,52\" fill={`url(#${gradId}-right)`} stroke=\"#1b1c26\" strokeWidth=\"1\" />\n\n {/* Server Bays & Blinking LEDs */}\n <line x1=\"5\" y1=\"18\" x2=\"17\" y2=\"22\" stroke=\"#252736\" strokeWidth=\"2.5\" />\n <circle cx=\"6\" cy=\"18\" r=\"1\" fill=\"#22c55e\" />\n <line x1=\"5\" y1=\"26\" x2=\"17\" y2=\"30\" stroke=\"#252736\" strokeWidth=\"2.5\" />\n <circle cx=\"6\" cy=\"26\" r=\"1\" fill={color} />\n <line x1=\"5\" y1=\"34\" x2=\"17\" y2=\"38\" stroke=\"#252736\" strokeWidth=\"2.5\" />\n <circle cx=\"6\" cy=\"34\" r=\"1\" fill=\"#f59e0b\" />\n <line x1=\"5\" y1=\"42\" x2=\"17\" y2=\"46\" stroke=\"#252736\" strokeWidth=\"2.5\" />\n <circle cx=\"6\" cy=\"42\" r=\"1\" fill=\"#ec4899\" />\n </g>\n );\n } else if (archetype === \"dual_monitor\" || name.includes(\"Monitor\") || name.includes(\"Screen\") || name.includes(\"OLED\") || name.includes(\"Display\")) {\n prop3D = (\n <g transform=\"translate(50, 22)\">\n {/* Monitor 1 (Main Left) */}\n <polygon points=\"2,8 24,4 24,28 2,32\" fill=\"#070a12\" stroke={color} strokeWidth=\"1.5\" />\n <line x1=\"5\" y1=\"12\" x2=\"16\" y2=\"10\" stroke=\"#22c55e\" strokeWidth=\"1.5\" strokeLinecap=\"round\" />\n <line x1=\"5\" y1=\"17\" x2=\"20\" y2=\"15\" stroke={color} strokeWidth=\"1.5\" strokeLinecap=\"round\" />\n <line x1=\"5\" y1=\"22\" x2=\"14\" y2=\"20\" stroke=\"#f43f5e\" strokeWidth=\"1.5\" strokeLinecap=\"round\" />\n\n {/* Monitor 2 (Angled Right) */}\n <polygon points=\"26,4 44,8 44,32 26,28\" fill=\"#070a12\" stroke={color} strokeWidth=\"1.5\" />\n <line x1=\"29\" y1=\"10\" x2=\"38\" y2=\"12\" stroke=\"#eab308\" strokeWidth=\"1.5\" strokeLinecap=\"round\" />\n <line x1=\"29\" y1=\"15\" x2=\"41\" y2=\"17\" stroke=\"#38bdf8\" strokeWidth=\"1.5\" strokeLinecap=\"round\" />\n\n {/* Articulated Stand */}\n <line x1=\"25\" y1=\"28\" x2=\"25\" y2=\"46\" stroke=\"#475569\" strokeWidth=\"2.5\" />\n <ellipse cx=\"25\" cy=\"46\" rx=\"8\" ry=\"3\" fill=\"#334155\" />\n </g>\n );\n } else if (archetype === \"hologram_emitter\" || name.includes(\"Holo\") || name.includes(\"Projector\") || name.includes(\"Emitter\") || name.includes(\"Tesseract\")) {\n prop3D = (\n <g transform=\"translate(56, 16)\">\n {/* Hexagonal Projector Base */}\n <ellipse cx=\"18\" cy=\"48\" rx=\"15\" ry=\"6\" fill=\"#1a1c26\" stroke={color} strokeWidth=\"1.8\" />\n <ellipse cx=\"18\" cy=\"46\" rx=\"10\" ry=\"4\" fill=\"#080b12\" stroke={color} strokeWidth=\"1\" />\n {/* Volumetric Hologram Cone */}\n <polygon points=\"18,46 4,14 32,14\" fill={color} opacity=\"0.22\" />\n {/* 3D Floating Isometric Cube */}\n <polygon points=\"18,10 26,14 18,18 10,14\" fill=\"#ffffff\" opacity=\"0.9\" />\n <polygon points=\"10,14 18,18 18,26 10,22\" fill={color} opacity=\"0.85\" />\n <polygon points=\"26,14 18,18 18,26 26,22\" fill=\"#0369a1\" opacity=\"0.95\" />\n </g>\n );\n } else if (archetype === \"espresso_station\" || name.includes(\"Espresso\") || name.includes(\"Coffee\") || name.includes(\"Brewer\") || name.includes(\"Drip\")) {\n prop3D = (\n <g transform=\"translate(56, 26)\">\n {/* 3D Espresso Box */}\n <polygon points=\"4,10 26,6 30,28 8,32\" fill=\"#25232c\" stroke={color} strokeWidth=\"1.5\" />\n <rect x=\"8\" y=\"12\" width=\"18\" height=\"6\" rx=\"1\" fill=\"#0c0a14\" />\n <circle cx=\"11\" cy=\"15\" r=\"1.2\" fill=\"#22c55e\" />\n <circle cx=\"16\" cy=\"15\" r=\"1.2\" fill=\"#ef4444\" />\n {/* Ceramic Cup & Steam */}\n <rect x=\"13\" y=\"24\" width=\"8\" height=\"8\" rx=\"2\" fill=\"#ffffff\" stroke=\"#94a3b8\" strokeWidth=\"1\" />\n <path d=\"M15,22 Q17,16 15,12\" stroke={color} strokeWidth=\"1.5\" fill=\"none\" opacity=\"0.8\" strokeLinecap=\"round\" />\n <path d=\"M18,22 Q20,17 18,13\" stroke={color} strokeWidth=\"1.5\" fill=\"none\" opacity=\"0.8\" strokeLinecap=\"round\" />\n </g>\n );\n } else if (archetype === \"arcade_cabinet\" || name.includes(\"Arcade\") || name.includes(\"Pinball\") || name.includes(\"Cabinet\")) {\n prop3D = (\n <g transform=\"translate(54, 16)\">\n {/* Isometric Cabinet Top & Sides */}\n <polygon points=\"14,2 32,8 20,14 2,8\" fill={`url(#${gradId}-top)`} stroke={color} strokeWidth=\"1\" />\n <polygon points=\"2,8 20,14 20,54 2,48\" fill=\"#18181b\" stroke=\"#2b2d3d\" strokeWidth=\"1\" />\n <polygon points=\"20,14 32,8 32,48 20,54\" fill=\"#0f0f14\" stroke=\"#2b2d3d\" strokeWidth=\"1\" />\n {/* Glowing Marquee Banner */}\n <polygon points=\"4,12 18,17 18,22 4,17\" fill={color} />\n {/* Angled CRT Screen */}\n <polygon points=\"4,22 18,27 18,38 4,33\" fill=\"#000000\" stroke={color} strokeWidth=\"0.8\" />\n <rect x=\"8\" y=\"27\" width=\"5\" height=\"5\" fill={color} transform=\"skewY(15)\" />\n {/* Control Deck with Joystick and Buttons */}\n <polygon points=\"3,36 19,41 17,45 1,40\" fill=\"#27272a\" stroke={color} strokeWidth=\"0.8\" />\n <circle cx=\"6\" cy=\"40\" r=\"1.5\" fill=\"#ef4444\" />\n <circle cx=\"12\" cy=\"42\" r=\"1.2\" fill={color} />\n <circle cx=\"15\" cy=\"43\" r=\"1.2\" fill=\"#eab308\" />\n </g>\n );\n } else if (archetype === \"terrarium_bonsai\" || name.includes(\"Bonsai\") || name.includes(\"Plant\") || name.includes(\"Garden\") || name.includes(\"Dome\")) {\n prop3D = (\n <g transform=\"translate(56, 20)\">\n {/* Hexagonal Ceramic Pot */}\n <polygon points=\"6,40 28,40 25,48 9,48\" fill=\"#78350f\" stroke=\"#b45309\" strokeWidth=\"1.5\" />\n {/* Twisted Bonsai Trunk */}\n <path d=\"M17,40 Q17,30 13,26 Q24,22 21,14\" stroke=\"#92400e\" strokeWidth=\"3\" fill=\"none\" strokeLinecap=\"round\" />\n {/* Foliage Clouds */}\n <ellipse cx=\"14\" cy=\"20\" rx=\"9\" ry=\"5.5\" fill={color} />\n <ellipse cx=\"25\" cy=\"15\" rx=\"8\" ry=\"5\" fill={color} opacity=\"0.8\" />\n <ellipse cx=\"19\" cy=\"25\" rx=\"6\" ry=\"4\" fill=\"#059669\" />\n </g>\n );\n } else if (archetype === \"lab_oscilloscope\" || name.includes(\"Oscilloscope\") || name.includes(\"Multimeter\") || name.includes(\"Analyzer\") || name.includes(\"Scope\") || name.includes(\"Meter\")) {\n prop3D = (\n <g transform=\"translate(52, 22)\">\n {/* Instrument Enclosure Top */}\n <polygon points=\"12,4 38,4 32,16 6,16\" fill={`url(#${gradId}-top)`} stroke=\"#475569\" strokeWidth=\"1\" />\n {/* Instrument Front Face */}\n <polygon points=\"6,16 32,16 32,44 6,44\" fill=\"#111827\" stroke={color} strokeWidth=\"1.2\" />\n <polygon points=\"32,16 38,4 38,32 32,44\" fill=\"#090d16\" stroke=\"#334155\" strokeWidth=\"1\" />\n {/* CRT Phosphor Screen */}\n <rect x=\"9\" y=\"19\" width=\"16\" height=\"15\" rx=\"1.5\" fill=\"#031a12\" stroke={color} strokeWidth=\"0.8\" />\n {/* Oscilloscope Sine Wave Trace */}\n <path d=\"M 10 26 Q 14 20 17 26 T 24 26\" stroke={color} strokeWidth=\"1.5\" fill=\"none\" strokeLinecap=\"round\" />\n {/* Rotary Knobs & Terminals */}\n <circle cx=\"28\" cy=\"23\" r=\"2\" fill=\"#374151\" stroke=\"#9ca3af\" strokeWidth=\"0.6\" />\n <circle cx=\"28\" cy=\"30\" r=\"2\" fill=\"#374151\" stroke=\"#9ca3af\" strokeWidth=\"0.6\" />\n <circle cx=\"28\" cy=\"37\" r=\"1.2\" fill={color} />\n </g>\n );\n } else {\n // Default 3D Isometric Cyber Terminal\n prop3D = (\n <g transform=\"translate(54, 22)\">\n <polygon points=\"4,10 24,4 32,24 12,30\" fill={`url(#${gradId}-top)`} stroke={color} strokeWidth=\"1.5\" />\n <polygon points=\"12,30 32,24 32,46 12,52\" fill={`url(#${gradId}-left)`} stroke=\"#1b1c26\" strokeWidth=\"1\" />\n <circle cx=\"22\" cy=\"28\" r=\"4\" fill=\"#ffffff\" opacity=\"0.8\" />\n </g>\n );\n }\n\n return (\n <g>\n {deskSurface}\n {/* 3D Chibi Agent Mockup (Left Side) */}\n <RenderChibiAgent3D x={8} y={18} scale={0.88} accentColor={color} />\n {/* 3D Desk Prop (Right Side) */}\n {prop3D}\n </g>\n );\n}\n\n// ----------------------------------------------------------------------------\n// 3. 3D PETS & CYBER COMPANIONS (200 PETS)\n// ----------------------------------------------------------------------------\nfunction Render3DPet({ item, gradId }) {\n const { name, color, archetype } = item;\n\n if (archetype === \"none\" || name === \"None\") {\n return (\n <g>\n <RenderChibiAgent3D x={32} y={18} scale={0.95} accentColor=\"#64748b\" />\n <text x=\"50\" y=\"74\" textAnchor=\"middle\" fill=\"#94a3b8\" fontSize=\"8\" fontFamily=\"var(--font-family-ui, sans-serif)\">\n No Pet Equipped\n </text>\n </g>\n );\n }\n\n let pet3D = null;\n\n if (archetype === \"cyber_cat\" || name.includes(\"Cat\") || name.includes(\"Kitty\")) {\n pet3D = (\n <g transform=\"translate(56, 30)\">\n {/* Soft 3D Cat Cushion */}\n <ellipse cx=\"18\" cy=\"28\" rx=\"18\" ry=\"7\" fill=\"#1b1b28\" stroke=\"#333348\" strokeWidth=\"1.2\" />\n {/* Curled Body */}\n <ellipse cx=\"18\" cy=\"20\" rx=\"13\" ry=\"9\" fill={color} />\n {/* Head */}\n <circle cx=\"9\" cy=\"15\" r=\"8\" fill={color} />\n {/* Pointy Ears */}\n <polygon points=\"4,9 6,2 10,8\" fill=\"#f43f5e\" />\n <polygon points=\"9,8 13,2 15,9\" fill=\"#f43f5e\" />\n {/* Sleeping Eye arcs */}\n <path d=\"M6,15 Q8,18 10,15\" stroke=\"#ffffff\" strokeWidth=\"1.5\" fill=\"none\" />\n <path d=\"M11,15 Q13,18 15,15\" stroke=\"#ffffff\" strokeWidth=\"1.5\" fill=\"none\" />\n {/* Whiskers */}\n <line x1=\"3\" y1=\"16\" x2=\"1\" y2=\"15\" stroke=\"#ffffff\" strokeWidth=\"1\" />\n <line x1=\"3\" y1=\"18\" x2=\"1\" y2=\"19\" stroke=\"#ffffff\" strokeWidth=\"1\" />\n <text x=\"24\" y=\"10\" fill={color} fontSize=\"9\" fontWeight=\"bold\">Z</text>\n </g>\n );\n } else if (archetype === \"dozing_shiba\" || name.includes(\"Shiba\") || name.includes(\"Dog\")) {\n pet3D = (\n <g transform=\"translate(56, 28)\">\n <ellipse cx=\"18\" cy=\"28\" rx=\"18\" ry=\"7\" fill=\"#1b1b28\" stroke=\"#333348\" strokeWidth=\"1.2\" />\n <ellipse cx=\"18\" cy=\"19\" rx=\"14\" ry=\"9\" fill={color} />\n <circle cx=\"8\" cy=\"14\" r=\"8\" fill={color} />\n <polygon points=\"4,8 6,2 10,8\" fill=\"#b45309\" />\n <polygon points=\"9,8 12,2 15,8\" fill=\"#b45309\" />\n <circle cx=\"6\" cy=\"14\" r=\"1.5\" fill=\"#000\" />\n <circle cx=\"11\" cy=\"14\" r=\"1.5\" fill=\"#000\" />\n <ellipse cx=\"8\" cy=\"17\" rx=\"1.8\" ry=\"1.2\" fill=\"#000\" />\n {/* Curled Tail */}\n <circle cx=\"30\" cy=\"15\" r=\"3.5\" fill={color} />\n </g>\n );\n } else if (archetype === \"hover_drone\" || name.includes(\"Drone\") || name.includes(\"Orb\")) {\n pet3D = (\n <g transform=\"translate(56, 22)\">\n {/* Floating Ring */}\n <ellipse cx=\"18\" cy=\"18\" rx=\"15\" ry=\"4\" fill=\"none\" stroke={color} strokeWidth=\"1.8\" strokeDasharray=\"4 2\" />\n {/* 3D Orb Hull */}\n <circle cx=\"18\" cy=\"18\" r=\"10\" fill=\"#171824\" stroke={color} strokeWidth=\"1.8\" />\n {/* Luminous Core Eye */}\n <circle cx=\"18\" cy=\"18\" r=\"4.5\" fill=\"#38bdf8\" />\n <circle cx=\"16\" cy=\"16\" r=\"1.2\" fill=\"#ffffff\" />\n {/* Anti-Grav Particles */}\n <circle cx=\"18\" cy=\"32\" r=\"1.5\" fill={color} opacity=\"0.8\" />\n <circle cx=\"14\" cy=\"36\" r=\"1\" fill={color} opacity=\"0.5\" />\n </g>\n );\n } else {\n // 3D Cyber Owl / Creature\n pet3D = (\n <g transform=\"translate(58, 26)\">\n <ellipse cx=\"16\" cy=\"22\" rx=\"11\" ry=\"14\" fill=\"#1b1c2b\" stroke={color} strokeWidth=\"1.5\" />\n <circle cx=\"11\" cy=\"16\" r=\"4.5\" fill=\"#070a12\" stroke={color} strokeWidth=\"1.2\" />\n <circle cx=\"21\" cy=\"16\" r=\"4.5\" fill=\"#070a12\" stroke={color} strokeWidth=\"1.2\" />\n <circle cx=\"11\" cy=\"16\" r=\"2\" fill={color} />\n <circle cx=\"21\" cy=\"16\" r=\"2\" fill={color} />\n <polygon points=\"14,20 18,20 16,24\" fill=\"#f59e0b\" />\n </g>\n );\n }\n\n return (\n <g>\n {/* 3D Chibi Agent Mockup (Left Side) */}\n <RenderChibiAgent3D x={8} y={18} scale={0.88} accentColor={color} />\n {/* 3D Cyber Pet Companion (Right Side) */}\n {pet3D}\n </g>\n );\n}\n\n// ----------------------------------------------------------------------------\n// 4. 3D VISUAL EFFECTS & AURAS (100 AURAS)\n// ----------------------------------------------------------------------------\nfunction Render3DAura({ item, gradId }) {\n const { color, archetype } = item;\n\n return (\n <g>\n {/* 3D Orbital Plasma Energy Rings */}\n <ellipse cx=\"50\" cy=\"42\" rx=\"38\" ry=\"14\" fill=\"none\" stroke={color} strokeWidth=\"1.8\" strokeDasharray=\"6 3\" transform=\"rotate(-15, 50, 42)\" opacity=\"0.85\" />\n <ellipse cx=\"50\" cy=\"42\" rx=\"38\" ry=\"14\" fill=\"none\" stroke=\"#ffffff\" strokeWidth=\"1.2\" strokeDasharray=\"3 4\" transform=\"rotate(25, 50, 42)\" opacity=\"0.6\" />\n\n {/* Floating Energy Sparks */}\n <circle cx=\"20\" cy=\"30\" r=\"2\" fill={color} />\n <circle cx=\"80\" cy=\"26\" r=\"2.5\" fill={color} />\n <circle cx=\"76\" cy=\"56\" r=\"1.5\" fill=\"#ffffff\" />\n <circle cx=\"24\" cy=\"58\" r=\"1.5\" fill=\"#ffffff\" />\n\n {/* Chibi Agent at Center of Aura */}\n <RenderChibiAgent3D x={30} y={16} scale={0.95} accentColor={color} />\n\n {/* Overhead Glowing Halo */}\n <ellipse cx=\"50\" cy=\"12\" rx=\"14\" ry=\"4\" fill=\"none\" stroke={color} strokeWidth=\"2\" opacity=\"0.9\" />\n <ellipse cx=\"50\" cy=\"12\" rx=\"11\" ry=\"3\" fill=\"none\" stroke=\"#ffffff\" strokeWidth=\"1\" opacity=\"0.7\" />\n </g>\n );\n}\n\n// ----------------------------------------------------------------------------\n// 5. 3D OFFICE TROPHIES & BADGES (100 TROPHIES)\n// ----------------------------------------------------------------------------\nfunction Render3DTrophy({ item, gradId }) {\n const { color, archetype } = item;\n\n return (\n <g transform=\"translate(0, 4)\">\n {/* 3D Tiered Mahogany / Obsidian Pedestal */}\n {/* Bottom Step */}\n <polygon points=\"25,62 75,62 82,69 18,69\" fill=\"#181824\" stroke=\"#2c2c3d\" strokeWidth=\"1\" />\n <polygon points=\"18,69 82,69 82,73 18,73\" fill=\"#0c0c14\" />\n {/* Top Step */}\n <polygon points=\"30,56 70,56 75,62 25,62\" fill=\"#242436\" stroke=\"#3d3d52\" strokeWidth=\"1\" />\n\n {/* Gilded Plaque */}\n <rect x=\"36\" y=\"64\" width=\"28\" height=\"4\" rx=\"1\" fill=\"#f59e0b\" stroke=\"#b45309\" strokeWidth=\"0.8\" />\n <line x1=\"40\" y1=\"66\" x2=\"60\" y2=\"66\" stroke=\"#78350f\" strokeWidth=\"1\" strokeLinecap=\"round\" />\n\n {/* 3D Faceted Quantum Crystal Monument */}\n {/* Top Pyramid */}\n <polygon points=\"50,14 66,38 50,42\" fill=\"#ffffff\" opacity=\"0.9\" />\n <polygon points=\"50,14 34,38 50,42\" fill={color} opacity=\"0.85\" />\n <polygon points=\"50,14 34,38 24,34\" fill=\"#0284c7\" opacity=\"0.75\" />\n <polygon points=\"50,14 66,38 76,34\" fill=\"#0369a1\" opacity=\"0.75\" />\n\n {/* Bottom Inverted Pyramid */}\n <polygon points=\"50,54 66,38 50,42\" fill={color} opacity=\"0.9\" />\n <polygon points=\"50,54 34,38 50,42\" fill=\"#0f172a\" opacity=\"0.8\" />\n\n {/* Specular Light Beams */}\n <circle cx=\"50\" cy=\"28\" r=\"3\" fill=\"#ffffff\" />\n <line x1=\"50\" y1=\"20\" x2=\"50\" y2=\"36\" stroke=\"#ffffff\" strokeWidth=\"1\" strokeLinecap=\"round\" opacity=\"0.7\" />\n <line x1=\"42\" y1=\"28\" x2=\"58\" y2=\"28\" stroke=\"#ffffff\" strokeWidth=\"1\" strokeLinecap=\"round\" opacity=\"0.7\" />\n </g>\n );\n}\n\n// ----------------------------------------------------------------------------\n// 6. 3D ISOMETRIC VIRTUAL OFFICE THEME / FLOOR ENVIRONMENT RENDERER\n// ----------------------------------------------------------------------------\nfunction Render3DTheme({ item, gradId }) {\n const p = item.palette || {};\n const toHex = (c, fallback = \"#38bdf8\") =>\n typeof c === \"number\" ? `#${c.toString(16).padStart(6, \"0\")}` : (c || fallback);\n\n const [cTop, cBottom] = (p.floorGradient || [0x0b1018, 0x161f2c]).map((c) => toHex(c));\n const gridHex = toHex(p.gridColor, \"#1a2330\");\n const borderHex = toHex(p.borderColor, \"#263244\");\n const rackHex = toHex(p.panelRackColor, \"#fde047\");\n const podHex = toHex(p.panelPodColor, \"#22d3ee\");\n const accentHex = p.accentColor || \"#007acc\";\n\n return (\n <g>\n <defs>\n <linearGradient id={`${gradId}-floor-face`} x1=\"0%\" y1=\"0%\" x2=\"100%\" y2=\"100%\">\n <stop offset=\"0%\" stopColor={cTop} />\n <stop offset=\"100%\" stopColor={cBottom} />\n </linearGradient>\n </defs>\n\n {/* 3D Isometric Floor Slab */}\n {/* 1. Left Thickness Slab */}\n <polygon points=\"12,42 50,64 50,72 12,50\" fill={cTop} stroke=\"#070a10\" strokeWidth=\"1\" opacity=\"0.9\" />\n {/* 2. Right Thickness Slab */}\n <polygon points=\"50,64 88,42 88,50 50,72\" fill={cBottom} stroke=\"#070a10\" strokeWidth=\"1\" opacity=\"0.9\" />\n\n {/* 3. Isometric Top Diamond Face */}\n <polygon\n points=\"50,20 88,42 50,64 12,42\"\n fill={`url(#${gradId}-floor-face)`}\n stroke={borderHex}\n strokeWidth=\"1.8\"\n />\n\n {/* 4. Isometric Grid Lines (Criss-Cross) */}\n <line x1=\"31\" y1=\"31\" x2=\"69\" y2=\"53\" stroke={gridHex} strokeWidth=\"1\" opacity={p.gridAlpha || 0.75} />\n <line x1=\"69\" y1=\"31\" x2=\"31\" y2=\"53\" stroke={gridHex} strokeWidth=\"1\" opacity={p.gridAlpha || 0.75} />\n <line x1=\"40\" y1=\"26\" x2=\"78\" y2=\"48\" stroke={gridHex} strokeWidth=\"0.8\" opacity={p.gridAlpha || 0.75} />\n <line x1=\"60\" y1=\"26\" x2=\"22\" y2=\"48\" stroke={gridHex} strokeWidth=\"0.8\" opacity={p.gridAlpha || 0.75} />\n\n {/* 5. Center Hub Platform Highlight (Mini Core Hub Rack) */}\n <polygon\n points=\"50,33 60,39 50,45 40,39\"\n fill={rackHex}\n fillOpacity=\"0.25\"\n stroke={rackHex}\n strokeWidth=\"1\"\n />\n <circle cx=\"50\" cy=\"39\" r=\"2.5\" fill={rackHex} />\n\n {/* 6. Side Pod Zone Panels */}\n <polygon\n points=\"65,37 73,42 65,47 57,42\"\n fill={podHex}\n fillOpacity=\"0.2\"\n stroke={podHex}\n strokeWidth=\"0.8\"\n />\n <polygon\n points=\"35,37 43,42 35,47 27,42\"\n fill={podHex}\n fillOpacity=\"0.2\"\n stroke={podHex}\n strokeWidth=\"0.8\"\n />\n\n {/* 7. Ambient Glowing Corner Nodes & Circuit Traces */}\n <circle cx=\"12\" cy=\"42\" r=\"1.5\" fill={borderHex} />\n <circle cx=\"88\" cy=\"42\" r=\"1.5\" fill={borderHex} />\n <circle cx=\"50\" cy=\"20\" r=\"1.5\" fill={borderHex} />\n <circle cx=\"50\" cy=\"64\" r=\"2\" fill={accentHex} />\n\n {/* 8. Top Surface Specular Flare */}\n <circle cx=\"50\" cy=\"39\" r=\"6\" fill={accentHex} opacity=\"0.15\" />\n </g>\n );\n}\n\n// ----------------------------------------------------------------------------\n// Legacy Delegates for backwards compatibility\n// ----------------------------------------------------------------------------\nexport function SkinPreview({ skinId }) {\n return <Item3DPreview itemId={skinId} />;\n}\n\nexport function PropPreview({ propId }) {\n return <Item3DPreview itemId={propId} />;\n}\n\nexport function PetPreview({ petId }) {\n return <Item3DPreview itemId={petId} />;\n}\n\nexport function AuraPreview({ auraId }) {\n return <Item3DPreview itemId={auraId} />;\n}\n\nexport function TrophyPreview({ trophyId }) {\n return <Item3DPreview itemId={trophyId} />;\n}\n\nexport function ThemePreview({ themeId }) {\n return <Item3DPreview itemId={themeId} />;\n}\n","export const skins = [\n // ---------------------------------------------------------------------------\n // 1. CYBER SUIT ARCHETYPE (IDs skin_0 - skin_9)\n // Tactical cybernetic operatives & street enforcers\n // ---------------------------------------------------------------------------\n {\n id: \"skin_0\",\n name: \"Neon Enforcer\",\n category: \"skins\",\n archetype: \"cyber_suit\",\n variant: \"tactical_visor\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#00f0ff\",\n secondaryColor: \"#003b46\",\n accentColor: \"#ffffff\",\n paletteName: \"Cyber Cyan\",\n description: \"Standard tactical patrol armor with dual wing antennas, high-intensity neon cyan brow visor, and responsive reactor core.\",\n previewColor: \"#00f0ff\"\n },\n {\n id: \"skin_1\",\n name: \"Crimson Striker\",\n category: \"skins\",\n archetype: \"cyber_suit\",\n variant: \"laser_scout\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#f43f5e\",\n secondaryColor: \"#4c0519\",\n accentColor: \"#fb7185\",\n paletteName: \"Crimson Laser\",\n description: \"Lightweight urban reconnaissance armor with an asymmetric tactical monocle HUD and red crosshair targeting optic.\",\n previewColor: \"#f43f5e\"\n },\n {\n id: \"skin_2\",\n name: \"Amber Sentinel\",\n category: \"skins\",\n archetype: \"cyber_suit\",\n variant: \"riot_shield\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#f59e0b\",\n secondaryColor: \"#451a03\",\n accentColor: \"#fef3c7\",\n paletteName: \"Amber Hazard\",\n description: \"Heavy reinforced blast armor featuring a hardened ballistic neck gorget and dual flashing amber emergency strobes.\",\n previewColor: \"#f59e0b\"\n },\n {\n id: \"skin_3\",\n name: \"Electric Specter\",\n category: \"skins\",\n archetype: \"cyber_suit\",\n variant: \"cyber_horns\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#a855f7\",\n secondaryColor: \"#2e1065\",\n accentColor: \"#e9d5ff\",\n paletteName: \"Electric Violet\",\n description: \"Covert electronic warfare suit equipped with twin swept-back cyber horn sensor antennas and purple pulse conduits.\",\n previewColor: \"#a855f7\"\n },\n {\n id: \"skin_4\",\n name: \"Gilded Vanguard\",\n category: \"skins\",\n archetype: \"cyber_suit\",\n variant: \"crown_radiator\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#fbbf24\",\n secondaryColor: \"#78350f\",\n accentColor: \"#ffffff\",\n paletteName: \"Gilded Sovereign\",\n description: \"Ceremonial commander battlesuit crowned with triple golden heatsink radiators and an auric gold arc reactor.\",\n previewColor: \"#fbbf24\"\n },\n {\n id: \"skin_5\",\n name: \"Acid Hazard\",\n category: \"skins\",\n archetype: \"cyber_suit\",\n variant: \"gas_respirator\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#84cc16\",\n secondaryColor: \"#1a2e05\",\n accentColor: \"#bef264\",\n paletteName: \"Toxic Lime\",\n description: \"Contaminated zone exosuit with dual canister filtration respirators and high-visibility yellow hazard chevron stripes.\",\n previewColor: \"#84cc16\"\n },\n {\n id: \"skin_6\",\n name: \"Frost Phantom\",\n category: \"skins\",\n archetype: \"cyber_suit\",\n variant: \"prism_goggles\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#38bdf8\",\n secondaryColor: \"#082f49\",\n accentColor: \"#e0f2fe\",\n paletteName: \"Glacial Ice\",\n description: \"Cryo-adapted high altitude armor featuring hexagonal dual prism goggles with icy blue internal laser refraction.\",\n previewColor: \"#38bdf8\"\n },\n {\n id: \"skin_7\",\n name: \"Obsidian Ronin\",\n category: \"skins\",\n archetype: \"cyber_suit\",\n variant: \"samurai_crest\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#e11d48\",\n secondaryColor: \"#18181b\",\n accentColor: \"#fda4af\",\n paletteName: \"Blood Ruby\",\n description: \"Cybernetic kabuto armor with a forward-swept golden horn crest and dual neck-collar tantō blade sheaths.\",\n previewColor: \"#e11d48\"\n },\n {\n id: \"skin_8\",\n name: \"Solar Overdrive\",\n category: \"skins\",\n archetype: \"cyber_suit\",\n variant: \"overdrive_vents\",\n tier: \"vip\",\n rarity: \"legendary\",\n color: \"#ff0055\",\n secondaryColor: \"#3f0015\",\n accentColor: \"#ffaa00\",\n paletteName: \"Plasma Magenta\",\n description: \"Hyper-clocked prototype suit featuring swept aerodynamic cooling fins glowing red-hot with plasma exhaust venting.\",\n previewColor: \"#ff0055\"\n },\n {\n id: \"skin_9\",\n name: \"Quantum Sovereign\",\n category: \"skins\",\n archetype: \"cyber_suit\",\n variant: \"holo_shroud\",\n tier: \"vip\",\n rarity: \"mythic\",\n color: \"#ffffff\",\n secondaryColor: \"#00f0ff\",\n accentColor: \"#38bdf8\",\n paletteName: \"Pure Platinum\",\n description: \"Legendary supreme operative armor featuring a floating crystalline holographic shroud and dual quantum emitters.\",\n previewColor: \"#ffffff\"\n },\n\n // ---------------------------------------------------------------------------\n // 2. MECHA PILOT ARCHETYPE (IDs skin_10 - skin_19)\n // Heavy robotic battlesuits, armored frames & titans\n // ---------------------------------------------------------------------------\n {\n id: \"skin_10\",\n name: \"Apex Frame\",\n category: \"skins\",\n archetype: \"mecha_pilot\",\n variant: \"v_fin\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#3b82f6\",\n secondaryColor: \"#172554\",\n accentColor: \"#93c5fd\",\n paletteName: \"Cobalt Mech\",\n description: \"Iconic military mobile suit frame featuring a prominent golden V-Fin antenna crest and reinforced chin guard.\",\n previewColor: \"#3b82f6\"\n },\n {\n id: \"skin_11\",\n name: \"Heavy Colossus\",\n category: \"skins\",\n archetype: \"mecha_pilot\",\n variant: \"blast_shield\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#94a3b8\",\n secondaryColor: \"#1e293b\",\n accentColor: \"#ffffff\",\n paletteName: \"Titanium Steel\",\n description: \"Super-heavy trench battlesuit equipped with a massive armored blast visor, dual searchlights, and boxy shoulder pods.\",\n previewColor: \"#94a3b8\"\n },\n {\n id: \"skin_12\",\n name: \"Berserk EVA\",\n category: \"skins\",\n archetype: \"mecha_pilot\",\n variant: \"eva_horn\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#9333ea\",\n secondaryColor: \"#22c55e\",\n accentColor: \"#4ade80\",\n paletteName: \"EVA Purple\",\n description: \"Unstable biomechanical pilot suit sporting a tall frontal unicorn horn blade, neon green teeth slits, and shoulder pylons.\",\n previewColor: \"#9333ea\"\n },\n {\n id: \"skin_13\",\n name: \"Iron Juggernaut\",\n category: \"skins\",\n archetype: \"mecha_pilot\",\n variant: \"cage_grille\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#d97706\",\n secondaryColor: \"#451a03\",\n accentColor: \"#fbbf24\",\n paletteName: \"Industrial Ochre\",\n description: \"Hardened mining rig armor with a heavy industrial cage grille faceplate and twin vertical smokestack exhausts.\",\n previewColor: \"#d97706\"\n },\n {\n id: \"skin_14\",\n name: \"Crimson Warmachine\",\n category: \"skins\",\n archetype: \"mecha_pilot\",\n variant: \"missile_pod\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#dc2626\",\n secondaryColor: \"#450a0a\",\n accentColor: \"#fca5a5\",\n paletteName: \"War Crimson\",\n description: \"Artillery command rig with twin shoulder-mounted micro-missile pods and a crimson HUD targeting scope.\",\n previewColor: \"#dc2626\"\n },\n {\n id: \"skin_15\",\n name: \"Plasma Dreadnought\",\n category: \"skins\",\n archetype: \"mecha_pilot\",\n variant: \"quad_array\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#06b6d4\",\n secondaryColor: \"#083344\",\n accentColor: \"#67e8f9\",\n paletteName: \"Plasma Cyan\",\n description: \"Naval assault mech featuring a quad-mast sensor antenna array and a high-output chest plasma reactor core.\",\n previewColor: \"#06b6d4\"\n },\n {\n id: \"skin_16\",\n name: \"Cyber Aegis\",\n category: \"skins\",\n archetype: \"mecha_pilot\",\n variant: \"halo_shield\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#10b981\",\n secondaryColor: \"#064e3b\",\n accentColor: \"#6ee7b7\",\n paletteName: \"Emerald Aegis\",\n description: \"Heavy defensive chassis armed with a hydraulic reinforced neck brace and dual hexagonal energy shields on shoulders.\",\n previewColor: \"#10b981\"\n },\n {\n id: \"skin_17\",\n name: \"Dread Goliath\",\n category: \"skins\",\n archetype: \"mecha_pilot\",\n variant: \"ram_horns\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#64748b\",\n secondaryColor: \"#ef4444\",\n accentColor: \"#f87171\",\n paletteName: \"Gunmetal Red\",\n description: \"Demolition battlesuit with massive curved mecha ramming horns and an intimidating single-slit red mono-eye.\",\n previewColor: \"#64748b\"\n },\n {\n id: \"skin_18\",\n name: \"Orbital Titan\",\n category: \"skins\",\n archetype: \"mecha_pilot\",\n variant: \"radar_dish\",\n tier: \"vip\",\n rarity: \"legendary\",\n color: \"#eab308\",\n secondaryColor: \"#1c1917\",\n accentColor: \"#fef08a\",\n paletteName: \"Solar Titan\",\n description: \"Deep-space defense frame with an orbital parabolic telemetry radar dish and dual high-gain comm masts.\",\n previewColor: \"#eab308\"\n },\n {\n id: \"skin_19\",\n name: \"Omega Destroyer\",\n category: \"skins\",\n archetype: \"mecha_pilot\",\n variant: \"hyper_wings\",\n tier: \"vip\",\n rarity: \"mythic\",\n color: \"#be123c\",\n secondaryColor: \"#4c0519\",\n accentColor: \"#fb7185\",\n paletteName: \"Omega Dark\",\n description: \"Ultimate planetary assault mech featuring swept hyper-drive flight wings, twin head cannons, and red-shifted thrusters.\",\n previewColor: \"#be123c\"\n },\n\n // ---------------------------------------------------------------------------\n // 3. STEALTH NINJA ARCHETYPE (IDs skin_20 - skin_29)\n // Cybernetic shinobi, shadow infiltrators & blade masters\n // ---------------------------------------------------------------------------\n {\n id: \"skin_20\",\n name: \"Shadow Shinobi\",\n category: \"skins\",\n archetype: \"stealth_ninja\",\n variant: \"flowing_headband\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#6366f1\",\n secondaryColor: \"#1e1b4b\",\n accentColor: \"#a5b4fc\",\n paletteName: \"Midnight Indigo\",\n description: \"Classic cyber shinobi gear with a polished titanium forehead hitai-ate plate and long flowing indigo cloth headband tails.\",\n previewColor: \"#6366f1\"\n },\n {\n id: \"skin_21\",\n name: \"Silent Infiltrator\",\n category: \"skins\",\n archetype: \"stealth_ninja\",\n variant: \"tactical_cowl\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#10b981\",\n secondaryColor: \"#022c22\",\n accentColor: \"#34d399\",\n paletteName: \"Night Emerald\",\n description: \"Black-ops balaclava shroud featuring a single glowing emerald thermal-optical monocle sensor with target acquisition.\",\n previewColor: \"#10b981\"\n },\n {\n id: \"skin_22\",\n name: \"Kage Oni\",\n category: \"skins\",\n archetype: \"stealth_ninja\",\n variant: \"oni_mask\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#ef4444\",\n secondaryColor: \"#450a0a\",\n accentColor: \"#ffffff\",\n paletteName: \"Demon Crimson\",\n description: \"Intimidating Japanese Oni demon half-mask equipped with glowing porcelain fangs and dual menacing crimson horns.\",\n previewColor: \"#ef4444\"\n },\n {\n id: \"skin_23\",\n name: \"Cyber Kitsune\",\n category: \"skins\",\n archetype: \"stealth_ninja\",\n variant: \"kitsune_ears\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#f43f5e\",\n secondaryColor: \"#ffe4e6\",\n accentColor: \"#fb7185\",\n paletteName: \"Sakura Blossom\",\n description: \"Agile spirit operative suit featuring pointed cybernetic fox ears and delicate sensor whisker decals along the cheeks.\",\n previewColor: \"#f43f5e\"\n },\n {\n id: \"skin_24\",\n name: \"Cyber Ronin Kasa\",\n category: \"skins\",\n archetype: \"stealth_ninja\",\n variant: \"conical_kasa\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#eab308\",\n secondaryColor: \"#18181b\",\n accentColor: \"#fef08a\",\n paletteName: \"Ronin Gold\",\n description: \"Masterless wanderer gear sporting a wide-brim conical cyber kasa straw hat with an under-rim glowing neon yellow circuit ring.\",\n previewColor: \"#eab308\"\n },\n {\n id: \"skin_25\",\n name: \"Obsidian Blade\",\n category: \"skins\",\n archetype: \"stealth_ninja\",\n variant: \"twin_katanas\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#14b8a6\",\n secondaryColor: \"#042f2e\",\n accentColor: \"#5eead4\",\n paletteName: \"Teal Phantom\",\n description: \"Dual-wield assassin outfit featuring crossed holographic katana sheaths on the back and a blindfold-style sensory visor.\",\n previewColor: \"#14b8a6\"\n },\n {\n id: \"skin_26\",\n name: \"Raven Tengu\",\n category: \"skins\",\n archetype: \"stealth_ninja\",\n variant: \"tengu_beak\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#8b5cf6\",\n secondaryColor: \"#1e1b4b\",\n accentColor: \"#c4b5fd\",\n paletteName: \"Amethyst Raven\",\n description: \"Mountain phantom gear with an aerodynamic raven beak half-mask and razor-sharp feathered blade pauldrons.\",\n previewColor: \"#8b5cf6\"\n },\n {\n id: \"skin_27\",\n name: \"Smoke Wraith\",\n category: \"skins\",\n archetype: \"stealth_ninja\",\n variant: \"veil_shroud\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#94a3b8\",\n secondaryColor: \"#0f172a\",\n accentColor: \"#e2e8f0\",\n paletteName: \"Slate Mist\",\n description: \"Infiltration gear wrapped in a hooded dark nanofiber veil with glowing horizontal eye slits and faint smoke dissipation.\",\n previewColor: \"#94a3b8\"\n },\n {\n id: \"skin_28\",\n name: \"Midnight Duelist\",\n category: \"skins\",\n archetype: \"stealth_ninja\",\n variant: \"scythe_crest\",\n tier: \"vip\",\n rarity: \"legendary\",\n color: \"#ec4899\",\n secondaryColor: \"#500724\",\n accentColor: \"#f472b6\",\n paletteName: \"Cyber Magenta\",\n description: \"Elite arena champion gear featuring an elegant crescent moon scythe crest on the forehead and twin kunai collar pins.\",\n previewColor: \"#ec4899\"\n },\n {\n id: \"skin_29\",\n name: \"Void Assassin\",\n category: \"skins\",\n archetype: \"stealth_ninja\",\n variant: \"void_mask\",\n tier: \"vip\",\n rarity: \"mythic\",\n color: \"#00f0ff\",\n secondaryColor: \"#020617\",\n accentColor: \"#ffffff\",\n paletteName: \"Void Shinobi\",\n description: \"Pitch-black stealth armor absorbing 99% of light, featuring glowing cyan runic kanji hovering mysteriously in front of the face.\",\n previewColor: \"#00f0ff\"\n },\n\n // ---------------------------------------------------------------------------\n // 4. MATRIX HACKER ARCHETYPE (IDs skin_30 - skin_39)\n // Netrunners, underground cryptographers & terminal phreaks\n // ---------------------------------------------------------------------------\n {\n id: \"skin_30\",\n name: \"Root Netrunner\",\n category: \"skins\",\n archetype: \"matrix_hacker\",\n variant: \"hoodie_cowl\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#10b981\",\n secondaryColor: \"#022c22\",\n accentColor: \"#6ee7b7\",\n paletteName: \"Phosphor Terminal\",\n description: \"Underground hacker suit with a deep oversized hooded cowl dripping with vertical green phosphorescent digital code streams.\",\n previewColor: \"#10b981\"\n },\n {\n id: \"skin_31\",\n name: \"Binary Coder\",\n category: \"skins\",\n archetype: \"matrix_hacker\",\n variant: \"vr_goggles\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#06b6d4\",\n secondaryColor: \"#083344\",\n accentColor: \"#67e8f9\",\n paletteName: \"Terminal Cyan\",\n description: \"Classic retro cyberdeck enthusiast gear equipped with chunky rectangular VR goggles and an omnidirectional radio antenna.\",\n previewColor: \"#06b6d4\"\n },\n {\n id: \"skin_32\",\n name: \"ZeroDay Daemon\",\n category: \"skins\",\n archetype: \"matrix_hacker\",\n variant: \"daemon_horns\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#ef4444\",\n secondaryColor: \"#450a0a\",\n accentColor: \"#fca5a5\",\n paletteName: \"Kernel Panic\",\n description: \"Malicious exploit runner sporting a dark beanie cowl with integrated red cyber devil horns and glowing memory fault LEDs.\",\n previewColor: \"#ef4444\"\n },\n {\n id: \"skin_33\",\n name: \"Glitch Cracker\",\n category: \"skins\",\n archetype: \"matrix_hacker\",\n variant: \"glitch_halo\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#eab308\",\n secondaryColor: \"#422006\",\n accentColor: \"#fef08a\",\n paletteName: \"Bug Amber\",\n description: \"Glitching outfit surrounded by jittering holographic wireframe shards and corrupted polygon artifacts hovering in 3D space.\",\n previewColor: \"#eab308\"\n },\n {\n id: \"skin_34\",\n name: \"Defrag Nethead\",\n category: \"skins\",\n archetype: \"matrix_hacker\",\n variant: \"floating_hud\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#3b82f6\",\n secondaryColor: \"#172554\",\n accentColor: \"#93c5fd\",\n paletteName: \"Root Blue\",\n description: \"High-spec sysadmin gear featuring a floating terminal prompt HUD window [root@sys ~]# hovering persistently beside the ear.\",\n previewColor: \"#3b82f6\"\n },\n {\n id: \"skin_35\",\n name: \"Acid Breacher\",\n category: \"skins\",\n archetype: \"matrix_hacker\",\n variant: \"respirator_eq\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#a3e635\",\n secondaryColor: \"#14532d\",\n accentColor: \"#d9f99d\",\n paletteName: \"Toxic Byte\",\n description: \"Cybergoth infiltrator gear featuring a twin respirator mask fitted with responsive multi-color equalizer audio VU bars.\",\n previewColor: \"#a3e635\"\n },\n {\n id: \"skin_36\",\n name: \"Overclocked Phreak\",\n category: \"skins\",\n archetype: \"matrix_hacker\",\n variant: \"heatsink_fins\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#f97316\",\n secondaryColor: \"#431407\",\n accentColor: \"#fed7aa\",\n paletteName: \"Copper Thermal\",\n description: \"Extreme liquid-cooled rig featuring exposed copper cranium heatsink cooling fins glowing brightly with molten thermal heat.\",\n previewColor: \"#f97316\"\n },\n {\n id: \"skin_37\",\n name: \"Fiber Cablehead\",\n category: \"skins\",\n archetype: \"matrix_hacker\",\n variant: \"cable_dreads\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#8b5cf6\",\n secondaryColor: \"#2e1065\",\n accentColor: \"#c4b5fd\",\n paletteName: \"Fiber Optics\",\n description: \"Deep-net diving suit with a cascade of glowing fiber-optic cable dreadlocks flowing down behind the helmet.\",\n previewColor: \"#8b5cf6\"\n },\n {\n id: \"skin_38\",\n name: \"Anonymous Skull\",\n category: \"skins\",\n archetype: \"matrix_hacker\",\n variant: \"cyber_skull\",\n tier: \"vip\",\n rarity: \"legendary\",\n color: \"#f43f5e\",\n secondaryColor: \"#0f172a\",\n accentColor: \"#fb7185\",\n paletteName: \"Exploit Red\",\n description: \"Legendary hacktivist avatar equipped with a glowing cybernetic skull faceplate streaming live memory disassembly code.\",\n previewColor: \"#f43f5e\"\n },\n {\n id: \"skin_39\",\n name: \"Architect AI\",\n category: \"skins\",\n archetype: \"matrix_hacker\",\n variant: \"wireframe_cube\",\n tier: \"vip\",\n rarity: \"mythic\",\n color: \"#00f0ff\",\n secondaryColor: \"#050510\",\n accentColor: \"#a5f3fc\",\n paletteName: \"Tesseract Neon\",\n description: \"Sentient entity manifestation featuring a rotating 4D holographic wireframe tesseract cube encapsulating the entire helm.\",\n previewColor: \"#00f0ff\"\n },\n\n // ---------------------------------------------------------------------------\n // 5. CELESTIAL ASTRO ARCHETYPE (IDs skin_40 - skin_49)\n // Deep-space explorers, cosmic voyagers & void entities\n // ---------------------------------------------------------------------------\n {\n id: \"skin_40\",\n name: \"Solar Voyager\",\n category: \"skins\",\n archetype: \"celestial_astro\",\n variant: \"bubble_dome\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#f59e0b\",\n secondaryColor: \"#451a03\",\n accentColor: \"#fde68a\",\n paletteName: \"Sun Gold\",\n description: \"High-visibility EVA exploration suit with a large spherical gold-mirrored bubble dome helmet and high-output floodlight.\",\n previewColor: \"#f59e0b\"\n },\n {\n id: \"skin_41\",\n name: \"Lunar Cosmonaut\",\n category: \"skins\",\n archetype: \"celestial_astro\",\n variant: \"lunar_pack\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#e2e8f0\",\n secondaryColor: \"#1e293b\",\n accentColor: \"#ffffff\",\n paletteName: \"Apollo White\",\n description: \"Classic lunar surface suit with pressurized white composite shell, gold foil visor rim, and dual VHF telemetry whip antennas.\",\n previewColor: \"#e2e8f0\"\n },\n {\n id: \"skin_42\",\n name: \"Cosmic Starfarer\",\n category: \"skins\",\n archetype: \"celestial_astro\",\n variant: \"sunburst_halo\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#facc15\",\n secondaryColor: \"#713f12\",\n accentColor: \"#fef9c3\",\n paletteName: \"Starlight Gold\",\n description: \"Astral navigation suit featuring an eight-point celestial sunburst corona halo floating radiant behind the helmet.\",\n previewColor: \"#facc15\"\n },\n {\n id: \"skin_43\",\n name: \"Nebula Drifter\",\n category: \"skins\",\n archetype: \"celestial_astro\",\n variant: \"saturn_ring\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#c084fc\",\n secondaryColor: \"#3b0764\",\n accentColor: \"#e9d5ff\",\n paletteName: \"Nebula Lilac\",\n description: \"Deep space nomad suit encircled by an ethereal tilted planetary ring with microscopic luminous moonlets orbiting the head.\",\n previewColor: \"#c084fc\"\n },\n {\n id: \"skin_44\",\n name: \"Astral Pioneer\",\n category: \"skins\",\n archetype: \"celestial_astro\",\n variant: \"star_crown\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#38bdf8\",\n secondaryColor: \"#082f49\",\n accentColor: \"#bae6fd\",\n paletteName: \"Sky Azure\",\n description: \"Interstellar boundary scout crowned with five faceted starlight crystals that emit gentle twinkling photonic pulses.\",\n previewColor: \"#38bdf8\"\n },\n {\n id: \"skin_45\",\n name: \"Void Nomad\",\n category: \"skins\",\n archetype: \"celestial_astro\",\n variant: \"eclipse_corona\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#64748b\",\n secondaryColor: \"#020617\",\n accentColor: \"#94a3b8\",\n paletteName: \"Void Obsidian\",\n description: \"Black hole survey suit enclosed in a dark singularity mask with a shimmering golden accretion disk corona rim.\",\n previewColor: \"#64748b\"\n },\n {\n id: \"skin_46\",\n name: \"Supernova Stargazer\",\n category: \"skins\",\n archetype: \"celestial_astro\",\n variant: \"pulsar_spires\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#f43f5e\",\n secondaryColor: \"#4c0519\",\n accentColor: \"#fda4af\",\n paletteName: \"Supernova Red\",\n description: \"High-energy stellar researcher suit with dual vertical pulsar radiation beam spires extending from the helmet apex and chin.\",\n previewColor: \"#f43f5e\"\n },\n {\n id: \"skin_47\",\n name: \"Aurora Oracle\",\n category: \"skins\",\n archetype: \"celestial_astro\",\n variant: \"aurora_ribbons\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#2dd4bf\",\n secondaryColor: \"#042f2e\",\n accentColor: \"#99f6e4\",\n paletteName: \"Aurora Borealis\",\n description: \"Mystic spacefarer attire with flowing translucent polar aurora ribbons waving gracefully in zero-gravity above the helmet.\",\n previewColor: \"#2dd4bf\"\n },\n {\n id: \"skin_48\",\n name: \"Eclipse Zenith\",\n category: \"skins\",\n archetype: \"celestial_astro\",\n variant: \"angel_wings\",\n tier: \"vip\",\n rarity: \"legendary\",\n color: \"#a855f7\",\n secondaryColor: \"#1e1b4b\",\n accentColor: \"#d8b4fe\",\n paletteName: \"Cosmic Amethyst\",\n description: \"Exalted celestial avatar featuring sweeping cybernetic energy wings on the shoulders and a luminous floating cosmic nimbus.\",\n previewColor: \"#a855f7\"\n },\n {\n id: \"skin_49\",\n name: \"Omega Singularity\",\n category: \"skins\",\n archetype: \"celestial_astro\",\n variant: \"singularity_core\",\n tier: \"vip\",\n rarity: \"mythic\",\n color: \"#ffffff\",\n secondaryColor: \"#030712\",\n accentColor: \"#38bdf8\",\n paletteName: \"Event Horizon\",\n description: \"Mythic entity existing at the edge of space-time, featuring a gravitational light-warping lens ring and orbiting cosmic motes.\",\n previewColor: \"#ffffff\"\n }\n];\n","export const props = [\n // ---------------------------------------------------------------------------\n // 1. SUPERCOMPUTER ARCHETYPE (IDs prop_0 - prop_4)\n // Computing towers, mainframes & server rigs\n // ---------------------------------------------------------------------------\n {\n id: \"prop_0\",\n name: \"Quantum Server Tower\",\n category: \"props\",\n archetype: \"supercomputer\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#00f0ff\",\n secondaryColor: \"#003b46\",\n accentColor: \"#ffffff\",\n paletteName: \"Cyber Cyan\",\n description: \"Monolithic desktop server blade with transparent liquid cooling tubes and cyan telemetry LEDs.\"\n },\n {\n id: \"prop_1\",\n name: \"Cryo Mainframe Node\",\n category: \"props\",\n archetype: \"supercomputer\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#38bdf8\",\n secondaryColor: \"#0c4a6e\",\n accentColor: \"#e0f2fe\",\n paletteName: \"Frost Blue\",\n description: \"Horizontal rack cluster unit equipped with sub-zero cryo cooling vents and frosty blue indicator lights.\"\n },\n {\n id: \"prop_2\",\n name: \"Neural Blade Rig\",\n category: \"props\",\n archetype: \"supercomputer\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#a855f7\",\n secondaryColor: \"#2e1065\",\n accentColor: \"#f3e8ff\",\n paletteName: \"Electric Violet\",\n description: \"Dual blade computation unit with pulsating violet data bus conduits and active disk array.\"\n },\n {\n id: \"prop_3\",\n name: \"Core AI Data Matrix\",\n category: \"props\",\n archetype: \"supercomputer\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#10b981\",\n secondaryColor: \"#022c22\",\n accentColor: \"#6ee7b7\",\n paletteName: \"Matrix Emerald\",\n description: \"Cylindrical borosilicate glass mainframe containing an illuminated generative neural network core.\"\n },\n {\n id: \"prop_4\",\n name: \"Exa Supercluster\",\n category: \"props\",\n archetype: \"supercomputer\",\n tier: \"vip\",\n rarity: \"legendary\",\n color: \"#fbbf24\",\n secondaryColor: \"#78350f\",\n accentColor: \"#fef08a\",\n paletteName: \"Auric Gold\",\n description: \"Heavy dual-bay industrial computing tower with massive gold-plated heatsink radiators and status gauges.\"\n },\n\n // ---------------------------------------------------------------------------\n // 2. DUAL MONITOR ARCHETYPE (IDs prop_5 - prop_9)\n // Screens, battlestations & panoramic terminals\n // ---------------------------------------------------------------------------\n {\n id: \"prop_5\",\n name: \"Ultrawide Curved OLED\",\n category: \"props\",\n archetype: \"dual_monitor\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#06b6d4\",\n secondaryColor: \"#083344\",\n accentColor: \"#67e8f9\",\n paletteName: \"Quantum Aqua\",\n description: \"Curved 49-inch panoramic display showing syntax-highlighted code editor and live compiler telemetry.\"\n },\n {\n id: \"prop_6\",\n name: \"Dual Stacked Vertical\",\n category: \"props\",\n archetype: \"dual_monitor\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#3b82f6\",\n secondaryColor: \"#172554\",\n accentColor: \"#93c5fd\",\n paletteName: \"Cobalt Blue\",\n description: \"Ergonomic dual-screen configuration featuring a bottom landscape monitor and top vertical code terminal.\"\n },\n {\n id: \"prop_7\",\n name: \"Triple Panoramic Array\",\n category: \"props\",\n archetype: \"dual_monitor\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#ec4899\",\n secondaryColor: \"#500724\",\n accentColor: \"#f472b6\",\n paletteName: \"Cyber Pink\",\n description: \"Triple-display wrap-around cockpit setup providing complete peripheral immersion for multi-agent tracking.\"\n },\n {\n id: \"prop_8\",\n name: \"Holo Frameless Display\",\n category: \"props\",\n archetype: \"dual_monitor\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#8b5cf6\",\n secondaryColor: \"#1e1b4b\",\n accentColor: \"#c4b5fd\",\n paletteName: \"Neon Purple\",\n description: \"Edge-to-edge transparent glass panel projecting glowing purple holographic windows directly into desk space.\"\n },\n {\n id: \"prop_9\",\n name: \"Cyberpunk Terminal HUD\",\n category: \"props\",\n archetype: \"dual_monitor\",\n tier: \"vip\",\n rarity: \"legendary\",\n color: \"#f59e0b\",\n secondaryColor: \"#451a03\",\n accentColor: \"#fef3c7\",\n paletteName: \"Amber CRT\",\n description: \"Chunky retro-futuristic dual curved CRT battlestation with amber scanlines, toggle switches, and tape reels.\"\n },\n\n // ---------------------------------------------------------------------------\n // 3. ESPRESSO STATION ARCHETYPE (IDs prop_10 - prop_14)\n // Coffee machines, brew stations & caffeine rigs\n // ---------------------------------------------------------------------------\n {\n id: \"prop_10\",\n name: \"Artisan Dual-Boiler Rig\",\n category: \"props\",\n archetype: \"espresso_station\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#e2e8f0\",\n secondaryColor: \"#1e293b\",\n accentColor: \"#ffffff\",\n paletteName: \"Chrome Steel\",\n description: \"Polished stainless-steel espresso machine featuring dual portafilters, analog pressure dials, and steam wand.\"\n },\n {\n id: \"prop_11\",\n name: \"Cold Drip Spiral Tower\",\n category: \"props\",\n archetype: \"espresso_station\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#0284c7\",\n secondaryColor: \"#082f49\",\n accentColor: \"#38bdf8\",\n paletteName: \"Deep Blue\",\n description: \"Laboratory-grade borosilicate spiral cold-drip extraction tower slowly dripping precision caffeine.\"\n },\n {\n id: \"prop_12\",\n name: \"Cyber Capsule Pod\",\n category: \"props\",\n archetype: \"espresso_station\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#f97316\",\n secondaryColor: \"#431407\",\n accentColor: \"#fed7aa\",\n paletteName: \"Sunset Orange\",\n description: \"Compact matte cyber capsule espresso maker with LED digital temperature touch bar and self-cleaning boiler.\"\n },\n {\n id: \"prop_13\",\n name: \"Thermal Pour Precision\",\n category: \"props\",\n archetype: \"espresso_station\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#84cc16\",\n secondaryColor: \"#1a2e05\",\n accentColor: \"#bef264\",\n paletteName: \"Lime Green\",\n description: \"Artisanal specialty coffee set featuring a gooseneck thermal kettle, digital scale, and ceramic cone dripper.\"\n },\n {\n id: \"prop_14\",\n name: \"Gilded Sovereign Barista\",\n category: \"props\",\n archetype: \"espresso_station\",\n tier: \"vip\",\n rarity: \"legendary\",\n color: \"#eab308\",\n secondaryColor: \"#18181b\",\n accentColor: \"#fef08a\",\n paletteName: \"Imperial Gold\",\n description: \"Luxurious royal brass espresso machine with gold grouphead levers and steam valves for elite headquarters.\"\n },\n\n // ---------------------------------------------------------------------------\n // 4. HOLOGRAM EMITTER ARCHETYPE (IDs prop_15 - prop_19)\n // 3D volumetric projectors & photonic cores\n // ---------------------------------------------------------------------------\n {\n id: \"prop_15\",\n name: \"Holographic Earth Globe\",\n category: \"props\",\n archetype: \"hologram_emitter\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#22d3ee\",\n secondaryColor: \"#083344\",\n accentColor: \"#a5f3fc\",\n paletteName: \"Hologram Cyan\",\n description: \"Circular desktop emitter projecting an interactive 3D wireframe spinning earth with real-time latency ping arcs.\"\n },\n {\n id: \"prop_16\",\n name: \"Code Syntax Holopad\",\n category: \"props\",\n archetype: \"hologram_emitter\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#34d399\",\n secondaryColor: \"#022c22\",\n accentColor: \"#a7f3d0\",\n paletteName: \"Neon Mint\",\n description: \"Hexagonal projector casting an illuminated floating 3D matrix of syntax tokens and abstract syntax trees.\"\n },\n {\n id: \"prop_17\",\n name: \"Topology Diagram Spire\",\n category: \"props\",\n archetype: \"hologram_emitter\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#818cf8\",\n secondaryColor: \"#1e1b4b\",\n accentColor: \"#c7d2fe\",\n paletteName: \"Indigo Laser\",\n description: \"Vertical laser spire beaming a multi-tiered microservice cluster architecture diagram with live traffic nodes.\"\n },\n {\n id: \"prop_18\",\n name: \"DNA Helix Bio-Core\",\n category: \"props\",\n archetype: \"hologram_emitter\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#f43f5e\",\n secondaryColor: \"#4c0519\",\n accentColor: \"#fca5a5\",\n paletteName: \"Ruby Laser\",\n description: \"Volumetric projector producing a continuous slowly spinning double-helix strand with luminous base pairs.\"\n },\n {\n id: \"prop_19\",\n name: \"Quantum Tesseract Emitter\",\n category: \"props\",\n archetype: \"hologram_emitter\",\n tier: \"vip\",\n rarity: \"legendary\",\n color: \"#c084fc\",\n secondaryColor: \"#3b0764\",\n accentColor: \"#f3e8ff\",\n paletteName: \"Void Violet\",\n description: \"Advanced optical resonator projecting a self-intersecting 4D hypercube that folds smoothly across time axes.\"\n },\n\n // ---------------------------------------------------------------------------\n // 5. ARCADE CABINET ARCHETYPE (IDs prop_20 - prop_24)\n // Retro game boxes, fight sticks & coin-op tables\n // ---------------------------------------------------------------------------\n {\n id: \"prop_20\",\n name: \"Retro 8-Bit Arcade\",\n category: \"props\",\n archetype: \"arcade_cabinet\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#f43f5e\",\n secondaryColor: \"#4c0519\",\n accentColor: \"#fde047\",\n paletteName: \"Arcade Red\",\n description: \"Classic wood-paneled coin-op cabinet with clicky bat-top joystick, lighted marquee, and convex CRT bezel.\"\n },\n {\n id: \"prop_21\",\n name: \"Neo-Geo Fight Station\",\n category: \"props\",\n archetype: \"arcade_cabinet\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#3b82f6\",\n secondaryColor: \"#172554\",\n accentColor: \"#93c5fd\",\n paletteName: \"Fighter Blue\",\n description: \"Dual arcade controller battlestation featuring authentic microswitch buttons and competition-grade ball tops.\"\n },\n {\n id: \"prop_22\",\n name: \"Cyberpunk Pinball Rig\",\n category: \"props\",\n archetype: \"arcade_cabinet\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#eab308\",\n secondaryColor: \"#422006\",\n accentColor: \"#fef08a\",\n paletteName: \"Neon Yellow\",\n description: \"Angled digital pinball console with physical nudge sensors, illuminated bumpers, and neon wire ramps.\"\n },\n {\n id: \"prop_23\",\n name: \"Low-Profile Cocktail Table\",\n category: \"props\",\n archetype: \"arcade_cabinet\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#10b981\",\n secondaryColor: \"#022c22\",\n accentColor: \"#34d399\",\n paletteName: \"Jade Green\",\n description: \"Flat-top smoked glass cocktail arcade table with dual-side controllers and under-glass pixel battle display.\"\n },\n {\n id: \"prop_24\",\n name: \"Synthwave Rhythm Machine\",\n category: \"props\",\n archetype: \"arcade_cabinet\",\n tier: \"vip\",\n rarity: \"legendary\",\n color: \"#d946ef\",\n secondaryColor: \"#3b0764\",\n accentColor: \"#f472b6\",\n paletteName: \"Synth Magenta\",\n description: \"Glowing synthwave rhythm cabinet equipped with responsive laser beat bars and chrome volume knobs.\"\n },\n\n // ---------------------------------------------------------------------------\n // 6. TERRARIUM BONSAI ARCHETYPE (IDs prop_25 - prop_29)\n // Miniature trees, bio-domes & hydroponic flora\n // ---------------------------------------------------------------------------\n {\n id: \"prop_25\",\n name: \"Zen Bonsai Pine\",\n category: \"props\",\n archetype: \"terrarium_bonsai\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#16a34a\",\n secondaryColor: \"#14532d\",\n accentColor: \"#86efac\",\n paletteName: \"Forest Green\",\n description: \"Meticulously pruned miniature pine bonsai tree growing in a shallow stone tray with smooth zen river pebbles.\"\n },\n {\n id: \"prop_26\",\n name: \"Bioluminescent Glass Dome\",\n category: \"props\",\n archetype: \"terrarium_bonsai\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#06b6d4\",\n secondaryColor: \"#083344\",\n accentColor: \"#67e8f9\",\n paletteName: \"Phosphor Aqua\",\n description: \"Hermetically sealed glass cloche dome incubating glowing neon blue moss and soft bioluminescent mushrooms.\"\n },\n {\n id: \"prop_27\",\n name: \"Hydroponic Seedling Pod\",\n category: \"props\",\n archetype: \"terrarium_bonsai\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#a855f7\",\n secondaryColor: \"#2e1065\",\n accentColor: \"#e9d5ff\",\n paletteName: \"Flora Violet\",\n description: \"Clean minimalist white hydroponic grow pod with automatic nutrient misting and calibrated purple spectrum LEDs.\"\n },\n {\n id: \"prop_28\",\n name: \"Cybernetic Flora Biome\",\n category: \"props\",\n archetype: \"terrarium_bonsai\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#f59e0b\",\n secondaryColor: \"#451a03\",\n accentColor: \"#fef3c7\",\n paletteName: \"Amber Moss\",\n description: \"Hexagonal glass vivarium interlaced with copper moisture sensors and robotic soil temperature probes.\"\n },\n {\n id: \"prop_29\",\n name: \"Sakura Nanotree\",\n category: \"props\",\n archetype: \"terrarium_bonsai\",\n tier: \"vip\",\n rarity: \"legendary\",\n color: \"#fb7185\",\n secondaryColor: \"#4c0519\",\n accentColor: \"#ffe4e6\",\n paletteName: \"Sakura Blossom\",\n description: \"Miniature cherry blossom bonsai with delicate pink blossoms that emit faint floating micro-petals.\"\n },\n\n // ---------------------------------------------------------------------------\n // 7. LAB OSCILLOSCOPE ARCHETYPE (IDs prop_30 - prop_34)\n // Signal analyzers, RF benches & measurement hubs\n // ---------------------------------------------------------------------------\n {\n id: \"prop_30\",\n name: \"Digital Wave Analyzer\",\n category: \"props\",\n archetype: \"lab_oscilloscope\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#22c55e\",\n secondaryColor: \"#052e16\",\n accentColor: \"#86efac\",\n paletteName: \"Phosphor Green\",\n description: \"Benchtop oscilloscope with green phosphor display, dual vertical BNC inputs, and responsive frequency dials.\"\n },\n {\n id: \"prop_31\",\n name: \"RF Spectrum Station\",\n category: \"props\",\n archetype: \"lab_oscilloscope\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#0ea5e9\",\n secondaryColor: \"#082f49\",\n accentColor: \"#7dd3fc\",\n paletteName: \"Sky Blue\",\n description: \"Wide-screen RF spectrum analyzer rendering fast Fourier transform frequency peaks and harmonic bars.\"\n },\n {\n id: \"prop_32\",\n name: \"Logic Analyzer Unit\",\n category: \"props\",\n archetype: \"lab_oscilloscope\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#f59e0b\",\n secondaryColor: \"#451a03\",\n accentColor: \"#fde68a\",\n paletteName: \"Logic Amber\",\n description: \"16-channel digital logic state analyzer with multi-colored probe harness connected directly into the desk.\"\n },\n {\n id: \"prop_33\",\n name: \"Precision Multimeter Bench\",\n category: \"props\",\n archetype: \"lab_oscilloscope\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#ec4899\",\n secondaryColor: \"#500724\",\n accentColor: \"#fbcfe8\",\n paletteName: \"Signal Pink\",\n description: \"Modular stacked laboratory instrument cluster with digital voltage 7-segment readouts and gold test leads.\"\n },\n {\n id: \"prop_34\",\n name: \"Laser Interferometer Hub\",\n category: \"props\",\n archetype: \"lab_oscilloscope\",\n tier: \"vip\",\n rarity: \"legendary\",\n color: \"#a855f7\",\n secondaryColor: \"#2e1065\",\n accentColor: \"#d8b4fe\",\n paletteName: \"Quantum Purple\",\n description: \"High-precision laser interferometer display graphing sub-atomic optical phase interference patterns.\"\n }\n];\n","export const pets = [\n {\n id: \"pet_0\",\n name: \"None\",\n category: \"pets\",\n archetype: \"none\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#64748b\",\n secondaryColor: \"#1e293b\",\n accentColor: \"#94a3b8\",\n paletteName: \"Neutral Slate\",\n description: \"Clean workstation desk without an active cyber companion.\"\n },\n\n // ---------------------------------------------------------------------------\n // 1. CYBER CAT ARCHETYPE (IDs pet_1 - pet_5)\n // Feline companions & desk loafs\n // ---------------------------------------------------------------------------\n {\n id: \"pet_1\",\n name: \"Cozy Calico Cat\",\n category: \"pets\",\n archetype: \"cyber_cat\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#f59e0b\",\n secondaryColor: \"#78350f\",\n accentColor: \"#ffffff\",\n paletteName: \"Amber Calico\",\n description: \"Warm tri-colored robotic feline curled up comfortably beside the keyboard, purring softly.\"\n },\n {\n id: \"pet_2\",\n name: \"Cyber Sphynx\",\n category: \"pets\",\n archetype: \"cyber_cat\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#00f0ff\",\n secondaryColor: \"#003b46\",\n accentColor: \"#a5f3fc\",\n paletteName: \"Cyber Cyan\",\n description: \"Sleek hairless biomechanical cat sporting glowing neon blue eye visors and ear sensors.\"\n },\n {\n id: \"pet_3\",\n name: \"Pixel Tabby\",\n category: \"pets\",\n archetype: \"cyber_cat\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#10b981\",\n secondaryColor: \"#022c22\",\n accentColor: \"#6ee7b7\",\n paletteName: \"Emerald Tabby\",\n description: \"Playful striped robot cat that playfully swats at the code cursor and bats at desktop cables.\"\n },\n {\n id: \"pet_4\",\n name: \"Robo Maine Coon\",\n category: \"pets\",\n archetype: \"cyber_cat\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#a855f7\",\n secondaryColor: \"#2e1065\",\n accentColor: \"#e9d5ff\",\n paletteName: \"Violet Fluff\",\n description: \"Majestic large-frame companion with nanofiber fur and a long articulated robotic plume tail.\"\n },\n {\n id: \"pet_5\",\n name: \"Golden Maneki Neko\",\n category: \"pets\",\n archetype: \"cyber_cat\",\n tier: \"vip\",\n rarity: \"legendary\",\n color: \"#fbbf24\",\n secondaryColor: \"#78350f\",\n accentColor: \"#ffffff\",\n paletteName: \"Lucky Gold\",\n description: \"Traditional beckoning lucky cat recast in mirror-polished gold brass, clutching a silicon coin.\"\n },\n\n // ---------------------------------------------------------------------------\n // 2. DOZING SHIBA ARCHETYPE (IDs pet_6 - pet_10)\n // Loyal canine companions & dozing pups\n // ---------------------------------------------------------------------------\n {\n id: \"pet_6\",\n name: \"Dozing Shiba Inu\",\n category: \"pets\",\n archetype: \"dozing_shiba\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#ea580c\",\n secondaryColor: \"#7c2d12\",\n accentColor: \"#ffedd5\",\n paletteName: \"Shiba Ochre\",\n description: \"Faithful Japanese shiba snoozing gently on a padded wool desk mat with twitching robotic ears.\"\n },\n {\n id: \"pet_7\",\n name: \"Kuro-Shiba Bandit\",\n category: \"pets\",\n archetype: \"dozing_shiba\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#1e293b\",\n secondaryColor: \"#0f172a\",\n accentColor: \"#ef4444\",\n paletteName: \"Midnight Bandit\",\n description: \"Spirited black-and-tan shiba wearing a red bandana and alert white eyebrow dot sensors.\"\n },\n {\n id: \"pet_8\",\n name: \"Cyber Corgi\",\n category: \"pets\",\n archetype: \"dozing_shiba\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#f59e0b\",\n secondaryColor: \"#451a03\",\n accentColor: \"#ffffff\",\n paletteName: \"Corgi Gold\",\n description: \"Compact energetic corgi fitted with carbon-fiber leg braces and a wagging heart-shaped tail.\"\n },\n {\n id: \"pet_9\",\n name: \"Space Pug\",\n category: \"pets\",\n archetype: \"dozing_shiba\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#38bdf8\",\n secondaryColor: \"#082f49\",\n accentColor: \"#ffffff\",\n paletteName: \"Astro Blue\",\n description: \"Stocky astronaut pug wearing an airtight pressurized helmet bubble and tiny oxygen harness.\"\n },\n {\n id: \"pet_10\",\n name: \"Inari White Fox\",\n category: \"pets\",\n archetype: \"dozing_shiba\",\n tier: \"vip\",\n rarity: \"legendary\",\n color: \"#f43f5e\",\n secondaryColor: \"#ffe4e6\",\n accentColor: \"#ffffff\",\n paletteName: \"Divine Kitsune\",\n description: \"Mythic white fox pup with red eye markings and five wispy holographic tails that curl gracefully.\"\n },\n\n // ---------------------------------------------------------------------------\n // 3. HOVER DRONE ARCHETYPE (IDs pet_11 - pet_15)\n // Aerial quadcopters, recon spheres & escort bots\n // ---------------------------------------------------------------------------\n {\n id: \"pet_11\",\n name: \"Orbital Quadcopter\",\n category: \"pets\",\n archetype: \"hover_drone\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#06b6d4\",\n secondaryColor: \"#083344\",\n accentColor: \"#67e8f9\",\n paletteName: \"Cyan Flight\",\n description: \"Four-rotor micro drone maintaining a rock-steady hover above the monitor, flashing green nav lights.\"\n },\n {\n id: \"pet_12\",\n name: \"Recon Eye Sphere\",\n category: \"pets\",\n archetype: \"hover_drone\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#3b82f6\",\n secondaryColor: \"#172554\",\n accentColor: \"#93c5fd\",\n paletteName: \"Scanner Blue\",\n description: \"Smooth magnetic levitation sphere with a high-speed optical zoom lens tracking workstation activity.\"\n },\n {\n id: \"pet_13\",\n name: \"Ring-Wing VTOL\",\n category: \"pets\",\n archetype: \"hover_drone\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#10b981\",\n secondaryColor: \"#022c22\",\n accentColor: \"#34d399\",\n paletteName: \"Emerald Lift\",\n description: \"Twin ducted toroidal fan drone executing gentle tilt maneuvers and scanning debug logs.\"\n },\n {\n id: \"pet_14\",\n name: \"Hex-Shield Guardian\",\n category: \"pets\",\n archetype: \"hover_drone\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#8b5cf6\",\n secondaryColor: \"#2e1065\",\n accentColor: \"#c4b5fd\",\n paletteName: \"Defense Violet\",\n description: \"Tactical defense drone projecting rotating miniature hexagonal forcefields around the terminal.\"\n },\n {\n id: \"pet_15\",\n name: \"Golden Cargo Wasp\",\n category: \"pets\",\n archetype: \"hover_drone\",\n tier: \"vip\",\n rarity: \"legendary\",\n color: \"#fbbf24\",\n secondaryColor: \"#78350f\",\n accentColor: \"#ffffff\",\n paletteName: \"Royal Gold\",\n description: \"Luxury aerodynamic courier drone adorned with titanium gold plating and silent ionic thrusters.\"\n },\n\n // ---------------------------------------------------------------------------\n // 4. CYBER OWL ARCHETYPE (IDs pet_16 - pet_20)\n // Perched mechanical owls, chronometers & night sentinels\n // ---------------------------------------------------------------------------\n {\n id: \"pet_16\",\n name: \"Clockwork Brass Owl\",\n category: \"pets\",\n archetype: \"cyber_owl\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#d97706\",\n secondaryColor: \"#451a03\",\n accentColor: \"#fef08a\",\n paletteName: \"Brass Gear\",\n description: \"Steampunk automaton owl with ticking visible brass gears and amber aperture eyes that rotate 270 degrees.\"\n },\n {\n id: \"pet_17\",\n name: \"Night Watch Predator\",\n category: \"pets\",\n archetype: \"cyber_owl\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#6366f1\",\n secondaryColor: \"#1e1b4b\",\n accentColor: \"#a5b4fc\",\n paletteName: \"Night Indigo\",\n description: \"Sleek carbon-fiber surveillance owl perched on the corner of the monitor keeping silent watch.\"\n },\n {\n id: \"pet_18\",\n name: \"Arctic Snow Owl\",\n category: \"pets\",\n archetype: \"cyber_owl\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#e2e8f0\",\n secondaryColor: \"#1e293b\",\n accentColor: \"#38bdf8\",\n paletteName: \"Frost White\",\n description: \"Pristine white ceramic-composite owl with cryo-blue ocular filters that blink serenely.\"\n },\n {\n id: \"pet_19\",\n name: \"Holographic Oracle Owl\",\n category: \"pets\",\n archetype: \"cyber_owl\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#ec4899\",\n secondaryColor: \"#500724\",\n accentColor: \"#f472b6\",\n paletteName: \"Holo Pink\",\n description: \"Translucent photonic owl flickering softly on the desktop, emitting soft synthetic hoot chirps.\"\n },\n {\n id: \"pet_20\",\n name: \"Celestial Mech Owl\",\n category: \"pets\",\n archetype: \"cyber_owl\",\n tier: \"vip\",\n rarity: \"legendary\",\n color: \"#a855f7\",\n secondaryColor: \"#1e1b4b\",\n accentColor: \"#fef08a\",\n paletteName: \"Cosmic Violet\",\n description: \"Mythic celestial sentinel owl with shimmering stellar wings and an astral star crown.\"\n }\n];\n","export const auras = [\n // ---------------------------------------------------------------------------\n // 1. MATRIX RAIN ARCHETYPE (IDs aura_0 - aura_3)\n // Cascading code streams & digital downpours\n // ---------------------------------------------------------------------------\n {\n id: \"aura_0\",\n name: \"Digital Phosphor Rain\",\n category: \"auras\",\n archetype: \"matrix_rain\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#10b981\",\n secondaryColor: \"#022c22\",\n accentColor: \"#6ee7b7\",\n paletteName: \"Matrix Green\",\n description: \"Vertical streams of luminous phosphorescent green terminal code dripping continuously behind the agent.\"\n },\n {\n id: \"aura_1\",\n name: \"Crimson Root Deluge\",\n category: \"auras\",\n archetype: \"matrix_rain\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#ef4444\",\n secondaryColor: \"#450a0a\",\n accentColor: \"#fca5a5\",\n paletteName: \"Root Red\",\n description: \"Intense cascades of blood-red binary disassembly characters denoting critical exploit execution.\"\n },\n {\n id: \"aura_2\",\n name: \"Cyan Stream Deluge\",\n category: \"auras\",\n archetype: \"matrix_rain\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#00f0ff\",\n secondaryColor: \"#003b46\",\n accentColor: \"#a5f3fc\",\n paletteName: \"Cyber Cyan\",\n description: \"Ultra-fast vertical streaks of high-bandwidth fiber optic telemetry rain sparkling with data packets.\"\n },\n {\n id: \"aura_3\",\n name: \"Golden Sovereign Rain\",\n category: \"auras\",\n archetype: \"matrix_rain\",\n tier: \"vip\",\n rarity: \"legendary\",\n color: \"#fbbf24\",\n secondaryColor: \"#78350f\",\n accentColor: \"#ffffff\",\n paletteName: \"Auric Gold\",\n description: \"Shimmering golden cryptographic hashes cascading down in royal elegance around the workstation.\"\n },\n\n // ---------------------------------------------------------------------------\n // 2. PLASMA RING ARCHETYPE (IDs aura_4 - aura_7)\n // Orbital particle accelerators & coronal rings\n // ---------------------------------------------------------------------------\n {\n id: \"aura_4\",\n name: \"Electric Blue Orbit\",\n category: \"auras\",\n archetype: \"plasma_ring\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#3b82f6\",\n secondaryColor: \"#172554\",\n accentColor: \"#93c5fd\",\n paletteName: \"Electric Blue\",\n description: \"High-velocity magnetic torus spinning with superheated blue plasma ions orbiting the agent's shoulders.\"\n },\n {\n id: \"aura_5\",\n name: \"Solar Corona Ring\",\n category: \"auras\",\n archetype: \"plasma_ring\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#f59e0b\",\n secondaryColor: \"#451a03\",\n accentColor: \"#fef3c7\",\n paletteName: \"Solar Amber\",\n description: \"Blazing solar prominence ring crackling with radiant golden fusion energy and magnetic loops.\"\n },\n {\n id: \"aura_6\",\n name: \"Void Violet Ring\",\n category: \"auras\",\n archetype: \"plasma_ring\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#a855f7\",\n secondaryColor: \"#2e1065\",\n accentColor: \"#f3e8ff\",\n paletteName: \"Void Purple\",\n description: \"Subtle gravitational ring of dark matter plasma distorting ambient light behind the chair.\"\n },\n {\n id: \"aura_7\",\n name: \"Hyper Rose Plasma\",\n category: \"auras\",\n archetype: \"plasma_ring\",\n tier: \"vip\",\n rarity: \"legendary\",\n color: \"#ec4899\",\n secondaryColor: \"#500724\",\n accentColor: \"#fbcfe8\",\n paletteName: \"Neon Magenta\",\n description: \"High-frequency hot magenta plasma ring emitting rhythmic photonic shockwaves synchronized to agent work pulses.\"\n },\n\n // ---------------------------------------------------------------------------\n // 3. QUANTUM MIST ARCHETYPE (IDs aura_8 - aura_11)\n // Atmospheric clouds, nebulae & thermal vapors\n // ---------------------------------------------------------------------------\n {\n id: \"aura_8\",\n name: \"Starlight Nebula Mist\",\n category: \"auras\",\n archetype: \"quantum_mist\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#38bdf8\",\n secondaryColor: \"#082f49\",\n accentColor: \"#e0f2fe\",\n paletteName: \"Nebula Azure\",\n description: \"Drifting interstellar dust cloud twinkling with microscopic newborn star clusters and cool blue wisps.\"\n },\n {\n id: \"aura_9\",\n name: \"Toxic Acid Vapor\",\n category: \"auras\",\n archetype: \"quantum_mist\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#84cc16\",\n secondaryColor: \"#1a2e05\",\n accentColor: \"#d9f99d\",\n paletteName: \"Acid Lime\",\n description: \"Pungent radioactive lime-green vapor rolling off the workstation desk like industrial cryogenic exhaust.\"\n },\n {\n id: \"aura_10\",\n name: \"Arctic Frost Haze\",\n category: \"auras\",\n archetype: \"quantum_mist\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#e2e8f0\",\n secondaryColor: \"#1e293b\",\n accentColor: \"#ffffff\",\n paletteName: \"Cryo Ice\",\n description: \"Sub-zero glacial vapor cloud leaving temporary crystalline frost tendrils hanging in the air.\"\n },\n {\n id: \"aura_11\",\n name: \"Arcane Rift Smoke\",\n category: \"auras\",\n archetype: \"quantum_mist\",\n tier: \"vip\",\n rarity: \"legendary\",\n color: \"#8b5cf6\",\n secondaryColor: \"#1e1b4b\",\n accentColor: \"#c4b5fd\",\n paletteName: \"Arcane Rift\",\n description: \"Swirling dimensional rift vapor that occasionally reveals brief glimpses of parallel terminal universes.\"\n },\n\n // ---------------------------------------------------------------------------\n // 4. GLITCH HALO ARCHETYPE (IDs aura_12 - aura_15)\n // Holographic artifacts, wireframes & memory errors\n // ---------------------------------------------------------------------------\n {\n id: \"aura_12\",\n name: \"Prismatic RGB Glitch\",\n category: \"auras\",\n archetype: \"glitch_halo\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#00f0ff\",\n secondaryColor: \"#003b46\",\n accentColor: \"#ff0055\",\n paletteName: \"Chromatic RGB\",\n description: \"Jittering chromatic aberration ghost frames splitting into red, green, and blue displaced wireframe silhouettes.\"\n },\n {\n id: \"aura_13\",\n name: \"Kernel Bug Amber\",\n category: \"auras\",\n archetype: \"glitch_halo\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#f59e0b\",\n secondaryColor: \"#451a03\",\n accentColor: \"#fef3c7\",\n paletteName: \"Bug Amber\",\n description: \"Pulsing rectangular warning brackets and memory fault hex codes flickering erratically around the avatar.\"\n },\n {\n id: \"aura_14\",\n name: \"Cyber Red Error Box\",\n category: \"auras\",\n archetype: \"glitch_halo\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#f43f5e\",\n secondaryColor: \"#4c0519\",\n accentColor: \"#fca5a5\",\n paletteName: \"Fatal Crimson\",\n description: \"Floating red 3D wireframe bounding boxes snapping and glitching along coordinate axes.\"\n },\n {\n id: \"aura_15\",\n name: \"Quantum Tesseract Shards\",\n category: \"auras\",\n archetype: \"glitch_halo\",\n tier: \"vip\",\n rarity: \"legendary\",\n color: \"#a855f7\",\n secondaryColor: \"#2e1065\",\n accentColor: \"#ffffff\",\n paletteName: \"Tesseract Violet\",\n description: \"Mirrored crystalline polygonal holo-shards floating in weightless suspension that refract all nearby lighting.\"\n }\n];\n","export const trophies = [\n // ---------------------------------------------------------------------------\n // 1. GOLDEN KEY ARCHETYPE (IDs trophy_0 - trophy_3)\n // Master keys, root credentials & cryptographic access\n // ---------------------------------------------------------------------------\n {\n id: \"trophy_0\",\n name: \"Master Root Key\",\n category: \"trophies\",\n archetype: \"golden_key\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#fbbf24\",\n secondaryColor: \"#78350f\",\n accentColor: \"#ffffff\",\n paletteName: \"Master Gold\",\n description: \"Solid auric gold skeleton key featuring an integrated cryptographic microprocessor bit on a velvet stand.\"\n },\n {\n id: \"trophy_1\",\n name: \"Champion Passkey\",\n category: \"trophies\",\n archetype: \"golden_key\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#3b82f6\",\n secondaryColor: \"#172554\",\n accentColor: \"#93c5fd\",\n paletteName: \"Cobalt Champion\",\n description: \"Ceremonial titanium key engraved with laser cryptographic circuits awarded for top debugging velocity.\"\n },\n {\n id: \"trophy_2\",\n name: \"Cryptographic Key\",\n category: \"trophies\",\n archetype: \"golden_key\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#10b981\",\n secondaryColor: \"#022c22\",\n accentColor: \"#6ee7b7\",\n paletteName: \"Emerald Cipher\",\n description: \"Intricate mechanical key featuring concentric revolving brass cipher rings aligned to private seed phrase.\"\n },\n {\n id: \"trophy_3\",\n name: \"Sovereign Quantum Key\",\n category: \"trophies\",\n archetype: \"golden_key\",\n tier: \"vip\",\n rarity: \"legendary\",\n color: \"#ec4899\",\n secondaryColor: \"#500724\",\n accentColor: \"#fbcfe8\",\n paletteName: \"Sovereign Rose\",\n description: \"Exquisite platinum-pink key with laser-cut diamond teeth that refract ambient light into quantum spectrums.\"\n },\n\n // ---------------------------------------------------------------------------\n // 2. SILICON WAFER ARCHETYPE (IDs trophy_4 - trophy_7)\n // Nanometer semiconductor dies & superconductor slabs\n // ---------------------------------------------------------------------------\n {\n id: \"trophy_4\",\n name: \"3nm Monolithic Die\",\n category: \"trophies\",\n archetype: \"silicon_wafer\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#00f0ff\",\n secondaryColor: \"#003b46\",\n accentColor: \"#ffffff\",\n paletteName: \"Silicon Cyan\",\n description: \"Circular 300mm pure monocrystalline silicon wafer exhibiting hypnotic rainbow thin-film diffraction on slate stand.\"\n },\n {\n id: \"trophy_5\",\n name: \"Photonic Optical Wafer\",\n category: \"trophies\",\n archetype: \"silicon_wafer\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#8b5cf6\",\n secondaryColor: \"#1e1b4b\",\n accentColor: \"#c4b5fd\",\n paletteName: \"Photonic Violet\",\n description: \"Micro-machined optical waveguide wafer embedded with microscopic ruby laser diodes and glass waveguides.\"\n },\n {\n id: \"trophy_6\",\n name: \"Gold Interconnect Wafer\",\n category: \"trophies\",\n archetype: \"silicon_wafer\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#eab308\",\n secondaryColor: \"#422006\",\n accentColor: \"#fef08a\",\n paletteName: \"Interconnect Gold\",\n description: \"High-density wafer coated in micro-patterned 24K gold interconnect traces and microscopic solder bumps.\"\n },\n {\n id: \"trophy_7\",\n name: \"Quantum Qubit Wafer\",\n category: \"trophies\",\n archetype: \"silicon_wafer\",\n tier: \"vip\",\n rarity: \"legendary\",\n color: \"#f43f5e\",\n secondaryColor: \"#4c0519\",\n accentColor: \"#fca5a5\",\n paletteName: \"Qubit Ruby\",\n description: \"Superconducting niobium-titanium wafer housing an array of 128 Josephson junction flux qubits.\"\n },\n\n // ---------------------------------------------------------------------------\n // 3. QUANTUM CRYSTAL ARCHETYPE (IDs trophy_8 - trophy_11)\n // Geometric mineral pillars, geodes & resonating spires\n // ---------------------------------------------------------------------------\n {\n id: \"trophy_8\",\n name: \"Prismatic Quartz Spire\",\n category: \"trophies\",\n archetype: \"quantum_crystal\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#38bdf8\",\n secondaryColor: \"#082f49\",\n accentColor: \"#e0f2fe\",\n paletteName: \"Quartz Azure\",\n description: \"Tall hexagonal natural quartz crystal with razor-sharp facets mounted on a matte black anodized base.\"\n },\n {\n id: \"trophy_9\",\n name: \"Bismuth Stepped Pillar\",\n category: \"trophies\",\n archetype: \"quantum_crystal\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#d946ef\",\n secondaryColor: \"#3b0764\",\n accentColor: \"#f472b6\",\n paletteName: \"Bismuth Magenta\",\n description: \"Lab-grown labirynthine bismuth hopper crystal displaying vibrant stepped geometric iridescent oxide layers.\"\n },\n {\n id: \"trophy_10\",\n name: \"Emerald Geode Core\",\n category: \"trophies\",\n archetype: \"quantum_crystal\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#10b981\",\n secondaryColor: \"#022c22\",\n accentColor: \"#6ee7b7\",\n paletteName: \"Emerald Geode\",\n description: \"Hollow spherical basalt geode split open to reveal an interior cave of glittering emerald needle crystals.\"\n },\n {\n id: \"trophy_11\",\n name: \"Obsidian Gold Obelisk\",\n category: \"trophies\",\n archetype: \"quantum_crystal\",\n tier: \"vip\",\n rarity: \"legendary\",\n color: \"#fbbf24\",\n secondaryColor: \"#18181b\",\n accentColor: \"#fef08a\",\n paletteName: \"Obsidian Gold\",\n description: \"Pitch-black polished volcanic glass obelisk laced with natural micro-veins of liquid gold inclusions.\"\n },\n\n // ---------------------------------------------------------------------------\n // 4. DIAMOND BUG ARCHETYPE (IDs trophy_12 - trophy_15)\n // Jewel-encrusted beetles, scarabs & exploit trophies\n // ---------------------------------------------------------------------------\n {\n id: \"trophy_12\",\n name: \"Zero-Day Diamond Scarab\",\n category: \"trophies\",\n archetype: \"diamond_bug\",\n tier: \"free\",\n rarity: \"common\",\n color: \"#38bdf8\",\n secondaryColor: \"#0f172a\",\n accentColor: \"#ffffff\",\n paletteName: \"Diamond Ice\",\n description: \"Precision-faceted artificial diamond beetle commemorating the discovery and neutralization of a critical zero-day.\"\n },\n {\n id: \"trophy_13\",\n name: \"Flawless Emerald Beetle\",\n category: \"trophies\",\n archetype: \"diamond_bug\",\n tier: \"coffee\",\n rarity: \"rare\",\n color: \"#10b981\",\n secondaryColor: \"#022c22\",\n accentColor: \"#34d399\",\n paletteName: \"Emerald Beetle\",\n description: \"Deep green beryl scarab sculpture with tiny ruby sensor eyes and delicate articulated brass legs.\"\n },\n {\n id: \"trophy_14\",\n name: \"Golden Cicada Exploit\",\n category: \"trophies\",\n archetype: \"diamond_bug\",\n tier: \"lunch\",\n rarity: \"epic\",\n color: \"#eab308\",\n secondaryColor: \"#422006\",\n accentColor: \"#fef08a\",\n paletteName: \"Golden Cicada\",\n description: \"Solid cast gold cicada with micro-etched circuit schematic wings presented to master security researchers.\"\n },\n {\n id: \"trophy_15\",\n name: \"Ruby Hornet Trophy\",\n category: \"trophies\",\n archetype: \"diamond_bug\",\n tier: \"vip\",\n rarity: \"legendary\",\n color: \"#f43f5e\",\n secondaryColor: \"#4c0519\",\n accentColor: \"#fca5a5\",\n paletteName: \"Ruby Hornet\",\n description: \"Aggressive ruby-and-obsidian hornet sculpture poised to strike, symbolizing extreme bug-hunting tenacity.\"\n }\n];\n","/**\n * Virtual Office Themes & Wallpapers Catalog\n * Defines floor environments, neon grids, color palettes, and ambient lighting\n * for the 2D PixiJS Virtual Office Canvas.\n */\n\nexport const officeThemes = [\n {\n id: \"theme_default\",\n name: \"Classic Charcoal Slate\",\n tier: \"free\",\n category: \"themes\",\n description: \"Default minimalist dark charcoal slate floor with subtle grid lines.\",\n palette: {\n floorGradient: [0x0b1018, 0x161f2c],\n gridColor: 0x1a2330,\n gridAlpha: 0.7,\n borderColor: 0x263244,\n panelRackColor: 0xfde047,\n panelPodColor: 0x22d3ee,\n accentColor: \"#007acc\",\n ambientGlow: \"#007acc33\",\n },\n },\n {\n id: \"theme_cyberpunk\",\n name: \"Cyberpunk Neon Night\",\n tier: \"free\",\n category: \"themes\",\n description: \"Futuristic nighttime cyber alley with high-contrast violet grids and cyan radiance.\",\n palette: {\n floorGradient: [0x0d071a, 0x180b30],\n gridColor: 0x6d28d9,\n gridAlpha: 0.75,\n borderColor: 0xa855f7,\n panelRackColor: 0xf43f5e,\n panelPodColor: 0x06b6d4,\n accentColor: \"#a855f7\",\n ambientGlow: \"#a855f733\",\n },\n },\n {\n id: \"theme_matrix\",\n name: \"Phosphor Matrix Terminal\",\n tier: \"free\",\n category: \"themes\",\n description: \"Retro monochrome CRT terminal floor with glowing emerald phosphor matrix coordinates.\",\n palette: {\n floorGradient: [0x030d07, 0x071e11],\n gridColor: 0x10b981,\n gridAlpha: 0.8,\n borderColor: 0x059669,\n panelRackColor: 0x34d399,\n panelPodColor: 0x10b981,\n accentColor: \"#10b981\",\n ambientGlow: \"#10b98133\",\n },\n },\n {\n id: \"theme_cozy_loft\",\n name: \"Cozy Scandinavian Loft\",\n tier: \"coffee\",\n category: \"themes\",\n description: \"Warm espresso and natural walnut wooden floor texture with amber ambient lighting.\",\n palette: {\n floorGradient: [0x1c1612, 0x2b211a],\n gridColor: 0x453528,\n gridAlpha: 0.65,\n borderColor: 0x78563a,\n panelRackColor: 0xf59e0b,\n panelPodColor: 0xd97706,\n accentColor: \"#f59e0b\",\n ambientGlow: \"#f59e0b33\",\n },\n },\n {\n id: \"theme_deep_space\",\n name: \"Deep Cosmic Nebula\",\n tier: \"coffee\",\n category: \"themes\",\n description: \"Deep space observation deck with star cluster reflections and celestial indigo accents.\",\n palette: {\n floorGradient: [0x050814, 0x0e1429],\n gridColor: 0x38bdf8,\n gridAlpha: 0.65,\n borderColor: 0x0284c7,\n panelRackColor: 0x818cf8,\n panelPodColor: 0x38bdf8,\n accentColor: \"#38bdf8\",\n ambientGlow: \"#38bdf833\",\n },\n },\n {\n id: \"theme_cleanroom\",\n name: \"Silicon Fab Cleanroom\",\n tier: \"lunch\",\n category: \"themes\",\n description: \"High-precision sterile semiconductor laboratory with sleek platinum and ice blue lines.\",\n palette: {\n floorGradient: [0x141820, 0x1e2430],\n gridColor: 0x475569,\n gridAlpha: 0.7,\n borderColor: 0x94a3b8,\n panelRackColor: 0x38bdf8,\n panelPodColor: 0x0ea5e9,\n accentColor: \"#94a3b8\",\n ambientGlow: \"#94a3b833\",\n },\n },\n {\n id: \"theme_synthwave\",\n name: \"Sunset Synthwave 80s\",\n tier: \"lunch\",\n category: \"themes\",\n description: \"Vibrant retro-wave sunset floor with magenta neon grid lines and warm golden horizon.\",\n palette: {\n floorGradient: [0x200720, 0x360d2b],\n gridColor: 0xf43f5e,\n gridAlpha: 0.75,\n borderColor: 0xfb7185,\n panelRackColor: 0xfbbf24,\n panelPodColor: 0xec4899,\n accentColor: \"#f43f5e\",\n ambientGlow: \"#f43f5e33\",\n },\n },\n {\n id: \"theme_quantum_void\",\n name: \"Quantum Obsidian Void\",\n tier: \"vip\",\n category: \"themes\",\n description: \"Deep obsidian black hole floor with holographic quantum interference lattice.\",\n palette: {\n floorGradient: [0x060608, 0x0f0f14],\n gridColor: 0x6366f1,\n gridAlpha: 0.75,\n borderColor: 0x4f46e5,\n panelRackColor: 0xa855f7,\n panelPodColor: 0x06b6d4,\n accentColor: \"#6366f1\",\n ambientGlow: \"#6366f133\",\n },\n },\n {\n id: \"theme_sakura_cyber\",\n name: \"Sakura Cyber Garden\",\n tier: \"vip\",\n category: \"themes\",\n description: \"Neo-Tokyo cherry blossom sanctuary with vibrant soft pink particle gridlines.\",\n palette: {\n floorGradient: [0x1f0c18, 0x301326],\n gridColor: 0xf472b6,\n gridAlpha: 0.7,\n borderColor: 0xec4899,\n panelRackColor: 0xfda4af,\n panelPodColor: 0xf43f5e,\n accentColor: \"#f472b6\",\n ambientGlow: \"#f472b633\",\n },\n },\n {\n id: \"theme_gold_vault\",\n name: \"Billion-Token Gold Vault\",\n tier: \"vip\",\n category: \"themes\",\n description: \"Luxurious royal vault floor with gleaming gold circuitry and platinum accents.\",\n palette: {\n floorGradient: [0x1a1608, 0x2e250c],\n gridColor: 0xeab308,\n gridAlpha: 0.8,\n borderColor: 0xfacc15,\n panelRackColor: 0xfef08a,\n panelPodColor: 0xf59e0b,\n accentColor: \"#eab308\",\n ambientGlow: \"#eab30833\",\n },\n },\n];\n","import { skins } from './skins.js';\nimport { props } from './props.js';\nimport { pets } from './pets.js';\nimport { auras } from './auras.js';\nimport { trophies } from './trophies.js';\nimport { officeThemes } from './officeThemes.js';\n\nexport { skins, props, pets, auras, trophies, officeThemes };\n\nexport const COSMETIC_CATALOG = {\n skins,\n props,\n pets,\n auras,\n trophies,\n officeThemes,\n soundscapes: [\n {\n id: \"none\",\n name: \"Mute\",\n description: \"Silent mode for deep uninterrupted focus.\",\n },\n {\n id: \"rain\",\n name: \"Gentle Rain\",\n description: \"Soft raindrops tapping on the windowpane for relaxation and focus.\",\n },\n {\n id: \"coffee_shop\",\n name: \"Lo-Fi Coffee Shop\",\n description: \"Warm coffee shop atmosphere with faint murmur and gentle cup clinks.\",\n },\n {\n id: \"cyberpunk\",\n name: \"Cyberpunk Alley\",\n description: \"Deep synthesizer drone with distant neon buzz and hover traffic.\",\n },\n {\n id: \"fireplace\",\n name: \"Crackling Fireplace\",\n description: \"Warm hearth crackling embers for comfortable late-night problem solving.\",\n },\n {\n id: \"white_noise\",\n name: \"Server Room Hum\",\n description: \"Steady cooling fan hum and datacenter airflow for absolute isolation.\",\n },\n ],\n};\n\n// Fast index map for O(1) item lookup across 1000+ items\nexport const CATALOG_LOOKUP = new Map();\n[...skins, ...props, ...pets, ...auras, ...trophies, ...officeThemes].forEach(item => {\n CATALOG_LOOKUP.set(item.id, item);\n});\n\nexport const getItemById = (id) => {\n if (!id) return null;\n const direct = CATALOG_LOOKUP.get(id);\n if (direct) return direct;\n\n // Resilient fallback for legacy unpruned IDs from old localStorage or traces\n if (typeof id === \"string\") {\n if (id.startsWith(\"skin_\")) {\n const num = parseInt(id.replace(\"skin_\", \"\"), 10);\n if (!isNaN(num)) {\n if (num >= 200) return CATALOG_LOOKUP.get(`skin_${40 + (num % 10)}`) || skins[40];\n if (num >= 150) return CATALOG_LOOKUP.get(`skin_${30 + (num % 10)}`) || skins[30];\n if (num >= 100) return CATALOG_LOOKUP.get(`skin_${20 + (num % 10)}`) || skins[20];\n if (num >= 50) return CATALOG_LOOKUP.get(`skin_${10 + (num % 10)}`) || skins[10];\n return skins[num % skins.length] || skins[0];\n }\n }\n if (id.startsWith(\"prop_\")) {\n const num = parseInt(id.replace(\"prop_\", \"\"), 10);\n if (!isNaN(num)) {\n if (num >= 300) return CATALOG_LOOKUP.get(`prop_${30 + (num % 5)}`) || props[30];\n if (num >= 250) return CATALOG_LOOKUP.get(`prop_${25 + (num % 5)}`) || props[25];\n if (num >= 200) return CATALOG_LOOKUP.get(`prop_${20 + (num % 5)}`) || props[20];\n if (num >= 150) return CATALOG_LOOKUP.get(`prop_${15 + (num % 5)}`) || props[15];\n if (num >= 100) return CATALOG_LOOKUP.get(`prop_${10 + (num % 5)}`) || props[10];\n if (num >= 50) return CATALOG_LOOKUP.get(`prop_${5 + (num % 5)}`) || props[5];\n return props[num % props.length] || props[0];\n }\n }\n if (id.startsWith(\"pet_\")) {\n const num = parseInt(id.replace(\"pet_\", \"\"), 10);\n if (!isNaN(num)) {\n if (num === 0) return CATALOG_LOOKUP.get(\"pet_0\") || pets[0];\n if (num >= 150) return CATALOG_LOOKUP.get(`pet_${16 + (num % 5)}`) || pets[16];\n if (num >= 100) return CATALOG_LOOKUP.get(`pet_${11 + (num % 5)}`) || pets[11];\n if (num >= 50) return CATALOG_LOOKUP.get(`pet_${6 + (num % 5)}`) || pets[6];\n return pets[1 + (num % 5)] || pets[1];\n }\n }\n if (id.startsWith(\"aura_\")) {\n const num = parseInt(id.replace(\"aura_\", \"\"), 10);\n if (!isNaN(num)) {\n if (num >= 75) return CATALOG_LOOKUP.get(`aura_${12 + (num % 4)}`) || auras[12];\n if (num >= 50) return CATALOG_LOOKUP.get(`aura_${8 + (num % 4)}`) || auras[8];\n if (num >= 25) return CATALOG_LOOKUP.get(`aura_${4 + (num % 4)}`) || auras[4];\n return auras[num % auras.length] || auras[0];\n }\n }\n if (id.startsWith(\"trophy_\")) {\n const num = parseInt(id.replace(\"trophy_\", \"\"), 10);\n if (!isNaN(num)) {\n if (num >= 75) return CATALOG_LOOKUP.get(`trophy_${12 + (num % 4)}`) || trophies[12];\n if (num >= 50) return CATALOG_LOOKUP.get(`trophy_${8 + (num % 4)}`) || trophies[8];\n if (num >= 25) return CATALOG_LOOKUP.get(`trophy_${4 + (num % 4)}`) || trophies[4];\n return trophies[num % trophies.length] || trophies[0];\n }\n }\n }\n return null;\n};\nexport const TOTAL_CATALOG_COUNT = skins.length + props.length + pets.length + auras.length + trophies.length + officeThemes.length;\n","\"use client\";\n\n/**\n * Supporter Store & Cosmetic Customization Engine\n * Manages supporter status, item inventory (1,000 Skins, Props, Pets, Auras, Trophies), and Ambient soundscapes.\n * Persists in localStorage and broadcasts sync events to PixiJS Canvas.\n */\n\nimport { COSMETIC_CATALOG } from \"./catalog/index.js\";\n\nexport { COSMETIC_CATALOG };\nexport const SUPPORTER_STORAGE_KEY = \"agmon_supporter_data\";\nexport const SUPPORTER_CHANGE_EVENT = \"agmon:supporter-change\";\n\n// Collect all free items by default\nconst FREE_SKIN_IDS = COSMETIC_CATALOG.skins.filter((s) => s.tier === \"free\").map((s) => s.id);\nconst FREE_PET_IDS = COSMETIC_CATALOG.pets.filter((p) => p.tier === \"free\").map((p) => p.id);\nconst FREE_PROP_IDS = COSMETIC_CATALOG.props.filter((pr) => pr.tier === \"free\").map((pr) => pr.id);\nconst FREE_AURA_IDS = (COSMETIC_CATALOG.auras || []).filter((a) => a.tier === \"free\").map((a) => a.id);\nconst FREE_TROPHY_IDS = (COSMETIC_CATALOG.trophies || []).filter((t) => t.tier === \"free\").map((t) => t.id);\nconst FREE_THEME_IDS = (COSMETIC_CATALOG.officeThemes || []).filter((th) => th.tier === \"free\").map((th) => th.id);\n\nconst DEFAULT_STATE = {\n isSupporter: false,\n supporterTier: \"none\", // 'none' | 'coffee' | 'meal' | 'vip'\n equippedSkin: \"skin_0\",\n equippedPet: \"pet_0\",\n equippedProps: [],\n equippedAura: \"none\",\n equippedTrophy: \"none\",\n equippedOfficeTheme: \"theme_default\",\n ambientSound: \"none\",\n ambientVolume: 0.35,\n unlockedItems: Array.from(\n new Set([\n \"skin_0\",\n \"pet_0\",\n \"prop_0\",\n \"aura_0\",\n \"trophy_0\",\n \"theme_default\",\n \"classic\",\n \"none\",\n ...FREE_SKIN_IDS,\n ...FREE_PET_IDS,\n ...FREE_PROP_IDS,\n ...FREE_AURA_IDS,\n ...FREE_TROPHY_IDS,\n ...FREE_THEME_IDS,\n ])\n ),\n};\n\n// Normalize legacy IDs (e.g. classic -> skin_0, none -> pet_0)\nfunction normalizeState(state) {\n if (!state) return DEFAULT_STATE;\n const s = { ...DEFAULT_STATE, ...state };\n if (s.equippedSkin === \"classic\" || !s.equippedSkin) s.equippedSkin = \"skin_0\";\n if (s.equippedPet === \"none\" || !s.equippedPet) s.equippedPet = \"pet_0\";\n if (!s.equippedAura) s.equippedAura = \"none\";\n if (!s.equippedTrophy) s.equippedTrophy = \"none\";\n if (!s.equippedOfficeTheme) s.equippedOfficeTheme = \"theme_default\";\n if (!Array.isArray(s.unlockedItems)) s.unlockedItems = DEFAULT_STATE.unlockedItems;\n return s;\n}\n\n// Read state from localStorage\nexport function getSupporterState() {\n if (typeof window === \"undefined\") return DEFAULT_STATE;\n try {\n const raw = localStorage.getItem(SUPPORTER_STORAGE_KEY);\n if (!raw) return DEFAULT_STATE;\n const parsed = JSON.parse(raw);\n return normalizeState(parsed);\n } catch {\n return DEFAULT_STATE;\n }\n}\n\n// Save state and dispatch change event\nfunction saveAndNotify(nextState) {\n if (typeof window === \"undefined\") return;\n try {\n localStorage.setItem(SUPPORTER_STORAGE_KEY, JSON.stringify(nextState));\n window.dispatchEvent(new CustomEvent(SUPPORTER_CHANGE_EVENT, { detail: nextState }));\n } catch (err) {\n console.error(\"[SupporterStore] Save error:\", err);\n }\n}\n\n// Cross-tab and window focus synchronization\nif (typeof window !== \"undefined\") {\n window.addEventListener(\"storage\", (e) => {\n if (e.key === SUPPORTER_STORAGE_KEY) {\n try {\n const next = e.newValue ? JSON.parse(e.newValue) : DEFAULT_STATE;\n window.dispatchEvent(new CustomEvent(SUPPORTER_CHANGE_EVENT, { detail: next }));\n } catch (err) {}\n }\n });\n\n window.addEventListener(\"focus\", () => {\n const current = getSupporterState();\n window.dispatchEvent(new CustomEvent(SUPPORTER_CHANGE_EVENT, { detail: current }));\n });\n}\n\n// Unlock via code (Supporter Key / Coupon Code)\nexport function unlockWithCode(code) {\n const c = String(code || \"\").trim().toUpperCase();\n if (!c) return { success: false, message: \"Please enter an activation code.\" };\n\n const validCodes = [\n \"AGMON-COFFEE-VIP\",\n \"AGMON-DEV-VIP\",\n \"SUPPORTER-2026\",\n \"DEV-BUFF-NIGHT\",\n \"VIETQR-VIP\",\n ];\n\n const isValid = validCodes.includes(c) || c.endsWith(\"-VIP\") || c.endsWith(\"-SUPPORTER\");\n\n if (isValid) {\n const current = getSupporterState();\n const allSkins = COSMETIC_CATALOG.skins.map((s) => s.id);\n const allPets = COSMETIC_CATALOG.pets.map((p) => p.id);\n const allProps = COSMETIC_CATALOG.props.map((pr) => pr.id);\n const allAuras = (COSMETIC_CATALOG.auras || []).map((a) => a.id);\n const allTrophies = (COSMETIC_CATALOG.trophies || []).map((t) => t.id);\n const allThemes = (COSMETIC_CATALOG.officeThemes || []).map((th) => th.id);\n const allUnlocked = Array.from(\n new Set([\n ...current.unlockedItems,\n ...allSkins,\n ...allPets,\n ...allProps,\n ...allAuras,\n ...allTrophies,\n ...allThemes,\n ])\n );\n\n const nextState = {\n ...current,\n isSupporter: true,\n supporterTier: \"vip\",\n unlockedItems: allUnlocked,\n equippedSkin: current.equippedSkin === \"classic\" || !current.equippedSkin ? \"skin_0\" : current.equippedSkin,\n equippedPet: current.equippedPet === \"none\" || !current.equippedPet ? \"pet_0\" : current.equippedPet,\n equippedProps: Array.from(new Set([...current.equippedProps, \"prop_0\", \"prop_1\"])),\n };\n\n saveAndNotify(nextState);\n return {\n success: true,\n message: \"Congratulations! You have unlocked all items and VIP Supporter status.\",\n state: nextState,\n };\n }\n\n return { success: false, message: \"Invalid activation code. Please check and try again.\" };\n}\n\n// Equip Skin\nexport function equipSkin(skinId) {\n const current = getSupporterState();\n const isFree = COSMETIC_CATALOG.skins.find((s) => s.id === skinId)?.tier === \"free\";\n if (!current.unlockedItems.includes(skinId) && !current.isSupporter && !isFree && skinId !== \"skin_0\") {\n return false;\n }\n const next = { ...current, equippedSkin: skinId };\n saveAndNotify(next);\n return true;\n}\n\n// Equip Pet\nexport function equipPet(petId) {\n const current = getSupporterState();\n const isFree = COSMETIC_CATALOG.pets.find((p) => p.id === petId)?.tier === \"free\";\n if (!current.unlockedItems.includes(petId) && !current.isSupporter && !isFree && petId !== \"pet_0\") {\n return false;\n }\n const next = { ...current, equippedPet: petId };\n saveAndNotify(next);\n return true;\n}\n\n// Toggle Desk Prop\nexport function toggleProp(propId) {\n const current = getSupporterState();\n const isFree = COSMETIC_CATALOG.props.find((p) => p.id === propId)?.tier === \"free\";\n if (!current.unlockedItems.includes(propId) && !current.isSupporter && !isFree) {\n return false;\n }\n const props = new Set(current.equippedProps);\n if (props.has(propId)) {\n props.delete(propId);\n } else {\n props.add(propId);\n }\n const next = { ...current, equippedProps: Array.from(props) };\n saveAndNotify(next);\n return true;\n}\n\n// Equip Aura\nexport function equipAura(auraId) {\n const current = getSupporterState();\n const isFree = (COSMETIC_CATALOG.auras || []).find((a) => a.id === auraId)?.tier === \"free\";\n if (!current.unlockedItems.includes(auraId) && !current.isSupporter && !isFree && auraId !== \"none\" && auraId !== \"aura_0\") {\n return false;\n }\n const next = { ...current, equippedAura: auraId };\n saveAndNotify(next);\n return true;\n}\n\n// Equip Trophy\nexport function equipTrophy(trophyId) {\n const current = getSupporterState();\n const isFree = (COSMETIC_CATALOG.trophies || []).find((t) => t.id === trophyId)?.tier === \"free\";\n if (!current.unlockedItems.includes(trophyId) && !current.isSupporter && !isFree && trophyId !== \"none\" && trophyId !== \"trophy_0\") {\n return false;\n }\n const next = { ...current, equippedTrophy: trophyId };\n saveAndNotify(next);\n return true;\n}\n\n// Equip Office Theme / Floor Environment\nexport function equipOfficeTheme(themeId) {\n const current = getSupporterState();\n const isFree = (COSMETIC_CATALOG.officeThemes || []).find((t) => t.id === themeId)?.tier === \"free\";\n if (!current.unlockedItems.includes(themeId) && !current.isSupporter && !isFree && themeId !== \"theme_default\") {\n return false;\n }\n const next = { ...current, equippedOfficeTheme: themeId };\n saveAndNotify(next);\n return true;\n}\n\n// Update Ambient Soundscape\nexport function setAmbientSound(soundId, volume = null) {\n const current = getSupporterState();\n const next = {\n ...current,\n ambientSound: soundId,\n ambientVolume: volume !== null ? volume : current.ambientVolume,\n };\n saveAndNotify(next);\n return next;\n}\n\n// Equip a full custom loadout (Skin, Pet, Props, Aura, Office Theme) at once\nexport function equipCustomLoadout(loadout = {}) {\n const current = getSupporterState();\n const next = {\n ...current,\n ...(loadout.equippedSkin ? { equippedSkin: loadout.equippedSkin } : {}),\n ...(loadout.equippedPet ? { equippedPet: loadout.equippedPet } : {}),\n ...(Array.isArray(loadout.equippedProps) ? { equippedProps: loadout.equippedProps } : {}),\n ...(loadout.equippedAura ? { equippedAura: loadout.equippedAura } : {}),\n ...(loadout.equippedOfficeTheme ? { equippedOfficeTheme: loadout.equippedOfficeTheme } : {}),\n ...(loadout.equippedTrophy ? { equippedTrophy: loadout.equippedTrophy } : {}),\n };\n saveAndNotify(next);\n return next;\n}\n\n"],"names":["d","key","audioCtx","masterGain","currentSourceNodes","ambientTimer","currentType","getAudioContext","AudioContextClass","createPinkNoiseBuffer","ctx","duration","bufferSize","sampleRate","buffer","createBuffer","data","getChannelData","b0","b1","b2","b3","b4","b5","b6","i","white","Math","random","playRain","noiseBuffer","noiseSource","createBufferSource","loop","filter","createBiquadFilter","type","frequency","setValueAtTime","currentTime","gain","createGain","connect","start","push","dropInterval","setInterval","osc","createOscillator","dropGain","now","exponentialRampToValueAtTime","stop","clearInterval","playCoffeeShop","clinkInterval","clinkGain","stopAmbient","forEach","node","disconnect","setAmbientVolume","vol","clamped","max","min","startAmbient","volume","initAmbientSync","supporterState","ambientSound","ambientVolume","skins","id","name","category","archetype","variant","tier","rarity","color","secondaryColor","accentColor","paletteName","description","previewColor","SUPPORTER_STORAGE_KEY","SUPPORTER_CHANGE_EVENT","FREE_SKIN_IDS","s","map","FREE_PET_IDS","pets","p","FREE_PROP_IDS","props","pr","FREE_AURA_IDS","auras","a","FREE_TROPHY_IDS","trophies","t","FREE_THEME_IDS","officeThemes","th","DEFAULT_STATE","isSupporter","supporterTier","equippedSkin","equippedPet","equippedProps","equippedAura","equippedTrophy","equippedOfficeTheme","unlockedItems","Array","from","Set","normalizeState","state","isArray","getSupporterState","saveAndNotify","nextState","unlockWithCode","code","c","String","trim","toUpperCase","success","message","validCodes","isValid","includes","endsWith","current","allSkins","allPets","allProps","allAuras","allTrophies","allThemes","allUnlocked","equipSkin","skinId","isFree","find","next","equipPet","petId","toggleProp","propId","has","delete","add","equipAura","auraId","equipTrophy","trophyId","equipOfficeTheme","themeId","setAmbientSound","soundId","equipCustomLoadout","loadout"],"mappings":"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","ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,16]}