six-degrees 0.6.0 → 0.7.0

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 (557) hide show
  1. package/.next/standalone/.next/BUILD_ID +1 -1
  2. package/.next/standalone/.next/app-path-routes-manifest.json +3 -0
  3. package/.next/standalone/.next/build-manifest.json +3 -3
  4. package/.next/standalone/.next/prerender-manifest.json +14 -14
  5. package/.next/standalone/.next/routes-manifest.json +18 -0
  6. package/.next/standalone/.next/server/app/_global-error.html +1 -1
  7. package/.next/standalone/.next/server/app/_global-error.rsc +1 -1
  8. package/.next/standalone/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  9. package/.next/standalone/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  10. package/.next/standalone/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  11. package/.next/standalone/.next/server/app/_not-found/page.js +1 -1
  12. package/.next/standalone/.next/server/app/_not-found/page.js.nft.json +1 -1
  13. package/.next/standalone/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  14. package/.next/standalone/.next/server/app/_not-found.html +1 -1
  15. package/.next/standalone/.next/server/app/_not-found.rsc +26 -18
  16. package/.next/standalone/.next/server/app/_not-found.segments/_full.segment.rsc +26 -18
  17. package/.next/standalone/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +25 -16
  18. package/.next/standalone/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  19. package/.next/standalone/.next/server/app/api/admin-delete/route.js +2 -2
  20. package/.next/standalone/.next/server/app/api/admin-delete/route.js.nft.json +1 -1
  21. package/.next/standalone/.next/server/app/api/admin-update/route.js +2 -2
  22. package/.next/standalone/.next/server/app/api/admin-update/route.js.nft.json +1 -1
  23. package/.next/standalone/.next/server/app/api/bridges/route.js +2 -2
  24. package/.next/standalone/.next/server/app/api/bridges/route.js.nft.json +1 -1
  25. package/.next/standalone/.next/server/app/api/bulk-import/route.js +2 -2
  26. package/.next/standalone/.next/server/app/api/bulk-import/route.js.nft.json +1 -1
  27. package/.next/standalone/.next/server/app/api/company-scores/legacy/route.js +3 -3
  28. package/.next/standalone/.next/server/app/api/company-scores/legacy/route.js.nft.json +1 -1
  29. package/.next/standalone/.next/server/app/api/company-scores/route.js +3 -3
  30. package/.next/standalone/.next/server/app/api/company-scores/route.js.nft.json +1 -1
  31. package/.next/standalone/.next/server/app/api/connections/route.js +2 -2
  32. package/.next/standalone/.next/server/app/api/connections/route.js.nft.json +1 -1
  33. package/.next/standalone/.next/server/app/api/data/backup/route/app-paths-manifest.json +3 -0
  34. package/.next/standalone/.next/server/app/api/data/backup/route/build-manifest.json +12 -0
  35. package/.next/standalone/.next/server/app/api/data/backup/route/server-reference-manifest.json +4 -0
  36. package/.next/standalone/.next/server/app/api/data/backup/route.js +7 -0
  37. package/.next/standalone/.next/server/app/api/data/backup/route.js.map +5 -0
  38. package/.next/standalone/.next/server/app/api/data/backup/route.js.nft.json +1 -0
  39. package/.next/standalone/.next/server/app/api/data/backup/route_client-reference-manifest.js +3 -0
  40. package/.next/standalone/.next/server/app/api/data/csv/route/app-paths-manifest.json +3 -0
  41. package/.next/standalone/.next/server/app/api/data/csv/route/build-manifest.json +12 -0
  42. package/.next/standalone/.next/server/app/api/data/csv/route/server-reference-manifest.json +4 -0
  43. package/.next/standalone/.next/server/app/api/data/csv/route.js +8 -0
  44. package/.next/standalone/.next/server/app/api/data/csv/route.js.map +5 -0
  45. package/.next/standalone/.next/server/app/api/data/csv/route.js.nft.json +1 -0
  46. package/.next/standalone/.next/server/app/api/data/csv/route_client-reference-manifest.js +3 -0
  47. package/.next/standalone/.next/server/app/api/data/export/route.js +1 -1
  48. package/.next/standalone/.next/server/app/api/data/export/route.js.nft.json +1 -1
  49. package/.next/standalone/.next/server/app/api/data/import/route.js +1 -1
  50. package/.next/standalone/.next/server/app/api/data/import/route.js.nft.json +1 -1
  51. package/.next/standalone/.next/server/app/api/data/restart/route.js +1 -1
  52. package/.next/standalone/.next/server/app/api/data/restart/route.js.nft.json +1 -1
  53. package/.next/standalone/.next/server/app/api/data/restore/route/app-paths-manifest.json +3 -0
  54. package/.next/standalone/.next/server/app/api/data/restore/route/build-manifest.json +12 -0
  55. package/.next/standalone/.next/server/app/api/data/restore/route/server-reference-manifest.json +4 -0
  56. package/.next/standalone/.next/server/app/api/data/restore/route.js +7 -0
  57. package/.next/standalone/.next/server/app/api/data/restore/route.js.map +5 -0
  58. package/.next/standalone/.next/server/app/api/data/restore/route.js.nft.json +1 -0
  59. package/.next/standalone/.next/server/app/api/data/restore/route_client-reference-manifest.js +3 -0
  60. package/.next/standalone/.next/server/app/api/data/reveal/route.js +1 -1
  61. package/.next/standalone/.next/server/app/api/data/reveal/route.js.nft.json +1 -1
  62. package/.next/standalone/.next/server/app/api/data/route.js +1 -1
  63. package/.next/standalone/.next/server/app/api/data/route.js.nft.json +1 -1
  64. package/.next/standalone/.next/server/app/api/delete-cluster/route.js +2 -2
  65. package/.next/standalone/.next/server/app/api/delete-cluster/route.js.nft.json +1 -1
  66. package/.next/standalone/.next/server/app/api/ingest/route.js +2 -2
  67. package/.next/standalone/.next/server/app/api/ingest/route.js.nft.json +1 -1
  68. package/.next/standalone/.next/server/app/api/network/route.js +2 -2
  69. package/.next/standalone/.next/server/app/api/network/route.js.nft.json +1 -1
  70. package/.next/standalone/.next/server/app/api/notifications/route.js +2 -2
  71. package/.next/standalone/.next/server/app/api/notifications/route.js.nft.json +1 -1
  72. package/.next/standalone/.next/server/app/api/outreach/route.js +2 -2
  73. package/.next/standalone/.next/server/app/api/outreach/route.js.nft.json +1 -1
  74. package/.next/standalone/.next/server/app/api/queue/route.js +2 -2
  75. package/.next/standalone/.next/server/app/api/queue/route.js.nft.json +1 -1
  76. package/.next/standalone/.next/server/app/api/scraper/route.js +4 -2
  77. package/.next/standalone/.next/server/app/api/scraper/route.js.nft.json +1 -1
  78. package/.next/standalone/.next/server/app/api/settings/route.js +3 -3
  79. package/.next/standalone/.next/server/app/api/settings/route.js.nft.json +1 -1
  80. package/.next/standalone/.next/server/app/api/settings/sector-preview/route.js +3 -3
  81. package/.next/standalone/.next/server/app/api/settings/sector-preview/route.js.nft.json +1 -1
  82. package/.next/standalone/.next/server/app/api/settings/sector-suggestions/route.js +3 -3
  83. package/.next/standalone/.next/server/app/api/settings/sector-suggestions/route.js.nft.json +1 -1
  84. package/.next/standalone/.next/server/app/api/setup-profile/route.js +2 -2
  85. package/.next/standalone/.next/server/app/api/setup-profile/route.js.nft.json +1 -1
  86. package/.next/standalone/.next/server/app/api/social/crm/route.js +1 -1
  87. package/.next/standalone/.next/server/app/api/social/crm/route.js.nft.json +1 -1
  88. package/.next/standalone/.next/server/app/api/social/messages/route.js +1 -1
  89. package/.next/standalone/.next/server/app/api/social/messages/route.js.nft.json +1 -1
  90. package/.next/standalone/.next/server/app/api/social/route.js +2 -2
  91. package/.next/standalone/.next/server/app/api/social/route.js.nft.json +1 -1
  92. package/.next/standalone/.next/server/app/api/unlock/route.js +2 -2
  93. package/.next/standalone/.next/server/app/api/unlock/route.js.nft.json +1 -1
  94. package/.next/standalone/.next/server/app/api/update/route.js.nft.json +1 -1
  95. package/.next/standalone/.next/server/app/api/update-images/route.js +2 -2
  96. package/.next/standalone/.next/server/app/api/update-images/route.js.nft.json +1 -1
  97. package/.next/standalone/.next/server/app/api/users/route.js +2 -2
  98. package/.next/standalone/.next/server/app/api/users/route.js.nft.json +1 -1
  99. package/.next/standalone/.next/server/app/avatars/[file]/route.js +1 -1
  100. package/.next/standalone/.next/server/app/avatars/[file]/route.js.nft.json +1 -1
  101. package/.next/standalone/.next/server/app/import/page.js +1 -1
  102. package/.next/standalone/.next/server/app/import/page.js.nft.json +1 -1
  103. package/.next/standalone/.next/server/app/import/page_client-reference-manifest.js +1 -1
  104. package/.next/standalone/.next/server/app/import.html +1 -1
  105. package/.next/standalone/.next/server/app/import.rsc +32 -24
  106. package/.next/standalone/.next/server/app/import.segments/_full.segment.rsc +32 -24
  107. package/.next/standalone/.next/server/app/import.segments/_tree.segment.rsc +2 -2
  108. package/.next/standalone/.next/server/app/import.segments/import/__PAGE__.segment.rsc +23 -18
  109. package/.next/standalone/.next/server/app/index.html +1 -1
  110. package/.next/standalone/.next/server/app/index.rsc +29 -22
  111. package/.next/standalone/.next/server/app/index.segments/__PAGE__.segment.rsc +20 -15
  112. package/.next/standalone/.next/server/app/index.segments/_full.segment.rsc +29 -22
  113. package/.next/standalone/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  114. package/.next/standalone/.next/server/app/launch/page.js +1 -1
  115. package/.next/standalone/.next/server/app/launch/page.js.nft.json +1 -1
  116. package/.next/standalone/.next/server/app/launch/page_client-reference-manifest.js +1 -1
  117. package/.next/standalone/.next/server/app/launch.html +2 -2
  118. package/.next/standalone/.next/server/app/launch.rsc +32 -24
  119. package/.next/standalone/.next/server/app/launch.segments/_full.segment.rsc +32 -24
  120. package/.next/standalone/.next/server/app/launch.segments/_tree.segment.rsc +2 -2
  121. package/.next/standalone/.next/server/app/launch.segments/launch/__PAGE__.segment.rsc +23 -18
  122. package/.next/standalone/.next/server/app/page.js +1 -1
  123. package/.next/standalone/.next/server/app/page.js.nft.json +1 -1
  124. package/.next/standalone/.next/server/app/page_client-reference-manifest.js +1 -1
  125. package/.next/standalone/.next/server/app/paths/page.js +1 -1
  126. package/.next/standalone/.next/server/app/paths/page.js.nft.json +1 -1
  127. package/.next/standalone/.next/server/app/paths/page_client-reference-manifest.js +1 -1
  128. package/.next/standalone/.next/server/app/paths.html +1 -1
  129. package/.next/standalone/.next/server/app/paths.rsc +32 -24
  130. package/.next/standalone/.next/server/app/paths.segments/_full.segment.rsc +32 -24
  131. package/.next/standalone/.next/server/app/paths.segments/_tree.segment.rsc +2 -2
  132. package/.next/standalone/.next/server/app/paths.segments/paths/__PAGE__.segment.rsc +21 -18
  133. package/.next/standalone/.next/server/app/profile/page.js +1 -1
  134. package/.next/standalone/.next/server/app/profile/page.js.nft.json +1 -1
  135. package/.next/standalone/.next/server/app/profile/page_client-reference-manifest.js +1 -1
  136. package/.next/standalone/.next/server/app/profile.html +1 -1
  137. package/.next/standalone/.next/server/app/profile.rsc +32 -24
  138. package/.next/standalone/.next/server/app/profile.segments/_full.segment.rsc +32 -24
  139. package/.next/standalone/.next/server/app/profile.segments/_tree.segment.rsc +2 -2
  140. package/.next/standalone/.next/server/app/profile.segments/profile/__PAGE__.segment.rsc +23 -18
  141. package/.next/standalone/.next/server/app/queue/page.js +1 -1
  142. package/.next/standalone/.next/server/app/queue/page.js.nft.json +1 -1
  143. package/.next/standalone/.next/server/app/queue/page_client-reference-manifest.js +1 -1
  144. package/.next/standalone/.next/server/app/queue.html +1 -1
  145. package/.next/standalone/.next/server/app/queue.rsc +32 -24
  146. package/.next/standalone/.next/server/app/queue.segments/_full.segment.rsc +32 -24
  147. package/.next/standalone/.next/server/app/queue.segments/_tree.segment.rsc +2 -2
  148. package/.next/standalone/.next/server/app/queue.segments/queue/__PAGE__.segment.rsc +20 -18
  149. package/.next/standalone/.next/server/app/scores/page.js +1 -1
  150. package/.next/standalone/.next/server/app/scores/page.js.nft.json +1 -1
  151. package/.next/standalone/.next/server/app/scores/page_client-reference-manifest.js +1 -1
  152. package/.next/standalone/.next/server/app/scores.html +1 -1
  153. package/.next/standalone/.next/server/app/scores.rsc +32 -24
  154. package/.next/standalone/.next/server/app/scores.segments/_full.segment.rsc +32 -24
  155. package/.next/standalone/.next/server/app/scores.segments/_tree.segment.rsc +2 -2
  156. package/.next/standalone/.next/server/app/scores.segments/scores/__PAGE__.segment.rsc +23 -18
  157. package/.next/standalone/.next/server/app/settings/page.js +1 -1
  158. package/.next/standalone/.next/server/app/settings/page.js.nft.json +1 -1
  159. package/.next/standalone/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  160. package/.next/standalone/.next/server/app/settings.html +1 -1
  161. package/.next/standalone/.next/server/app/settings.rsc +32 -24
  162. package/.next/standalone/.next/server/app/settings.segments/_full.segment.rsc +32 -24
  163. package/.next/standalone/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
  164. package/.next/standalone/.next/server/app/settings.segments/settings/__PAGE__.segment.rsc +20 -18
  165. package/.next/standalone/.next/server/app/setup/page.js +1 -1
  166. package/.next/standalone/.next/server/app/setup/page.js.nft.json +1 -1
  167. package/.next/standalone/.next/server/app/setup/page_client-reference-manifest.js +1 -1
  168. package/.next/standalone/.next/server/app/setup.html +1 -1
  169. package/.next/standalone/.next/server/app/setup.rsc +32 -24
  170. package/.next/standalone/.next/server/app/setup.segments/_full.segment.rsc +32 -24
  171. package/.next/standalone/.next/server/app/setup.segments/_tree.segment.rsc +2 -2
  172. package/.next/standalone/.next/server/app/setup.segments/setup/__PAGE__.segment.rsc +21 -18
  173. package/.next/standalone/.next/server/app/social/page.js +1 -1
  174. package/.next/standalone/.next/server/app/social/page.js.nft.json +1 -1
  175. package/.next/standalone/.next/server/app/social/page_client-reference-manifest.js +1 -1
  176. package/.next/standalone/.next/server/app/social.html +1 -1
  177. package/.next/standalone/.next/server/app/social.rsc +32 -24
  178. package/.next/standalone/.next/server/app/social.segments/_full.segment.rsc +32 -24
  179. package/.next/standalone/.next/server/app/social.segments/_tree.segment.rsc +2 -2
  180. package/.next/standalone/.next/server/app/social.segments/social/__PAGE__.segment.rsc +23 -18
  181. package/.next/standalone/.next/server/app-paths-manifest.json +3 -0
  182. package/.next/standalone/.next/server/chunks/[root-of-the-server]__00la_y0._.js +1 -1
  183. package/.next/standalone/.next/server/chunks/[root-of-the-server]__05_3-22._.js +1 -1
  184. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__15wc9e-._.js → [root-of-the-server]__063s0x7._.js} +2 -2
  185. package/.next/standalone/.next/server/chunks/[root-of-the-server]__066rab1._.js +7 -0
  186. package/.next/standalone/.next/server/chunks/[root-of-the-server]__07t47cm._.js +1 -1
  187. package/.next/standalone/.next/server/chunks/{[root-of-the-server]__13dx4sd._.js → [root-of-the-server]__0_4y8z7._.js} +3 -3
  188. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0cj5jqc._.js +1 -1
  189. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0e0fei3._.js +1 -1
  190. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0fooke1._.js +7 -0
  191. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0ljnyho._.js +1 -1
  192. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0o5-tcg._.js +1 -1
  193. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0qrnous._.js +1 -1
  194. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0t3v1a1._.js +1 -1
  195. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0t6y79e._.js +7 -0
  196. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0wmexuc._.js +1 -1
  197. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0x29muh._.js +7 -0
  198. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0xu34sz._.js +1 -1
  199. package/.next/standalone/.next/server/chunks/[root-of-the-server]__133knx1._.js +1 -1
  200. package/.next/standalone/.next/server/chunks/[root-of-the-server]__15-17hl._.js +1 -1
  201. package/.next/standalone/.next/server/chunks/[root-of-the-server]__19b7mig._.js +1 -1
  202. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1a_6x37._.js +8 -0
  203. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1an_8pa._.js +7 -0
  204. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1bbcwub._.js +1 -1
  205. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1ducpz2._.js +3 -0
  206. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1eris29._.js +1 -1
  207. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1gjo_cq._.js +1 -1
  208. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1qcm08_._.js +1 -1
  209. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1tir0vc._.js +1 -1
  210. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1w25q0m._.js +1 -1
  211. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1xhyinn._.js +3 -0
  212. package/.next/standalone/.next/server/chunks/[root-of-the-server]__20rwfdw._.js +1 -1
  213. package/.next/standalone/.next/server/chunks/_02twlca._.js +1 -1
  214. package/.next/standalone/.next/server/chunks/_072jl0y._.js +1 -1
  215. package/.next/standalone/.next/server/chunks/_0lw8_i0._.js +1 -1
  216. package/.next/standalone/.next/server/chunks/_0sqqpzb._.js +3 -0
  217. package/.next/standalone/.next/server/chunks/_1_fynia._.js +7 -7
  218. package/.next/standalone/.next/server/chunks/_1fn30_l._.js +1 -1
  219. package/.next/standalone/.next/server/chunks/_1itd1o_._.js +1 -1
  220. package/.next/standalone/.next/server/chunks/_1iwkh8t._.js +1 -1
  221. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_data_backup_route_actions_0zoj04p.js +3 -0
  222. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_data_csv_route_actions_0l6m7lg.js +3 -0
  223. package/.next/standalone/.next/server/chunks/_next-internal_server_app_api_data_restore_route_actions_0-b05bv.js +3 -0
  224. package/.next/standalone/.next/server/chunks/lib_02iz_9q._.js +4 -0
  225. package/.next/standalone/.next/server/chunks/lib_05agvk3._.js +4 -0
  226. package/.next/standalone/.next/server/chunks/lib_0v84u66._.js +4 -0
  227. package/.next/standalone/.next/server/chunks/lib_db-client_0_dch35.js +174 -0
  228. package/.next/standalone/.next/server/chunks/lib_linkedin-export_12imqxg.js +1 -1
  229. package/.next/standalone/.next/server/chunks/lib_rpc_005abye.js +3 -0
  230. package/.next/standalone/.next/server/chunks/lib_rpc_0b17r6v.js +3 -0
  231. package/.next/standalone/.next/server/chunks/lib_rpc_0c9d9ti.js +7 -0
  232. package/.next/standalone/.next/server/chunks/lib_rpc_0doq0t-.js +3 -0
  233. package/.next/standalone/.next/server/chunks/lib_rpc_0fd2rlw.js +3 -0
  234. package/.next/standalone/.next/server/chunks/lib_rpc_0is4qoc.js +3 -0
  235. package/.next/standalone/.next/server/chunks/lib_rpc_0jnfp2e.js +3 -0
  236. package/.next/standalone/.next/server/chunks/lib_rpc_0nef_n7.js +3 -0
  237. package/.next/standalone/.next/server/chunks/lib_rpc_0plrzra.js +3 -0
  238. package/.next/standalone/.next/server/chunks/lib_rpc_13a4m0c.js +3 -0
  239. package/.next/standalone/.next/server/chunks/lib_rpc_1if17c-.js +3 -0
  240. package/.next/standalone/.next/server/chunks/lib_rpc_1j-zw7v.js +3 -0
  241. package/.next/standalone/.next/server/chunks/lib_rpc_1sngt-q.js +3 -0
  242. package/.next/standalone/.next/server/chunks/lib_rpc_1v2sgme.js +3 -0
  243. package/.next/standalone/.next/server/chunks/lib_rpc_1vh-tgx.js +3 -0
  244. package/.next/standalone/.next/server/chunks/lib_rpc_1zaubz7.js +3 -0
  245. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__0qd8pzm._.js +3 -0
  246. package/.next/standalone/.next/server/chunks/ssr/{[root-of-the-server]__0qdeuyo._.js → [root-of-the-server]__1-012q1._.js} +2 -2
  247. package/.next/standalone/.next/server/chunks/ssr/_01o3i5y._.js +7 -0
  248. package/.next/standalone/.next/server/chunks/ssr/_02sband._.js +7 -0
  249. package/.next/standalone/.next/server/chunks/ssr/_06rgzfh._.js +3 -0
  250. package/.next/standalone/.next/server/chunks/ssr/_07zb7lu._.js +3 -0
  251. package/.next/standalone/.next/server/chunks/ssr/_0_79idq._.js +3 -0
  252. package/.next/standalone/.next/server/chunks/ssr/_0gy11ar._.js +3 -0
  253. package/.next/standalone/.next/server/chunks/ssr/_0hb-dhy._.js +3 -0
  254. package/.next/standalone/.next/server/chunks/ssr/_14nxd3q._.js +3 -0
  255. package/.next/standalone/.next/server/chunks/ssr/_189g8lg._.js +3 -0
  256. package/.next/standalone/.next/server/chunks/ssr/_1f_n00p._.js +1 -1
  257. package/.next/standalone/.next/server/chunks/ssr/_1fm1ih_._.js +2 -2
  258. package/.next/standalone/.next/server/chunks/ssr/_1k2nmbw._.js +2 -2
  259. package/.next/standalone/.next/server/chunks/ssr/_1k9qfsk._.js +3 -0
  260. package/.next/standalone/.next/server/chunks/ssr/app_141w189._.js +1 -1
  261. package/.next/standalone/.next/server/chunks/ssr/app_components_0t908t-._.js +1 -1
  262. package/.next/standalone/.next/server/chunks/ssr/app_components_0uuff77._.js +25 -2
  263. package/.next/standalone/.next/server/chunks/ssr/app_components_1j3q-h5._.js +25 -2
  264. package/.next/standalone/.next/server/chunks/ssr/app_components_CompanyScores_1g0mytz.js +1 -1
  265. package/.next/standalone/.next/server/chunks/ssr/app_import_page_1fmu6_l.js +1 -1
  266. package/.next/standalone/.next/server/chunks/ssr/app_launch_page_19t0dyd.js +1 -1
  267. package/.next/standalone/.next/server/chunks/ssr/app_page_1fazqbf.js +25 -13
  268. package/.next/standalone/.next/server/chunks/ssr/app_paths_page_1ol90m7.js +2 -2
  269. package/.next/standalone/.next/server/chunks/ssr/app_profile_page_0u3-l5y.js +1 -1
  270. package/.next/standalone/.next/server/chunks/ssr/app_queue_page_0c6znd6.js +11 -11
  271. package/.next/standalone/.next/server/chunks/ssr/app_settings_page_1f8mjj_.js +1 -1
  272. package/.next/standalone/.next/server/chunks/ssr/app_setup_page_1-282zx.js +12 -13
  273. package/.next/standalone/.next/server/chunks/ssr/app_social_page_0h7zxda.js +1 -1
  274. package/.next/standalone/.next/server/chunks/ssr/{lib_1c4ieuw._.js → lib_csv_1ttiu_h.js} +2 -2
  275. package/.next/standalone/.next/server/chunks/ssr/lib_galaxy-lab_108_lu-.js +1 -1
  276. package/.next/standalone/.next/server/chunks/ssr/lib_separation_1305zsx.js +3 -0
  277. package/.next/standalone/.next/server/edge/chunks/[root-of-the-server]__0pco7a6._.js +1 -1
  278. package/.next/standalone/.next/server/middleware-build-manifest.js +3 -3
  279. package/.next/standalone/.next/server/middleware-manifest.json +5 -5
  280. package/.next/standalone/.next/server/pages/404.html +1 -1
  281. package/.next/standalone/.next/server/pages/500.html +1 -1
  282. package/.next/standalone/.next/server/server-reference-manifest.js +1 -1
  283. package/.next/standalone/.next/server/server-reference-manifest.json +1 -1
  284. package/.next/standalone/.next/static/chunks/03-_esd2x_yk6.js +1 -0
  285. package/.next/standalone/.next/static/chunks/03-demj2iy-0p.js +44 -0
  286. package/.next/standalone/.next/static/chunks/0_1r-3csplxnj.js +1 -0
  287. package/.next/standalone/.next/static/chunks/0an_b6zi1r_qq.js +5 -0
  288. package/.next/standalone/.next/static/chunks/0e3g0sil79cus.js +21 -0
  289. package/.next/standalone/.next/static/chunks/0kscsqnvfq3-r.js +1 -0
  290. package/.next/standalone/.next/static/chunks/0p3g5tfostsep.js +7 -0
  291. package/.next/standalone/.next/static/chunks/0zd0t7e60bn4z.js +1 -0
  292. package/.next/standalone/.next/static/chunks/163b-20vwa06i.js +34 -0
  293. package/.next/standalone/.next/static/chunks/{0ws7zy0w57ufi.js → 1eyajb9ntzlrl.js} +1 -1
  294. package/.next/standalone/.next/static/chunks/1pa-2v1ajvrko.js +1 -0
  295. package/.next/standalone/.next/static/chunks/1qbjermbf68xj.js +1 -0
  296. package/.next/standalone/.next/static/chunks/1z9lb-dbcg4aa.js +1 -0
  297. package/.next/standalone/.next/static/chunks/23_1z47al92nz.js +57 -0
  298. package/.next/standalone/.next/static/chunks/260bomtr214m8.js +34 -0
  299. package/.next/standalone/.next/static/chunks/2eo9pqq9gay3r.js +34 -0
  300. package/.next/standalone/.next/static/chunks/2xk2ra4piiuod.js +34 -0
  301. package/.next/standalone/.next/static/chunks/2z1-q0_vunbql.js +2 -0
  302. package/.next/standalone/.next/static/chunks/2zf4jmz9l3li2.js +1 -0
  303. package/.next/standalone/.next/static/chunks/34g73qhayuevu.js +1 -0
  304. package/.next/standalone/.next/static/chunks/3b0-14cxqsprt.js +1 -0
  305. package/.next/standalone/.next/static/chunks/3jarus1_38s2z.js +1 -0
  306. package/.next/standalone/.next/static/chunks/3ssu341hav_sq.css +3 -0
  307. package/.next/standalone/.next/static/chunks/3v1qd3sqhqn0d.js +1 -0
  308. package/.next/standalone/.next/static/chunks/43pg2sursiypz.js +1 -0
  309. package/.next/standalone/.next/static/chunks/44yn0tcd9dfk3.js +1 -0
  310. package/.next/standalone/CHANGELOG.md +143 -0
  311. package/.next/standalone/README.md +71 -49
  312. package/.next/standalone/SECURITY.md +17 -11
  313. package/.next/standalone/app/api/data/backup/route.js +25 -0
  314. package/.next/standalone/app/api/data/csv/route.js +74 -0
  315. package/.next/standalone/app/api/data/export/route.js +1 -1
  316. package/.next/standalone/app/api/data/restore/route.js +48 -0
  317. package/.next/standalone/app/api/data/reveal/route.js +19 -6
  318. package/.next/standalone/app/api/data/route.js +15 -4
  319. package/.next/standalone/app/api/ingest/route.js +1 -1
  320. package/.next/standalone/app/api/queue/route.js +1 -1
  321. package/.next/standalone/app/api/scraper/route.js +120 -32
  322. package/.next/standalone/app/api/social/crm/route.js +2 -1
  323. package/.next/standalone/app/components/AppHeader.js +20 -16
  324. package/.next/standalone/app/components/AppTabs.js +8 -8
  325. package/.next/standalone/app/components/AutoScanButton.js +2 -2
  326. package/.next/standalone/app/components/Avatar.js +1 -1
  327. package/.next/standalone/app/components/ChainView.js +184 -112
  328. package/.next/standalone/app/components/CirclePanel.js +16 -16
  329. package/.next/standalone/app/components/ClusterSpinner.js +64 -0
  330. package/.next/standalone/app/components/CompanyScores.js +20 -20
  331. package/.next/standalone/app/components/EmptyState.js +39 -18
  332. package/.next/standalone/app/components/FieldStep.js +15 -13
  333. package/.next/standalone/app/components/FilterPanel.js +17 -17
  334. package/.next/standalone/app/components/ForceGraph.js +49 -14
  335. package/.next/standalone/app/components/GalaxyLab.js +33 -33
  336. package/.next/standalone/app/components/GridView.js +18 -18
  337. package/.next/standalone/app/components/LegacyScoresCard.js +10 -11
  338. package/.next/standalone/app/components/LinkedInLimits.js +24 -19
  339. package/.next/standalone/app/components/LiquidGlass.js +99 -0
  340. package/.next/standalone/app/components/ListView.js +20 -20
  341. package/.next/standalone/app/components/MapControls.js +5 -5
  342. package/.next/standalone/app/components/MappingProgress.js +16 -16
  343. package/.next/standalone/app/components/NoteDetail.js +13 -13
  344. package/.next/standalone/app/components/OnboardingGate.js +4 -4
  345. package/.next/standalone/app/components/OutlinkQuest.js +25 -25
  346. package/.next/standalone/app/components/PathsAnalyzer.js +37 -36
  347. package/.next/standalone/app/components/PeopleMap.js +21 -21
  348. package/.next/standalone/app/components/RingsView.js +11 -11
  349. package/.next/standalone/app/components/ScanRadar.js +84 -39
  350. package/.next/standalone/app/components/ScanStatusBar.js +22 -18
  351. package/.next/standalone/app/components/ScanTrail.js +8 -5
  352. package/.next/standalone/app/components/SeparationView.js +168 -104
  353. package/.next/standalone/app/components/Sidebar.js +161 -161
  354. package/.next/standalone/app/components/StaleServerBanner.js +4 -4
  355. package/.next/standalone/app/components/TheirCircle.js +26 -26
  356. package/.next/standalone/app/components/ThemeDefs.js +42 -0
  357. package/.next/standalone/app/components/ThemeLoader.js +20 -1
  358. package/.next/standalone/app/components/UpdatePanel.js +22 -22
  359. package/.next/standalone/app/components/UserProvider.js +22 -15
  360. package/.next/standalone/app/components/settings/AppearanceSection.js +47 -24
  361. package/.next/standalone/app/components/settings/DataSection.js +276 -109
  362. package/.next/standalone/app/components/settings/NetworkHealthSection.js +13 -13
  363. package/.next/standalone/app/components/settings/SectorPicker.js +12 -12
  364. package/.next/standalone/app/components/settings/SectorSection.js +13 -14
  365. package/.next/standalone/app/components/settings/TierSection.js +9 -9
  366. package/.next/standalone/app/components/settings/TitleSection.js +11 -11
  367. package/.next/standalone/app/components/settings/UsageSection.js +313 -0
  368. package/.next/standalone/app/components/ui.js +8 -8
  369. package/.next/standalone/app/globals.css +159 -2
  370. package/.next/standalone/app/import/page.js +94 -38
  371. package/.next/standalone/app/launch/page.js +5 -5
  372. package/.next/standalone/app/layout.js +6 -2
  373. package/.next/standalone/app/page.js +53 -37
  374. package/.next/standalone/app/paths/page.js +63 -63
  375. package/.next/standalone/app/profile/page.js +58 -58
  376. package/.next/standalone/app/queue/page.js +54 -54
  377. package/.next/standalone/app/scores/page.js +2 -2
  378. package/.next/standalone/app/settings/page.js +16 -13
  379. package/.next/standalone/app/setup/page.js +221 -125
  380. package/.next/standalone/app/social/Crm.js +63 -62
  381. package/.next/standalone/app/social/SocialHub.js +22 -22
  382. package/.next/standalone/app/social/Thread.js +7 -7
  383. package/.next/standalone/app/social/page.js +2 -2
  384. package/.next/standalone/lib/backups.js +458 -0
  385. package/.next/standalone/lib/chain-layout.js +32 -0
  386. package/.next/standalone/lib/csv-store.js +131 -0
  387. package/.next/standalone/lib/csv.js +137 -39
  388. package/.next/standalone/lib/data-folder.js +19 -3
  389. package/.next/standalone/lib/data-import.js +5 -2
  390. package/.next/standalone/lib/db-client.js +78 -20
  391. package/.next/standalone/lib/demo.js +5 -4
  392. package/.next/standalone/lib/galaxy-export.js +9 -2
  393. package/.next/standalone/lib/galaxy-lab.js +19 -5
  394. package/.next/standalone/lib/galaxy-layouts.js +43 -0
  395. package/.next/standalone/lib/gate.js +10 -4
  396. package/.next/standalone/lib/ingest.js +1 -1
  397. package/.next/standalone/lib/linkedin-limits.js +212 -11
  398. package/.next/standalone/lib/liquid-glass.js +59 -0
  399. package/.next/standalone/lib/notifications.js +13 -0
  400. package/.next/standalone/lib/scan-pace.js +11 -0
  401. package/.next/standalone/lib/scan-progress.js +20 -0
  402. package/.next/standalone/lib/scan-risk.js +44 -0
  403. package/.next/standalone/lib/scanner-setup.js +97 -15
  404. package/.next/standalone/lib/scraper-client.js +17 -3
  405. package/.next/standalone/lib/search-risk.js +7 -3
  406. package/.next/standalone/lib/settings-client.js +5 -3
  407. package/.next/standalone/lib/settings.js +10 -0
  408. package/.next/standalone/lib/social-store.js +3 -2
  409. package/.next/standalone/lib/synced-setting.js +46 -0
  410. package/.next/standalone/lib/theme-store.js +42 -10
  411. package/.next/standalone/lib/themes.js +111 -21
  412. package/.next/standalone/lib/usage.js +195 -0
  413. package/.next/standalone/package-lock.json +2 -2
  414. package/.next/standalone/package.json +1 -1
  415. package/.next/standalone/scripts/scrape.py +26 -2
  416. package/.next/static/chunks/03-_esd2x_yk6.js +1 -0
  417. package/.next/static/chunks/03-demj2iy-0p.js +44 -0
  418. package/.next/static/chunks/0_1r-3csplxnj.js +1 -0
  419. package/.next/static/chunks/0an_b6zi1r_qq.js +5 -0
  420. package/.next/static/chunks/0e3g0sil79cus.js +21 -0
  421. package/.next/static/chunks/0kscsqnvfq3-r.js +1 -0
  422. package/.next/static/chunks/0p3g5tfostsep.js +7 -0
  423. package/.next/static/chunks/0zd0t7e60bn4z.js +1 -0
  424. package/.next/static/chunks/163b-20vwa06i.js +34 -0
  425. package/.next/static/chunks/{0ws7zy0w57ufi.js → 1eyajb9ntzlrl.js} +1 -1
  426. package/.next/static/chunks/1pa-2v1ajvrko.js +1 -0
  427. package/.next/static/chunks/1qbjermbf68xj.js +1 -0
  428. package/.next/static/chunks/1z9lb-dbcg4aa.js +1 -0
  429. package/.next/static/chunks/23_1z47al92nz.js +57 -0
  430. package/.next/static/chunks/260bomtr214m8.js +34 -0
  431. package/.next/static/chunks/2eo9pqq9gay3r.js +34 -0
  432. package/.next/static/chunks/2xk2ra4piiuod.js +34 -0
  433. package/.next/static/chunks/2z1-q0_vunbql.js +2 -0
  434. package/.next/static/chunks/2zf4jmz9l3li2.js +1 -0
  435. package/.next/static/chunks/34g73qhayuevu.js +1 -0
  436. package/.next/static/chunks/3b0-14cxqsprt.js +1 -0
  437. package/.next/static/chunks/3jarus1_38s2z.js +1 -0
  438. package/.next/static/chunks/3ssu341hav_sq.css +3 -0
  439. package/.next/static/chunks/3v1qd3sqhqn0d.js +1 -0
  440. package/.next/static/chunks/43pg2sursiypz.js +1 -0
  441. package/.next/static/chunks/44yn0tcd9dfk3.js +1 -0
  442. package/CHANGELOG.md +143 -0
  443. package/README.md +71 -49
  444. package/SECURITY.md +17 -11
  445. package/lib/backups.js +458 -0
  446. package/lib/chain-layout.js +32 -0
  447. package/lib/csv-store.js +131 -0
  448. package/lib/csv.js +137 -39
  449. package/lib/data-folder.js +19 -3
  450. package/lib/data-import.js +5 -2
  451. package/lib/db-client.js +78 -20
  452. package/lib/demo.js +5 -4
  453. package/lib/galaxy-export.js +9 -2
  454. package/lib/galaxy-lab.js +19 -5
  455. package/lib/galaxy-layouts.js +43 -0
  456. package/lib/gate.js +10 -4
  457. package/lib/ingest.js +1 -1
  458. package/lib/linkedin-limits.js +212 -11
  459. package/lib/liquid-glass.js +59 -0
  460. package/lib/notifications.js +13 -0
  461. package/lib/scan-pace.js +11 -0
  462. package/lib/scan-progress.js +20 -0
  463. package/lib/scan-risk.js +44 -0
  464. package/lib/scanner-setup.js +97 -15
  465. package/lib/scraper-client.js +17 -3
  466. package/lib/search-risk.js +7 -3
  467. package/lib/settings-client.js +5 -3
  468. package/lib/settings.js +10 -0
  469. package/lib/social-store.js +3 -2
  470. package/lib/synced-setting.js +46 -0
  471. package/lib/theme-store.js +42 -10
  472. package/lib/themes.js +111 -21
  473. package/lib/usage.js +195 -0
  474. package/package.json +1 -1
  475. package/scripts/scrape.py +26 -2
  476. package/.next/standalone/.next/server/chunks/[root-of-the-server]__0-rnla2._.js +0 -3
  477. package/.next/standalone/.next/server/chunks/[root-of-the-server]__14ou7j5._.js +0 -3
  478. package/.next/standalone/.next/server/chunks/[root-of-the-server]__16iu0hv._.js +0 -3
  479. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1kbl21f._.js +0 -3
  480. package/.next/standalone/.next/server/chunks/[root-of-the-server]__1rphsdk._.js +0 -3
  481. package/.next/standalone/.next/server/chunks/lib_0851sk0._.js +0 -8
  482. package/.next/standalone/.next/server/chunks/lib_1q7p2ro._.js +0 -8
  483. package/.next/standalone/.next/server/chunks/lib_1r6l86l._.js +0 -8
  484. package/.next/standalone/.next/server/chunks/lib_db-client_15le7cw.js +0 -174
  485. package/.next/standalone/.next/server/chunks/lib_rpc_04s8mzr.js +0 -3
  486. package/.next/standalone/.next/server/chunks/lib_rpc_053z7as.js +0 -3
  487. package/.next/standalone/.next/server/chunks/lib_rpc_0b_-2te.js +0 -3
  488. package/.next/standalone/.next/server/chunks/lib_rpc_0dhbxdm.js +0 -3
  489. package/.next/standalone/.next/server/chunks/lib_rpc_0dxlk31.js +0 -3
  490. package/.next/standalone/.next/server/chunks/lib_rpc_0f8b-qc.js +0 -3
  491. package/.next/standalone/.next/server/chunks/lib_rpc_0pzie7_.js +0 -3
  492. package/.next/standalone/.next/server/chunks/lib_rpc_0r76fq_.js +0 -3
  493. package/.next/standalone/.next/server/chunks/lib_rpc_0ut7pjp.js +0 -3
  494. package/.next/standalone/.next/server/chunks/lib_rpc_15zyqaz.js +0 -3
  495. package/.next/standalone/.next/server/chunks/lib_rpc_18zpjtq.js +0 -3
  496. package/.next/standalone/.next/server/chunks/lib_rpc_1a8xkiz.js +0 -3
  497. package/.next/standalone/.next/server/chunks/lib_rpc_1e_55xo.js +0 -3
  498. package/.next/standalone/.next/server/chunks/lib_rpc_1oxfd1_.js +0 -3
  499. package/.next/standalone/.next/server/chunks/lib_rpc_1s0lod0.js +0 -3
  500. package/.next/standalone/.next/server/chunks/ssr/[root-of-the-server]__08oxiqh._.js +0 -3
  501. package/.next/standalone/.next/server/chunks/ssr/_03l7vge._.js +0 -3
  502. package/.next/standalone/.next/server/chunks/ssr/_08g31gm._.js +0 -3
  503. package/.next/standalone/.next/server/chunks/ssr/_0gk_ofx._.js +0 -3
  504. package/.next/standalone/.next/server/chunks/ssr/_0nwsf93._.js +0 -3
  505. package/.next/standalone/.next/server/chunks/ssr/_0vho1lb._.js +0 -3
  506. package/.next/standalone/.next/server/chunks/ssr/_1-658fq._.js +0 -3
  507. package/.next/standalone/.next/server/chunks/ssr/_1bc46kz._.js +0 -3
  508. package/.next/standalone/.next/server/chunks/ssr/_2105jz8._.js +0 -3
  509. package/.next/standalone/.next/server/chunks/ssr/app_components_settings_SectorPicker_1c-29qw.js +0 -3
  510. package/.next/standalone/.next/static/chunks/02pq76u7y4v9-.js +0 -22
  511. package/.next/standalone/.next/static/chunks/0cmq0exd4d0h9.js +0 -1
  512. package/.next/standalone/.next/static/chunks/0i02yxppzds1o.js +0 -1
  513. package/.next/standalone/.next/static/chunks/0m_p4k-q2qh--.js +0 -1
  514. package/.next/standalone/.next/static/chunks/0oyslj62jkubd.js +0 -1
  515. package/.next/standalone/.next/static/chunks/0vo-l8hxneba6.css +0 -3
  516. package/.next/standalone/.next/static/chunks/0yh8z2tbrc5i_.js +0 -1
  517. package/.next/standalone/.next/static/chunks/17-rhp8sg4m1b.js +0 -44
  518. package/.next/standalone/.next/static/chunks/172e10mi-tpo_.js +0 -34
  519. package/.next/standalone/.next/static/chunks/1ei5vbe2uw6fl.js +0 -1
  520. package/.next/standalone/.next/static/chunks/1f7_pl_wq7lh3.js +0 -11
  521. package/.next/standalone/.next/static/chunks/1jzbe7zdx9vbj.js +0 -2
  522. package/.next/standalone/.next/static/chunks/1m3017gp790pw.js +0 -45
  523. package/.next/standalone/.next/static/chunks/1t20e8u0st7ep.js +0 -1
  524. package/.next/standalone/.next/static/chunks/2-ch9rm27eril.js +0 -11
  525. package/.next/standalone/.next/static/chunks/2ldv-v3s9yaif.js +0 -1
  526. package/.next/standalone/.next/static/chunks/3bp284gjf7dyq.js +0 -1
  527. package/.next/standalone/.next/static/chunks/3k1f6clbn3gj3.js +0 -7
  528. package/.next/standalone/.next/static/chunks/3l4t8je6iguzc.js +0 -1
  529. package/.next/standalone/.next/static/chunks/3tplzuc9jk-tl.js +0 -1
  530. package/.next/standalone/.next/static/chunks/42m0bqr8pbovz.js +0 -11
  531. package/.next/static/chunks/02pq76u7y4v9-.js +0 -22
  532. package/.next/static/chunks/0cmq0exd4d0h9.js +0 -1
  533. package/.next/static/chunks/0i02yxppzds1o.js +0 -1
  534. package/.next/static/chunks/0m_p4k-q2qh--.js +0 -1
  535. package/.next/static/chunks/0oyslj62jkubd.js +0 -1
  536. package/.next/static/chunks/0vo-l8hxneba6.css +0 -3
  537. package/.next/static/chunks/0yh8z2tbrc5i_.js +0 -1
  538. package/.next/static/chunks/17-rhp8sg4m1b.js +0 -44
  539. package/.next/static/chunks/172e10mi-tpo_.js +0 -34
  540. package/.next/static/chunks/1ei5vbe2uw6fl.js +0 -1
  541. package/.next/static/chunks/1f7_pl_wq7lh3.js +0 -11
  542. package/.next/static/chunks/1jzbe7zdx9vbj.js +0 -2
  543. package/.next/static/chunks/1m3017gp790pw.js +0 -45
  544. package/.next/static/chunks/1t20e8u0st7ep.js +0 -1
  545. package/.next/static/chunks/2-ch9rm27eril.js +0 -11
  546. package/.next/static/chunks/2ldv-v3s9yaif.js +0 -1
  547. package/.next/static/chunks/3bp284gjf7dyq.js +0 -1
  548. package/.next/static/chunks/3k1f6clbn3gj3.js +0 -7
  549. package/.next/static/chunks/3l4t8je6iguzc.js +0 -1
  550. package/.next/static/chunks/3tplzuc9jk-tl.js +0 -1
  551. package/.next/static/chunks/42m0bqr8pbovz.js +0 -11
  552. /package/.next/standalone/.next/static/{dQUvvVSXqbkEFC3-CNcwT → ZVpLBK-2vpllv2HxOFs2d}/_buildManifest.js +0 -0
  553. /package/.next/standalone/.next/static/{dQUvvVSXqbkEFC3-CNcwT → ZVpLBK-2vpllv2HxOFs2d}/_clientMiddlewareManifest.js +0 -0
  554. /package/.next/standalone/.next/static/{dQUvvVSXqbkEFC3-CNcwT → ZVpLBK-2vpllv2HxOFs2d}/_ssgManifest.js +0 -0
  555. /package/.next/static/{dQUvvVSXqbkEFC3-CNcwT → ZVpLBK-2vpllv2HxOFs2d}/_buildManifest.js +0 -0
  556. /package/.next/static/{dQUvvVSXqbkEFC3-CNcwT → ZVpLBK-2vpllv2HxOFs2d}/_clientMiddlewareManifest.js +0 -0
  557. /package/.next/static/{dQUvvVSXqbkEFC3-CNcwT → ZVpLBK-2vpllv2HxOFs2d}/_ssgManifest.js +0 -0
@@ -15,7 +15,15 @@ module.exports=[30100,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(50944
15
15
  @media (prefers-reduced-motion: no-preference) { .lab-pop .gn, .lab-pop .gl { animation: lab-pop 0.5s ease-out; } }
16
16
  @media (prefers-reduced-motion: reduce) {
17
17
  .galaxy-ring-pulse { animation: none; opacity: 0.8; }
18
- }`;function U(a,b){let c=j.select(a);S()?c.interrupt("hover").attr("r",b):c.transition("hover").duration(150).ease(m.cubicOut).attr("r",b)}var V=a.i(38246);let W=a=>a?.unlock_status==="pending";function X(a=[],b=[]){let c=new Map;for(let a of b||[]){let b=a?.source_connection_id;if(null==b)continue;let d=c.get(b);d||c.set(b,d=[]),d.push(a)}let d=new Map;for(let b of a||[]){let a=b?.unlocked_from_bridge_id;if(null==a||1!==b.degree)continue;let c=d.get(a);c||d.set(a,c=[]),c.push(b)}return{circles:c,introduced:d}}let Y={connected:0,requested:1},Z=(a,b)=>(Y[a.state]??2)-(Y[b.state]??2)||(0,P.score1)(b.row)-(0,P.score1)(a.row)||String(a.row.name||"").localeCompare(String(b.row.name||"")),$=(a,b,c)=>Math.min(c,Math.max(b,a)),_=2*Math.PI;function aa(a,b,c){if(a<=0)return 1;let d=c*a;return Math.max(1,c>=_-1e-9?Math.floor(d/b):Math.floor(d/b)+1)}function ab(a,b,c,d,e=c){let f=[],g=0;for(let h=b;g<a;h+=Math.max(c,e))f.push(h),g+=aa(h,c,d);return f}let ac=(a,b,c,d,e)=>{let f=ab(a,b,c,d,e);return f[f.length-1]};function ad(a,{inner:b,outer:c,spacing:d,minSpacing:e=d/3,innerMin:f=b,start:g=-Math.PI/2,sweep:h=_,ringGap:i=0}={}){let j=Math.max(0,Math.floor(a)||0);if(!j)return{spacing:d,inner:b,rings:[],points:[]};let k=d,l=b;if(ac(j,l,k,h,i)>c)if(ac(j,f,k,h,i)<=c){let a=f,d=b;for(let b=0;b<24;b++){let b=(a+d)/2;ac(j,b,k,h,i)<=c?a=b:d=b}l=a}else{let a=e,b=d;if(ac(j,l=f,a,h,i)<=c)for(let d=0;d<24;d++){let d=(a+b)/2;ac(j,l,d,h,i)<=c?a=d:b=d}k=a}let m=ab(j,l,k,h,i),n=m.map(a=>aa(a,k,h)),o=n.reduce((a,b)=>a+b,0),p=n.map(a=>Math.min(a,Math.floor(j*a/o))),q=j-p.reduce((a,b)=>a+b,0);for(;q>0;){let a=-1;for(let b=0;b<n.length;b++)p[b]<n[b]&&(a<0||n[b]-p[b]>n[a]-p[a])&&(a=b);p[a]++,q--}let r=h>=_-1e-9,s=[],t=[];return m.forEach((a,b)=>{let c=p[b];if(!c)return;t.push({radius:a,count:c});let d=r?_/c:c>1?h/(c-1):0,e=r?g+(b%2?d/2:0):c>1?g:g+h/2,f=r?null:function(a){let b=Math.floor((a-1)/2),c=b+1,d=[b--];for(;d.length<a;)c<a&&d.push(c++),d.length<a&&b>=0&&d.push(b--);return d}(c);for(let b=0;b<c;b++){let c=e+(f?f[b]:b)*d;s.push({x:a*Math.cos(c),y:a*Math.sin(c),angle:c,ring:t.length-1})}}),{spacing:k,inner:l,rings:t,points:s}}function ae(a,b){return Math.max(1.4,Math.min(7,.42*a*("S"===b?1:"A"===b?.86:"B"===b?.72:.6)))}let af=["S","A","B","C","D"];var ag=a.i(45889);let ah={1:"#FFD700",2:"#FF6B35",3:"#3498DB",4:"#9B59B6",5:"#00ff88",6:"#ff5050"},ai={S:0,A:1,B:2,C:3,D:4},aj="#00ff88",ak="#5a5a66",al=(a,b)=>(ai[a.tier]??9)-(ai[b.tier]??9)||(0,P.score)(b)-(0,P.score)(a)||String(a.name||"").localeCompare(String(b.name||"")),am=a=>String(a?.name||"").trim().split(/\s+/)[0]||"them",an=a=>`/setup?scan=${encodeURIComponent(a.id)}`,ao=a=>`${a}${a%10==1&&11!==a?"st":a%10==2&&12!==a?"nd":a%10==3&&13!==a?"rd":"th"}`,ap=()=>{let a=(0,e.scannerNow)();return a.running&&(0,e.isCircleScan)(a)?a.target?.id??null:null},aq=()=>null,ar=()=>()=>{};function as(a){return()=>void 0}let at=()=>!1,au=()=>!0;function av(a,b){let c=new Set([(0,P.keyFor)(a)]),d=a=>{let b=[];for(let d of a||[]){let a=(0,P.keyFor)(d);c.has(a)||(c.add(a),b.push(d))}return b.sort(al)};return[...d(b.introduced.get(a.id)),...d(b.circles.get(a.id))]}function aw(a,b){if(!a)return[];let c=b.find(b=>b.id===a);if(!c)return[];let d=c.unlocked_from_bridge_id;return null!=d&&b.some(a=>a.id===d)?[d,a]:[a]}function ax({bridge:a,members:c,reach:d,cx:e,cy:f,maxR:g,still:h,band:i}){let j=c.filter(a=>1===a.degree||"S"===a.tier||"A"===a.tier||"B"===a.tier),{inner:k,outer:l}=i,m=Math.min(.9*Math.PI,Math.max(.2*Math.PI,11*j.length/k)),n=ad(j.length,{inner:k,outer:l,spacing:11,minSpacing:3.5,start:a.angle-m/2,sweep:m});return(0,b.jsxs)("g",{children:[(0,b.jsx)("circle",{cx:e,cy:f,r:k,fill:"none",stroke:`${ah[2]}06`,strokeWidth:1}),j.map((c,g)=>{let i=n.points[g],k=e+i.x,l=f+i.y,m=(0,K.reachState)(c,d),o=Math.min(ae(n.spacing,c.tier),5)*(m?1.3:1),p="hidden"===m?ak:O.TIER_COLORS[c.tier]||"#555";return(0,b.jsxs)("g",{children:[(m||j.length<=40)&&(0,b.jsx)("line",{x1:a.x,y1:a.y,x2:k,y2:l,stroke:m?aj:p,strokeWidth:.5,strokeOpacity:m?.35:.15}),"ready"===m&&(0,b.jsx)(ay,{x:k,y:l,r:2.3*o,still:h}),(0,b.jsx)("circle",{cx:k,cy:l,r:o,fill:p,fillOpacity:m?.95:.45,stroke:m&&"hidden"!==m?aj:p,strokeWidth:m?1:.5,strokeOpacity:m?1:.25}),("S"===c.tier||m)&&j.length<=60&&(0,b.jsx)("text",{x:k,y:l+o+9,textAnchor:"middle",fill:m&&"hidden"!==m?aj:"#aaa",fontSize:7,children:am(c)})]},"pv-"+c.id)})]})}function ay({x:a,y:c,r:d,still:e}){return(0,b.jsxs)("circle",{cx:a,cy:c,r:d,fill:aj,fillOpacity:.16,stroke:aj,strokeWidth:.8,strokeOpacity:.45,pointerEvents:"none",children:[!e&&(0,b.jsx)("animate",{attributeName:"fill-opacity",values:"0.06;0.24;0.06",dur:"2.8s",repeatCount:"indefinite"}),!e&&(0,b.jsx)("animate",{attributeName:"stroke-opacity",values:"0.25;0.7;0.25",dur:"2.8s",repeatCount:"indefinite"})]})}function az({x:a,y:c,s:d}){return(0,b.jsxs)("g",{transform:`translate(${a} ${c}) scale(${d})`,pointerEvents:"none",children:[(0,b.jsx)("path",{d:"M-1.9 -0.6 V-1.8 A1.9 1.9 0 0 1 1.9 -1.8 V-0.6",fill:"none",stroke:"#d6d6de",strokeWidth:.9}),(0,b.jsx)("rect",{x:-2.6,y:-.7,width:5.2,height:3.9,rx:.8,fill:"#d6d6de"})]})}function aA({onIn:a,onReset:c,onOut:d}){let e=a=>({width:32,height:32,borderRadius:"50%",border:"none",cursor:"pointer",background:a?"rgba(255,255,255,0.06)":"rgba(255,255,255,0.1)",color:a?"#666":"#fff",fontSize:a?10:18,fontWeight:700,display:"flex",alignItems:"center",justifyContent:"center",backdropFilter:"blur(8px)"});return(0,b.jsxs)("div",{style:{position:"absolute",bottom:64,right:20,zIndex:20,display:"flex",flexDirection:"column",gap:4},children:[(0,b.jsx)("button",{type:"button",onClick:a,"aria-label":"Zoom in",style:e(!1),children:"+"}),(0,b.jsx)("button",{type:"button",onClick:c,"aria-label":"Fit to the window",style:e(!0),children:"⊙"}),(0,b.jsx)("button",{type:"button",onClick:d,"aria-label":"Zoom out",style:e(!1),children:"−"})]})}function aB({trail:a,index:e,reach:f,dims:g,requests:i,scanningId:j,still:k,canScan:l,onOpen:m,onBack:n,onSelect:o}){var p,q,r,s,t;let u,v,w,x=a[a.length-1],y=a.length,z=(0,c.useMemo)(()=>av(x,e),[x,e]),A=a.map(a=>a.id).join(">"),B=(0,c.useMemo)(()=>(function(a,b,c=[],d=6){let e=[],f=new Set([a.id,...c]),g=a=>(b.circles.get(a.id)?.length||0)+(b.introduced.get(a.id)?.length||0),h=(a,c,i)=>{if(i>d)return;let j=(b.introduced.get(a.id)||[]).filter(a=>g(a)>0&&!f.has(a.id)).sort((a,b)=>g(b)-g(a)||String(a.name||"").localeCompare(String(b.name||"")));for(let a of(j.forEach(a=>f.add(a.id)),j))e.push({row:a,parent:c,step:i}),h(a,e.length-1,i+1)};return h(a,-1,1),e})(x,e,A.split(">"),Math.max(0,5-y)),[x,e,A,y]),[C,D]=(0,c.useState)(null),[E,F]=(0,c.useState)(null),G=(0,c.useRef)(null),H=(0,c.useRef)(null),J=(0,d.useRouter)(),L=g.w/2,M=g.h/2,N=Math.min(L,M)-30,Q=g.w>=g.h?0:Math.PI/2,R=B.length>0,S=(0,c.useMemo)(()=>(function(a,{inner:b,outer:c,spacing:d,minSpacing:e=d/3,gap:f=d,start:g=-Math.PI/2}){let h=af.map(a=>({tier:a,idx:[]}));a.forEach((a,b)=>{let c=af.indexOf(a?.tier);h[c<0?4:c].idx.push(b)});let i=h.filter(a=>a.idx.length),j=c=>{let e=Array(a.length),h=[],j=b;for(let a of i){let b=ad(a.idx.length,{inner:j,outer:1/0,spacing:c,minSpacing:c,start:g});a.idx.forEach((a,c)=>{let d=b.points[c];e[a]={x:d.x,y:d.y,angle:d.angle,slot:_/b.rings[d.ring].count}});let i=Math.max(j,...b.rings.map(a=>a.radius));h.push({tier:a.tier,inner:j,outer:i}),j=i+c/d*f}return{spacing:c,points:e,bands:h,edge:h.length?h[h.length-1].outer:b}},k=j(d);if(k.edge<=c)return k;let l=e,m=d;if((k=j(l)).edge>c)return k;for(let a=0;a<20;a++){let a=(l+m)/2,b=j(a);b.edge<=c?(l=a,k=b):m=a}return k})(z,{inner:Math.max(62,.3*N),outer:N*(R?.72:.94),spacing:Math.max(14,Math.min(24,.085*N)),minSpacing:4,gap:Math.max(10,.04*N),start:R?Q:-Math.PI/2}),[z,N,R,Q]),T=(0,c.useMemo)(()=>B.map(({row:a})=>{let b=av(a,e),c=ad(Math.min(b.length,aC),aG);return{people:b,radius:(c.rings[c.rings.length-1]?.radius||aE)+6}}),[B,e]),U=(0,c.useMemo)(()=>{if(!B.length)return null;let a=Math.max(...T.map(a=>a.radius)),b=new Map(z.map((a,b)=>[a.id,b]));return function(a=[],{from:b=0,hop:c=60,spacing:d=46,toward:e=0,angles:f=[]}={}){let g=a.length,h=a.map((a,b)=>Number.isInteger(a)&&a>=0&&a<g&&a!==b?a:-1),i=Array(g).fill(0);for(let a=0;a<g;a++){let b=[],c=a;for(;c>=0&&!i[c]&&!b.includes(c);)b.push(c),c=h[c];c>=0&&!i[c]&&(h[b[b.length-1]]=-1,c=-1);let d=c>=0?i[c]+1:1;for(let a=b.length-1;a>=0;a--)i[b[a]]=d++}let j=Array(g),k=[];for(let a=1;a<=Math.max(0,...i);a++){let l=[];for(let b=0;b<g;b++)i[b]===a&&l.push(b);let m=b+(a-1)*c,n=function(a,b){let c=a.length;if(c<2)return a.slice();let d=a=>(a%_+_)%_,e=a.map((a,b)=>b).sort((b,c)=>d(a[b])-d(a[c])||b-c),f=0,g=-1;e.forEach((b,h)=>{let i=d(d(a[e[(h+1)%c]])-d(a[b]))||(c>1&&h===c-1?_:0);i>g&&(g=i,f=(h+1)%c)});let h=e.slice(f).concat(e.slice(0,f)),i=d(a[h[0]]),j=h.map(b=>i+d(d(a[b])-i)),k=[];j.forEach((a,c)=>{for(k.push({sum:a-c*b,count:1});k.length>1&&k[k.length-2].sum/k[k.length-2].count>k[k.length-1].sum/k[k.length-1].count;){let a=k.pop();k[k.length-1].sum+=a.sum,k[k.length-1].count+=a.count}});let l=k.flatMap(a=>Array(a.count).fill(a.sum/a.count)).map((a,c)=>a+c*b);if(l[c-1]-l[0]>_-b){let a=(l[0]+l[c-1])/2;l=l.map((b,d)=>a+_/c*(d-(c-1)/2))}let m=Array(c);return h.forEach((a,b)=>{m[a]=l[b]}),m}(l.map(a=>h[a]<0?Number.isFinite(f[a])?f[a]:e:j[h[a]].angle),Math.min(d/Math.max(1,m),_/l.length));l.forEach((b,c)=>{let d=n[c];j[b]={x:m*Math.cos(d),y:m*Math.sin(d),angle:d,radius:m,depth:a,parent:h[b]}}),k.push({radius:m,count:l.length,depth:a})}return{rings:k,points:j}}(B.map(a=>a.parent),{from:S.edge+S.spacing+a+22,hop:2*a+46,spacing:2*a+26,toward:Q,angles:B.map(a=>a.parent<0?S.points[b.get(a.row.id)]?.angle:void 0)})},[B,T,z,S,Q]),V=(0,c.useMemo)(()=>T.map((a,b)=>({...a,points:ad(Math.min(a.people.length,aC),{...aG,start:U.points[b].angle}).points})),[T,U]),W=(0,c.useMemo)(()=>{let a=new Map(z.map((a,b)=>[a.id,b]));return B.map(b=>{if(b.parent<0){let c=S.points[a.get(b.row.id)];return c?{x:c.x,y:c.y,r:1.4*ae(S.spacing,b.row.tier),back:{x:0,y:0,r:30}}:{x:0,y:0,r:30,back:null}}let c=U.points[b.parent],d=V[b.parent].people.findIndex(a=>a.id===b.row.id),e=V[b.parent].points[d]||{x:0,y:0};return{x:c.x+e.x,y:c.y+e.y,r:aF,inCluster:!0,back:{x:c.x,y:c.y,r:aD}}})},[B,z,S,U,V]),X=(0,c.useMemo)(()=>{if(!U)return{k:1,x:0,y:0};let a={l:-S.edge,r:S.edge,t:-S.edge,b:S.edge};U.points.forEach((b,c)=>{let d=V[c].radius;a.l=Math.min(a.l,b.x-d-30),a.r=Math.max(a.r,b.x+d+30),a.t=Math.min(a.t,b.y-d-8),a.b=Math.max(a.b,b.y+d+30)});let b=Math.max(.35,Math.min(1,(g.w-140)/(a.r-a.l),(g.h-96-30)/(a.b-a.t)));return{k:b,x:-(a.l+a.r)/2*b,y:-(a.t+a.b)/2*b+33}},[U,V,S,g.w,g.h]),Y=E??X,Z=a=>F(b=>"function"==typeof a?a(b??X):a),$=(0,c.useMemo)(()=>z.map(a=>{let b=(0,K.reachState)(a,f);return{reached:b,requested:!b&&2===a.degree&&(0,h.hasRequest)(a,i),own:1===a.degree?(e.circles.get(a.id)?.length||0)+(e.introduced.get(a.id)?.length||0):0}}),[z,f,i,e]),aa=a=>l&&"ready"===$[a].reached&&z[a].id!==j,ab=Y.k,ac=(0,c.useMemo)(()=>{let a=z.length<=60,c=S.spacing*ab>=26,d=0;return z.map((e,f)=>{let g=S.points[f],h=$[f],i=ae(S.spacing,e.tier)*(h.reached?1.4:1),l="hidden"===h.reached?ak:O.TIER_COLORS[e.tier]||"#555",m=!!h.reached&&d++%2==1;return(0,b.jsxs)("g",{children:[(a||h.reached)&&(0,b.jsx)("line",{x1:0,y1:0,x2:g.x,y2:g.y,stroke:h.reached?aj:l,strokeWidth:.6/ab,strokeOpacity:h.reached?.3:.12}),"ready"===h.reached&&(0,b.jsx)(ay,{x:g.x,y:g.y,r:2.3*i,still:k}),h.requested?(0,b.jsx)("circle",{cx:g.x,cy:g.y,r:1.2*i,fill:"none",stroke:l,strokeWidth:Math.max(.6,.45*i),strokeDasharray:`${Math.max(.8,.55*i)} ${Math.max(.6,.45*i)}`}):(0,b.jsx)("circle",{cx:g.x,cy:g.y,r:i,fill:l,fillOpacity:h.reached?1:.85,stroke:h.reached&&"hidden"!==h.reached?aj:"none",strokeWidth:h.reached?Math.max(.8,.3*i):0}),"hidden"===h.reached&&(0,b.jsx)(az,{x:g.x,y:g.y-.1*i,s:i/4.2}),e.id===j&&(0,b.jsx)("circle",{cx:g.x,cy:g.y,r:2*i,fill:"none",stroke:ah[3],strokeWidth:1/ab,strokeDasharray:`${3/ab} ${2/ab}`}),(h.reached||c&&"S"===e.tier)&&(0,b.jsx)("text",{x:g.x,y:m?g.y-i-4/ab:g.y+i+10/ab,textAnchor:"middle",fontSize:8.5/ab,fontWeight:h.reached?700:400,fill:"hidden"===h.reached?"#999":h.reached?aj:"#aaa",pointerEvents:"none",stroke:"var(--sd-bg)",strokeWidth:2.4/ab,paintOrder:"stroke",children:am(e)})]},e.id)})},[z,S,$,ab,k,j]),ag=(a,b)=>{let c=H.current;if(!c)return null;let d=c.getBoundingClientRect(),e=(a-d.left-L-Y.x)/ab,f=(b-d.top-M-Y.y)/ab;if(30>=Math.hypot(e,f))return"center";if(U){let a=U.points.findIndex((a,b)=>Math.hypot(a.x-e,a.y-f)<=Math.max(16,V[b].radius));if(a>=0)return"L"+a}let g=Math.max(.6*S.spacing,10/ab),h=null,i=g;return S.points.forEach((a,b)=>{let c=Math.hypot(a.x-e,a.y-f);c<i&&(i=c,h=b)}),h},ai=(a,b={x:0,y:0})=>Z(c=>{let d=Math.max(.5,Math.min(6,c.k*a));return{k:d,x:b.x-(b.x-c.x)*d/c.k,y:b.y-(b.y-c.y)*d/c.k}}),al=a=>{let b=[];for(let c=a;c>=0;c=B[c].parent)b.unshift(B[c].row.id);return b},ap="string"==typeof C&&"L"===C[0]?Number(C.slice(1)):-1,aq=ap>=0?new Set(al(ap)):null,ar=$.filter(a=>"ready"===a.reached).length,as=$.filter(a=>"hidden"===a.reached).length,at=$.filter(a=>a.reached).length,au=$.filter(a=>a.requested).length,aw=["S","A","B","C","D"].map(a=>[a,z.filter(b=>b.tier===a).length]).filter(([,a])=>a),ax=null!=j&&j===x.id,aM="number"==typeof C?z[C]:null,aN="number"==typeof C?S.points[C]:null;return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("svg",{ref:H,width:g.w,height:g.h,style:{display:"block",touchAction:"none",cursor:null!=C?"pointer":"grab"},onPointerDown:a=>{G.current={x:a.clientX,y:a.clientY,vx:Y.x,vy:Y.y,moved:!1},a.currentTarget.setPointerCapture?.(a.pointerId)},onPointerMove:a=>{let b=G.current;if(b){let c=a.clientX-b.x,d=a.clientY-b.y;if(!b.moved&&Math.hypot(c,d)>5&&(b.moved=!0),b.moved)return void Z(a=>({...a,x:b.vx+c,y:b.vy+d}))}let c=ag(a.clientX,a.clientY);D(a=>a===c?a:c)},onPointerUp:a=>{let b=G.current;if(G.current=null,!b||b.moved)return;let c=ag(a.clientX,a.clientY);"center"===c?o?.(x):"string"==typeof c?m(al(Number(c.slice(1)))):null!=c&&aa(c)?J.push(an(z[c])):null!=c&&m(z[c].id)},onPointerLeave:()=>{G.current||D(null)},onWheel:a=>{let b=H.current?.getBoundingClientRect();b&&ai(Math.exp(-(.0015*a.deltaY)),{x:a.clientX-b.left-L,y:a.clientY-b.top-M})},role:"img","aria-label":`${x.name}’s circle: ${z.length} ${1===z.length?"person":"people"}`,children:[(0,b.jsx)("defs",{children:(0,b.jsxs)("filter",{id:"focusGlow",children:[(0,b.jsx)("feGaussianBlur",{stdDeviation:"4",result:"blur"}),(0,b.jsxs)("feMerge",{children:[(0,b.jsx)("feMergeNode",{in:"blur"}),(0,b.jsx)("feMergeNode",{in:"SourceGraphic"})]})]})}),(0,b.jsxs)("g",{transform:`translate(${L+Y.x} ${M+Y.y}) scale(${ab})`,children:[S.bands.map(a=>(0,b.jsx)("circle",{r:(a.inner+a.outer)/2,fill:"none",stroke:O.TIER_COLORS[a.tier]||"#555",strokeOpacity:.07,strokeWidth:Math.max(1/ab,a.outer-a.inner+S.spacing),pointerEvents:"none"},a.tier)),ac,U&&B.map((a,c)=>{let d=U.points[c],e=V[c],f=a.row,g=aq?.has(f.id),h=ah[y+a.step]||ah[6];return(0,b.jsxs)("g",{transform:`translate(${d.x} ${d.y})`,pointerEvents:"none",opacity:aq&&!g?.45:1,children:[(0,b.jsx)("circle",{r:e.radius,fill:"var(--sd-bg)",fillOpacity:.9,stroke:h,strokeOpacity:g?.7:.25,strokeWidth:1/ab}),aH(e).map(([a,{spokes:c}])=>(0,b.jsx)("path",{d:c,fill:"none",stroke:O.TIER_COLORS[a]||"#555",strokeWidth:.7,strokeOpacity:g?.6:.38},"s"+a)),aH(e).map(([a,{dots:c}])=>(0,b.jsx)("path",{d:c,fill:O.TIER_COLORS[a]||"#555",fillOpacity:g?1:.9},a)),(0,b.jsx)("circle",{r:aD,fill:h,stroke:ap===c?"#fff":"var(--sd-bg)",strokeWidth:1.5}),f.id===j&&(0,b.jsx)("circle",{r:e.radius+4,fill:"none",stroke:ah[3],strokeWidth:1/ab,strokeDasharray:`${3/ab} ${2/ab}`}),(0,b.jsxs)("text",{y:e.radius+12/ab,textAnchor:"middle",fill:"#fff",fontSize:10/ab,fontWeight:700,stroke:"var(--sd-bg)",strokeWidth:2.4/ab,paintOrder:"stroke",children:[am(f),"’s circle"]}),(0,b.jsxs)("text",{y:e.radius+23/ab,textAnchor:"middle",fill:h,fontSize:8/ab,stroke:"var(--sd-bg)",strokeWidth:2.4/ab,paintOrder:"stroke",children:[e.people.length.toLocaleString("en-US")," · ",ao(y+a.step+1)," degree"]})]},"lk-"+f.id)}),U&&B.map((a,c)=>{let d=W[c],e=U.points[c],f=aq?.has(a.row.id),g=ah[y+a.step]||ah[6],h=(a,c,d,e,h)=>{let i=Math.hypot(d.x-a.x,d.y-a.y);if(i<=c+e)return null;let j=(d.x-a.x)/i,k=(d.y-a.y)/i;return(0,b.jsx)("line",{x1:a.x+j*c,y1:a.y+k*c,x2:d.x-j*e,y2:d.y-k*e,stroke:g,strokeLinecap:"round",strokeWidth:(f?2.6:1.8)/ab,strokeOpacity:aq&&!f?.3:f?1:.85},h)};return(0,b.jsxs)("g",{pointerEvents:"none",children:[d.back&&h(d.back,d.back.r,d,d.r+1,"a"),h(d,d.r+1,e,aD+1,"b"),d.inCluster&&(0,b.jsx)("circle",{cx:d.x,cy:d.y,r:d.r,fill:O.TIER_COLORS[a.row.tier]||"#555",stroke:aj,strokeWidth:1.4})]},"ln-"+a.row.id)}),aN&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("line",{x1:0,y1:0,x2:aN.x,y2:aN.y,stroke:O.TIER_COLORS[aM.tier]||"#888",strokeWidth:1.6/ab,strokeOpacity:.8}),(0,b.jsx)("circle",{cx:aN.x,cy:aN.y,r:ae(S.spacing,aM.tier)*($[C].reached?1.4:1)+2/ab,fill:"none",stroke:"#fff",strokeWidth:1.6/ab})]}),"ready"===(0,K.reachState)(x,f)&&(0,b.jsx)(ay,{x:0,y:0,r:40,still:k}),(0,b.jsx)("circle",{r:28,fill:"var(--sd-bg)",stroke:O.TIER_COLORS[x.tier]||"#888",strokeWidth:"center"===C?4:3,filter:"url(#focusGlow)"}),(0,I.localPhoto)(x.profile_image_url)?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("clipPath",{id:"focus-clip",children:(0,b.jsx)("circle",{r:24})}),(0,b.jsx)("image",{href:(0,I.localPhoto)(x.profile_image_url),x:-24,y:-24,width:48,height:48,clipPath:"url(#focus-clip)"})]}):(0,b.jsx)("text",{y:5,textAnchor:"middle",fill:O.TIER_COLORS[x.tier]||"#888",fontSize:16,fontWeight:800,children:x.name?.charAt(0)}),(0,b.jsx)("text",{y:40,textAnchor:"middle",fill:"#fff",fontSize:11,fontWeight:700,pointerEvents:"none",children:x.name})]}),aM&&(0,b.jsx)(aI,{x:L+Y.x+aN.x*ab,y:M+Y.y+aN.y*ab,w:g.w,lines:(p=aM,q=$[C],r=j,s=y,t=aa(C),u=am(p),v=p.id===r?"Their circle is being scanned now":"ready"===q.reached?"You added them · their circle is ready to scan":"hidden"===q.reached?"You added them · their list is hidden":"scanned"===q.reached?`You added them \xb7 ${q.own.toLocaleString("en-US")} in their circle`:q.requested?"Request sent":"Not connected yet",w=t?`Click to scan ${u}’s circle on the Scan page`:q.own>0?`Click to open ${u}’s circle (${ao(s+2)} degree)`:`Click to open ${u}’s circle`,[p.name,`${p.tier}-tier \xb7 ${(0,P.score)(p).toFixed(1)}`,v,w]),accent:$[C].reached?aj:O.TIER_COLORS[aM.tier]}),ap>=0&&(0,b.jsx)(aI,{x:L+Y.x+U.points[ap].x*ab,y:M+Y.y+(U.points[ap].y-V[ap].radius)*ab,w:g.w,lines:[`${B[ap].row.name}’s circle`,`${V[ap].people.length.toLocaleString("en-US")} people \xb7 ${ao(y+B[ap].step+1)} degree`,`You met ${am(B[ap].row)} through ${am(B[ap].parent>=0?B[B[ap].parent].row:x)}’s circle, then scanned`,"Click to open it"],accent:ah[y+B[ap].step]||ah[6]}),"center"===C&&(0,b.jsx)(aI,{x:L+Y.x,y:M+Y.y-28*ab,w:g.w,lines:[x.name,"Open their card"],accent:O.TIER_COLORS[x.tier]})]}),(0,b.jsxs)("div",{style:{position:"absolute",top:54,left:64,right:64,pointerEvents:"none",display:"flex",flexDirection:"column",gap:8,alignItems:"flex-start"},children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,flexWrap:"wrap",pointerEvents:"auto"},children:[(0,b.jsxs)("button",{type:"button",onClick:()=>n(y-1),style:{padding:"8px 16px",borderRadius:8,border:"none",cursor:"pointer",background:"rgba(255,255,255,0.1)",color:"#ddd",fontSize:12,fontWeight:700},children:["← ",1===y?"All bridges":`${am(a[y-2])}’s circle`]}),(0,b.jsxs)("nav",{"aria-label":"Trail",style:{fontSize:11,color:"#777",display:"flex",gap:6,flexWrap:"wrap",alignItems:"center"},children:[(0,b.jsx)("button",{type:"button",onClick:()=>n(0),style:aK,children:"All bridges"}),a.map((a,c)=>(0,b.jsxs)("span",{style:{display:"inline-flex",gap:6,alignItems:"center"},children:[(0,b.jsx)("span",{"aria-hidden":"true",children:"›"}),c===y-1?(0,b.jsx)("span",{style:{color:"#fff",fontWeight:700},children:a.name}):(0,b.jsx)("button",{type:"button",onClick:()=>n(c+1),style:aK,children:a.name})]},a.id))]})]}),(0,b.jsxs)("div",{style:{fontSize:11,color:"#999"},children:[am(x),"’s circle · ",z.length.toLocaleString("en-US")," ",1===z.length?"person":"people"," · ",ao(y+1)," degree",y>1?", counted along this chain":""]}),ax&&z.length>0&&(0,b.jsxs)("div",{role:"status",style:{...aL,borderColor:"rgba(52,152,219,0.4)",color:"#cfe6f7"},children:["Scanning ",am(x),"’s circle now. More people appear here as it saves, every 10 pages."]})]}),0===z.length&&(0,b.jsx)(aJ,{person:x,depth:y,reach:f,requests:i,scanning:ax,canScan:l,onSelect:o,top:M+64}),z.length>0&&(0,b.jsxs)("div",{style:{position:"absolute",bottom:20,left:20,maxWidth:"calc(100% - 110px)",background:"rgba(0,0,0,0.75)",borderRadius:10,padding:"10px 14px",backdropFilter:"blur(8px)",fontSize:10,color:"#888",lineHeight:1.6},children:[(0,b.jsx)("div",{style:{fontSize:9,fontWeight:700,color:"#666",letterSpacing:1,marginBottom:6},children:"IN THIS CIRCLE"}),aw.map(([a,c])=>(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6},children:[(0,b.jsx)("div",{style:{width:6,height:6,borderRadius:"50%",background:O.TIER_COLORS[a]}}),(0,b.jsxs)("span",{style:{color:O.TIER_COLORS[a],fontWeight:600,width:40},children:[a,"-Tier"]}),(0,b.jsx)("span",{children:c.toLocaleString("en-US")})]},a)),(at>0||au>0)&&(0,b.jsxs)("div",{style:{marginTop:6},children:[at>0&&(0,b.jsxs)("div",{children:[(0,b.jsx)("span",{style:{color:aj},children:"● "}),"you added ",at,ar?`, ${ar} ready to scan`:"",as?`, ${as} hidden`:""]}),au>0&&(0,b.jsxs)("div",{children:[(0,b.jsx)("span",{style:{color:"#FFD700"},children:"◌ "}),au," ",1===au?"request":"requests"," out"]})]}),(0,b.jsxs)("div",{style:{marginTop:6,color:"#555"},children:["Click anyone for their circle",ar>0&&l?", or someone ready to scan theirs":""," · drag to move · scroll to zoom"]})]}),(0,b.jsx)(aA,{onIn:()=>ai(1.35),onReset:()=>F(null),onOut:()=>ai(1/1.35)})]})}let aC=290,aD=5,aE=15,aF=4.6,aG={inner:15,outer:1/0,spacing:7.5,minSpacing:7.5};function aH(a){let b={};return a.points.forEach((c,d)=>{let e=a.people[d]?.tier||"D",f="S"===e?3.1:"A"===e?2.8:2.5,g=Math.hypot(c.x,c.y)||1,h=b[e]||={dots:"",spokes:""};h.dots+=`M${(c.x-f).toFixed(1)},${c.y.toFixed(1)}a${f},${f} 0 1,0 ${2*f},0a${f},${f} 0 1,0 ${-2*f},0`,h.spokes+=`M${(c.x/g*aD).toFixed(1)},${(c.y/g*aD).toFixed(1)}L${c.x.toFixed(1)},${c.y.toFixed(1)}`}),Object.entries(b)}function aI({x:a,y:c,w:d,lines:e,accent:f}){let g=Math.max(150,Math.min(240,5.6*Math.max(...e.map(a=>String(a).length))+20)),h=12+12*e.length,i=Math.max(6,Math.min(d-g-6,a-g/2)),j=Math.max(6,c-h-12);return(0,b.jsxs)("g",{pointerEvents:"none",children:[(0,b.jsx)("rect",{x:i,y:j,width:g,height:h,rx:6,fill:"rgba(0,0,0,0.92)",stroke:f||"#555",strokeWidth:.6}),e.map((a,c)=>(0,b.jsx)("text",{x:i+g/2,y:j+16+12*c,textAnchor:"middle",fill:0===c?"#fff":2===c?f||"#aaa":"#999",fontSize:0===c?10.5:9,fontWeight:0===c?700:400,children:a},c))]})}function aJ({person:a,depth:c,reach:d,requests:e,scanning:f,canScan:g,onSelect:i,top:j}){let k,l,m=am(a),n=ao(c+1),o=1===a.degree,p=o?(0,K.circleState)(a,d):null,q=(0,K.circleScanCost)(),r=null;return f?(k=`Scanning ${m}’s circle now`,l="Their people appear here as the scan saves them, every 10 pages."):"hidden"===p?(k=`${m} keeps their connections hidden`,l="LinkedIn doesn’t show their list, so there is no circle to scan."):"scanned"===p?(k=`${m}’s list has been read`,l="Everyone on it was already one of your connections, so nobody new is here."):o?(k=`${m}’s circle isn’t scanned yet`,l=`${m} is your connection, so their circle can be scanned. That brings in the people they know: ${n} degree${c>1?", counted along this chain":""}.`,g&&(r=(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)(V.default,{href:an(a),style:aM,children:["Scan ",m,"’s circle →"]}),(0,b.jsxs)("div",{style:{fontSize:10.5,color:"#888",marginTop:8},children:[q.profileViews," profile view, then one LinkedIn search per page of their list (up to ",q.searches,", about ",q.minutes," min). It starts only once you confirm it on the Scan page."]})]}))):(0,h.hasRequest)(a,e)?(k=`Request sent to ${m}`,l=`Once ${m} accepts, ↻ Check for new brings them into your connections. Then their circle can be scanned, and the people they know fill in here: ${n} degree.`):(k=`Nobody from ${m}’s circle yet`,l=`LinkedIn only shows the connections of people you’re connected to. Connect with ${m}; once they accept and their circle is scanned, the people they know fill in here: ${n} degree.`,r=(0,b.jsxs)("button",{type:"button",onClick:()=>i?.(a),style:aN,children:["Open ",m,"’s card"]})),(0,b.jsxs)("div",{role:"status",style:{position:"absolute",left:"50%",top:j,transform:"translateX(-50%)",width:"min(360px, calc(100% - 32px))",background:"color-mix(in srgb, var(--sd-bg) 94%, transparent)",border:`1px solid ${"hidden"===p?"rgba(255,255,255,0.12)":"rgba(0,255,136,0.25)"}`,borderRadius:12,padding:"14px 16px",textAlign:"center"},children:[(0,b.jsxs)("div",{style:{fontSize:13,fontWeight:800,color:"hidden"===p?"#aaa":"#fff",marginBottom:6},children:["hidden"===p&&(0,b.jsx)("span",{"aria-hidden":"true",children:"🔒 "}),k]}),(0,b.jsx)("div",{style:{fontSize:11.5,color:"#9aa",lineHeight:1.55,marginBottom:12*!!r},children:l}),r]})}let aK={background:"none",border:"none",color:"#8fb8d6",fontSize:11,fontWeight:600,cursor:"pointer",padding:0},aL={fontSize:11,padding:"6px 10px",borderRadius:8,border:"1px solid",background:"rgba(0,0,0,0.6)",pointerEvents:"auto"},aM={display:"inline-block",padding:"9px 16px",borderRadius:8,textDecoration:"none",fontSize:12.5,fontWeight:800,color:"#0a0a1a",background:"linear-gradient(135deg, #00ff88, #3498DB)"},aN={padding:"8px 14px",borderRadius:8,cursor:"pointer",fontSize:12,fontWeight:700,border:"1px solid rgba(255,255,255,0.18)",background:"rgba(255,255,255,0.06)",color:"#ddd"},aO=["S","A","B","C","D"],aP=["S","A","B","C","D"];var aQ=a.i(9282);let aR=[{key:"only",label:"Only way in",range:"1",max:1,color:"#00E5FF"},{key:"rare",label:"Rare",range:"2–3",max:3,color:"#4FC3F7"},{key:"uncommon",label:"Uncommon",range:"4–10",max:10,color:"#B0BEC5"},{key:"common",label:"Common",range:"11–30",max:30,color:"#FFB74D"},{key:"warm",label:"Warm",range:"31+",max:1/0,color:"#FF7043"}],aS=new Map(aR.map(a=>[a.key,a]));function aT(a){return aS.get(a)??null}function aU(a,b=1){let c,d=function(a,b=1){let c=Number(a?.mutual_count),d=Math.max(1,Math.floor(Number(b)||1));return Number.isFinite(c)&&c>=d?{count:Math.floor(c),from:"linkedin"}:{count:d,from:"scans"}}(a,b);return{key:(c=Math.max(1,Math.floor(Number(d.count)||1)),aR.find(a=>c<=a.max).key),...d}}function aV({tier:a,rarity:b},{tiers:c=new Set,rarities:d=new Set}={}){return(!c.size||!!c.has(a))&&(!d.size||!!(b&&d.has(b)))}function aW(a,b){let c=new Set(a);return c.has(b)?c.delete(b):c.add(b),c}function aX(a){return Math.min(1,Math.log(Math.max(1,Math.floor(Number(a)||1)))/Math.log(31))}var aY=a.i(59943),aZ=a.i(63033);let a$=O.TIER_COLORS;function a_({person:a,size:c=32,tierColors:d=a$}){let e=d[a?.tier]||"#666",f=(0,I.localPhoto)(a?.profile_image_url);return(0,b.jsxs)("span",{style:{position:"relative",display:"inline-block",width:c,height:c,flexShrink:0,borderRadius:"50%",boxShadow:`0 0 0 ${c>=24?2:1}px ${e}`},children:[(0,b.jsx)("span",{style:{position:"absolute",inset:0,borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",background:`${e}2e`,color:e,fontWeight:800,fontSize:Math.max(7,Math.round(.36*c)),lineHeight:1},children:(0,aY.initialsFor)(a?.name)}),f&&(0,b.jsx)("img",{src:f,alt:"",loading:"lazy",decoding:"async",onError:a=>{a.currentTarget.style.display="none"},style:{position:"absolute",inset:0,width:c,height:c,borderRadius:"50%",objectFit:"cover"}})]})}let a0="#FF6B35",a1=O.TIER_COLORS,a2="a connection we can’t name",a3="64px 36px minmax(0,1.3fr) minmax(0,1fr) 190px 132px",a4=a=>Number(a||0).toLocaleString("en-US"),a5=(a,b,c)=>`${a4(a)} ${1===a?b:c}`;function a6(a){return a.routes.map(a=>a.bridge?`${a.bridge.name} (${a.bridge.tier})`:a2).join("\n")}function a7(a){return a.role&&a.company?`${a.role} @ ${a.company}`:a.headline||a.role||a.company||""}let a8=".38s cubic-bezier(.2,.8,.2,1)",a9=`
18
+ }`;function U(a,b){let c=j.select(a);S()?c.interrupt("hover").attr("r",b):c.transition("hover").duration(150).ease(m.cubicOut).attr("r",b)}var V=a.i(38246);let W=a=>a?.unlock_status==="pending";function X(a=[],b=[]){let c=new Map;for(let a of b||[]){let b=a?.source_connection_id;if(null==b)continue;let d=c.get(b);d||c.set(b,d=[]),d.push(a)}let d=new Map;for(let b of a||[]){let a=b?.unlocked_from_bridge_id;if(null==a||1!==b.degree)continue;let c=d.get(a);c||d.set(a,c=[]),c.push(b)}return{circles:c,introduced:d}}let Y={connected:0,requested:1},Z=(a,b)=>(Y[a.state]??2)-(Y[b.state]??2)||(0,P.score1)(b.row)-(0,P.score1)(a.row)||String(a.row.name||"").localeCompare(String(b.row.name||"")),$=(a,b,c)=>Math.min(c,Math.max(b,a));var _=a.i(28329);let aa=[[/^(.+?) accepted!/,1],[/^High-value connection: (.+)$/,1],[/^Catalyst discovered: (.+)$/,1],[/^(.+?) added you back/,1]];function ab(a){try{return JSON.parse(a)}catch{return{}}}var ac=a.i(75857),ad=a.i(45889);let ae={1:"#FFD700",2:"#FF6B35",3:"#3498DB",4:"#9B59B6",5:"#00ff88",6:"#ff5050"},af={S:0,A:1,B:2,C:3,D:4},ag="#00ff88",ah="#5a5a66",ai=(a,b)=>(af[a.tier]??9)-(af[b.tier]??9)||(0,P.score)(b)-(0,P.score)(a)||String(a.name||"").localeCompare(String(b.name||"")),aj=a=>String(a?.name||"").trim().split(/\s+/)[0]||"them",ak=a=>`/setup?scan=${encodeURIComponent(a.id)}`,al=a=>`${a}${a%10==1&&11!==a?"st":a%10==2&&12!==a?"nd":a%10==3&&13!==a?"rd":"th"}`,am=()=>{let a=(0,e.scannerNow)();return a.running&&(0,e.isCircleScan)(a)?a.target?.id??null:null},an=()=>null,ao=()=>()=>{};function ap(a){return()=>void 0}let aq=()=>!1,ar=()=>!0;function as(a,b){let c=new Set([(0,P.keyFor)(a)]),d=a=>{let b=[];for(let d of a||[]){let a=(0,P.keyFor)(d);c.has(a)||(c.add(a),b.push(d))}return b.sort(ai)};return[...d(b.introduced.get(a.id)),...d(b.circles.get(a.id))]}function at(a,b){if(!a)return[];let c=b.find(b=>b.id===a);if(!c)return[];let d=c.unlocked_from_bridge_id;return null!=d&&b.some(a=>a.id===d)?[d,a]:[a]}let au=`
19
+ @keyframes pvEmerge { from { transform: translate(var(--fx), var(--fy)) scale(0.2); opacity: 0; } 55% { opacity: 1; } to { transform: none; opacity: 1; } }
20
+ @keyframes pvFade { from { opacity: 0; } }
21
+ .pv-dot { transform-box: fill-box; transform-origin: center; animation: pvEmerge .24s cubic-bezier(.2,.9,.3,1.25) both; animation-delay: var(--d, 0ms); }
22
+ .pv-d3 { animation-duration: .22s; animation-delay: calc(150ms + var(--d, 0ms)); }
23
+ .pv-d4 { animation-duration: .2s; animation-delay: calc(270ms + var(--d, 0ms)); }
24
+ .pv-line { animation: pvFade .3s ease-out both; animation-delay: var(--d, 0ms); }
25
+ @media (prefers-reduced-motion: reduce) { .pv-dot, .pv-line { animation: none; } }
26
+ `;function av(a,b,c,d,e,f){let g=Math.atan2(c-e,b-d),h=Math.min(1.1*Math.PI,.5+.16*a);return Array.from({length:a},(d,e)=>{let i=g-h/2+(1===a?h/2:e*h/(a-1));return{x:b+Math.cos(i)*f,y:c+Math.sin(i)*f}})}function aw({bridge:a,members:c,reach:d,cx:e,cy:f,maxR:g,still:h,band:i,circleOf:j=()=>[]}){let k=c.filter(a=>1===a.degree||"S"===a.tier||"A"===a.tier||"B"===a.tier),{inner:l,outer:m}=i,n=Math.min(.9*Math.PI,Math.max(.2*Math.PI,11*k.length/l)),o=(0,_.ringLayout)(k.length,{inner:l,outer:m,spacing:11,minSpacing:3.5,start:a.angle-n/2,sweep:n}),p=a=>`${Math.round(a/Math.max(1,k.length)*110)}ms`,q=(a,b,c,d)=>({"--fx":`${(c-a).toFixed(1)}px`,"--fy":`${(d-b).toFixed(1)}px`});return(0,b.jsxs)("g",{children:[(0,b.jsx)("style",{children:au}),(0,b.jsx)("circle",{cx:e,cy:f,r:l,fill:"none",stroke:`${ae[2]}06`,strokeWidth:1}),k.map((c,g)=>{let i=o.points[g],l=e+i.x,m=f+i.y,n=(0,K.reachState)(c,d),r=Math.min((0,_.dotRadius)(o.spacing,c.tier),5)*(n?1.3:1),s="hidden"===n?ah:O.TIER_COLORS[c.tier]||"#555",t=(1===c.degree?j(c.id):[]).slice(0,14),u=av(t.length,l,m,e,f,r+9);return(0,b.jsxs)("g",{children:[(n||k.length<=40)&&(0,b.jsx)("line",{className:"pv-line",style:{"--d":p(g)},x1:a.x,y1:a.y,x2:l,y2:m,stroke:n?ag:s,strokeWidth:.5,strokeOpacity:n?.35:.15}),(0,b.jsxs)("g",{className:"pv-dot",style:{"--d":p(g),...q(l,m,a.x,a.y)},children:["ready"===n&&(0,b.jsx)(ax,{x:l,y:m,r:2.3*r,still:h}),(0,b.jsx)("circle",{className:"sd-dot",cx:l,cy:m,r:r,fill:s,fillOpacity:n?.95:.45,stroke:n&&"hidden"!==n?ag:s,strokeWidth:n?1:.5,strokeOpacity:n?1:.25}),("S"===c.tier||n)&&k.length<=60&&(0,b.jsx)("text",{x:l,y:m+r+9,textAnchor:"middle",fill:n&&"hidden"!==n?ag:"var(--sd-fg-3, #aaa)",fontSize:7,children:aj(c)})]}),t.map((a,c)=>{let d=u[c],e=1===a.degree?j(a.id).slice(0,8):[],f=av(e.length,d.x,d.y,l,m,6);return(0,b.jsxs)("g",{children:[(0,b.jsx)("line",{className:"pv-line",style:{"--d":`calc(150ms + ${p(g)})`},x1:l,y1:m,x2:d.x,y2:d.y,stroke:O.TIER_COLORS[a.tier]||"#555",strokeWidth:.4,strokeOpacity:.3}),(0,b.jsx)("circle",{className:"pv-dot pv-d3",style:{"--d":`${8*c}ms`,...q(d.x,d.y,l,m)},cx:d.x,cy:d.y,r:1.8,fill:O.TIER_COLORS[a.tier]||"#555",fillOpacity:.85}),e.map((a,c)=>(0,b.jsx)("circle",{className:"pv-dot pv-d4",style:{"--d":`${6*c}ms`,...q(f[c].x,f[c].y,d.x,d.y)},cx:f[c].x,cy:f[c].y,r:1.1,fill:O.TIER_COLORS[a.tier]||"#555",fillOpacity:.75},"p4-"+a.id))]},"p3-"+a.id)})]},"pv-"+c.id)})]})}function ax({x:a,y:c,r:d,still:e}){return(0,b.jsxs)("circle",{cx:a,cy:c,r:d,fill:ag,fillOpacity:.16,stroke:ag,strokeWidth:.8,strokeOpacity:.45,pointerEvents:"none",children:[!e&&(0,b.jsx)("animate",{attributeName:"fill-opacity",values:"0.06;0.24;0.06",dur:"2.8s",repeatCount:"indefinite"}),!e&&(0,b.jsx)("animate",{attributeName:"stroke-opacity",values:"0.25;0.7;0.25",dur:"2.8s",repeatCount:"indefinite"})]})}function ay({x:a,y:c,s:d}){return(0,b.jsxs)("g",{transform:`translate(${a} ${c}) scale(${d})`,pointerEvents:"none",children:[(0,b.jsx)("path",{d:"M-1.9 -0.6 V-1.8 A1.9 1.9 0 0 1 1.9 -1.8 V-0.6",fill:"none",stroke:"#d6d6de",strokeWidth:.9}),(0,b.jsx)("rect",{x:-2.6,y:-.7,width:5.2,height:3.9,rx:.8,fill:"var(--sd-fg-2, #d6d6de)"})]})}function az({onIn:a,onReset:c,onOut:d}){let e=a=>({width:32,height:32,borderRadius:"50%",border:"none",cursor:"pointer",background:a?"rgba(var(--sd-ink, 255, 255, 255), 0.06)":"rgba(var(--sd-ink, 255, 255, 255), 0.1)",color:a?"var(--sd-fg-4, #666)":"var(--sd-fg-1, #fff)",fontSize:a?10:18,fontWeight:700,display:"flex",alignItems:"center",justifyContent:"center",backdropFilter:"blur(8px)"});return(0,b.jsxs)("div",{style:{position:"absolute",bottom:64,right:20,zIndex:20,display:"flex",flexDirection:"column",gap:4},children:[(0,b.jsx)("button",{type:"button",onClick:a,"aria-label":"Zoom in",style:e(!1),children:"+"}),(0,b.jsx)("button",{type:"button",onClick:c,"aria-label":"Fit to the window",style:e(!0),children:"⊙"}),(0,b.jsx)("button",{type:"button",onClick:d,"aria-label":"Zoom out",style:e(!1),children:"−"})]})}function aA({trail:a,index:e,reach:f,dims:g,requests:i,scanningId:j,still:k,canScan:l,onOpen:m,onBack:n,onSelect:o}){var p,q,r,s,t;let u,v,w,x=a[a.length-1],y=a.length,z=(0,c.useMemo)(()=>as(x,e),[x,e]),A=a.map(a=>a.id).join(">"),B=(0,c.useMemo)(()=>(function(a,b,c=[],d=6){let e=[],f=new Set([a.id,...c]),g=a=>(b.circles.get(a.id)?.length||0)+(b.introduced.get(a.id)?.length||0),h=(a,c,i)=>{if(i>d)return;let j=(b.introduced.get(a.id)||[]).filter(a=>g(a)>0&&!f.has(a.id)).sort((a,b)=>g(b)-g(a)||String(a.name||"").localeCompare(String(b.name||"")));for(let a of(j.forEach(a=>f.add(a.id)),j))e.push({row:a,parent:c,step:i}),h(a,e.length-1,i+1)};return h(a,-1,1),e})(x,e,A.split(">"),Math.max(0,5-y)),[x,e,A,y]),[C,D]=(0,c.useState)(null),[E,F]=(0,c.useState)(null),G=(0,c.useRef)(null),H=(0,c.useRef)(null),J=(0,d.useRouter)(),L=g.w/2,M=g.h/2,N=Math.min(L,M)-30,Q=g.w>=g.h?0:Math.PI/2,R=B.length>0,S=(0,c.useMemo)(()=>(0,_.tierBandLayout)(z,{inner:Math.max(62,.3*N),outer:N*(R?.72:.94),spacing:Math.max(14,Math.min(24,.085*N)),minSpacing:4,gap:Math.max(10,.04*N),start:R?Q:-Math.PI/2}),[z,N,R,Q]),T=(0,c.useMemo)(()=>B.map(({row:a})=>{let b=as(a,e),c=(0,_.ringLayout)(Math.min(b.length,aC),aG);return{people:b,radius:(c.rings[c.rings.length-1]?.radius||aE)+6}}),[B,e]),U=(0,c.useMemo)(()=>{if(!B.length)return null;let a=Math.max(...T.map(a=>a.radius)),b=new Map(z.map((a,b)=>[a.id,b]));return(0,_.chainTree)(B.map(a=>a.parent),{from:S.edge+S.spacing+a+22,hop:2*a+46,spacing:2*a+26,toward:Q,angles:B.map(a=>a.parent<0?S.points[b.get(a.row.id)]?.angle:void 0)})},[B,T,z,S,Q]),V=(0,c.useMemo)(()=>T.map((a,b)=>({...a,points:(0,_.ringLayout)(Math.min(a.people.length,aC),{...aG,start:U.points[b].angle}).points})),[T,U]),W=(0,c.useMemo)(()=>{let a=new Map(z.map((a,b)=>[a.id,b]));return B.map(b=>{if(b.parent<0){let c=S.points[a.get(b.row.id)];return c?{x:c.x,y:c.y,r:1.4*(0,_.dotRadius)(S.spacing,b.row.tier),back:{x:0,y:0,r:30}}:{x:0,y:0,r:30,back:null}}let c=U.points[b.parent],d=V[b.parent].people.findIndex(a=>a.id===b.row.id),e=V[b.parent].points[d]||{x:0,y:0};return{x:c.x+e.x,y:c.y+e.y,r:aF,inCluster:!0,back:{x:c.x,y:c.y,r:aD}}})},[B,z,S,U,V]),X=(0,c.useMemo)(()=>{if(!U)return{k:1,x:0,y:0};let a={l:-S.edge,r:S.edge,t:-S.edge,b:S.edge};U.points.forEach((b,c)=>{let d=V[c].radius;a.l=Math.min(a.l,b.x-d-30),a.r=Math.max(a.r,b.x+d+30),a.t=Math.min(a.t,b.y-d-8),a.b=Math.max(a.b,b.y+d+30)});let b=Math.max(.35,Math.min(1,(g.w-140)/(a.r-a.l),(g.h-96-30)/(a.b-a.t)));return{k:b,x:-(a.l+a.r)/2*b,y:-(a.t+a.b)/2*b+33}},[U,V,S,g.w,g.h]),Y=E??X,Z=a=>F(b=>"function"==typeof a?a(b??X):a),$=(0,c.useMemo)(()=>z.map(a=>{let b=(0,K.reachState)(a,f);return{reached:b,requested:!b&&2===a.degree&&(0,h.hasRequest)(a,i),own:1===a.degree?(e.circles.get(a.id)?.length||0)+(e.introduced.get(a.id)?.length||0):0}}),[z,f,i,e]),aa=a=>l&&"ready"===$[a].reached&&z[a].id!==j,ab=Y.k,ac=(0,c.useMemo)(()=>{let a=z.length<=60,c=S.spacing*ab>=26,d=0;return z.map((e,f)=>{let g=S.points[f],h=$[f],i=(0,_.dotRadius)(S.spacing,e.tier)*(h.reached?1.4:1),l="hidden"===h.reached?ah:O.TIER_COLORS[e.tier]||"#555",m=!!h.reached&&d++%2==1;return(0,b.jsxs)("g",{children:[(a||h.reached)&&(0,b.jsx)("line",{x1:0,y1:0,x2:g.x,y2:g.y,stroke:h.reached?ag:l,strokeWidth:.6/ab,strokeOpacity:h.reached?.3:.12}),"ready"===h.reached&&(0,b.jsx)(ax,{x:g.x,y:g.y,r:2.3*i,still:k}),h.requested?(0,b.jsx)("circle",{cx:g.x,cy:g.y,r:1.2*i,fill:"none",stroke:l,strokeWidth:Math.max(.6,.45*i),strokeDasharray:`${Math.max(.8,.55*i)} ${Math.max(.6,.45*i)}`}):(0,b.jsx)("circle",{className:"sd-dot",cx:g.x,cy:g.y,r:i,fill:l,fillOpacity:h.reached?1:.85,stroke:h.reached&&"hidden"!==h.reached?ag:"none",strokeWidth:h.reached?Math.max(.8,.3*i):0}),"hidden"===h.reached&&(0,b.jsx)(ay,{x:g.x,y:g.y-.1*i,s:i/4.2}),e.id===j&&(0,b.jsx)("circle",{cx:g.x,cy:g.y,r:2*i,fill:"none",stroke:ae[3],strokeWidth:1/ab,strokeDasharray:`${3/ab} ${2/ab}`}),(h.reached||c&&"S"===e.tier)&&(0,b.jsx)("text",{x:g.x,y:m?g.y-i-4/ab:g.y+i+10/ab,textAnchor:"middle",fontSize:8.5/ab,fontWeight:h.reached?700:400,fill:"hidden"===h.reached?"var(--sd-fg-3, #999)":h.reached?ag:"var(--sd-fg-3, #aaa)",pointerEvents:"none",stroke:"var(--sd-bg)",strokeWidth:2.4/ab,paintOrder:"stroke",children:aj(e)})]},e.id)})},[z,S,$,ab,k,j]),ad=(a,b)=>{let c=H.current;if(!c)return null;let d=c.getBoundingClientRect(),e=(a-d.left-L-Y.x)/ab,f=(b-d.top-M-Y.y)/ab;if(30>=Math.hypot(e,f))return"center";if(U){let a=U.points.findIndex((a,b)=>Math.hypot(a.x-e,a.y-f)<=Math.max(16,V[b].radius));if(a>=0)return"L"+a}let g=Math.max(.6*S.spacing,10/ab),h=null,i=g;return S.points.forEach((a,b)=>{let c=Math.hypot(a.x-e,a.y-f);c<i&&(i=c,h=b)}),h},af=(a,b={x:0,y:0})=>Z(c=>{let d=Math.max(.5,Math.min(6,c.k*a));return{k:d,x:b.x-(b.x-c.x)*d/c.k,y:b.y-(b.y-c.y)*d/c.k}}),ai=a=>{let b=[];for(let c=a;c>=0;c=B[c].parent)b.unshift(B[c].row.id);return b},am="string"==typeof C&&"L"===C[0]?Number(C.slice(1)):-1,an=am>=0?new Set(ai(am)):null,ao=$.filter(a=>"ready"===a.reached).length,ap=$.filter(a=>"hidden"===a.reached).length,aq=$.filter(a=>a.reached).length,ar=$.filter(a=>a.requested).length,at=["S","A","B","C","D"].map(a=>[a,z.filter(b=>b.tier===a).length]).filter(([,a])=>a),au=null!=j&&j===x.id,av="number"==typeof C?z[C]:null,aw="number"==typeof C?S.points[C]:null;return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("svg",{ref:H,width:g.w,height:g.h,style:{display:"block",touchAction:"none",cursor:null!=C?"pointer":"grab"},onPointerDown:a=>{G.current={x:a.clientX,y:a.clientY,vx:Y.x,vy:Y.y,moved:!1},a.currentTarget.setPointerCapture?.(a.pointerId)},onPointerMove:a=>{let b=G.current;if(b){let c=a.clientX-b.x,d=a.clientY-b.y;if(!b.moved&&Math.hypot(c,d)>5&&(b.moved=!0),b.moved)return void Z(a=>({...a,x:b.vx+c,y:b.vy+d}))}let c=ad(a.clientX,a.clientY);D(a=>a===c?a:c)},onPointerUp:a=>{let b=G.current;if(G.current=null,!b||b.moved)return;let c=ad(a.clientX,a.clientY);"center"===c?o?.(x):"string"==typeof c?m(ai(Number(c.slice(1)))):null!=c&&aa(c)?J.push(ak(z[c])):null!=c&&m(z[c].id)},onPointerLeave:()=>{G.current||D(null)},onWheel:a=>{let b=H.current?.getBoundingClientRect();b&&af(Math.exp(-(.0015*a.deltaY)),{x:a.clientX-b.left-L,y:a.clientY-b.top-M})},role:"img","aria-label":`${x.name}’s circle: ${z.length} ${1===z.length?"person":"people"}`,children:[(0,b.jsx)("defs",{children:(0,b.jsxs)("filter",{id:"focusGlow",children:[(0,b.jsx)("feGaussianBlur",{stdDeviation:"4",result:"blur"}),(0,b.jsxs)("feMerge",{children:[(0,b.jsx)("feMergeNode",{in:"blur"}),(0,b.jsx)("feMergeNode",{in:"SourceGraphic"})]})]})}),(0,b.jsxs)("g",{transform:`translate(${L+Y.x} ${M+Y.y}) scale(${ab})`,children:[S.bands.map(a=>(0,b.jsx)("circle",{r:(a.inner+a.outer)/2,fill:"none",stroke:O.TIER_COLORS[a.tier]||"var(--sd-fg-5, #555)",strokeOpacity:.07,strokeWidth:Math.max(1/ab,a.outer-a.inner+S.spacing),pointerEvents:"none"},a.tier)),ac,U&&B.map((a,c)=>{let d=U.points[c],e=V[c],f=a.row,g=an?.has(f.id),h=ae[y+a.step]||ae[6];return(0,b.jsxs)("g",{transform:`translate(${d.x} ${d.y})`,pointerEvents:"none",opacity:an&&!g?.45:1,children:[(0,b.jsx)("circle",{r:e.radius,fill:"var(--sd-bg)",fillOpacity:.9,stroke:h,strokeOpacity:g?.7:.25,strokeWidth:1/ab}),aH(e).map(([a,{spokes:c}])=>(0,b.jsx)("path",{d:c,fill:"none",stroke:O.TIER_COLORS[a]||"var(--sd-fg-5, #555)",strokeWidth:.7,strokeOpacity:g?.6:.38},"s"+a)),aH(e).map(([a,{dots:c}])=>(0,b.jsx)("path",{className:"sd-dot",d:c,fill:O.TIER_COLORS[a]||"var(--sd-fg-5, #555)",fillOpacity:g?1:.9},a)),(0,b.jsx)("circle",{className:"sd-dot",r:aD,fill:h,stroke:am===c?"var(--sd-fg-1, #fff)":"var(--sd-bg)",strokeWidth:1.5}),f.id===j&&(0,b.jsx)("circle",{r:e.radius+4,fill:"none",stroke:ae[3],strokeWidth:1/ab,strokeDasharray:`${3/ab} ${2/ab}`}),(0,b.jsxs)("text",{y:e.radius+12/ab,textAnchor:"middle",fill:"var(--sd-fg-1, #fff)",fontSize:10/ab,fontWeight:700,stroke:"var(--sd-bg)",strokeWidth:2.4/ab,paintOrder:"stroke",children:[aj(f),"’s circle"]}),(0,b.jsxs)("text",{y:e.radius+23/ab,textAnchor:"middle",fill:h,fontSize:8/ab,stroke:"var(--sd-bg)",strokeWidth:2.4/ab,paintOrder:"stroke",children:[e.people.length.toLocaleString("en-US")," · ",al(y+a.step+1)," degree"]})]},"lk-"+f.id)}),U&&B.map((a,c)=>{let d=W[c],e=U.points[c],f=an?.has(a.row.id),g=ae[y+a.step]||ae[6],h=(a,c,d,e,h)=>{let i=Math.hypot(d.x-a.x,d.y-a.y);if(i<=c+e)return null;let j=(d.x-a.x)/i,k=(d.y-a.y)/i;return(0,b.jsx)("line",{x1:a.x+j*c,y1:a.y+k*c,x2:d.x-j*e,y2:d.y-k*e,stroke:g,strokeLinecap:"round",strokeWidth:(f?2.6:1.8)/ab,strokeOpacity:an&&!f?.3:f?1:.85},h)};return(0,b.jsxs)("g",{pointerEvents:"none",children:[d.back&&h(d.back,d.back.r,d,d.r+1,"a"),h(d,d.r+1,e,aD+1,"b"),d.inCluster&&(0,b.jsx)("circle",{className:"sd-dot",cx:d.x,cy:d.y,r:d.r,fill:O.TIER_COLORS[a.row.tier]||"var(--sd-fg-5, #555)",stroke:ag,strokeWidth:1.4})]},"ln-"+a.row.id)}),aw&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("line",{x1:0,y1:0,x2:aw.x,y2:aw.y,stroke:O.TIER_COLORS[av.tier]||"var(--sd-fg-3, #888)",strokeWidth:1.6/ab,strokeOpacity:.8}),(0,b.jsx)("circle",{cx:aw.x,cy:aw.y,r:(0,_.dotRadius)(S.spacing,av.tier)*($[C].reached?1.4:1)+2/ab,fill:"none",stroke:"#fff",strokeWidth:1.6/ab})]}),"ready"===(0,K.reachState)(x,f)&&(0,b.jsx)(ax,{x:0,y:0,r:40,still:k}),(0,b.jsx)("circle",{r:28,fill:"var(--sd-bg)",stroke:O.TIER_COLORS[x.tier]||"var(--sd-fg-3, #888)",strokeWidth:"center"===C?4:3,filter:"url(#focusGlow)"}),(0,I.localPhoto)(x.profile_image_url)?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("clipPath",{id:"focus-clip",children:(0,b.jsx)("circle",{r:24})}),(0,b.jsx)("image",{href:(0,I.localPhoto)(x.profile_image_url),x:-24,y:-24,width:48,height:48,clipPath:"url(#focus-clip)"})]}):(0,b.jsx)("text",{y:5,textAnchor:"middle",fill:O.TIER_COLORS[x.tier]||"var(--sd-fg-3, #888)",fontSize:16,fontWeight:800,children:x.name?.charAt(0)}),(0,b.jsx)("text",{y:40,textAnchor:"middle",fill:"var(--sd-fg-1, #fff)",fontSize:11,fontWeight:700,pointerEvents:"none",children:x.name})]}),av&&(0,b.jsx)(aI,{x:L+Y.x+aw.x*ab,y:M+Y.y+aw.y*ab,w:g.w,lines:(p=av,q=$[C],r=j,s=y,t=aa(C),u=aj(p),v=p.id===r?"Their circle is being scanned now":"ready"===q.reached?"You added them · their circle is ready to scan":"hidden"===q.reached?"You added them · their list is hidden":"scanned"===q.reached?`You added them \xb7 ${q.own.toLocaleString("en-US")} in their circle`:q.requested?"Request sent":"Not connected yet",w=t?`Click to scan ${u}’s circle on the Scan page`:q.own>0?`Click to open ${u}’s circle (${al(s+2)} degree)`:`Click to open ${u}’s circle`,[p.name,`${p.tier}-tier \xb7 ${(0,P.score)(p).toFixed(1)}`,v,w]),accent:$[C].reached?ag:O.TIER_COLORS[av.tier]}),am>=0&&(0,b.jsx)(aI,{x:L+Y.x+U.points[am].x*ab,y:M+Y.y+(U.points[am].y-V[am].radius)*ab,w:g.w,lines:[`${B[am].row.name}’s circle`,`${V[am].people.length.toLocaleString("en-US")} people \xb7 ${al(y+B[am].step+1)} degree`,`You met ${aj(B[am].row)} through ${aj(B[am].parent>=0?B[B[am].parent].row:x)}’s circle, then scanned`,"Click to open it"],accent:ae[y+B[am].step]||ae[6]}),"center"===C&&(0,b.jsx)(aI,{x:L+Y.x,y:M+Y.y-28*ab,w:g.w,lines:[x.name,"Open their card"],accent:O.TIER_COLORS[x.tier]})]}),(0,b.jsxs)("div",{style:{position:"absolute",top:54,left:64,right:64,pointerEvents:"none",display:"flex",flexDirection:"column",gap:8,alignItems:"flex-start"},children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,flexWrap:"wrap",pointerEvents:"auto"},children:[(0,b.jsxs)("button",{type:"button",onClick:()=>n(y-1),style:{padding:"8px 16px",borderRadius:8,border:"none",cursor:"pointer",background:"rgba(var(--sd-ink, 255, 255, 255), 0.1)",color:"var(--sd-fg-1, #ddd)",fontSize:12,fontWeight:700},children:["← ",1===y?"All bridges":`${aj(a[y-2])}’s circle`]}),(0,b.jsxs)("nav",{"aria-label":"Trail",style:{fontSize:11,color:"var(--sd-fg-4, #777)",display:"flex",gap:6,flexWrap:"wrap",alignItems:"center"},children:[(0,b.jsx)("button",{type:"button",onClick:()=>n(0),style:aK,children:"All bridges"}),a.map((a,c)=>(0,b.jsxs)("span",{style:{display:"inline-flex",gap:6,alignItems:"center"},children:[(0,b.jsx)("span",{"aria-hidden":"true",children:"›"}),c===y-1?(0,b.jsx)("span",{style:{color:"var(--sd-fg-1, #fff)",fontWeight:700},children:a.name}):(0,b.jsx)("button",{type:"button",onClick:()=>n(c+1),style:aK,children:a.name})]},a.id))]})]}),(0,b.jsxs)("div",{style:{fontSize:11,color:"var(--sd-fg-3, #999)"},children:[aj(x),"’s circle · ",z.length.toLocaleString("en-US")," ",1===z.length?"person":"people"," · ",al(y+1)," degree",y>1?", counted along this chain":""]}),au&&z.length>0&&(0,b.jsxs)("div",{role:"status",style:{...aL,borderColor:"rgba(52,152,219,0.4)",color:"var(--sd-fg-1, #cfe6f7)"},children:["Scanning ",aj(x),"’s circle now. More people appear here as it saves, every 10 pages."]})]}),0===z.length&&(0,b.jsx)(aJ,{person:x,depth:y,reach:f,requests:i,scanning:au,canScan:l,onSelect:o,top:M+64}),z.length>0&&(0,b.jsxs)("div",{title:`Click anyone for their circle${ao>0&&l?", or someone ready to scan theirs":""} \xb7 drag to move \xb7 scroll to zoom`,style:{position:"absolute",bottom:18,left:18,maxWidth:"calc(100% - 110px)",display:"flex",flexWrap:"wrap",alignItems:"center",gap:"6px 14px",fontSize:10.5,color:"var(--sd-fg-3, #aab)",textShadow:aB},children:[at.map(([a,c])=>(0,b.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:5},children:[(0,b.jsx)("span",{className:"sd-dot-html",style:{width:8,height:8,borderRadius:"50%",background:O.TIER_COLORS[a],boxShadow:`0 0 6px ${O.TIER_COLORS[a]}66`}}),(0,b.jsx)("span",{style:{color:O.TIER_COLORS[a],fontWeight:700},children:a}),(0,b.jsx)("span",{style:{fontVariantNumeric:"tabular-nums"},children:c.toLocaleString("en-US")})]},a)),aq>0&&(0,b.jsxs)("span",{children:[(0,b.jsx)("span",{style:{color:ag},children:"●"})," you added ",aq,ao?`, ${ao} ready to scan`:"",ap?`, ${ap} hidden`:""]}),ar>0&&(0,b.jsxs)("span",{children:[(0,b.jsx)("span",{style:{color:"var(--sd-gold, #FFD700)"},children:"◌"})," ",ar," ",1===ar?"request":"requests"," out"]})]}),(0,b.jsx)(az,{onIn:()=>af(1.35),onReset:()=>F(null),onOut:()=>af(1/1.35)})]})}let aB="0 0 3px var(--sd-bg), 0 0 6px var(--sd-bg), 0 0 1px var(--sd-bg)",aC=290,aD=5,aE=15,aF=4.6,aG={inner:15,outer:1/0,spacing:7.5,minSpacing:7.5};function aH(a){let b={};return a.points.forEach((c,d)=>{let e=a.people[d]?.tier||"D",f="S"===e?3.1:"A"===e?2.8:2.5,g=Math.hypot(c.x,c.y)||1,h=b[e]||={dots:"",spokes:""};h.dots+=`M${(c.x-f).toFixed(1)},${c.y.toFixed(1)}a${f},${f} 0 1,0 ${2*f},0a${f},${f} 0 1,0 ${-2*f},0`,h.spokes+=`M${(c.x/g*aD).toFixed(1)},${(c.y/g*aD).toFixed(1)}L${c.x.toFixed(1)},${c.y.toFixed(1)}`}),Object.entries(b)}function aI({x:a,y:c,w:d,lines:e,accent:f}){let g=Math.max(150,Math.min(240,5.6*Math.max(...e.map(a=>String(a).length))+20)),h=12+12*e.length,i=Math.max(6,Math.min(d-g-6,a-g/2)),j=Math.max(6,c-h-12);return(0,b.jsxs)("g",{pointerEvents:"none",children:[(0,b.jsx)("rect",{x:i,y:j,width:g,height:h,rx:6,fill:"var(--sd-surface, rgba(0,0,0,0.92))",stroke:f||"var(--sd-fg-5, #555)",strokeWidth:.6}),e.map((a,c)=>(0,b.jsx)("text",{x:i+g/2,y:j+16+12*c,textAnchor:"middle",fill:0===c?"var(--sd-fg-1, #fff)":2===c?f||"var(--sd-fg-3, #aaa)":"var(--sd-fg-3, #999)",fontSize:0===c?10.5:9,fontWeight:0===c?700:400,children:a},c))]})}function aJ({person:a,depth:c,reach:d,requests:e,scanning:f,canScan:g,onSelect:i,top:j}){let k,l,m=aj(a),n=al(c+1),o=1===a.degree,p=o?(0,K.circleState)(a,d):null,q=(0,K.circleScanCost)(),r=null;return f?(k=`Scanning ${m}’s circle now`,l="Their people appear here as the scan saves them, every 10 pages."):"hidden"===p?(k=`${m} keeps their connections hidden`,l="LinkedIn doesn’t show their list, so there is no circle to scan."):"scanned"===p?(k=`${m}’s list has been read`,l="Everyone on it was already one of your connections, so nobody new is here."):o?(k=`${m}’s circle isn’t scanned yet`,l=`${m} is your connection, so their circle can be scanned. That brings in the people they know: ${n} degree${c>1?", counted along this chain":""}.`,g&&(r=(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)(V.default,{href:ak(a),style:aM,children:["Scan ",m,"’s circle →"]}),(0,b.jsxs)("div",{style:{fontSize:10.5,color:"var(--sd-fg-3, #888)",marginTop:8},children:[q.profileViews," profile view, then one LinkedIn search per page of their list (up to ",q.searches,", about ",q.minutes," min). It starts only once you confirm it on the Scan page."]})]}))):(0,h.hasRequest)(a,e)?(k=`Request sent to ${m}`,l=`Once ${m} accepts, ↻ Check for new brings them into your connections. Then their circle can be scanned, and the people they know fill in here: ${n} degree.`):(k=`Nobody from ${m}’s circle yet`,l=`LinkedIn only shows the connections of people you’re connected to. Connect with ${m}; once they accept and their circle is scanned, the people they know fill in here: ${n} degree.`,r=(0,b.jsxs)("button",{type:"button",onClick:()=>i?.(a),style:aN,children:["Open ",m,"’s card"]})),(0,b.jsxs)("div",{role:"status",style:{position:"absolute",left:"50%",top:j,transform:"translateX(-50%)",width:"min(360px, calc(100% - 32px))",background:"color-mix(in srgb, var(--sd-bg) 94%, transparent)",border:`1px solid ${"hidden"===p?"rgba(var(--sd-ink, 255, 255, 255), 0.12)":"rgba(0,255,136,0.25)"}`,borderRadius:12,padding:"14px 16px",textAlign:"center"},children:[(0,b.jsxs)("div",{style:{fontSize:13,fontWeight:800,color:"hidden"===p?"var(--sd-fg-3, #aaa)":"var(--sd-fg-1, #fff)",marginBottom:6},children:["hidden"===p&&(0,b.jsx)("span",{"aria-hidden":"true",children:"🔒 "}),k]}),(0,b.jsx)("div",{style:{fontSize:11.5,color:"var(--sd-fg-3, #9aa)",lineHeight:1.55,marginBottom:12*!!r},children:l}),r]})}let aK={background:"none",border:"none",color:"#8fb8d6",fontSize:11,fontWeight:600,cursor:"pointer",padding:0},aL={fontSize:11,padding:"6px 10px",borderRadius:8,border:"1px solid",background:"rgba(var(--sd-shade, 0, 0, 0), 0.6)",pointerEvents:"auto"},aM={display:"inline-block",padding:"9px 16px",borderRadius:8,textDecoration:"none",fontSize:12.5,fontWeight:800,color:"#0a0a1a",background:"linear-gradient(135deg, #00ff88, #3498DB)"},aN={padding:"8px 14px",borderRadius:8,cursor:"pointer",fontSize:12,fontWeight:700,border:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.18)",background:"rgba(var(--sd-ink, 255, 255, 255), 0.06)",color:"var(--sd-fg-1, #ddd)"},aO=["S","A","B","C","D"],aP=["S","A","B","C","D"];var aQ=a.i(9282);let aR=[{key:"only",label:"Only way in",range:"1",max:1,color:"#00E5FF"},{key:"rare",label:"Rare",range:"2–3",max:3,color:"#4FC3F7"},{key:"uncommon",label:"Uncommon",range:"4–10",max:10,color:"#B0BEC5"},{key:"common",label:"Common",range:"11–30",max:30,color:"#FFB74D"},{key:"warm",label:"Warm",range:"31+",max:1/0,color:"#FF7043"}],aS=new Map(aR.map(a=>[a.key,a]));function aT(a){return aS.get(a)??null}function aU(a,b=1){let c,d=function(a,b=1){let c=Number(a?.mutual_count),d=Math.max(1,Math.floor(Number(b)||1));return Number.isFinite(c)&&c>=d?{count:Math.floor(c),from:"linkedin"}:{count:d,from:"scans"}}(a,b);return{key:(c=Math.max(1,Math.floor(Number(d.count)||1)),aR.find(a=>c<=a.max).key),...d}}function aV({tier:a,rarity:b},{tiers:c=new Set,rarities:d=new Set}={}){return(!c.size||!!c.has(a))&&(!d.size||!!(b&&d.has(b)))}function aW(a,b){let c=new Set(a);return c.has(b)?c.delete(b):c.add(b),c}function aX(a){return Math.min(1,Math.log(Math.max(1,Math.floor(Number(a)||1)))/Math.log(31))}var aY=a.i(59943),aZ=a.i(63033);let a$=O.TIER_COLORS;function a_({person:a,size:c=32,tierColors:d=a$}){let e=d[a?.tier]||"#666",f=(0,I.localPhoto)(a?.profile_image_url);return(0,b.jsxs)("span",{className:"sd-dot-html",style:{position:"relative",display:"inline-block",width:c,height:c,flexShrink:0,borderRadius:"50%",boxShadow:`0 0 0 ${c>=24?2:1}px ${e}`},children:[(0,b.jsx)("span",{style:{position:"absolute",inset:0,borderRadius:"50%",display:"flex",alignItems:"center",justifyContent:"center",background:`${e}2e`,color:e,fontWeight:800,fontSize:Math.max(7,Math.round(.36*c)),lineHeight:1},children:(0,aY.initialsFor)(a?.name)}),f&&(0,b.jsx)("img",{src:f,alt:"",loading:"lazy",decoding:"async",onError:a=>{a.currentTarget.style.display="none"},style:{position:"absolute",inset:0,width:c,height:c,borderRadius:"50%",objectFit:"cover"}})]})}let a0="#FF6B35",a1=O.TIER_COLORS,a2="a connection we can’t name",a3="64px 36px minmax(0,1.3fr) minmax(0,1fr) 190px 132px",a4=a=>Number(a||0).toLocaleString("en-US"),a5=(a,b,c)=>`${a4(a)} ${1===a?b:c}`;function a6(a){return a.routes.map(a=>a.bridge?`${a.bridge.name} (${a.bridge.tier})`:a2).join("\n")}function a7(a){return a.role&&a.company?`${a.role} @ ${a.company}`:a.headline||a.role||a.company||""}function a8({scale:a,fitted:c,onOut:d,onFit:e,onIn:f}){let g=(a={})=>({height:22,minWidth:26,padding:"0 7px",border:"none",background:"none",color:"var(--sd-fg-2, #c9cdd6)",fontSize:12,fontWeight:600,lineHeight:1,cursor:"pointer",display:"flex",alignItems:"center",justifyContent:"center",...a}),h={width:1,alignSelf:"stretch",margin:"4px 0",background:"rgba(var(--sd-ink, 255, 255, 255), 0.14)"};return(0,b.jsxs)("div",{role:"group","aria-label":"Zoom the map",style:{display:"inline-flex",alignItems:"center",flexShrink:0,borderRadius:7,overflow:"hidden",background:"rgba(var(--sd-ink, 255, 255, 255), 0.07)",border:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.13)",boxShadow:"0 1px 0 rgba(var(--sd-ink, 255, 255, 255), 0.05) inset, 0 1px 2px rgba(0,0,0,0.35)"},children:[(0,b.jsx)("button",{type:"button",onClick:d,disabled:a<=.151,title:"Zoom out","aria-label":"Zoom out",style:g({fontSize:15,opacity:a<=.151?.35:1}),children:"−"}),(0,b.jsx)("span",{style:h}),(0,b.jsx)("button",{type:"button",onClick:e,title:c?"The whole map fits the window":"Fit the whole map in the window",style:g({minWidth:44,fontSize:11,fontVariantNumeric:"tabular-nums",color:c?"var(--sd-fg-3, #8f96a3)":"var(--sd-fg-1, #e6e9ef)"}),children:c?"Fit":`${Math.round(100*a)}%`}),(0,b.jsx)("span",{style:h}),(0,b.jsx)("button",{type:"button",onClick:f,disabled:a>=1.499,title:"Zoom in","aria-label":"Zoom in",style:g({fontSize:15,opacity:a>=1.499?.35:1}),children:"+"})]})}let a9=".38s cubic-bezier(.2,.8,.2,1)",ba=`
19
27
  .sepmap .sp { cursor: pointer; transition: opacity .12s; }
20
28
  .sepmap .ppl:hover .sp { opacity: .28; }
21
29
  .sepmap .ppl:hover .sp:hover, .sepmap .ppl:hover .sp.sel { opacity: 1; }
@@ -25,23 +33,27 @@ module.exports=[30100,a=>{"use strict";var b=a.i(87924),c=a.i(72131),d=a.i(50944
25
33
  .sepmap .rt { pointer-events: none; }
26
34
  /* Everything glides to its new place as the slider moves: dots and names by
27
35
  their group's transform, lines by their path. Newcomers fade in. */
28
- .sepmap .mv { transition: transform ${a8}; }
29
- .sepmap .rt, .sepmap .spk { transition: d ${a8}, stroke-opacity .12s; }
36
+ .sepmap .mv { transition: transform ${a9}; }
37
+ .sepmap .rt, .sepmap .spk { transition: d ${a9}, stroke-opacity .12s; }
30
38
  .sepmap .in { animation: sepIn .3s ease-out both; }
39
+ /* The zoom glides too, and the list under the map with it. */
40
+ .sepmap { transition: width ${a9}, height ${a9}; }
41
+ .sepblock { transition: height ${a9}; }
42
+ .seprow { transition: top ${a9}; }
31
43
  @keyframes sepIn { from { opacity: 0; } to { opacity: 1; } }
32
44
  @media (prefers-reduced-motion: reduce) {
33
- .sepmap .mv, .sepmap .rt, .sepmap .spk { transition: none; }
45
+ .sepmap .mv, .sepmap .rt, .sepmap .spk, .sepmap, .sepblock, .seprow { transition: none; }
34
46
  .sepmap .in { animation: none; }
35
47
  }
36
- `,ba={paintOrder:"stroke",stroke:"var(--sd-bg)",strokeWidth:3,strokeLinejoin:"round"},bb=(a,b)=>({transform:`translate(${a}px, ${b}px)`}),bc=(0,c.memo)(function({layout:a,selectedKey:d,tierColors:e,youLabel:f,isMobile:g,onPick:h,onPickBridge:i,mutualsBy:j,doors:k=!1,cards:l=!1}){let{width:m,height:n,you:o,people:p,bridges:q,links:r,spokes:s,ghosts:t=[],unscanned:u=0,ghostLabel:v=null,drawn:w=1}=a,x=(0,c.useMemo)(()=>{let a=new Map;for(let b of r)a.has(b.key)||a.set(b.key,[]),a.get(b.key).push(b);return a},[r]),y=g?36:26,z=g?12:11;return(0,b.jsxs)("svg",{className:"sepmap",width:m,height:n,"aria-hidden":"true",style:{display:"block",overflow:"visible"},children:[(0,b.jsx)("style",{children:a9}),(0,b.jsx)("defs",{children:(0,b.jsxs)("linearGradient",{id:"sepYouGrad",x1:"0",y1:"0",x2:"1",y2:"1",children:[(0,b.jsx)("stop",{offset:"0",stopColor:"#FFD700"}),(0,b.jsx)("stop",{offset:"1",stopColor:"#FF6B35"})]})}),(0,b.jsx)("defs",{children:(0,b.jsxs)("radialGradient",{id:"sepAimHalo",children:[(0,b.jsx)("stop",{offset:"0",stopColor:"#FFD700",stopOpacity:"0.2"}),(0,b.jsx)("stop",{offset:"1",stopColor:"#FFD700",stopOpacity:"0"})]})}),s.map(a=>(0,b.jsx)("path",{className:"spk in",d:`M${a.x1},${a.y1} L${l?a.x2-bd:a.x2},${a.y2}`,fill:"none",stroke:"#fff",strokeOpacity:.12,strokeWidth:1},`s-${a.id??"unresolved"}`)),l&&1===p.length&&p[0].big&&(0,b.jsx)("circle",{className:"mv",style:{...bb(p[0].x+Math.min(200,(m-p[0].x)/2),p[0].y),opacity:.3+.7*w},r:170,fill:"url(#sepAimHalo)"}),1===p.length&&p[0].big&&t.length>0&&(0,b.jsxs)("g",{className:"in",pointerEvents:"none",children:[t.map((a,c)=>{let d=p[0],e=l?d.x:d.x-d.r-2,f=(a.x+e)/2;return(0,b.jsx)("path",{d:`M${a.x},${a.y} C${f},${a.y} ${f},${d.y} ${e},${d.y}`,fill:"none",stroke:"#8a8fa8",strokeOpacity:.09,strokeWidth:.8},`gl-${c}`)}),t.map((a,c)=>(0,b.jsx)("circle",{cx:a.x,cy:a.y,r:3.3,fill:"#4a4f68",stroke:"#6b7090",strokeWidth:.6,strokeOpacity:.6},`gd-${c}`)),v&&(0,b.jsxs)("text",{x:v.x,y:v.y,fontSize:10.5,fontWeight:700,fill:"#8a8fa8",style:ba,children:[`+${a4(u)} more mutual${1===u?"":"s"}, in circles not scanned yet`,u>t.length?` (${a4(t.length)} shown)`:""]})]}),(0,b.jsx)("g",{className:"ppl",children:p.map(a=>{var c;let{p:f}=a,g=e[f.tier]||"#888",i=a.key===d,n=f.routes.map(a=>a.bridge?a.bridge.name:a2).join(", "),o=(c=j?.get(f.key),c?.from==="linkedin"&&c.count>f.waysIn?{text:`${a4(c.count)} mutuals \xb7 ${a4(f.waysIn)} mapped`,rare:!1,more:c.count}:1===f.waysIn?{text:"only way in",rare:!0,more:0}:{text:`${a4(f.waysIn)} ways in`,rare:!1,more:0}),p=a.r+14,q=Math.max(8,Math.floor((m-a.x-p)/6)),r=a=>String(a||"").length>q?`${String(a).slice(0,q-1)}…`:String(a||"");return(0,b.jsxs)("g",{className:i?"sp sel":"sp",onClick:()=>h(f),children:[(0,b.jsx)("title",{children:`${f.person.name} \xb7 #${f.rank}${f.tied?"=":""} \xb7 ${f.tier} \xb7 ${f.score.toFixed(1)} \xb7 ${o.text} \xb7 via ${n}`}),(x.get(a.key)||[]).map(c=>{let d=(c.x1+c.x2)/2,f=c.unresolved?"#777":c.primary?a0:a.big?"#FFD700":e[c.tier]||"#888";return(0,b.jsx)("path",{className:"rt in",d:l?`M${c.x1},${c.y1} C${d},${c.y1} ${d},${c.y2} ${c.x2},${c.y2}`:`M${c.x1+5},${c.y1} C${d},${c.y1} ${d},${c.y2} ${c.x2-a.r-2*!!a.big},${c.y2}`,fill:"none",stroke:f,strokeWidth:a.big?c.primary?2.2:1.4:c.primary?1.5:1,strokeOpacity:a.big?c.primary?.95:.6:c.primary?.8:.35,strokeDasharray:c.primary?void 0:a.big?"5 4":"3 3"},`${c.key}-${c.bridgeId??"u"}`)}),l&&(x.get(a.key)||[]).map(c=>{let d=c.unresolved?"#777":c.primary?a0:a.big?"#FFD700":e[c.tier]||"#888";return(0,b.jsxs)("g",{className:"in",pointerEvents:"none",children:[(0,b.jsx)("circle",{className:"mv",style:bb(c.x1,c.y1),r:2.6,fill:d}),(0,b.jsx)("circle",{className:"mv",style:bb(c.x2,c.y2),r:2.6,fill:d})]},`e-${c.bridgeId??"u"}`)}),(0,b.jsxs)("g",{className:"mv in",style:bb(a.x,a.y),children:[(a.rings||[]).map((a,c)=>(0,b.jsx)("circle",{r:a,fill:"none",stroke:g,strokeOpacity:.28-.08*c,strokeWidth:1,strokeDasharray:c?"2 5":void 0},a)),!l&&(0,b.jsx)("rect",{x:-12,y:-y/2,width:Math.max(0,m-a.x+12),height:y,fill:"transparent"}),l&&a.big?(0,b.jsx)(bi,{p:f,c:g,tag:o,width:Math.max(260,Math.min(400,m-a.x-4)),fs:z}):l?(0,b.jsx)(bh,{p:f,c:g,tag:o,width:Math.max(240,Math.min(340,m-a.x-4)),sel:i}):a.big?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("circle",{r:a.r,fill:"var(--sd-bg)",stroke:g,strokeWidth:3,strokeOpacity:.35+.65*w}),(0,b.jsx)("text",{dy:"0.35em",textAnchor:"middle",fontSize:11,fontWeight:800,fill:g,children:(0,aY.initialsFor)(f.person.name)}),(0,b.jsx)("text",{x:p,y:-20,fontSize:z+3,fontWeight:800,fill:"#fff",style:ba,children:r(f.person.name)}),(0,b.jsx)("text",{x:p,y:-4,fontSize:z,fill:"#aaa",style:ba,children:r(a7(f.person))}),(0,b.jsxs)("text",{x:p,y:13,fontSize:z,fontWeight:700,fill:g,style:ba,children:["#",f.rank,f.tied?"=":""," · ",f.tier,"-tier · ",f.score.toFixed(1)]}),(0,b.jsx)("text",{x:p,y:29,fontSize:z,fill:"#ccc",style:ba,children:r(o.more?`${a4(o.more)} mutual connections \xb7 ${a4(f.waysIn)} drawn here`:1===f.waysIn?"1 mutual connection: the only way in":`${a4(f.waysIn)} mutual connections, all drawn`)}),o.more>0&&(0,b.jsx)("text",{x:p,y:44,fontSize:z-1,fill:"#778",style:ba,children:r("The count is LinkedIn’s; the rest are in circles not scanned yet")})]}):(0,b.jsxs)(b.Fragment,{children:[i&&(0,b.jsx)("circle",{r:a.r+3.5,fill:"none",stroke:"#fff",strokeWidth:1.5}),(0,b.jsx)("circle",{r:a.r,fill:g}),(0,b.jsxs)("text",{x:14,dy:"0.35em",fontSize:z,fill:"#ddd",style:ba,children:[a.label,(0,b.jsx)("tspan",{dx:6,fill:g,fontWeight:700,children:f.score.toFixed(1)}),k&&(0,b.jsx)("tspan",{dx:8,fontSize:z-2,fontWeight:700,fill:o.rare?bq:"#778",children:o.text})]})]})]})]},a.key)})}),q.map(a=>{let c=a.unresolved?"#777":e[a.bridge.tier]||"#888";return(0,b.jsxs)("g",{className:a.unresolved?void 0:"br",onClick:a.unresolved?void 0:()=>i(a.bridge),children:[(0,b.jsx)("title",{children:a.unresolved?"Routes whose connection record doesn’t match anyone in your 1st-degree list, so who introduces you can’t be named":`${a.bridge.name} \xb7 ${a.bridge.tier}-tier${a.count>1?` \xb7 a way in to ${a.count} of these`:""} \xb7 click to open`}),(0,b.jsx)("g",{className:"mv in",style:bb(a.x,a.y),children:l?(0,b.jsx)(bg,{b:a,c:c,big:1===p.length&&p[0].big}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("circle",{r:a.r,fill:a.unresolved?"none":c,stroke:a.unresolved?"#777":"var(--sd-bg)",strokeWidth:a.unresolved?1:1.5,strokeDasharray:a.unresolved?"2 2":void 0}),(0,b.jsx)("text",{x:-9,dy:"0.35em",textAnchor:"end",fontSize:z-1,fill:c,fontStyle:a.unresolved?"italic":void 0,fontWeight:a.unresolved?400:a.primary?800:600,style:ba,children:a.label})]})})]},`b-${a.id??"unresolved"}`)}),(0,b.jsxs)("g",{className:"mv",style:bb(o.x,o.y),children:[(0,b.jsx)("circle",{r:o.r,fill:"url(#sepYouGrad)"}),(0,b.jsx)("text",{dy:"0.35em",textAnchor:"middle",fontSize:f.length>2?9:10,fontWeight:800,fill:"#000",children:f})]})]})}),bd=236,be=(a,b)=>String(a||"").length>b?`${String(a).slice(0,Math.max(1,b-1))}…`:String(a||""),bf=(a,b=9.5)=>Math.round(String(a).length*b*.6+14);function bg({b:a,c,big:d}){if(a.unresolved)return(0,b.jsxs)("g",{children:[(0,b.jsx)("rect",{x:-bd,y:-14,width:bd,height:28,rx:14,fill:"#11132a",stroke:"#555",strokeDasharray:"3 3"}),(0,b.jsx)("text",{x:-bd+14,dy:"0.35em",fontSize:11.5,fontStyle:"italic",fill:"#888",children:be(a.label,30)})]});let e=a.bridge.tier,f=d?a.primary?`${e} \xb7 best way in`:e:a.onlyFor?`${e} \xb7 only door${a.onlyFor>1?` \xd7${a.onlyFor}`:""}`:a.bestFor?`${e} \xb7 door for ${a.bestFor}`:e,g=d?a.primary:a.bestFor>0,h=bf(f);return(0,b.jsxs)("g",{children:[(0,b.jsx)("rect",{x:-bd,y:-14,width:bd,height:28,rx:14,fill:"#14172e",stroke:g?"rgba(255,215,0,0.55)":"rgba(255,255,255,0.09)",strokeWidth:g?1.3:1}),(0,b.jsx)("circle",{cx:-bd+15,r:10,fill:c}),(0,b.jsx)("text",{x:-bd+15,dy:"0.35em",textAnchor:"middle",fontSize:8,fontWeight:800,fill:"#000",children:(0,aY.initialsFor)(a.bridge.name)}),(0,b.jsx)("text",{x:-bd+31,dy:"0.35em",fontSize:12,fontWeight:600,fill:"#e8e8f0",children:be(a.bridge.name,Math.max(6,Math.floor((bd-31-h-10)/6.4)))}),(0,b.jsx)("rect",{x:-h-7,y:-9,width:h,height:18,rx:9,fill:`${c}22`}),(0,b.jsx)("text",{x:-7-h/2,dy:"0.35em",textAnchor:"middle",fontSize:9.5,fontWeight:800,fill:c,children:f})]})}function bh({p:a,c,tag:d,width:e,sel:f}){let g=bf(d.text);return(0,b.jsxs)("g",{children:[(0,b.jsx)("rect",{x:0,y:-20,width:e,height:40,rx:10,fill:"#151830",stroke:f?"#fff":"rgba(255,255,255,0.09)",strokeWidth:f?1.5:1}),(0,b.jsxs)("text",{x:12,dy:"0.35em",fontSize:11,fontWeight:800,fill:"#FFD700",children:["#",a.rank,a.tied?"=":""]}),(0,b.jsx)("text",{x:60,y:-3,fontSize:13,fontWeight:700,fill:"#fff",children:be(a.person.name,Math.floor((e-60-70)/7))}),(0,b.jsx)("text",{x:60,y:12,fontSize:10.5,fill:"#8a8fa8",children:be(a7(a.person),Math.floor((e-60-g-20)/5.6))}),(0,b.jsx)("text",{x:e-12,y:-2,textAnchor:"end",fontSize:14,fontWeight:800,fill:c,children:a.score.toFixed(1)}),(0,b.jsx)("rect",{x:e-12-g,y:4,width:g,height:14,rx:7,fill:d.rare?"rgba(0,229,255,0.1)":"rgba(255,255,255,0.06)",stroke:d.rare?"rgba(0,229,255,0.35)":"rgba(255,255,255,0.14)"}),(0,b.jsx)("text",{x:e-12-g/2,y:11,dy:"0.35em",textAnchor:"middle",fontSize:9.5,fontWeight:800,fill:d.rare?bq:"#cfd3e6",children:d.text})]})}function bi({p:a,c,tag:d,width:e,fs:f}){let g=a.routes.filter(a=>a.bridge).length,h=d.more?`${a4(d.more)} mutual connections`:1===a.waysIn?"1 mutual connection":`${a4(a.waysIn)} mutual connections`,i=d.more?`${a4(a.waysIn)} drawn here`:1===a.waysIn?"the only way in":"all drawn here",j=bf(h,10.5),k=bf(i,10.5),l=Math.floor((e-96-14)/6.6);return(0,b.jsxs)("g",{children:[(0,b.jsx)("rect",{x:0,y:-76,width:e,height:152,rx:16,fill:"#151830",stroke:"rgba(255,215,0,0.45)"}),(0,b.jsx)("circle",{cx:48,r:32,fill:"var(--sd-bg)",stroke:c,strokeWidth:3}),(0,b.jsx)("text",{x:48,dy:"0.35em",textAnchor:"middle",fontSize:18,fontWeight:800,fill:c,children:(0,aY.initialsFor)(a.person.name)}),(0,b.jsxs)("text",{x:96,y:-40,fontSize:11,fontWeight:800,fill:"#FFD700",children:["#",a.rank,a.tied?"=":""," · ",a.tier,"-tier · ",a.score.toFixed(1)]}),(0,b.jsx)("text",{x:96,y:-17,fontSize:f+8,fontWeight:800,fill:"#fff",children:be(a.person.name,Math.floor(.72*l))}),(0,b.jsx)("text",{x:96,y:1,fontSize:12,fill:"#8a8fa8",children:be(a7(a.person),l)}),(0,b.jsx)("rect",{x:96,y:12,width:j,height:20,rx:10,fill:"rgba(255,112,67,0.12)",stroke:"rgba(255,112,67,0.4)"}),(0,b.jsx)("text",{x:96+j/2,y:22,dy:"0.35em",textAnchor:"middle",fontSize:10.5,fontWeight:800,fill:br,children:h}),(0,b.jsx)("rect",{x:96+j+6,y:12,width:k,height:20,rx:10,fill:"rgba(255,255,255,0.06)",stroke:"rgba(255,255,255,0.14)"}),(0,b.jsx)("text",{x:96+j+6+k/2,y:22,dy:"0.35em",textAnchor:"middle",fontSize:10.5,fontWeight:800,fill:"#cfd3e6",children:i}),(0,b.jsx)("text",{x:96,y:50,fontSize:10.5,fill:"#6b7090",children:d.more?`The ${a4(d.more)} is LinkedIn’s count. The other ${a4(d.more-a.waysIn)}`:1===g?"Only one of your connections knows them.":`${a4(g)} of your connections know them.`}),d.more>0&&(0,b.jsx)("text",{x:96,y:64,fontSize:10.5,fill:"#6b7090",children:be("are in circles not scanned yet: the grey dots.",Math.floor((e-96-14)/5.4))})]})}let bj={overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"};function bk({p:a,route:c,tierColors:d,compact:e}){if(!e)return(0,b.jsx)(bl,{p:a,route:c,tierColors:d});if(!c?.bridge)return(0,b.jsxs)("span",{style:{...bj,color:"#777",fontStyle:"italic",fontSize:e?11:12},children:["via ",a2]});let f=c.bridge,g=a.waysIn-1;return(0,b.jsxs)("span",{style:{display:"flex",alignItems:"center",gap:5,minWidth:0,fontSize:e?11:12},children:[(0,b.jsx)("span",{style:{color:"#666",flexShrink:0},children:"via"}),!e&&(0,b.jsx)(a_,{person:f,size:16,tierColors:d}),(0,b.jsx)("span",{style:{...bj,color:d[f.tier]||"#aaa",fontWeight:600,minWidth:0},children:e?(0,P.shortName)(f.name):f.name}),g>0&&(0,b.jsxs)("span",{title:`Every way in:
37
- ${a6(a)}`,style:{flexShrink:0,padding:"1px 6px",borderRadius:8,fontSize:10,fontWeight:800,color:a0,background:"rgba(255,107,53,0.15)"},children:["+",g]})]})}function bl({p:a,route:c,tierColors:d}){let e=c?.bridge,f=a.waysIn-1;return(0,b.jsxs)("span",{style:{display:"flex",alignItems:"center",gap:8,minWidth:0},title:`Every way in:
38
- ${a6(a)}`,children:[e?(0,b.jsx)(a_,{person:e,size:26,tierColors:d}):(0,b.jsx)("span",{style:{width:26,height:26,borderRadius:"50%",border:"1px dashed #666",flexShrink:0}}),(0,b.jsxs)("span",{style:{minWidth:0,display:"flex",flexDirection:"column"},children:[(0,b.jsx)("span",{style:{...bj,fontSize:13,fontWeight:700,color:e?d[e.tier]||"#ddd":"#777",fontStyle:e?"normal":"italic"},children:e?e.name:a2}),(0,b.jsx)("span",{style:{...bj,fontSize:10.5,marginTop:1,color:f>0?"#99a":bq,fontWeight:f>0?500:700},children:f>0?`+${f} more way${f>1?"s":""} in`:"only way in"})]})]})}function bm({p:a,rarity:c}){let d=c?aT(c.key):null;if(!d)return(0,b.jsx)("span",{});let e=Math.max(.06,1-aX(c.count)),f="linkedin"===c.from&&c.count>a.waysIn?`, ${a4(a.waysIn)} mapped`:"";return(0,b.jsxs)("span",{style:{display:"flex",flexDirection:"column",gap:5,minWidth:0},title:`${c.count} mutual connection${1===c.count?"":"s"}${"scans"===c.from?" (from your scans, so it can only go up)":" (LinkedIn’s count)"}. ${bt}`,children:[(0,b.jsx)("span",{style:{height:6,borderRadius:3,background:"rgba(255,255,255,0.07)",overflow:"hidden"},children:(0,b.jsx)("span",{style:{display:"block",height:"100%",width:`${100*e}%`,borderRadius:3,background:d.color}})}),(0,b.jsxs)("span",{style:{...bj,fontSize:10.5,fontWeight:700,color:d.color},children:[d.label," · ",a4(c.count)," mutual",1===c.count?"":"s",f]})]})}function bn({status:a,rarity:c}){let d=c?aT(c.key):null;return(0,b.jsxs)(b.Fragment,{children:["asked"===a&&(0,b.jsx)("span",{title:"You sent a request. It shows everywhere in the app.",style:{flexShrink:0,fontSize:9,fontWeight:800,color:"#FFD700",border:"1px dashed rgba(255,215,0,0.6)",borderRadius:4,padding:"0 4px"},children:"Request sent"}),"connected"===a&&(0,b.jsx)("span",{title:"Already one of your connections",style:{flexShrink:0,fontSize:9,fontWeight:800,color:"#00ff88",border:"1px solid rgba(0,255,136,0.5)",borderRadius:4,padding:"0 4px"},children:"Connected"}),d&&"connected"!==a&&(0,b.jsx)("span",{title:`${c.count} mutual connection${1===c.count?"":"s"}${"scans"===c.from?" (from your scans, so it can only go up)":""}. ${bt}`,style:{flexShrink:0,fontSize:9,fontWeight:700,color:d.color,border:`1px solid ${d.color}55`,borderRadius:4,padding:"0 4px"},children:d.label})]})}function bo({facets:a,text:c,onText:d,onPick:e,onClose:f,isMobile:g}){let h=c.trim().toLowerCase(),i=(a?.sectors||[]).filter(a=>!h||a.label.toLowerCase().includes(h)),j=(a?.companies||[]).filter(a=>!h||a.name.toLowerCase().includes(h)).slice(0,h?60:24),k={fontSize:9,fontWeight:700,color:"#667",letterSpacing:1,textTransform:"uppercase",margin:"10px 0 6px"};return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("div",{onClick:f,style:{position:"fixed",inset:0,zIndex:40}}),(0,b.jsxs)("div",{role:"dialog","aria-label":"Pick a sector or a company",style:{position:"absolute",zIndex:41,top:g?52:44,left:g?6:14,width:g?"calc(100% - 12px)":"min(560px, calc(100% - 28px))",maxHeight:340,overflowY:"auto",boxSizing:"border-box",padding:12,borderRadius:12,background:"#0c101e",border:`1px solid ${bp}55`,boxShadow:"0 12px 40px rgba(0,0,0,0.6)"},children:[(0,b.jsx)("input",{autoFocus:!0,type:"search",value:c,onChange:a=>d(a.target.value),onKeyDown:a=>{"Escape"===a.key?(a.stopPropagation(),f()):"Enter"===a.key&&(1!==i.length||j.length?1!==j.length||i.length||e({kind:"company",key:j[0].name,label:j[0].name}):e({kind:"sector",key:i[0].key,label:i[0].label,color:i[0].color}))},placeholder:"Type a sector or a company","aria-label":"Type a sector or a company",style:{width:"100%",height:g?44:34,boxSizing:"border-box",padding:"0 12px",borderRadius:8,outline:"none",color:"#fff",fontSize:g?16:13,border:"1px solid rgba(255,255,255,0.14)",background:"rgba(255,255,255,0.06)"}}),i.length>0&&(0,b.jsx)("div",{style:k,children:"Sectors · inferred from company names and headlines"}),(0,b.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:6},children:i.map(a=>(0,b.jsxs)("button",{type:"button",onClick:()=>e({kind:"sector",key:a.key,label:a.label,color:a.color}),style:{height:28,padding:"0 10px",borderRadius:14,cursor:"pointer",fontSize:11.5,fontWeight:700,whiteSpace:"nowrap",border:`1px solid ${a.color}66`,background:`${a.color}14`,color:"#ddd",display:"inline-flex",alignItems:"center",gap:6},children:[(0,b.jsx)("span",{style:{width:7,height:7,borderRadius:"50%",background:a.color}}),a.label,(0,b.jsx)("span",{style:{fontWeight:500,color:"#889"},children:a4(a.count)})]},a.key))}),j.length>0&&(0,b.jsxs)("div",{style:k,children:["Companies",h?"":" · the biggest; type to find any"]}),(0,b.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:6},children:j.map(a=>(0,b.jsxs)("button",{type:"button",onClick:()=>e({kind:"company",key:a.name,label:a.name}),style:{height:28,padding:"0 10px",borderRadius:14,cursor:"pointer",fontSize:11.5,fontWeight:600,whiteSpace:"nowrap",border:"1px solid rgba(255,255,255,0.12)",background:"rgba(255,255,255,0.04)",color:"#ccc"},children:[a.name,(0,b.jsx)("span",{style:{marginLeft:6,fontWeight:500,color:"#889"},children:a4(a.count)})]},a.name))}),!i.length&&!j.length&&(0,b.jsx)("div",{style:{fontSize:12,color:"#888",padding:"12px 2px 4px"},children:a?`Nothing matches ‘${c.trim()}’.`:"Reading where everyone works…"})]})]})}let bp="#00ff88",bq="#00E5FF",br="#FF7043",bs=`
48
+ `,bb={paintOrder:"stroke",stroke:"var(--sd-bg)",strokeWidth:3,strokeLinejoin:"round"},bc=(a,b)=>({transform:`translate(${a}px, ${b}px)`}),bd=(0,c.memo)(function({layout:a,scale:d=1,selectedKey:e,tierColors:f,youLabel:g,isMobile:h,onPick:i,onPickBridge:j,mutualsBy:k,doors:l=!1,cards:m=!1}){let{width:n,height:o,you:p,people:q,bridges:r,links:s,spokes:t,ghosts:u=[],unscanned:v=0,ghostLabel:w=null,drawn:x=1}=a,y=(0,c.useMemo)(()=>{let a=new Map;for(let b of s)a.has(b.key)||a.set(b.key,[]),a.get(b.key).push(b);return a},[s]),z=h?36:26,A=h?12:11;return(0,b.jsxs)("svg",{className:"sepmap",width:Math.round(n*d),height:Math.round(o*d),viewBox:`0 0 ${n} ${o}`,"aria-hidden":"true",style:{display:"block",overflow:"visible",margin:"0 auto",width:Math.round(n*d),height:Math.round(o*d)},children:[(0,b.jsx)("style",{children:ba}),(0,b.jsx)("defs",{children:(0,b.jsxs)("linearGradient",{id:"sepYouGrad",x1:"0",y1:"0",x2:"1",y2:"1",children:[(0,b.jsx)("stop",{offset:"0",stopColor:"#FFD700"}),(0,b.jsx)("stop",{offset:"1",stopColor:"#FF6B35"})]})}),(0,b.jsx)("defs",{children:(0,b.jsxs)("radialGradient",{id:"sepAimHalo",children:[(0,b.jsx)("stop",{offset:"0",stopColor:"#FFD700",stopOpacity:"0.2"}),(0,b.jsx)("stop",{offset:"1",stopColor:"#FFD700",stopOpacity:"0"})]})}),t.map(a=>(0,b.jsx)("path",{className:"spk in",d:`M${a.x1},${a.y1} L${m?a.x2-be:a.x2},${a.y2}`,fill:"none",stroke:"#fff",strokeOpacity:.12,strokeWidth:1},`s-${a.id??"unresolved"}`)),m&&1===q.length&&q[0].big&&(0,b.jsx)("circle",{className:"mv",style:{...bc(q[0].x+Math.min(200,(n-q[0].x)/2),q[0].y),opacity:.3+.7*x},r:170,fill:"url(#sepAimHalo)"}),1===q.length&&q[0].big&&u.length>0&&(0,b.jsxs)("g",{className:"in",pointerEvents:"none",children:[u.map((a,c)=>{let d=q[0],e=m?d.x:d.x-d.r-2,f=(a.x+e)/2;return(0,b.jsx)("path",{d:`M${a.x},${a.y} C${f},${a.y} ${f},${d.y} ${e},${d.y}`,fill:"none",stroke:"#8a8fa8",strokeOpacity:.09,strokeWidth:.8},`gl-${c}`)}),u.map((a,c)=>(0,b.jsx)("circle",{cx:a.x,cy:a.y,r:3.3,fill:"#4a4f68",stroke:"#6b7090",strokeWidth:.6,strokeOpacity:.6},`gd-${c}`)),w&&(0,b.jsxs)("text",{x:w.x,y:w.y,fontSize:10.5,fontWeight:700,fill:"var(--sd-fg-3, #8a8fa8)",style:bb,children:[`+${a4(v)} more mutual${1===v?"":"s"}, in circles not scanned yet`,v>u.length?` (${a4(u.length)} shown)`:""]})]}),(0,b.jsx)("g",{className:"ppl",children:q.map(a=>{var c;let{p:d}=a,g=f[d.tier]||"#888",h=a.key===e,j=d.routes.map(a=>a.bridge?a.bridge.name:a2).join(", "),o=(c=k?.get(d.key),c?.from==="linkedin"&&c.count>d.waysIn?{text:`${a4(c.count)} mutuals \xb7 ${a4(d.waysIn)} mapped`,rare:!1,more:c.count}:1===d.waysIn?{text:"only way in",rare:!0,more:0}:{text:`${a4(d.waysIn)} ways in`,rare:!1,more:0}),p=a.r+14,q=Math.max(8,Math.floor((n-a.x-p)/6)),r=a=>String(a||"").length>q?`${String(a).slice(0,q-1)}…`:String(a||"");return(0,b.jsxs)("g",{className:h?"sp sel":"sp",onClick:()=>i(d),children:[(0,b.jsx)("title",{children:`${d.person.name} \xb7 #${d.rank}${d.tied?"=":""} \xb7 ${d.tier} \xb7 ${d.score.toFixed(1)} \xb7 ${o.text} \xb7 via ${j}`}),(y.get(a.key)||[]).map(c=>{let d=(c.x1+c.x2)/2,e=c.unresolved?"#777":c.primary?a0:a.big?"#FFD700":f[c.tier]||"#888";return(0,b.jsx)("path",{className:"rt in",d:m?`M${c.x1},${c.y1} C${d},${c.y1} ${d},${c.y2} ${c.x2},${c.y2}`:`M${c.x1+5},${c.y1} C${d},${c.y1} ${d},${c.y2} ${c.x2-a.r-2*!!a.big},${c.y2}`,fill:"none",stroke:e,strokeWidth:a.big?c.primary?2.2:1.4:c.primary?1.5:1,strokeOpacity:a.big?c.primary?.95:.6:c.primary?.8:.35,strokeDasharray:c.primary?void 0:a.big?"5 4":"3 3"},`${c.key}-${c.bridgeId??"u"}`)}),m&&(y.get(a.key)||[]).map(c=>{let d=c.unresolved?"#777":c.primary?a0:a.big?"#FFD700":f[c.tier]||"#888";return(0,b.jsxs)("g",{className:"in",pointerEvents:"none",children:[(0,b.jsx)("circle",{className:"mv",style:bc(c.x1,c.y1),r:2.6,fill:d}),(0,b.jsx)("circle",{className:"mv",style:bc(c.x2,c.y2),r:2.6,fill:d})]},`e-${c.bridgeId??"u"}`)}),(0,b.jsxs)("g",{className:"mv in",style:bc(a.x,a.y),children:[(a.rings||[]).map((a,c)=>(0,b.jsx)("circle",{r:a,fill:"none",stroke:g,strokeOpacity:.28-.08*c,strokeWidth:1,strokeDasharray:c?"2 5":void 0},a)),!m&&(0,b.jsx)("rect",{x:-12,y:-z/2,width:Math.max(0,n-a.x+12),height:z,fill:"transparent"}),m&&a.big?(0,b.jsx)(bj,{p:d,c:g,tag:o,width:Math.max(260,Math.min(400,n-a.x-4)),fs:A}):m?(0,b.jsx)(bi,{p:d,c:g,tag:o,width:Math.max(240,Math.min(340,n-a.x-4)),sel:h}):a.big?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("circle",{r:a.r,fill:"var(--sd-bg)",stroke:g,strokeWidth:3,strokeOpacity:.35+.65*x}),(0,b.jsx)("text",{dy:"0.35em",textAnchor:"middle",fontSize:11,fontWeight:800,fill:g,children:(0,aY.initialsFor)(d.person.name)}),(0,b.jsx)("text",{x:p,y:-20,fontSize:A+3,fontWeight:800,fill:"var(--sd-fg-1, #fff)",style:bb,children:r(d.person.name)}),(0,b.jsx)("text",{x:p,y:-4,fontSize:A,fill:"var(--sd-fg-3, #aaa)",style:bb,children:r(a7(d.person))}),(0,b.jsxs)("text",{x:p,y:13,fontSize:A,fontWeight:700,fill:g,style:bb,children:["#",d.rank,d.tied?"=":""," · ",d.tier,"-tier · ",d.score.toFixed(1)]}),(0,b.jsx)("text",{x:p,y:29,fontSize:A,fill:"var(--sd-fg-2, #ccc)",style:bb,children:r(o.more?`${a4(o.more)} mutual connections \xb7 ${a4(d.waysIn)} drawn here`:1===d.waysIn?"1 mutual connection: the only way in":`${a4(d.waysIn)} mutual connections, all drawn`)}),o.more>0&&(0,b.jsx)("text",{x:p,y:44,fontSize:A-1,fill:"#778",style:bb,children:r("The count is LinkedIn’s; the rest are in circles not scanned yet")})]}):(0,b.jsxs)(b.Fragment,{children:[h&&(0,b.jsx)("circle",{r:a.r+3.5,fill:"none",stroke:"#fff",strokeWidth:1.5}),(0,b.jsx)("circle",{className:"sd-dot",r:a.r,fill:g}),(0,b.jsxs)("text",{x:14,dy:"0.35em",fontSize:A,fill:"var(--sd-fg-1, #ddd)",style:bb,children:[a.label,(0,b.jsx)("tspan",{dx:6,fill:g,fontWeight:700,children:d.score.toFixed(1)}),l&&(0,b.jsx)("tspan",{dx:8,fontSize:A-2,fontWeight:700,fill:o.rare?"var(--sd-cyan, #00E5FF)":"var(--sd-fg-4, #778)",children:o.text})]})]})]})]},a.key)})}),r.map(a=>{let c=a.unresolved?"#777":f[a.bridge.tier]||"#888";return(0,b.jsxs)("g",{className:a.unresolved?void 0:"br",onClick:a.unresolved?void 0:()=>j(a.bridge),children:[(0,b.jsx)("title",{children:a.unresolved?"Routes whose connection record doesn’t match anyone in your 1st-degree list, so who introduces you can’t be named":`${a.bridge.name} \xb7 ${a.bridge.tier}-tier${a.count>1?` \xb7 a way in to ${a.count} of these`:""} \xb7 click to open`}),(0,b.jsx)("g",{className:"mv in",style:bc(a.x,a.y),children:m?(0,b.jsx)(bh,{b:a,c:c,big:1===q.length&&q[0].big}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("circle",{className:"sd-dot",r:a.r,fill:a.unresolved?"none":c,stroke:a.unresolved?"var(--sd-fg-4, #777)":"var(--sd-bg)",strokeWidth:a.unresolved?1:1.5,strokeDasharray:a.unresolved?"2 2":void 0}),(0,b.jsx)("text",{x:-9,dy:"0.35em",textAnchor:"end",fontSize:A-1,fill:c,fontStyle:a.unresolved?"italic":void 0,fontWeight:a.unresolved?400:a.primary?800:600,style:bb,children:a.label})]})})]},`b-${a.id??"unresolved"}`)}),(0,b.jsxs)("g",{className:"mv",style:bc(p.x,p.y),children:[(0,b.jsx)("circle",{r:p.r,fill:"url(#sepYouGrad)"}),(0,b.jsx)("text",{dy:"0.35em",textAnchor:"middle",fontSize:g.length>2?9:10,fontWeight:800,fill:"#000",children:g})]})]})}),be=236,bf=(a,b)=>String(a||"").length>b?`${String(a).slice(0,Math.max(1,b-1))}…`:String(a||""),bg=(a,b=9.5)=>Math.round(String(a).length*b*.6+14);function bh({b:a,c,big:d}){if(a.unresolved)return(0,b.jsxs)("g",{children:[(0,b.jsx)("rect",{x:-be,y:-14,width:be,height:28,rx:14,fill:"var(--sd-card, #11132a)",stroke:"#555",strokeDasharray:"3 3"}),(0,b.jsx)("text",{x:-be+14,dy:"0.35em",fontSize:11.5,fontStyle:"italic",fill:"var(--sd-fg-3, #888)",children:bf(a.label,30)})]});let e=a.bridge.tier,f=d?a.primary?`${e} \xb7 best way in`:e:a.onlyFor?`${e} \xb7 only door${a.onlyFor>1?` \xd7${a.onlyFor}`:""}`:a.bestFor?`${e} \xb7 door for ${a.bestFor}`:e,g=d?a.primary:a.bestFor>0,h=bg(f);return(0,b.jsxs)("g",{children:[(0,b.jsx)("rect",{x:-be,y:-14,width:be,height:28,rx:14,fill:"var(--sd-card, #14172e)",stroke:g?"rgba(255,215,0,0.55)":"rgba(var(--sd-ink, 255, 255, 255), 0.09)",strokeWidth:g?1.3:1}),(0,b.jsx)("circle",{className:"sd-dot",cx:-be+15,r:10,fill:c}),(0,b.jsx)("text",{x:-be+15,dy:"0.35em",textAnchor:"middle",fontSize:8,fontWeight:800,fill:"#000",children:(0,aY.initialsFor)(a.bridge.name)}),(0,b.jsx)("text",{x:-be+31,dy:"0.35em",fontSize:12,fontWeight:600,fill:"var(--sd-fg-1, #e8e8f0)",children:bf(a.bridge.name,Math.max(6,Math.floor((be-31-h-10)/6.4)))}),(0,b.jsx)("rect",{x:-h-7,y:-9,width:h,height:18,rx:9,fill:`${c}22`}),(0,b.jsx)("text",{x:-7-h/2,dy:"0.35em",textAnchor:"middle",fontSize:9.5,fontWeight:800,fill:c,children:f})]})}function bi({p:a,c,tag:d,width:e,sel:f}){let g=bg(d.text);return(0,b.jsxs)("g",{children:[(0,b.jsx)("rect",{x:0,y:-20,width:e,height:40,rx:10,fill:"var(--sd-card, #151830)",stroke:f?"var(--sd-fg-1, #fff)":"rgba(var(--sd-ink, 255, 255, 255), 0.09)",strokeWidth:f?1.5:1}),(0,b.jsxs)("text",{x:12,dy:"0.35em",fontSize:11,fontWeight:800,fill:"var(--sd-gold, #FFD700)",children:["#",a.rank,a.tied?"=":""]}),(0,b.jsx)("text",{x:60,y:-3,fontSize:13,fontWeight:700,fill:"var(--sd-fg-1, #fff)",children:bf(a.person.name,Math.floor((e-60-70)/7))}),(0,b.jsx)("text",{x:60,y:12,fontSize:10.5,fill:"var(--sd-fg-3, #8a8fa8)",children:bf(a7(a.person),Math.floor((e-60-g-20)/5.6))}),(0,b.jsx)("text",{x:e-12,y:-2,textAnchor:"end",fontSize:14,fontWeight:800,fill:c,children:a.score.toFixed(1)}),(0,b.jsx)("rect",{x:e-12-g,y:4,width:g,height:14,rx:7,fill:d.rare?"rgba(0,229,255,0.1)":"rgba(var(--sd-ink, 255, 255, 255), 0.06)",stroke:d.rare?"rgba(0,229,255,0.35)":"rgba(var(--sd-ink, 255, 255, 255), 0.14)"}),(0,b.jsx)("text",{x:e-12-g/2,y:11,dy:"0.35em",textAnchor:"middle",fontSize:9.5,fontWeight:800,fill:d.rare?"var(--sd-cyan, #00E5FF)":"var(--sd-fg-2, #cfd3e6)",children:d.text})]})}function bj({p:a,c,tag:d,width:e,fs:f}){let g=a.routes.filter(a=>a.bridge).length,h=d.more?`${a4(d.more)} mutual connections`:1===a.waysIn?"1 mutual connection":`${a4(a.waysIn)} mutual connections`,i=d.more?`${a4(a.waysIn)} drawn here`:1===a.waysIn?"the only way in":"all drawn here",j=bg(h,10.5),k=bg(i,10.5),l=Math.floor((e-96-14)/6.6);return(0,b.jsxs)("g",{children:[(0,b.jsx)("rect",{x:0,y:-76,width:e,height:152,rx:16,fill:"var(--sd-card, #151830)",stroke:"rgba(255,215,0,0.45)"}),(0,b.jsx)("circle",{cx:48,r:32,fill:"var(--sd-bg)",stroke:c,strokeWidth:3}),(0,b.jsx)("text",{x:48,dy:"0.35em",textAnchor:"middle",fontSize:18,fontWeight:800,fill:c,children:(0,aY.initialsFor)(a.person.name)}),(0,b.jsxs)("text",{x:96,y:-40,fontSize:11,fontWeight:800,fill:"var(--sd-gold, #FFD700)",children:["#",a.rank,a.tied?"=":""," · ",a.tier,"-tier · ",a.score.toFixed(1)]}),(0,b.jsx)("text",{x:96,y:-17,fontSize:f+8,fontWeight:800,fill:"var(--sd-fg-1, #fff)",children:bf(a.person.name,Math.floor(.72*l))}),(0,b.jsx)("text",{x:96,y:1,fontSize:12,fill:"var(--sd-fg-3, #8a8fa8)",children:bf(a7(a.person),l)}),(0,b.jsx)("rect",{x:96,y:12,width:j,height:20,rx:10,fill:"rgba(255,112,67,0.12)",stroke:"rgba(255,112,67,0.4)"}),(0,b.jsx)("text",{x:96+j/2,y:22,dy:"0.35em",textAnchor:"middle",fontSize:10.5,fontWeight:800,fill:bs,children:h}),(0,b.jsx)("rect",{x:96+j+6,y:12,width:k,height:20,rx:10,fill:"rgba(var(--sd-ink, 255, 255, 255), 0.06)",stroke:"rgba(var(--sd-ink, 255, 255, 255), 0.14)"}),(0,b.jsx)("text",{x:96+j+6+k/2,y:22,dy:"0.35em",textAnchor:"middle",fontSize:10.5,fontWeight:800,fill:"var(--sd-fg-2, #cfd3e6)",children:i}),(0,b.jsx)("text",{x:96,y:50,fontSize:10.5,fill:"#6b7090",children:d.more?`The ${a4(d.more)} is LinkedIn’s count. The other ${a4(d.more-a.waysIn)}`:1===g?"Only one of your connections knows them.":`${a4(g)} of your connections know them.`}),d.more>0&&(0,b.jsx)("text",{x:96,y:64,fontSize:10.5,fill:"#6b7090",children:bf("are in circles not scanned yet: the grey dots.",Math.floor((e-96-14)/5.4))})]})}let bk={overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"};function bl({p:a,route:c,tierColors:d,compact:e}){if(!e)return(0,b.jsx)(bm,{p:a,route:c,tierColors:d});if(!c?.bridge)return(0,b.jsxs)("span",{style:{...bk,color:"var(--sd-fg-4, #777)",fontStyle:"italic",fontSize:e?11:12},children:["via ",a2]});let f=c.bridge,g=a.waysIn-1;return(0,b.jsxs)("span",{style:{display:"flex",alignItems:"center",gap:5,minWidth:0,fontSize:e?11:12},children:[(0,b.jsx)("span",{style:{color:"var(--sd-fg-4, #666)",flexShrink:0},children:"via"}),!e&&(0,b.jsx)(a_,{person:f,size:16,tierColors:d}),(0,b.jsx)("span",{style:{...bk,color:d[f.tier]||"#aaa",fontWeight:600,minWidth:0},children:e?(0,P.shortName)(f.name):f.name}),g>0&&(0,b.jsxs)("span",{title:`Every way in:
49
+ ${a6(a)}`,style:{flexShrink:0,padding:"1px 6px",borderRadius:8,fontSize:10,fontWeight:800,color:"var(--sd-orange, #FF6B35)",background:"rgba(255,107,53,0.15)"},children:["+",g]})]})}function bm({p:a,route:c,tierColors:d}){let e=c?.bridge,f=a.waysIn-1;return(0,b.jsxs)("span",{style:{display:"flex",alignItems:"center",gap:8,minWidth:0},title:`Every way in:
50
+ ${a6(a)}`,children:[e?(0,b.jsx)(a_,{person:e,size:26,tierColors:d}):(0,b.jsx)("span",{style:{width:26,height:26,borderRadius:"50%",border:"1px dashed #666",flexShrink:0}}),(0,b.jsxs)("span",{style:{minWidth:0,display:"flex",flexDirection:"column"},children:[(0,b.jsx)("span",{style:{...bk,fontSize:13,fontWeight:700,color:e?d[e.tier]||"var(--sd-fg-1, #ddd)":"var(--sd-fg-4, #777)",fontStyle:e?"normal":"italic"},children:e?e.name:a2}),(0,b.jsx)("span",{style:{...bk,fontSize:10.5,marginTop:1,color:f>0?"var(--sd-fg-3, #99a)":br,fontWeight:f>0?500:700},children:f>0?`+${f} more way${f>1?"s":""} in`:"only way in"})]})]})}function bn({p:a,rarity:c}){let d=c?aT(c.key):null;if(!d)return(0,b.jsx)("span",{});let e=Math.max(.06,1-aX(c.count)),f="linkedin"===c.from&&c.count>a.waysIn?`, ${a4(a.waysIn)} mapped`:"";return(0,b.jsxs)("span",{style:{display:"flex",flexDirection:"column",gap:5,minWidth:0},title:`${c.count} mutual connection${1===c.count?"":"s"}${"scans"===c.from?" (from your scans, so it can only go up)":" (LinkedIn’s count)"}. ${bu}`,children:[(0,b.jsx)("span",{style:{height:6,borderRadius:3,background:"rgba(var(--sd-ink, 255, 255, 255), 0.07)",overflow:"hidden"},children:(0,b.jsx)("span",{style:{display:"block",height:"100%",width:`${100*e}%`,borderRadius:3,background:d.color}})}),(0,b.jsxs)("span",{style:{...bk,fontSize:10.5,fontWeight:700,color:d.color},children:[d.label," · ",a4(c.count)," mutual",1===c.count?"":"s",f]})]})}function bo({status:a,rarity:c}){let d=c?aT(c.key):null;return(0,b.jsxs)(b.Fragment,{children:["asked"===a&&(0,b.jsx)("span",{title:"You sent a request. It shows everywhere in the app.",style:{flexShrink:0,fontSize:9,fontWeight:800,color:"var(--sd-gold, #FFD700)",border:"1px dashed rgba(255,215,0,0.6)",borderRadius:4,padding:"0 4px"},children:"Request sent"}),"connected"===a&&(0,b.jsx)("span",{title:"Already one of your connections",style:{flexShrink:0,fontSize:9,fontWeight:800,color:"var(--sd-green, #00ff88)",border:"1px solid rgba(0,255,136,0.5)",borderRadius:4,padding:"0 4px"},children:"Connected"}),d&&"connected"!==a&&(0,b.jsx)("span",{title:`${c.count} mutual connection${1===c.count?"":"s"}${"scans"===c.from?" (from your scans, so it can only go up)":""}. ${bu}`,style:{flexShrink:0,fontSize:9,fontWeight:700,color:d.color,border:`1px solid ${d.color}55`,borderRadius:4,padding:"0 4px"},children:d.label})]})}function bp({facets:a,text:c,onText:d,onPick:e,onClose:f,isMobile:g}){let h=c.trim().toLowerCase(),i=(a?.sectors||[]).filter(a=>!h||a.label.toLowerCase().includes(h)),j=(a?.companies||[]).filter(a=>!h||a.name.toLowerCase().includes(h)).slice(0,h?60:24),k={fontSize:9,fontWeight:700,color:"var(--sd-fg-4, #667)",letterSpacing:1,textTransform:"uppercase",margin:"10px 0 6px"};return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("div",{onClick:f,style:{position:"fixed",inset:0,zIndex:40}}),(0,b.jsxs)("div",{role:"dialog","aria-label":"Pick a sector or a company",style:{position:"absolute",zIndex:41,top:g?52:44,left:g?6:14,width:g?"calc(100% - 12px)":"min(560px, calc(100% - 28px))",maxHeight:340,overflowY:"auto",boxSizing:"border-box",padding:12,borderRadius:12,background:"var(--sd-surface, #0c101e)",border:`1px solid ${bq}55`,boxShadow:"0 12px 40px rgba(0,0,0,0.6)"},children:[(0,b.jsx)("input",{autoFocus:!0,type:"search",value:c,onChange:a=>d(a.target.value),onKeyDown:a=>{"Escape"===a.key?(a.stopPropagation(),f()):"Enter"===a.key&&(1!==i.length||j.length?1!==j.length||i.length||e({kind:"company",key:j[0].name,label:j[0].name}):e({kind:"sector",key:i[0].key,label:i[0].label,color:i[0].color}))},placeholder:"Type a sector or a company","aria-label":"Type a sector or a company",style:{width:"100%",height:g?44:34,boxSizing:"border-box",padding:"0 12px",borderRadius:8,outline:"none",color:"var(--sd-fg-1, #fff)",fontSize:g?16:13,border:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.14)",background:"rgba(var(--sd-ink, 255, 255, 255), 0.06)"}}),i.length>0&&(0,b.jsx)("div",{style:k,children:"Sectors · inferred from company names and headlines"}),(0,b.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:6},children:i.map(a=>(0,b.jsxs)("button",{type:"button",onClick:()=>e({kind:"sector",key:a.key,label:a.label,color:a.color}),style:{height:28,padding:"0 10px",borderRadius:14,cursor:"pointer",fontSize:11.5,fontWeight:700,whiteSpace:"nowrap",border:`1px solid ${a.color}66`,background:`${a.color}14`,color:"var(--sd-fg-1, #ddd)",display:"inline-flex",alignItems:"center",gap:6},children:[(0,b.jsx)("span",{style:{width:7,height:7,borderRadius:"50%",background:a.color}}),a.label,(0,b.jsx)("span",{style:{fontWeight:500,color:"var(--sd-fg-3, #889)"},children:a4(a.count)})]},a.key))}),j.length>0&&(0,b.jsxs)("div",{style:k,children:["Companies",h?"":" · the biggest; type to find any"]}),(0,b.jsx)("div",{style:{display:"flex",flexWrap:"wrap",gap:6},children:j.map(a=>(0,b.jsxs)("button",{type:"button",onClick:()=>e({kind:"company",key:a.name,label:a.name}),style:{height:28,padding:"0 10px",borderRadius:14,cursor:"pointer",fontSize:11.5,fontWeight:600,whiteSpace:"nowrap",border:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.12)",background:"rgba(var(--sd-ink, 255, 255, 255), 0.04)",color:"var(--sd-fg-2, #ccc)"},children:[a.name,(0,b.jsx)("span",{style:{marginLeft:6,fontWeight:500,color:"var(--sd-fg-3, #889)"},children:a4(a.count)})]},a.name))}),!i.length&&!j.length&&(0,b.jsx)("div",{style:{fontSize:12,color:"var(--sd-fg-3, #888)",padding:"12px 2px 4px"},children:a?`Nothing matches ‘${c.trim()}’.`:"Reading where everyone works…"})]})]})}let bq="#00ff88",br="#00E5FF",bs="#FF7043",bt=`
39
51
  .sepslide { -webkit-appearance: none; appearance: none; display: block; width: 100%; height: 24px; margin: 4px 0 0; background: transparent; cursor: pointer; }
40
- .sepslide::-webkit-slider-runnable-track { height: 6px; border-radius: 3px; background: linear-gradient(90deg, ${bq} 0%, #FFD700 50%, ${br} 100%); }
41
- .sepslide::-webkit-slider-thumb { -webkit-appearance: none; width: 20px; height: 20px; margin-top: -7px; border-radius: 50%; background: var(--sd-bg); border: 3px solid #fff; box-shadow: 0 0 10px rgba(255,255,255,0.45); }
42
- .sepslide::-moz-range-track { height: 6px; border-radius: 3px; background: linear-gradient(90deg, ${bq} 0%, #FFD700 50%, ${br} 100%); }
43
- .sepslide::-moz-range-thumb { width: 14px; height: 14px; border-radius: 50%; background: var(--sd-bg); border: 3px solid #fff; box-shadow: 0 0 10px rgba(255,255,255,0.45); }
44
- .sepslide:focus-visible { outline: 2px solid rgba(255,255,255,0.7); outline-offset: 3px; border-radius: 6px; }
45
- `,bt="Rarity is how many mutual connections lead to them: few is a rare way in, many is warm (likely to accept). It never changes a score or a tier.",bu=(0,c.memo)(function({p:a,top:c,height:d,isMobile:e,selected:f,tierColors:g,onPick:h,q:i,status:j,rarity:k}){let{person:l}=a,m=g[a.tier]||"#888",n=function(a,b){if(b){let c=a.routes.find(a=>a.bridge&&String(a.bridge.name||"").toLowerCase().includes(b));if(c)return c}return a.routes[0]||null}(a,i),o=a.rank<=3,p=f?"rgba(255,107,53,0.08)":o?`${m}08`:"transparent",q="LinkedIn Member"===l.name,r=`#${a.rank}${a.tied?"=":""}`,s=a.waysIn-1,t=n?.bridge?`via ${n.bridge.name}${s>0?` and ${s} other${s>1?"s":""}`:""}`:`via ${a2}${s>0?` and ${s} other${s>1?"s":""}`:""}`;return(0,b.jsxs)("div",{role:"button",tabIndex:0,"aria-label":`Rank ${a.rank}${a.tied?", tied":""}, ${l.name}, ${a.tier} tier, ${a.score.toFixed(1)}, ${a.waysIn} way${1===a.waysIn?"":"s"} in, ${t}`,"aria-pressed":f,onClick:()=>h(a),onKeyDown:b=>{("Enter"===b.key||" "===b.key)&&(b.preventDefault(),h(a))},onMouseEnter:a=>{f||(a.currentTarget.style.background="rgba(255,255,255,0.04)")},onMouseLeave:a=>{a.currentTarget.style.background=p},style:{position:"absolute",top:c,left:0,right:0,height:d,boxSizing:"border-box",display:"grid",alignItems:"center",gap:10,padding:"0 12px",gridTemplateColumns:e?"44px 36px 1fr 44px":a3,borderLeft:`3px solid ${f?a0:"transparent"}`,borderBottom:"1px solid rgba(255,255,255,0.04)",background:p,cursor:"pointer"},children:[(0,b.jsx)("span",{style:{fontSize:e?11:12,fontWeight:800,color:o?m:"#555",whiteSpace:"nowrap"},children:r}),(0,b.jsx)(a_,{person:l,size:32,tierColors:g}),e?(0,b.jsxs)("div",{style:{minWidth:0,display:"flex",flexDirection:"column",gap:2},children:[(0,b.jsxs)("span",{style:{display:"flex",alignItems:"center",gap:4,minWidth:0},children:[(0,b.jsxs)("span",{style:{...bj,fontSize:13,fontWeight:600,color:q?"#888":"#fff",minWidth:0},children:[l.name,q&&(0,b.jsx)("span",{style:{fontSize:10,color:"#666",fontWeight:400},children:" · out of network"})]}),(0,b.jsx)(bn,{status:j,rarity:k})]}),(0,b.jsx)(bk,{p:a,route:n,tierColors:g,compact:!0}),(0,b.jsx)("span",{style:{...bj,fontSize:10,color:"#666"},children:a7(l)})]}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{style:{minWidth:0},children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,minWidth:0},children:[(0,b.jsx)("span",{style:{...bj,fontSize:13,fontWeight:600,color:q?"#888":"#fff"},children:l.name}),(0,b.jsx)("span",{style:{flexShrink:0,fontSize:9,fontWeight:800,color:m,border:`1px solid ${m}55`,borderRadius:4,padding:"0 4px"},children:a.tier}),(0,b.jsx)(bn,{status:j,rarity:null}),q&&(0,b.jsx)("span",{style:{flexShrink:0,fontSize:10,color:"#666"},children:"out of network"})]}),(0,b.jsx)("div",{style:{...bj,fontSize:10,color:"#777",marginTop:2},children:a7(l)})]}),(0,b.jsx)(bk,{p:a,route:n,tierColors:g}),(0,b.jsx)(bm,{p:a,rarity:k}),(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10},children:[(0,b.jsx)("div",{style:{flex:1,height:6,background:"rgba(255,255,255,0.06)",borderRadius:3},children:(0,b.jsx)("div",{style:{height:"100%",borderRadius:3,background:m,width:`${100*Math.max(0,Math.min(1,a.score/10))}%`}})}),(0,b.jsx)("span",{style:{fontSize:15,fontWeight:800,color:m,width:30,textAlign:"right"},children:a.score.toFixed(1)})]})]}),e&&(0,b.jsxs)("div",{style:{textAlign:"right"},children:[(0,b.jsx)("div",{style:{fontSize:13,fontWeight:800,color:m},children:a.score.toFixed(1)}),(0,b.jsx)("div",{style:{fontSize:9,color:"#666",fontWeight:700},children:a.tier})]})]})}),bv={galaxy:{component:function({connections:a,onSelect:d,tierColors:e,focusNodeRef:f,userName:g,selectedId:h=null,scanNotes:i,fullDegree1:m,fullDegree2:V}){let W=(0,c.useMemo)(()=>{let b=(0,K.reachIndex)(m||a,V||[],i||{}),c=(0,K.readyByCircle)(b),d=new Map;for(let e of a){if(1!==(e.degree||1))continue;let a=(0,K.scanBars)(e,b),f=c.get(e.id)||0;(null!=a||f)&&d.set(e.id,{bars:a,ready:f})}return d},[a,m,V,i]),X=(0,c.useMemo)(()=>(0,P.routeIndex)(V||[]),[V]),Y=(0,c.useRef)(null),Z=(0,c.useRef)(null),$=(0,c.useRef)(null),_=(0,c.useRef)({transform:null,size:null}),aa=(0,c.useRef)(null),[ab,ac]=(0,c.useState)(null),ad=(0,c.useRef)(null),ae=(0,c.useSyncExternalStore)(M.watchLab,M.labNow,()=>M.LAB_DEFAULTS),af=(0,c.useRef)(ae);(0,c.useEffect)(()=>{af.current=ae,$.current?.setLab((0,M.effectiveLab)(ae));let a=(0,M.clockNow)();$.current?.setFind(a.find,a.fly),ae.on&&(0,M.loadSocial)()},[ae]),(0,c.useEffect)(()=>(0,M.watchClock)(()=>{let a=(0,M.clockNow)();$.current?.setTime(a.at),$.current?.setFind(a.find,a.fly),$.current?.setFit(a.fit)}),[]),(0,c.useEffect)(()=>()=>(0,M.stopReplay)(),[]);let ag=(0,c.useSyncExternalStore)(M.watchClock,()=>(0,M.clockNow)().social,()=>void 0),ah=(0,M.effectiveLab)(ae).colourBy,ai=(0,c.useMemo)(()=>(0,M.colourScheme)(ah,a,e,ag),[ah,a,e,ag]),aj=(0,c.useRef)(ai);(0,c.useEffect)(()=>{aj.current=ai,$.current?.setColours(ai)},[ai]);let ak=(0,c.useRef)(d);(0,c.useEffect)(()=>{ak.current=d});let al=(0,c.useRef)(h);(0,c.useEffect)(()=>{let a=Y.current?.parentElement;if(!a)return;let b=()=>{let b=Math.round(a.clientWidth),c=Math.round(a.clientHeight);aa.current={width:b,height:c},ac(a=>a&&a.width===b&&a.height===c?a:{width:b,height:c})};b();let c=new ResizeObserver(b);return c.observe(a),()=>c.disconnect()},[]),(0,c.useEffect)(()=>{al.current=h,$.current?.select(h)},[h]),(0,c.useEffect)(()=>{ab&&$.current?.resize(ab)},[ab]);let am=null!==ab;return(0,c.useEffect)(()=>{if(!am||!Y.current||!a.length)return;let b=j.select(Y.current);b.selectAll("*").remove();let c=aa.current,{transform:d,size:h}=_.current,i=d?J(d,h,c):null,m=function(a,b,c,d,e,f,g,h,i,k,l=new Map,m=M.LAB_DEFAULTS,K=null,N=null,T=new Map){var V,W,X;let Y=N?.of??(a=>f[a.tier]||"#666"),Z=[{id:R,name:k||"You",tier:"center",degree:0,power_score:10,fx:0,fy:0},...d.map(a=>({id:a.id,name:a.name,tier:a.tier,degree:a.degree||1,source_connection_id:a.source_connection_id,unlocked_from_bridge_id:a.unlocked_from_bridge_id,power_score:parseFloat(a.power_score)||1,company:a.company,role:a.role,headline:a.headline,profile_url:a.profile_url,profile_image_url:(0,I.localPhoto)(a.profile_image_url),connected_date:a.connected_date,seniority_score:a.seniority_score,company_prestige_score:a.company_prestige_score,influence_signals:a.influence_signals,is_catalyst:a.is_catalyst,catalyst_score:a.catalyst_score,circle_power:a.circle_power,circle_s_count:a.circle_s_count,circle_a_count:a.circle_a_count}))],$=new Map(Z.map(a=>[a.id,a])),_=new Set(d.filter(a=>1===(a.degree||1)).map(a=>a.id)),aa=d.some(a=>(a.degree||1)>1),ab=new Map;for(let a of Z){if(a.id===R)continue;let b=a.unlocked_from_bridge_id;1===a.degree&&aa&&null!=b&&b!==a.id&&_.has(b)?ab.set(a.id,b):2===a.degree&&_.has(a.source_connection_id)&&ab.set(a.id,a.source_connection_id)}let ac=new Map,ad=(a,b=new Set)=>{if(a.id===R)return 0;if(ac.has(a.id))return ac.get(a.id);let c=ab.get(a.id),d=a.degree>=3?3:a.degree;return null==c||b.has(a.id)||(b.add(a.id),d=ad($.get(c),b)+1),d=Math.min(d,6),ac.set(a.id,d),d},ae=d.map(a=>{let b=ab.get(a.id)??R;return{source:b,target:a.id,near:b!==R}}),af=new Map;for(let a of Z){if(2!==a.degree||!ab.has(a.id))continue;let b=T.get((0,P.keyFor)(a));if(!b||b.size<2)continue;let c=[...b].filter(b=>null!=b&&b!==ab.get(a.id)&&_.has(b));c.length&&af.set(a.id,c)}for(let[a,b]of af)for(let c of b)ae.push({source:c,target:a,near:!0,also:!0});let ag=new Map;for(let a of ae)ag.set(a.source,(ag.get(a.source)||0)+1),ag.set(a.target,(ag.get(a.target)||0)+1);let ah=new Set(ab.values()),ai=new Map;for(let a of ab.values())ai.set(a,(ai.get(a)||0)+1);let aj=a=>{switch(a){case"S":return 150;case"A":return 250;case"B":return 350;case"C":return 450;default:return 520}},ak=["S","A","B","C","D"],al=[[115,135,155,175,192],[265,300,335,370,398],[465,500,535,565,590],[660,690,720,745,765]],am=[...new Set(Z.filter(a=>a.id!==R).map(a=>ad(a)))].sort((a,b)=>a-b),an=aa&&am.length>1,ao=a=>{if(!an)return aj(a.tier);let b=Math.min(am.indexOf(ad(a)),al.length-1),c=ak.indexOf(a.tier);return al[b][c<0?4:c]},ap=window.innerWidth<768,aq=ap?{...M.LAB_DEFAULTS,labels:m.labels}:m,ar=(0,M.reachCounts)(Z,ab),as=a=>{if(a.id===R)return"links"===aq.sizeBy?24:18;if("links"===aq.sizeBy)return Math.min(44,3.5+2.1*Math.sqrt(ag.get(a.id)||1))*aq.dotSize;if("reach"===aq.sizeBy)return Math.min(28,2.5+1.6*Math.sqrt(ar.get(a.id)||0))*aq.dotSize;let b=Math.max(3,Math.min(12,1.3*(a.power_score||1)));return(a.degree>1?Math.max(2.5,.75*b):b)*aq.dotSize},at=a.append("g"),au=new Map,av=null;if(!ap&&an){let a=av=at.append("g").attr("class","degree-guides").style("pointer-events","none"),b=["","1st","2nd","3rd","4th","5th","6th"];am.slice(0,al.length).forEach((c,d)=>{let e=al[d][2];a.append("circle").attr("r",e).attr("fill","none").attr("stroke","#8899aa").attr("stroke-opacity",.12).attr("stroke-width",1).attr("stroke-dasharray","2 4"),a.append("text").attr("x",0).attr("y",-al[d][4]-8).attr("text-anchor","middle").attr("font-size",10).attr("font-weight",700).attr("fill","#8899aa").attr("fill-opacity",.55).text(b[c]||`${c}th`)})}else if(!ap){let a=av=at.append("g").attr("class","tier-guides").style("pointer-events","none");for(let b of["S","A","B","C","D"]){let c=aj(b),d=a.append("circle").attr("r",c).attr("fill","none").attr("stroke",f[b]||"#666").attr("stroke-opacity",.16).attr("stroke-width",1).attr("stroke-dasharray","2 4"),e=a.append("text").attr("x",0).attr("y",-c-4).attr("text-anchor","middle").attr("font-size",10).attr("font-weight",700).attr("fill",f[b]||"#666").attr("fill-opacity",.5).text(b);au.set(b,{ring:d,label:e})}}let aw=null,ax=null,ay=q.default().scaleExtent([.1,4]).on("zoom",a=>{at.attr("transform",a.transform),i.current={transform:aw??a.transform,size:c},ax?.classed("far",a.transform.k<.85),aC()});a.call(ay);let az=(b,d)=>{if(S()){aw=null,a.interrupt().call(ay.transform,b);return}aw=b,i.current={transform:b,size:c},a.transition().duration(d).call(ay.transform,b).on("end interrupt cancel",()=>{aw===b&&(aw=null)})},aA=b.firstChild,aB=null,aC=()=>{if(!aB)return;let c=n.default(a.node());b.style.transform=`translate(${c.applyX(aB.x)}px, ${c.applyY(aB.y)}px) scale(${c.k})`},aD=a=>{if(aB=null!=a&&a!==R?$.get(a)??null:null,b.style.display=aB?"block":"none",!aB)return;let c=as(aB)+8;aA.style.width=aA.style.height=`${2*c+2.5}px`,aA.style.margin=`${-(c+1.25)}px`,aA.style.borderColor=Y(aB)||"#FFD700",aC()};if(h)a.call(ay.transform,o.identity.translate(h.x,h.y).scale(h.k));else{let b=ap&&c.width>0&&c.height>0?Math.min(c.width/1248,c.height/1248):1;a.call(ay.transform,o.identity.translate(c.width/2,c.height/2).scale(b))}if(g&&(g.current=a=>{let b=$.get(a);b&&(az(o.identity.translate(c.width/2-2.5*b.x,c.height/2-2.5*b.y).scale(2.5),750),aD(a))}),ap){let a={};Z.forEach(b=>{let c=b.tier||"D";a[c]||(a[c]=[]),a[c].push(b)}),Object.entries(a).forEach(([a,b])=>{b.forEach((c,d)=>{if(c.id===R){c.x=0,c.y=0,c.fx=c.x,c.fy=c.y;return}let e=aj(a),f=d/b.length*Math.PI*2-Math.PI/2;c.x=e*Math.cos(f),c.y=e*Math.sin(f),c.fx=c.x,c.fy=c.y})})}let aE=ap?0:an?.06:.1,aF=an?.45:.3,aG=a=>{let b=(a.near?Math.max(40,ao(a.target)-ao(a.source)):ao(a.target))*aq.distance;if("links"!==aq.sizeBy)return b;let c=a.source.id===R?7*Math.sqrt(ai.get(a.target.id)||0):0;return b+as(a.source)+as(a.target)+c},aH=a=>(a.id===R?-20:-1)*aq.push,aI=a=>.15*aq.gravity*(ah.has(a.id)?.5:a.degree>=2?.2:1),aJ=()=>Math.min(.45,.1+.05*aq.lines),aK=r.forceSimulation(Z).force("link",s.forceLink(ae).id(a=>a.id).distance(aG).strength(Math.min(1,aE*aq.pull))).force("charge",t.forceManyBody().strength(ap?0:aH)).force("center",ap?null:function(a,b){var c,d=1;function e(){var e,f,g=c.length,h=0,i=0;for(e=0;e<g;++e)h+=(f=c[e]).x,i+=f.y;for(h=(h/g-a)*d,i=(i/g-b)*d,e=0;e<g;++e)f=c[e],f.x-=h,f.y-=i}return null==a&&(a=0),null==b&&(b=0),e.initialize=function(a){c=a},e.x=function(b){return arguments.length?(a=+b,e):a},e.y=function(a){return arguments.length?(b=+a,e):b},e.strength=function(a){return arguments.length?(d=+a,e):d},e}(0,0)).force("gravityX",ap?null:u.forceX(0).strength(aI)).force("gravityY",ap?null:v.forceY(0).strength(aI)).force("collision",ap?null:w.forceCollide().radius(a=>as(a)+2)).force("radial",ap?null:(function(a,b,c){var d,e,f,g=(0,x.default)(.1);function h(a){for(var g=0,h=d.length;g<h;++g){var i=d[g],j=i.x-b||1e-6,k=i.y-c||1e-6,l=Math.sqrt(j*j+k*k),m=(f[g]-l)*e[g]*a/l;i.vx+=j*m,i.vy+=k*m}}function i(){if(d){var b,c=d.length;for(e=Array(c),f=Array(c),b=0;b<c;++b)f[b]=+a(d[b],b,d),e[b]=isNaN(f[b])?0:+g(d[b],b,d)}}return"function"!=typeof a&&(a=(0,x.default)(+a)),null==b&&(b=0),null==c&&(c=0),h.initialize=function(a){d=a,i()},h.strength=function(a){return arguments.length?(g="function"==typeof a?a:(0,x.default)(+a),i(),h):g},h.radius=function(b){return arguments.length?(a="function"==typeof b?b:(0,x.default)(+b),i(),h):a},h.x=function(a){return arguments.length?(b=+a,h):b},h.y=function(a){return arguments.length?(c=+a,h):c},h})(a=>a.id===R?0:ao(a),0,0).strength(aF*aq.rings));av?.attr("opacity",Math.min(1,aq.rings)),aK.on("end.guides",()=>{for(let[a,{ring:b,label:c}]of au){let d=Z.filter(b=>b.tier===a&&b.id!==R).map(a=>Math.hypot(a.x||0,a.y||0)).sort((a,b)=>a-b);if(!d.length){b.attr("opacity",0),c.attr("opacity",0);continue}let e=d[Math.floor(d.length/2)];b.attr("r",e).attr("opacity",1),c.attr("y",-e-4).attr("opacity",1)}});let aL=N?.heat||null,aM=a.select("defs").size()?a.select("defs"):a.append("defs");for(let a=0;a<=5;a++){if(aM.select(`#heat-glow-${a}`).size())continue;let b=aM.append("radialGradient").attr("id",`heat-glow-${a}`);b.append("stop").attr("offset","0").attr("stop-color",(0,M.heatColour)(a/5)).attr("stop-opacity",.14+.06*a),b.append("stop").attr("offset","1").attr("stop-color",(0,M.heatColour)(a/5)).attr("stop-opacity",0)}let aN=at.append("g").attr("class","heat-glow").style("pointer-events","none").style("mix-blend-mode","screen"),aO=aN.selectAll("circle"),aP=()=>{let a=aL?Z.filter(a=>a.id!==R&&aL(a)>=.5).sort((a,b)=>aL(b)-aL(a)).slice(0,700):[];aO=aN.selectAll("circle").data(a,a=>a.id).join("circle").attr("r",a=>2.5*as(a)+12+30*aL(a)).attr("fill",a=>`url(#heat-glow-${Math.round(5*aL(a))})`).attr("cx",a=>a.x||0).attr("cy",a=>a.y||0).style("display",a=>null==br||bi.get(a.id)<=br?null:"none")},aQ=a=>"one"===O.MAP_LOOK.lines?O.MAP_LOOK.line:Y(a.target)||"#333",aR=at.append("g").selectAll("line").data(ae).join("line").attr("class","gl").attr("stroke",aQ).attr("stroke-opacity",aJ()).attr("stroke-width",.5*aq.lines),aS=Z.filter(a=>a.is_catalyst&&l.get(a.id)?.bars==null);if(aS.length){let b=a.select("defs").size()?a.select("defs"):a.append("defs");if(!b.select("#catalyst-glow-nm").size()){let a=b.append("filter").attr("id","catalyst-glow-nm").attr("x","-60%").attr("y","-60%").attr("width","220%").attr("height","220%");a.append("feGaussianBlur").attr("stdDeviation","5").attr("result","blur"),a.append("feMerge").html('<feMergeNode in="blur"/><feMergeNode in="SourceGraphic"/>')}at.append("g").selectAll("circle").data(aS).join("circle").attr("r",a=>as(a)+6).attr("fill","none").attr("stroke","#00ff88").attr("stroke-width",2).attr("stroke-dasharray","3,3").attr("filter","url(#catalyst-glow-nm)").attr("cx",a=>a.x||0).attr("cy",a=>a.y||0).attr("class","catalyst-ring")}let aT=Z.filter(a=>l.has(a.id)),aU=at.append("g").attr("class","dot-rings").style("pointer-events","none").selectAll("g").data(aT).join("g").attr("transform",a=>`translate(${a.x||0},${a.y||0})`);function aV(a){let{bars:b,ready:c}=l.get(a.id),d=as(a)+3.5,e=j.select(this);if(e.selectAll("*").remove(),null!=b){let a;for(let c of(a=(2*Math.PI-1.6)/5,Array.from({length:5},(b,c)=>{let e=-Math.PI/2+.16+c*(a+.32),f=a=>`${(d*Math.cos(a)).toFixed(2)} ${(d*Math.sin(a)).toFixed(2)}`;return{i:c,d:`M${f(e)} A${d} ${d} 0 0 1 ${f(e+a)}`}})))e.append("path").attr("d",c.d).attr("fill","none").attr("stroke-linecap","round").attr("stroke-width",1.6).attr("stroke",c.i<b?"#1abc9c":L)}if(c>0){let a=.72*d;e.append("circle").attr("cx",a).attr("cy",a).attr("r",5.5).attr("fill","#7F77DD"),e.append("text").attr("x",a).attr("y",a+2.5).attr("text-anchor","middle").attr("font-size",7).attr("font-weight",700).attr("fill","#fff").text(c>9?"9+":c)}}aU.each(aV);let aW=at.append("g").selectAll("circle").data(Z).join("circle").attr("class","gn").attr("r",as).attr("fill",a=>a.id===R?O.MAP_LOOK.you:Y(a)).attr("fill-opacity",a=>a.degree>=3?.55:2===a.degree?.75:1).attr("stroke",a=>a.id===R?"#FFD700":a.is_catalyst?"#00ff88":"none").attr("stroke-width",a=>a.id===R?3:2.5*!!a.is_catalyst).style("cursor","pointer").on("click",(a,b)=>{b.id!==R&&(aD(b.id),e(b))}),aX=j.select("body").append("div").attr("class","graph-tooltip").style("position","fixed").style("top","0px").style("left","0px").style("background","rgba(0,0,0,0.92)").style("color","#fff").style("padding","8px 12px").style("border-radius","6px").style("font-size","12px").style("pointer-events","none").style("opacity",0).style("z-index",1e3).style("border","1px solid rgba(255,255,255,0.2)").style("max-width","280px"),aY=j.select("body").append("div").attr("class","graph-tooltip").style("position","fixed").style("top","0px").style("left","0px").style("pointer-events","none").style("opacity",0).style("z-index",1001).style("transition","opacity 0.15s"),aZ=new Map;for(let[a,b]of ab)aZ.has(b)||aZ.set(b,[]),aZ.get(b).push(a);let a$=null;aW.on("mouseover",function(a,b){if(U(this,1.5*as(b)),clearTimeout(a$),aq.on&&aq.branch&&b.id!==R&&(a=>{let b=new Set([R,a.id]),c=[a.id];for(;c.length;)for(let a of aZ.get(c.pop())||[])b.has(a)||(b.add(a),c.push(a));for(let c=ab.get(a.id),d=0;null!=c&&d<7;c=ab.get(c),d++)b.add(c);aW.classed("lit",a=>b.has(a.id)),aR.classed("lit",a=>b.has(a.source.id)&&b.has(a.target.id)),at.classed("lab-focus",!0)})(b),b.profile_image_url&&b.id!==R){var c;let d,e=Math.max(48,5*as(b));aY.style("opacity",1),c=f[b.tier]||"#555",aY.selectAll("*").remove(),(d=(0,I.localPhoto)(b.profile_image_url))?aY.append("img").attr("src",d).style("width",e+"px").style("height",e+"px").style("border-radius","50%").style("object-fit","cover").style("border",`2px solid ${c}`).style("display","block").on("error",function(){this.parentElement.style.display="none"}):aY.style("opacity",0),aY.style("left",a.clientX-e/2+"px").style("top",a.clientY-e-8+"px"),aX.style("opacity",1).html(`<strong>${Q(b.name)}</strong>`).style("left",a.clientX-40+"px").style("top",a.clientY+12+"px").style("text-align","center").style("min-width","80px")}else aX.style("opacity",1).html(`<strong>${Q(b.name)}</strong>${b.company?"<br/>"+Q(b.company):""}${b.tier?"<br/>Tier: "+Q(b.tier):""}`).style("left",a.clientX+12+"px").style("top",a.clientY-10+"px")}).on("mousemove",function(a,b){if(b.profile_image_url&&b.id!==R){let c=Math.max(48,5*as(b));aY.style("left",a.clientX-c/2+"px").style("top",a.clientY-c-8+"px"),aX.style("left",a.clientX-40+"px").style("top",a.clientY+12+"px")}else aX.style("left",a.clientX+12+"px").style("top",a.clientY-10+"px")}).on("mouseout",function(a,b){U(this,as(b)),clearTimeout(a$),a$=setTimeout(()=>at.classed("lab-focus",!1),120),aX.style("opacity",0),aY.style("opacity",0)}),V=aW,W=aK,X=R,V.call((function(){var a,b,c,d,e=E,f=F,g=G,h=H,i={},k=(0,y.dispatch)("start","drag","end"),l=0,m=0;function n(a){a.on("mousedown.drag",o).filter(h).on("touchstart.drag",r).on("touchmove.drag",s,B.nonpassive).on("touchend.drag touchcancel.drag",t).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function o(g,h){if(!d&&e.call(this,g,h)){var i=u(this,f.call(this,g,h),g,h,"mouse");i&&((0,j.select)(g.view).on("mousemove.drag",p,B.nonpassivecapture).on("mouseup.drag",q,B.nonpassivecapture),(0,A.default)(g.view),(0,B.nopropagation)(g),c=!1,a=g.clientX,b=g.clientY,i("start",g))}}function p(d){if((0,B.default)(d),!c){var e=d.clientX-a,f=d.clientY-b;c=e*e+f*f>m}i.mouse("drag",d)}function q(a){(0,j.select)(a.view).on("mousemove.drag mouseup.drag",null),(0,A.yesdrag)(a.view,c),(0,B.default)(a),i.mouse("end",a)}function r(a,b){if(e.call(this,a,b)){var c,d,g=a.changedTouches,h=f.call(this,a,b),i=g.length;for(c=0;c<i;++c)(d=u(this,h,a,b,g[c].identifier,g[c]))&&((0,B.nopropagation)(a),d("start",a,g[c]))}}function s(a){var b,c,d=a.changedTouches,e=d.length;for(b=0;b<e;++b)(c=i[d[b].identifier])&&((0,B.default)(a),c("drag",a,d[b]))}function t(a){var b,c,e=a.changedTouches,f=e.length;for(d&&clearTimeout(d),d=setTimeout(function(){d=null},500),b=0;b<f;++b)(c=i[e[b].identifier])&&((0,B.nopropagation)(a),c("end",a,e[b]))}function u(a,b,c,d,e,f){var h,j,m,o=k.copy(),p=(0,z.pointer)(f||c,b);if(null!=(m=g.call(a,new D("beforestart",{sourceEvent:c,target:n,identifier:e,active:l,x:p[0],y:p[1],dx:0,dy:0,dispatch:o}),d)))return h=m.x-p[0]||0,j=m.y-p[1]||0,function c(f,g,k){var q,r=p;switch(f){case"start":i[e]=c,q=l++;break;case"end":delete i[e],--l;case"drag":p=(0,z.pointer)(k||g,b),q=l}o.call(f,a,new D(f,{sourceEvent:g,subject:m,target:n,identifier:e,active:q,x:p[0]+h,y:p[1]+j,dx:p[0]-r[0],dy:p[1]-r[1],dispatch:o}),d)}}return n.filter=function(a){return arguments.length?(e="function"==typeof a?a:C(!!a),n):e},n.container=function(a){return arguments.length?(f="function"==typeof a?a:C(a),n):f},n.subject=function(a){return arguments.length?(g="function"==typeof a?a:C(a),n):g},n.touchable=function(a){return arguments.length?(h="function"==typeof a?a:C(!!a),n):h},n.on=function(){var a=k.on.apply(k,arguments);return a===k?n:a},n.clickDistance=function(a){return arguments.length?(m=(a*=1)*a,n):Math.sqrt(m)},n})().on("start",(a,b)=>{a.active||W.alphaTarget(.3).restart(),b.fx=b.x,b.fy=b.y}).on("drag",(a,b)=>{b.fx=a.x,b.fy=a.y}).on("end",(a,b)=>{a.active||W.alphaTarget(0),b.id!==X&&(b.fx=null,b.fy=null)}));let a_=null,a0=a=>!!(a_&&a_.size<=40&&a_.has(a.id))||!!aq.labels&&(a.id===R||1===a.degree&&("all"===aq.names||"S"===a.tier||a.is_catalyst||ah.has(a.id))),a1=(ax=at.append("g").classed("far",n.default(a.node()).k<.85)).selectAll("text"),a2=()=>{a1=ax.selectAll("text").data(Z.filter(a0),a=>a.id).join("text").text(a=>a.is_catalyst&&"S"!==a.tier?a.name+" ⚡":a.name).attr("class",a=>a.id===R||ah.has(a.id)?"hub":null).attr("font-size",a=>a.id===R?14:ah.has(a.id)?Math.max(12,Math.min(22,.5*as(a))):10).attr("font-weight",a=>a.id===R||ah.has(a.id)?700:500).attr("fill",a=>a.id===R?"#fff":a.is_catalyst?"#00ff88":Y(a)).attr("text-anchor","middle").attr("dy",a=>as(a)+14).attr("x",a=>a.x||0).attr("y",a=>a.y||0).style("pointer-events","none")};a2();let a3=at.selectAll(".catalyst-ring"),a4=()=>{aR.attr("x1",a=>a.source.x).attr("y1",a=>a.source.y).attr("x2",a=>a.target.x).attr("y2",a=>a.target.y),aW.attr("cx",a=>a.x).attr("cy",a=>a.y),a3.attr("cx",a=>a.x).attr("cy",a=>a.y),aU.attr("transform",a=>`translate(${a.x},${a.y})`),a1.attr("x",a=>a.x).attr("y",a=>a.y),aL&&aO.attr("cx",a=>a.x).attr("cy",a=>a.y),aC()},a5=0;aK.on("tick",()=>{a5=performance.now(),a4(),a7&&aK.alpha()<a6&&(a7=!1,a9())});let a6=.06,a7=!1,a8=(0,M.clockNow)().fit,a9=()=>{let a=1/0,b=1/0,d=-1/0,e=-1/0;if(Z.forEach((c,f)=>{if(!bm[f])return;let g=as(c);a=Math.min(a,c.x-g),b=Math.min(b,c.y-g),d=Math.max(d,c.x+g),e=Math.max(e,c.y+g)}),!Number.isFinite(a)||!c.width||!c.height)return;let f=Math.max(.1,Math.min(2,Math.min(c.width/(d-a+80),c.height/(e-b+80))));az(o.identity.translate(c.width/2-(a+d)/2*f,c.height/2-(b+e)/2*f).scale(f),750)},ba=null,bb=Z.length>12e3?3:Z.length>3e3?2:1,bc=null,bd=0,be=0,bf=a=>{if(++be%bb)return;let b=Math.min(.1,(a-bd)/1e3);if(bd=a,b<=0)return;let c=.1*aq.orbit*b,d=Math.cos(c),e=Math.sin(c);for(let a of Z){if(null!=a.fx)continue;let{x:b,y:c}=a;if(a.x=b*d-c*e,a.y=b*e+c*d,a.vx){let b=a.vx;a.vx=b*d-a.vy*e,a.vy=b*e+a.vy*d}}performance.now()-a5>50&&a4()},bg=()=>{let a=!ap&&aq.orbit>0&&!S();a&&!bc&&(bd=0,be=0,bc=p.timer(bf)),!a&&bc&&(bc.stop(),bc=null)};at.classed("lab-pop",aq.on&&Z.length<5e3);let bh=(0,M.bornTimes)(Z,ab),bi=new Map(Z.map((a,b)=>[a.id,bh[b]])),bj=aW.nodes(),bk=aR.nodes(),bl=new Map;aU.each(function(a){bl.set(a.id,[this])}),a3.each(function(a){bl.set(a.id,[...bl.get(a.id)||[],this])});let bm=new Uint8Array(Z.length).fill(1),bn=new Map(Z.map((a,b)=>[a.id,b])),bo=Z.filter(a=>1===a.degree),bp=bo.map(a=>bi.get(a.id)).filter(Number.isFinite),bq={min:bp.length?bp.reduce((a,b)=>Math.min(a,b)):null,max:bp.length?bp.reduce((a,b)=>Math.max(a,b)):null,of:bo.length},br=null,bs=()=>{let a=a=>null==br||bi.get(a.id)<=br?null:"none";a1.style("display",a),aL&&aO.style("display",a)};aP();let bt="",bu=(0,M.clockNow)().fly;return bg(),{simulation:aK,resize:b=>{let d=J(aw??n.default(a.node()),c,b);c=b,az(o.identity.translate(d.x,d.y).scale(d.k),250)},select:aD,setLab:a=>{if(ap){a.labels!==aq.labels&&(aq={...aq,labels:a.labels},a2(),bs());return}let b=aq;aq=a;let c=b.dotSize!==aq.dotSize||b.sizeBy!==aq.sizeBy;c&&(aW.attr("r",as),a3.attr("r",a=>as(a)+6),aU.each(aV),aK.force("collision").radius(a=>as(a)+2),aB&&aD(aB.id)),b.lines!==aq.lines&&aR.attr("stroke-width",.5*aq.lines).attr("stroke-opacity",aJ()),(c||b.names!==aq.names||b.labels!==aq.labels)&&(a2(),bs()),aq.on&&aq.branch||at.classed("lab-focus",!1),at.classed("lab-pop",aq.on&&Z.length<5e3),b.orbit!==aq.orbit&&bg(),(M.FORCE_KEYS.some(a=>b[a]!==aq[a])||c)&&(aK.force("link").distance(aG).strength(Math.min(1,aE*aq.pull)),aK.force("charge").strength(aH),aK.force("gravityX").strength(aI),aK.force("gravityY").strength(aI),aK.force("radial").strength(aF*aq.rings),av?.attr("opacity",Math.min(1,aq.rings)),aK.alpha(Math.max(aK.alpha(),.5)).restart())},setTime:a=>{aq.on||(a=null),br=a;let b=0;for(let c=1;c<Z.length;c++){let d=+(null==a||bh[c]<=a);if(d&&1===Z[c].degree&&b++,d===bm[c])continue;bm[c]=d;let e=d?"":"none";for(let a of(bj[c].style.display=e,bk[c-1]&&(bk[c-1].style.display=e),bl.get(Z[c].id)||[]))a.style.display=e}for(let a=d.length;a<ae.length;a++){let b=bm[bn.get(ae[a].source.id)]&&bm[bn.get(ae[a].target.id)];bk[a].style.display=b?"":"none"}if(bs(),K&&(K.style.display=null==a?"none":"block",null!=a)){let c=new Date(a).toLocaleDateString(void 0,{month:"short",year:"numeric"}),d=(0,M.chapterAt)((0,M.clockNow)().social,a);K.textContent=`${c} \xb7 ${b.toLocaleString()} of ${bq.of.toLocaleString()} connections${d?` \xb7 at ${d.company}`:""}`}},setColours:a=>{Y=a.of,aL=a.heat||null,aP(),aW.attr("fill",a=>a.id===R?O.MAP_LOOK.you:Y(a)),aR.attr("stroke",aQ),a2(),bs(),aB&&aD(aB.id)},setFind:(a,b)=>{let d=aq.on?String(a||""):"";if(d!==bt&&(bt=d,a_=(0,M.findMatches)(Z.filter(a=>a.id!==R),d),aW.classed("found",a=>!!a_?.has(a.id)),aR.classed("found",a=>!!a_?.has(a.target.id)),at.classed("lab-find",!!a_),a2(),bs(),(0,M.setClock)({found:a_?a_.size:0})),b!==bu){bu=b;let a=a_&&Z.filter(a=>a_.has(a.id)).sort((a,b)=>(b.power_score||0)-(a.power_score||0))[0];a&&(az(o.identity.translate(c.width/2-2.5*a.x,c.height/2-2.5*a.y).scale(2.5),750),aD(a.id),e(a))}},setFit:a=>{a!==a8&&(a8=a,a7=!0,clearTimeout(ba),ba=setTimeout(()=>{a7&&aK.alpha()<a6&&performance.now()-a5>100&&(a7=!1,a9())},150))},dispose:()=>{bc?.stop(),bc=null,clearTimeout(ba)},range:bq}}(b,Z.current,c,a,a=>ak.current?.(a),e,f,i,_,g,W,(0,M.effectiveLab)(af.current),ad.current,aj.current,X);$.current=m,m.select(al.current),(0,M.setClock)({min:m.range.min,max:m.range.max,of:m.range.of}),m.setTime((0,M.clockNow)().at),m.setFind((0,M.clockNow)().find,(0,M.clockNow)().fly);let K=(0,N.registerGalaxy)({svg:Y.current,stamp:()=>ad.current?.style.display==="block"?ad.current.textContent:null,legend:()=>aj.current.legend});return()=>{var a;m.simulation.stop(),m.dispose(),K(),b.interrupt(),$.current=null,("string"==typeof(a=".graph-tooltip")?new l.Selection([document.querySelectorAll(a)],[document.documentElement]):new l.Selection([(0,k.default)(a)],l.root)).remove()}},[a,e,am,W,X]),(0,b.jsxs)("div",{style:{flex:1,position:"relative",overflow:"hidden"},children:[(0,b.jsx)("style",{children:T}),(0,b.jsx)("svg",{ref:Y,width:ab?.width??800,height:ab?.height??600,style:{background:"transparent"}}),(0,b.jsx)("div",{ref:Z,className:"galaxy-ring",style:{position:"absolute",left:0,top:0,display:"none",pointerEvents:"none",transformOrigin:"0 0"},children:(0,b.jsx)("div",{className:"galaxy-ring-pulse",style:{boxSizing:"border-box",border:"2.5px solid",borderRadius:"50%"}})}),(0,b.jsx)("div",{ref:ad,style:{position:"absolute",bottom:56,left:"50%",transform:"translateX(-50%)",display:"none",padding:"6px 14px",borderRadius:16,background:"rgba(10,15,30,0.8)",border:"1px solid rgba(255,255,255,0.12)",color:"#e6edf5",fontSize:13,fontWeight:600,pointerEvents:"none",fontVariantNumeric:"tabular-nums"}}),(0,b.jsx)("div",{style:{position:"absolute",bottom:20,left:20,right:20,display:"flex",flexWrap:"wrap",gap:"4px 12px",fontSize:11,color:"#888",pointerEvents:"none"},children:ai.legend.map(([a,c])=>(0,b.jsxs)("span",{style:{display:"flex",alignItems:"center",gap:4,whiteSpace:"nowrap"},children:[(0,b.jsx)("span",{style:{width:8,height:8,borderRadius:"50%",background:c,display:"inline-block"}}),a]},a))})]})},modes:["network"],label:"Galaxy",icon:"🌌",desc:"Force-directed layout"},separation:{component:function({connections:a=[],degree2:d=[],fullDegree1:e=a,fullDegree2:f=d,onSelect:i,userName:j,selectedId:k,tierColors:l=a1,preset:m=null}){let n=function(){let[a,b]=(0,c.useState)(!1);return(0,c.useEffect)(()=>{let a=()=>b(window.innerWidth<768);return a(),window.addEventListener("resize",a),()=>window.removeEventListener("resize",a)},[]),a}(),o=(0,c.useSyncExternalStore)(aZ.watchNotchShown,aZ.notchShownNow,aZ.noNotch),p=n?68:56,q=n?5:10,r=n?8:16,[s,t]=(0,c.useState)(""),u=(0,c.useDeferredValue)(s.trim().toLowerCase()),[v,w]=(0,c.useState)(50),x=(0,c.useDeferredValue)(v),[y,z]=(0,c.useState)("all"),[A,B]=(0,c.useState)(()=>new Set),[C,D]=(0,c.useState)(null),[E,F]=(0,c.useState)(!1),[G,H]=(0,c.useState)(""),[I,J]=(0,c.useState)(!1),[K,L]=(0,c.useState)(null);m&&m.id!==K&&(L(m.id),t(m.query||""),z(m.tier||"all"),B(new Set(m.rarity?[m.rarity]:[])));let M=(0,g.default)(),[N,O]=(0,c.useState)(0),[Q,R]=(0,c.useState)({w:0,h:800}),[S,T]=(0,c.useState)(null),U=(0,c.useRef)(null),V=(0,c.useCallback)(a=>{U.current=a,T(a)},[]),W=(0,c.useRef)(null),X=(0,c.useMemo)(()=>(0,P.separationPeople)(d,a),[d,a]),Y=(0,c.useMemo)(()=>(0,P.routeIndex)(f),[f]),Z=(0,c.useMemo)(()=>{let a=new Map;for(let b of X.people)a.set(b.key,aU(b.person,Y.get(b.key)?.size||b.waysIn));return a},[X,Y]),$=(0,c.useMemo)(()=>{if(50===x)return X.people;let a=new Map;for(let b of X.people)a.set(b.key,function(a,b,c=50){let d=(Math.max(0,Math.min(100,Number(c)||0))-50)/50;if(!d)return a;let e=aX(b),f=Math.abs(d);return a*(1-f+f*(d<0?1-e:e))}(b.score,Z.get(b.key)?.count||b.waysIn,x));return[...X.people].sort((b,c)=>a.get(c.key)-a.get(b.key)||(0,P.comparePower)(b,c))},[X,Z,x]),_=(0,c.useMemo)(()=>{let a=Object.fromEntries(aR.map(a=>[a.key,0]));for(let b of Z.values())a[b.key]++;return a},[Z]),aa=(0,c.useMemo)(()=>{if(!I)return null;let a=new Map,b=new Map,c=new Map;for(let d of X.people){let e=(0,aQ.companyOf)(d.person)||null,f=(0,aQ.industryOf)(e,d.person.headline).key;a.set(d.key,{company:e,sector:f}),b.set(f,(b.get(f)||0)+1),e&&c.set(e,(c.get(e)||0)+1)}return{by:a,sectors:aQ.INDUSTRIES.map(a=>({...a,count:b.get(a.key)||0})).filter(a=>a.count>0).sort((a,b)=>b.count-a.count),companies:[...c].map(([a,b])=>({name:a,count:b})).sort((a,b)=>b.count-a.count||a.name.localeCompare(b.name))}},[X,I]),ab=(0,c.useCallback)(a=>{if(!C||!aa)return!0;let b=aa.by.get(a.key);return"sector"===C.kind?b?.sector===C.key:b?.company===C.key},[C,aa]),ac=(0,c.useCallback)((a,b)=>("all"===y||a.tier===y)&&(!A.size||A.has(Z.get(a.key)?.key))&&ab(a)&&(!b||a.haystack.includes(b)),[y,A,Z,ab]),ad=(0,c.useMemo)(()=>u||"all"!==y||A.size||C?$.filter(a=>ac(a,u)):$,[$,u,y,A,C,ac]),ae=(0,c.useMemo)(()=>new Set(e.map(P.keyFor)),[e]),af=(0,c.useCallback)(a=>ae.has(a.key)?"connected":(0,h.hasRequest)(a.person,M)?"asked":null,[ae,M]),ag=(0,P.mapCount)(x,q),ah=(0,c.useMemo)(()=>ad.filter(a=>!af(a)).slice(0,q+1),[ad,q,af]),ai=(0,c.useMemo)(()=>ah.slice(0,ag),[ah,ag]),aj=(0,c.useMemo)(()=>ad.reduce((a,b)=>a+ +!!af(b),0),[ad,af]),ak=null!=k?X.rowToKey.get(k)??null:null,al=1===ag,am=(0,c.useMemo)(()=>al?(0,P.mostMutuals)(ad.filter(a=>!af(a)),a=>Z.get(a.key)?.count||0,(n?3:6)+1):[],[al,ad,af,Z,n]),an=(0,c.useMemo)(()=>al&&(ak&&ad.find(a=>a.key===ak)||am[0])||null,[al,ak,ad,am]),ao=(0,c.useMemo)(()=>al&&an?am.filter(a=>a.key!==an.key).slice(0,n?3:6):[],[al,an,am,n]),ap=(0,c.useRef)(i);(0,c.useEffect)(()=>{ap.current=i});let aq=(0,c.useCallback)(a=>ap.current?.(a.person),[]),ar=(0,c.useCallback)(a=>{a&&ap.current?.(a)},[]);(0,c.useEffect)(()=>{if(!S)return;let a=new ResizeObserver(()=>{let a=Math.round(S.clientWidth),b=Math.round(S.clientHeight);R(c=>c.w===a&&c.h===b?c:{w:a,h:b})});return a.observe(S),()=>a.disconnect()},[S]);let as=Math.max(0,Math.min(980,Q.w-2*r)),at=!n&&as>=760,au=(0,c.useMemo)(()=>al?(0,P.convergeLayout)(an,as||800,n,{cards:at,mutuals:an&&Z.get(an.key)?.count||0}):(0,P.summitLayout)(ai,as||800,n,{cards:at}),[al,an,ai,as,n,at,Z]),av=n?58:28,aw=38*!!ao.length,ax=al?an?au.height+aw:0:au.height,ay=ax?av+ax+12:0,az=ay+44*!n+28,aA=az+ad.length*p+72,aB=Math.max(0,Math.floor((N-az)/p)-8),aC=Math.min(ad.length,aB+Math.ceil(Q.h/p)+16),aD=(0,c.useCallback)(a=>{let b=16*Math.floor(a.currentTarget.scrollTop/16);O(a=>a===b?a:b)},[]),aE=(0,c.useCallback)(()=>{U.current&&(U.current.scrollTop=0),O(0)},[]);(0,c.useEffect)(()=>{let a=a=>{if("/"!==a.key||a.metaKey||a.ctrlKey||a.altKey)return;let b=a.target;b&&("INPUT"===b.tagName||"TEXTAREA"===b.tagName||"SELECT"===b.tagName||b.isContentEditable)||(a.preventDefault(),W.current?.focus())};return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[]);let aF=a=>{t(a),aE()},aG=a=>{D(a),F(!1),aE()},aH=a=>{w(Math.max(0,Math.min(100,Math.round(Number(a)||0)))),aE()},{summary:aI}=X,aJ=!!u||"all"!==y||A.size>0||!!C,aK=function(a=50){let b=Math.max(0,Math.min(100,Math.round(Number(a)||0)));return b<=10?{name:"Rarest first",detail:"Strong people with one way in: the connection who knows them is the only door you have."}:b<45?{name:"Leaning rare",detail:"Strong people with few mutual connections move up; the ones everybody knows move down."}:b<=55?{name:"By power",detail:"Each person’s own score alone. How many of your connections know them doesn’t change the order."}:b<90?{name:"Leaning easy",detail:"Strong people you share more mutual connections with move up: more people who could introduce you."}:{name:"Easiest first",detail:"Strong people you share the most mutual connections with: the warmest introductions. All the way right, the map aims at whoever you share the most with, with the ones in circles you haven’t scanned yet as grey dots."}}(v),aL=v<45?bq:v>55?br:"#FFD700",aM=!j||/^you$/i.test(String(j).trim())?"You":(0,aY.initialsFor)(j),aN=ad.slice(aB,aC),aO=(0,b.jsxs)("span",{"aria-live":"polite",title:`${aK.name}. ${aK.detail} It only reorders: scores, tiers and ranks stay as they are.`,style:{...n?{marginLeft:"auto"}:{},textTransform:"none",letterSpacing:0,flexShrink:0,height:n?40:26,padding:"0 12px",borderRadius:15,boxSizing:"border-box",display:"inline-flex",alignItems:"center",gap:7,fontSize:12,fontWeight:700,whiteSpace:"nowrap",border:`1px solid ${aL}66`,background:`${aL}14`,color:aL},children:[(0,b.jsx)("span",{style:{width:7,height:7,borderRadius:"50%",background:aL}}),(0,b.jsx)("span",{style:{fontVariantNumeric:"tabular-nums"},children:v}),aK.name]}),aP=(0,b.jsx)("input",{ref:W,type:"search",value:s,onChange:a=>aF(a.target.value),onKeyDown:a=>{if("Enter"===a.key){let a=s.trim().toLowerCase(),b=$.find(b=>ac(b,a));b&&aq(b)}else"Escape"===a.key&&(s?aF(""):a.currentTarget.blur())},placeholder:n?"Search people, companies, or who knows them":"Search people, companies, who knows them","aria-label":"Search people, companies, or who knows them",style:{width:n?"100%":300,flexShrink:0,minWidth:0,height:n?44:32,boxSizing:"border-box",padding:"0 12px",borderRadius:8,outline:"none",color:"#fff",fontSize:n?16:13,border:"1px solid rgba(255,255,255,0.12)",background:"rgba(255,255,255,0.05)"}}),aS=(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{title:bt,style:{fontSize:10,color:"#666",whiteSpace:"nowrap",flexShrink:0,textTransform:"uppercase",letterSpacing:.5,cursor:"help"},children:"Only show"}),aR.map(a=>{let c=A.has(a.key);return(0,b.jsxs)("button",{type:"button","aria-pressed":c,onClick:()=>{var b;return b=a.key,void(B(a=>aW(a,b)),aE())},title:`${a.label}: ${a.range} mutual connection${"1"===a.range?"":"s"}. ${bt}`,style:{height:n?40:28,padding:n?"0 10px":"0 8px",borderRadius:14,cursor:"pointer",flexShrink:0,fontSize:11.5,fontWeight:700,whiteSpace:"nowrap",border:`1px solid ${c?a.color:"rgba(255,255,255,0.1)"}`,background:c?`${a.color}22`:"rgba(255,255,255,0.03)",color:c?a.color:"#999"},children:[a.label,(0,b.jsx)("span",{style:{marginLeft:5,fontWeight:500,color:c?a.color:"#666",opacity:.85},children:a4(_[a.key])})]},a.key)})]});return(0,b.jsxs)("div",{style:{flex:1,minWidth:0,display:"flex",flexDirection:"column",background:"var(--sd-page)",color:"#fff",overflow:"hidden"},children:[(0,b.jsxs)("div",{style:{padding:`${o?48:14}px 56px 8px`,flexShrink:0},children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:n?"baseline":"center",gap:10,flexWrap:n?"wrap":"nowrap"},children:[(0,b.jsx)("h2",{title:"Ranked by each person’s own score (title, company, headline). It ranks reachability, not people. From the lists scanned so far.",style:{margin:0,fontSize:18,fontWeight:800,background:"linear-gradient(135deg, #FFD700, #FF6B35)",WebkitBackgroundClip:"text",WebkitTextFillColor:"transparent"},children:"Separation"}),(0,b.jsx)("span",{style:{fontSize:12,color:"#aaa",...n?{}:{flex:1,minWidth:0,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"}},children:n?`${a5(aI.people,"person","people")} \xb7 ${a4(aI.byTier.S)} S \xb7 ${a4(aI.multi)} with 2+ ways`:`${a5(aI.people,"person","people")} two steps away \xb7 ${a4(aI.byTier.S)} S-tier \xb7 ${a4(aI.multi)} reachable 2+ ways \xb7 through ${a4(aI.bridges)} of your connections`}),!n&&aP]}),(0,b.jsx)("div",{"aria-hidden":"true",style:{display:"flex",gap:1,height:6,borderRadius:3,overflow:"hidden",margin:"8px 0 6px",background:"rgba(255,255,255,0.04)"},children:P.TIERS.filter(a=>aI.byTier[a]>0).map(a=>(0,b.jsx)("div",{style:{flex:aI.byTier[a],background:l[a]||"#555"}},a))}),n&&(0,b.jsx)("div",{style:{fontSize:11,color:"#777",lineHeight:1.4},children:"Ranks reachability, not people · lists scanned so far"}),aI.peopleOnlyUnresolved>0&&(0,b.jsxs)("div",{style:{marginTop:8,padding:"8px 10px",borderRadius:8,fontSize:11.5,lineHeight:1.5,color:"#e8d9a0",background:"rgba(255,215,0,0.06)",border:"1px solid rgba(255,215,0,0.25)"},children:[a5(aI.peopleOnlyUnresolved,"of these people","of these people")," ","came only through ",a5(aI.onlyUnresolvedVia,"connection record","connection records")," ","that ",1===aI.onlyUnresolvedVia?"doesn’t":"don’t"," match anyone in your 1st-degree list, so who introduces you can’t be named. They’re still ranked."]})]}),(0,b.jsxs)("div",{style:{padding:"0 56px 10px",flexShrink:0,borderBottom:"1px solid rgba(255,255,255,0.06)"},children:[(0,b.jsx)("style",{children:bs}),n&&aP,(0,b.jsxs)("div",{style:{marginTop:n?8:2,padding:n?"8px 10px":"8px 14px",borderRadius:12,position:"relative",border:"1px solid rgba(255,255,255,0.08)",background:"rgba(255,255,255,0.025)"},children:[E&&(0,b.jsx)(bo,{facets:aa,text:G,onText:H,isMobile:n,onPick:aG,onClose:()=>F(!1)}),(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:n?8:6,flexWrap:n?"nowrap":"wrap",minWidth:0,overflowX:n?"auto":"visible",scrollbarWidth:"thin"},children:[(0,b.jsx)("span",{style:{fontSize:10,color:"#666",whiteSpace:"nowrap",flexShrink:0,textTransform:"uppercase",letterSpacing:.5},children:"Their tier"}),["all",...P.TIERS].map(a=>{let c=y===a,d="all"===a?"#fff":l[a]||"#888",e="all"===a?aI.people:aI.byTier[a];return(0,b.jsxs)("button",{type:"button","aria-pressed":c,onClick:()=>{z(a),aE()},style:{height:n?40:28,padding:n?"0 10px":"0 8px",borderRadius:14,cursor:"pointer",flexShrink:0,fontSize:12,fontWeight:700,whiteSpace:"nowrap",border:`1px solid ${c?d:"rgba(255,255,255,0.1)"}`,background:c?`${"#fff"===d?"#ffffff":d}22`:"rgba(255,255,255,0.03)",color:c?d:"#999"},children:["all"===a?"All":a,(0,b.jsx)("span",{style:{marginLeft:5,fontWeight:500,color:c?d:"#666",opacity:.85},children:a4(e)})]},a)}),(0,b.jsxs)("span",{style:{display:"inline-flex",flexShrink:0,height:n?40:30,borderRadius:15,overflow:"hidden",border:`1px solid ${C?bp:"rgba(0,255,136,0.35)"}`,background:C?"rgba(0,255,136,0.12)":"rgba(0,255,136,0.04)"},children:[(0,b.jsx)("button",{type:"button","aria-haspopup":"dialog","aria-expanded":E,onClick:()=>E?F(!1):void(J(!0),H(""),F(!0)),title:"Narrow everyone to one sector or one company",style:{padding:C?"0 6px 0 12px":"0 12px",border:"none",background:"none",cursor:"pointer",fontSize:12,fontWeight:700,whiteSpace:"nowrap",color:bp,maxWidth:n?200:300,overflow:"hidden",textOverflow:"ellipsis"},children:C?(0,b.jsxs)(b.Fragment,{children:["Path",(0,b.jsxs)("span",{style:{fontWeight:500,color:"#cfe"},children:[" · ",C.label]})]}):"Path ▾"}),C&&(0,b.jsx)("button",{type:"button","aria-label":`Clear the path: ${C.label}`,onClick:()=>aG(null),style:{padding:"0 10px 0 4px",border:"none",background:"none",cursor:"pointer",fontSize:14,color:bp},children:"×"})]}),!n&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{"aria-hidden":"true",style:{width:1,height:18,background:"rgba(255,255,255,0.12)",margin:"0 2px"}}),aS]}),n&&aO]}),(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:n?"baseline":"center",marginTop:8,fontSize:10.5,fontWeight:800,letterSpacing:.5,textTransform:"uppercase"},children:[(0,b.jsxs)("span",{style:{color:bq,flex:n?void 0:1},children:["Rare",n?"":" · one way in"]}),n?(0,b.jsx)("span",{style:{color:"#FFD700"},children:"Power"}):aO,(0,b.jsxs)("span",{style:{color:br,flex:n?void 0:1,textAlign:"right"},children:["Easy",n?"":" · many mutual connections"]})]}),(0,b.jsx)("input",{className:"sepslide",type:"range",min:0,max:100,step:1,value:v,onChange:a=>aH(a.target.value),onDoubleClick:()=>aH(50),"aria-label":"Order: the rarest ways in, to the easiest","aria-valuetext":`${v}: ${aK.name}`,title:"Drag to reorder everyone. Double-click to go back to the middle."}),(0,b.jsx)("div",{style:{display:"flex",justifyContent:"space-between",marginTop:-2},children:[[0,"Rarest"],[25,""],[50,"By power"],[75,""],[100,"Easiest"]].map(([a,c])=>(0,b.jsxs)("button",{type:"button",onClick:()=>aH(a),"aria-label":`Set the slider to ${a}${c?`: ${c}`:""}`,style:{padding:"2px 4px",border:"none",background:"none",cursor:"pointer",fontSize:10,color:v===a?"#fff":"#667",fontWeight:v===a?700:500,fontVariantNumeric:"tabular-nums"},children:[a,c&&!n?` \xb7 ${c}`:""]},a))}),n&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{style:{marginTop:4,fontSize:11.5,lineHeight:1.45,color:"#bbb"},children:[(0,b.jsxs)("span",{style:{color:aL,fontWeight:700},children:[aK.name,"."]})," ",aK.detail]}),(0,b.jsx)("div",{style:{display:"flex",alignItems:"center",gap:8,marginTop:8,minWidth:0,flexWrap:"nowrap",overflowX:"auto",scrollbarWidth:"thin"},children:aS})]})]})]}),(0,b.jsx)("div",{ref:V,onScroll:aD,style:{flex:1,minHeight:0,overflowY:"auto",overflowX:"hidden",position:"relative",padding:`0 ${r}px`},children:(0,b.jsxs)("div",{style:{position:"relative",maxWidth:980,margin:"0 auto",height:aA},children:[ay>0&&(0,b.jsxs)("div",{style:{height:ay,boxSizing:"border-box",paddingTop:10},children:[(0,b.jsxs)("div",{style:{height:av-10,overflow:"hidden"},children:[(0,b.jsx)("div",{title:n?void 0:`${!al&&aj>0?`${a4(aj)} asked or connected, so it moved on. `:""}Solid orange: the top-scored bridge. Dashed: other routes.${al?" Pick anyone in the list to aim at them instead.":at?" A lit pill is someone’s best way in.":" Dot size: ways in."}`,style:{fontSize:12,fontWeight:700,color:"#ddd",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:al?(0,b.jsxs)(b.Fragment,{children:["Aiming at ",an.person.name," · ",au.unscanned?`${a4(an.waysIn+au.unscanned)} mutual connections: ${a4(an.waysIn)} drawn, ${a4(au.unscanned)} in circles not scanned yet`:1===an.waysIn?"the one connection of yours who leads to them":`all ${a4(an.waysIn)} connections of yours who lead to them`]}):(0,b.jsxs)(b.Fragment,{children:["Top ",a4(ai.length)," you haven’t asked, of ",a4(ad.length),aJ?" shown":"",50!==v?` \xb7 ${aK.name.toLowerCase()}`:""," · every way in drawn"]})}),n&&(0,b.jsxs)("div",{style:{fontSize:10,color:"#777",marginTop:2,whiteSpace:"normal",overflow:"hidden",textOverflow:"ellipsis",lineHeight:1.35},children:[!al&&aj>0&&(0,b.jsxs)("span",{style:{color:"#FFD700"},children:[a4(aj)," asked or connected, so it moved on · "]}),(0,b.jsx)("span",{style:{color:a0},children:"solid orange"})," = top-scored bridge · dashed = other routes",al?" · pick anyone in the list to aim at them instead":at?" · a lit pill is someone’s best way in":" · dot size = ways in"]})]}),as>0&&(0,b.jsx)(bc,{layout:au,selectedKey:ak,tierColors:l,youLabel:aM,isMobile:n,onPick:aq,onPickBridge:ar,mutualsBy:Z,doors:!n&&as>=640,cards:at}),as>0&&al&&(0,b.jsx)(b.Fragment,{children:ao.length>0&&(0,b.jsxs)("div",{style:{height:aw,display:"flex",alignItems:"center",gap:6,overflow:"hidden"},children:[(0,b.jsx)("span",{style:{fontSize:10,color:"#666",textTransform:"uppercase",letterSpacing:.5,flexShrink:0},children:"Next"}),ao.map(a=>{let c;return(0,b.jsxs)("button",{type:"button",onClick:()=>aq(a),title:`Aim at ${a.person.name}`,style:{height:26,padding:"0 10px",borderRadius:13,cursor:"pointer",flexShrink:1,minWidth:0,fontSize:11,fontWeight:600,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",border:`1px solid ${l[a.tier]||"#888"}55`,background:"rgba(255,255,255,0.03)",color:"#ccc"},children:[(0,P.shortName)(a.person.name),(0,b.jsx)("span",{style:{marginLeft:5,color:l[a.tier]||"#888",fontWeight:700},children:a.score.toFixed(1)}),(0,b.jsx)("span",{style:{marginLeft:5,color:"#667",fontWeight:500},children:1===(c=Math.max(Z.get(a.key)?.count||0,a.waysIn))?"1 mutual":`${a4(c)} mutuals`})]},a.key)})]})})]}),ad.length>0&&!n&&(0,b.jsxs)("div",{style:{height:44,display:"flex",alignItems:"center",gap:10,padding:"0 12px 0 15px",boxSizing:"border-box",borderTop:"1px solid rgba(255,255,255,0.06)"},children:[(0,b.jsx)("span",{style:{fontSize:15,fontWeight:800},children:"Ranked by reach"}),(0,b.jsxs)("span",{style:{fontSize:11,fontWeight:800,color:"#000",background:"#FFD700",borderRadius:10,padding:"2px 8px"},children:[a4(ad.length),aJ?` of ${a4(aI.people)}`:""]}),(0,b.jsxs)("span",{style:{marginLeft:"auto",fontSize:11,color:"#777"},children:["order follows the slider · ",(0,b.jsx)("span",{style:{color:aL},children:aK.name.toLowerCase()})]})]}),ad.length>0&&(0,b.jsxs)("div",{style:{height:28,display:"grid",alignItems:"center",gap:10,padding:"0 12px 0 15px",gridTemplateColumns:n?"44px 36px 1fr 44px":a3,fontSize:9,fontWeight:700,color:"#555",textTransform:"uppercase",letterSpacing:.5,borderBottom:"1px solid rgba(255,255,255,0.08)",boxSizing:"border-box"},children:[(0,b.jsx)("span",{title:"Rank by score, then ways in. = means tied",children:"#"}),(0,b.jsx)("span",{}),n?(0,b.jsx)("span",{children:"Person · way in"}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{children:"Person"}),(0,b.jsx)("span",{children:"Way in"}),(0,b.jsx)("span",{title:bt,children:"How rare the way in"}),(0,b.jsx)("span",{style:{textAlign:"right"},children:"Power"})]}),n&&(0,b.jsx)("span",{style:{textAlign:"right"},children:"Score"})]}),aN.map((a,c)=>(0,b.jsx)(bu,{p:a,top:az+(aB+c)*p,height:p,isMobile:n,selected:a.key===ak,tierColors:l,onPick:aq,q:u,status:af(a),rarity:Z.get(a.key)},a.key)),0===ad.length&&(0,b.jsxs)("div",{style:{position:"absolute",top:40,left:0,right:0,textAlign:"center",color:"#888",fontSize:13,padding:"0 16px"},children:[u?(0,b.jsxs)(b.Fragment,{children:["No one matches ‘",s.trim(),"’. Search covers names, headlines, companies and who knows them."]}):(0,b.jsx)(b.Fragment,{children:"No one here with those filters."}),(0,b.jsx)("div",{style:{marginTop:12},children:(0,b.jsx)("button",{type:"button",onClick:()=>{t(""),z("all"),B(new Set),D(null),aE()},style:{padding:"8px 16px",borderRadius:8,cursor:"pointer",fontSize:12,fontWeight:700,border:"1px solid rgba(255,255,255,0.15)",background:"rgba(255,255,255,0.06)",color:"#fff"},children:"Clear"})})]})]})})]})},modes:["separation"],label:"Separation",icon:"🏆",desc:"Every 2nd degree, ranked · every way in"},chain:{component:function({connections:a,degree2:d=[],onSelect:f,userName:h,fullDegree1:i,fullDegree2:j,scanNotes:k,canScan:l=!0,chainOpen:m=null,onChainOpened:n,onCircle:o}){let p=(0,c.useRef)(null),[q,r]=(0,c.useState)(null),[s,t]=(0,c.useState)(null),[u,v]=(0,c.useState)({w:800,h:600}),w=i||a,x=j||d,[y,z]=(0,c.useState)(()=>aw(m,w)),[A,B]=(0,c.useState)(m);if(m&&m!==A){B(m);let a=aw(m,w);a.length&&z(a)}(0,c.useEffect)(()=>{m&&n?.()},[m,n]);let C=(0,c.useSyncExternalStore)(l?e.watchScanner:ar,ap,aq),D=(0,c.useSyncExternalStore)(as,at,au),E=(0,g.default)();(0,c.useEffect)(()=>{let a=p.current;if(!a)return;let b=()=>{let b=Math.round(a.clientWidth),c=Math.round(a.clientHeight);v(a=>a.w===b&&a.h===c?a:{w:b,h:c})},c=new ResizeObserver(b);return c.observe(a),b(),()=>c.disconnect()},[]);let F=(0,c.useMemo)(()=>X(w,x),[w,x]),G=(0,c.useMemo)(()=>(0,K.reachIndex)(w,x,k),[w,x,k]),H=(0,c.useMemo)(()=>(0,K.readyByCircle)(G),[G]),J=(0,c.useMemo)(()=>(0,ag.redundancy)(j||d,i||a),[j,d,i,a]),M=(0,c.useMemo)(()=>{let a=new Map;for(let b of x)a.set(b.id,b);for(let b of w)a.set(b.id,b);return a},[w,x]),N=[];for(let a of y){let b=M.get(a);if(!b)break;N.push(b)}let P=N.length>0,Q=N.length?N[N.length-1]:null;(0,c.useEffect)(()=>{o?.(Q)},[Q,o]),(0,c.useEffect)(()=>()=>o?.(null),[o]),(0,c.useEffect)(()=>{if(!P)return;let a=a=>{"Escape"!==a.key||/^(INPUT|TEXTAREA|SELECT)$/.test(a.target?.tagName||"")||document.querySelector('[role="dialog"][aria-modal="true"]')||z(a=>a.slice(0,-1))};return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[P]);let R={};d.forEach(a=>{a.source_connection_id&&(R[a.source_connection_id]||(R[a.source_connection_id]=[]),R[a.source_connection_id].push(a))});let S=a.filter(a=>R[a.id]&&R[a.id].length>0).sort((a,b)=>(R[b.id]?.length||0)-(R[a.id]?.length||0)),T=u.w/2,U=u.h/2,V=Math.min(T,U)-30,W=new Set(S.map(a=>a.id)),Y=new Map;for(let a of S)W.has(a.unlocked_from_bridge_id)&&Y.set(a.unlocked_from_bridge_id,(Y.get(a.unlocked_from_bridge_id)||0)+1);let Z=new Map(S.map(a=>[a.id,a])),$=S.filter(a=>!(a=>{let b=new Set([a.id]);for(let c=a.unlocked_from_bridge_id;W.has(c);c=Z.get(c).unlocked_from_bridge_id){if(b.has(c))return!1;b.add(c)}return W.has(a.unlocked_from_bridge_id)})(a)),_=ad($.length,{inner:.55*V,innerMin:.4*V,outer:.62*V,spacing:46,minSpacing:20,ringGap:62}),aa=$.map((a,b)=>{let c=_.points[b];return{...a,x:T+c.x,y:U+c.y,angle:c.angle,clusterSize:(R[a.id]||[]).length,chains:Y.get(a.id)||0}}),ab=_.rings.length>1,ac=function(a,b=[],c=34){let d=Math.max(0,...b.map(a=>a.radius)),e=Math.max(.66*a,d?d+c:0);return{inner:e,outer:Math.max(.8*a,e+.14*a)}}(V,_.rings),ae=Math.max(.6,Math.min(1.3,Math.min(T,U)/(ac.outer+8))),af=s??ae,ai=(0,c.useRef)([]);(0,c.useEffect)(()=>{ai.current=aa.map(a=>({id:a.id,angle:a.angle}))});let ak=(0,c.useRef)(0);if((0,c.useEffect)(()=>{let a=p.current;if(!a||P)return;let b=(b,c)=>{let d=a.getBoundingClientRect(),e=b-d.left,f=Math.atan2(c-d.top-u.h/2,e-u.w/2),g=null,h=1/0;return ai.current.forEach(a=>{let b=Math.abs(f-a.angle)%(2*Math.PI);b>Math.PI&&(b=2*Math.PI-b),b<h&&(h=b,g=a.id)}),g},c=a=>{if(a.touches[0]){let c=b(a.touches[0].clientX,a.touches[0].clientY);c&&r(c)}},d=a=>{a.preventDefault();let c=Date.now();if(!(c-ak.current<16)&&(ak.current=c,a.touches[0])){let c=b(a.touches[0].clientX,a.touches[0].clientY);c&&r(c)}};return a.addEventListener("touchstart",c,{passive:!1}),a.addEventListener("touchmove",d,{passive:!1}),()=>{a.removeEventListener("touchstart",c),a.removeEventListener("touchmove",d)}},[u,af,P]),P)return(0,b.jsx)("div",{ref:p,style:{flex:1,background:"var(--sd-page)",position:"relative",overflow:"hidden"},children:(0,b.jsx)(aB,{trail:N,index:F,reach:G,dims:u,requests:E,scanningId:C,still:D,canScan:l,onOpen:a=>z(N.map(a=>a.id).concat(a)),onBack:a=>z(N.slice(0,a).map(a=>a.id)),onSelect:f},N.map(a=>a.id).join(">"))});let al=d.length,an=d.filter(a=>"S"===a.tier).length,ao=d.filter(a=>"A"===a.tier).length,ay=q?aa.find(a=>a.id===q):null;return(0,b.jsxs)("div",{ref:p,style:{flex:1,background:"var(--sd-page)",position:"relative",overflow:"hidden"},children:[(0,b.jsx)("svg",{width:u.w,height:u.h,children:(0,b.jsxs)("g",{transform:`translate(${T*(1-af)}, ${U*(1-af)}) scale(${af})`,children:[_.rings.map(a=>(0,b.jsx)("circle",{cx:T,cy:U,r:a.radius,fill:"none",stroke:`${ah[1]}10`,strokeWidth:1},"ring-"+a.radius)),ay&&(0,b.jsx)(ax,{bridge:ay,members:av(ay,F),reach:G,cx:T,cy:U,maxR:V,still:D,band:ac}),aa.map(a=>{var c,d,e;let f,g=q===a.id,h=(R[a.id]||[]).filter(a=>"S"===a.tier).length,i=(R[a.id]||[]).filter(a=>"A"===a.tier).length,j=H.get(a.id)||0;return(0,b.jsxs)("g",{onClick:()=>{r(null),z([a.id])},onMouseEnter:()=>r(a.id),onMouseLeave:()=>r(null),style:{cursor:"pointer"},children:[(0,b.jsx)("title",{children:(c=a,d=j,e=(0,K.scanBars)(a,G),f=[],d&&f.push(`${d} in ${am(c)}’s circle ${1===d?"is":"are"} ready for a scan`),c.chains&&f.push(`${c.chains} scanned since, with ${1===c.chains?"a cluster":"clusters"} of their own`),null!=e&&f.push(5===e?"their whole list is scanned":`about ${20*e}% of their list is scanned`),f.length?f.join(" · "):`${am(c)}’s circle`)}),(0,b.jsx)("circle",{cx:a.x,cy:a.y,r:g?21:18,fill:`${O.TIER_COLORS[a.tier]}${g?"14":"08"}`}),(0,b.jsxs)("g",{transform:`translate(${a.x} ${a.y})`,pointerEvents:"none",children:[a.chains+j===0&&(0,b.jsx)("circle",{r:(g?13:11)+3.6,fill:"none",stroke:L,strokeWidth:1}),(function(a,{formed:b=0,ready:c=0}={},d=12){let e=Math.max(0,b)+Math.max(0,c);if(!e)return[];let f=Math.min(e,d),g=b>0?Math.max(1,Math.round(f*b/e)):0;c>0&&g>=f&&(g=f-1);let h=1===f?.5:Math.min(.32,2*Math.PI/f*.35),i=2*Math.PI/f-h,j=b=>`${(a*Math.cos(b)).toFixed(2)} ${(a*Math.sin(b)).toFixed(2)}`;return Array.from({length:f},(b,c)=>{let d=-Math.PI/2+h/2+c*(i+h);return{kind:c<g?"formed":"ready",d:`M${j(d)} A${a} ${a} 0 ${+(i>Math.PI)} 1 ${j(d+i)}`}})})((g?13:11)+3.6,{formed:a.chains,ready:j}).map((a,c)=>(0,b.jsx)("path",{d:a.d,fill:"none",strokeLinecap:"round",strokeWidth:2,stroke:"ready"===a.kind?aj:ah[2]},c))]}),(0,b.jsx)("circle",{cx:a.x,cy:a.y,r:g?13:11,fill:(0,I.localPhoto)(a.profile_image_url)?"#1a1a2e":O.TIER_COLORS[a.tier],stroke:g?"#fff":O.TIER_COLORS[a.tier],strokeWidth:g?2.5:2}),(0,I.localPhoto)(a.profile_image_url)&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("clipPath",{id:"bc-"+a.id,children:(0,b.jsx)("circle",{cx:a.x,cy:a.y,r:g?11:9})}),(0,b.jsx)("image",{href:(0,I.localPhoto)(a.profile_image_url),x:a.x-(g?11:9),y:a.y-(g?11:9),width:g?22:18,height:g?22:18,clipPath:`url(#bc-${a.id})`})]}),!(0,I.localPhoto)(a.profile_image_url)&&(0,b.jsx)("text",{x:a.x,y:a.y+4,textAnchor:"middle",fill:"S"===a.tier?"#000":"#fff",fontSize:11,fontWeight:700,children:a.name?.charAt(0)}),j>0&&(0,b.jsxs)("g",{pointerEvents:"none",children:[(0,b.jsx)("circle",{cx:a.x+14,cy:a.y-14,r:6,fill:"var(--sd-bg)",stroke:aj,strokeWidth:1.2}),(0,b.jsx)("text",{x:a.x+14,y:a.y-11.4,textAnchor:"middle",fill:aj,fontSize:j>9?6:7,fontWeight:800,children:j>99?"99+":j})]}),(0,b.jsx)("text",{x:a.x,y:a.y+(g?24:22),textAnchor:"middle",fill:"#fff",fontSize:9,fontWeight:600,children:a.name?.split(" ")[0]}),(!ab||g)&&(0,b.jsxs)("text",{x:a.x,y:a.y+(g?34:32),textAnchor:"middle",fill:g?"#bbb":"#888",fontSize:7,children:[a.clusterSize," · ",h>0?h+"S ":"",i>0?i+"A":""]})]},"b-"+a.id)}),(0,b.jsx)("circle",{cx:T,cy:U,r:22,fill:"var(--sd-bg)",stroke:"#FFD700",strokeWidth:3}),(0,b.jsx)("text",{x:T,y:U+4,textAnchor:"middle",fill:"#FFD700",fontSize:11,fontWeight:800,children:h?.split(" ")[0]||"YOU"})]})}),(0,b.jsx)(aA,{onIn:()=>t(a=>Math.min(3,(a??ae)+.3)),onReset:()=>t(null),onOut:()=>t(a=>Math.max(.4,(a??ae)-.3))}),(0,b.jsxs)("div",{style:{position:"absolute",bottom:16,left:12,background:"rgba(0,0,0,0.75)",borderRadius:10,padding:"10px 14px",backdropFilter:"blur(12px)",border:"1px solid rgba(255,255,255,0.06)",maxWidth:"calc(100vw - 80px)"},children:[(0,b.jsx)("div",{style:{fontSize:9,fontWeight:700,color:"#666",letterSpacing:1.5,marginBottom:8},children:"DEGREES OF SEPARATION"}),(0,b.jsx)("div",{style:{display:"flex",gap:8},children:[1,2,3,4,5,6].map(c=>(0,b.jsxs)("div",{style:{textAlign:"center"},children:[(0,b.jsxs)("div",{style:{width:28,height:28,borderRadius:"50%",fontSize:11,fontWeight:800,display:"flex",alignItems:"center",justifyContent:"center",background:c<=2?ah[c]:"rgba(255,255,255,0.04)",color:c<=2?"#000":"#333",border:c<=2?"none":"1px solid rgba(255,255,255,0.08)",boxShadow:c<=2?`0 0 6px ${ah[c]}30`:"none"},children:["D",c]}),(0,b.jsx)("div",{style:{fontSize:7,color:c<=2?"#aaa":"#333",marginTop:3},children:1===c?a.length:2===c?al:"—"})]},c))}),(0,b.jsxs)("div",{style:{fontSize:9,color:"#555",marginTop:8},children:[$.length," bridges",S.length>$.length?` + ${S.length-$.length} along their chains`:""," · ",an," S + ",ao," A at 2nd degree"]}),J>0&&(0,b.jsxs)("div",{style:{fontSize:9,color:"#555",marginTop:4},title:"The share of everyone you reach through a circle that more than one of your connections reaches",children:[Math.round(100*J),"% of your 2nd degree you reach two or more ways"]}),(0,b.jsx)("div",{style:{fontSize:8,color:"#444",marginTop:4},children:"Click a bridge to open their circle, then anyone in it to open theirs"})]})]})},modes:["degrees"],label:"Bridge Chains",icon:"🔗",desc:"Your bridges, and the chains that lead on from them"},rings:{component:function({connections:a,degree2:d=[],onSelect:e,mode:f}){let[g,h]=(0,c.useState)(null);if("degrees"===f&&d.length>0){let c={};d.forEach(a=>{a.source_connection_id&&(c[a.source_connection_id]||(c[a.source_connection_id]=[]),c[a.source_connection_id].push(a))});let f=Object.entries(c).map(([b,c])=>{let d=a.find(a=>a.id===b);if(!d)return null;let e=c.filter(a=>"S"===a.tier).length,f=c.filter(a=>"A"===a.tier).length;return{bridge:d,members:c,sCount:e,aCount:f,total:c.length,value:3*e+2*f+c.length}}).filter(Boolean).sort((a,b)=>b.value-a.value),i={S:36,A:28,B:22,C:16,D:12};return(0,b.jsx)("div",{style:{flex:1,overflow:"auto",background:"var(--sd-page)",padding:"20px 10px"},children:(0,b.jsx)("div",{style:{maxWidth:1200,margin:"0 auto"},children:f.map((a,c)=>{let d={};return aP.forEach(a=>{d[a]=[]}),a.members.forEach(a=>{(d[a.tier]||d.D).push(a)}),aP.forEach(a=>{d[a].sort((a,b)=>(parseFloat(b.power_score)||0)-(parseFloat(a.power_score)||0))}),(0,b.jsxs)("div",{style:{marginBottom:30},children:[(0,b.jsx)("div",{style:{textAlign:"center",marginBottom:12},children:(0,b.jsxs)("div",{onClick:()=>e&&e(a.bridge),onMouseEnter:()=>h(a.bridge.id),onMouseLeave:()=>h(null),style:{display:"inline-block",cursor:"pointer",position:"relative"},children:[(0,b.jsx)("div",{style:{width:56,height:56,borderRadius:"50%",margin:"0 auto",border:`3px solid ${O.TIER_COLORS[a.bridge.tier]}`,overflow:"hidden",background:"#1a1a2e",boxShadow:g===a.bridge.id?`0 0 20px ${O.TIER_COLORS[a.bridge.tier]}60`:`0 0 10px ${O.TIER_COLORS[a.bridge.tier]}20`,transition:"box-shadow 0.2s"},children:(0,I.localPhoto)(a.bridge.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(a.bridge.profile_image_url),alt:"",style:{width:"100%",height:"100%",objectFit:"cover"}}):(0,b.jsx)("div",{style:{width:"100%",height:"100%",display:"flex",alignItems:"center",justifyContent:"center",background:O.TIER_COLORS[a.bridge.tier],color:"S"===a.bridge.tier?"#000":"#fff",fontSize:20,fontWeight:800},children:a.bridge.name?.charAt(0)})}),(0,b.jsx)("div",{style:{fontSize:12,fontWeight:700,color:"#fff",marginTop:4},children:a.bridge.name}),(0,b.jsxs)("div",{style:{fontSize:9,color:O.TIER_COLORS[a.bridge.tier],fontWeight:600},children:[a.bridge.tier,"-Tier · ",a.total," connections · ",a.sCount>0?a.sCount+"S ":"",a.aCount>0?a.aCount+"A":""]})]})}),aP.map(a=>{let c=d[a];if(0===c.length)return null;let f=i[a],j="S"===a?10:"A"===a?6:4;return(0,b.jsxs)("div",{style:{marginBottom:6},children:[(0,b.jsx)("div",{style:{display:"flex",flexWrap:"wrap",justifyContent:"center",gap:j},children:c.map(c=>{let d=g===c.id;return(0,b.jsxs)("div",{onClick:()=>e&&e(c),onMouseEnter:()=>h(c.id),onMouseLeave:()=>h(null),style:{position:"relative",cursor:"pointer"},children:[(0,b.jsx)("div",{style:{width:f,height:f,borderRadius:"50%",border:`2px solid ${O.TIER_COLORS[a]}`,overflow:"hidden",background:(0,I.localPhoto)(c.profile_image_url)?"#111":O.TIER_COLORS[a],transition:"transform 0.15s, box-shadow 0.15s",transform:d?"scale(1.3)":"scale(1)",boxShadow:d?`0 0 12px ${O.TIER_COLORS[a]}60`:"none"},children:(0,I.localPhoto)(c.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(c.profile_image_url),alt:"",style:{width:"100%",height:"100%",objectFit:"cover"},onError:b=>{b.target.style.display="none",b.target.parentElement.style.background=O.TIER_COLORS[a]}}):(0,b.jsx)("span",{style:{display:"flex",width:"100%",height:"100%",alignItems:"center",justifyContent:"center",fontSize:.4*f,fontWeight:700,color:"S"===a?"#000":"#fff"},children:c.name?.charAt(0)})}),("S"===a||d)&&(0,b.jsx)("div",{style:{position:"absolute",top:f+2,left:"50%",transform:"translateX(-50%)",whiteSpace:"nowrap",textAlign:"center",zIndex:20,pointerEvents:"none"},children:(0,b.jsxs)("div",{style:{fontSize:d?10:8,fontWeight:600,color:d?"#fff":"#aaa",background:d?"rgba(0,0,0,0.85)":"transparent",padding:d?"3px 8px":0,borderRadius:4},children:[c.name?.split(" ")[0],d&&(0,b.jsx)("span",{style:{color:O.TIER_COLORS[a],marginLeft:4},children:parseFloat(c.power_score||0).toFixed(1)})]})})]},c.id)})}),(0,b.jsx)("div",{style:{height:1,margin:"6px auto 0",width:`${40+10*aP.indexOf(a)}%`,background:`linear-gradient(90deg, transparent, ${O.TIER_COLORS[a]}20, transparent)`}})]},a)})]},a.bridge.id)})})})}let i={};aP.forEach(a=>{i[a]=[]}),a.forEach(a=>{let b=a.tier||"D";i[b]&&i[b].push(a)}),aP.forEach(a=>{i[a].sort((a,b)=>(parseFloat(b.power_score)||0)-(parseFloat(a.power_score)||0))});let j={S:44,A:34,B:26,C:20,D:16};return(0,b.jsx)("div",{style:{flex:1,overflow:"auto",background:"var(--sd-page)",padding:"20px 10px"},children:(0,b.jsx)("div",{style:{maxWidth:1200,margin:"0 auto"},children:aP.map((a,c)=>{let d=i[a];if(0===d.length)return null;let f=j[a],k="S"===a?12:"A"===a?8:"B"===a?6:4;return(0,b.jsxs)("div",{style:{marginBottom:"S"===a?20:"A"===a?16:10},children:[(0,b.jsxs)("div",{style:{textAlign:"center",marginBottom:8,fontSize:"S"===a?14:11,fontWeight:700,color:O.TIER_COLORS[a],opacity:"S"===a?1:.7},children:["S"===a&&"👑 ",a,"-Tier (",d.length,")"]}),(0,b.jsx)("div",{style:{display:"flex",flexWrap:"wrap",justifyContent:"center",gap:k,padding:"0 20px"},children:d.map(c=>{let d=g===c.id;return(0,b.jsxs)("div",{onClick:()=>e&&e(c),onMouseEnter:()=>h(c.id),onMouseLeave:()=>h(null),style:{position:"relative",cursor:"pointer"},children:[(0,b.jsx)("div",{style:{width:f,height:f,borderRadius:"50%",border:`2px solid ${O.TIER_COLORS[a]}`,overflow:"hidden",background:(0,I.localPhoto)(c.profile_image_url)?"#111":O.TIER_COLORS[a],display:"flex",alignItems:"center",justifyContent:"center",transition:"transform 0.15s, box-shadow 0.15s",transform:d?"scale(1.3)":"scale(1)",boxShadow:d?`0 0 16px ${O.TIER_COLORS[a]}60`:"none",zIndex:d?10:1,position:"relative"},children:(0,I.localPhoto)(c.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(c.profile_image_url),alt:"",style:{width:"100%",height:"100%",objectFit:"cover"},onError:b=>{b.target.style.display="none",b.target.parentElement.style.background=O.TIER_COLORS[a]}}):(0,b.jsx)("span",{style:{fontSize:.4*f,fontWeight:700,color:"S"===a?"#000":"#fff"},children:c.name?.charAt(0)})}),("S"===a||d)&&(0,b.jsxs)("div",{style:{position:"absolute",top:f+4,left:"50%",transform:"translateX(-50%)",whiteSpace:"nowrap",textAlign:"center",zIndex:20,pointerEvents:"none"},children:[(0,b.jsxs)("div",{style:{fontSize:"S"===a?9:10,fontWeight:600,color:d?"#fff":"#aaa",background:d?"rgba(0,0,0,0.85)":"transparent",padding:d?"3px 8px":0,borderRadius:4},children:[c.name?.split(" ")[0],d&&(0,b.jsx)("span",{style:{color:O.TIER_COLORS[a],marginLeft:4,fontWeight:800},children:parseFloat(c.power_score||0).toFixed(1)})]}),d&&c.headline&&(0,b.jsx)("div",{style:{fontSize:8,color:"#888",marginTop:2,background:"rgba(0,0,0,0.85)",padding:"2px 6px",borderRadius:3,maxWidth:160,overflow:"hidden",textOverflow:"ellipsis"},children:c.headline.substring(0,40)})]})]},c.id)})}),c<aP.length-1&&(0,b.jsx)("div",{style:{height:1,margin:"12px auto 0",width:`${50+12*c}%`,background:`linear-gradient(90deg, transparent, ${O.TIER_COLORS[a]}30, transparent)`}})]},a)})})})},modes:["degrees"],label:"Pyramid",icon:"🔺",desc:"Tier hierarchy"},list:{component:function({connections:a,degree2:c=[],onSelect:d,mode:e}){if("degrees"===e){let e={};c.forEach(a=>{a.source_connection_id&&(e[a.source_connection_id]||(e[a.source_connection_id]=[]),e[a.source_connection_id].push(a))});let f=Object.entries(e).map(([b,c])=>{let d=a.find(a=>a.id===b);if(!d)return null;let e=c.filter(a=>"S"===a.tier).length,f=c.filter(a=>"A"===a.tier).length,g=3*e+2*f+c.length;return{bridge:d,members:c,sCount:e,aCount:f,total:c.length,value:g}}).filter(Boolean).sort((a,b)=>b.value-a.value);return(0,b.jsx)("div",{style:{flex:1,overflow:"auto",padding:"16px 24px",background:"var(--sd-page)"},children:(0,b.jsxs)("div",{style:{maxWidth:800,margin:"0 auto"},children:[(0,b.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"40px 1fr 50px 50px 50px 80px",gap:8,padding:"8px 12px",fontSize:9,fontWeight:700,color:"#555",borderBottom:"1px solid rgba(255,255,255,0.1)",textTransform:"uppercase",letterSpacing:.5},children:[(0,b.jsx)("span",{children:"#"}),(0,b.jsx)("span",{children:"Bridge"}),(0,b.jsx)("span",{children:"S"}),(0,b.jsx)("span",{children:"A"}),(0,b.jsx)("span",{children:"Total"}),(0,b.jsx)("span",{children:"Value"})]}),f.map((a,c)=>(0,b.jsxs)("div",{onClick:()=>d&&d(a.bridge),style:{display:"grid",gridTemplateColumns:"40px 1fr 50px 50px 50px 80px",gap:8,padding:"10px 12px",alignItems:"center",cursor:"pointer",borderBottom:"1px solid rgba(255,255,255,0.04)",transition:"background 0.1s"},onMouseEnter:a=>a.currentTarget.style.background="rgba(255,255,255,0.04)",onMouseLeave:a=>a.currentTarget.style.background="transparent",children:[(0,b.jsx)("span",{style:{fontSize:12,fontWeight:700,color:"#444"},children:c+1}),(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,minWidth:0},children:[(0,I.localPhoto)(a.bridge.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(a.bridge.profile_image_url),alt:"",style:{width:28,height:28,borderRadius:"50%",objectFit:"cover",flexShrink:0,border:`2px solid ${O.TIER_COLORS[a.bridge.tier]}`},onError:a=>{a.target.style.display="none"}}):(0,b.jsx)("div",{style:{width:28,height:28,borderRadius:"50%",flexShrink:0,fontSize:10,fontWeight:700,background:O.TIER_COLORS[a.bridge.tier],color:"#000",display:"flex",alignItems:"center",justifyContent:"center"},children:a.bridge.name?.charAt(0)}),(0,b.jsxs)("div",{style:{minWidth:0},children:[(0,b.jsx)("div",{style:{fontSize:12,fontWeight:600,color:"#fff",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.bridge.name}),(0,b.jsxs)("div",{style:{fontSize:9,color:O.TIER_COLORS[a.bridge.tier],fontWeight:600},children:[a.bridge.tier,"-Tier"]})]})]}),(0,b.jsx)("span",{style:{fontSize:13,fontWeight:800,color:"#FFD700"},children:a.sCount}),(0,b.jsx)("span",{style:{fontSize:13,fontWeight:700,color:"#9B59B6"},children:a.aCount}),(0,b.jsx)("span",{style:{fontSize:12,color:"#888"},children:a.total}),(0,b.jsx)("div",{children:(0,b.jsx)("div",{style:{height:6,background:"rgba(255,255,255,0.06)",borderRadius:3},children:(0,b.jsx)("div",{style:{height:"100%",borderRadius:3,background:`linear-gradient(90deg, ${O.TIER_COLORS[a.bridge.tier]}, #FF6B35)`,width:`${Math.min(100,a.value/Math.max(f[0]?.value||1,1)*100)}%`}})})})]},a.bridge.id))]})})}let f=[...a].sort((a,b)=>(parseFloat(b.power_score)||0)-(parseFloat(a.power_score)||0)),g=parseFloat(f[0]?.power_score)||10;return(0,b.jsx)("div",{style:{flex:1,overflow:"auto",padding:"16px 24px",background:"var(--sd-page)"},children:(0,b.jsxs)("div",{style:{maxWidth:800,margin:"0 auto"},children:[(0,b.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"40px 36px 1fr 60px 120px",gap:8,padding:"8px 12px",fontSize:9,fontWeight:700,color:"#555",borderBottom:"1px solid rgba(255,255,255,0.1)",textTransform:"uppercase",letterSpacing:.5},children:[(0,b.jsx)("span",{children:"#"}),(0,b.jsx)("span",{}),(0,b.jsx)("span",{children:"Name"}),(0,b.jsx)("span",{children:"Score"}),(0,b.jsx)("span",{children:"Power"})]}),f.map((a,c)=>(0,b.jsxs)("div",{onClick:()=>d&&d(a),style:{display:"grid",gridTemplateColumns:"40px 36px 1fr 60px 120px",gap:8,padding:"8px 12px",alignItems:"center",cursor:"pointer",borderBottom:"1px solid rgba(255,255,255,0.04)",background:c<3?`${O.TIER_COLORS[a.tier]}08`:"transparent",transition:"background 0.1s"},onMouseEnter:a=>a.currentTarget.style.background="rgba(255,255,255,0.04)",onMouseLeave:b=>b.currentTarget.style.background=c<3?`${O.TIER_COLORS[a.tier]}08`:"transparent",children:[(0,b.jsx)("span",{style:{fontSize:12,fontWeight:700,color:c<3?O.TIER_COLORS[a.tier]:"#444"},children:c+1}),(0,I.localPhoto)(a.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(a.profile_image_url),alt:"",style:{width:28,height:28,borderRadius:"50%",objectFit:"cover",border:`2px solid ${O.TIER_COLORS[a.tier]}`},onError:a=>{a.target.style.display="none"}}):(0,b.jsx)("div",{style:{width:28,height:28,borderRadius:"50%",fontSize:10,fontWeight:700,background:O.TIER_COLORS[a.tier],color:"S"===a.tier?"#000":"#fff",display:"flex",alignItems:"center",justifyContent:"center"},children:a.name?.charAt(0)}),(0,b.jsxs)("div",{style:{minWidth:0},children:[(0,b.jsx)("div",{style:{fontSize:12,fontWeight:600,color:"#fff",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.name}),(0,b.jsx)("div",{style:{fontSize:9,color:"#666",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.headline?.substring(0,45)})]}),(0,b.jsxs)("div",{style:{textAlign:"center"},children:[(0,b.jsx)("span",{style:{fontSize:13,fontWeight:800,color:O.TIER_COLORS[a.tier]},children:parseFloat(a.power_score||0).toFixed(1)}),(0,b.jsx)("div",{style:{fontSize:8,color:"#555"},children:a.tier})]}),(0,b.jsx)("div",{style:{height:6,background:"rgba(255,255,255,0.06)",borderRadius:3},children:(0,b.jsx)("div",{style:{height:"100%",borderRadius:3,background:O.TIER_COLORS[a.tier],width:`${parseFloat(a.power_score||0)/g*100}%`}})})]},a.id))]})})},modes:["degrees"],label:"List",icon:"☰",desc:"Ranked power list"},grid:{component:function({connections:a,degree2:c=[],onSelect:d,mode:e}){if("degrees"===e){let e={};c.forEach(a=>{a.source_connection_id&&(e[a.source_connection_id]||(e[a.source_connection_id]=[]),e[a.source_connection_id].push(a))});let f=Object.entries(e).map(([b,c])=>{let d=a.find(a=>a.id===b);if(!d)return null;let e=c.filter(a=>"S"===a.tier).length,f=c.filter(a=>"A"===a.tier).length;return{bridge:d,members:c,sCount:e,aCount:f,total:c.length}}).filter(Boolean).sort((a,b)=>3*b.sCount+2*b.aCount+b.total-(3*a.sCount+2*a.aCount+a.total));return(0,b.jsx)("div",{style:{flex:1,overflow:"auto",padding:20,background:"var(--sd-page)"},children:(0,b.jsx)("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(240px, 1fr))",gap:12,maxWidth:1200,margin:"0 auto"},children:f.map(a=>(0,b.jsxs)("div",{onClick:()=>d&&d(a.bridge),style:{padding:16,borderRadius:12,cursor:"pointer",background:"rgba(255,255,255,0.03)",border:`1px solid ${O.TIER_COLORS[a.bridge.tier]||"#333"}30`,borderLeft:`4px solid ${O.TIER_COLORS[a.bridge.tier]||"#555"}`,transition:"all 0.15s"},onMouseEnter:a=>a.currentTarget.style.background="rgba(255,255,255,0.06)",onMouseLeave:a=>a.currentTarget.style.background="rgba(255,255,255,0.03)",children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,marginBottom:10},children:[(0,I.localPhoto)(a.bridge.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(a.bridge.profile_image_url),alt:"",style:{width:40,height:40,borderRadius:"50%",objectFit:"cover",border:`2px solid ${O.TIER_COLORS[a.bridge.tier]}`},onError:a=>{a.target.style.display="none"}}):(0,b.jsx)("div",{style:{width:40,height:40,borderRadius:"50%",fontSize:16,fontWeight:700,background:O.TIER_COLORS[a.bridge.tier],color:"#000",display:"flex",alignItems:"center",justifyContent:"center"},children:a.bridge.name?.charAt(0)}),(0,b.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,b.jsx)("div",{style:{fontSize:13,fontWeight:700,color:"#fff"},children:a.bridge.name}),(0,b.jsx)("div",{style:{fontSize:9,color:"#666",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.bridge.headline?.substring(0,40)})]}),(0,b.jsx)("span",{style:{fontSize:12,fontWeight:800,color:O.TIER_COLORS[a.bridge.tier]},children:a.bridge.tier})]}),(0,b.jsxs)("div",{style:{display:"flex",gap:6,fontSize:10},children:[a.sCount>0&&(0,b.jsxs)("span",{style:{color:"#FFD700",fontWeight:600},children:[a.sCount,"S"]}),a.aCount>0&&(0,b.jsxs)("span",{style:{color:"#9B59B6",fontWeight:600},children:[a.aCount,"A"]}),(0,b.jsxs)("span",{style:{color:"#666"},children:[a.total," total"]})]}),(0,b.jsxs)("div",{style:{display:"flex",marginTop:8},children:[a.members.slice(0,8).map((a,c)=>(0,b.jsx)("div",{style:{width:22,height:22,borderRadius:"50%",fontSize:8,fontWeight:700,background:(0,I.localPhoto)(a.profile_image_url)?"transparent":O.TIER_COLORS[a.tier]||"#333",color:"#fff",display:"flex",alignItems:"center",justifyContent:"center",border:"2px solid var(--sd-bg)",marginLeft:c>0?-6:0,position:"relative",zIndex:8-c,overflow:"hidden"},children:(0,I.localPhoto)(a.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(a.profile_image_url),alt:"",style:{width:"100%",height:"100%",objectFit:"cover"}}):a.name?.charAt(0)},a.id)),a.total>8&&(0,b.jsxs)("span",{style:{fontSize:9,color:"#555",marginLeft:4,alignSelf:"center"},children:["+",a.total-8]})]})]},a.bridge.id))})})}let f={};return aO.forEach(a=>{f[a]=[]}),a.forEach(a=>{let b=a.tier||"D";f[b]&&f[b].push(a)}),aO.forEach(a=>{f[a].sort((a,b)=>(parseFloat(b.power_score)||0)-(parseFloat(a.power_score)||0))}),(0,b.jsx)("div",{style:{flex:1,overflow:"auto",padding:20,background:"var(--sd-page)"},children:(0,b.jsx)("div",{style:{maxWidth:1200,margin:"0 auto"},children:aO.map(a=>{let c=f[a];return 0===c.length?null:(0,b.jsxs)("div",{style:{marginBottom:24},children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,padding:"8px 0 10px",borderBottom:`2px solid ${O.TIER_COLORS[a]}30`,marginBottom:10},children:[(0,b.jsx)("div",{style:{width:10,height:10,borderRadius:"50%",background:O.TIER_COLORS[a]}}),(0,b.jsxs)("span",{style:{fontSize:15,fontWeight:800,color:O.TIER_COLORS[a]},children:[a,"-Tier"]}),(0,b.jsx)("span",{style:{fontSize:12,color:"#555"},children:c.length})]}),(0,b.jsx)("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(180px, 1fr))",gap:8},children:c.map(c=>(0,b.jsxs)("div",{onClick:()=>d&&d(c),style:{padding:10,borderRadius:8,cursor:"pointer",background:"rgba(255,255,255,0.03)",border:`1px solid ${O.TIER_COLORS[a]}20`,transition:"all 0.15s"},onMouseEnter:a=>a.currentTarget.style.background="rgba(255,255,255,0.06)",onMouseLeave:a=>a.currentTarget.style.background="rgba(255,255,255,0.03)",children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8},children:[(0,I.localPhoto)(c.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(c.profile_image_url),alt:"",style:{width:32,height:32,borderRadius:"50%",objectFit:"cover",border:`2px solid ${O.TIER_COLORS[a]}`},onError:a=>{a.target.style.display="none"}}):(0,b.jsx)("div",{style:{width:32,height:32,borderRadius:"50%",fontSize:12,fontWeight:700,background:O.TIER_COLORS[a],color:"S"===a?"#000":"#fff",display:"flex",alignItems:"center",justifyContent:"center"},children:c.name?.charAt(0)}),(0,b.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,b.jsx)("div",{style:{fontSize:11,fontWeight:600,color:"#fff",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:c.name}),(0,b.jsx)("div",{style:{fontSize:8,color:"#666",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:c.headline?.substring(0,30)})]})]}),(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",marginTop:6,alignItems:"center"},children:[(0,b.jsx)("span",{style:{fontSize:10,fontWeight:700,color:O.TIER_COLORS[a]},children:parseFloat(c.power_score||0).toFixed(1)}),(0,b.jsx)("div",{style:{flex:1,marginLeft:8,height:3,background:"rgba(255,255,255,0.08)",borderRadius:2},children:(0,b.jsx)("div",{style:{height:"100%",borderRadius:2,background:O.TIER_COLORS[a],width:`${Math.min(100,10*(parseFloat(c.power_score)||0))}%`}})})]})]},c.id))})]},a)})})})},modes:["network","degrees"],label:"Grid",icon:"▦",desc:"Cards"}},bw=["galaxy","chain","separation","rings","list"];function bx(a){return bw.filter(b=>bv[b]?.modes.includes(a)).map(a=>({key:a,...bv[a]}))}var by=a.i(74994),bz=a.i(35112),bA=a.i(30889);let bB=/\/10, (your|sample) score\)/,bC=/^(?:Former )?(?:Student · )?(.+?) \([\d.]+\) · (no company found|.+?) \(\d+(?:\.\d+)?\/10(?:[:,][^)]*)?\)/,bD=O.TIER_COLORS,bE=["S","A","B","C","D"],bF="#00ff88";function bG({person:a,connections:d=[],degree2:e=[],tierColors:f=bD,onSelect:g,isRequested:h=W,canScan:i=!0}){let j=(0,c.useMemo)(()=>X(d,e),[d,e]),k=(0,c.useMemo)(()=>(0,P.routeIndex)(e),[e]),{rings:l,totals:m}=(0,c.useMemo)(()=>(function(a,b,{maxDegree:c=6,isRequested:d=W}={}){let e=[],f={people:0,connected:0,requested:0};if(!a||!b)return{rings:e,totals:f};let g=new Set([(0,P.keyFor)(a)]),h=[a];for(let a=2;a<=c&&h.length;a++){let c=[],i=[];for(let a of h){let e=[];for(let c of b.introduced.get(a.id)||[]){let b=(0,P.keyFor)(c);g.has(b)||(g.add(b),e.push({row:c,key:b,parentId:a.id,state:"connected"}),i.push(c))}for(let c of b.circles.get(a.id)||[]){let b=(0,P.keyFor)(c);g.has(b)||(g.add(b),e.push({row:c,key:b,parentId:a.id,state:d(c)?"requested":null}))}e.sort(Z),c.push(...e)}if(!c.length)break;for(let a of c)f.people++,"connected"===a.state?f.connected++:"requested"===a.state&&f.requested++;e.push({degree:a,people:c}),h=i}return{rings:e,totals:f}})(a,j,{isRequested:h}),[a,j,h]),[n,o]=(0,c.useState)(()=>new Set),[p,q]=(0,c.useState)(()=>new Set),[r,s]=(0,c.useState)(!1),t=(0,c.useMemo)(()=>l.flatMap(a=>a.people.map(a=>{let b="connected"===a.state||1===a.row.degree?null:aU(a.row,k.get((0,P.keyFor)(a.row))?.size||1);return{key:a.key,tier:a.row.tier,rarity:b?.key??null,mutuals:b}})),[l,k]),u=(0,c.useMemo)(()=>new Map(t.map(a=>[a.key,a])),[t]),v=(0,c.useMemo)(()=>({tiers:n,rarities:p}),[n,p]),w=(0,c.useMemo)(()=>t.filter(a=>aV(a,v)).length,[t,v]),x=(0,c.useMemo)(()=>d.filter(a=>j.circles.has(a.id)).length,[d,j]),y=t.some(a=>a.mutuals?.from==="linkedin"),z=(0,c.useMemo)(()=>(function(a){let b,c,d,e;if(!a)return null;if(null==a.power_score||""===a.power_score||!a.tier)return{title:!1,company:!1,never:!0,companyName:null,reason:"They haven’t been scored yet."};let f=String(a.score_why||"").match(bC);if(f)b=f[1],d=!(c="no company found"===f[2]?null:f[2])||!bB.test(a.score_why)&&!["known","data"].includes((0,bA.companyScore)(c).source);else{let e=(0,bA.scorePerson)(a);b=e.title.label,c=e.company||null,d=["none","default","network"].includes(e.companySource)}let g=b.startsWith("Audience of"),h="Title unclear"===b||b.includes("Works there");return(g&&(d=!1),h||d)?(e=h&&d?c?`Their headline doesn’t say their title, and the app doesn’t know ${c}.`:"Their headline names no title or company the app can read.":h?"Their headline doesn’t say their title.":c?`The app doesn’t know ${c}, so it counts as the middle of the scale.`:"The app couldn’t find where they work.",{title:h,company:d,never:!1,companyName:c,reason:e}):null})(a),[a]);if(!a)return null;if(!l.length){let c=a.name?.split(" ")[0]||"them";return(0,b.jsxs)("div",{style:z?{...bO,borderColor:"rgba(255,215,0,0.28)"}:bO,children:[(0,b.jsx)(bN,{children:"Their circle"}),z?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{style:{fontSize:11.5,color:"#d8ccb0",lineHeight:1.5,marginBottom:9*!!i},children:[(0,b.jsx)("b",{style:{color:"#FFD700"},children:"Their score is a guess."})," ",z.reason,i&&(0,b.jsxs)(b.Fragment,{children:[" Scanning ",c,"'s circle shows who you can reach through them, and a strong circle adds up to +2 to their score."]})]}),i&&(0,b.jsx)("button",{type:"button",onClick:bM,style:{width:"100%",padding:"8px 10px",borderRadius:8,cursor:"pointer",fontSize:12,fontWeight:700,border:"1px solid rgba(255,215,0,0.4)",background:"rgba(255,215,0,0.08)",color:"#FFD700"},children:"Scan their circle ↓"})]}):i?(0,b.jsxs)("div",{style:{fontSize:11,color:"#999",lineHeight:1.5},children:["Not scanned yet. Scan ",c,"'s circle below to see who they know, and everyone you reach through them after that."]}):(0,b.jsx)("div",{style:{fontSize:11,color:"#999",lineHeight:1.5},children:"Not scanned."})]})}let A=Object.fromEntries(bE.map(a=>[a,t.filter(b=>b.tier===a).length])),B=function(a=[]){let b=Object.fromEntries(aR.map(a=>[a.key,0]));for(let c of a)c?.rarity&&void 0!==b[c.rarity]&&b[c.rarity]++;return b}(t),C=n.size>0||p.size>0,D=(0,b.jsx)(bJ,{tierColors:f,byTier:A,byRarity:B,tiers:n,rarities:p,onTier:a=>o(b=>aW(b,a)),onRarity:a=>q(b=>aW(b,a)),onClear:()=>{o(new Set),q(new Set)}}),E=(0,b.jsxs)("div",{style:{fontSize:9.5,color:"#777",lineHeight:1.45,marginTop:6},children:["Rarity is how many mutual connections lead to someone. It never changes a score."," ",y?"LinkedIn’s own count where a scan saved it; otherwise the ways in from your scans.":`Counted from the ${x} ${1===x?"circle":"circles"} you’ve scanned, so it can only go up as you scan more.`]});return(0,b.jsxs)("div",{style:bO,children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"baseline",justifyContent:"space-between",gap:8},children:[(0,b.jsx)(bN,{children:"Their circle"}),(0,b.jsx)("button",{type:"button",onClick:()=>s(!0),style:bQ,"aria-label":"Open the large map",children:"Enlarge ⤢"})]}),(0,b.jsx)("button",{type:"button",onClick:()=>s(!0),"aria-label":`${a.name}'s circle: open the large map`,style:{display:"block",width:"100%",padding:0,border:"none",background:"none",cursor:"zoom-in"},children:(0,b.jsx)(bH,{person:a,rings:l,facts:u,filter:v,tierColors:f,size:240})}),(0,b.jsx)(bI,{rings:l,totals:m,shown:C?w:null}),D,E,r&&(0,b.jsxs)(bL,{onClose:()=>s(!1),title:`${a.name}’s circle`,children:[(0,b.jsx)(bH,{person:a,rings:l,facts:u,filter:v,tierColors:f,size:640,labels:!0,onPick:a=>{s(!1),g?.(a)}}),(0,b.jsx)(bI,{rings:l,totals:m,shown:C?w:null}),D,(0,b.jsx)(bK,{}),E]})]})}function bH({person:a,rings:d,facts:e,filter:f,tierColors:g,size:h,labels:i=!1,onPick:j}){let k=(0,c.useMemo)(()=>(function(a=[],b=240){let c=b/2,d=a.length,e=a=>c*(1===d?.78:.4+a/(d-1)*.52),f=a.map(a=>{let b=new Map;for(let c of a.people)b.has(c.parentId)||b.set(c.parentId,[]),b.get(c.parentId).push(c);return b}),g=(a,b)=>f[a+1]?.get(b)||[],h=new Map;for(let b=d-1;b>=0;b--)for(let c of a[b].people){let a="connected"===c.state?g(b,c.row.id).reduce((a,b)=>a+h.get(b),0):0;h.set(c,Math.max(1,a))}let i=[],j=[],k=new Map,l=-Math.PI/2;for(let m=0;m<d;m++){let n=e(m);a[m].people;let o=Math.max(2.4,b/100),p=m===d-1&&d>1,q=(p?n-e(m-1):(m+1<d?e(m+1):.97*c)-n)*.45,r=Math.max(1,Math.floor(q/o)+1),s=r>1?(p?-1:1)*Math.min(1.2*o,q/(r-1)):0,t=(a,b)=>$(Math.ceil(a*o/Math.max(1e-9,n*b)),1,r),u=1,v=1/0,w=[];for(let[a,b]of f[m]){let[d,e]=0===m?[l,l+2*Math.PI]:k.get(a)||[l,l+2*Math.PI],f=b.reduce((a,b)=>a+h.get(b),0),g=t(b.length,e-d);u=Math.max(u,g),v=Math.min(v,n*(e-d)*g/Math.max(1,b.length));let i=0,j=d;for(let a of b){let b=(e-d)*h.get(a)/f,l=j+b/2,m=n+i++%g*s,o=c+m*Math.cos(l),p=c+m*Math.sin(l);w.push({...a,angle:l,x:o,y:p}),"connected"===a.state&&k.set(a.row.id,[j,j+b]),j+=b}}if(m+1<d){let a=e(m+1);for(let b of w){if("connected"!==b.state||!g(m,b.row.id).length)continue;let[d,e]=k.get(b.row.id),f=(d+e)/2;j.push({x1:b.x,y1:b.y,x2:c+a*Math.cos(f),y2:c+a*Math.sin(f)})}}let x=$(Math.min(.32*v,u>1?.42*Math.abs(s):1/0),.8,b/60);i.push({degree:a[m].degree,radius:n,dotR:x,rows:u,items:w})}return{size:b,center:{x:c,y:c},rings:i,spokes:j}})(d,h),[d,h]),l=k.center,m=h/240;return(0,b.jsxs)("svg",{viewBox:`0 0 ${h} ${h}`,width:"100%",style:{display:"block",maxWidth:h,margin:"0 auto"},role:"img","aria-label":`${a.name}'s circle, ${d.length} ${1===d.length?"ring":"rings"}`,children:[k.rings.map(a=>(0,b.jsxs)("g",{children:[(0,b.jsx)("circle",{cx:l.x,cy:l.y,r:a.radius,fill:"none",stroke:"rgba(255,255,255,0.07)",strokeWidth:.6*m}),(0,b.jsxs)("text",{x:l.x,y:l.y-a.radius-a.dotR-3*m,textAnchor:"middle",fontSize:6.5*m,fill:"#666",fontWeight:700,children:["D",a.degree]})]},a.degree)),k.spokes.map((a,c)=>(0,b.jsx)("line",{x1:a.x1,y1:a.y1,x2:a.x2,y2:a.y2,stroke:"rgba(0,255,136,0.35)",strokeWidth:.7*m},c)),k.rings.map(a=>a.items.map(c=>{let d=e.get(c.key),h=aV(d,f),k=g[c.row.tier]||"#888",l="connected"===c.state?1.7*a.dotR:a.dotR,m=[`${c.row.name} \xb7 ${c.row.tier}-tier${null!=c.row.power_score?` \xb7 ${Number(c.row.power_score).toFixed(1)}`:""}`,"connected"===c.state?"You added them":"requested"===c.state?"Request sent":null,d?.mutuals?`${aT(d.rarity)?.label}: ${d.mutuals.count} mutual${1===d.mutuals.count?"":"s"}${"scans"===d.mutuals.from?" (from your scans)":""}`:null].filter(Boolean).join("\n");return(0,b.jsxs)("g",{opacity:h?1:.12,style:j?{cursor:"pointer"}:void 0,onClick:j?a=>{a.stopPropagation(),j(c.row)}:void 0,children:[(0,b.jsx)("title",{children:m}),"requested"===c.state?(0,b.jsx)("circle",{cx:c.x,cy:c.y,r:1.25*l,fill:"none",stroke:k,strokeWidth:Math.max(.5,.45*l),strokeDasharray:`${Math.max(.6,.55*l)} ${Math.max(.5,.45*l)}`}):(0,b.jsx)("circle",{cx:c.x,cy:c.y,r:l,fill:k,stroke:"connected"===c.state?bF:"none",strokeWidth:Math.max(.6,.3*l)}),i&&"connected"===c.state&&(0,b.jsx)("text",{x:c.x,y:c.y-l-3,textAnchor:"middle",fontSize:9,fill:bF,fontWeight:700,children:String(c.row.name||"").split(" ")[0]})]},c.key)})),(0,b.jsx)("circle",{cx:l.x,cy:l.y,r:7*m,fill:g[a.tier]||"#888",stroke:"#fff",strokeWidth:.8*m}),(0,b.jsx)("text",{x:l.x,y:l.y+2.4*m,textAnchor:"middle",fontSize:6.5*m,fontWeight:800,fill:"S"===a.tier?"#000":"#fff",children:String(a.name||"?").charAt(0)})]})}function bI({rings:a,totals:c,shown:d}){return(0,b.jsxs)("div",{style:{fontSize:10.5,color:"#aaa",marginTop:6,lineHeight:1.5},children:[a.map(a=>`D${a.degree} ${a.people.length.toLocaleString("en-US")}`).join(" · "),c.connected>0&&(0,b.jsxs)("span",{style:{color:bF},children:[" · you added ",c.connected]}),c.requested>0&&(0,b.jsxs)("span",{style:{color:"#FFD700"},children:[" · ",c.requested," ",1===c.requested?"request":"requests"," out"]}),null!=d&&(0,b.jsxs)("span",{style:{color:"#fff"},children:[" · ",d.toLocaleString("en-US")," shown"]})]})}function bJ({tierColors:a,byTier:c,byRarity:d,tiers:e,rarities:f,onTier:g,onRarity:h,onClear:i}){let j=(a,b)=>({height:22,padding:"0 7px",borderRadius:11,cursor:"pointer",fontSize:10,fontWeight:700,whiteSpace:"nowrap",border:`1px solid ${a?b:"rgba(255,255,255,0.1)"}`,background:a?`${b}22`:"rgba(255,255,255,0.03)",color:a?b:"#999"});return(0,b.jsxs)("div",{style:{marginTop:8,display:"flex",flexDirection:"column",gap:5},children:[(0,b.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",gap:4,alignItems:"center"},children:[(0,b.jsx)("span",{style:bP,children:"Tier"}),bE.map(d=>(0,b.jsxs)("button",{type:"button","aria-pressed":e.has(d),onClick:()=>g(d),style:j(e.has(d),a[d]||"#888"),children:[d," ",(0,b.jsx)("span",{style:{fontWeight:500,opacity:.8},children:c[d]})]},d))]}),(0,b.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",gap:4,alignItems:"center"},children:[(0,b.jsx)("span",{style:bP,children:"Rarity"}),aR.map(a=>(0,b.jsxs)("button",{type:"button","aria-pressed":f.has(a.key),onClick:()=>h(a.key),title:`${a.label}: ${a.range} mutual connection${"1"===a.range?"":"s"}`,style:j(f.has(a.key),a.color),children:[a.label," ",(0,b.jsx)("span",{style:{fontWeight:500,opacity:.8},children:d[a.key]})]},a.key)),(e.size>0||f.size>0)&&(0,b.jsx)("button",{type:"button",onClick:i,style:bQ,children:"Clear"})]})]})}function bK(){let a=(a,c)=>(0,b.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:5,marginRight:12,whiteSpace:"nowrap"},children:[a,c]});return(0,b.jsxs)("div",{style:{fontSize:10.5,color:"#999",marginTop:8,lineHeight:1.8},children:[a((0,b.jsx)("svg",{width:"10",height:"10",children:(0,b.jsx)("circle",{cx:"5",cy:"5",r:"4",fill:"#FFD700"})}),"colour = tier"),a((0,b.jsx)("svg",{width:"12",height:"12",children:(0,b.jsx)("circle",{cx:"6",cy:"6",r:"4",fill:"#9B59B6",stroke:bF,strokeWidth:"1.5"})}),"you added them"),a((0,b.jsx)("svg",{width:"12",height:"12",children:(0,b.jsx)("circle",{cx:"6",cy:"6",r:"4.2",fill:"none",stroke:"#3498DB",strokeWidth:"1.4",strokeDasharray:"2 1.6"})}),"request sent")]})}function bL({title:a,onClose:d,children:e}){return(0,c.useEffect)(()=>{let a=a=>{"Escape"===a.key&&d()};return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[d]),(0,bz.createPortal)((0,b.jsx)("div",{role:"dialog","aria-modal":"true","aria-label":a,onClick:d,style:{position:"fixed",inset:0,zIndex:300,background:"rgba(0,0,0,0.78)",display:"flex",alignItems:"center",justifyContent:"center",padding:16},children:(0,b.jsxs)("div",{onClick:a=>a.stopPropagation(),style:{width:"min(720px, 100%)",maxHeight:"100%",overflowY:"auto",boxSizing:"border-box",background:"#0f0c05",border:"1px solid rgba(255,215,0,0.18)",borderRadius:14,padding:16},children:[(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:8},children:[(0,b.jsx)("div",{style:{fontSize:14,fontWeight:800,color:"#fff"},children:a}),(0,b.jsx)("button",{type:"button",onClick:d,style:{...bQ,fontSize:12},children:"Close ✕"})]}),(0,b.jsx)("div",{style:{fontSize:10.5,color:"#888",marginBottom:8},children:"Click a dot to open that person."}),e]})}),document.body)}function bM(){let a=document.getElementById("scan-box");a&&(a.scrollIntoView({behavior:"smooth",block:"center"}),a.animate?.([{boxShadow:"0 0 0 3px rgba(255,215,0,0.75)"},{boxShadow:"0 0 0 0 rgba(255,215,0,0)"}],{duration:1600}),a.querySelector("button:not([disabled])")?.focus({preventScroll:!0}))}function bN({children:a}){return(0,b.jsx)("div",{style:{fontSize:10,fontWeight:700,color:"#FF6B35",letterSpacing:1,textTransform:"uppercase",marginBottom:6},children:a})}let bO={background:"rgba(255,255,255,0.03)",border:"1px solid rgba(255,255,255,0.07)",borderRadius:10,padding:10,marginBottom:16},bP={fontSize:9,color:"#666",textTransform:"uppercase",letterSpacing:.5,width:38,flexShrink:0},bQ={background:"none",border:"none",color:"#888",fontSize:10.5,fontWeight:600,cursor:"pointer",padding:0};var bR=a.i(75857);let bS=["S","A","B","C","D"],bT=[[/^(.+?) accepted!/,1],[/^High-value connection: (.+)$/,1],[/^Catalyst discovered: (.+)$/,1],[/^(.+?) added you back/,1]],bU=O.TIER_COLORS,bV={S:"S-tier: one of the most valuable people in your network to know.",A:"A-tier: a strong person to know."},bW={padding:"8px 12px",borderRadius:8,fontSize:12,fontWeight:700,cursor:"pointer",textAlign:"left",border:"1px solid rgba(255,255,255,0.12)",background:"rgba(255,255,255,0.05)",color:"#ddd"};function bX({note:a,connections:c=[],degree2:d=[],onBack:e,onSelect:f,onOpenCircle:g,onShowInSeparation:h}){let{person:i,via:j,people:k}=function(a,b=[],c=[]){let d=[...b||[],...c||[]],e=new Map(d.map(a=>[a.id,a])),f="string"==typeof a?.data?function(a){try{return JSON.parse(a)}catch{return{}}}(a.data):a?.data||{},g=null!=f.personId?e.get(f.personId):null;if(!g&&f.profileUrl&&(g=d.find(a=>a.profile_url===f.profileUrl)||null),!g)for(let[d,e]of bT){let f=String(a?.title||"").match(d);if(!f)continue;let h=f[e].trim().toLowerCase();if(g=(b||[]).find(a=>String(a.name||"").toLowerCase()===h)||(c||[]).find(a=>String(a.name||"").toLowerCase()===h)||null)break}let h=f.viaId??g?.unlocked_from_bridge_id??(g?.degree===2?g.source_connection_id:null);return{person:g||null,via:null!=h&&e.get(h)||null,people:(f.personIds||[]).map(a=>e.get(a)).filter(Boolean),data:f}}(a,c,d),l=i?.tier,m=Number.parseFloat(i?.power_score),n=Number(i?.company_prestige_score),o=["added_back","request_accepted","connection_accepted"].includes(a?.type),p=i&&d.some(a=>a.source_connection_id===i.id);return(0,b.jsxs)("div",{children:[(0,b.jsx)("button",{type:"button",onClick:e,style:{background:"none",border:"none",color:"#aaa",cursor:"pointer",fontSize:12,padding:0,marginBottom:12},children:"← Back"}),(0,b.jsxs)("div",{style:{display:"flex",gap:10,alignItems:"flex-start"},children:[(0,b.jsx)("span",{style:{fontSize:22},children:a?.icon||"📌"}),(0,b.jsxs)("div",{style:{minWidth:0},children:[(0,b.jsx)("div",{style:{fontSize:15,fontWeight:800,color:"#fff",lineHeight:1.35},children:a?.title}),(0,b.jsx)("div",{style:{fontSize:11,color:"#777",marginTop:3},children:(a=>{let b=new Date(String(a||"").replace(" ","T")+(String(a||"").includes("Z")?"":"Z")).getTime();if(!Number.isFinite(b))return"";let c=Math.round((Date.now()-b)/6e4);if(c<1)return"just now";if(c<60)return`${c} min ago`;let d=Math.round(c/60);return d<24?`${d} h ago`:new Date(b).toLocaleDateString()})(a?.created_at)})]})]}),i&&(0,b.jsxs)("div",{style:{marginTop:16,padding:14,borderRadius:12,border:`1px solid ${bU[l]||"#555"}55`,background:`${bU[l]||"#555"}10`},children:[(0,b.jsxs)("div",{style:{display:"flex",gap:12,alignItems:"center"},children:[(0,b.jsx)(a_,{person:i,size:44}),(0,b.jsxs)("div",{style:{minWidth:0},children:[(0,b.jsx)("div",{style:{fontSize:15,fontWeight:800},children:i.name}),(0,b.jsx)("div",{style:{fontSize:11.5,color:"#aab",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:i.headline||i.company||""}),(0,b.jsxs)("div",{style:{fontSize:11.5,fontWeight:800,color:bU[l]||"#aaa",marginTop:2},children:[l?`${l}-tier`:"Not scored yet",Number.isFinite(m)?` \xb7 ${m.toFixed(1)}`:""]})]})]}),o&&(0,b.jsxs)("div",{style:{marginTop:12,fontSize:12.5,color:"#ddd",lineHeight:1.5},children:[(0,b.jsx)("b",{children:i.name.split(" ")[0]})," added you back",j?(0,b.jsxs)(b.Fragment,{children:[". You met through ",(0,b.jsx)("b",{style:{color:bU[j.tier]||"#fff"},children:j.name}),"."]}):"."]}),!o&&j&&(0,b.jsxs)("div",{style:{marginTop:12,fontSize:12.5,color:"#ddd"},children:[2===i.degree?"In the circle of ":"You met through ",(0,b.jsx)("b",{children:j.name}),"."]}),bV[l]&&(0,b.jsx)("div",{style:{marginTop:8,fontSize:12.5,fontWeight:700,color:bU[l]},children:bV[l]}),n>=8&&(0,b.jsxs)("div",{style:{marginTop:6,fontSize:12,color:"#cfd3e6"},children:["Works at a top company",i.company?`, ${i.company}`:""," (its score: ",n,")."]}),(0,b.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:6,marginTop:14},children:[(0,b.jsxs)("button",{type:"button",style:bW,onClick:()=>f?.(i),children:["Open ",i.name.split(" ")[0],"’s card →"]}),(p||1===i.degree)&&g&&(0,b.jsx)("button",{type:"button",style:bW,onClick:()=>g(i.id),children:p?`Open ${i.name.split(" ")[0]}’s circle in Bridge Chains →`:`${i.name.split(" ")[0]}’s circle: not scanned yet`}),2===i.degree&&h&&(0,b.jsx)("button",{type:"button",style:bW,onClick:()=>h({query:i.name}),children:"Show in Separation →"})]})]}),k.length>1&&(0,b.jsxs)("div",{style:{marginTop:16},children:[(0,b.jsx)("div",{style:{fontSize:10,fontWeight:800,letterSpacing:1,color:"#6b7090",textTransform:"uppercase",marginBottom:8},children:"Who"}),k.slice(0,12).map(a=>(0,b.jsxs)("button",{type:"button",onClick:()=>f?.(a),style:{...bW,display:"flex",gap:10,alignItems:"center",width:"100%",marginBottom:6,fontWeight:600},children:[(0,b.jsx)(a_,{person:a,size:26}),(0,b.jsxs)("span",{style:{minWidth:0,flex:1},children:[(0,b.jsx)("span",{style:{display:"block",color:"#fff"},children:a.name}),(0,b.jsx)("span",{style:{display:"block",fontSize:10.5,color:"#8a8fa8",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.company||a.headline||""})]}),(0,b.jsx)("span",{style:{fontSize:11,fontWeight:800,color:bU[a.tier]||"#aaa"},children:a.tier})]},a.id))]}),a?.message&&(0,b.jsx)("div",{style:{marginTop:14,fontSize:12,color:"#999",lineHeight:1.55},children:a.message}),!i&&!k.length&&(0,b.jsx)("div",{style:{marginTop:10,fontSize:11.5,color:"#667"},children:"Nothing more on file about this one."})]})}let bY=(a,b)=>aY.TIER_ORDER.indexOf(a.tier)-aY.TIER_ORDER.indexOf(b.tier)||(0,P.score1)(b)-(0,P.score1)(a)||String(a.name||"").localeCompare(String(b.name||"")),bZ=a=>String(a||"").trim().split(/\s+/)[0]||"Their",b$={display:"flex",alignItems:"center",gap:9,width:"100%",padding:"7px 8px",borderRadius:8,boxSizing:"border-box",background:"rgba(255,255,255,0.03)",border:"1px solid rgba(255,255,255,0.06)",color:"#fff",cursor:"pointer",textAlign:"left",font:"inherit",textDecoration:"none"};function b_({person:a,tierColors:c,note:d,noteColor:e,onSelect:f,href:g,label:h}){let i=(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(a_,{person:a,size:26,tierColors:c}),(0,b.jsxs)("span",{style:{flex:1,minWidth:0},children:[(0,b.jsxs)("span",{style:{display:"block",fontSize:12,fontWeight:700,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:[a.name,(0,b.jsx)("span",{style:{fontSize:10,color:c[a.tier]||"#888",fontWeight:800,marginLeft:6},children:a.tier})]}),(0,b.jsx)("span",{style:{display:"block",fontSize:10.5,color:"#888",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:[a.title,a.company].filter(Boolean).join(" · ")||" "})]}),d&&(0,b.jsx)("span",{style:{fontSize:10,fontWeight:700,color:e||"#888",whiteSpace:"nowrap"},children:d})]});return g?(0,b.jsx)(V.default,{href:g,"aria-label":h,style:{...b$,borderColor:"rgba(0,255,136,0.2)"},children:i}):(0,b.jsx)("button",{type:"button",onClick:()=>f?.(a),style:b$,children:i})}function b0({person:a,connections:d=[],degree2:e=[],scanNotes:f,tierColors:g,onSelect:h,onToggle:i,canScan:j=!0}){let[k,l]=(0,c.useState)(null),[m,n]=(0,c.useState)(""),[o,p]=(0,c.useState)(60),q=(0,c.useMemo)(()=>X(d,e),[d,e]),r=(0,c.useMemo)(()=>(0,K.reachIndex)(d,e,f),[d,e,f]),s=(0,c.useMemo)(()=>[...q.circles.get(a.id)||[]].sort(bY),[q,a.id]),t=(0,c.useMemo)(()=>[...q.introduced.get(a.id)||[]].sort(bY),[q,a.id]),u=(0,c.useMemo)(()=>{let a=Object.fromEntries(aY.TIER_ORDER.map(a=>[a,0]));for(let b of s)null!=a[b.tier]&&(a[b.tier]+=1);return a},[s]),v=m.trim().toLowerCase(),w=s.filter(a=>(!k||a.tier===k)&&(v.length<2||[a.name,a.title,a.company].some(a=>String(a||"").toLowerCase().includes(v)))),x=g[a.tier]||"#888";return(0,b.jsxs)("div",{children:[(0,b.jsxs)("button",{onClick:i,style:{display:"flex",alignItems:"center",gap:6,background:"none",border:"none",color:"#888",fontSize:12,cursor:"pointer",padding:"0 0 10px",fontWeight:600},children:[(0,b.jsx)("span",{style:{fontSize:16},children:"←"})," Close"]}),(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,marginBottom:4},children:[(0,b.jsx)(a_,{person:a,size:38,tierColors:g}),(0,b.jsxs)("div",{style:{minWidth:0},children:[(0,b.jsx)("div",{style:{fontSize:10,fontWeight:700,letterSpacing:1,color:"#888",textTransform:"uppercase"},children:"You’re in"}),(0,b.jsxs)("h3",{style:{fontSize:16,fontWeight:800,margin:0,color:x},children:[bZ(a.name),"’s circle"]})]})]}),(0,b.jsxs)("div",{style:{fontSize:11.5,color:"#999",marginBottom:12},children:[[a.title,a.company].filter(Boolean).join(" · "),(0,b.jsxs)("button",{type:"button",onClick:()=>h?.(a),style:{display:"block",marginTop:6,padding:0,background:"none",border:"none",color:"#74B9FF",fontSize:11,fontWeight:700,cursor:"pointer"},children:["Open ",bZ(a.name),"’s card →"]})]}),(0,b.jsx)("div",{style:{fontSize:22,fontWeight:800,lineHeight:1},children:(s.length+t.length).toLocaleString("en-US")}),(0,b.jsxs)("div",{style:{fontSize:11,color:"#888",marginBottom:10},children:[s.length+t.length===1?"person":"people"," in their circle",t.length?` \xb7 you added ${t.length} of them`:""]}),(0,b.jsx)("div",{style:{display:"flex",gap:5,flexWrap:"wrap",marginBottom:10},children:aY.TIER_ORDER.map(a=>(0,b.jsxs)("button",{type:"button","aria-pressed":k===a,disabled:!u[a],onClick:()=>{l(k===a?null:a),p(60)},style:{padding:"4px 9px",borderRadius:12,fontSize:11,fontWeight:700,cursor:u[a]?"pointer":"default",border:`1px solid ${k===a?g[a]:"rgba(255,255,255,0.1)"}`,background:k===a?`${g[a]}26`:"rgba(255,255,255,0.03)",color:u[a]?g[a]:"#444"},children:[a," ",(0,b.jsx)("span",{style:{color:"#aaa",fontWeight:600},children:u[a]})]},a))}),(0,b.jsx)("input",{type:"search",value:m,placeholder:`Search ${bZ(a.name)}’s circle`,onChange:a=>{n(a.target.value),p(60)},style:{width:"100%",padding:"8px 12px",borderRadius:8,fontSize:12,marginBottom:14,boxSizing:"border-box",border:"1px solid rgba(255,255,255,0.1)",background:"rgba(255,255,255,0.05)",color:"#fff",outline:"none"}}),t.length>0&&!k&&v.length<2&&(0,b.jsxs)("div",{style:{marginBottom:14},children:[(0,b.jsxs)("div",{style:{fontSize:10,fontWeight:700,color:"#00ff88",letterSpacing:1,marginBottom:6,textTransform:"uppercase"},children:["You added from here (",t.length,")"]}),(0,b.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:5},children:t.map(a=>{let c,[d,e]="ready"===(c=(0,K.reachState)(a,r))?["ready to scan","#00ff88"]:"scanned"===c?["circle scanned","#74B9FF"]:"hidden"===c?["list hidden","#888"]:[null];return"ready to scan"===d&&j?(0,b.jsx)(b_,{person:a,tierColors:g,note:"Scan… →",noteColor:"#00ff88",href:`/setup?scan=${encodeURIComponent(a.id)}`,label:`Scan ${a.name}’s circle: opens the Scan page to confirm`},a.id):(0,b.jsx)(b_,{person:a,tierColors:g,note:d,noteColor:e,onSelect:h},a.id)})})]}),(0,b.jsxs)("div",{style:{fontSize:10,fontWeight:700,color:"#888",letterSpacing:1,marginBottom:6,textTransform:"uppercase"},children:[k?`${k} tier in their circle`:t.length?"Everyone else in their circle":"Everyone in their circle"," (",w.length.toLocaleString("en-US"),")"]}),0===w.length?(0,b.jsx)("div",{style:{fontSize:11.5,color:"#888",lineHeight:1.5},children:0===s.length?"Their circle isn’t scanned yet.":"No one here matches."}):(0,b.jsxs)("div",{role:"list",style:{display:"flex",flexDirection:"column",gap:5},children:[w.slice(0,o).map(a=>(0,b.jsx)(b_,{person:a,tierColors:g,onSelect:h},a.id)),w.length>o&&(0,b.jsxs)("button",{type:"button",onClick:()=>p(a=>a+180),style:{background:"none",border:"none",color:"#888",fontSize:11,fontWeight:600,cursor:"pointer",padding:"6px 0",textAlign:"left"},children:["Show more (",(w.length-o).toLocaleString("en-US")," left)"]})]})]})}function b1({selected:a,stats:d,tierColors:e,connections:f,degree2:i=[],mode:j,collapsed:k,filter:l,pending:m=[],onToggle:n,onSelect:o,onSwitchMode:p,onFocusNode:q,onMarkSent:r,onUndoPending:s,scanNotes:t,csvSource:u=null,onOpenCircle:v,onShowInSeparation:w,note:x=null,onCloseNote:y,circle:z=null}){let A,B,C="degrees"===j,D=!u,{userId:E,userProfile:F}=(0,bR.useUser)(),[G,H]=(0,c.useState)(""),J=(0,c.useMemo)(()=>{let a={};return i.forEach(b=>{b.source_connection_id&&(a[b.source_connection_id]||(a[b.source_connection_id]=[]),a[b.source_connection_id].push(b))}),a},[i]),L=(0,c.useMemo)(()=>(0,P.routeIndex)(i),[i]),M=(0,c.useMemo)(()=>(0,ag.exclusiveReach)(i,f),[i,f]),N=(0,c.useMemo)(()=>(0,ag.bridgeOverlap)(i,f),[i,f]),O=(0,c.useMemo)(()=>(0,K.reachIndex)(f,i,t),[f,i,t]),[Q,R]=(0,c.useState)(!1),S=(0,c.useMemo)(()=>new Map(f.map(a=>[a.id,a])),[f]),T=(0,g.default)(),U=(0,c.useCallback)(a=>(0,h.hasRequest)(a,T),[T]);if(x)return(0,b.jsx)(b2,{collapsed:k,onToggle:n,children:(0,b.jsx)(bX,{note:x,connections:f,degree2:i,onBack:y,onSelect:a=>{y?.(),o?.(a)},onOpenCircle:v?a=>{y?.(),v(a)}:void 0,onShowInSeparation:w?a=>{y?.(),w(a)}:void 0})});if(a){let c,d,g,j,l=1===a.degree&&J[a.id],m=J[a.id]||[],q=2===a.degree?(0,P.routesFor)(a,L,S):[];return(0,b.jsxs)(b2,{collapsed:k,onToggle:n,children:[(0,b.jsxs)("button",{onClick:()=>o&&o(null),style:{display:"flex",alignItems:"center",gap:6,background:"none",border:"none",color:"#888",fontSize:12,cursor:"pointer",padding:"0 0 10px",fontWeight:600},children:[(0,b.jsx)("span",{style:{fontSize:16},children:"←"})," Back to list"]}),(0,b.jsx)("div",{style:{fontSize:10,color:"#888",marginBottom:8,letterSpacing:1,textTransform:"uppercase"},children:2===a.degree?"Degree 2 Connection":"Degree 1 Connection"}),(0,b.jsxs)("div",{style:{display:"flex",gap:6,marginBottom:8,flexWrap:"wrap"},children:[(0,b.jsx)("div",{style:{background:2===a.degree?"#FF6B35":e[a.tier],color:"#000",display:"inline-block",padding:"2px 10px",borderRadius:12,fontSize:11,fontWeight:700},children:2===a.degree?`DEGREE 2 \xb7 TIER ${a.tier}`:`TIER ${a.tier}`}),a.unlocked_from_name&&(0,b.jsxs)("div",{style:{background:"rgba(52,152,219,0.08)",border:"1px solid rgba(52,152,219,0.28)",borderRadius:8,padding:"9px 11px",marginBottom:10,fontSize:11.5,color:"#8fb8d6",lineHeight:1.5},children:[1===a.degree?"You met them through ":"Reachable through ",(0,b.jsx)("b",{style:{color:"#cfe6f7"},children:a.unlocked_from_name})]}),a.is_catalyst&&(0,b.jsx)("div",{style:{background:"#00ff88",color:"#000",display:"inline-block",padding:"2px 10px",borderRadius:12,fontSize:11,fontWeight:800,letterSpacing:.5},children:"CATALYST"})]}),(0,b.jsxs)("div",{style:{display:"flex",gap:12,alignItems:"center",marginBottom:16},children:[(0,I.localPhoto)(a.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(a.profile_image_url),alt:a.name,style:{width:52,height:52,borderRadius:"50%",objectFit:"cover",border:`2px solid ${e[a.tier]||"#555"}`,flexShrink:0},onError:a=>{a.target.style.display="none",a.target.nextSibling.style.display="flex"}}):null,(0,b.jsx)("div",{style:{width:52,height:52,borderRadius:"50%",flexShrink:0,background:e[a.tier]||"#555",display:(0,I.localPhoto)(a.profile_image_url)?"none":"flex",alignItems:"center",justifyContent:"center",fontSize:20,fontWeight:700,color:"S"===a.tier?"#000":"#fff"},children:a.name?.charAt(0)}),(0,b.jsxs)("div",{style:{minWidth:0},children:[(0,b.jsx)("h2",{style:{fontSize:18,fontWeight:700,margin:0},children:a.name}),(0,b.jsx)("p",{style:{color:"#aaa",fontSize:11,margin:"3px 0 0",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.headline?.substring(0,60)}),a.profile_url&&(0,b.jsx)("a",{href:a.profile_url,target:"_blank",rel:"noopener noreferrer",style:{fontSize:10,color:"#0077B5",textDecoration:"none",fontWeight:600},children:"View on LinkedIn"})]})]}),1===a.degree&&(0,b.jsx)(bG,{person:a,connections:f,degree2:i,tierColors:e,onSelect:o,isRequested:U,canScan:D}),2!==a.degree&&(()=>{let c,d,g=function(a,{degree2:b=[],exclusive:c,overlap:d,reach:e}={}){if(!a||2===a.degree)return null;let f=new Set,g={S:0,A:0,B:0,C:0,D:0},h=new Map;for(let c of b){if(c?.source_connection_id!==a.id)continue;let b=(0,P.keyFor)(c);if(f.has(b))continue;f.add(b),g[bS.includes(c.tier)?c.tier:"D"]+=1;let d=String(c.company||"").trim();d&&h.set(d,(h.get(d)||0)+1)}let i=[...h.entries()].filter(([,a])=>a>=2).sort((a,b)=>b[1]-a[1]||a[0].localeCompare(b[0])).slice(0,2).map(([a,b])=>({name:a,count:b})),j=f.size,k=c?.get(a.id)||{reach:0,only:0,total:0},l=d?.get(a.id),m=l&&l.share>=.15&&l.shared>=3?{id:l.with,share:l.share,shared:l.shared}:null,n=[...c?.entries()||[]].sort((a,b)=>b[1].reach-a[1].reach||String(a[0]).localeCompare(String(b[0]))),o=n.findIndex(([b])=>b===a.id);return{circle:j,only:k.only,onlyShare:j?k.only/j:0,twin:m,mix:g,bars:e?(0,K.scanBars)(a,e):null,rank:o>=0?o+1:null,of:n.length,companies:i}}(a,{degree2:i,exclusive:M,overlap:N,reach:O});if(!g)return null;let j=a.name?.split(" ")[0]||"them",k=g.twin&&f.find(a=>a.id===g.twin.id),l={display:"flex",alignItems:"baseline",justifyContent:"space-between",gap:10,padding:"7px 0",borderTop:"1px solid rgba(255,255,255,0.05)"},m={fontSize:10.5,color:"#8b9a9a",minWidth:92},n={background:"none",border:"none",padding:0,color:"#3498DB",cursor:"pointer",fontSize:11.5,whiteSpace:"nowrap"},p=null==g.bars?"Not scanned yet":5===g.bars?"Their whole list":`About ${20*g.bars}% of their list`;return(0,b.jsxs)("div",{style:{border:"1px solid rgba(52,152,219,0.25)",borderRadius:8,marginBottom:16,background:"rgba(52,152,219,0.04)"},children:[(0,b.jsxs)("button",{onClick:()=>R(a=>!a),"aria-expanded":Q,style:{width:"100%",display:"flex",justifyContent:"space-between",alignItems:"center",padding:"9px 12px",background:"none",border:"none",cursor:"pointer",color:"#cfe6f7"},children:[(0,b.jsx)("span",{style:{fontSize:11,fontWeight:700,letterSpacing:1},children:"INSIGHTS"}),(0,b.jsxs)("span",{style:{fontSize:11,color:"#8b9a9a"},children:[!Q&&g.circle>0&&`${g.circle.toLocaleString()} in their circle${g.only?` \xb7 ${g.only.toLocaleString()} only through ${j}`:""} `,Q?"▲":"▼"]})]}),Q&&(0,b.jsxs)("div",{style:{padding:"0 12px 8px",fontSize:12,color:"#ccc"},children:[(0,b.jsxs)("div",{style:l,children:[(0,b.jsx)("span",{style:m,children:"Their circle"}),(0,b.jsx)("span",{style:{flex:1},children:g.circle?`${g.circle.toLocaleString()} people`:"None scanned yet"}),g.circle>0&&v&&(0,b.jsx)("button",{style:n,onClick:()=>v(a.id),children:"Explore →"})]}),(0,b.jsxs)("div",{style:l,children:[(0,b.jsxs)("span",{style:m,children:["Only through ",j]}),(0,b.jsx)("span",{style:{flex:1},children:g.circle?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("b",{style:{color:"#00ff88"},children:g.only.toLocaleString()})," (",Math.round(100*g.onlyShare),"%): none of your other connections reach them"]}):"—"}),g.only>0&&w&&(0,b.jsx)("button",{style:n,onClick:()=>w({query:a.name,rarity:"only"}),children:"Show them →"})]}),(0,b.jsxs)("div",{style:l,children:[(0,b.jsx)("span",{style:m,children:"Closest overlap"}),(0,b.jsx)("span",{style:{flex:1},children:k?(0,b.jsxs)(b.Fragment,{children:["Opens the same doors as ",(0,b.jsx)("b",{style:{color:"#fff"},children:k.name})," (",Math.round(100*g.twin.share),"%, ",g.twin.shared.toLocaleString()," people)"]}):"No one opens the same doors"}),k&&(0,b.jsx)("button",{style:n,onClick:()=>o?.(k),children:"Open →"})]}),(0,b.jsxs)("div",{style:l,children:[(0,b.jsx)("span",{style:m,children:"Tier mix"}),(0,b.jsx)("span",{style:{flex:1,display:"flex",height:8,borderRadius:4,overflow:"hidden",background:"rgba(255,255,255,0.05)",alignSelf:"center"},children:g.circle>0&&["S","A","B","C","D"].map(a=>g.mix[a]>0&&(0,b.jsx)("span",{title:`${a}: ${g.mix[a]}`,style:{width:`${100*g.mix[a]/g.circle}%`,background:e[a]}},a))}),(0,b.jsx)("span",{style:{fontSize:10.5,color:"#8b9a9a"},children:g.circle?`${g.mix.S} S \xb7 ${g.mix.A} A`:""}),g.mix.S>0&&w&&(0,b.jsx)("button",{style:n,onClick:()=>w({query:a.name,tier:"S"}),children:"S only →"})]}),g.companies.length>0&&(0,b.jsxs)("div",{style:l,children:[(0,b.jsx)("span",{style:m,children:"Where they work"}),(0,b.jsx)("span",{style:{flex:1},children:g.companies.map(a=>`${a.count} at ${a.name}`).join(" · ")})]}),(0,b.jsxs)("div",{style:l,children:[(0,b.jsx)("span",{style:m,children:"Scanned"}),(0,b.jsx)("span",{style:{flex:1},children:p}),5!==g.bars&&D&&(0,b.jsx)("a",{href:`/setup?scan=${encodeURIComponent(a.id)}`,style:n,children:null==g.bars?"Scan →":"Finish →"})]}),(c=a.connected_date?new Date(a.connected_date):null,d=(J[a.id]||[]).filter(a=>(0,h.hasRequest)(a,T)).length,c&&!Number.isNaN(c.getTime())||d?(0,b.jsxs)("div",{style:l,children:[(0,b.jsxs)("span",{style:m,children:["You and ",j]}),(0,b.jsxs)("span",{style:{flex:1},children:[c&&!Number.isNaN(c.getTime())?`Connected ${c.toLocaleDateString(void 0,{month:"short",year:"numeric"})}`:"",d?`${c?" · ":""}${d} request${1===d?"":"s"} out through them`:""]})]}):null),(0,b.jsxs)("div",{style:l,children:[(0,b.jsx)("span",{style:m,children:"Rank"}),(0,b.jsx)("span",{style:{flex:1},children:g.rank?`#${g.rank} of ${g.of} by who only they reach`:"Ranked once their circle is scanned"})]})]})]})})(),a.is_catalyst&&(0,b.jsxs)("div",{style:{background:"rgba(0,255,136,0.08)",border:"1px solid rgba(0,255,136,0.3)",borderRadius:8,padding:12,marginBottom:16},children:[(0,b.jsx)("div",{style:{fontSize:10,color:"#00ff88",fontWeight:700,marginBottom:4,letterSpacing:1},children:"CATALYST NODE"}),(0,b.jsxs)("div",{style:{fontSize:12,color:"#ccc"},children:["This person's network power exceeds their own tier. They connect to"," ",(0,b.jsxs)("strong",{style:{color:"#00ff88"},children:[a.catalyst_score," S+A tier"]})," ","people — making them a high-value stepping stone to reach elite connections."]})]}),2===a.degree&&q.length>0&&(0,b.jsx)(b5,{routes:q,selected:a,tierColors:e,onSelect:o},a.id),(0,b.jsxs)("div",{style:{background:"rgba(255,255,255,0.04)",borderRadius:8,padding:12,marginBottom:16},children:[(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"baseline",marginBottom:8},children:[(0,b.jsx)("span",{style:{fontSize:11,color:"#888",fontWeight:600,letterSpacing:1,textTransform:"uppercase"},children:"Score"}),(0,b.jsx)("span",{style:{fontSize:28,fontWeight:800,color:e[a.tier]||"#fff"},children:parseFloat(a.power_score).toFixed(1)})]}),a.score_why&&(0,b.jsx)("div",{style:{fontSize:11,color:"#aab7b7",lineHeight:1.5,marginBottom:10},children:a.score_why}),(0,b.jsxs)("div",{style:{marginBottom:6},children:[(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",fontSize:10,color:"#888",marginBottom:2},children:[(0,b.jsx)("span",{children:"Title"}),(0,b.jsxs)("span",{children:[a.seniority_score||0,"/10"]})]}),(0,b.jsx)("div",{style:{height:4,background:"rgba(255,255,255,0.08)",borderRadius:2},children:(0,b.jsx)("div",{style:{height:"100%",width:`${10*(a.seniority_score||0)}%`,background:e[a.tier]||"#FFD700",borderRadius:2}})})]}),(0,b.jsxs)("div",{style:{marginBottom:6*(a.circle_power>0)},children:[(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",fontSize:10,color:"#888",marginBottom:2},children:[(0,b.jsx)("span",{children:"Company"}),(0,b.jsxs)("span",{children:[a.company_prestige_score||0,"/10"]})]}),(0,b.jsx)("div",{style:{height:4,background:"rgba(255,255,255,0.08)",borderRadius:2},children:(0,b.jsx)("div",{style:{height:"100%",width:`${10*(a.company_prestige_score||0)}%`,background:"#3498DB",borderRadius:2}})})]}),a.circle_power>0&&(0,b.jsxs)("div",{children:[(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",fontSize:10,color:"#888",marginBottom:2},children:[(0,b.jsx)("span",{children:"Circle Power"}),(0,b.jsxs)("span",{style:{color:"#FF6B35"},children:[a.circle_s_count||0,"S · ",a.circle_a_count||0,"A"]})]}),(0,b.jsx)("div",{style:{height:4,background:"rgba(255,255,255,0.08)",borderRadius:2},children:(0,b.jsx)("div",{style:{height:"100%",width:`${Math.min(parseFloat(a.circle_power)/70*100,100)}%`,background:"#FF6B35",borderRadius:2}})})]})]}),(0,b.jsxs)("div",{style:{marginBottom:16},children:[(0,b.jsx)("div",{style:{fontSize:10,fontWeight:700,color:"#FFD700",letterSpacing:1,marginBottom:6,textTransform:"uppercase"},children:"Why This Matters"}),(0,b.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:4,fontSize:11,color:"#ccc"},children:(function(a,b,c,d=[]){let e=[],f=(a.headline||"").toLowerCase(),g=(a.role||"").toLowerCase(),h=(a.company||"").toLowerCase(),i=b.sectors.map(a=>a.toLowerCase());g.match(/ceo|chief|founder|president|chairman/i)?e.push({icon:"👑",text:`${a.role} — C-suite executive, highest leverage contact`,color:"#FFD700"}):g.match(/vp|vice president|svp|evp|managing director/i)?e.push({icon:"⚡",text:`${a.role} — VP-level, strong decision-making authority`,color:"#FFD700"}):g.match(/director|head of|senior director/i)?e.push({icon:"🎯",text:`${a.role} — Senior leadership, controls team/budget`,color:"#FF6B35"}):g.match(/manager|lead|principal/i)&&e.push({icon:"📊",text:`${a.role} — Mid-senior, operational influence`,color:"#3498DB"});let{now:j,before:k}=(0,bA.topCompanies)(a);j&&e.push({icon:"🏢",text:`At ${j.name} (${j.score}/10) — top-tier company network access`,color:"#9B59B6"}),k&&e.push({icon:"📜",text:`Former ${k.name} (${k.score}/10) — carries network from previous role`,color:"#95A5A6"});let l=i.filter(a=>f.includes(a)||h.includes(a));l.length>0&&e.push({icon:"🔗",text:`Shared sector: ${l.join(", ")} — direct industry relevance to you`,color:"#2ECC71"});let m=c.filter(b=>b.source_connection_id===a.id).length;if(m>0){let b=c.filter(b=>b.source_connection_id===a.id&&"S"===b.tier).length;e.push({icon:"🌐",text:`Gateway to ${m} degree-2 connections${b>0?` (${b} S-tier)`:""}`,color:"#FF6B35"})}if(a.is_catalyst&&e.push({icon:"⚡",text:"Catalyst — network power exceeds personal tier, high stepping-stone value",color:"#00ff88"}),2===a.degree&&d.length>0){let a=d.filter(a=>a.bridge);if(1===d.length)e.push(a.length?{icon:"🤝",text:`Reachable via ${a[0].bridge.name} (${a[0].bridge.tier}-tier)`,color:"#3498DB"}:{icon:"🤝",text:"Reachable through a connection we can’t name",color:"#888"});else{let b=a.slice(0,2).map(a=>`${String(a.bridge.name||"").trim().split(/\s+/)[0]} (${a.bridge.tier})`),c=d.length-b.length,f=0===b.length?"connections we can’t name":c>0?`${b.join(", ")} and ${c} more`:b.join(" and ");e.push({icon:"🤝",text:`Reachable ${d.length} ways — via ${f}`,color:"#3498DB"})}}return 0===e.length&&e.push({icon:"📌",text:`${a.tier}-tier connection with ${parseFloat(a.power_score).toFixed(1)} power score`,color:"#888"}),e.slice(0,5)})(a,F||{name:"User",sectors:[],goals:[]},i,q).map((a,c)=>(0,b.jsxs)("div",{style:{display:"flex",gap:6,alignItems:"flex-start"},children:[(0,b.jsx)("span",{style:{color:a.color||"#888",fontSize:13,lineHeight:1},children:a.icon}),(0,b.jsx)("span",{children:a.text})]},c))})]}),a.company&&(0,b.jsxs)("div",{style:{marginBottom:8},children:[(0,b.jsx)("div",{style:{color:"#666",fontSize:10},children:"Company"}),(0,b.jsx)("div",{style:{fontWeight:600,fontSize:12},children:a.company})]}),a.role&&(0,b.jsxs)("div",{style:{marginBottom:12},children:[(0,b.jsx)("div",{style:{color:"#666",fontSize:10},children:"Role"}),(0,b.jsx)("div",{style:{fontSize:12},children:a.role})]}),l&&m.length>0&&(c=m.filter(a=>"S"===a.tier),d=m.filter(a=>"A"===a.tier),g=[...m].sort((a,b)=>(parseFloat(b.power_score)||0)-(parseFloat(a.power_score)||0)).slice(0,8),(0,b.jsxs)("div",{style:{marginBottom:16},children:[(0,b.jsxs)("div",{style:{fontSize:10,fontWeight:700,color:"#FF6B35",letterSpacing:1,marginBottom:8,textTransform:"uppercase"},children:["Cluster Overview — ",m.length," connections"]}),(0,b.jsxs)("div",{style:{display:"flex",gap:6,marginBottom:8,fontSize:10},children:[c.length>0&&(0,b.jsxs)("span",{style:{color:"#FFD700",fontWeight:600},children:[c.length," S-tier"]}),d.length>0&&(0,b.jsxs)("span",{style:{color:"#9B59B6",fontWeight:600},children:[d.length," A-tier"]})]}),(0,b.jsxs)("a",{href:`/queue?bridge=${a.id}&groupBy=bridge`,style:{display:"block",textAlign:"center",padding:"8px 12px",marginBottom:10,background:"linear-gradient(135deg, #FF6B35, #FFD700)",color:"#000",borderRadius:6,textDecoration:"none",fontWeight:700,fontSize:11},children:["Outlink Bridge → Add ",m.filter(a=>"S"===a.tier||"A"===a.tier||"B"===a.tier).length," People"]}),(0,b.jsx)("div",{style:{fontSize:10,color:"#888",marginBottom:8},children:"Most valuable in this cluster:"}),(0,b.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:3},children:g.map(a=>(0,b.jsxs)("div",{onClick:()=>o&&o(a),style:{display:"flex",alignItems:"center",gap:6,padding:"4px 6px",borderRadius:4,cursor:"pointer",borderLeft:`2px solid ${e[a.tier]||"#555"}`,background:"rgba(255,255,255,0.03)"},onMouseEnter:a=>a.currentTarget.style.background="rgba(255,255,255,0.08)",onMouseLeave:a=>a.currentTarget.style.background="rgba(255,255,255,0.03)",children:[(0,I.localPhoto)(a.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(a.profile_image_url),alt:"",style:{width:22,height:22,borderRadius:"50%",objectFit:"cover",flexShrink:0,border:`1px solid ${e[a.tier]||"#555"}`},onError:a=>{a.target.style.display="none",a.target.nextSibling.style.display="flex"}}):null,(0,b.jsx)("div",{style:{width:22,height:22,borderRadius:"50%",flexShrink:0,fontSize:9,fontWeight:700,background:e[a.tier]||"#555",color:"S"===a.tier?"#000":"#fff",display:(0,I.localPhoto)(a.profile_image_url)?"none":"flex",alignItems:"center",justifyContent:"center"},children:a.name?.charAt(0)}),(0,b.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,b.jsx)("div",{style:{fontSize:10,fontWeight:600,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.name}),(0,b.jsx)("div",{style:{fontSize:8,color:"#666",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.headline?.substring(0,40)})]}),(0,b.jsx)("span",{style:{fontSize:9,color:e[a.tier],fontWeight:600,flexShrink:0},children:parseFloat(a.power_score).toFixed(1)})]},a.id))})]})),l&&m.length>0&&(0,b.jsxs)("div",{style:{marginTop:16},children:[(0,b.jsxs)("div",{style:{fontSize:12,fontWeight:600,color:"#FF6B35",marginBottom:8},children:["Gateway to ",m.length," degree-2 connections:"]}),m.sort((a,b)=>(parseFloat(b.power_score)||0)-(parseFloat(a.power_score)||0)).slice(0,10).map(a=>(0,b.jsxs)("div",{style:{padding:"6px 8px",background:"rgba(255,107,53,0.08)",borderRadius:6,borderLeft:"3px solid #FF6B35",marginBottom:4,fontSize:12},children:[(0,b.jsx)("div",{style:{fontWeight:600},children:a.name}),(0,b.jsxs)("div",{style:{color:"#888",fontSize:11},children:[a.role,a.company?` @ ${a.company}`:""]}),(0,b.jsxs)("div",{style:{color:"#FF6B35",fontSize:10},children:["Score: ",parseFloat(a.power_score).toFixed(1)]})]},a.id))]}),!C&&l&&m.length>0&&p&&(0,b.jsxs)("button",{onClick:()=>{p("degrees")},style:{width:"100%",padding:"12px",borderRadius:8,border:"none",cursor:"pointer",background:"linear-gradient(135deg, #FF6B35, #FFD700)",color:"#000",fontWeight:700,fontSize:13,marginTop:12},children:["View Bridge → ",m.length," connections"]}),(2===a.degree||a.source_connection_id)&&1!==a.degree&&"unlocked"!==a.unlock_status&&(j=U(a),(0,b.jsxs)("div",{style:{background:"rgba(255,215,0,0.06)",border:`1px ${j?"dashed":"solid"} rgba(255,215,0,${j?.45:.25})`,borderRadius:10,padding:16,marginTop:16,textAlign:"center"},children:[(0,b.jsx)("div",{style:{fontSize:10,color:"#FFD700",fontWeight:700,letterSpacing:1,marginBottom:6},children:j?"REQUEST SENT":"LOCKED PATH"}),(0,b.jsx)("div",{style:{fontSize:13,color:"#ccc",marginBottom:12},children:j?`Waiting for ${a.name} to accept. The next scan of your own connections notices when they do.`:`Connect with ${a.name} to unlock their network and extend your six degrees.`}),(0,b.jsx)("div",{style:{width:"100%",height:60,background:"rgba(255,255,255,0.03)",borderRadius:8,border:"1px dashed rgba(255,255,255,0.1)",display:"flex",alignItems:"center",justifyContent:"center",fontSize:11,color:"#444",marginBottom:12},children:j?"[ Cluster Pending... ]":"[ Hidden Network ]"}),j?(0,b.jsx)("button",{onClick:()=>{(0,h.undoRequest)(a).catch(()=>{})},style:{background:"none",border:"none",color:"#888",fontSize:11,fontWeight:600,cursor:"pointer"},children:"Didn't send it? Undo"}):(0,b.jsx)("a",{href:a.profile_url,target:"_blank",rel:"noopener noreferrer",style:{display:"block",padding:"10px 16px",background:"linear-gradient(135deg, #FFD700, #FF6B35)",color:"#000",borderRadius:8,textDecoration:"none",fontWeight:700,fontSize:13},onClick:()=>{(0,h.markRequested)(a,{bridgeId:a.source_connection_id}).catch(()=>{})},children:"Connect to Unlock Path"})]})),(1===a.degree||"accepted"===a.outreach_status)&&(D?(0,b.jsx)(b6,{selected:a,degree2:i},a.id):(0,b.jsx)(b7,{csvSource:u,style:{marginTop:16}})),a.profile_url&&(0,b.jsx)("a",{href:a.profile_url,target:"_blank",rel:"noopener noreferrer",style:{display:"block",textAlign:"center",padding:10,marginTop:16,background:"#0077B5",color:"#fff",borderRadius:8,textDecoration:"none",fontWeight:600,fontSize:13},children:"View LinkedIn Profile"})]})}if(C&&z)return(0,b.jsx)(b2,{collapsed:k,onToggle:n,children:(0,b.jsx)(b0,{person:z,connections:f,degree2:i,scanNotes:t,tierColors:e,onSelect:o,onToggle:n,canScan:D},z.id)});if(C){let a,c,g,h;return(0,b.jsxs)(b2,{collapsed:k,onToggle:n,children:[(0,b.jsxs)("button",{onClick:n,style:{display:"flex",alignItems:"center",gap:6,background:"none",border:"none",color:"#888",fontSize:12,cursor:"pointer",padding:"0 0 10px",fontWeight:600},children:[(0,b.jsx)("span",{style:{fontSize:16},children:"←"})," Close"]}),(0,b.jsx)("h3",{style:{fontSize:16,fontWeight:700,marginTop:0,color:"#FF6B35"},children:"Degrees"}),(0,b.jsx)("p",{style:{fontSize:12,color:"#888",marginBottom:12},children:"Your bridge connections and who they unlock."}),D?(0,b.jsx)(cb,{connections:f,degree2:i,scanNotes:t,tierColors:e}):(0,b.jsx)(b7,{csvSource:u,style:{marginBottom:16}}),(0,b.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:8,marginBottom:12},children:[(0,b.jsx)(b3,{label:"Degree-2 Found",value:i.length}),(0,b.jsx)(b3,{label:"D2 S-Tier",value:d?.d2Tiers?.S||0}),(0,b.jsx)(b3,{label:"D2 A-Tier",value:d?.d2Tiers?.A||0}),(0,b.jsx)(b3,{label:"Bridges Used",value:Object.keys(J).length})]}),(0,b.jsxs)("div",{style:{position:"relative",marginBottom:16},children:[(0,b.jsx)("input",{type:"text",placeholder:"Search bridges or d2...",value:G,onChange:a=>H(a.target.value),style:{width:"100%",padding:"8px 12px",borderRadius:8,fontSize:12,border:"1px solid rgba(255,255,255,0.1)",background:"rgba(255,255,255,0.05)",color:"#fff",outline:"none",boxSizing:"border-box"}}),G.length>=2&&(a=G.toLowerCase(),c=f.filter(b=>i.some(a=>a.source_connection_id===b.id)&&b.name.toLowerCase().includes(a)).slice(0,5),g=i.filter(b=>b.name?.toLowerCase().includes(a)).slice(0,5),0===(h=[...c.map(a=>({...a,_matchType:"bridge"})),...g.map(a=>({...a,_matchType:"d2"}))]).length?null:(0,b.jsx)("div",{style:{position:"absolute",top:"100%",left:0,right:0,zIndex:50,background:"color-mix(in srgb, var(--sd-bg) 97%, transparent)",border:"1px solid rgba(255,255,255,0.1)",borderRadius:8,overflow:"hidden",maxHeight:200,overflowY:"auto",boxShadow:"0 8px 24px rgba(0,0,0,0.5)"},children:h.map(a=>(0,b.jsxs)("div",{onClick:()=>{o(a),H(""),q&&"bridge"===a._matchType&&q(a.id)},style:{padding:"8px 12px",cursor:"pointer",display:"flex",alignItems:"center",gap:8,borderBottom:"1px solid rgba(255,255,255,0.05)"},onMouseEnter:a=>a.currentTarget.style.background="rgba(255,255,255,0.06)",onMouseLeave:a=>a.currentTarget.style.background="transparent",children:[(0,I.localPhoto)(a.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(a.profile_image_url),alt:"",style:{width:24,height:24,borderRadius:"50%",objectFit:"cover"}}):(0,b.jsx)("div",{style:{width:24,height:24,borderRadius:"50%",background:e[a.tier]||"#555",fontSize:9,fontWeight:700,display:"flex",alignItems:"center",justifyContent:"center",color:"#fff"},children:a.name?.charAt(0)}),(0,b.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,b.jsx)("div",{style:{fontSize:11,fontWeight:600,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.name}),(0,b.jsx)("div",{style:{fontSize:8,color:"#666"},children:"bridge"===a._matchType?"Bridge":"Degree-2"})]}),(0,b.jsx)("span",{style:{fontSize:9,fontWeight:700,color:e[a.tier]},children:a.tier})]},a.id))}))]}),"pending"===l&&m.length>0&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("h4",{style:{fontSize:13,fontWeight:600,color:"#FF6B35",marginBottom:8},children:["⏳ Pending Requests (",m.length,")"]}),(0,b.jsx)("p",{style:{fontSize:10,color:"#666",marginBottom:10,lineHeight:1.4},children:"Friend requests you've sent. When accepted, their cluster unlocks for bridging."}),(0,b.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:2},children:m.map(a=>{let c=2===a.degree?f.find(b=>b.id===a.source_connection_id):null;return(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,padding:"8px 10px",background:"rgba(255,107,53,0.06)",borderRadius:8,border:"1px solid rgba(255,107,53,0.12)"},children:[(0,I.localPhoto)(a.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(a.profile_image_url),alt:"",style:{width:32,height:32,borderRadius:"50%",objectFit:"cover",flexShrink:0,border:`2px solid ${e[a.tier]||"#555"}`},onError:a=>{a.target.style.display="none"}}):(0,b.jsx)("div",{style:{width:32,height:32,borderRadius:"50%",flexShrink:0,fontSize:12,fontWeight:700,background:e[a.tier]||"#555",color:"S"===a.tier?"#000":"#fff",display:"flex",alignItems:"center",justifyContent:"center"},children:a.name?.charAt(0)}),(0,b.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,b.jsx)("div",{style:{fontSize:11,fontWeight:600,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.name}),(0,b.jsx)("div",{style:{fontSize:8,color:"#888",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.headline?.substring(0,40)}),c&&(0,b.jsxs)("div",{style:{fontSize:8,color:"#FF6B35",marginTop:1},children:["via ",c.name?.split(" ")[0]]})]}),(0,b.jsxs)("div",{style:{textAlign:"center",flexShrink:0},children:[(0,b.jsx)("div",{style:{fontSize:9,fontWeight:800,color:e[a.tier]||"#888"},children:a.tier}),(0,b.jsx)("div",{style:{fontSize:8,color:"#666"},children:parseFloat(a.power_score||0).toFixed(1)})]}),(0,b.jsx)("button",{onClick:()=>s&&s(a),title:"Remove from pending",style:{background:"none",border:"none",color:"#555",cursor:"pointer",fontSize:12,padding:2,flexShrink:0},children:"✕"})]},a.id)})})]}),"pending"!==l&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("h4",{style:{fontSize:13,fontWeight:600,color:"#FF6B35",marginBottom:8},children:"Most Valuable Clusters"}),(0,b.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:6},children:Object.entries(J).map(([a,b])=>{let c=f.find(b=>b.id===a);if(!c)return null;let d=b.length;if(0===d)return null;let e=b.filter(a=>"S"===a.tier),g=b.filter(a=>"A"===a.tier),h=b.filter(a=>"B"===a.tier),i=e.length,j=g.length,k=h.length,l=i>0?e.reduce((a,b)=>a+(parseFloat(b.power_score)||0),0)/i:0,m=j>0?g.reduce((a,b)=>a+(parseFloat(b.power_score)||0),0)/j:0,n=h.filter(a=>(parseFloat(a.power_score)||0)>=5).length,o=(i+j)/d,p=l/7*i*15+m/5.5*j*6+3*n+25*o+2*Math.log2(d+1)+10*!!c.is_catalyst,q=b.reduce((a,b)=>a+(parseFloat(b.power_score)||0),0)/d;return{bridge:c,members:d,sCount:i,aCount:j,bCount:k,risingCount:n,sAvgPower:l,avgPower:q,elitePct:o,clusterValue:p,sTier:e,aTier:g,topMembers:[...b].sort((a,b)=>(parseFloat(b.power_score)||0)-(parseFloat(a.power_score)||0))}}).filter(Boolean).sort((a,b)=>b.clusterValue-a.clusterValue).map((a,c)=>(0,b.jsx)(ca,{cs:a,rank:c+1,tierColors:e,onSelect:o},a.bridge.id))})]})]})}let V=[...f||[]].sort((a,b)=>(parseFloat(b.power_score)||0)-(parseFloat(a.power_score)||0)),W=G.length>=2?V.filter(a=>a.name.toLowerCase().includes(G.toLowerCase())).slice(0,8):[];return(0,b.jsxs)(b2,{collapsed:k,onToggle:n,children:[(0,b.jsxs)("button",{onClick:n,style:{display:"flex",alignItems:"center",gap:6,background:"rgba(255,255,255,0.06)",border:"1px solid rgba(255,255,255,0.1)",borderRadius:6,color:"#aaa",fontSize:12,cursor:"pointer",padding:"6px 12px",marginBottom:12,fontWeight:600},children:[(0,b.jsx)("span",{style:{fontSize:16},children:"←"})," Close"]}),(0,b.jsx)("h3",{style:{fontSize:16,fontWeight:700,marginTop:0},children:"Network Circle"}),d&&(0,b.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:8,marginBottom:16},children:[(0,b.jsx)(b3,{label:"Total Connections",value:d.total}),(0,b.jsx)(b3,{label:"S-Tier",value:d.tiers?.S||0}),(0,b.jsx)(b3,{label:"A-Tier",value:d.tiers?.A||0}),(0,b.jsx)(b3,{label:"B-Tier",value:d.tiers?.B||0})]}),(0,b.jsxs)("div",{style:{position:"relative",marginBottom:12},children:[(0,b.jsx)("input",{type:"text",placeholder:"Search connections...",value:G,onChange:a=>H(a.target.value),style:{width:"100%",padding:"8px 12px",borderRadius:8,boxSizing:"border-box",border:"1px solid rgba(255,255,255,0.1)",background:"rgba(0,0,0,0.3)",color:"#fff",fontSize:12,outline:"none"}}),W.length>0&&(0,b.jsx)("div",{style:{position:"absolute",top:"100%",left:0,right:0,zIndex:10,background:"color-mix(in srgb, var(--sd-bg) 97%, transparent)",border:"1px solid rgba(255,255,255,0.1)",borderRadius:8,marginTop:4,overflow:"hidden",boxShadow:"0 8px 24px rgba(0,0,0,0.5)"},children:W.map(a=>(0,b.jsxs)("div",{onClick:()=>{o&&o(a),q&&q(a.id),H("")},style:{display:"flex",alignItems:"center",gap:8,padding:"8px 10px",cursor:"pointer",borderBottom:"1px solid rgba(255,255,255,0.04)"},onMouseEnter:a=>a.currentTarget.style.background="rgba(255,255,255,0.08)",onMouseLeave:a=>a.currentTarget.style.background="transparent",children:[(0,I.localPhoto)(a.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(a.profile_image_url),alt:"",style:{width:24,height:24,borderRadius:"50%",objectFit:"cover",flexShrink:0,border:`1.5px solid ${e[a.tier]||"#555"}`},onError:a=>{a.target.style.display="none"}}):(0,b.jsx)("div",{style:{width:24,height:24,borderRadius:"50%",flexShrink:0,fontSize:10,fontWeight:700,background:e[a.tier]||"#555",color:"S"===a.tier?"#000":"#fff",display:"flex",alignItems:"center",justifyContent:"center"},children:a.name?.charAt(0)}),(0,b.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,b.jsx)("div",{style:{fontSize:12,fontWeight:600,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.name}),(0,b.jsx)("div",{style:{fontSize:9,color:"#666"},children:a.headline?.substring(0,35)})]}),(0,b.jsx)("span",{style:{fontSize:10,color:e[a.tier],fontWeight:700},children:a.tier})]},a.id))})]}),(0,b.jsxs)("h4",{style:{fontSize:13,fontWeight:600,color:"#FFD700",marginBottom:8},children:["Power Rankings (",V.length,")"]}),(0,b.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:3},children:(A={},B={},V.forEach(a=>{B[a.tier]=(B[a.tier]||0)+1}),V.map((a,c)=>{let d=c>0?V[c-1].tier:null,f=a.tier!==d;f&&(A[a.tier]=0),A[a.tier]=(A[a.tier]||0)+1;let g=A[a.tier];return(0,b.jsxs)("div",{children:[f&&(0,b.jsxs)("div",{style:{padding:"8px 10px",marginTop:8*(c>0),marginBottom:4,background:`${e[a.tier]||"#555"}15`,borderLeft:`3px solid ${e[a.tier]||"#555"}`,borderRadius:4,fontSize:11,fontWeight:700,color:e[a.tier]||"#888",display:"flex",justifyContent:"space-between"},children:[(0,b.jsx)("span",{children:{S:"S-Tier — Elite",A:"A-Tier — High Value",B:"B-Tier — Notable",C:"C-Tier — Standard",D:"D-Tier — Entry"}[a.tier]||a.tier}),(0,b.jsx)("span",{style:{fontWeight:400,opacity:.7},children:B[a.tier]||0})]}),(0,b.jsxs)("div",{onClick:()=>{o&&o(a),q&&q(a.id)},style:{padding:"6px 8px",background:"rgba(255,255,255,0.03)",borderRadius:6,borderLeft:`3px solid ${e[a.tier]||"#555"}`,cursor:"pointer",display:"flex",alignItems:"center",gap:8,transition:"background 0.15s"},onMouseEnter:a=>a.currentTarget.style.background="rgba(255,255,255,0.1)",onMouseLeave:a=>a.currentTarget.style.background="rgba(255,255,255,0.03)",children:[(0,b.jsxs)("span",{style:{color:"#555",fontSize:10,fontWeight:600,minWidth:22,textAlign:"right"},children:["#",g]}),(0,I.localPhoto)(a.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(a.profile_image_url),alt:"",style:{width:28,height:28,borderRadius:"50%",objectFit:"cover",flexShrink:0,border:`1.5px solid ${e[a.tier]||"#555"}`},onError:a=>{a.target.style.display="none",a.target.nextSibling.style.display="flex"}}):null,(0,b.jsx)("div",{style:{width:28,height:28,borderRadius:"50%",flexShrink:0,background:e[a.tier]||"#555",display:(0,I.localPhoto)(a.profile_image_url)?"none":"flex",alignItems:"center",justifyContent:"center",fontSize:12,fontWeight:700,color:"S"===a.tier?"#000":"#fff"},children:a.name?.charAt(0)}),(0,b.jsxs)("div",{style:{minWidth:0,flex:1},children:[(0,b.jsx)("div",{style:{fontWeight:600,fontSize:11,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.name}),(0,b.jsx)("div",{style:{fontSize:9,color:"#666",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.headline?.substring(0,45)})]}),(0,b.jsxs)("div",{style:{textAlign:"right",flexShrink:0},children:[(0,b.jsx)("div",{style:{fontSize:10,fontWeight:700,color:e[a.tier]||"#555"},children:parseFloat(a.power_score).toFixed(1)}),(0,b.jsx)("div",{style:{fontSize:8,color:"#555"},children:a.tier})]})]})]},a.id)}))})]})}function b2({children:a,collapsed:d,onToggle:e}){let[f,g]=(0,c.useState)(!1);return((0,c.useEffect)(()=>{let a=()=>g(window.innerWidth<768);return a(),window.addEventListener("resize",a),()=>window.removeEventListener("resize",a)},[]),d)?(0,b.jsxs)("div",{onClick:e,style:{position:"fixed",right:16,top:140,zIndex:30,cursor:"pointer",display:"flex",alignItems:"center",flexDirection:"row-reverse",gap:0,height:36,borderRadius:18,background:"rgba(255,215,0,0.15)",border:"2px solid rgba(255,215,0,0.5)",color:"#FFD700",fontWeight:700,boxShadow:"0 0 12px rgba(255,215,0,0.3)",backdropFilter:"blur(8px)",WebkitBackdropFilter:"blur(8px)",overflow:"hidden",transition:"width 0.25s ease",width:36,padding:"0 10px"},onMouseEnter:a=>{a.currentTarget.style.width="120px"},onMouseLeave:a=>{a.currentTarget.style.width="36px"},children:[(0,b.jsx)("span",{style:{fontSize:18,flexShrink:0,width:16,textAlign:"center"},children:"‹"}),(0,b.jsx)("span",{style:{fontSize:11,fontWeight:600,whiteSpace:"nowrap",marginRight:6,opacity:.9},children:"Details"})]}):(0,b.jsxs)("div",{style:f?{position:"fixed",top:0,right:0,bottom:0,zIndex:100,width:"100vw",pointerEvents:"auto"}:{flexShrink:0,height:"100%"},children:[f&&(0,b.jsx)("div",{onClick:e,style:{position:"absolute",inset:0,background:"rgba(0,0,0,0.5)"}}),(0,b.jsx)("div",{style:{width:f?"80vw":320,minWidth:320*!f,maxWidth:f?300:320,height:"100%",borderLeft:"1px solid rgba(255,215,0,0.12)",padding:f?"12px 10px":"16px 16px",overflowY:"auto",overflowX:"hidden",background:f?"rgba(15,12,5,0.98)":"var(--sd-panel)",fontSize:13,backdropFilter:"var(--sd-panel-blur)",WebkitBackdropFilter:"var(--sd-panel-blur)",boxShadow:"inset 0 0 60px rgba(255,215,0,0.03), -4px 0 24px rgba(0,0,0,0.3)",marginLeft:f?"auto":0},children:a})]})}function b3({label:a,value:c}){return(0,b.jsxs)("div",{style:{background:"rgba(255,255,255,0.05)",padding:"10px 12px",borderRadius:8},children:[(0,b.jsx)("div",{style:{fontSize:10,color:"#888",marginBottom:2},children:a}),(0,b.jsx)("div",{style:{fontSize:18,fontWeight:700},children:c})]})}function b4(){return(0,b.jsx)("span",{style:{color:"#555",fontSize:16},children:"→"})}function b5({routes:a,selected:d,tierColors:e,onSelect:f}){let[g,h]=(0,c.useState)(!1),i=a.length,j=g?a:a.slice(0,4),k={display:"flex",alignItems:"center",gap:6,fontSize:13,flexWrap:"wrap"};return(0,b.jsxs)("div",{style:{background:"rgba(255,107,53,0.1)",border:"1px solid rgba(255,107,53,0.3)",borderRadius:8,padding:12,marginBottom:16},children:[(0,b.jsxs)("div",{style:{fontSize:10,color:"#FF6B35",fontWeight:600,marginBottom:8},children:["PATH TO THIS PERSON",i>1?` \xb7 ${i} WAYS IN`:""]}),(0,b.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:10},children:j.map((a,c)=>{if(!a.bridge)return(0,b.jsxs)("div",{title:"This route came from a scanned list whose connection record doesn’t match anyone in your 1st-degree list, so who introduces you can’t be named. The person is real, and still reachable.",style:{...k,color:"#888",fontStyle:"italic"},children:[(0,b.jsx)("span",{style:{fontWeight:700,fontStyle:"normal",color:"#fff"},children:"You"}),(0,b.jsx)(b4,{}),(0,b.jsx)("span",{children:"a connection we can’t name"}),(0,b.jsx)(b4,{}),(0,b.jsx)("span",{children:"them"})]},`unnamed-${a.id}`);let g=a.bridge,h=e[g.tier]||"#ccc",j=[[g.role,g.company].filter(Boolean).join(" @ "),g.tier?`${g.tier}-tier`:""].filter(Boolean).join(" · ");return(0,b.jsxs)("div",{children:[(0,b.jsxs)("div",{style:k,children:[(0,b.jsx)("span",{style:{fontWeight:700},children:"You"}),(0,b.jsx)(b4,{}),(0,b.jsxs)("button",{onClick:()=>f&&f(g),title:`Open ${g.name}`,style:{display:"inline-flex",alignItems:"center",gap:6,padding:0,border:"none",background:"none",cursor:"pointer",color:h,fontWeight:600,fontSize:13,textAlign:"left"},children:[(0,b.jsx)(a_,{person:g,size:18,tierColors:e}),g.name]}),(0,b.jsx)(b4,{}),(0,b.jsx)("span",{style:{color:"#FF6B35",fontWeight:600},children:d.name}),0===c&&i>1&&(0,b.jsx)("span",{style:{fontSize:9,fontWeight:700,color:"#FF6B35",padding:"1px 6px",borderRadius:8,background:"rgba(255,107,53,0.15)",whiteSpace:"nowrap"},children:"top-scored bridge"})]}),j&&(0,b.jsx)("div",{style:{fontSize:11,color:"#888",marginTop:3},children:j})]},a.id)})}),i>4&&(0,b.jsx)("button",{onClick:()=>h(a=>!a),style:{marginTop:10,padding:"4px 10px",borderRadius:6,cursor:"pointer",fontSize:11,fontWeight:600,border:"1px solid rgba(255,107,53,0.35)",background:"transparent",color:"#FF6B35"},children:g?"Show fewer":`Show all ${i}`})]})}function b6({selected:a,degree2:d}){let g=(0,f.default)(),[h,i]=(0,c.useState)(!1),[j,k]=(0,c.useState)(null),[l,m]=(0,c.useState)(void 0),n=d?.filter(b=>b.source_connection_id===a.id).length||0,o=n>0,p=g.running&&(0,e.scansCircleOf)(g,a),q=g.running&&!p?(0,e.busyReason)(g):null,r=g.finished.find(b=>(0,e.scansCircleOf)(b,a)),s=g.finished[0]?.startedAt??null;async function t(b){k(null),i(!0);let c=(0,e.notReadyMessage)(await (0,e.scraperStatus)().catch(()=>null));if(i(!1),c)return void k({text:c,offline:!0});try{await (0,e.beginScrape)(b,"resume"===b?{id:a.id}:{name:a.name,id:a.id})}catch(a){k({text:a.message||"Could not start the scan."})}}(0,c.useEffect)(()=>{let b=!0;return(0,e.resumePoint)(a.id).then(a=>{b&&m(a)},()=>{b&&m(null)}),()=>{b=!1}},[a.id,s]);let u=o||!!l,v=o?"#00ff88":"#9B59B6",w=!!q||h,x=a=>({flex:1,padding:"11px 8px",borderRadius:8,fontWeight:700,fontSize:a?13:12,cursor:w?"not-allowed":"pointer",opacity:w?.45:1,...a?{border:"none",background:"linear-gradient(135deg, #9B59B6, #3498DB)",color:"#fff"}:{border:`1px solid ${v}55`,background:`${v}14`,color:v}});return(0,b.jsxs)("div",{id:"scan-box",style:{background:o?"rgba(0,255,136,0.06)":"rgba(155,89,182,0.08)",border:`1px solid ${o?"rgba(0,255,136,0.2)":"rgba(155,89,182,0.3)"}`,borderRadius:10,padding:16,marginTop:16},children:[(0,b.jsx)("div",{style:{fontSize:10,color:v,fontWeight:700,letterSpacing:1,marginBottom:4,textAlign:"center"},children:o?"CLUSTER ACTIVE":"CREATE CLUSTER"}),(0,b.jsx)("div",{style:{fontSize:12,color:"#aaa",marginBottom:12,textAlign:"center"},children:o?`${n} connections mapped in Six Degrees`:(0,b.jsxs)(b.Fragment,{children:["Scan ",a.name,"'s connections to map their network"]})}),p?(0,b.jsx)(b8,{title:g.pending?"Starting…":`Scanning ${a.name}’s circle…`,log:g.log}):j?.offline?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("div",{style:{padding:"10px",borderRadius:8,background:"rgba(255,80,80,0.1)",border:"1px solid rgba(255,80,80,0.3)",color:"#ff5050",fontSize:12,marginBottom:8,textAlign:"center"},children:"Scanner offline"}),(0,b.jsxs)("div",{style:{fontSize:10,color:"#888",textAlign:"center",marginBottom:8},children:[j.text," Open the ",(0,b.jsx)("strong",{children:"Scan"})," page to finish setting the scanner up."]}),(0,b.jsx)("button",{onClick:()=>k(null),style:{width:"100%",padding:"10px",borderRadius:8,border:"none",cursor:"pointer",background:"rgba(255,255,255,0.1)",color:"#aaa",fontWeight:600,fontSize:12},children:"Retry"})]}):(0,b.jsxs)(b.Fragment,{children:[r&&(0,b.jsx)(b9,{job:r}),(0,b.jsxs)("div",{style:{display:"flex",gap:8},children:[l&&(0,b.jsxs)("button",{onClick:()=>t("resume"),disabled:w,style:x(!0),children:["Resume from page ",l.nextPage]}),(0,b.jsx)("button",{onClick:()=>t("bridge"),disabled:w,style:x(!l&&!o),children:u?"Rescan from the start":(0,b.jsxs)(b.Fragment,{children:["Scan ",a.name,"'s Network"]})})]}),l&&(0,b.jsxs)("div",{style:{fontSize:10,color:"#888",marginTop:8,lineHeight:1.45,textAlign:"center"},children:["Read to page ",l.pagesRead," so far. Resume carries on from page ",l.nextPage,". LinkedIn lists their connections in its own order, not by date, so Rescan reads them all again from page 1."]}),o&&null===l&&(0,b.jsx)("div",{style:{fontSize:10,color:"#888",marginTop:8,lineHeight:1.45,textAlign:"center"},children:"Their whole list has been read. LinkedIn doesn't date other people's connections, so a rescan reads it all again to find anyone new."}),q&&(0,b.jsxs)("div",{style:{fontSize:10,color:"#bbb",marginTop:8,textAlign:"center"},children:[q,". One scan at a time: this one can start when it finishes."]}),j&&(0,b.jsx)("div",{style:{fontSize:11,color:"#ff8080",marginTop:8,textAlign:"center"},children:j.text})]})]})}function b7({csvSource:a,style:c}){return(0,b.jsx)("div",{style:{padding:"10px 12px",borderRadius:8,fontSize:11,color:"#999",lineHeight:1.5,textAlign:"center",background:"rgba(255,255,255,0.03)",border:"1px solid rgba(255,255,255,0.08)",...c},children:"sample"===a?"Scanning needs your own network: everyone in the sample is invented.":"Scanning needs your own network: a CSV import lives only in this window. Close it (× at the top) and open Scan."})}function b8({title:a,log:c,small:d=!1}){return(0,b.jsxs)("div",{style:{padding:"10px",borderRadius:8,background:"rgba(155,89,182,0.1)",border:"1px solid rgba(155,89,182,0.3)"},children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,marginBottom:4},children:[(0,b.jsx)("style",{children:"@keyframes scanlogPulse { 0%, 100% { opacity: 1; transform: scale(1); } 50% { opacity: .35; transform: scale(.7); } } @media (prefers-reduced-motion: reduce) { .scanlog-dot { animation: none !important; } }"}),(0,b.jsx)("div",{className:"scanlog-dot",style:{width:d?6:8,height:d?6:8,borderRadius:"50%",background:"#9B59B6",animation:"scanlogPulse 1s ease-in-out infinite"}}),(0,b.jsx)("span",{style:{fontSize:11,fontWeight:600,color:"#9B59B6"},children:a})]}),(0,b.jsx)("div",{style:{fontFamily:"monospace",fontSize:d?9:10,color:"#888",maxHeight:d?80:100,overflow:"auto"},children:c.slice(-40).map((a,c)=>(0,b.jsx)("div",{children:a},c))})]})}function b9({job:a,who:c=null}){let d=0===a.exitCode,e=!d&&Array.isArray(a.failure)&&a.failure.length?a.failure[a.failure.length-1]:null;return(0,b.jsx)("div",{style:{padding:"8px 10px",borderRadius:8,marginBottom:10,fontSize:11,textAlign:"center",lineHeight:1.4,background:d?"rgba(0,255,136,0.08)":"rgba(255,80,80,0.08)",border:`1px solid ${d?"rgba(0,255,136,0.25)":"rgba(255,80,80,0.25)"}`,color:d?"#00ff88":"#ff8080"},children:d?`${c?`${c}’s circle`:"The scan"} finished. What it found is on the map.`:`${c?`${c}’s scan`:"The scan"} stopped before the end${e?`: ${e}`:"."}`})}function ca({cs:a,rank:d,tierColors:e,onSelect:f}){let[g,h]=(0,c.useState)(!1);return(0,b.jsxs)("div",{style:{background:"rgba(255,255,255,0.05)",borderRadius:6,borderLeft:`3px solid ${e[a.bridge.tier]||"#FF6B35"}`,overflow:"hidden"},children:[(0,b.jsxs)("div",{style:{padding:"10px 10px"},children:[(0,b.jsxs)("div",{onClick:()=>f&&f(a.bridge),style:{cursor:"pointer",display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:4},children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8},children:[(0,I.localPhoto)(a.bridge.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(a.bridge.profile_image_url),alt:"",style:{width:28,height:28,borderRadius:"50%",objectFit:"cover",flexShrink:0,border:`1.5px solid ${e[a.bridge.tier]||"#555"}`},onError:a=>{a.target.style.display="none"}}):(0,b.jsx)("div",{style:{width:28,height:28,borderRadius:"50%",flexShrink:0,fontSize:11,fontWeight:700,background:e[a.bridge.tier]||"#555",color:"S"===a.bridge.tier?"#000":"#fff",display:"flex",alignItems:"center",justifyContent:"center"},children:a.bridge.name?.charAt(0)}),(0,b.jsxs)("div",{children:[(0,b.jsxs)("div",{style:{fontWeight:600,fontSize:12},children:[(0,b.jsxs)("span",{style:{color:"#555",marginRight:4},children:["#",d]}),a.bridge.name]}),(0,b.jsx)("div",{style:{fontSize:9,color:"#666"},children:a.bridge.headline?.substring(0,40)})]})]}),(0,b.jsx)("span",{style:{fontSize:10,fontWeight:700,padding:"2px 6px",borderRadius:4,background:e[a.bridge.tier],color:"S"===a.bridge.tier?"#000":"#fff"},children:a.bridge.tier})]}),(0,b.jsxs)("div",{style:{display:"flex",gap:6,marginTop:6,fontSize:10},children:[a.sCount>0&&(0,b.jsxs)("span",{style:{color:"#FFD700",fontWeight:600},children:[a.sCount,"S",a.sAvgPower>0?` (${a.sAvgPower.toFixed(1)})`:""]}),a.aCount>0&&(0,b.jsxs)("span",{style:{color:"#9B59B6",fontWeight:600},children:[a.aCount,"A"]}),a.bCount>0&&(0,b.jsxs)("span",{style:{color:"#3498DB"},children:[a.bCount,"B"]}),a.risingCount>0&&(0,b.jsxs)("span",{style:{color:"#2ECC71"},children:[a.risingCount," rising"]}),(0,b.jsxs)("span",{style:{color:"#555"},children:[a.members," total"]})]}),(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginTop:4,fontSize:10},children:[(0,b.jsxs)("span",{style:{color:"#666"},children:["Elite: ",(100*a.elitePct).toFixed(0),"% · Avg: ",a.avgPower.toFixed(1)]}),(0,b.jsx)("span",{style:{color:"#FF6B35",fontWeight:700},children:a.clusterValue.toFixed(1)})]}),(a.sTier.length>0||a.aTier.length>0)&&(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:4,marginTop:8},children:[[...a.sTier,...a.aTier].slice(0,4).map(a=>(0,I.localPhoto)(a.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(a.profile_image_url),alt:a.name,style:{width:22,height:22,borderRadius:"50%",objectFit:"cover",border:`1.5px solid ${e[a.tier]||"#555"}`},onError:a=>{a.target.style.display="none"},title:a.name},a.id):(0,b.jsx)("div",{style:{width:22,height:22,borderRadius:"50%",fontSize:9,fontWeight:700,background:e[a.tier]||"#555",color:"S"===a.tier?"#000":"#fff",display:"flex",alignItems:"center",justifyContent:"center"},title:a.name,children:a.name?.charAt(0)},a.id)),a.sCount+a.aCount>4&&(0,b.jsxs)("span",{style:{fontSize:9,color:"#666"},children:["+",a.sCount+a.aCount-4," more"]})]}),(0,b.jsxs)("button",{onClick:()=>h(!g),style:{marginTop:6,background:"none",border:"none",color:"#888",fontSize:10,cursor:"pointer",padding:0,display:"flex",alignItems:"center",gap:4},children:[(0,b.jsx)("span",{style:{fontSize:12},children:g?"▾":"▸"}),g?"Hide members":`View all ${a.members} members`]})]}),g&&(0,b.jsx)("div",{style:{borderTop:"1px solid rgba(255,255,255,0.06)",padding:"6px 10px 10px",maxHeight:250,overflowY:"auto"},children:a.topMembers.map(a=>(0,b.jsxs)("div",{onClick:()=>f&&f(a),style:{display:"flex",alignItems:"center",gap:6,padding:"4px 2px",cursor:"pointer",borderRadius:4},onMouseEnter:a=>a.currentTarget.style.background="rgba(255,255,255,0.06)",onMouseLeave:a=>a.currentTarget.style.background="transparent",children:[(0,I.localPhoto)(a.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(a.profile_image_url),alt:"",style:{width:20,height:20,borderRadius:"50%",objectFit:"cover",flexShrink:0,border:`1px solid ${e[a.tier]||"#555"}`},onError:a=>{a.target.style.display="none",a.target.nextSibling.style.display="flex"}}):null,(0,b.jsx)("div",{style:{width:20,height:20,borderRadius:"50%",flexShrink:0,fontSize:8,fontWeight:700,background:e[a.tier]||"#555",color:"S"===a.tier?"#000":"#fff",display:(0,I.localPhoto)(a.profile_image_url)?"none":"flex",alignItems:"center",justifyContent:"center"},children:a.name?.charAt(0)}),(0,b.jsx)("div",{style:{minWidth:0,flex:1},children:(0,b.jsx)("div",{style:{fontSize:10,fontWeight:600,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.name})}),(0,b.jsxs)("span",{style:{fontSize:9,color:e[a.tier]||"#555",fontWeight:600,flexShrink:0},children:[a.tier," ",parseFloat(a.power_score).toFixed(1)]})]},a.id))})]})}function cb({connections:a,degree2:d,scanNotes:g,tierColors:h}){let i=(0,f.default)(),[j,k]=(0,c.useState)(!1),l=(0,c.useMemo)(()=>(0,K.reachIndex)(a,d,g),[a,d,g]),m=(0,c.useMemo)(()=>(0,K.readyToScan)(a,l),[a,l]),n=(0,c.useMemo)(()=>a.filter(a=>"hidden"===(0,K.reachState)(a,l)),[a,l]),o=(0,c.useMemo)(()=>a.filter(a=>null===(0,K.reachState)(a,l)&&"todo"===(0,K.circleState)(a,l)).length,[a,l]),p=(0,c.useMemo)(()=>new Map(a.map(a=>[a.id,a])),[a]),q=(0,K.circleScanCost)(),r=i.running&&(0,e.isCircleScan)(i),s=i.running&&!r?(0,e.busyReason)(i):null,t=i.finished.find(e.isCircleScan),u=j?m:m.slice(0,5);return(0,b.jsxs)("div",{style:{background:"rgba(0,255,136,0.05)",border:"1px solid rgba(0,255,136,0.2)",borderRadius:10,padding:14,marginBottom:16},children:[(0,b.jsxs)("div",{style:{fontSize:12,fontWeight:800,color:"#00ff88",marginBottom:4},children:["Ready to scan (",m.length,")"]}),(0,b.jsx)("div",{style:{fontSize:10.5,color:"#999",lineHeight:1.5,marginBottom:10},children:"People you added through a circle whose own circle isn't scanned yet. Scanning one brings in who they know: 3rd degree, through the circle you found them in."}),r?(0,b.jsx)("div",{style:{marginBottom:10},children:(0,b.jsx)(b8,{small:!0,title:i.pending?"Starting…":`Scanning ${i.target?.name||"a circle"}…`,log:i.log})}):t&&(0,b.jsx)(b9,{job:t,who:t.target?.name}),0===m.length?(0,b.jsxs)("div",{style:{fontSize:11,color:"#aaa",lineHeight:1.5},children:["Nobody yet. When someone you asked from a circle accepts, ↻ ",(0,b.jsx)("b",{children:"Check for new"})," brings them into your connections, and they show here."]}):(0,b.jsxs)("div",{role:"list",style:{display:"flex",flexDirection:"column",gap:6},children:[u.map(a=>{let c=r&&(0,e.scansCircleOf)(i,a),d=p.get(a.unlocked_from_bridge_id)?.name||a.unlocked_from_name;return(0,b.jsxs)(V.default,{role:"listitem",href:`/setup?scan=${encodeURIComponent(a.id)}`,"aria-label":`Scan ${a.name}’s circle: opens the Scan page to confirm`,style:{display:"flex",alignItems:"center",gap:8,padding:"8px 10px",borderRadius:8,textDecoration:"none",color:"#fff",background:"rgba(255,255,255,0.04)",border:"1px solid rgba(0,255,136,0.18)"},children:[(0,b.jsx)("span",{style:{width:8,height:8,borderRadius:"50%",flexShrink:0,background:h[a.tier]||"#888",boxShadow:"0 0 0 2px rgba(0,255,136,0.45)"}}),(0,b.jsxs)("span",{style:{flex:1,minWidth:0},children:[(0,b.jsx)("span",{style:{fontSize:12,fontWeight:700},children:a.name}),(0,b.jsx)("span",{style:{fontSize:10,color:h[a.tier]||"#888",fontWeight:700,marginLeft:6},children:a.tier}),d&&(0,b.jsxs)("span",{style:{display:"block",fontSize:10,color:"#888",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:["was in ",String(d||"").trim().split(/\s+/)[0],"'s circle"]})]}),(0,b.jsx)("span",{style:{fontSize:10.5,fontWeight:700,color:"#00ff88",whiteSpace:"nowrap"},children:c?"Scanning…":"Scan… →"})]},a.id)}),m.length>5&&(0,b.jsx)("button",{type:"button",onClick:()=>k(a=>!a),style:{background:"none",border:"none",color:"#888",fontSize:10.5,fontWeight:600,cursor:"pointer",padding:"2px 0",textAlign:"left"},children:j?"Show fewer":`Show all ${m.length}`})]}),m.length>0&&(0,b.jsxs)("div",{style:{fontSize:10,color:"#888",lineHeight:1.5,marginTop:8},children:["Each scan: ",q.profileViews," profile view, then one LinkedIn search for every page of their list, up to ",q.searches," pages (about ",q.minutes," min for a whole list). Nothing starts until you confirm it on the Scan page."]}),n.length>0&&(0,b.jsxs)("div",{style:{marginTop:10,fontSize:10.5,color:"#777",lineHeight:1.6},children:[n.slice(0,3).map(a=>(0,b.jsxs)("div",{style:{opacity:.7},children:[(0,b.jsx)("span",{"aria-hidden":"true",children:"🔒"})," ",a.name," ",(0,b.jsx)("span",{style:{color:"#666"},children:"· their list is hidden"})]},a.id)),n.length>3&&(0,b.jsxs)("div",{style:{opacity:.7},children:["🔒 and ",n.length-3," more with hidden lists"]})]}),o>0&&(0,b.jsxs)("div",{style:{fontSize:10.5,color:"#888",lineHeight:1.5,marginTop:10},children:[o.toLocaleString("en-US")," of your other connections aren't scanned yet."," ",(0,b.jsx)(V.default,{href:"/setup",style:{color:"#3498DB",textDecoration:"none"},children:"Map them in batches on the Scan page →"})]}),s&&(0,b.jsxs)("div",{style:{fontSize:10,color:"#bbb",marginTop:8},children:[s,". One scan at a time."]})]})}var cc=a.i(80306),cd=a.i(36839),ce=a.i(58834);function cf(){let[a,d]=(0,c.useState)(!1),[e,f]=(0,c.useState)("");async function g(){d(!0),f("");try{await (0,ce.loadSampleIntoSession)(),window.location.reload()}catch(a){f(a.message||"Could not load the sample network."),d(!1)}}return(0,b.jsx)("div",{style:{position:"absolute",inset:0,display:"flex",alignItems:"center",justifyContent:"center",padding:24,overflowY:"auto"},children:(0,b.jsxs)("div",{style:{maxWidth:520,width:"100%",textAlign:"center"},children:[(0,b.jsx)("div",{style:{width:68,height:68,borderRadius:"50%",margin:"0 auto 22px",border:"2px solid rgba(255,215,0,0.35)",display:"flex",alignItems:"center",justifyContent:"center",fontSize:26},children:"✦"}),(0,b.jsx)("h2",{style:{fontSize:28,fontWeight:800,margin:"0 0 10px",background:"linear-gradient(135deg, #FFD700, #9B59B6, #3498DB)",WebkitBackgroundClip:"text",WebkitTextFillColor:"transparent"},children:"Welcome to Six Degrees"}),(0,b.jsx)("p",{style:{color:"rgba(255,255,255,0.5)",fontSize:14.5,lineHeight:1.7,margin:"0 0 28px"},children:"Your network, drawn as a galaxy. Everything stays on this computer. Pick how to bring it in — you can switch later."}),(0,b.jsx)(cg,{href:"/setup",primary:!0,badge:"Recommended",title:"Scan my LinkedIn",body:"A few guided steps: set up the scanner, sign into LinkedIn yourself, and watch your galaxy fill in. The only way to see who your connections know."}),(0,b.jsx)(cg,{href:"/import",title:"Import my LinkedIn CSV",body:"LinkedIn’s official export, read in your browser. Takes about ten minutes to arrive by email. Shows the people you know, not who they know."}),(0,b.jsx)(cg,{onClick:g,disabled:a,title:a?"Loading…":"Explore a sample network",body:"150 invented connections and the 598 people they know. Every view except Outlink and Scan, which need your own scan. Nothing about you is used."}),e&&(0,b.jsx)("div",{style:{color:"#ff6b6b",fontSize:13,marginTop:18},children:e}),(0,b.jsxs)("p",{style:{color:"rgba(255,255,255,0.45)",fontSize:13,lineHeight:1.6,margin:"18px 0 0"},children:["Moving from another computer?"," ",(0,b.jsx)("a",{href:"/settings#data",style:{color:"rgba(255,255,255,0.75)"},children:"Import your saved copy in Settings → Your data."})]})]})})}function cg({href:a,onClick:c,disabled:d,primary:e,badge:f,title:g,body:h}){let i={display:"block",width:"100%",boxSizing:"border-box",textAlign:"left",padding:"16px 18px",borderRadius:12,marginBottom:12,textDecoration:"none",cursor:d?"default":"pointer",font:"inherit",border:e?"1px solid rgba(255,215,0,0.45)":"1px solid rgba(255,255,255,0.12)",background:e?"linear-gradient(135deg, rgba(255,215,0,0.12), rgba(155,89,182,0.14))":"rgba(255,255,255,0.03)",color:"#fff"},j=(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,marginBottom:5},children:[(0,b.jsx)("span",{style:{fontSize:15.5,fontWeight:750},children:g}),f&&(0,b.jsx)("span",{style:{fontSize:10.5,fontWeight:800,letterSpacing:.5,textTransform:"uppercase",padding:"3px 8px",borderRadius:20,background:"#FFD700",color:"#0a0a1a"},children:f}),(0,b.jsx)("span",{style:{marginLeft:"auto",color:"rgba(255,255,255,0.4)"},children:"→"})]}),(0,b.jsx)("div",{style:{fontSize:13,color:"rgba(255,255,255,0.5)",lineHeight:1.6},children:h})]});return a?(0,b.jsx)("a",{href:a,style:i,children:j}):(0,b.jsx)("button",{onClick:c,disabled:d,style:i,children:j})}var ch=a.i(42510),ci=a.i(31318),cj=a.i(54031);let ck=[],cl=a=>!!a&&!["install","setup","login"].includes(a.action);function cm(a,b){let c={};a.forEach(a=>{c[a.tier]=(c[a.tier]||0)+1});let d={};return b.forEach(a=>{d[a.tier]=(d[a.tier]||0)+1}),{total:a.length,tiers:c,d2Total:b.length,d2Tiers:d}}function cn(){let a,{userId:f,userName:j}=(0,bR.useUser)(),k=function(){let[a,b]=(0,c.useState)(!1);return(0,c.useEffect)(()=>{let a=()=>b(window.innerWidth<768);return a(),window.addEventListener("resize",a),()=>window.removeEventListener("resize",a)},[]),a}(),[l,m]=(0,c.useState)([]),[n,o]=(0,c.useState)([]),[p,q]=(0,c.useState)([]),[r,s]=(0,c.useState)({network:by.NETWORK_GRID,degrees:by.DEGREES_GRID}),[t,u]=(0,c.useState)(null),v=(0,c.useRef)(null),w=(0,d.useSearchParams)(),x=w.get("chain"),y=["network","degrees","separation"].includes(w.get("mode"))?w.get("mode"):null,[z,A]=(0,c.useState)(x),[B,C]=(0,c.useState)(null),[D,E]=(0,c.useState)(()=>z?"degrees":y||"network"),[F,G]=(0,c.useState)(!0),[H,I]=(0,c.useState)(null),[J,K]=(0,c.useState)(!0),[L,M]=(0,c.useState)(!0),[N,Q]=(0,c.useState)(()=>z||"degrees"===y?"chain":"separation"===y?"separation":"galaxy"),[R,S]=(0,c.useState)(null),T=w.get("note"),U=(0,c.useCallback)(a=>{S(a),K(!1)},[]),[W,X]=(0,c.useState)(!1),[Y,Z]=(0,c.useState)("csv"),[$,_]=(0,c.useState)(e.NO_SCAN_NOTES),aa=(0,c.useRef)(""),ab=(0,h.requestCount)((0,g.default)());(0,c.useEffect)(()=>{f&&(a(),ce.IS_DEMO||(0,ch.hasCsvNetwork)()||(0,e.loadScanNotes)().then(_));async function a(){let a=(0,ch.hasCsvNetwork)()?(0,ch.loadCsvNetwork)():null;a&&(X(!0),Z(a.source||"csv"));let{degree1:b,degree2:c,degree3:d=[]}=ce.IS_DEMO?await (0,ce.loadDemoNetwork)():a||await (async()=>await (0,i.loadNetwork)(f))();m(b),o(c),q(d||[]),aa.current=co(b,c),I(cm(b,c)),G(!1)}},[f]);let ac=(0,c.useCallback)(async()=>{if(!(ce.IS_DEMO||(0,ch.hasCsvNetwork)())&&f)try{let[{degree1:a,degree2:b,degree3:c=[]},d]=await Promise.all([(0,i.loadNetwork)(f),(0,e.loadScanNotes)()]);_(a=>JSON.stringify(a)===JSON.stringify(d)?a:d),q(a=>a.length===(c||[]).length?a:c||[]);let g=co(a,b);if(g===aa.current)return;aa.current=g,m(a),o(b),I(cm(a,b))}catch{}},[f]),[ad,ae]=(0,c.useState)(null),af=(0,c.useCallback)(a=>{ae({...a,id:`${a.query}|${a.tier||""}|${a.rarity||""}|${Math.random()}`}),E("separation"),Q("separation")},[]),ag=(0,c.useCallback)(a=>{A(a),E("degrees"),Q("chain")},[]),ah=(0,c.useCallback)(()=>{A(null);try{window.history.replaceState(null,"",window.location.pathname)}catch{}},[]),ai="degrees"===D||"separation"===D,aj=(0,c.useMemo)(()=>(function(a=[],b=[],c=[]){let d=new Set,e=(a,b)=>{let c=[];for(let e of a||[]){let a=(0,P.keyFor)(e);d.has(a)||(d.add(a),c.push(e.degree===b?e:{...e,degree:b}))}return c};return{1:e(a,1),2:e(b,2),3:e(c,3)}})(l,n,p),[l,n,p]),ak=ai?r.degrees:r.network,al="separation"===D,am=(0,c.useMemo)(()=>al?l:ai?l.filter(a=>(0,by.shows)(ak,a.tier,1)):[1,2,3].flatMap(a=>(aj[a]||[]).filter(b=>(0,by.shows)(ak,b.tier,a))),[al,ai,l,aj,ak]),an=(0,c.useMemo)(()=>new Map(l.map(a=>[a.id,a])),[l]),ao=(0,c.useMemo)(()=>(0,cj.networkLevel)(l,n),[l,n]),ap=(0,c.useMemo)(()=>new Set(n.map(a=>a.source_connection_id).filter(Boolean)),[n]),aq=(0,c.useMemo)(()=>ai?al?n.filter(a=>(0,by.shows)(ak,a.tier,2)):n.filter(a=>(0,by.shows)(ak,a.tier,2)&&(0,by.shows)(ak,an.get(a.source_connection_id)?.tier,1)):ck,[ai,al,ak,an,n]),ar=(0,c.useMemo)(()=>(0,by.gridCounts)(al?{2:aj[2]}:ai?{1:l.filter(a=>ap.has(a.id)),2:aj[2]}:aj),[al,ai,l,ap,aj]),as=(0,c.useCallback)(a=>{u(a),a&&(K(!1),S(null))},[]),at=(a=bv[N])&&a.modes.includes(D)?{key:N,...a}:bx(D)[0]??{key:"list",...bv.list},au=l.length>0;if((0,c.useEffect)(()=>{if(au)return(0,aZ.setNotchTabs)({items:bx(D).map(a=>({key:a.key,label:a.label,icon:a.icon,title:a.desc})),current:at.key,onPick:Q}),()=>(0,aZ.setNotchTabs)(null)},[D,at.key,au]),F)return(0,b.jsxs)("div",{style:{minHeight:"100vh",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",background:"var(--sd-page)",color:"#fff"},children:[(0,b.jsx)("div",{style:{fontSize:24,fontWeight:700},children:"Loading Six Degrees…"}),(0,b.jsx)("div",{style:{fontSize:14,color:"#888",marginTop:8},children:"Mapping your LinkedIn network"})]});let av=!ce.IS_DEMO&&!W;return(0,b.jsxs)("div",{"data-map":!0,style:{height:"100vh",overflow:"hidden",background:"var(--sd-page)",color:"#fff",fontFamily:"var(--sd-font)"},children:[(0,b.jsx)(ci.default,{active:D,isMobile:k,csvMode:W,onMode:a=>{E(a),u(null),Q("network"===a?"galaxy":"degrees"===a?"chain":"separation")},level:ao,onOpenNote:U,openNoteId:T,chips:W&&(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,marginLeft:k?4:10,padding:k?"4px 8px":"5px 10px",borderRadius:999,background:"rgba(255,255,255,0.05)",border:"1px solid rgba(255,255,255,0.12)"},children:[(0,b.jsx)("span",{style:{width:6,height:6,borderRadius:"50%",background:"sample"===Y?"#9B59B6":"#2ecc71"}}),(0,b.jsx)("span",{style:{fontSize:k?10:12,color:"rgba(255,255,255,0.65)",whiteSpace:"nowrap"},children:"sample"===Y?"Sample network":"Your CSV"}),(0,b.jsx)("button",{onClick:()=>{(0,ch.clearCsvNetwork)(),window.location.href="/"},title:"sample"===Y?"Leave the sample network":"Clear this import",style:{border:"none",background:"transparent",cursor:"pointer",color:"#888",fontSize:k?13:15,lineHeight:1,padding:"0 0 0 2px"},children:"×"})]}),children:ai&&!W&&ab>0&&(0,b.jsxs)(V.default,{href:"/queue",style:{padding:"5px 12px",borderRadius:16,fontSize:12,fontWeight:600,textDecoration:"none",background:"rgba(255,107,53,0.12)",color:"#FF6B35",border:"1px solid rgba(255,107,53,0.25)",display:"inline-flex",alignItems:"center",gap:5},children:[(0,b.jsx)("span",{style:{fontSize:10},children:"⏳"}),ab," Pending"]})}),(0,b.jsxs)("div",{style:{display:"flex",height:k?"calc(100vh - 70px)":"calc(100vh - 130px)",position:"relative"},children:[(0,b.jsx)(cc.default,{collapsed:L,onToggle:()=>M(!L),mode:al?"separation":ai?"degrees":"network",visualMode:at.key,grid:ak,gridCounts:ar,onGridChange:a=>s(b=>({...b,[ai?"degrees":"network"]:a}))}),(()=>{if(0===l.length)return(0,b.jsx)(cf,{});if(ai&&0===n.length)return(0,b.jsx)("div",{style:{position:"absolute",inset:0,display:"flex",alignItems:"center",justifyContent:"center",padding:24,textAlign:"center"},children:(0,b.jsxs)("div",{style:{maxWidth:440},children:[(0,b.jsx)("div",{style:{fontSize:40,marginBottom:16,opacity:.5},children:"🔗"}),(0,b.jsx)("h2",{style:{fontSize:22,fontWeight:800,margin:"0 0 12px",color:"#fff"},children:"Degrees need 2nd-degree data"}),(0,b.jsxs)("p",{style:{color:"rgba(255,255,255,0.45)",fontSize:14,lineHeight:1.7,margin:"0 0 20px"},children:["This view maps who ",(0,b.jsx)("em",{children:"your connections"})," ","know — the people you haven’t met yet. LinkedIn’s CSV export only covers your own 1st-degree list, so there are no circles to open here."]}),(0,b.jsxs)("p",{style:{color:"#666",fontSize:13,lineHeight:1.7,margin:0},children:["The local scanner maps those circles (and captures real photos)."," ",(0,b.jsx)(V.default,{href:"/setup",style:{color:"#3498DB",textDecoration:"none"},children:"Set up scanning →"})]})]})});let a=at.component,c={connections:am,degree2:at.allDegree2?n:aq,onSelect:as,mode:D,userName:j,userImage:null,selectedId:t?.id??null,tierColors:O.TIER_COLORS,focusNodeRef:v,fullDegree1:l,fullDegree2:n,scanNotes:$,canScan:av,chainOpen:z,onChainOpened:ah,onCircle:C,preset:ad};return(0,b.jsx)(a,{...c})})(),(0,b.jsx)(b1,{selected:t,stats:H,tierColors:O.TIER_COLORS,connections:l,degree2:n,mode:ai?"degrees":"network",collapsed:J,onToggle:()=>K(!J),onSelect:a=>{u(a||null)},onSwitchMode:a=>{E(a)},note:R,onCloseNote:()=>S(null),circle:"chain"===at.key?B:null,onOpenCircle:ag,onShowInSeparation:af,onFocusNode:a=>{v.current&&v.current(a)},csvSource:ce.IS_DEMO?"sample":W?Y:null,scanNotes:$,canScan:av}),av&&(0,b.jsx)(cp,{onChange:ac,live:"chain"===at.key})]})]})}function co(a,b){let c=0x811c9dc5,d=a=>{for(let b=0;b<a.length;b++)c=Math.imul(c^a.charCodeAt(b),0x1000193)};for(let c of[...a,...b])d(`${c.id}|${c.degree}|${c.source_connection_id??""}|${c.unlocked_from_bridge_id??""}|${c.tier}|${c.power_score}|${c.unlock_status??""}|${c.profile_image_url??""};`);return`${a.length}:${b.length}:${c>>>0}`}function cp({onChange:a,live:b}){let d=(0,f.default)(),g=d.finished.find(cl)?.startedAt??null,h=b&&d.running&&(0,e.isCircleScan)(d);return(0,c.useEffect)(()=>{null!=g&&a()},[g,a]),(0,c.useEffect)(()=>{if(!h)return;let b=setInterval(a,2e4);return()=>clearInterval(b)},[h,a]),null}a.s(["default",0,function(){return(0,b.jsx)(cd.default,{children:(0,b.jsx)(c.Suspense,{children:(0,b.jsx)(cn,{})})})}],30100)}];
52
+ .sepslide::-webkit-slider-runnable-track { height: 6px; border-radius: 3px; background: linear-gradient(90deg, ${br} 0%, #FFD700 50%, ${bs} 100%); }
53
+ .sepslide::-webkit-slider-thumb { -webkit-appearance: none; width: 20px; height: 20px; margin-top: -7px; border-radius: 50%; background: var(--sd-bg); border: 3px solid #fff; box-shadow: 0 0 10px rgba(var(--sd-ink, 255, 255, 255), 0.45); }
54
+ .sepslide::-moz-range-track { height: 6px; border-radius: 3px; background: linear-gradient(90deg, ${br} 0%, #FFD700 50%, ${bs} 100%); }
55
+ .sepslide::-moz-range-thumb { width: 14px; height: 14px; border-radius: 50%; background: var(--sd-bg); border: 3px solid #fff; box-shadow: 0 0 10px rgba(var(--sd-ink, 255, 255, 255), 0.45); }
56
+ .sepslide:focus-visible { outline: 2px solid rgba(var(--sd-ink, 255, 255, 255), 0.7); outline-offset: 3px; border-radius: 6px; }
57
+ `,bu="Rarity is how many mutual connections lead to them: few is a rare way in, many is warm (likely to accept). It never changes a score or a tier.",bv=(0,c.memo)(function({p:a,top:c,height:d,isMobile:e,selected:f,tierColors:g,onPick:h,q:i,status:j,rarity:k}){let{person:l}=a,m=g[a.tier]||"#888",n=function(a,b){if(b){let c=a.routes.find(a=>a.bridge&&String(a.bridge.name||"").toLowerCase().includes(b));if(c)return c}return a.routes[0]||null}(a,i),o=a.rank<=3,p=f?"rgba(255,107,53,0.08)":o?`${m}08`:"transparent",q="LinkedIn Member"===l.name,r=`#${a.rank}${a.tied?"=":""}`,s=a.waysIn-1,t=n?.bridge?`via ${n.bridge.name}${s>0?` and ${s} other${s>1?"s":""}`:""}`:`via ${a2}${s>0?` and ${s} other${s>1?"s":""}`:""}`;return(0,b.jsxs)("div",{role:"button",tabIndex:0,"aria-label":`Rank ${a.rank}${a.tied?", tied":""}, ${l.name}, ${a.tier} tier, ${a.score.toFixed(1)}, ${a.waysIn} way${1===a.waysIn?"":"s"} in, ${t}`,"aria-pressed":f,onClick:()=>h(a),onKeyDown:b=>{("Enter"===b.key||" "===b.key)&&(b.preventDefault(),h(a))},onMouseEnter:a=>{f||(a.currentTarget.style.background="rgba(var(--sd-ink, 255, 255, 255), 0.04)")},onMouseLeave:a=>{a.currentTarget.style.background=p},className:"seprow",style:{position:"absolute",top:c,left:0,right:0,height:d,boxSizing:"border-box",display:"grid",alignItems:"center",gap:10,padding:"0 12px",gridTemplateColumns:e?"44px 36px 1fr 44px":a3,borderLeft:`3px solid ${f?a0:"transparent"}`,borderBottom:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.04)",background:p,cursor:"pointer"},children:[(0,b.jsx)("span",{style:{fontSize:e?11:12,fontWeight:800,color:o?m:"var(--sd-fg-5, #555)",whiteSpace:"nowrap"},children:r}),(0,b.jsx)(a_,{person:l,size:32,tierColors:g}),e?(0,b.jsxs)("div",{style:{minWidth:0,display:"flex",flexDirection:"column",gap:2},children:[(0,b.jsxs)("span",{style:{display:"flex",alignItems:"center",gap:4,minWidth:0},children:[(0,b.jsxs)("span",{style:{...bk,fontSize:13,fontWeight:600,color:q?"var(--sd-fg-3, #888)":"var(--sd-fg-1, #fff)",minWidth:0},children:[l.name,q&&(0,b.jsx)("span",{style:{fontSize:10,color:"var(--sd-fg-4, #666)",fontWeight:400},children:" · out of network"})]}),(0,b.jsx)(bo,{status:j,rarity:k})]}),(0,b.jsx)(bl,{p:a,route:n,tierColors:g,compact:!0}),(0,b.jsx)("span",{style:{...bk,fontSize:10,color:"var(--sd-fg-4, #666)"},children:a7(l)})]}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{style:{minWidth:0},children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,minWidth:0},children:[(0,b.jsx)("span",{style:{...bk,fontSize:13,fontWeight:600,color:q?"var(--sd-fg-3, #888)":"var(--sd-fg-1, #fff)"},children:l.name}),(0,b.jsx)("span",{style:{flexShrink:0,fontSize:9,fontWeight:800,color:m,border:`1px solid ${m}55`,borderRadius:4,padding:"0 4px"},children:a.tier}),(0,b.jsx)(bo,{status:j,rarity:null}),q&&(0,b.jsx)("span",{style:{flexShrink:0,fontSize:10,color:"var(--sd-fg-4, #666)"},children:"out of network"})]}),(0,b.jsx)("div",{style:{...bk,fontSize:10,color:"var(--sd-fg-4, #777)",marginTop:2},children:a7(l)})]}),(0,b.jsx)(bl,{p:a,route:n,tierColors:g}),(0,b.jsx)(bn,{p:a,rarity:k}),(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10},children:[(0,b.jsx)("div",{style:{flex:1,height:6,background:"rgba(var(--sd-ink, 255, 255, 255), 0.06)",borderRadius:3},children:(0,b.jsx)("div",{style:{height:"100%",borderRadius:3,background:m,width:`${100*Math.max(0,Math.min(1,a.score/10))}%`}})}),(0,b.jsx)("span",{style:{fontSize:15,fontWeight:800,color:m,width:30,textAlign:"right"},children:a.score.toFixed(1)})]})]}),e&&(0,b.jsxs)("div",{style:{textAlign:"right"},children:[(0,b.jsx)("div",{style:{fontSize:13,fontWeight:800,color:m},children:a.score.toFixed(1)}),(0,b.jsx)("div",{style:{fontSize:9,color:"var(--sd-fg-4, #666)",fontWeight:700},children:a.tier})]})]})}),bw={galaxy:{component:function({connections:a,onSelect:d,tierColors:e,focusNodeRef:f,userName:g,selectedId:h=null,scanNotes:i,fullDegree1:m,fullDegree2:V}){let W=(0,c.useMemo)(()=>{let b=(0,K.reachIndex)(m||a,V||[],i||{}),c=(0,K.readyByCircle)(b),d=new Map;for(let e of a){if(1!==(e.degree||1))continue;let a=(0,K.scanBars)(e,b),f=c.get(e.id)||0;(null!=a||f)&&d.set(e.id,{bars:a,ready:f})}return d},[a,m,V,i]),X=(0,c.useMemo)(()=>(0,P.routeIndex)(V||[]),[V]),Y=(0,c.useRef)(null),Z=(0,c.useRef)(null),$=(0,c.useRef)(null),_=(0,c.useRef)({transform:null,size:null}),aa=(0,c.useRef)(null),[ab,ac]=(0,c.useState)(null),ad=(0,c.useRef)(null),ae=(0,c.useSyncExternalStore)(M.watchLab,M.labNow,()=>M.LAB_DEFAULTS),af=(0,c.useRef)(ae);(0,c.useEffect)(()=>{af.current=ae,$.current?.setLab((0,M.effectiveLab)(ae));let a=(0,M.clockNow)();$.current?.setFind(a.find,a.fly),ae.on&&(0,M.loadSocial)()},[ae]),(0,c.useEffect)(()=>(0,M.watchClock)(()=>{let a=(0,M.clockNow)();$.current?.setTime(a.at),$.current?.setFind(a.find,a.fly),$.current?.setFit(a.fit)}),[]),(0,c.useEffect)(()=>()=>(0,M.stopReplay)(),[]);let ag=(0,c.useSyncExternalStore)(M.watchClock,()=>(0,M.clockNow)().social,()=>void 0),ah=(0,M.effectiveLab)(ae).colourBy,ai=(0,c.useMemo)(()=>(0,M.colourScheme)(ah,a,e,ag),[ah,a,e,ag]),aj=(0,c.useRef)(ai);(0,c.useEffect)(()=>{aj.current=ai,$.current?.setColours(ai)},[ai]);let ak=(0,c.useRef)(d);(0,c.useEffect)(()=>{ak.current=d});let al=(0,c.useRef)(h);(0,c.useEffect)(()=>{let a=Y.current?.parentElement;if(!a)return;let b=()=>{let b=Math.round(a.clientWidth),c=Math.round(a.clientHeight);aa.current={width:b,height:c},ac(a=>a&&a.width===b&&a.height===c?a:{width:b,height:c})};b();let c=new ResizeObserver(b);return c.observe(a),()=>c.disconnect()},[]),(0,c.useEffect)(()=>{al.current=h,$.current?.select(h)},[h]),(0,c.useEffect)(()=>{ab&&$.current?.resize(ab)},[ab]);let am=null!==ab;return(0,c.useEffect)(()=>{if(!am||!Y.current||!a.length)return;let b=j.select(Y.current);b.selectAll("*").remove();let c=aa.current,{transform:d,size:h}=_.current,i=d?J(d,h,c):null,m=function(a,b,c,d,e,f,g,h,i,k,l=new Map,m=M.LAB_DEFAULTS,K=null,N=null,T=new Map){var V,W,X;let Y=N?.of??(a=>f[a.tier]||"#666"),Z=[{id:R,name:k||"You",tier:"center",degree:0,power_score:10,fx:0,fy:0},...d.map(a=>({id:a.id,name:a.name,tier:a.tier,degree:a.degree||1,source_connection_id:a.source_connection_id,unlocked_from_bridge_id:a.unlocked_from_bridge_id,power_score:parseFloat(a.power_score)||1,company:a.company,role:a.role,headline:a.headline,profile_url:a.profile_url,profile_image_url:(0,I.localPhoto)(a.profile_image_url),connected_date:a.connected_date,seniority_score:a.seniority_score,company_prestige_score:a.company_prestige_score,influence_signals:a.influence_signals,is_catalyst:a.is_catalyst,catalyst_score:a.catalyst_score,circle_power:a.circle_power,circle_s_count:a.circle_s_count,circle_a_count:a.circle_a_count}))],$=new Map(Z.map(a=>[a.id,a])),_=new Set(d.filter(a=>1===(a.degree||1)).map(a=>a.id)),aa=d.some(a=>(a.degree||1)>1),ab=new Map;for(let a of Z){if(a.id===R)continue;let b=a.unlocked_from_bridge_id;1===a.degree&&aa&&null!=b&&b!==a.id&&_.has(b)?ab.set(a.id,b):2===a.degree&&_.has(a.source_connection_id)&&ab.set(a.id,a.source_connection_id)}let ac=new Map,ad=(a,b=new Set)=>{if(a.id===R)return 0;if(ac.has(a.id))return ac.get(a.id);let c=ab.get(a.id),d=a.degree>=3?3:a.degree;return null==c||b.has(a.id)||(b.add(a.id),d=ad($.get(c),b)+1),d=Math.min(d,6),ac.set(a.id,d),d},ae=d.map(a=>{let b=ab.get(a.id)??R;return{source:b,target:a.id,near:b!==R}}),af=new Map;for(let a of Z){if(2!==a.degree||!ab.has(a.id))continue;let b=T.get((0,P.keyFor)(a));if(!b||b.size<2)continue;let c=[...b].filter(b=>null!=b&&b!==ab.get(a.id)&&_.has(b));c.length&&af.set(a.id,c)}for(let[a,b]of af)for(let c of b)ae.push({source:c,target:a,near:!0,also:!0});let ag=new Map;for(let a of ae)ag.set(a.source,(ag.get(a.source)||0)+1),ag.set(a.target,(ag.get(a.target)||0)+1);let ah=new Set(ab.values()),ai=new Map;for(let a of ab.values())ai.set(a,(ai.get(a)||0)+1);let aj=a=>{switch(a){case"S":return 150;case"A":return 250;case"B":return 350;case"C":return 450;default:return 520}},ak=["S","A","B","C","D"],al=[[115,135,155,175,192],[265,300,335,370,398],[465,500,535,565,590],[660,690,720,745,765]],am=[...new Set(Z.filter(a=>a.id!==R).map(a=>ad(a)))].sort((a,b)=>a-b),an=aa&&am.length>1,ao=a=>{if(!an)return aj(a.tier);let b=Math.min(am.indexOf(ad(a)),al.length-1),c=ak.indexOf(a.tier);return al[b][c<0?4:c]},ap=window.innerWidth<768,aq=ap?{...M.LAB_DEFAULTS,labels:m.labels}:m,ar=(0,M.reachCounts)(Z,ab),as=a=>{if(a.id===R)return"links"===aq.sizeBy?24:18;if("links"===aq.sizeBy)return Math.min(44,3.5+2.1*Math.sqrt(ag.get(a.id)||1))*aq.dotSize;if("reach"===aq.sizeBy)return Math.min(28,2.5+1.6*Math.sqrt(ar.get(a.id)||0))*aq.dotSize;let b=Math.max(3,Math.min(12,1.3*(a.power_score||1)));return(a.degree>1?Math.max(2.5,.75*b):b)*aq.dotSize},at=a.append("g"),au=new Map,av=null;if(!ap&&an){let a=av=at.append("g").attr("class","degree-guides").style("pointer-events","none"),b=["","1st","2nd","3rd","4th","5th","6th"];am.slice(0,al.length).forEach((c,d)=>{let e=al[d][2];a.append("circle").attr("r",e).attr("fill","none").attr("stroke","#8899aa").attr("stroke-opacity",.12).attr("stroke-width",1).attr("stroke-dasharray","2 4"),a.append("text").attr("x",0).attr("y",-al[d][4]-8).attr("text-anchor","middle").attr("font-size",10).attr("font-weight",700).attr("fill","#8899aa").attr("fill-opacity",.55).text(b[c]||`${c}th`)})}else if(!ap){let a=av=at.append("g").attr("class","tier-guides").style("pointer-events","none");for(let b of["S","A","B","C","D"]){let c=aj(b),d=a.append("circle").attr("r",c).attr("fill","none").attr("stroke",f[b]||"#666").attr("stroke-opacity",.16).attr("stroke-width",1).attr("stroke-dasharray","2 4"),e=a.append("text").attr("x",0).attr("y",-c-4).attr("text-anchor","middle").attr("font-size",10).attr("font-weight",700).attr("fill",f[b]||"#666").attr("fill-opacity",.5).text(b);au.set(b,{ring:d,label:e})}}let aw=null,ax=null,ay=q.default().scaleExtent([.1,4]).on("zoom",a=>{at.attr("transform",a.transform),i.current={transform:aw??a.transform,size:c},ax?.classed("far",a.transform.k<.85),aC()});a.call(ay);let az=(b,d)=>{if(S()){aw=null,a.interrupt().call(ay.transform,b);return}aw=b,i.current={transform:b,size:c},a.transition().duration(d).call(ay.transform,b).on("end interrupt cancel",()=>{aw===b&&(aw=null)})},aA=b.firstChild,aB=null,aC=()=>{if(!aB)return;let c=n.default(a.node());b.style.transform=`translate(${c.applyX(aB.x)}px, ${c.applyY(aB.y)}px) scale(${c.k})`},aD=a=>{if(aB=null!=a&&a!==R?$.get(a)??null:null,b.style.display=aB?"block":"none",!aB)return;let c=as(aB)+8;aA.style.width=aA.style.height=`${2*c+2.5}px`,aA.style.margin=`${-(c+1.25)}px`,aA.style.borderColor=Y(aB)||"#FFD700",aC()};if(h)a.call(ay.transform,o.identity.translate(h.x,h.y).scale(h.k));else{let b=ap&&c.width>0&&c.height>0?Math.min(c.width/1248,c.height/1248):1;a.call(ay.transform,o.identity.translate(c.width/2,c.height/2).scale(b))}if(g&&(g.current=a=>{let b=$.get(a);b&&(az(o.identity.translate(c.width/2-2.5*b.x,c.height/2-2.5*b.y).scale(2.5),750),aD(a))}),ap){let a={};Z.forEach(b=>{let c=b.tier||"D";a[c]||(a[c]=[]),a[c].push(b)}),Object.entries(a).forEach(([a,b])=>{b.forEach((c,d)=>{if(c.id===R){c.x=0,c.y=0,c.fx=c.x,c.fy=c.y;return}let e=aj(a),f=d/b.length*Math.PI*2-Math.PI/2;c.x=e*Math.cos(f),c.y=e*Math.sin(f),c.fx=c.x,c.fy=c.y})})}let aE=ap?0:an?.06:.1,aF=an?.45:.3,aG=a=>{let b=(a.near?Math.max(40,ao(a.target)-ao(a.source)):ao(a.target))*aq.distance;if("links"!==aq.sizeBy)return b;let c=a.source.id===R?7*Math.sqrt(ai.get(a.target.id)||0):0;return b+as(a.source)+as(a.target)+c},aH=a=>(a.id===R?-20:-1)*aq.push,aI=a=>.15*aq.gravity*(ah.has(a.id)?.5:a.degree>=2?.2:1),aJ=()=>O.MAP_LOOK.light?Math.min(.7,.22+.08*aq.lines):Math.min(.45,.1+.05*aq.lines),aK=r.forceSimulation(Z).force("link",s.forceLink(ae).id(a=>a.id).distance(aG).strength(Math.min(1,aE*aq.pull))).force("charge",t.forceManyBody().strength(ap?0:aH)).force("center",ap?null:function(a,b){var c,d=1;function e(){var e,f,g=c.length,h=0,i=0;for(e=0;e<g;++e)h+=(f=c[e]).x,i+=f.y;for(h=(h/g-a)*d,i=(i/g-b)*d,e=0;e<g;++e)f=c[e],f.x-=h,f.y-=i}return null==a&&(a=0),null==b&&(b=0),e.initialize=function(a){c=a},e.x=function(b){return arguments.length?(a=+b,e):a},e.y=function(a){return arguments.length?(b=+a,e):b},e.strength=function(a){return arguments.length?(d=+a,e):d},e}(0,0)).force("gravityX",ap?null:u.forceX(0).strength(aI)).force("gravityY",ap?null:v.forceY(0).strength(aI)).force("collision",ap?null:w.forceCollide().radius(a=>as(a)+2)).force("radial",ap?null:(function(a,b,c){var d,e,f,g=(0,x.default)(.1);function h(a){for(var g=0,h=d.length;g<h;++g){var i=d[g],j=i.x-b||1e-6,k=i.y-c||1e-6,l=Math.sqrt(j*j+k*k),m=(f[g]-l)*e[g]*a/l;i.vx+=j*m,i.vy+=k*m}}function i(){if(d){var b,c=d.length;for(e=Array(c),f=Array(c),b=0;b<c;++b)f[b]=+a(d[b],b,d),e[b]=isNaN(f[b])?0:+g(d[b],b,d)}}return"function"!=typeof a&&(a=(0,x.default)(+a)),null==b&&(b=0),null==c&&(c=0),h.initialize=function(a){d=a,i()},h.strength=function(a){return arguments.length?(g="function"==typeof a?a:(0,x.default)(+a),i(),h):g},h.radius=function(b){return arguments.length?(a="function"==typeof b?b:(0,x.default)(+b),i(),h):a},h.x=function(a){return arguments.length?(b=+a,h):b},h.y=function(a){return arguments.length?(c=+a,h):c},h})(a=>a.id===R?0:ao(a),0,0).strength(aF*aq.rings));av?.attr("opacity",Math.min(1,aq.rings)),aK.on("end.guides",()=>{for(let[a,{ring:b,label:c}]of au){let d=Z.filter(b=>b.tier===a&&b.id!==R).map(a=>Math.hypot(a.x||0,a.y||0)).sort((a,b)=>a-b);if(!d.length){b.attr("opacity",0),c.attr("opacity",0);continue}let e=d[Math.floor(d.length/2)];b.attr("r",e).attr("opacity",1),c.attr("y",-e-4).attr("opacity",1)}});let aL=N?.heat||null,aM=a.select("defs").size()?a.select("defs"):a.append("defs");for(let a=0;a<=5;a++){if(aM.select(`#heat-glow-${a}`).size())continue;let b=aM.append("radialGradient").attr("id",`heat-glow-${a}`);b.append("stop").attr("offset","0").attr("stop-color",(0,M.heatColour)(a/5)).attr("stop-opacity",.14+.06*a),b.append("stop").attr("offset","1").attr("stop-color",(0,M.heatColour)(a/5)).attr("stop-opacity",0)}let aN=at.append("g").attr("class","heat-glow").style("pointer-events","none").style("mix-blend-mode","screen"),aO=aN.selectAll("circle"),aP=()=>{let a=aL?Z.filter(a=>a.id!==R&&aL(a)>=.5).sort((a,b)=>aL(b)-aL(a)).slice(0,700):[];aO=aN.selectAll("circle").data(a,a=>a.id).join("circle").attr("r",a=>2.5*as(a)+12+30*aL(a)).attr("fill",a=>`url(#heat-glow-${Math.round(5*aL(a))})`).attr("cx",a=>a.x||0).attr("cy",a=>a.y||0).style("display",a=>null==bw||bn.get(a.id)<=bw?null:"none")},aQ=a=>"one"===O.MAP_LOOK.lines?O.MAP_LOOK.line:Y(a.target)||"#333",aR=at.append("g").selectAll("line").data(ae).join("line").attr("class","gl").attr("stroke",aQ).attr("stroke-opacity",aJ()).attr("stroke-width",.5*aq.lines),aS=Z.filter(a=>a.is_catalyst&&l.get(a.id)?.bars==null);if(aS.length){let b=a.select("defs").size()?a.select("defs"):a.append("defs");if(!b.select("#catalyst-glow-nm").size()){let a=b.append("filter").attr("id","catalyst-glow-nm").attr("x","-60%").attr("y","-60%").attr("width","220%").attr("height","220%");a.append("feGaussianBlur").attr("stdDeviation","5").attr("result","blur"),a.append("feMerge").html('<feMergeNode in="blur"/><feMergeNode in="SourceGraphic"/>')}at.append("g").selectAll("circle").data(aS).join("circle").attr("r",a=>as(a)+6).attr("fill","none").attr("stroke","#00ff88").attr("stroke-width",2).attr("stroke-dasharray","3,3").attr("filter","url(#catalyst-glow-nm)").attr("cx",a=>a.x||0).attr("cy",a=>a.y||0).attr("class","catalyst-ring")}let aT=Z.filter(a=>l.has(a.id)),aU=at.append("g").attr("class","dot-rings").style("pointer-events","none").selectAll("g").data(aT).join("g").attr("transform",a=>`translate(${a.x||0},${a.y||0})`);function aV(a){let{bars:b,ready:c}=l.get(a.id),d=as(a)+3.5,e=j.select(this);if(e.selectAll("*").remove(),null!=b){let a;for(let c of(a=(2*Math.PI-1.6)/5,Array.from({length:5},(b,c)=>{let e=-Math.PI/2+.16+c*(a+.32),f=a=>`${(d*Math.cos(a)).toFixed(2)} ${(d*Math.sin(a)).toFixed(2)}`;return{i:c,d:`M${f(e)} A${d} ${d} 0 0 1 ${f(e+a)}`}})))e.append("path").attr("d",c.d).attr("fill","none").attr("stroke-linecap","round").attr("stroke-width",1.6).attr("stroke",c.i<b?"#1abc9c":L)}if(c>0){let a=.72*d;e.append("circle").attr("cx",a).attr("cy",a).attr("r",5.5).attr("fill","#7F77DD"),e.append("text").attr("x",a).attr("y",a+2.5).attr("text-anchor","middle").attr("font-size",7).attr("font-weight",700).attr("fill","#fff").text(c>9?"9+":c)}}aU.each(aV);let aW=O.MAP_LOOK.dots,aX=a.select("defs").size()?a.select("defs"):a.append("defs"),aY=new Map,aZ=a=>{if("droplet"!==aW||!a||!/^#[0-9a-f]{6}$/i.test(a))return a;if(!aY.has(a)){if(aY.size>=64)return a;let b=`drop-${aY.size}`,c=aX.append("radialGradient").attr("id",b).attr("cx","50%").attr("cy","50%").attr("r","50%").attr("fx","34%").attr("fy","30%");c.append("stop").attr("offset","0").attr("stop-color","#ffffff").attr("stop-opacity",.95),c.append("stop").attr("offset","0.22").attr("stop-color",a).attr("stop-opacity",.9),c.append("stop").attr("offset","0.72").attr("stop-color",a).attr("stop-opacity",.5),c.append("stop").attr("offset","1").attr("stop-color",a).attr("stop-opacity",.12),aY.set(a,`url(#${b})`)}return aY.get(a)},a$=at.append("g");if("glow"===aW&&Z.length<=6e3){if(!aX.select("#dot-glow").size()){let a=aX.append("filter").attr("id","dot-glow").attr("x","-50%").attr("y","-50%").attr("width","200%").attr("height","200%");a.append("feGaussianBlur").attr("stdDeviation",2.2).attr("result","b"),a.append("feMerge").html('<feMergeNode in="b"/><feMergeNode in="SourceGraphic"/>')}a$.attr("filter","url(#dot-glow)")}let a_=a$.selectAll("circle").data(Z).join("circle").attr("class","gn").attr("r",as).attr("fill",a=>a.id===R?O.MAP_LOOK.you:aZ(Y(a))).attr("fill-opacity",a=>"droplet"===aW||"plain"===aW?1:a.degree>=3?.55:2===a.degree?.75:1).attr("stroke",a=>a.id===R?"#FFD700":a.is_catalyst?"#00ff88":"droplet"===aW?Y(a):"plain"===aW?"#2b2b2b":"none").attr("stroke-opacity",a=>a.id===R||a.is_catalyst?1:"droplet"===aW?.45:"plain"===aW?.75:1).attr("stroke-width",a=>a.id===R?3:a.is_catalyst?2.5:"droplet"===aW?.7:.8*("plain"===aW)).style("cursor","pointer").on("click",(a,b)=>{b.id!==R&&(aD(b.id),e(b))}),a0=j.select("body").append("div").attr("class","graph-tooltip").style("position","fixed").style("top","0px").style("left","0px").style("background","rgba(0,0,0,0.92)").style("color","#fff").style("padding","8px 12px").style("border-radius","6px").style("font-size","12px").style("pointer-events","none").style("opacity",0).style("z-index",1e3).style("border","1px solid rgba(var(--sd-ink, 255, 255, 255), 0.2)").style("max-width","280px"),a1=j.select("body").append("div").attr("class","graph-tooltip").style("position","fixed").style("top","0px").style("left","0px").style("pointer-events","none").style("opacity",0).style("z-index",1001).style("transition","opacity 0.15s"),a2=new Map;for(let[a,b]of ab)a2.has(b)||a2.set(b,[]),a2.get(b).push(a);let a3=null;a_.on("mouseover",function(a,b){if(U(this,1.5*as(b)),clearTimeout(a3),aq.on&&aq.branch&&b.id!==R&&(a=>{let b=new Set([R,a.id]),c=[a.id];for(;c.length;)for(let a of a2.get(c.pop())||[])b.has(a)||(b.add(a),c.push(a));for(let c=ab.get(a.id),d=0;null!=c&&d<7;c=ab.get(c),d++)b.add(c);a_.classed("lit",a=>b.has(a.id)),aR.classed("lit",a=>b.has(a.source.id)&&b.has(a.target.id)),at.classed("lab-focus",!0)})(b),b.profile_image_url&&b.id!==R){var c;let d,e=Math.max(48,5*as(b));a1.style("opacity",1),c=f[b.tier]||"#555",a1.selectAll("*").remove(),(d=(0,I.localPhoto)(b.profile_image_url))?a1.append("img").attr("src",d).style("width",e+"px").style("height",e+"px").style("border-radius","50%").style("object-fit","cover").style("border",`2px solid ${c}`).style("display","block").on("error",function(){this.parentElement.style.display="none"}):a1.style("opacity",0),a1.style("left",a.clientX-e/2+"px").style("top",a.clientY-e-8+"px"),a0.style("opacity",1).html(`<strong>${Q(b.name)}</strong>`).style("left",a.clientX-40+"px").style("top",a.clientY+12+"px").style("text-align","center").style("min-width","80px")}else a0.style("opacity",1).html(`<strong>${Q(b.name)}</strong>${b.company?"<br/>"+Q(b.company):""}${b.tier?"<br/>Tier: "+Q(b.tier):""}`).style("left",a.clientX+12+"px").style("top",a.clientY-10+"px")}).on("mousemove",function(a,b){if(b.profile_image_url&&b.id!==R){let c=Math.max(48,5*as(b));a1.style("left",a.clientX-c/2+"px").style("top",a.clientY-c-8+"px"),a0.style("left",a.clientX-40+"px").style("top",a.clientY+12+"px")}else a0.style("left",a.clientX+12+"px").style("top",a.clientY-10+"px")}).on("mouseout",function(a,b){U(this,as(b)),clearTimeout(a3),a3=setTimeout(()=>at.classed("lab-focus",!1),120),a0.style("opacity",0),a1.style("opacity",0)}),V=a_,W=aK,X=R,V.call((function(){var a,b,c,d,e=E,f=F,g=G,h=H,i={},k=(0,y.dispatch)("start","drag","end"),l=0,m=0;function n(a){a.on("mousedown.drag",o).filter(h).on("touchstart.drag",r).on("touchmove.drag",s,B.nonpassive).on("touchend.drag touchcancel.drag",t).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function o(g,h){if(!d&&e.call(this,g,h)){var i=u(this,f.call(this,g,h),g,h,"mouse");i&&((0,j.select)(g.view).on("mousemove.drag",p,B.nonpassivecapture).on("mouseup.drag",q,B.nonpassivecapture),(0,A.default)(g.view),(0,B.nopropagation)(g),c=!1,a=g.clientX,b=g.clientY,i("start",g))}}function p(d){if((0,B.default)(d),!c){var e=d.clientX-a,f=d.clientY-b;c=e*e+f*f>m}i.mouse("drag",d)}function q(a){(0,j.select)(a.view).on("mousemove.drag mouseup.drag",null),(0,A.yesdrag)(a.view,c),(0,B.default)(a),i.mouse("end",a)}function r(a,b){if(e.call(this,a,b)){var c,d,g=a.changedTouches,h=f.call(this,a,b),i=g.length;for(c=0;c<i;++c)(d=u(this,h,a,b,g[c].identifier,g[c]))&&((0,B.nopropagation)(a),d("start",a,g[c]))}}function s(a){var b,c,d=a.changedTouches,e=d.length;for(b=0;b<e;++b)(c=i[d[b].identifier])&&((0,B.default)(a),c("drag",a,d[b]))}function t(a){var b,c,e=a.changedTouches,f=e.length;for(d&&clearTimeout(d),d=setTimeout(function(){d=null},500),b=0;b<f;++b)(c=i[e[b].identifier])&&((0,B.nopropagation)(a),c("end",a,e[b]))}function u(a,b,c,d,e,f){var h,j,m,o=k.copy(),p=(0,z.pointer)(f||c,b);if(null!=(m=g.call(a,new D("beforestart",{sourceEvent:c,target:n,identifier:e,active:l,x:p[0],y:p[1],dx:0,dy:0,dispatch:o}),d)))return h=m.x-p[0]||0,j=m.y-p[1]||0,function c(f,g,k){var q,r=p;switch(f){case"start":i[e]=c,q=l++;break;case"end":delete i[e],--l;case"drag":p=(0,z.pointer)(k||g,b),q=l}o.call(f,a,new D(f,{sourceEvent:g,subject:m,target:n,identifier:e,active:q,x:p[0]+h,y:p[1]+j,dx:p[0]-r[0],dy:p[1]-r[1],dispatch:o}),d)}}return n.filter=function(a){return arguments.length?(e="function"==typeof a?a:C(!!a),n):e},n.container=function(a){return arguments.length?(f="function"==typeof a?a:C(a),n):f},n.subject=function(a){return arguments.length?(g="function"==typeof a?a:C(a),n):g},n.touchable=function(a){return arguments.length?(h="function"==typeof a?a:C(!!a),n):h},n.on=function(){var a=k.on.apply(k,arguments);return a===k?n:a},n.clickDistance=function(a){return arguments.length?(m=(a*=1)*a,n):Math.sqrt(m)},n})().on("start",(a,b)=>{a.active||W.alphaTarget(.3).restart(),b.fx=b.x,b.fy=b.y}).on("drag",(a,b)=>{b.fx=a.x,b.fy=a.y}).on("end",(a,b)=>{a.active||W.alphaTarget(0),b.id!==X&&(b.fx=null,b.fy=null)}));let a4=null,a5=a=>!!(a4&&a4.size<=40&&a4.has(a.id))||!!aq.labels&&(a.id===R||1===a.degree&&("all"===aq.names||"S"===a.tier||a.is_catalyst||ah.has(a.id))),a6=(ax=at.append("g").classed("far",n.default(a.node()).k<.85)).selectAll("text"),a7=()=>{a6=ax.selectAll("text").data(Z.filter(a5),a=>a.id).join("text").text(a=>a.is_catalyst&&"S"!==a.tier?a.name+" ⚡":a.name).attr("class",a=>a.id===R||ah.has(a.id)?"hub":null).attr("font-size",a=>a.id===R?14:ah.has(a.id)?Math.max(12,Math.min(22,.5*as(a))):10).attr("font-weight",a=>a.id===R||ah.has(a.id)?700:500).attr("fill",a=>a.id===R?O.MAP_LOOK.text:"flat"===aW?O.MAP_LOOK.light?"#4d5566":"#b9bec8":"plain"===aW?O.MAP_LOOK.text:a.is_catalyst?O.MAP_LOOK.light?"#0b7a47":"#00ff88":Y(a)).attr("text-anchor","middle").attr("dy",a=>as(a)+14).attr("x",a=>a.x||0).attr("y",a=>a.y||0).style("pointer-events","none")};a7();let a8=at.selectAll(".catalyst-ring"),a9=()=>{aR.attr("x1",a=>a.source.x).attr("y1",a=>a.source.y).attr("x2",a=>a.target.x).attr("y2",a=>a.target.y),a_.attr("cx",a=>a.x).attr("cy",a=>a.y),a8.attr("cx",a=>a.x).attr("cy",a=>a.y),aU.attr("transform",a=>`translate(${a.x},${a.y})`),a6.attr("x",a=>a.x).attr("y",a=>a.y),aL&&aO.attr("cx",a=>a.x).attr("cy",a=>a.y),aC()},ba=0;aK.on("tick",()=>{ba=performance.now(),a9(),bc&&aK.alpha()<bb&&(bc=!1,be())});let bb=.06,bc=!1,bd=(0,M.clockNow)().fit,be=()=>{let a=1/0,b=1/0,d=-1/0,e=-1/0;if(Z.forEach((c,f)=>{if(!br[f])return;let g=as(c);a=Math.min(a,c.x-g),b=Math.min(b,c.y-g),d=Math.max(d,c.x+g),e=Math.max(e,c.y+g)}),!Number.isFinite(a)||!c.width||!c.height)return;let f=Math.max(.1,Math.min(2,Math.min(c.width/(d-a+80),c.height/(e-b+80))));az(o.identity.translate(c.width/2-(a+d)/2*f,c.height/2-(b+e)/2*f).scale(f),750)},bf=null,bg=Z.length>12e3?3:Z.length>3e3?2:1,bh=null,bi=0,bj=0,bk=a=>{if(++bj%bg)return;let b=Math.min(.1,(a-bi)/1e3);if(bi=a,b<=0)return;let c=.1*aq.orbit*b,d=Math.cos(c),e=Math.sin(c);for(let a of Z){if(null!=a.fx)continue;let{x:b,y:c}=a;if(a.x=b*d-c*e,a.y=b*e+c*d,a.vx){let b=a.vx;a.vx=b*d-a.vy*e,a.vy=b*e+a.vy*d}}performance.now()-ba>50&&a9()},bl=()=>{let a=!ap&&aq.orbit>0&&!S();a&&!bh&&(bi=0,bj=0,bh=p.timer(bk)),!a&&bh&&(bh.stop(),bh=null)};at.classed("lab-pop",aq.on&&Z.length<5e3);let bm=(0,M.bornTimes)(Z,ab),bn=new Map(Z.map((a,b)=>[a.id,bm[b]])),bo=a_.nodes(),bp=aR.nodes(),bq=new Map;aU.each(function(a){bq.set(a.id,[this])}),a8.each(function(a){bq.set(a.id,[...bq.get(a.id)||[],this])});let br=new Uint8Array(Z.length).fill(1),bs=new Map(Z.map((a,b)=>[a.id,b])),bt=Z.filter(a=>1===a.degree),bu=bt.map(a=>bn.get(a.id)).filter(Number.isFinite),bv={min:bu.length?bu.reduce((a,b)=>Math.min(a,b)):null,max:bu.length?bu.reduce((a,b)=>Math.max(a,b)):null,of:bt.length},bw=null,bx=()=>{let a=a=>null==bw||bn.get(a.id)<=bw?null:"none";a6.style("display",a),aL&&aO.style("display",a)};aP();let by="",bz=(0,M.clockNow)().fly;return bl(),{simulation:aK,resize:b=>{let d=J(aw??n.default(a.node()),c,b);c=b,az(o.identity.translate(d.x,d.y).scale(d.k),250)},select:aD,setLab:a=>{if(ap){a.labels!==aq.labels&&(aq={...aq,labels:a.labels},a7(),bx());return}let b=aq;aq=a;let c=b.dotSize!==aq.dotSize||b.sizeBy!==aq.sizeBy;c&&(a_.attr("r",as),a8.attr("r",a=>as(a)+6),aU.each(aV),aK.force("collision").radius(a=>as(a)+2),aB&&aD(aB.id)),b.lines!==aq.lines&&aR.attr("stroke-width",.5*aq.lines).attr("stroke-opacity",aJ()),(c||b.names!==aq.names||b.labels!==aq.labels)&&(a7(),bx()),aq.on&&aq.branch||at.classed("lab-focus",!1),at.classed("lab-pop",aq.on&&Z.length<5e3),b.orbit!==aq.orbit&&bl(),(M.FORCE_KEYS.some(a=>b[a]!==aq[a])||c)&&(aK.force("link").distance(aG).strength(Math.min(1,aE*aq.pull)),aK.force("charge").strength(aH),aK.force("gravityX").strength(aI),aK.force("gravityY").strength(aI),aK.force("radial").strength(aF*aq.rings),av?.attr("opacity",Math.min(1,aq.rings)),aK.alpha(Math.max(aK.alpha(),.5)).restart())},setTime:a=>{aq.on||(a=null),bw=a;let b=0;for(let c=1;c<Z.length;c++){let d=+(null==a||bm[c]<=a);if(d&&1===Z[c].degree&&b++,d===br[c])continue;br[c]=d;let e=d?"":"none";for(let a of(bo[c].style.display=e,bp[c-1]&&(bp[c-1].style.display=e),bq.get(Z[c].id)||[]))a.style.display=e}for(let a=d.length;a<ae.length;a++){let b=br[bs.get(ae[a].source.id)]&&br[bs.get(ae[a].target.id)];bp[a].style.display=b?"":"none"}if(bx(),K&&(K.style.display=null==a?"none":"block",null!=a)){let c=new Date(a).toLocaleDateString(void 0,{month:"short",year:"numeric"}),d=(0,M.chapterAt)((0,M.clockNow)().social,a);K.textContent=`${c} \xb7 ${b.toLocaleString()} of ${bv.of.toLocaleString()} connections${d?` \xb7 at ${d.company}`:""}`}},setColours:a=>{Y=a.of,aL=a.heat||null,aP(),a_.attr("fill",a=>a.id===R?O.MAP_LOOK.you:aZ(Y(a))),aR.attr("stroke",aQ),a7(),bx(),aB&&aD(aB.id)},setFind:(a,b)=>{let d=aq.on?String(a||""):"";if(d!==by&&(by=d,a4=(0,M.findMatches)(Z.filter(a=>a.id!==R),d),a_.classed("found",a=>!!a4?.has(a.id)),aR.classed("found",a=>!!a4?.has(a.target.id)),at.classed("lab-find",!!a4),a7(),bx(),(0,M.setClock)({found:a4?a4.size:0})),b!==bz){bz=b;let a=a4&&Z.filter(a=>a4.has(a.id)).sort((a,b)=>(b.power_score||0)-(a.power_score||0))[0];a&&(az(o.identity.translate(c.width/2-2.5*a.x,c.height/2-2.5*a.y).scale(2.5),750),aD(a.id),e(a))}},setFit:a=>{a!==bd&&(bd=a,bc=!0,clearTimeout(bf),bf=setTimeout(()=>{bc&&aK.alpha()<bb&&performance.now()-ba>100&&(bc=!1,be())},150))},dispose:()=>{bh?.stop(),bh=null,clearTimeout(bf)},range:bv}}(b,Z.current,c,a,a=>ak.current?.(a),e,f,i,_,g,W,(0,M.effectiveLab)(af.current),ad.current,aj.current,X);$.current=m,m.select(al.current),(0,M.setClock)({min:m.range.min,max:m.range.max,of:m.range.of}),m.setTime((0,M.clockNow)().at),m.setFind((0,M.clockNow)().find,(0,M.clockNow)().fly);let K=(0,N.registerGalaxy)({svg:Y.current,stamp:()=>ad.current?.style.display==="block"?ad.current.textContent:null,legend:()=>aj.current.legend});return()=>{var a;m.simulation.stop(),m.dispose(),K(),b.interrupt(),$.current=null,("string"==typeof(a=".graph-tooltip")?new l.Selection([document.querySelectorAll(a)],[document.documentElement]):new l.Selection([(0,k.default)(a)],l.root)).remove()}},[a,e,am,W,X]),(0,b.jsxs)("div",{style:{flex:1,position:"relative",overflow:"hidden"},children:[(0,b.jsx)("style",{children:T}),(0,b.jsx)("svg",{ref:Y,width:ab?.width??800,height:ab?.height??600,style:{background:"transparent"}}),(0,b.jsx)("div",{ref:Z,className:"galaxy-ring",style:{position:"absolute",left:0,top:0,display:"none",pointerEvents:"none",transformOrigin:"0 0"},children:(0,b.jsx)("div",{className:"galaxy-ring-pulse",style:{boxSizing:"border-box",border:"2.5px solid",borderRadius:"50%"}})}),(0,b.jsx)("div",{ref:ad,style:{position:"absolute",bottom:56,left:"50%",transform:"translateX(-50%)",display:"none",padding:"6px 14px",borderRadius:16,background:"var(--sd-surface, rgba(10,15,30,0.8))",border:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.12)",color:"var(--sd-fg-1, #e6edf5)",fontSize:13,fontWeight:600,pointerEvents:"none",fontVariantNumeric:"tabular-nums"}}),(0,b.jsx)("div",{style:{position:"absolute",bottom:20,left:20,right:20,display:"flex",flexWrap:"wrap",gap:"4px 12px",fontSize:11,color:"var(--sd-fg-3, #888)",pointerEvents:"none"},children:ai.legend.map(([a,c])=>(0,b.jsxs)("span",{style:{display:"flex",alignItems:"center",gap:4,whiteSpace:"nowrap"},children:[(0,b.jsx)("span",{className:"sd-dot-html",style:{width:8,height:8,borderRadius:"50%",background:c,display:"inline-block"}}),a]},a))})]})},modes:["network"],label:"Galaxy",icon:"🌌",desc:"Force-directed layout"},separation:{component:function({connections:a=[],degree2:d=[],fullDegree1:e=a,fullDegree2:f=d,onSelect:i,userName:j,selectedId:k,tierColors:l=a1,preset:m=null}){let n=function(){let[a,b]=(0,c.useState)(!1);return(0,c.useEffect)(()=>{let a=()=>b(window.innerWidth<768);return a(),window.addEventListener("resize",a),()=>window.removeEventListener("resize",a)},[]),a}(),o=(0,c.useSyncExternalStore)(aZ.watchNotchShown,aZ.notchShownNow,aZ.noNotch),p=n?68:56,q=n?5:10,r=n?8:16,[s,t]=(0,c.useState)(""),u=(0,c.useDeferredValue)(s.trim().toLowerCase()),[v,w]=(0,c.useState)(50),[x,y]=(0,c.useState)(null),z=(0,c.useDeferredValue)(v),[A,B]=(0,c.useState)("all"),[C,D]=(0,c.useState)(()=>new Set),[E,F]=(0,c.useState)(null),[G,H]=(0,c.useState)(!1),[I,J]=(0,c.useState)(""),[K,L]=(0,c.useState)(!1),[M,N]=(0,c.useState)(null);m&&m.id!==M&&(N(m.id),t(m.query||""),B(m.tier||"all"),D(new Set(m.rarity?[m.rarity]:[])));let O=(0,g.default)(),[Q,R]=(0,c.useState)(0),[S,T]=(0,c.useState)({w:0,h:800}),[U,V]=(0,c.useState)(null),W=(0,c.useRef)(null),X=(0,c.useCallback)(a=>{W.current=a,V(a)},[]),Y=(0,c.useRef)(null),Z=(0,c.useMemo)(()=>(0,P.separationPeople)(d,a),[d,a]),$=(0,c.useMemo)(()=>(0,P.routeIndex)(f),[f]),_=(0,c.useMemo)(()=>{let a=new Map;for(let b of Z.people)a.set(b.key,aU(b.person,$.get(b.key)?.size||b.waysIn));return a},[Z,$]),aa=(0,c.useMemo)(()=>{if(50===z)return Z.people;let a=new Map;for(let b of Z.people)a.set(b.key,function(a,b,c=50){let d=(Math.max(0,Math.min(100,Number(c)||0))-50)/50;if(!d)return a;let e=aX(b),f=Math.abs(d);return a*(1-f+f*(d<0?1-e:e))}(b.score,_.get(b.key)?.count||b.waysIn,z));return[...Z.people].sort((b,c)=>a.get(c.key)-a.get(b.key)||(0,P.comparePower)(b,c))},[Z,_,z]),ab=(0,c.useMemo)(()=>{let a=Object.fromEntries(aR.map(a=>[a.key,0]));for(let b of _.values())a[b.key]++;return a},[_]),ac=(0,c.useMemo)(()=>{if(!K)return null;let a=new Map,b=new Map,c=new Map;for(let d of Z.people){let e=(0,aQ.companyOf)(d.person)||null,f=(0,aQ.industryOf)(e,d.person.headline).key;a.set(d.key,{company:e,sector:f}),b.set(f,(b.get(f)||0)+1),e&&c.set(e,(c.get(e)||0)+1)}return{by:a,sectors:aQ.INDUSTRIES.map(a=>({...a,count:b.get(a.key)||0})).filter(a=>a.count>0).sort((a,b)=>b.count-a.count),companies:[...c].map(([a,b])=>({name:a,count:b})).sort((a,b)=>b.count-a.count||a.name.localeCompare(b.name))}},[Z,K]),ad=(0,c.useCallback)(a=>{if(!E||!ac)return!0;let b=ac.by.get(a.key);return"sector"===E.kind?b?.sector===E.key:b?.company===E.key},[E,ac]),ae=(0,c.useCallback)((a,b)=>("all"===A||a.tier===A)&&(!C.size||C.has(_.get(a.key)?.key))&&ad(a)&&(!b||a.haystack.includes(b)),[A,C,_,ad]),af=(0,c.useMemo)(()=>u||"all"!==A||C.size||E?aa.filter(a=>ae(a,u)):aa,[aa,u,A,C,E,ae]),ag=(0,c.useMemo)(()=>new Set(e.map(P.keyFor)),[e]),ah=(0,c.useCallback)(a=>ag.has(a.key)?"connected":(0,h.hasRequest)(a.person,O)?"asked":null,[ag,O]),ai=(0,P.mapCount)(z,q),aj=(0,c.useMemo)(()=>af.filter(a=>!ah(a)).slice(0,q+1),[af,q,ah]),ak=(0,c.useMemo)(()=>aj.slice(0,ai),[aj,ai]),al=(0,c.useMemo)(()=>af.reduce((a,b)=>a+ +!!ah(b),0),[af,ah]),am=null!=k?Z.rowToKey.get(k)??null:null,an=1===ai,ao=(0,c.useMemo)(()=>an?(0,P.mostMutuals)(af.filter(a=>!ah(a)),a=>_.get(a.key)?.count||0,(n?3:6)+1):[],[an,af,ah,_,n]),ap=(0,c.useMemo)(()=>an&&(am&&af.find(a=>a.key===am)||ao[0])||null,[an,am,af,ao]),aq=(0,c.useMemo)(()=>an&&ap?ao.filter(a=>a.key!==ap.key).slice(0,n?3:6):[],[an,ap,ao,n]),ar=(0,c.useRef)(i);(0,c.useEffect)(()=>{ar.current=i});let as=(0,c.useCallback)(a=>ar.current?.(a.person),[]),at=(0,c.useCallback)(a=>{a&&ar.current?.(a)},[]);(0,c.useEffect)(()=>{if(!U)return;let a=new ResizeObserver(()=>{let a=Math.round(U.clientWidth),b=Math.round(U.clientHeight);T(c=>c.w===a&&c.h===b?c:{w:a,h:b})});return a.observe(U),()=>a.disconnect()},[U]);let au=Math.max(0,Math.min(980,S.w-2*r)),av=!n&&au>=760,aw=(0,c.useMemo)(()=>an?(0,P.convergeLayout)(ap,au||800,n,{cards:av,mutuals:ap&&_.get(ap.key)?.count||0}):(0,P.summitLayout)(ak,au||800,n,{cards:av}),[an,ap,ak,au,n,av,_]),ax=n?58:36,ay=38*!!aq.length,az=n?1:Math.max(.15,Math.min(1,(S.h-ax-22-(an?ay:0))/Math.max(1,aw.height))),aA=an?`aim:${ap?.key??""}`:`top:${ak.map(a=>a.key).join(",")}`,[aB,aC]=(0,c.useState)(aA);aB!==aA&&(aC(aA),null!=x&&y(null));let aD=x??az,aE=an?ap?Math.round(aw.height*aD)+ay:0:Math.round(aw.height*aD),aF=aE?ax+aE+12:0,aG=aF+44*!n+28,aH=aG+af.length*p+72,aI=Math.max(0,Math.floor((Q-aG)/p)-8),aJ=Math.min(af.length,aI+Math.ceil(S.h/p)+16),aK=(0,c.useCallback)(a=>{let b=16*Math.floor(a.currentTarget.scrollTop/16);R(a=>a===b?a:b)},[]),aL=(0,c.useCallback)(()=>{W.current&&(W.current.scrollTop=0),R(0)},[]);(0,c.useEffect)(()=>{let a=a=>{if("/"!==a.key||a.metaKey||a.ctrlKey||a.altKey)return;let b=a.target;b&&("INPUT"===b.tagName||"TEXTAREA"===b.tagName||"SELECT"===b.tagName||b.isContentEditable)||(a.preventDefault(),Y.current?.focus())};return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[]);let aM=a=>{t(a),aL()},aN=a=>{F(a),H(!1),aL()},aO=a=>{w(Math.max(0,Math.min(100,Math.round(Number(a)||0)))),aL()},{summary:aP}=Z,aS=!!u||"all"!==A||C.size>0||!!E,aT=function(a=50){let b=Math.max(0,Math.min(100,Math.round(Number(a)||0)));return b<=10?{name:"Rarest first",detail:"Strong people with one way in: the connection who knows them is the only door you have."}:b<45?{name:"Leaning rare",detail:"Strong people with few mutual connections move up; the ones everybody knows move down."}:b<=55?{name:"By power",detail:"Each person’s own score alone. How many of your connections know them doesn’t change the order."}:b<90?{name:"Leaning easy",detail:"Strong people you share more mutual connections with move up: more people who could introduce you."}:{name:"Easiest first",detail:"Strong people you share the most mutual connections with: the warmest introductions. All the way right, the map aims at whoever you share the most with, with the ones in circles you haven’t scanned yet as grey dots."}}(v),aV=v<45?br:v>55?bs:"#FFD700",a$=!j||/^you$/i.test(String(j).trim())?"You":(0,aY.initialsFor)(j),a_=af.slice(aI,aJ),a0=(0,b.jsxs)("span",{"aria-live":"polite",title:`${aT.name}. ${aT.detail} It only reorders: scores, tiers and ranks stay as they are.`,style:{...n?{marginLeft:"auto"}:{},textTransform:"none",letterSpacing:0,flexShrink:0,height:n?40:26,padding:"0 12px",borderRadius:15,boxSizing:"border-box",display:"inline-flex",alignItems:"center",gap:7,fontSize:12,fontWeight:700,whiteSpace:"nowrap",border:`1px solid ${aV}66`,background:`${aV}14`,color:aV},children:[(0,b.jsx)("span",{style:{width:7,height:7,borderRadius:"50%",background:aV}}),(0,b.jsx)("span",{style:{fontVariantNumeric:"tabular-nums"},children:v}),aT.name]}),a2=(0,b.jsx)("input",{ref:Y,type:"search",value:s,onChange:a=>aM(a.target.value),onKeyDown:a=>{if("Enter"===a.key){let a=s.trim().toLowerCase(),b=aa.find(b=>ae(b,a));b&&as(b)}else"Escape"===a.key&&(s?aM(""):a.currentTarget.blur())},placeholder:n?"Search people, companies, or who knows them":"Search people, companies, who knows them","aria-label":"Search people, companies, or who knows them",style:{width:n?"100%":300,flexShrink:0,minWidth:0,height:n?44:32,boxSizing:"border-box",padding:"0 12px",borderRadius:8,outline:"none",color:"var(--sd-fg-1, #fff)",fontSize:n?16:13,border:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.12)",background:"rgba(var(--sd-ink, 255, 255, 255), 0.05)"}}),a6=(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{title:bu,style:{fontSize:10,color:"var(--sd-fg-4, #666)",whiteSpace:"nowrap",flexShrink:0,textTransform:"uppercase",letterSpacing:.5,cursor:"help"},children:"Only show"}),aR.map(a=>{let c=C.has(a.key);return(0,b.jsxs)("button",{type:"button","aria-pressed":c,onClick:()=>{var b;return b=a.key,void(D(a=>aW(a,b)),aL())},title:`${a.label}: ${a.range} mutual connection${"1"===a.range?"":"s"}. ${bu}`,style:{height:n?40:28,padding:n?"0 10px":"0 8px",borderRadius:14,cursor:"pointer",flexShrink:0,fontSize:11.5,fontWeight:700,whiteSpace:"nowrap",border:`1px solid ${c?a.color:"rgba(var(--sd-ink, 255, 255, 255), 0.1)"}`,background:c?`${a.color}22`:"rgba(var(--sd-ink, 255, 255, 255), 0.03)",color:c?a.color:"var(--sd-fg-3, #999)"},children:[a.label,(0,b.jsx)("span",{style:{marginLeft:5,fontWeight:500,color:c?a.color:"var(--sd-fg-4, #666)",opacity:.85},children:a4(ab[a.key])})]},a.key)})]});return(0,b.jsxs)("div",{style:{flex:1,minWidth:0,display:"flex",flexDirection:"column",background:"var(--sd-page)",color:"var(--sd-fg-1, #fff)",overflow:"hidden"},children:[(0,b.jsxs)("div",{style:{padding:`${o?48:14}px 56px 8px`,flexShrink:0},children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:n?"baseline":"center",gap:10,flexWrap:n?"wrap":"nowrap"},children:[(0,b.jsx)("h2",{title:"Ranked by each person’s own score (title, company, headline). It ranks reachability, not people. From the lists scanned so far.",style:{margin:0,fontSize:18,fontWeight:800,background:"linear-gradient(135deg, #FFD700, #FF6B35)",WebkitBackgroundClip:"text",WebkitTextFillColor:"transparent"},children:"Separation"}),(0,b.jsx)("span",{style:{fontSize:12,color:"var(--sd-fg-3, #aaa)",...n?{}:{flex:1,minWidth:0,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"}},children:n?`${a5(aP.people,"person","people")} \xb7 ${a4(aP.byTier.S)} S \xb7 ${a4(aP.multi)} with 2+ ways`:`${a5(aP.people,"person","people")} two steps away \xb7 ${a4(aP.byTier.S)} S-tier \xb7 ${a4(aP.multi)} reachable 2+ ways \xb7 through ${a4(aP.bridges)} of your connections`}),!n&&a2]}),(0,b.jsx)("div",{"aria-hidden":"true",style:{display:"flex",gap:1,height:6,borderRadius:3,overflow:"hidden",margin:"8px 0 6px",background:"rgba(var(--sd-ink, 255, 255, 255), 0.04)"},children:P.TIERS.filter(a=>aP.byTier[a]>0).map(a=>(0,b.jsx)("div",{style:{flex:aP.byTier[a],background:l[a]||"#555"}},a))}),n&&(0,b.jsx)("div",{style:{fontSize:11,color:"var(--sd-fg-4, #777)",lineHeight:1.4},children:"Ranks reachability, not people · lists scanned so far"}),aP.peopleOnlyUnresolved>0&&(0,b.jsxs)("div",{style:{marginTop:8,padding:"8px 10px",borderRadius:8,fontSize:11.5,lineHeight:1.5,color:"var(--sd-fg-2, #e8d9a0)",background:"rgba(255,215,0,0.06)",border:"1px solid rgba(255,215,0,0.25)"},children:[a5(aP.peopleOnlyUnresolved,"of these people","of these people")," ","came only through ",a5(aP.onlyUnresolvedVia,"connection record","connection records")," ","that ",1===aP.onlyUnresolvedVia?"doesn’t":"don’t"," match anyone in your 1st-degree list, so who introduces you can’t be named. They’re still ranked."]})]}),(0,b.jsxs)("div",{style:{padding:"0 56px 10px",flexShrink:0,borderBottom:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.06)"},children:[(0,b.jsx)("style",{children:bt}),n&&a2,(0,b.jsxs)("div",{style:{marginTop:n?8:2,padding:n?"8px 10px":"8px 14px",borderRadius:12,position:"relative",border:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.08)",background:"rgba(var(--sd-ink, 255, 255, 255), 0.025)"},children:[G&&(0,b.jsx)(bp,{facets:ac,text:I,onText:J,isMobile:n,onPick:aN,onClose:()=>H(!1)}),(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:n?8:6,flexWrap:n?"nowrap":"wrap",minWidth:0,overflowX:n?"auto":"visible",scrollbarWidth:"thin"},children:[(0,b.jsx)("span",{style:{fontSize:10,color:"var(--sd-fg-4, #666)",whiteSpace:"nowrap",flexShrink:0,textTransform:"uppercase",letterSpacing:.5},children:"Their tier"}),["all",...P.TIERS].map(a=>{let c=A===a,d="all"===a?"var(--sd-fg-1, #fff)":l[a]||"#888",e="all"===a?aP.people:aP.byTier[a];return(0,b.jsxs)("button",{type:"button","aria-pressed":c,onClick:()=>{B(a),aL()},style:{height:n?40:28,padding:n?"0 10px":"0 8px",borderRadius:14,cursor:"pointer",flexShrink:0,fontSize:12,fontWeight:700,whiteSpace:"nowrap",border:`1px solid ${c?d:"rgba(var(--sd-ink, 255, 255, 255), 0.1)"}`,background:c?"all"===a?"rgba(var(--sd-ink, 255, 255, 255), 0.13)":`${d}22`:"rgba(var(--sd-ink, 255, 255, 255), 0.03)",color:c?d:"var(--sd-fg-3, #999)"},children:["all"===a?"All":a,(0,b.jsx)("span",{style:{marginLeft:5,fontWeight:500,color:c?d:"var(--sd-fg-4, #666)",opacity:.85},children:a4(e)})]},a)}),(0,b.jsxs)("span",{style:{display:"inline-flex",flexShrink:0,height:n?40:30,borderRadius:15,overflow:"hidden",border:`1px solid ${E?bq:"rgba(0,255,136,0.35)"}`,background:E?"rgba(0,255,136,0.12)":"rgba(0,255,136,0.04)"},children:[(0,b.jsx)("button",{type:"button","aria-haspopup":"dialog","aria-expanded":G,onClick:()=>G?H(!1):void(L(!0),J(""),H(!0)),title:"Narrow everyone to one sector or one company",style:{padding:E?"0 6px 0 12px":"0 12px",border:"none",background:"none",cursor:"pointer",fontSize:12,fontWeight:700,whiteSpace:"nowrap",color:bq,maxWidth:n?200:300,overflow:"hidden",textOverflow:"ellipsis"},children:E?(0,b.jsxs)(b.Fragment,{children:["Path",(0,b.jsxs)("span",{style:{fontWeight:500,color:"var(--sd-fg-1, #cfe)"},children:[" · ",E.label]})]}):"Path ▾"}),E&&(0,b.jsx)("button",{type:"button","aria-label":`Clear the path: ${E.label}`,onClick:()=>aN(null),style:{padding:"0 10px 0 4px",border:"none",background:"none",cursor:"pointer",fontSize:14,color:bq},children:"×"})]}),!n&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{"aria-hidden":"true",style:{width:1,height:18,background:"rgba(var(--sd-ink, 255, 255, 255), 0.12)",margin:"0 2px"}}),a6]}),n&&a0]}),(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:n?"baseline":"center",marginTop:8,fontSize:10.5,fontWeight:800,letterSpacing:.5,textTransform:"uppercase"},children:[(0,b.jsxs)("span",{style:{color:"var(--sd-cyan, #00E5FF)",flex:n?void 0:1},children:["Rare",n?"":" · one way in"]}),n?(0,b.jsx)("span",{style:{color:"var(--sd-gold, #FFD700)"},children:"Power"}):a0,(0,b.jsxs)("span",{style:{color:"var(--sd-coral, #FF7043)",flex:n?void 0:1,textAlign:"right"},children:["Easy",n?"":" · many mutual connections"]})]}),(0,b.jsx)("input",{className:"sepslide",type:"range",min:0,max:100,step:1,value:v,onChange:a=>aO(a.target.value),onDoubleClick:()=>aO(50),"aria-label":"Order: the rarest ways in, to the easiest","aria-valuetext":`${v}: ${aT.name}`,title:"Drag to reorder everyone. Double-click to go back to the middle."}),(0,b.jsx)("div",{style:{display:"flex",justifyContent:"space-between",marginTop:-2},children:[[0,"Rarest"],[25,""],[50,"By power"],[75,""],[100,"Easiest"]].map(([a,c])=>(0,b.jsxs)("button",{type:"button",onClick:()=>aO(a),"aria-label":`Set the slider to ${a}${c?`: ${c}`:""}`,style:{padding:"2px 4px",border:"none",background:"none",cursor:"pointer",fontSize:10,color:v===a?"var(--sd-fg-1, #fff)":"var(--sd-fg-4, #667)",fontWeight:v===a?700:500,fontVariantNumeric:"tabular-nums"},children:[a,c&&!n?` \xb7 ${c}`:""]},a))}),n&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{style:{marginTop:4,fontSize:11.5,lineHeight:1.45,color:"var(--sd-fg-2, #bbb)"},children:[(0,b.jsxs)("span",{style:{color:aV,fontWeight:700},children:[aT.name,"."]})," ",aT.detail]}),(0,b.jsx)("div",{style:{display:"flex",alignItems:"center",gap:8,marginTop:8,minWidth:0,flexWrap:"nowrap",overflowX:"auto",scrollbarWidth:"thin"},children:a6})]})]})]}),(0,b.jsx)("div",{ref:X,onScroll:aK,style:{flex:1,minHeight:0,overflowY:"auto",overflowX:"hidden",position:"relative",padding:`0 ${r}px`},children:(0,b.jsxs)("div",{style:{position:"relative",maxWidth:980,margin:"0 auto",height:aH},children:[aF>0&&(0,b.jsxs)("div",{className:"sepblock",style:{height:aF,boxSizing:"border-box",paddingTop:10},children:[(0,b.jsxs)("div",{style:{height:ax-10,overflow:"hidden",display:n?"block":"flex",alignItems:"flex-start",gap:10},children:[(0,b.jsx)("div",{title:n?void 0:`${!an&&al>0?`${a4(al)} asked or connected, so it moved on. `:""}Solid orange: the top-scored bridge. Dashed: other routes.${an?" Pick anyone in the list to aim at them instead.":av?" A lit pill is someone’s best way in.":" Dot size: ways in."}`,style:{flex:1,minWidth:0,fontSize:12,fontWeight:700,color:"var(--sd-fg-1, #ddd)",whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis"},children:an?(0,b.jsxs)(b.Fragment,{children:["Aiming at ",ap.person.name," · ",aw.unscanned?`${a4(ap.waysIn+aw.unscanned)} mutual connections: ${a4(ap.waysIn)} drawn, ${a4(aw.unscanned)} in circles not scanned yet`:1===ap.waysIn?"the one connection of yours who leads to them":`all ${a4(ap.waysIn)} connections of yours who lead to them`]}):(0,b.jsxs)(b.Fragment,{children:["Top ",a4(ak.length)," you haven’t asked, of ",a4(af.length),aS?" shown":"",50!==v?` \xb7 ${aT.name.toLowerCase()}`:""," · every way in drawn"]})}),!n&&(0,b.jsx)(a8,{scale:aD,fitted:null==x,onOut:()=>y(Math.max(.15,Math.round((aD-.1)*10)/10)),onFit:()=>y(null),onIn:()=>y(Math.min(1.5,Math.round((aD+.1)*10)/10))}),n&&(0,b.jsxs)("div",{style:{fontSize:10,color:"var(--sd-fg-4, #777)",marginTop:2,whiteSpace:"normal",overflow:"hidden",textOverflow:"ellipsis",lineHeight:1.35},children:[!an&&al>0&&(0,b.jsxs)("span",{style:{color:"var(--sd-gold, #FFD700)"},children:[a4(al)," asked or connected, so it moved on · "]}),(0,b.jsx)("span",{style:{color:"var(--sd-orange, #FF6B35)"},children:"solid orange"})," = top-scored bridge · dashed = other routes",an?" · pick anyone in the list to aim at them instead":av?" · a lit pill is someone’s best way in":" · dot size = ways in"]})]}),au>0&&(0,b.jsx)(bd,{layout:aw,scale:aD,selectedKey:am,tierColors:l,youLabel:a$,isMobile:n,onPick:as,onPickBridge:at,mutualsBy:_,doors:!n&&au>=640,cards:av}),au>0&&an&&(0,b.jsx)(b.Fragment,{children:aq.length>0&&(0,b.jsxs)("div",{style:{height:ay,display:"flex",alignItems:"center",gap:6,overflow:"hidden"},children:[(0,b.jsx)("span",{style:{fontSize:10,color:"var(--sd-fg-4, #666)",textTransform:"uppercase",letterSpacing:.5,flexShrink:0},children:"Next"}),aq.map(a=>{let c;return(0,b.jsxs)("button",{type:"button",onClick:()=>as(a),title:`Aim at ${a.person.name}`,style:{height:26,padding:"0 10px",borderRadius:13,cursor:"pointer",flexShrink:1,minWidth:0,fontSize:11,fontWeight:600,whiteSpace:"nowrap",overflow:"hidden",textOverflow:"ellipsis",border:`1px solid ${l[a.tier]||"#888"}55`,background:"rgba(var(--sd-ink, 255, 255, 255), 0.03)",color:"var(--sd-fg-2, #ccc)"},children:[(0,P.shortName)(a.person.name),(0,b.jsx)("span",{style:{marginLeft:5,color:l[a.tier]||"#888",fontWeight:700},children:a.score.toFixed(1)}),(0,b.jsx)("span",{style:{marginLeft:5,color:"var(--sd-fg-4, #667)",fontWeight:500},children:1===(c=Math.max(_.get(a.key)?.count||0,a.waysIn))?"1 mutual":`${a4(c)} mutuals`})]},a.key)})]})})]}),af.length>0&&!n&&(0,b.jsxs)("div",{style:{height:44,display:"flex",alignItems:"center",gap:10,padding:"0 12px 0 15px",boxSizing:"border-box",borderTop:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.06)"},children:[(0,b.jsx)("span",{style:{fontSize:15,fontWeight:800},children:"Ranked by reach"}),(0,b.jsxs)("span",{style:{fontSize:11,fontWeight:800,color:"#000",background:"#FFD700",borderRadius:10,padding:"2px 8px"},children:[a4(af.length),aS?` of ${a4(aP.people)}`:""]}),(0,b.jsxs)("span",{style:{marginLeft:"auto",fontSize:11,color:"var(--sd-fg-4, #777)"},children:["order follows the slider · ",(0,b.jsx)("span",{style:{color:aV},children:aT.name.toLowerCase()})]})]}),af.length>0&&(0,b.jsxs)("div",{style:{height:28,display:"grid",alignItems:"center",gap:10,padding:"0 12px 0 15px",gridTemplateColumns:n?"44px 36px 1fr 44px":a3,fontSize:9,fontWeight:700,color:"var(--sd-fg-5, #555)",textTransform:"uppercase",letterSpacing:.5,borderBottom:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.08)",boxSizing:"border-box"},children:[(0,b.jsx)("span",{title:"Rank by score, then ways in. = means tied",children:"#"}),(0,b.jsx)("span",{}),n?(0,b.jsx)("span",{children:"Person · way in"}):(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("span",{children:"Person"}),(0,b.jsx)("span",{children:"Way in"}),(0,b.jsx)("span",{title:bu,children:"How rare the way in"}),(0,b.jsx)("span",{style:{textAlign:"right"},children:"Power"})]}),n&&(0,b.jsx)("span",{style:{textAlign:"right"},children:"Score"})]}),a_.map((a,c)=>(0,b.jsx)(bv,{p:a,top:aG+(aI+c)*p,height:p,isMobile:n,selected:a.key===am,tierColors:l,onPick:as,q:u,status:ah(a),rarity:_.get(a.key)},a.key)),0===af.length&&(0,b.jsxs)("div",{style:{position:"absolute",top:40,left:0,right:0,textAlign:"center",color:"var(--sd-fg-3, #888)",fontSize:13,padding:"0 16px"},children:[u?(0,b.jsxs)(b.Fragment,{children:["No one matches ‘",s.trim(),"’. Search covers names, headlines, companies and who knows them."]}):(0,b.jsx)(b.Fragment,{children:"No one here with those filters."}),(0,b.jsx)("div",{style:{marginTop:12},children:(0,b.jsx)("button",{type:"button",onClick:()=>{t(""),B("all"),D(new Set),F(null),aL()},style:{padding:"8px 16px",borderRadius:8,cursor:"pointer",fontSize:12,fontWeight:700,border:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.15)",background:"rgba(var(--sd-ink, 255, 255, 255), 0.06)",color:"var(--sd-fg-1, #fff)"},children:"Clear"})})]})]})})]})},modes:["separation"],label:"Separation",icon:"🏆",desc:"Every 2nd degree, ranked · every way in"},chain:{component:function({connections:a,degree2:d=[],onSelect:f,userName:h,fullDegree1:i,fullDegree2:j,scanNotes:k,canScan:l=!0,chainOpen:m=null,onChainOpened:n,onCircle:o}){let p=(0,c.useRef)(null),[q,r]=(0,c.useState)(null),[s,t]=(0,c.useState)(null),[u,v]=(0,c.useState)({w:800,h:600}),w=i||a,x=j||d,[y,z]=(0,c.useState)(()=>at(m,w)),[A,B]=(0,c.useState)(m);if(m&&m!==A){B(m);let a=at(m,w);a.length&&z(a)}(0,c.useEffect)(()=>{m&&n?.()},[m,n]);let C=(0,c.useSyncExternalStore)(l?e.watchScanner:ao,am,an),D=(0,c.useSyncExternalStore)(ap,aq,ar),E=(0,g.default)();(0,c.useEffect)(()=>{let a=p.current;if(!a)return;let b=()=>{let b=Math.round(a.clientWidth),c=Math.round(a.clientHeight);v(a=>a.w===b&&a.h===c?a:{w:b,h:c})},c=new ResizeObserver(b);return c.observe(a),b(),()=>c.disconnect()},[]);let F=(0,c.useMemo)(()=>X(w,x),[w,x]),G=(0,c.useMemo)(()=>(0,K.reachIndex)(w,x,k),[w,x,k]),H=(0,c.useMemo)(()=>(0,K.readyByCircle)(G),[G]),{userId:J}=(0,ac.useUser)(),[M,N]=(0,c.useState)([]);(0,c.useEffect)(()=>{if(!J)return;let a=!0;return fetch(`/api/notifications?userId=${encodeURIComponent(J)}`).then(a=>a.json()).then(b=>{a&&N((b.notifications||[]).map(a=>{let b;return{circle:null!=(b="string"==typeof a?.data?ab(a.data):a?.data||{}).viaId?String(b.viaId):b.action&&null!=b.personId?String(b.personId):null,seen:!!a.seen}}))}).catch(()=>{}),()=>{a=!1}},[J]);let P=(0,c.useMemo)(()=>(0,ad.redundancy)(j||d,i||a),[j,d,i,a]),Q=(0,c.useMemo)(()=>{let a=new Map;for(let b of x)a.set(b.id,b);for(let b of w)a.set(b.id,b);return a},[w,x]),R=[];for(let a of y){let b=Q.get(a);if(!b)break;R.push(b)}let S=R.length>0,T=R.length?R[R.length-1]:null;(0,c.useEffect)(()=>{o?.(T)},[T,o]),(0,c.useEffect)(()=>()=>o?.(null),[o]),(0,c.useEffect)(()=>{if(!S)return;let a=a=>{"Escape"!==a.key||/^(INPUT|TEXTAREA|SELECT)$/.test(a.target?.tagName||"")||document.querySelector('[role="dialog"][aria-modal="true"]')||z(a=>a.slice(0,-1))};return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[S]);let U={};d.forEach(a=>{a.source_connection_id&&(U[a.source_connection_id]||(U[a.source_connection_id]=[]),U[a.source_connection_id].push(a))});let V=a.filter(a=>U[a.id]&&U[a.id].length>0).sort((a,b)=>(U[b.id]?.length||0)-(U[a.id]?.length||0)),W=u.w/2,Y=u.h/2,Z=Math.min(W,Y)-30,$=new Set(V.map(a=>a.id)),aa=new Map;for(let a of V)$.has(a.unlocked_from_bridge_id)&&aa.set(a.unlocked_from_bridge_id,(aa.get(a.unlocked_from_bridge_id)||0)+1);let af=new Map(V.map(a=>[a.id,a])),ah=(0,_.circleActivity)(V,{notes:M,ready:H,chained:aa}),ai=V.filter(a=>!(a=>{let b=new Set([a.id]);for(let c=a.unlocked_from_bridge_id;$.has(c);c=af.get(c).unlocked_from_bridge_id){if(b.has(c))return!1;b.add(c)}return $.has(a.unlocked_from_bridge_id)})(a)).sort((a,b)=>ah.get(b.id).score-ah.get(a.id).score),ak=(0,_.ringLayout)(ai.length,{inner:.55*Z,innerMin:.4*Z,outer:.62*Z,spacing:46,minSpacing:20,ringGap:62}),al=ai.map((a,b)=>{let c=ak.points[b];return{...a,x:W+c.x,y:Y+c.y,angle:c.angle,clusterSize:(U[a.id]||[]).length,chains:aa.get(a.id)||0,activity:ah.get(a.id)}}),au=ak.rings.length>1,av=(0,_.previewBand)(Z,ak.rings),ax=Math.max(.6,Math.min(1.3,Math.min(W,Y)/(av.outer+8))),ay=s??ax,aC=(0,c.useRef)([]);(0,c.useEffect)(()=>{aC.current=al.map(a=>({id:a.id,angle:a.angle}))});let aD=(0,c.useRef)(0);if((0,c.useEffect)(()=>{let a=p.current;if(!a||S)return;let b=(b,c)=>{let d=a.getBoundingClientRect(),e=b-d.left,f=Math.atan2(c-d.top-u.h/2,e-u.w/2),g=null,h=1/0;return aC.current.forEach(a=>{let b=Math.abs(f-a.angle)%(2*Math.PI);b>Math.PI&&(b=2*Math.PI-b),b<h&&(h=b,g=a.id)}),g},c=a=>{if(a.touches[0]){let c=b(a.touches[0].clientX,a.touches[0].clientY);c&&r(c)}},d=a=>{a.preventDefault();let c=Date.now();if(!(c-aD.current<16)&&(aD.current=c,a.touches[0])){let c=b(a.touches[0].clientX,a.touches[0].clientY);c&&r(c)}};return a.addEventListener("touchstart",c,{passive:!1}),a.addEventListener("touchmove",d,{passive:!1}),()=>{a.removeEventListener("touchstart",c),a.removeEventListener("touchmove",d)}},[u,ay,S]),S)return(0,b.jsx)("div",{ref:p,style:{flex:1,background:"var(--sd-page)",position:"relative",overflow:"hidden"},children:(0,b.jsx)(aA,{trail:R,index:F,reach:G,dims:u,requests:E,scanningId:C,still:D,canScan:l,onOpen:a=>z(R.map(a=>a.id).concat(a)),onBack:a=>z(R.slice(0,a).map(a=>a.id)),onSelect:f},R.map(a=>a.id).join(">"))});let aE=d.length,aF=d.filter(a=>"S"===a.tier).length,aG=d.filter(a=>"A"===a.tier).length,aH=q?al.find(a=>a.id===q):null;return(0,b.jsxs)("div",{ref:p,style:{flex:1,background:"var(--sd-page)",position:"relative",overflow:"hidden"},children:[(0,b.jsx)("svg",{width:u.w,height:u.h,children:(0,b.jsxs)("g",{transform:`translate(${W*(1-ay)}, ${Y*(1-ay)}) scale(${ay})`,children:[ak.rings.map(a=>(0,b.jsx)("circle",{cx:W,cy:Y,r:a.radius,fill:"none",stroke:`${ae[1]}10`,strokeWidth:1},"ring-"+a.radius)),aH&&(0,b.jsx)(aw,{bridge:aH,members:as(aH,F),reach:G,cx:W,cy:Y,maxR:Z,still:D,band:av,circleOf:a=>U[a]||[]},aH.id),al.map(a=>{var c,d,e;let f,g,h=q===a.id,i=(U[a.id]||[]).filter(a=>"S"===a.tier).length,j=(U[a.id]||[]).filter(a=>"A"===a.tier).length,k=H.get(a.id)||0;return(0,b.jsxs)("g",{onClick:()=>{r(null),z([a.id])},onMouseEnter:()=>r(a.id),onMouseLeave:()=>r(null),style:{cursor:"pointer"},children:[(0,b.jsx)("title",{children:(c=a,d=k,e=(0,K.scanBars)(a,G),f=[],(g=c.activity?.notes||0)&&f.push(`${g} notification${1===g?"":"s"} about their circle${c.activity.unread?`, ${c.activity.unread} new`:""}`),d&&f.push(`${d} in ${aj(c)}’s circle ${1===d?"is":"are"} ready for a scan`),c.chains&&f.push(`${c.chains} scanned since, with ${1===c.chains?"a cluster":"clusters"} of their own`),null!=e&&f.push(5===e?"their whole list is scanned":`about ${20*e}% of their list is scanned`),f.length?f.join(" · "):`${aj(c)}’s circle`)}),(0,b.jsx)("circle",{className:"sd-dot",cx:a.x,cy:a.y,r:h?21:18,fill:`${O.TIER_COLORS[a.tier]}${h?"14":"08"}`}),(0,b.jsxs)("g",{transform:`translate(${a.x} ${a.y})`,pointerEvents:"none",children:[a.chains+k===0&&(0,b.jsx)("circle",{r:(h?13:11)+3.6,fill:"none",stroke:L,strokeWidth:1}),(function(a,{formed:b=0,ready:c=0}={},d=12){let e=Math.max(0,b)+Math.max(0,c);if(!e)return[];let f=Math.min(e,d),g=b>0?Math.max(1,Math.round(f*b/e)):0;c>0&&g>=f&&(g=f-1);let h=1===f?.5:Math.min(.32,2*Math.PI/f*.35),i=2*Math.PI/f-h,j=b=>`${(a*Math.cos(b)).toFixed(2)} ${(a*Math.sin(b)).toFixed(2)}`;return Array.from({length:f},(b,c)=>{let d=-Math.PI/2+h/2+c*(i+h);return{kind:c<g?"formed":"ready",d:`M${j(d)} A${a} ${a} 0 ${+(i>Math.PI)} 1 ${j(d+i)}`}})})((h?13:11)+3.6,{formed:a.chains,ready:k}).map((a,c)=>(0,b.jsx)("path",{d:a.d,fill:"none",strokeLinecap:"round",strokeWidth:2,stroke:"ready"===a.kind?ag:ae[2]},c))]}),(0,b.jsx)("circle",{className:"sd-dot",cx:a.x,cy:a.y,r:h?13:11,fill:(0,I.localPhoto)(a.profile_image_url)?"#1a1a2e":O.TIER_COLORS[a.tier],stroke:h?"var(--sd-fg-1, #fff)":O.TIER_COLORS[a.tier],strokeWidth:h?2.5:2}),(0,I.localPhoto)(a.profile_image_url)&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("clipPath",{id:"bc-"+a.id,children:(0,b.jsx)("circle",{cx:a.x,cy:a.y,r:h?11:9})}),(0,b.jsx)("image",{href:(0,I.localPhoto)(a.profile_image_url),x:a.x-(h?11:9),y:a.y-(h?11:9),width:h?22:18,height:h?22:18,clipPath:`url(#bc-${a.id})`})]}),!(0,I.localPhoto)(a.profile_image_url)&&(0,b.jsx)("text",{x:a.x,y:a.y+4,textAnchor:"middle",fill:"S"===a.tier?"#000":"var(--sd-fg-1, #fff)",fontSize:11,fontWeight:700,children:a.name?.charAt(0)}),(()=>{let c=(a.activity?.unread||0)+k;if(!c)return null;let d=a.activity?.unread?"var(--sd-gold, #FFD700)":"var(--sd-green, #00ff88)";return(0,b.jsxs)("g",{pointerEvents:"none",children:[(0,b.jsx)("circle",{cx:a.x+14,cy:a.y-14,r:6,fill:"var(--sd-bg)",stroke:d,strokeWidth:1.2}),(0,b.jsx)("text",{x:a.x+14,y:a.y-11.4,textAnchor:"middle",fill:d,fontSize:c>9?6:7,fontWeight:800,children:c>99?"99+":c})]})})(),(0,b.jsx)("text",{x:a.x,y:a.y+(h?24:22),textAnchor:"middle",fill:"var(--sd-fg-1, #fff)",fontSize:9,fontWeight:600,children:a.name?.split(" ")[0]}),(!au||h)&&(0,b.jsxs)("text",{x:a.x,y:a.y+(h?34:32),textAnchor:"middle",fill:h?"var(--sd-fg-2, #bbb)":"var(--sd-fg-3, #888)",fontSize:7,children:[a.clusterSize," · ",i>0?i+"S ":"",j>0?j+"A":""]})]},"b-"+a.id)}),(0,b.jsx)("circle",{cx:W,cy:Y,r:22,fill:"var(--sd-bg)",stroke:"#FFD700",strokeWidth:3}),(0,b.jsx)("text",{x:W,y:Y+4,textAnchor:"middle",fill:"var(--sd-gold, #FFD700)",fontSize:11,fontWeight:800,children:h?.split(" ")[0]||"YOU"})]})}),(0,b.jsx)(az,{onIn:()=>t(a=>Math.min(3,(a??ax)+.3)),onReset:()=>t(null),onOut:()=>t(a=>Math.max(.4,(a??ax)-.3))}),(0,b.jsx)("div",{title:[`${ai.length} bridges${V.length>ai.length?` + ${V.length-ai.length} along their chains`:""} \xb7 ${aF} S + ${aG} A at 2nd degree`,P>0?`${Math.round(100*P)}% of your 2nd degree you reach two or more ways`:null,"The inner ring: the circles with the most going on (notifications, people ready to scan, clusters formed since)","Click a bridge to open their circle, then anyone in it to open theirs"].filter(Boolean).join("\n"),style:{position:"absolute",bottom:16,left:16,display:"flex",alignItems:"flex-end",gap:12},children:[1,2,3,4,5,6].map(c=>{let d=c<=2,e=1===c?a.length:2===c?aE:null;return(0,b.jsxs)("div",{title:d?`${1===c?"1st degree: your bridges":"2nd degree: the people in their circles"} (${e.toLocaleString("en-US")})`:`${c}th degree: further along a chain, as your scans reach it`,style:{display:"flex",flexDirection:"column",alignItems:"center",gap:4},children:[(0,b.jsx)("span",{className:d?"sd-dot-html":void 0,style:{width:11,height:11,borderRadius:"50%",background:d?ae[c]:"transparent",border:d?"none":"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.22)",boxShadow:d?`0 0 8px ${ae[c]}80`:"none"}}),(0,b.jsx)("span",{style:{fontSize:9.5,fontWeight:700,color:d?"var(--sd-fg-2, #c8cdd8)":"var(--sd-fg-5, #556)",fontVariantNumeric:"tabular-nums",textShadow:aB},children:d?e.toLocaleString("en-US"):`D${c}`})]},c)})})]})},modes:["degrees"],label:"Bridge Chains",icon:"🔗",desc:"Your bridges, and the chains that lead on from them"},rings:{component:function({connections:a,degree2:d=[],onSelect:e,mode:f}){let[g,h]=(0,c.useState)(null);if("degrees"===f&&d.length>0){let c={};d.forEach(a=>{a.source_connection_id&&(c[a.source_connection_id]||(c[a.source_connection_id]=[]),c[a.source_connection_id].push(a))});let f=Object.entries(c).map(([b,c])=>{let d=a.find(a=>a.id===b);if(!d)return null;let e=c.filter(a=>"S"===a.tier).length,f=c.filter(a=>"A"===a.tier).length;return{bridge:d,members:c,sCount:e,aCount:f,total:c.length,value:3*e+2*f+c.length}}).filter(Boolean).sort((a,b)=>b.value-a.value),i={S:36,A:28,B:22,C:16,D:12};return(0,b.jsx)("div",{style:{flex:1,overflow:"auto",background:"var(--sd-page)",padding:"20px 10px"},children:(0,b.jsx)("div",{style:{maxWidth:1200,margin:"0 auto"},children:f.map((a,c)=>{let d={};return aP.forEach(a=>{d[a]=[]}),a.members.forEach(a=>{(d[a.tier]||d.D).push(a)}),aP.forEach(a=>{d[a].sort((a,b)=>(parseFloat(b.power_score)||0)-(parseFloat(a.power_score)||0))}),(0,b.jsxs)("div",{style:{marginBottom:30},children:[(0,b.jsx)("div",{style:{textAlign:"center",marginBottom:12},children:(0,b.jsxs)("div",{onClick:()=>e&&e(a.bridge),onMouseEnter:()=>h(a.bridge.id),onMouseLeave:()=>h(null),style:{display:"inline-block",cursor:"pointer",position:"relative"},children:[(0,b.jsx)("div",{style:{width:56,height:56,borderRadius:"50%",margin:"0 auto",border:`3px solid ${O.TIER_COLORS[a.bridge.tier]}`,overflow:"hidden",background:"var(--sd-card, #1a1a2e)",boxShadow:g===a.bridge.id?`0 0 20px ${O.TIER_COLORS[a.bridge.tier]}60`:`0 0 10px ${O.TIER_COLORS[a.bridge.tier]}20`,transition:"box-shadow 0.2s"},children:(0,I.localPhoto)(a.bridge.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(a.bridge.profile_image_url),alt:"",style:{width:"100%",height:"100%",objectFit:"cover"}}):(0,b.jsx)("div",{style:{width:"100%",height:"100%",display:"flex",alignItems:"center",justifyContent:"center",background:O.TIER_COLORS[a.bridge.tier],color:"S"===a.bridge.tier?"#000":"var(--sd-fg-1, #fff)",fontSize:20,fontWeight:800},children:a.bridge.name?.charAt(0)})}),(0,b.jsx)("div",{style:{fontSize:12,fontWeight:700,color:"var(--sd-fg-1, #fff)",marginTop:4},children:a.bridge.name}),(0,b.jsxs)("div",{style:{fontSize:9,color:O.TIER_COLORS[a.bridge.tier],fontWeight:600},children:[a.bridge.tier,"-Tier · ",a.total," connections · ",a.sCount>0?a.sCount+"S ":"",a.aCount>0?a.aCount+"A":""]})]})}),aP.map(a=>{let c=d[a];if(0===c.length)return null;let f=i[a],j="S"===a?10:"A"===a?6:4;return(0,b.jsxs)("div",{style:{marginBottom:6},children:[(0,b.jsx)("div",{style:{display:"flex",flexWrap:"wrap",justifyContent:"center",gap:j},children:c.map(c=>{let d=g===c.id;return(0,b.jsxs)("div",{onClick:()=>e&&e(c),onMouseEnter:()=>h(c.id),onMouseLeave:()=>h(null),style:{position:"relative",cursor:"pointer"},children:[(0,b.jsx)("div",{style:{width:f,height:f,borderRadius:"50%",border:`2px solid ${O.TIER_COLORS[a]}`,overflow:"hidden",background:(0,I.localPhoto)(c.profile_image_url)?"#111":O.TIER_COLORS[a],transition:"transform 0.15s, box-shadow 0.15s",transform:d?"scale(1.3)":"scale(1)",boxShadow:d?`0 0 12px ${O.TIER_COLORS[a]}60`:"none"},children:(0,I.localPhoto)(c.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(c.profile_image_url),alt:"",style:{width:"100%",height:"100%",objectFit:"cover"},onError:b=>{b.target.style.display="none",b.target.parentElement.style.background=O.TIER_COLORS[a]}}):(0,b.jsx)("span",{style:{display:"flex",width:"100%",height:"100%",alignItems:"center",justifyContent:"center",fontSize:.4*f,fontWeight:700,color:"S"===a?"#000":"var(--sd-fg-1, #fff)"},children:c.name?.charAt(0)})}),("S"===a||d)&&(0,b.jsx)("div",{style:{position:"absolute",top:f+2,left:"50%",transform:"translateX(-50%)",whiteSpace:"nowrap",textAlign:"center",zIndex:20,pointerEvents:"none"},children:(0,b.jsxs)("div",{style:{fontSize:d?10:8,fontWeight:600,color:d?"var(--sd-fg-1, #fff)":"var(--sd-fg-3, #aaa)",background:d?"var(--sd-surface, rgba(0,0,0,0.85))":"transparent",padding:d?"3px 8px":0,borderRadius:4},children:[c.name?.split(" ")[0],d&&(0,b.jsx)("span",{style:{color:O.TIER_COLORS[a],marginLeft:4},children:parseFloat(c.power_score||0).toFixed(1)})]})})]},c.id)})}),(0,b.jsx)("div",{style:{height:1,margin:"6px auto 0",width:`${40+10*aP.indexOf(a)}%`,background:`linear-gradient(90deg, transparent, ${O.TIER_COLORS[a]}20, transparent)`}})]},a)})]},a.bridge.id)})})})}let i={};aP.forEach(a=>{i[a]=[]}),a.forEach(a=>{let b=a.tier||"D";i[b]&&i[b].push(a)}),aP.forEach(a=>{i[a].sort((a,b)=>(parseFloat(b.power_score)||0)-(parseFloat(a.power_score)||0))});let j={S:44,A:34,B:26,C:20,D:16};return(0,b.jsx)("div",{style:{flex:1,overflow:"auto",background:"var(--sd-page)",padding:"20px 10px"},children:(0,b.jsx)("div",{style:{maxWidth:1200,margin:"0 auto"},children:aP.map((a,c)=>{let d=i[a];if(0===d.length)return null;let f=j[a],k="S"===a?12:"A"===a?8:"B"===a?6:4;return(0,b.jsxs)("div",{style:{marginBottom:"S"===a?20:"A"===a?16:10},children:[(0,b.jsxs)("div",{style:{textAlign:"center",marginBottom:8,fontSize:"S"===a?14:11,fontWeight:700,color:O.TIER_COLORS[a],opacity:"S"===a?1:.7},children:["S"===a&&"👑 ",a,"-Tier (",d.length,")"]}),(0,b.jsx)("div",{style:{display:"flex",flexWrap:"wrap",justifyContent:"center",gap:k,padding:"0 20px"},children:d.map(c=>{let d=g===c.id;return(0,b.jsxs)("div",{onClick:()=>e&&e(c),onMouseEnter:()=>h(c.id),onMouseLeave:()=>h(null),style:{position:"relative",cursor:"pointer"},children:[(0,b.jsx)("div",{style:{width:f,height:f,borderRadius:"50%",border:`2px solid ${O.TIER_COLORS[a]}`,overflow:"hidden",background:(0,I.localPhoto)(c.profile_image_url)?"#111":O.TIER_COLORS[a],display:"flex",alignItems:"center",justifyContent:"center",transition:"transform 0.15s, box-shadow 0.15s",transform:d?"scale(1.3)":"scale(1)",boxShadow:d?`0 0 16px ${O.TIER_COLORS[a]}60`:"none",zIndex:d?10:1,position:"relative"},children:(0,I.localPhoto)(c.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(c.profile_image_url),alt:"",style:{width:"100%",height:"100%",objectFit:"cover"},onError:b=>{b.target.style.display="none",b.target.parentElement.style.background=O.TIER_COLORS[a]}}):(0,b.jsx)("span",{style:{fontSize:.4*f,fontWeight:700,color:"S"===a?"#000":"var(--sd-fg-1, #fff)"},children:c.name?.charAt(0)})}),("S"===a||d)&&(0,b.jsxs)("div",{style:{position:"absolute",top:f+4,left:"50%",transform:"translateX(-50%)",whiteSpace:"nowrap",textAlign:"center",zIndex:20,pointerEvents:"none"},children:[(0,b.jsxs)("div",{style:{fontSize:"S"===a?9:10,fontWeight:600,color:d?"var(--sd-fg-1, #fff)":"var(--sd-fg-3, #aaa)",background:d?"var(--sd-surface, rgba(0,0,0,0.85))":"transparent",padding:d?"3px 8px":0,borderRadius:4},children:[c.name?.split(" ")[0],d&&(0,b.jsx)("span",{style:{color:O.TIER_COLORS[a],marginLeft:4,fontWeight:800},children:parseFloat(c.power_score||0).toFixed(1)})]}),d&&c.headline&&(0,b.jsx)("div",{style:{fontSize:8,color:"var(--sd-fg-3, #888)",marginTop:2,background:"rgba(var(--sd-shade, 0, 0, 0), 0.85)",padding:"2px 6px",borderRadius:3,maxWidth:160,overflow:"hidden",textOverflow:"ellipsis"},children:c.headline.substring(0,40)})]})]},c.id)})}),c<aP.length-1&&(0,b.jsx)("div",{style:{height:1,margin:"12px auto 0",width:`${50+12*c}%`,background:`linear-gradient(90deg, transparent, ${O.TIER_COLORS[a]}30, transparent)`}})]},a)})})})},modes:["degrees"],label:"Pyramid",icon:"🔺",desc:"Tier hierarchy"},list:{component:function({connections:a,degree2:c=[],onSelect:d,mode:e}){if("degrees"===e){let e={};c.forEach(a=>{a.source_connection_id&&(e[a.source_connection_id]||(e[a.source_connection_id]=[]),e[a.source_connection_id].push(a))});let f=Object.entries(e).map(([b,c])=>{let d=a.find(a=>a.id===b);if(!d)return null;let e=c.filter(a=>"S"===a.tier).length,f=c.filter(a=>"A"===a.tier).length,g=3*e+2*f+c.length;return{bridge:d,members:c,sCount:e,aCount:f,total:c.length,value:g}}).filter(Boolean).sort((a,b)=>b.value-a.value);return(0,b.jsx)("div",{style:{flex:1,overflow:"auto",padding:"16px 24px",background:"var(--sd-page)"},children:(0,b.jsxs)("div",{style:{maxWidth:800,margin:"0 auto"},children:[(0,b.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"40px 1fr 50px 50px 50px 80px",gap:8,padding:"8px 12px",fontSize:9,fontWeight:700,color:"var(--sd-fg-5, #555)",borderBottom:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.1)",textTransform:"uppercase",letterSpacing:.5},children:[(0,b.jsx)("span",{children:"#"}),(0,b.jsx)("span",{children:"Bridge"}),(0,b.jsx)("span",{children:"S"}),(0,b.jsx)("span",{children:"A"}),(0,b.jsx)("span",{children:"Total"}),(0,b.jsx)("span",{children:"Value"})]}),f.map((a,c)=>(0,b.jsxs)("div",{onClick:()=>d&&d(a.bridge),style:{display:"grid",gridTemplateColumns:"40px 1fr 50px 50px 50px 80px",gap:8,padding:"10px 12px",alignItems:"center",cursor:"pointer",borderBottom:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.04)",transition:"background 0.1s"},onMouseEnter:a=>a.currentTarget.style.background="rgba(var(--sd-ink, 255, 255, 255), 0.04)",onMouseLeave:a=>a.currentTarget.style.background="transparent",children:[(0,b.jsx)("span",{style:{fontSize:12,fontWeight:700,color:"var(--sd-fg-5, #444)"},children:c+1}),(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,minWidth:0},children:[(0,I.localPhoto)(a.bridge.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(a.bridge.profile_image_url),alt:"",style:{width:28,height:28,borderRadius:"50%",objectFit:"cover",flexShrink:0,border:`2px solid ${O.TIER_COLORS[a.bridge.tier]}`},onError:a=>{a.target.style.display="none"}}):(0,b.jsx)("div",{style:{width:28,height:28,borderRadius:"50%",flexShrink:0,fontSize:10,fontWeight:700,background:O.TIER_COLORS[a.bridge.tier],color:"#000",display:"flex",alignItems:"center",justifyContent:"center"},children:a.bridge.name?.charAt(0)}),(0,b.jsxs)("div",{style:{minWidth:0},children:[(0,b.jsx)("div",{style:{fontSize:12,fontWeight:600,color:"var(--sd-fg-1, #fff)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.bridge.name}),(0,b.jsxs)("div",{style:{fontSize:9,color:O.TIER_COLORS[a.bridge.tier],fontWeight:600},children:[a.bridge.tier,"-Tier"]})]})]}),(0,b.jsx)("span",{style:{fontSize:13,fontWeight:800,color:"var(--sd-gold, #FFD700)"},children:a.sCount}),(0,b.jsx)("span",{style:{fontSize:13,fontWeight:700,color:"var(--sd-purple, #9B59B6)"},children:a.aCount}),(0,b.jsx)("span",{style:{fontSize:12,color:"var(--sd-fg-3, #888)"},children:a.total}),(0,b.jsx)("div",{children:(0,b.jsx)("div",{style:{height:6,background:"rgba(var(--sd-ink, 255, 255, 255), 0.06)",borderRadius:3},children:(0,b.jsx)("div",{style:{height:"100%",borderRadius:3,background:`linear-gradient(90deg, ${O.TIER_COLORS[a.bridge.tier]}, #FF6B35)`,width:`${Math.min(100,a.value/Math.max(f[0]?.value||1,1)*100)}%`}})})})]},a.bridge.id))]})})}let f=[...a].sort((a,b)=>(parseFloat(b.power_score)||0)-(parseFloat(a.power_score)||0)),g=parseFloat(f[0]?.power_score)||10;return(0,b.jsx)("div",{style:{flex:1,overflow:"auto",padding:"16px 24px",background:"var(--sd-page)"},children:(0,b.jsxs)("div",{style:{maxWidth:800,margin:"0 auto"},children:[(0,b.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"40px 36px 1fr 60px 120px",gap:8,padding:"8px 12px",fontSize:9,fontWeight:700,color:"var(--sd-fg-5, #555)",borderBottom:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.1)",textTransform:"uppercase",letterSpacing:.5},children:[(0,b.jsx)("span",{children:"#"}),(0,b.jsx)("span",{}),(0,b.jsx)("span",{children:"Name"}),(0,b.jsx)("span",{children:"Score"}),(0,b.jsx)("span",{children:"Power"})]}),f.map((a,c)=>(0,b.jsxs)("div",{onClick:()=>d&&d(a),style:{display:"grid",gridTemplateColumns:"40px 36px 1fr 60px 120px",gap:8,padding:"8px 12px",alignItems:"center",cursor:"pointer",borderBottom:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.04)",background:c<3?`${O.TIER_COLORS[a.tier]}08`:"transparent",transition:"background 0.1s"},onMouseEnter:a=>a.currentTarget.style.background="rgba(var(--sd-ink, 255, 255, 255), 0.04)",onMouseLeave:b=>b.currentTarget.style.background=c<3?`${O.TIER_COLORS[a.tier]}08`:"transparent",children:[(0,b.jsx)("span",{style:{fontSize:12,fontWeight:700,color:c<3?O.TIER_COLORS[a.tier]:"var(--sd-fg-5, #444)"},children:c+1}),(0,I.localPhoto)(a.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(a.profile_image_url),alt:"",style:{width:28,height:28,borderRadius:"50%",objectFit:"cover",border:`2px solid ${O.TIER_COLORS[a.tier]}`},onError:a=>{a.target.style.display="none"}}):(0,b.jsx)("div",{style:{width:28,height:28,borderRadius:"50%",fontSize:10,fontWeight:700,background:O.TIER_COLORS[a.tier],color:"S"===a.tier?"#000":"var(--sd-fg-1, #fff)",display:"flex",alignItems:"center",justifyContent:"center"},children:a.name?.charAt(0)}),(0,b.jsxs)("div",{style:{minWidth:0},children:[(0,b.jsx)("div",{style:{fontSize:12,fontWeight:600,color:"var(--sd-fg-1, #fff)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.name}),(0,b.jsx)("div",{style:{fontSize:9,color:"var(--sd-fg-4, #666)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.headline?.substring(0,45)})]}),(0,b.jsxs)("div",{style:{textAlign:"center"},children:[(0,b.jsx)("span",{style:{fontSize:13,fontWeight:800,color:O.TIER_COLORS[a.tier]},children:parseFloat(a.power_score||0).toFixed(1)}),(0,b.jsx)("div",{style:{fontSize:8,color:"var(--sd-fg-5, #555)"},children:a.tier})]}),(0,b.jsx)("div",{style:{height:6,background:"rgba(var(--sd-ink, 255, 255, 255), 0.06)",borderRadius:3},children:(0,b.jsx)("div",{style:{height:"100%",borderRadius:3,background:O.TIER_COLORS[a.tier],width:`${parseFloat(a.power_score||0)/g*100}%`}})})]},a.id))]})})},modes:["degrees"],label:"List",icon:"☰",desc:"Ranked power list"},grid:{component:function({connections:a,degree2:c=[],onSelect:d,mode:e}){if("degrees"===e){let e={};c.forEach(a=>{a.source_connection_id&&(e[a.source_connection_id]||(e[a.source_connection_id]=[]),e[a.source_connection_id].push(a))});let f=Object.entries(e).map(([b,c])=>{let d=a.find(a=>a.id===b);if(!d)return null;let e=c.filter(a=>"S"===a.tier).length,f=c.filter(a=>"A"===a.tier).length;return{bridge:d,members:c,sCount:e,aCount:f,total:c.length}}).filter(Boolean).sort((a,b)=>3*b.sCount+2*b.aCount+b.total-(3*a.sCount+2*a.aCount+a.total));return(0,b.jsx)("div",{style:{flex:1,overflow:"auto",padding:20,background:"var(--sd-page)"},children:(0,b.jsx)("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(240px, 1fr))",gap:12,maxWidth:1200,margin:"0 auto"},children:f.map(a=>(0,b.jsxs)("div",{onClick:()=>d&&d(a.bridge),style:{padding:16,borderRadius:12,cursor:"pointer",background:"rgba(var(--sd-ink, 255, 255, 255), 0.03)",border:`1px solid ${O.TIER_COLORS[a.bridge.tier]||"#333"}30`,borderLeft:`4px solid ${O.TIER_COLORS[a.bridge.tier]||"#555"}`,transition:"all 0.15s"},onMouseEnter:a=>a.currentTarget.style.background="rgba(var(--sd-ink, 255, 255, 255), 0.06)",onMouseLeave:a=>a.currentTarget.style.background="rgba(var(--sd-ink, 255, 255, 255), 0.03)",children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,marginBottom:10},children:[(0,I.localPhoto)(a.bridge.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(a.bridge.profile_image_url),alt:"",style:{width:40,height:40,borderRadius:"50%",objectFit:"cover",border:`2px solid ${O.TIER_COLORS[a.bridge.tier]}`},onError:a=>{a.target.style.display="none"}}):(0,b.jsx)("div",{style:{width:40,height:40,borderRadius:"50%",fontSize:16,fontWeight:700,background:O.TIER_COLORS[a.bridge.tier],color:"#000",display:"flex",alignItems:"center",justifyContent:"center"},children:a.bridge.name?.charAt(0)}),(0,b.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,b.jsx)("div",{style:{fontSize:13,fontWeight:700,color:"var(--sd-fg-1, #fff)"},children:a.bridge.name}),(0,b.jsx)("div",{style:{fontSize:9,color:"var(--sd-fg-4, #666)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.bridge.headline?.substring(0,40)})]}),(0,b.jsx)("span",{style:{fontSize:12,fontWeight:800,color:O.TIER_COLORS[a.bridge.tier]},children:a.bridge.tier})]}),(0,b.jsxs)("div",{style:{display:"flex",gap:6,fontSize:10},children:[a.sCount>0&&(0,b.jsxs)("span",{style:{color:"var(--sd-gold, #FFD700)",fontWeight:600},children:[a.sCount,"S"]}),a.aCount>0&&(0,b.jsxs)("span",{style:{color:"var(--sd-purple, #9B59B6)",fontWeight:600},children:[a.aCount,"A"]}),(0,b.jsxs)("span",{style:{color:"var(--sd-fg-4, #666)"},children:[a.total," total"]})]}),(0,b.jsxs)("div",{style:{display:"flex",marginTop:8},children:[a.members.slice(0,8).map((a,c)=>(0,b.jsx)("div",{style:{width:22,height:22,borderRadius:"50%",fontSize:8,fontWeight:700,background:(0,I.localPhoto)(a.profile_image_url)?"transparent":O.TIER_COLORS[a.tier]||"#333",color:"var(--sd-fg-1, #fff)",display:"flex",alignItems:"center",justifyContent:"center",border:"2px solid var(--sd-bg)",marginLeft:c>0?-6:0,position:"relative",zIndex:8-c,overflow:"hidden"},children:(0,I.localPhoto)(a.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(a.profile_image_url),alt:"",style:{width:"100%",height:"100%",objectFit:"cover"}}):a.name?.charAt(0)},a.id)),a.total>8&&(0,b.jsxs)("span",{style:{fontSize:9,color:"var(--sd-fg-5, #555)",marginLeft:4,alignSelf:"center"},children:["+",a.total-8]})]})]},a.bridge.id))})})}let f={};return aO.forEach(a=>{f[a]=[]}),a.forEach(a=>{let b=a.tier||"D";f[b]&&f[b].push(a)}),aO.forEach(a=>{f[a].sort((a,b)=>(parseFloat(b.power_score)||0)-(parseFloat(a.power_score)||0))}),(0,b.jsx)("div",{style:{flex:1,overflow:"auto",padding:20,background:"var(--sd-page)"},children:(0,b.jsx)("div",{style:{maxWidth:1200,margin:"0 auto"},children:aO.map(a=>{let c=f[a];return 0===c.length?null:(0,b.jsxs)("div",{style:{marginBottom:24},children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,padding:"8px 0 10px",borderBottom:`2px solid ${O.TIER_COLORS[a]}30`,marginBottom:10},children:[(0,b.jsx)("div",{style:{width:10,height:10,borderRadius:"50%",background:O.TIER_COLORS[a]}}),(0,b.jsxs)("span",{style:{fontSize:15,fontWeight:800,color:O.TIER_COLORS[a]},children:[a,"-Tier"]}),(0,b.jsx)("span",{style:{fontSize:12,color:"var(--sd-fg-5, #555)"},children:c.length})]}),(0,b.jsx)("div",{style:{display:"grid",gridTemplateColumns:"repeat(auto-fill, minmax(180px, 1fr))",gap:8},children:c.map(c=>(0,b.jsxs)("div",{onClick:()=>d&&d(c),style:{padding:10,borderRadius:8,cursor:"pointer",background:"rgba(var(--sd-ink, 255, 255, 255), 0.03)",border:`1px solid ${O.TIER_COLORS[a]}20`,transition:"all 0.15s"},onMouseEnter:a=>a.currentTarget.style.background="rgba(var(--sd-ink, 255, 255, 255), 0.06)",onMouseLeave:a=>a.currentTarget.style.background="rgba(var(--sd-ink, 255, 255, 255), 0.03)",children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8},children:[(0,I.localPhoto)(c.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(c.profile_image_url),alt:"",style:{width:32,height:32,borderRadius:"50%",objectFit:"cover",border:`2px solid ${O.TIER_COLORS[a]}`},onError:a=>{a.target.style.display="none"}}):(0,b.jsx)("div",{style:{width:32,height:32,borderRadius:"50%",fontSize:12,fontWeight:700,background:O.TIER_COLORS[a],color:"S"===a?"#000":"var(--sd-fg-1, #fff)",display:"flex",alignItems:"center",justifyContent:"center"},children:c.name?.charAt(0)}),(0,b.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,b.jsx)("div",{style:{fontSize:11,fontWeight:600,color:"var(--sd-fg-1, #fff)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:c.name}),(0,b.jsx)("div",{style:{fontSize:8,color:"var(--sd-fg-4, #666)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:c.headline?.substring(0,30)})]})]}),(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",marginTop:6,alignItems:"center"},children:[(0,b.jsx)("span",{style:{fontSize:10,fontWeight:700,color:O.TIER_COLORS[a]},children:parseFloat(c.power_score||0).toFixed(1)}),(0,b.jsx)("div",{style:{flex:1,marginLeft:8,height:3,background:"rgba(var(--sd-ink, 255, 255, 255), 0.08)",borderRadius:2},children:(0,b.jsx)("div",{style:{height:"100%",borderRadius:2,background:O.TIER_COLORS[a],width:`${Math.min(100,10*(parseFloat(c.power_score)||0))}%`}})})]})]},c.id))})]},a)})})})},modes:["network","degrees"],label:"Grid",icon:"▦",desc:"Cards"}},bx=["galaxy","chain","separation","rings","list"];function by(a){return bx.filter(b=>bw[b]?.modes.includes(a)).map(a=>({key:a,...bw[a]}))}var bz=a.i(74994),bA=a.i(35112),bB=a.i(30889);let bC=/\/10, (your|sample) score\)/,bD=/^(?:Former )?(?:Student · )?(.+?) \([\d.]+\) · (no company found|.+?) \(\d+(?:\.\d+)?\/10(?:[:,][^)]*)?\)/,bE=O.TIER_COLORS,bF=["S","A","B","C","D"],bG="#00ff88";function bH({person:a,connections:d=[],degree2:e=[],tierColors:f=bE,onSelect:g,isRequested:h=W,canScan:i=!0}){let j=(0,c.useMemo)(()=>X(d,e),[d,e]),k=(0,c.useMemo)(()=>(0,P.routeIndex)(e),[e]),{rings:l,totals:m}=(0,c.useMemo)(()=>(function(a,b,{maxDegree:c=6,isRequested:d=W}={}){let e=[],f={people:0,connected:0,requested:0};if(!a||!b)return{rings:e,totals:f};let g=new Set([(0,P.keyFor)(a)]),h=[a];for(let a=2;a<=c&&h.length;a++){let c=[],i=[];for(let a of h){let e=[];for(let c of b.introduced.get(a.id)||[]){let b=(0,P.keyFor)(c);g.has(b)||(g.add(b),e.push({row:c,key:b,parentId:a.id,state:"connected"}),i.push(c))}for(let c of b.circles.get(a.id)||[]){let b=(0,P.keyFor)(c);g.has(b)||(g.add(b),e.push({row:c,key:b,parentId:a.id,state:d(c)?"requested":null}))}e.sort(Z),c.push(...e)}if(!c.length)break;for(let a of c)f.people++,"connected"===a.state?f.connected++:"requested"===a.state&&f.requested++;e.push({degree:a,people:c}),h=i}return{rings:e,totals:f}})(a,j,{isRequested:h}),[a,j,h]),[n,o]=(0,c.useState)(()=>new Set),[p,q]=(0,c.useState)(()=>new Set),[r,s]=(0,c.useState)(!1),t=(0,c.useMemo)(()=>l.flatMap(a=>a.people.map(a=>{let b="connected"===a.state||1===a.row.degree?null:aU(a.row,k.get((0,P.keyFor)(a.row))?.size||1);return{key:a.key,tier:a.row.tier,rarity:b?.key??null,mutuals:b}})),[l,k]),u=(0,c.useMemo)(()=>new Map(t.map(a=>[a.key,a])),[t]),v=(0,c.useMemo)(()=>({tiers:n,rarities:p}),[n,p]),w=(0,c.useMemo)(()=>t.filter(a=>aV(a,v)).length,[t,v]),x=(0,c.useMemo)(()=>d.filter(a=>j.circles.has(a.id)).length,[d,j]),y=t.some(a=>a.mutuals?.from==="linkedin"),z=(0,c.useMemo)(()=>(function(a){let b,c,d,e;if(!a)return null;if(null==a.power_score||""===a.power_score||!a.tier)return{title:!1,company:!1,never:!0,companyName:null,reason:"They haven’t been scored yet."};let f=String(a.score_why||"").match(bD);if(f)b=f[1],d=!(c="no company found"===f[2]?null:f[2])||!bC.test(a.score_why)&&!["known","data"].includes((0,bB.companyScore)(c).source);else{let e=(0,bB.scorePerson)(a);b=e.title.label,c=e.company||null,d=["none","default","network"].includes(e.companySource)}let g=b.startsWith("Audience of"),h="Title unclear"===b||b.includes("Works there");return(g&&(d=!1),h||d)?(e=h&&d?c?`Their headline doesn’t say their title, and the app doesn’t know ${c}.`:"Their headline names no title or company the app can read.":h?"Their headline doesn’t say their title.":c?`The app doesn’t know ${c}, so it counts as the middle of the scale.`:"The app couldn’t find where they work.",{title:h,company:d,never:!1,companyName:c,reason:e}):null})(a),[a]);if(!a)return null;if(!l.length){let c=a.name?.split(" ")[0]||"them";return(0,b.jsxs)("div",{style:z?{...bP,borderColor:"rgba(255,215,0,0.28)"}:bP,children:[(0,b.jsx)(bO,{children:"Their circle"}),z?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{style:{fontSize:11.5,color:"var(--sd-fg-2, #d8ccb0)",lineHeight:1.5,marginBottom:9*!!i},children:[(0,b.jsx)("b",{style:{color:"var(--sd-gold, #FFD700)"},children:"Their score is a guess."})," ",z.reason,i&&(0,b.jsxs)(b.Fragment,{children:[" Scanning ",c,"'s circle shows who you can reach through them, and a strong circle adds up to +2 to their score."]})]}),i&&(0,b.jsx)("button",{type:"button",onClick:bN,style:{width:"100%",padding:"8px 10px",borderRadius:8,cursor:"pointer",fontSize:12,fontWeight:700,border:"1px solid rgba(255,215,0,0.4)",background:"rgba(255,215,0,0.08)",color:"var(--sd-gold, #FFD700)"},children:"Scan their circle ↓"})]}):i?(0,b.jsxs)("div",{style:{fontSize:11,color:"var(--sd-fg-3, #999)",lineHeight:1.5},children:["Not scanned yet. Scan ",c,"'s circle below to see who they know, and everyone you reach through them after that."]}):(0,b.jsx)("div",{style:{fontSize:11,color:"var(--sd-fg-3, #999)",lineHeight:1.5},children:"Not scanned."})]})}let A=Object.fromEntries(bF.map(a=>[a,t.filter(b=>b.tier===a).length])),B=function(a=[]){let b=Object.fromEntries(aR.map(a=>[a.key,0]));for(let c of a)c?.rarity&&void 0!==b[c.rarity]&&b[c.rarity]++;return b}(t),C=n.size>0||p.size>0,D=(0,b.jsx)(bK,{tierColors:f,byTier:A,byRarity:B,tiers:n,rarities:p,onTier:a=>o(b=>aW(b,a)),onRarity:a=>q(b=>aW(b,a)),onClear:()=>{o(new Set),q(new Set)}}),E=(0,b.jsxs)("div",{style:{fontSize:9.5,color:"var(--sd-fg-4, #777)",lineHeight:1.45,marginTop:6},children:["Rarity is how many mutual connections lead to someone. It never changes a score."," ",y?"LinkedIn’s own count where a scan saved it; otherwise the ways in from your scans.":`Counted from the ${x} ${1===x?"circle":"circles"} you’ve scanned, so it can only go up as you scan more.`]});return(0,b.jsxs)("div",{style:bP,children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"baseline",justifyContent:"space-between",gap:8},children:[(0,b.jsx)(bO,{children:"Their circle"}),(0,b.jsx)("button",{type:"button",onClick:()=>s(!0),style:bR,"aria-label":"Open the large map",children:"Enlarge ⤢"})]}),(0,b.jsx)("button",{type:"button",onClick:()=>s(!0),"aria-label":`${a.name}'s circle: open the large map`,style:{display:"block",width:"100%",padding:0,border:"none",background:"none",cursor:"zoom-in"},children:(0,b.jsx)(bI,{person:a,rings:l,facts:u,filter:v,tierColors:f,size:240})}),(0,b.jsx)(bJ,{rings:l,totals:m,shown:C?w:null}),D,E,r&&(0,b.jsxs)(bM,{onClose:()=>s(!1),title:`${a.name}’s circle`,children:[(0,b.jsx)(bI,{person:a,rings:l,facts:u,filter:v,tierColors:f,size:640,labels:!0,onPick:a=>{s(!1),g?.(a)}}),(0,b.jsx)(bJ,{rings:l,totals:m,shown:C?w:null}),D,(0,b.jsx)(bL,{}),E]})]})}function bI({person:a,rings:d,facts:e,filter:f,tierColors:g,size:h,labels:i=!1,onPick:j}){let k=(0,c.useMemo)(()=>(function(a=[],b=240){let c=b/2,d=a.length,e=a=>c*(1===d?.78:.4+a/(d-1)*.52),f=a.map(a=>{let b=new Map;for(let c of a.people)b.has(c.parentId)||b.set(c.parentId,[]),b.get(c.parentId).push(c);return b}),g=(a,b)=>f[a+1]?.get(b)||[],h=new Map;for(let b=d-1;b>=0;b--)for(let c of a[b].people){let a="connected"===c.state?g(b,c.row.id).reduce((a,b)=>a+h.get(b),0):0;h.set(c,Math.max(1,a))}let i=[],j=[],k=new Map,l=-Math.PI/2;for(let m=0;m<d;m++){let n=e(m);a[m].people;let o=Math.max(2.4,b/100),p=m===d-1&&d>1,q=(p?n-e(m-1):(m+1<d?e(m+1):.97*c)-n)*.45,r=Math.max(1,Math.floor(q/o)+1),s=r>1?(p?-1:1)*Math.min(1.2*o,q/(r-1)):0,t=(a,b)=>$(Math.ceil(a*o/Math.max(1e-9,n*b)),1,r),u=1,v=1/0,w=[];for(let[a,b]of f[m]){let[d,e]=0===m?[l,l+2*Math.PI]:k.get(a)||[l,l+2*Math.PI],f=b.reduce((a,b)=>a+h.get(b),0),g=t(b.length,e-d);u=Math.max(u,g),v=Math.min(v,n*(e-d)*g/Math.max(1,b.length));let i=0,j=d;for(let a of b){let b=(e-d)*h.get(a)/f,l=j+b/2,m=n+i++%g*s,o=c+m*Math.cos(l),p=c+m*Math.sin(l);w.push({...a,angle:l,x:o,y:p}),"connected"===a.state&&k.set(a.row.id,[j,j+b]),j+=b}}if(m+1<d){let a=e(m+1);for(let b of w){if("connected"!==b.state||!g(m,b.row.id).length)continue;let[d,e]=k.get(b.row.id),f=(d+e)/2;j.push({x1:b.x,y1:b.y,x2:c+a*Math.cos(f),y2:c+a*Math.sin(f)})}}let x=$(Math.min(.32*v,u>1?.42*Math.abs(s):1/0),.8,b/60);i.push({degree:a[m].degree,radius:n,dotR:x,rows:u,items:w})}return{size:b,center:{x:c,y:c},rings:i,spokes:j}})(d,h),[d,h]),l=k.center,m=h/240;return(0,b.jsxs)("svg",{viewBox:`0 0 ${h} ${h}`,width:"100%",style:{display:"block",maxWidth:h,margin:"0 auto"},role:"img","aria-label":`${a.name}'s circle, ${d.length} ${1===d.length?"ring":"rings"}`,children:[k.rings.map(a=>(0,b.jsxs)("g",{children:[(0,b.jsx)("circle",{cx:l.x,cy:l.y,r:a.radius,fill:"none",stroke:"rgba(var(--sd-ink, 255, 255, 255), 0.07)",strokeWidth:.6*m}),(0,b.jsxs)("text",{x:l.x,y:l.y-a.radius-a.dotR-3*m,textAnchor:"middle",fontSize:6.5*m,fill:"#666",fontWeight:700,children:["D",a.degree]})]},a.degree)),k.spokes.map((a,c)=>(0,b.jsx)("line",{x1:a.x1,y1:a.y1,x2:a.x2,y2:a.y2,stroke:"rgba(0,255,136,0.35)",strokeWidth:.7*m},c)),k.rings.map(a=>a.items.map(c=>{let d=e.get(c.key),h=aV(d,f),k=g[c.row.tier]||"#888",l="connected"===c.state?1.7*a.dotR:a.dotR,m=[`${c.row.name} \xb7 ${c.row.tier}-tier${null!=c.row.power_score?` \xb7 ${Number(c.row.power_score).toFixed(1)}`:""}`,"connected"===c.state?"You added them":"requested"===c.state?"Request sent":null,d?.mutuals?`${aT(d.rarity)?.label}: ${d.mutuals.count} mutual${1===d.mutuals.count?"":"s"}${"scans"===d.mutuals.from?" (from your scans)":""}`:null].filter(Boolean).join("\n");return(0,b.jsxs)("g",{opacity:h?1:.12,style:j?{cursor:"pointer"}:void 0,onClick:j?a=>{a.stopPropagation(),j(c.row)}:void 0,children:[(0,b.jsx)("title",{children:m}),"requested"===c.state?(0,b.jsx)("circle",{cx:c.x,cy:c.y,r:1.25*l,fill:"none",stroke:k,strokeWidth:Math.max(.5,.45*l),strokeDasharray:`${Math.max(.6,.55*l)} ${Math.max(.5,.45*l)}`}):(0,b.jsx)("circle",{className:"sd-dot",cx:c.x,cy:c.y,r:l,fill:k,stroke:"connected"===c.state?bG:"none",strokeWidth:Math.max(.6,.3*l)}),i&&"connected"===c.state&&(0,b.jsx)("text",{x:c.x,y:c.y-l-3,textAnchor:"middle",fontSize:9,fill:"var(--sd-green, #00ff88)",fontWeight:700,children:String(c.row.name||"").split(" ")[0]})]},c.key)})),(0,b.jsx)("circle",{className:"sd-dot",cx:l.x,cy:l.y,r:7*m,fill:g[a.tier]||"var(--sd-fg-3, #888)",stroke:"#fff",strokeWidth:.8*m}),(0,b.jsx)("text",{x:l.x,y:l.y+2.4*m,textAnchor:"middle",fontSize:6.5*m,fontWeight:800,fill:"S"===a.tier?"#000":"var(--sd-fg-1, #fff)",children:String(a.name||"?").charAt(0)})]})}function bJ({rings:a,totals:c,shown:d}){return(0,b.jsxs)("div",{style:{fontSize:10.5,color:"var(--sd-fg-3, #aaa)",marginTop:6,lineHeight:1.5},children:[a.map(a=>`D${a.degree} ${a.people.length.toLocaleString("en-US")}`).join(" · "),c.connected>0&&(0,b.jsxs)("span",{style:{color:bG},children:[" · you added ",c.connected]}),c.requested>0&&(0,b.jsxs)("span",{style:{color:"var(--sd-gold, #FFD700)"},children:[" · ",c.requested," ",1===c.requested?"request":"requests"," out"]}),null!=d&&(0,b.jsxs)("span",{style:{color:"var(--sd-fg-1, #fff)"},children:[" · ",d.toLocaleString("en-US")," shown"]})]})}function bK({tierColors:a,byTier:c,byRarity:d,tiers:e,rarities:f,onTier:g,onRarity:h,onClear:i}){let j=(a,b)=>({height:22,padding:"0 7px",borderRadius:11,cursor:"pointer",fontSize:10,fontWeight:700,whiteSpace:"nowrap",border:`1px solid ${a?b:"rgba(var(--sd-ink, 255, 255, 255), 0.1)"}`,background:a?`${b}22`:"rgba(var(--sd-ink, 255, 255, 255), 0.03)",color:a?b:"var(--sd-fg-3, #999)"});return(0,b.jsxs)("div",{style:{marginTop:8,display:"flex",flexDirection:"column",gap:5},children:[(0,b.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",gap:4,alignItems:"center"},children:[(0,b.jsx)("span",{style:bQ,children:"Tier"}),bF.map(d=>(0,b.jsxs)("button",{type:"button","aria-pressed":e.has(d),onClick:()=>g(d),style:j(e.has(d),a[d]||"#888"),children:[d," ",(0,b.jsx)("span",{style:{fontWeight:500,opacity:.8},children:c[d]})]},d))]}),(0,b.jsxs)("div",{style:{display:"flex",flexWrap:"wrap",gap:4,alignItems:"center"},children:[(0,b.jsx)("span",{style:bQ,children:"Rarity"}),aR.map(a=>(0,b.jsxs)("button",{type:"button","aria-pressed":f.has(a.key),onClick:()=>h(a.key),title:`${a.label}: ${a.range} mutual connection${"1"===a.range?"":"s"}`,style:j(f.has(a.key),a.color),children:[a.label," ",(0,b.jsx)("span",{style:{fontWeight:500,opacity:.8},children:d[a.key]})]},a.key)),(e.size>0||f.size>0)&&(0,b.jsx)("button",{type:"button",onClick:i,style:bR,children:"Clear"})]})]})}function bL(){let a=(a,c)=>(0,b.jsxs)("span",{style:{display:"inline-flex",alignItems:"center",gap:5,marginRight:12,whiteSpace:"nowrap"},children:[a,c]});return(0,b.jsxs)("div",{style:{fontSize:10.5,color:"var(--sd-fg-3, #999)",marginTop:8,lineHeight:1.8},children:[a((0,b.jsx)("svg",{width:"10",height:"10",children:(0,b.jsx)("circle",{cx:"5",cy:"5",r:"4",fill:"var(--sd-fg-2, #FFD700)"})}),"colour = tier"),a((0,b.jsx)("svg",{width:"12",height:"12",children:(0,b.jsx)("circle",{cx:"6",cy:"6",r:"4",fill:"#9B59B6",stroke:bG,strokeWidth:"1.5"})}),"you added them"),a((0,b.jsx)("svg",{width:"12",height:"12",children:(0,b.jsx)("circle",{cx:"6",cy:"6",r:"4.2",fill:"none",stroke:"#3498DB",strokeWidth:"1.4",strokeDasharray:"2 1.6"})}),"request sent")]})}function bM({title:a,onClose:d,children:e}){return(0,c.useEffect)(()=>{let a=a=>{"Escape"===a.key&&d()};return window.addEventListener("keydown",a),()=>window.removeEventListener("keydown",a)},[d]),(0,bA.createPortal)((0,b.jsx)("div",{role:"dialog","aria-modal":"true","aria-label":a,onClick:d,style:{position:"fixed",inset:0,zIndex:300,background:"rgba(var(--sd-shade, 0, 0, 0), 0.78)",display:"flex",alignItems:"center",justifyContent:"center",padding:16},children:(0,b.jsxs)("div",{onClick:a=>a.stopPropagation(),style:{width:"min(720px, 100%)",maxHeight:"100%",overflowY:"auto",boxSizing:"border-box",background:"var(--sd-surface, #0f0c05)",border:"1px solid rgba(255,215,0,0.18)",borderRadius:14,padding:16},children:[(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:8},children:[(0,b.jsx)("div",{style:{fontSize:14,fontWeight:800,color:"var(--sd-fg-1, #fff)"},children:a}),(0,b.jsx)("button",{type:"button",onClick:d,style:{...bR,fontSize:12},children:"Close ✕"})]}),(0,b.jsx)("div",{style:{fontSize:10.5,color:"var(--sd-fg-3, #888)",marginBottom:8},children:"Click a dot to open that person."}),e]})}),document.body)}function bN(){let a=document.getElementById("scan-box");a&&(a.scrollIntoView({behavior:"smooth",block:"center"}),a.animate?.([{boxShadow:"0 0 0 3px rgba(255,215,0,0.75)"},{boxShadow:"0 0 0 0 rgba(255,215,0,0)"}],{duration:1600}),a.querySelector("button:not([disabled])")?.focus({preventScroll:!0}))}function bO({children:a}){return(0,b.jsx)("div",{style:{fontSize:10,fontWeight:700,color:"var(--sd-orange, #FF6B35)",letterSpacing:1,textTransform:"uppercase",marginBottom:6},children:a})}let bP={background:"rgba(var(--sd-ink, 255, 255, 255), 0.03)",border:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.07)",borderRadius:10,padding:10,marginBottom:16},bQ={fontSize:9,color:"var(--sd-fg-4, #666)",textTransform:"uppercase",letterSpacing:.5,width:38,flexShrink:0},bR={background:"none",border:"none",color:"var(--sd-fg-3, #888)",fontSize:10.5,fontWeight:600,cursor:"pointer",padding:0},bS=["S","A","B","C","D"],bT=O.TIER_COLORS,bU={S:"S-tier: one of the most valuable people in your network to know.",A:"A-tier: a strong person to know."},bV={padding:"8px 12px",borderRadius:8,fontSize:12,fontWeight:700,cursor:"pointer",textAlign:"left",border:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.12)",background:"rgba(var(--sd-ink, 255, 255, 255), 0.05)",color:"var(--sd-fg-1, #ddd)"};function bW({note:a,connections:c=[],degree2:d=[],onBack:e,onSelect:f,onOpenCircle:g,onShowInSeparation:h}){let{person:i,via:j,people:k}=function(a,b=[],c=[]){let d=[...b||[],...c||[]],e=new Map(d.map(a=>[a.id,a])),f="string"==typeof a?.data?ab(a.data):a?.data||{},g=null!=f.personId?e.get(f.personId):null;if(!g&&f.profileUrl&&(g=d.find(a=>a.profile_url===f.profileUrl)||null),!g)for(let[d,e]of aa){let f=String(a?.title||"").match(d);if(!f)continue;let h=f[e].trim().toLowerCase();if(g=(b||[]).find(a=>String(a.name||"").toLowerCase()===h)||(c||[]).find(a=>String(a.name||"").toLowerCase()===h)||null)break}let h=f.viaId??g?.unlocked_from_bridge_id??(g?.degree===2?g.source_connection_id:null);return{person:g||null,via:null!=h&&e.get(h)||null,people:(f.personIds||[]).map(a=>e.get(a)).filter(Boolean),data:f}}(a,c,d),l=i?.tier,m=Number.parseFloat(i?.power_score),n=Number(i?.company_prestige_score),o=["added_back","request_accepted","connection_accepted"].includes(a?.type),p=i&&d.some(a=>a.source_connection_id===i.id);return(0,b.jsxs)("div",{children:[(0,b.jsx)("button",{type:"button",onClick:e,style:{background:"none",border:"none",color:"var(--sd-fg-3, #aaa)",cursor:"pointer",fontSize:12,padding:0,marginBottom:12},children:"← Back"}),(0,b.jsxs)("div",{style:{display:"flex",gap:10,alignItems:"flex-start"},children:[(0,b.jsx)("span",{style:{fontSize:22},children:a?.icon||"📌"}),(0,b.jsxs)("div",{style:{minWidth:0},children:[(0,b.jsx)("div",{style:{fontSize:15,fontWeight:800,color:"var(--sd-fg-1, #fff)",lineHeight:1.35},children:a?.title}),(0,b.jsx)("div",{style:{fontSize:11,color:"var(--sd-fg-4, #777)",marginTop:3},children:(a=>{let b=new Date(String(a||"").replace(" ","T")+(String(a||"").includes("Z")?"":"Z")).getTime();if(!Number.isFinite(b))return"";let c=Math.round((Date.now()-b)/6e4);if(c<1)return"just now";if(c<60)return`${c} min ago`;let d=Math.round(c/60);return d<24?`${d} h ago`:new Date(b).toLocaleDateString()})(a?.created_at)})]})]}),i&&(0,b.jsxs)("div",{style:{marginTop:16,padding:14,borderRadius:12,border:`1px solid ${bT[l]||"#555"}55`,background:`${bT[l]||"#555"}10`},children:[(0,b.jsxs)("div",{style:{display:"flex",gap:12,alignItems:"center"},children:[(0,b.jsx)(a_,{person:i,size:44}),(0,b.jsxs)("div",{style:{minWidth:0},children:[(0,b.jsx)("div",{style:{fontSize:15,fontWeight:800},children:i.name}),(0,b.jsx)("div",{style:{fontSize:11.5,color:"var(--sd-fg-3, #aab)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:i.headline||i.company||""}),(0,b.jsxs)("div",{style:{fontSize:11.5,fontWeight:800,color:bT[l]||"#aaa",marginTop:2},children:[l?`${l}-tier`:"Not scored yet",Number.isFinite(m)?` \xb7 ${m.toFixed(1)}`:""]})]})]}),o&&(0,b.jsxs)("div",{style:{marginTop:12,fontSize:12.5,color:"var(--sd-fg-1, #ddd)",lineHeight:1.5},children:[(0,b.jsx)("b",{children:i.name.split(" ")[0]})," added you back",j?(0,b.jsxs)(b.Fragment,{children:[". You met through ",(0,b.jsx)("b",{style:{color:bT[j.tier]||"#fff"},children:j.name}),"."]}):"."]}),!o&&j&&(0,b.jsxs)("div",{style:{marginTop:12,fontSize:12.5,color:"var(--sd-fg-1, #ddd)"},children:[2===i.degree?"In the circle of ":"You met through ",(0,b.jsx)("b",{children:j.name}),"."]}),bU[l]&&(0,b.jsx)("div",{style:{marginTop:8,fontSize:12.5,fontWeight:700,color:bT[l]},children:bU[l]}),n>=8&&(0,b.jsxs)("div",{style:{marginTop:6,fontSize:12,color:"var(--sd-fg-2, #cfd3e6)"},children:["Works at a top company",i.company?`, ${i.company}`:""," (its score: ",n,")."]}),(0,b.jsxs)("div",{style:{display:"flex",flexDirection:"column",gap:6,marginTop:14},children:[(0,b.jsxs)("button",{type:"button",style:bV,onClick:()=>f?.(i),children:["Open ",i.name.split(" ")[0],"’s card →"]}),(p||1===i.degree)&&g&&(0,b.jsx)("button",{type:"button",style:bV,onClick:()=>g(i.id),children:p?`Open ${i.name.split(" ")[0]}’s circle in Bridge Chains →`:`${i.name.split(" ")[0]}’s circle: not scanned yet`}),2===i.degree&&h&&(0,b.jsx)("button",{type:"button",style:bV,onClick:()=>h({query:i.name}),children:"Show in Separation →"})]})]}),k.length>1&&(0,b.jsxs)("div",{style:{marginTop:16},children:[(0,b.jsx)("div",{style:{fontSize:10,fontWeight:800,letterSpacing:1,color:"var(--sd-fg-4, #6b7090)",textTransform:"uppercase",marginBottom:8},children:"Who"}),k.slice(0,12).map(a=>(0,b.jsxs)("button",{type:"button",onClick:()=>f?.(a),style:{...bV,display:"flex",gap:10,alignItems:"center",width:"100%",marginBottom:6,fontWeight:600},children:[(0,b.jsx)(a_,{person:a,size:26}),(0,b.jsxs)("span",{style:{minWidth:0,flex:1},children:[(0,b.jsx)("span",{style:{display:"block",color:"var(--sd-fg-1, #fff)"},children:a.name}),(0,b.jsx)("span",{style:{display:"block",fontSize:10.5,color:"var(--sd-fg-3, #8a8fa8)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.company||a.headline||""})]}),(0,b.jsx)("span",{style:{fontSize:11,fontWeight:800,color:bT[a.tier]||"#aaa"},children:a.tier})]},a.id))]}),a?.message&&(0,b.jsx)("div",{style:{marginTop:14,fontSize:12,color:"var(--sd-fg-3, #999)",lineHeight:1.55},children:a.message}),!i&&!k.length&&(0,b.jsx)("div",{style:{marginTop:10,fontSize:11.5,color:"var(--sd-fg-4, #667)"},children:"Nothing more on file about this one."})]})}let bX=(a,b)=>aY.TIER_ORDER.indexOf(a.tier)-aY.TIER_ORDER.indexOf(b.tier)||(0,P.score1)(b)-(0,P.score1)(a)||String(a.name||"").localeCompare(String(b.name||"")),bY=a=>String(a||"").trim().split(/\s+/)[0]||"Their",bZ={display:"flex",alignItems:"center",gap:9,width:"100%",padding:"7px 8px",borderRadius:8,boxSizing:"border-box",background:"rgba(var(--sd-ink, 255, 255, 255), 0.03)",border:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.06)",color:"var(--sd-fg-1, #fff)",cursor:"pointer",textAlign:"left",font:"inherit",textDecoration:"none"};function b$({person:a,tierColors:c,note:d,noteColor:e,onSelect:f,href:g,label:h}){let i=(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)(a_,{person:a,size:26,tierColors:c}),(0,b.jsxs)("span",{style:{flex:1,minWidth:0},children:[(0,b.jsxs)("span",{style:{display:"block",fontSize:12,fontWeight:700,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:[a.name,(0,b.jsx)("span",{style:{fontSize:10,color:c[a.tier]||"#888",fontWeight:800,marginLeft:6},children:a.tier})]}),(0,b.jsx)("span",{style:{display:"block",fontSize:10.5,color:"var(--sd-fg-3, #888)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:[a.title,a.company].filter(Boolean).join(" · ")||" "})]}),d&&(0,b.jsx)("span",{style:{fontSize:10,fontWeight:700,color:e||"#888",whiteSpace:"nowrap"},children:d})]});return g?(0,b.jsx)(V.default,{href:g,"aria-label":h,style:{...bZ,borderColor:"rgba(0,255,136,0.2)"},children:i}):(0,b.jsx)("button",{type:"button",onClick:()=>f?.(a),style:bZ,children:i})}function b_({person:a,connections:d=[],degree2:e=[],scanNotes:f,tierColors:g,onSelect:h,onToggle:i,canScan:j=!0}){let[k,l]=(0,c.useState)(null),[m,n]=(0,c.useState)(""),[o,p]=(0,c.useState)(60),q=(0,c.useMemo)(()=>X(d,e),[d,e]),r=(0,c.useMemo)(()=>(0,K.reachIndex)(d,e,f),[d,e,f]),s=(0,c.useMemo)(()=>[...q.circles.get(a.id)||[]].sort(bX),[q,a.id]),t=(0,c.useMemo)(()=>[...q.introduced.get(a.id)||[]].sort(bX),[q,a.id]),u=(0,c.useMemo)(()=>{let a=Object.fromEntries(aY.TIER_ORDER.map(a=>[a,0]));for(let b of s)null!=a[b.tier]&&(a[b.tier]+=1);return a},[s]),v=m.trim().toLowerCase(),w=s.filter(a=>(!k||a.tier===k)&&(v.length<2||[a.name,a.title,a.company].some(a=>String(a||"").toLowerCase().includes(v)))),x=g[a.tier]||"#888";return(0,b.jsxs)("div",{children:[(0,b.jsxs)("button",{onClick:i,style:{display:"flex",alignItems:"center",gap:6,background:"none",border:"none",color:"var(--sd-fg-3, #888)",fontSize:12,cursor:"pointer",padding:"0 0 10px",fontWeight:600},children:[(0,b.jsx)("span",{style:{fontSize:16},children:"←"})," Close"]}),(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,marginBottom:4},children:[(0,b.jsx)(a_,{person:a,size:38,tierColors:g}),(0,b.jsxs)("div",{style:{minWidth:0},children:[(0,b.jsx)("div",{style:{fontSize:10,fontWeight:700,letterSpacing:1,color:"var(--sd-fg-3, #888)",textTransform:"uppercase"},children:"You’re in"}),(0,b.jsxs)("h3",{style:{fontSize:16,fontWeight:800,margin:0,color:x},children:[bY(a.name),"’s circle"]})]})]}),(0,b.jsxs)("div",{style:{fontSize:11.5,color:"var(--sd-fg-3, #999)",marginBottom:12},children:[[a.title,a.company].filter(Boolean).join(" · "),(0,b.jsxs)("button",{type:"button",onClick:()=>h?.(a),style:{display:"block",marginTop:6,padding:0,background:"none",border:"none",color:"#74B9FF",fontSize:11,fontWeight:700,cursor:"pointer"},children:["Open ",bY(a.name),"’s card →"]})]}),(0,b.jsx)("div",{style:{fontSize:22,fontWeight:800,lineHeight:1},children:(s.length+t.length).toLocaleString("en-US")}),(0,b.jsxs)("div",{style:{fontSize:11,color:"var(--sd-fg-3, #888)",marginBottom:10},children:[s.length+t.length===1?"person":"people"," in their circle",t.length?` \xb7 you added ${t.length} of them`:""]}),(0,b.jsx)("div",{style:{display:"flex",gap:5,flexWrap:"wrap",marginBottom:10},children:aY.TIER_ORDER.map(a=>(0,b.jsxs)("button",{type:"button","aria-pressed":k===a,disabled:!u[a],onClick:()=>{l(k===a?null:a),p(60)},style:{padding:"4px 9px",borderRadius:12,fontSize:11,fontWeight:700,cursor:u[a]?"pointer":"default",border:`1px solid ${k===a?g[a]:"rgba(var(--sd-ink, 255, 255, 255), 0.1)"}`,background:k===a?`${g[a]}26`:"rgba(var(--sd-ink, 255, 255, 255), 0.03)",color:u[a]?g[a]:"var(--sd-fg-5, #444)"},children:[a," ",(0,b.jsx)("span",{style:{color:"var(--sd-fg-3, #aaa)",fontWeight:600},children:u[a]})]},a))}),(0,b.jsx)("input",{type:"search",value:m,placeholder:`Search ${bY(a.name)}’s circle`,onChange:a=>{n(a.target.value),p(60)},style:{width:"100%",padding:"8px 12px",borderRadius:8,fontSize:12,marginBottom:14,boxSizing:"border-box",border:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.1)",background:"rgba(var(--sd-ink, 255, 255, 255), 0.05)",color:"var(--sd-fg-1, #fff)",outline:"none"}}),t.length>0&&!k&&v.length<2&&(0,b.jsxs)("div",{style:{marginBottom:14},children:[(0,b.jsxs)("div",{style:{fontSize:10,fontWeight:700,color:"var(--sd-green, #00ff88)",letterSpacing:1,marginBottom:6,textTransform:"uppercase"},children:["You added from here (",t.length,")"]}),(0,b.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:5},children:t.map(a=>{let c,[d,e]="ready"===(c=(0,K.reachState)(a,r))?["ready to scan","#00ff88"]:"scanned"===c?["circle scanned","#74B9FF"]:"hidden"===c?["list hidden","#888"]:[null];return"ready to scan"===d&&j?(0,b.jsx)(b$,{person:a,tierColors:g,note:"Scan… →",noteColor:"#00ff88",href:`/setup?scan=${encodeURIComponent(a.id)}`,label:`Scan ${a.name}’s circle: opens the Scan page to confirm`},a.id):(0,b.jsx)(b$,{person:a,tierColors:g,note:d,noteColor:e,onSelect:h},a.id)})})]}),(0,b.jsxs)("div",{style:{fontSize:10,fontWeight:700,color:"var(--sd-fg-3, #888)",letterSpacing:1,marginBottom:6,textTransform:"uppercase"},children:[k?`${k} tier in their circle`:t.length?"Everyone else in their circle":"Everyone in their circle"," (",w.length.toLocaleString("en-US"),")"]}),0===w.length?(0,b.jsx)("div",{style:{fontSize:11.5,color:"var(--sd-fg-3, #888)",lineHeight:1.5},children:0===s.length?"Their circle isn’t scanned yet.":"No one here matches."}):(0,b.jsxs)("div",{role:"list",style:{display:"flex",flexDirection:"column",gap:5},children:[w.slice(0,o).map(a=>(0,b.jsx)(b$,{person:a,tierColors:g,onSelect:h},a.id)),w.length>o&&(0,b.jsxs)("button",{type:"button",onClick:()=>p(a=>a+180),style:{background:"none",border:"none",color:"var(--sd-fg-3, #888)",fontSize:11,fontWeight:600,cursor:"pointer",padding:"6px 0",textAlign:"left"},children:["Show more (",(w.length-o).toLocaleString("en-US")," left)"]})]})]})}function b0({selected:a,stats:d,tierColors:e,connections:f,degree2:i=[],mode:j,collapsed:k,filter:l,pending:m=[],onToggle:n,onSelect:o,onSwitchMode:p,onFocusNode:q,onMarkSent:r,onUndoPending:s,scanNotes:t,csvSource:u=null,onOpenCircle:v,onShowInSeparation:w,note:x=null,onCloseNote:y,circle:z=null}){let A,B,C="degrees"===j,D=!u,{userId:E,userProfile:F}=(0,ac.useUser)(),[G,H]=(0,c.useState)(""),J=(0,c.useMemo)(()=>{let a={};return i.forEach(b=>{b.source_connection_id&&(a[b.source_connection_id]||(a[b.source_connection_id]=[]),a[b.source_connection_id].push(b))}),a},[i]),L=(0,c.useMemo)(()=>(0,P.routeIndex)(i),[i]),M=(0,c.useMemo)(()=>(0,ad.exclusiveReach)(i,f),[i,f]),N=(0,c.useMemo)(()=>(0,ad.bridgeOverlap)(i,f),[i,f]),O=(0,c.useMemo)(()=>(0,K.reachIndex)(f,i,t),[f,i,t]),[Q,R]=(0,c.useState)(!1),S=(0,c.useMemo)(()=>new Map(f.map(a=>[a.id,a])),[f]),T=(0,g.default)(),U=(0,c.useCallback)(a=>(0,h.hasRequest)(a,T),[T]);if(x)return(0,b.jsx)(b1,{collapsed:k,onToggle:n,children:(0,b.jsx)(bW,{note:x,connections:f,degree2:i,onBack:y,onSelect:a=>{y?.(),o?.(a)},onOpenCircle:v?a=>{y?.(),v(a)}:void 0,onShowInSeparation:w?a=>{y?.(),w(a)}:void 0})});if(a){let c,d,g,j,l=1===a.degree&&J[a.id],m=J[a.id]||[],q=2===a.degree?(0,P.routesFor)(a,L,S):[];return(0,b.jsxs)(b1,{collapsed:k,onToggle:n,children:[(0,b.jsxs)("button",{onClick:()=>o&&o(null),style:{display:"flex",alignItems:"center",gap:6,background:"none",border:"none",color:"var(--sd-fg-3, #888)",fontSize:12,cursor:"pointer",padding:"0 0 10px",fontWeight:600},children:[(0,b.jsx)("span",{style:{fontSize:16},children:"←"})," Back to list"]}),(0,b.jsx)("div",{style:{fontSize:10,color:"var(--sd-fg-3, #888)",marginBottom:8,letterSpacing:1,textTransform:"uppercase"},children:2===a.degree?"Degree 2 Connection":"Degree 1 Connection"}),(0,b.jsxs)("div",{style:{display:"flex",gap:6,marginBottom:8,flexWrap:"wrap"},children:[(0,b.jsx)("div",{style:{background:2===a.degree?"#FF6B35":e[a.tier],color:"#000",display:"inline-block",padding:"2px 10px",borderRadius:12,fontSize:11,fontWeight:700},children:2===a.degree?`DEGREE 2 \xb7 TIER ${a.tier}`:`TIER ${a.tier}`}),a.unlocked_from_name&&(0,b.jsxs)("div",{style:{background:"rgba(52,152,219,0.08)",border:"1px solid rgba(52,152,219,0.28)",borderRadius:8,padding:"9px 11px",marginBottom:10,fontSize:11.5,color:"#8fb8d6",lineHeight:1.5},children:[1===a.degree?"You met them through ":"Reachable through ",(0,b.jsx)("b",{style:{color:"var(--sd-fg-1, #cfe6f7)"},children:a.unlocked_from_name})]}),a.is_catalyst&&(0,b.jsx)("div",{style:{background:"#00ff88",color:"#000",display:"inline-block",padding:"2px 10px",borderRadius:12,fontSize:11,fontWeight:800,letterSpacing:.5},children:"CATALYST"})]}),(0,b.jsxs)("div",{style:{display:"flex",gap:12,alignItems:"center",marginBottom:16},children:[(0,I.localPhoto)(a.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(a.profile_image_url),alt:a.name,style:{width:52,height:52,borderRadius:"50%",objectFit:"cover",border:`2px solid ${e[a.tier]||"#555"}`,flexShrink:0},onError:a=>{a.target.style.display="none",a.target.nextSibling.style.display="flex"}}):null,(0,b.jsx)("div",{style:{width:52,height:52,borderRadius:"50%",flexShrink:0,background:e[a.tier]||"#555",display:(0,I.localPhoto)(a.profile_image_url)?"none":"flex",alignItems:"center",justifyContent:"center",fontSize:20,fontWeight:700,color:"S"===a.tier?"#000":"var(--sd-fg-1, #fff)"},children:a.name?.charAt(0)}),(0,b.jsxs)("div",{style:{minWidth:0},children:[(0,b.jsx)("h2",{style:{fontSize:18,fontWeight:700,margin:0},children:a.name}),(0,b.jsx)("p",{style:{color:"var(--sd-fg-3, #aaa)",fontSize:11,margin:"3px 0 0",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.headline?.substring(0,60)}),a.profile_url&&(0,b.jsx)("a",{href:a.profile_url,target:"_blank",rel:"noopener noreferrer",style:{fontSize:10,color:"#0077B5",textDecoration:"none",fontWeight:600},children:"View on LinkedIn"})]})]}),1===a.degree&&(0,b.jsx)(bH,{person:a,connections:f,degree2:i,tierColors:e,onSelect:o,isRequested:U,canScan:D}),2!==a.degree&&(()=>{let c,d,g=function(a,{degree2:b=[],exclusive:c,overlap:d,reach:e}={}){if(!a||2===a.degree)return null;let f=new Set,g={S:0,A:0,B:0,C:0,D:0},h=new Map;for(let c of b){if(c?.source_connection_id!==a.id)continue;let b=(0,P.keyFor)(c);if(f.has(b))continue;f.add(b),g[bS.includes(c.tier)?c.tier:"D"]+=1;let d=String(c.company||"").trim();d&&h.set(d,(h.get(d)||0)+1)}let i=[...h.entries()].filter(([,a])=>a>=2).sort((a,b)=>b[1]-a[1]||a[0].localeCompare(b[0])).slice(0,2).map(([a,b])=>({name:a,count:b})),j=f.size,k=c?.get(a.id)||{reach:0,only:0,total:0},l=d?.get(a.id),m=l&&l.share>=.15&&l.shared>=3?{id:l.with,share:l.share,shared:l.shared}:null,n=[...c?.entries()||[]].sort((a,b)=>b[1].reach-a[1].reach||String(a[0]).localeCompare(String(b[0]))),o=n.findIndex(([b])=>b===a.id);return{circle:j,only:k.only,onlyShare:j?k.only/j:0,twin:m,mix:g,bars:e?(0,K.scanBars)(a,e):null,rank:o>=0?o+1:null,of:n.length,companies:i}}(a,{degree2:i,exclusive:M,overlap:N,reach:O});if(!g)return null;let j=a.name?.split(" ")[0]||"them",k=g.twin&&f.find(a=>a.id===g.twin.id),l={display:"flex",alignItems:"baseline",justifyContent:"space-between",gap:10,padding:"7px 0",borderTop:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.05)"},m={fontSize:10.5,color:"var(--sd-fg-3, #8b9a9a)",minWidth:92},n={background:"none",border:"none",padding:0,color:"var(--sd-blue, #3498DB)",cursor:"pointer",fontSize:11.5,whiteSpace:"nowrap"},p=null==g.bars?"Not scanned yet":5===g.bars?"Their whole list":`About ${20*g.bars}% of their list`;return(0,b.jsxs)("div",{style:{border:"1px solid rgba(52,152,219,0.25)",borderRadius:8,marginBottom:16,background:"rgba(52,152,219,0.04)"},children:[(0,b.jsxs)("button",{onClick:()=>R(a=>!a),"aria-expanded":Q,style:{width:"100%",display:"flex",justifyContent:"space-between",alignItems:"center",padding:"9px 12px",background:"none",border:"none",cursor:"pointer",color:"var(--sd-fg-1, #cfe6f7)"},children:[(0,b.jsx)("span",{style:{fontSize:11,fontWeight:700,letterSpacing:1},children:"INSIGHTS"}),(0,b.jsxs)("span",{style:{fontSize:11,color:"var(--sd-fg-3, #8b9a9a)"},children:[!Q&&g.circle>0&&`${g.circle.toLocaleString()} in their circle${g.only?` \xb7 ${g.only.toLocaleString()} only through ${j}`:""} `,Q?"▲":"▼"]})]}),Q&&(0,b.jsxs)("div",{style:{padding:"0 12px 8px",fontSize:12,color:"var(--sd-fg-2, #ccc)"},children:[(0,b.jsxs)("div",{style:l,children:[(0,b.jsx)("span",{style:m,children:"Their circle"}),(0,b.jsx)("span",{style:{flex:1},children:g.circle?`${g.circle.toLocaleString()} people`:"None scanned yet"}),g.circle>0&&v&&(0,b.jsx)("button",{style:n,onClick:()=>v(a.id),children:"Explore →"})]}),(0,b.jsxs)("div",{style:l,children:[(0,b.jsxs)("span",{style:m,children:["Only through ",j]}),(0,b.jsx)("span",{style:{flex:1},children:g.circle?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("b",{style:{color:"var(--sd-green, #00ff88)"},children:g.only.toLocaleString()})," (",Math.round(100*g.onlyShare),"%): none of your other connections reach them"]}):"-"}),g.only>0&&w&&(0,b.jsx)("button",{style:n,onClick:()=>w({query:a.name,rarity:"only"}),children:"Show them →"})]}),(0,b.jsxs)("div",{style:l,children:[(0,b.jsx)("span",{style:m,children:"Closest overlap"}),(0,b.jsx)("span",{style:{flex:1},children:k?(0,b.jsxs)(b.Fragment,{children:["Opens the same doors as ",(0,b.jsx)("b",{style:{color:"var(--sd-fg-1, #fff)"},children:k.name})," (",Math.round(100*g.twin.share),"%, ",g.twin.shared.toLocaleString()," people)"]}):"No one opens the same doors"}),k&&(0,b.jsx)("button",{style:n,onClick:()=>o?.(k),children:"Open →"})]}),(0,b.jsxs)("div",{style:l,children:[(0,b.jsx)("span",{style:m,children:"Tier mix"}),(0,b.jsx)("span",{style:{flex:1,display:"flex",height:8,borderRadius:4,overflow:"hidden",background:"rgba(var(--sd-ink, 255, 255, 255), 0.05)",alignSelf:"center"},children:g.circle>0&&["S","A","B","C","D"].map(a=>g.mix[a]>0&&(0,b.jsx)("span",{title:`${a}: ${g.mix[a]}`,style:{width:`${100*g.mix[a]/g.circle}%`,background:e[a]}},a))}),(0,b.jsx)("span",{style:{fontSize:10.5,color:"var(--sd-fg-3, #8b9a9a)"},children:g.circle?`${g.mix.S} S \xb7 ${g.mix.A} A`:""}),g.mix.S>0&&w&&(0,b.jsx)("button",{style:n,onClick:()=>w({query:a.name,tier:"S"}),children:"S only →"})]}),g.companies.length>0&&(0,b.jsxs)("div",{style:l,children:[(0,b.jsx)("span",{style:m,children:"Where they work"}),(0,b.jsx)("span",{style:{flex:1},children:g.companies.map(a=>`${a.count} at ${a.name}`).join(" · ")})]}),(0,b.jsxs)("div",{style:l,children:[(0,b.jsx)("span",{style:m,children:"Scanned"}),(0,b.jsx)("span",{style:{flex:1},children:p}),5!==g.bars&&D&&(0,b.jsx)("a",{href:`/setup?scan=${encodeURIComponent(a.id)}`,style:n,children:null==g.bars?"Scan →":"Finish →"})]}),(c=a.connected_date?new Date(a.connected_date):null,d=(J[a.id]||[]).filter(a=>(0,h.hasRequest)(a,T)).length,c&&!Number.isNaN(c.getTime())||d?(0,b.jsxs)("div",{style:l,children:[(0,b.jsxs)("span",{style:m,children:["You and ",j]}),(0,b.jsxs)("span",{style:{flex:1},children:[c&&!Number.isNaN(c.getTime())?`Connected ${c.toLocaleDateString(void 0,{month:"short",year:"numeric"})}`:"",d?`${c?" · ":""}${d} request${1===d?"":"s"} out through them`:""]})]}):null),(0,b.jsxs)("div",{style:l,children:[(0,b.jsx)("span",{style:m,children:"Rank"}),(0,b.jsx)("span",{style:{flex:1},children:g.rank?`#${g.rank} of ${g.of} by who only they reach`:"Ranked once their circle is scanned"})]})]})]})})(),a.is_catalyst&&(0,b.jsxs)("div",{style:{background:"rgba(0,255,136,0.08)",border:"1px solid rgba(0,255,136,0.3)",borderRadius:8,padding:12,marginBottom:16},children:[(0,b.jsx)("div",{style:{fontSize:10,color:"var(--sd-green, #00ff88)",fontWeight:700,marginBottom:4,letterSpacing:1},children:"CATALYST NODE"}),(0,b.jsxs)("div",{style:{fontSize:12,color:"var(--sd-fg-2, #ccc)"},children:["This person's network power exceeds their own tier. They connect to"," ",(0,b.jsxs)("strong",{style:{color:"var(--sd-green, #00ff88)"},children:[a.catalyst_score," S+A tier"]})," ","people, making them a high-value stepping stone to reach elite connections."]})]}),2===a.degree&&q.length>0&&(0,b.jsx)(b4,{routes:q,selected:a,tierColors:e,onSelect:o},a.id),(0,b.jsxs)("div",{style:{background:"rgba(var(--sd-ink, 255, 255, 255), 0.04)",borderRadius:8,padding:12,marginBottom:16},children:[(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"baseline",marginBottom:8},children:[(0,b.jsx)("span",{style:{fontSize:11,color:"var(--sd-fg-3, #888)",fontWeight:600,letterSpacing:1,textTransform:"uppercase"},children:"Score"}),(0,b.jsx)("span",{style:{fontSize:28,fontWeight:800,color:e[a.tier]||"#fff"},children:parseFloat(a.power_score).toFixed(1)})]}),a.score_why&&(0,b.jsx)("div",{style:{fontSize:11,color:"var(--sd-fg-2, #aab7b7)",lineHeight:1.5,marginBottom:10},children:a.score_why}),(0,b.jsxs)("div",{style:{marginBottom:6},children:[(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",fontSize:10,color:"var(--sd-fg-3, #888)",marginBottom:2},children:[(0,b.jsx)("span",{children:"Title"}),(0,b.jsxs)("span",{children:[a.seniority_score||0,"/10"]})]}),(0,b.jsx)("div",{style:{height:4,background:"rgba(var(--sd-ink, 255, 255, 255), 0.08)",borderRadius:2},children:(0,b.jsx)("div",{style:{height:"100%",width:`${10*(a.seniority_score||0)}%`,background:e[a.tier]||"#FFD700",borderRadius:2}})})]}),(0,b.jsxs)("div",{style:{marginBottom:6*(a.circle_power>0)},children:[(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",fontSize:10,color:"var(--sd-fg-3, #888)",marginBottom:2},children:[(0,b.jsx)("span",{children:"Company"}),(0,b.jsxs)("span",{children:[a.company_prestige_score||0,"/10"]})]}),(0,b.jsx)("div",{style:{height:4,background:"rgba(var(--sd-ink, 255, 255, 255), 0.08)",borderRadius:2},children:(0,b.jsx)("div",{style:{height:"100%",width:`${10*(a.company_prestige_score||0)}%`,background:"#3498DB",borderRadius:2}})})]}),a.circle_power>0&&(0,b.jsxs)("div",{children:[(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",fontSize:10,color:"var(--sd-fg-3, #888)",marginBottom:2},children:[(0,b.jsx)("span",{children:"Circle Power"}),(0,b.jsxs)("span",{style:{color:"var(--sd-orange, #FF6B35)"},children:[a.circle_s_count||0,"S · ",a.circle_a_count||0,"A"]})]}),(0,b.jsx)("div",{style:{height:4,background:"rgba(var(--sd-ink, 255, 255, 255), 0.08)",borderRadius:2},children:(0,b.jsx)("div",{style:{height:"100%",width:`${Math.min(parseFloat(a.circle_power)/70*100,100)}%`,background:"#FF6B35",borderRadius:2}})})]})]}),(0,b.jsxs)("div",{style:{marginBottom:16},children:[(0,b.jsx)("div",{style:{fontSize:10,fontWeight:700,color:"var(--sd-gold, #FFD700)",letterSpacing:1,marginBottom:6,textTransform:"uppercase"},children:"Why This Matters"}),(0,b.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:4,fontSize:11,color:"var(--sd-fg-2, #ccc)"},children:(function(a,b,c,d=[]){let e=[],f=(a.headline||"").toLowerCase(),g=(a.role||"").toLowerCase(),h=(a.company||"").toLowerCase(),i=b.sectors.map(a=>a.toLowerCase());g.match(/ceo|chief|founder|president|chairman/i)?e.push({icon:"👑",text:`${a.role}: C-suite executive, highest leverage contact`,color:"var(--sd-gold, #FFD700)"}):g.match(/vp|vice president|svp|evp|managing director/i)?e.push({icon:"⚡",text:`${a.role}: VP-level, strong decision-making authority`,color:"var(--sd-gold, #FFD700)"}):g.match(/director|head of|senior director/i)?e.push({icon:"🎯",text:`${a.role}: Senior leadership, controls team/budget`,color:"var(--sd-orange, #FF6B35)"}):g.match(/manager|lead|principal/i)&&e.push({icon:"📊",text:`${a.role}: Mid-senior, operational influence`,color:"var(--sd-blue, #3498DB)"});let{now:j,before:k}=(0,bB.topCompanies)(a);j&&e.push({icon:"🏢",text:`At ${j.name} (${j.score}/10): top-tier company network access`,color:"var(--sd-purple, #9B59B6)"}),k&&e.push({icon:"📜",text:`Former ${k.name} (${k.score}/10): carries network from previous role`,color:"var(--sd-fg-3, #95A5A6)"});let l=i.filter(a=>f.includes(a)||h.includes(a));l.length>0&&e.push({icon:"🔗",text:`Shared sector: ${l.join(", ")}: direct industry relevance to you`,color:"#2ECC71"});let m=c.filter(b=>b.source_connection_id===a.id).length;if(m>0){let b=c.filter(b=>b.source_connection_id===a.id&&"S"===b.tier).length;e.push({icon:"🌐",text:`Gateway to ${m} degree-2 connections${b>0?` (${b} S-tier)`:""}`,color:"var(--sd-orange, #FF6B35)"})}if(a.is_catalyst&&e.push({icon:"⚡",text:"Catalyst: network power exceeds personal tier, high stepping-stone value",color:"var(--sd-green, #00ff88)"}),2===a.degree&&d.length>0){let a=d.filter(a=>a.bridge);if(1===d.length)e.push(a.length?{icon:"🤝",text:`Reachable via ${a[0].bridge.name} (${a[0].bridge.tier}-tier)`,color:"var(--sd-blue, #3498DB)"}:{icon:"🤝",text:"Reachable through a connection we can’t name",color:"var(--sd-fg-3, #888)"});else{let b=a.slice(0,2).map(a=>`${String(a.bridge.name||"").trim().split(/\s+/)[0]} (${a.bridge.tier})`),c=d.length-b.length,f=0===b.length?"connections we can’t name":c>0?`${b.join(", ")} and ${c} more`:b.join(" and ");e.push({icon:"🤝",text:`Reachable ${d.length} ways, via ${f}`,color:"var(--sd-blue, #3498DB)"})}}return 0===e.length&&e.push({icon:"📌",text:`${a.tier}-tier connection with ${parseFloat(a.power_score).toFixed(1)} power score`,color:"var(--sd-fg-3, #888)"}),e.slice(0,5)})(a,F||{name:"User",sectors:[],goals:[]},i,q).map((a,c)=>(0,b.jsxs)("div",{style:{display:"flex",gap:6,alignItems:"flex-start"},children:[(0,b.jsx)("span",{style:{color:a.color||"#888",fontSize:13,lineHeight:1},children:a.icon}),(0,b.jsx)("span",{children:a.text})]},c))})]}),a.company&&(0,b.jsxs)("div",{style:{marginBottom:8},children:[(0,b.jsx)("div",{style:{color:"var(--sd-fg-4, #666)",fontSize:10},children:"Company"}),(0,b.jsx)("div",{style:{fontWeight:600,fontSize:12},children:a.company})]}),a.role&&(0,b.jsxs)("div",{style:{marginBottom:12},children:[(0,b.jsx)("div",{style:{color:"var(--sd-fg-4, #666)",fontSize:10},children:"Role"}),(0,b.jsx)("div",{style:{fontSize:12},children:a.role})]}),l&&m.length>0&&(c=m.filter(a=>"S"===a.tier),d=m.filter(a=>"A"===a.tier),g=[...m].sort((a,b)=>(parseFloat(b.power_score)||0)-(parseFloat(a.power_score)||0)).slice(0,8),(0,b.jsxs)("div",{style:{marginBottom:16},children:[(0,b.jsxs)("div",{style:{fontSize:10,fontWeight:700,color:"var(--sd-orange, #FF6B35)",letterSpacing:1,marginBottom:8,textTransform:"uppercase"},children:["Cluster Overview · ",m.length," connections"]}),(0,b.jsxs)("div",{style:{display:"flex",gap:6,marginBottom:8,fontSize:10},children:[c.length>0&&(0,b.jsxs)("span",{style:{color:"var(--sd-gold, #FFD700)",fontWeight:600},children:[c.length," S-tier"]}),d.length>0&&(0,b.jsxs)("span",{style:{color:"var(--sd-purple, #9B59B6)",fontWeight:600},children:[d.length," A-tier"]})]}),(0,b.jsxs)("a",{href:`/queue?bridge=${a.id}&groupBy=bridge`,style:{display:"block",textAlign:"center",padding:"8px 12px",marginBottom:10,background:"linear-gradient(135deg, #FF6B35, #FFD700)",color:"#000",borderRadius:6,textDecoration:"none",fontWeight:700,fontSize:11},children:["Outlink Bridge → Add ",m.filter(a=>"S"===a.tier||"A"===a.tier||"B"===a.tier).length," People"]}),(0,b.jsx)("div",{style:{fontSize:10,color:"var(--sd-fg-3, #888)",marginBottom:8},children:"Most valuable in this cluster:"}),(0,b.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:3},children:g.map(a=>(0,b.jsxs)("div",{onClick:()=>o&&o(a),style:{display:"flex",alignItems:"center",gap:6,padding:"4px 6px",borderRadius:4,cursor:"pointer",borderLeft:`2px solid ${e[a.tier]||"#555"}`,background:"rgba(var(--sd-ink, 255, 255, 255), 0.03)"},onMouseEnter:a=>a.currentTarget.style.background="rgba(var(--sd-ink, 255, 255, 255), 0.08)",onMouseLeave:a=>a.currentTarget.style.background="rgba(var(--sd-ink, 255, 255, 255), 0.03)",children:[(0,I.localPhoto)(a.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(a.profile_image_url),alt:"",style:{width:22,height:22,borderRadius:"50%",objectFit:"cover",flexShrink:0,border:`1px solid ${e[a.tier]||"#555"}`},onError:a=>{a.target.style.display="none",a.target.nextSibling.style.display="flex"}}):null,(0,b.jsx)("div",{style:{width:22,height:22,borderRadius:"50%",flexShrink:0,fontSize:9,fontWeight:700,background:e[a.tier]||"#555",color:"S"===a.tier?"#000":"var(--sd-fg-1, #fff)",display:(0,I.localPhoto)(a.profile_image_url)?"none":"flex",alignItems:"center",justifyContent:"center"},children:a.name?.charAt(0)}),(0,b.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,b.jsx)("div",{style:{fontSize:10,fontWeight:600,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.name}),(0,b.jsx)("div",{style:{fontSize:8,color:"var(--sd-fg-4, #666)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.headline?.substring(0,40)})]}),(0,b.jsx)("span",{style:{fontSize:9,color:e[a.tier],fontWeight:600,flexShrink:0},children:parseFloat(a.power_score).toFixed(1)})]},a.id))})]})),l&&m.length>0&&(0,b.jsxs)("div",{style:{marginTop:16},children:[(0,b.jsxs)("div",{style:{fontSize:12,fontWeight:600,color:"var(--sd-orange, #FF6B35)",marginBottom:8},children:["Gateway to ",m.length," degree-2 connections:"]}),m.sort((a,b)=>(parseFloat(b.power_score)||0)-(parseFloat(a.power_score)||0)).slice(0,10).map(a=>(0,b.jsxs)("div",{style:{padding:"6px 8px",background:"rgba(255,107,53,0.08)",borderRadius:6,borderLeft:"3px solid #FF6B35",marginBottom:4,fontSize:12},children:[(0,b.jsx)("div",{style:{fontWeight:600},children:a.name}),(0,b.jsxs)("div",{style:{color:"var(--sd-fg-3, #888)",fontSize:11},children:[a.role,a.company?` @ ${a.company}`:""]}),(0,b.jsxs)("div",{style:{color:"var(--sd-orange, #FF6B35)",fontSize:10},children:["Score: ",parseFloat(a.power_score).toFixed(1)]})]},a.id))]}),!C&&l&&m.length>0&&p&&(0,b.jsxs)("button",{onClick:()=>{p("degrees")},style:{width:"100%",padding:"12px",borderRadius:8,border:"none",cursor:"pointer",background:"linear-gradient(135deg, #FF6B35, #FFD700)",color:"#000",fontWeight:700,fontSize:13,marginTop:12},children:["View Bridge → ",m.length," connections"]}),(2===a.degree||a.source_connection_id)&&1!==a.degree&&"unlocked"!==a.unlock_status&&(j=U(a),(0,b.jsxs)("div",{style:{background:"rgba(255,215,0,0.06)",border:`1px ${j?"dashed":"solid"} rgba(255,215,0,${j?.45:.25})`,borderRadius:10,padding:16,marginTop:16,textAlign:"center"},children:[(0,b.jsx)("div",{style:{fontSize:10,color:"var(--sd-gold, #FFD700)",fontWeight:700,letterSpacing:1,marginBottom:6},children:j?"REQUEST SENT":"LOCKED PATH"}),(0,b.jsx)("div",{style:{fontSize:13,color:"var(--sd-fg-2, #ccc)",marginBottom:12},children:j?`Waiting for ${a.name} to accept. The next scan of your own connections notices when they do.`:`Connect with ${a.name} to unlock their network and extend your six degrees.`}),(0,b.jsx)("div",{style:{width:"100%",height:60,background:"rgba(var(--sd-ink, 255, 255, 255), 0.03)",borderRadius:8,border:"1px dashed rgba(var(--sd-ink, 255, 255, 255), 0.1)",display:"flex",alignItems:"center",justifyContent:"center",fontSize:11,color:"var(--sd-fg-5, #444)",marginBottom:12},children:j?"[ Cluster Pending... ]":"[ Hidden Network ]"}),j?(0,b.jsx)("button",{onClick:()=>{(0,h.undoRequest)(a).catch(()=>{})},style:{background:"none",border:"none",color:"var(--sd-fg-3, #888)",fontSize:11,fontWeight:600,cursor:"pointer"},children:"Didn't send it? Undo"}):(0,b.jsx)("a",{href:a.profile_url,target:"_blank",rel:"noopener noreferrer",style:{display:"block",padding:"10px 16px",background:"linear-gradient(135deg, #FFD700, #FF6B35)",color:"#000",borderRadius:8,textDecoration:"none",fontWeight:700,fontSize:13},onClick:()=>{(0,h.markRequested)(a,{bridgeId:a.source_connection_id}).catch(()=>{})},children:"Connect to Unlock Path"})]})),(1===a.degree||"accepted"===a.outreach_status)&&(D?(0,b.jsx)(b5,{selected:a,degree2:i},a.id):(0,b.jsx)(b6,{csvSource:u,style:{marginTop:16}})),a.profile_url&&(0,b.jsx)("a",{href:a.profile_url,target:"_blank",rel:"noopener noreferrer",style:{display:"block",textAlign:"center",padding:10,marginTop:16,background:"#0077B5",color:"#fff",borderRadius:8,textDecoration:"none",fontWeight:600,fontSize:13},children:"View LinkedIn Profile"})]})}if(C&&z)return(0,b.jsx)(b1,{collapsed:k,onToggle:n,children:(0,b.jsx)(b_,{person:z,connections:f,degree2:i,scanNotes:t,tierColors:e,onSelect:o,onToggle:n,canScan:D},z.id)});if(C){let a,c,g,h;return(0,b.jsxs)(b1,{collapsed:k,onToggle:n,children:[(0,b.jsxs)("button",{onClick:n,style:{display:"flex",alignItems:"center",gap:6,background:"none",border:"none",color:"var(--sd-fg-3, #888)",fontSize:12,cursor:"pointer",padding:"0 0 10px",fontWeight:600},children:[(0,b.jsx)("span",{style:{fontSize:16},children:"←"})," Close"]}),(0,b.jsx)("h3",{style:{fontSize:16,fontWeight:700,marginTop:0,color:"var(--sd-orange, #FF6B35)"},children:"Degrees"}),(0,b.jsx)("p",{style:{fontSize:12,color:"var(--sd-fg-3, #888)",marginBottom:12},children:"Your bridge connections and who they unlock."}),D?(0,b.jsx)(ca,{connections:f,degree2:i,scanNotes:t,tierColors:e}):(0,b.jsx)(b6,{csvSource:u,style:{marginBottom:16}}),(0,b.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:8,marginBottom:12},children:[(0,b.jsx)(b2,{label:"Degree-2 Found",value:i.length}),(0,b.jsx)(b2,{label:"D2 S-Tier",value:d?.d2Tiers?.S||0}),(0,b.jsx)(b2,{label:"D2 A-Tier",value:d?.d2Tiers?.A||0}),(0,b.jsx)(b2,{label:"Bridges Used",value:Object.keys(J).length})]}),(0,b.jsxs)("div",{style:{position:"relative",marginBottom:16},children:[(0,b.jsx)("input",{type:"text",placeholder:"Search bridges or d2...",value:G,onChange:a=>H(a.target.value),style:{width:"100%",padding:"8px 12px",borderRadius:8,fontSize:12,border:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.1)",background:"rgba(var(--sd-ink, 255, 255, 255), 0.05)",color:"var(--sd-fg-1, #fff)",outline:"none",boxSizing:"border-box"}}),G.length>=2&&(a=G.toLowerCase(),c=f.filter(b=>i.some(a=>a.source_connection_id===b.id)&&b.name.toLowerCase().includes(a)).slice(0,5),g=i.filter(b=>b.name?.toLowerCase().includes(a)).slice(0,5),0===(h=[...c.map(a=>({...a,_matchType:"bridge"})),...g.map(a=>({...a,_matchType:"d2"}))]).length?null:(0,b.jsx)("div",{style:{position:"absolute",top:"100%",left:0,right:0,zIndex:50,background:"color-mix(in srgb, var(--sd-bg) 97%, transparent)",border:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.1)",borderRadius:8,overflow:"hidden",maxHeight:200,overflowY:"auto",boxShadow:"0 8px 24px rgba(0,0,0,0.5)"},children:h.map(a=>(0,b.jsxs)("div",{onClick:()=>{o(a),H(""),q&&"bridge"===a._matchType&&q(a.id)},style:{padding:"8px 12px",cursor:"pointer",display:"flex",alignItems:"center",gap:8,borderBottom:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.05)"},onMouseEnter:a=>a.currentTarget.style.background="rgba(var(--sd-ink, 255, 255, 255), 0.06)",onMouseLeave:a=>a.currentTarget.style.background="transparent",children:[(0,I.localPhoto)(a.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(a.profile_image_url),alt:"",style:{width:24,height:24,borderRadius:"50%",objectFit:"cover"}}):(0,b.jsx)("div",{style:{width:24,height:24,borderRadius:"50%",background:e[a.tier]||"#555",fontSize:9,fontWeight:700,display:"flex",alignItems:"center",justifyContent:"center",color:"#fff"},children:a.name?.charAt(0)}),(0,b.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,b.jsx)("div",{style:{fontSize:11,fontWeight:600,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.name}),(0,b.jsx)("div",{style:{fontSize:8,color:"var(--sd-fg-4, #666)"},children:"bridge"===a._matchType?"Bridge":"Degree-2"})]}),(0,b.jsx)("span",{style:{fontSize:9,fontWeight:700,color:e[a.tier]},children:a.tier})]},a.id))}))]}),"pending"===l&&m.length>0&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("h4",{style:{fontSize:13,fontWeight:600,color:"var(--sd-orange, #FF6B35)",marginBottom:8},children:["⏳ Pending Requests (",m.length,")"]}),(0,b.jsx)("p",{style:{fontSize:10,color:"var(--sd-fg-4, #666)",marginBottom:10,lineHeight:1.4},children:"Friend requests you've sent. When accepted, their cluster unlocks for bridging."}),(0,b.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:2},children:m.map(a=>{let c=2===a.degree?f.find(b=>b.id===a.source_connection_id):null;return(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8,padding:"8px 10px",background:"rgba(255,107,53,0.06)",borderRadius:8,border:"1px solid rgba(255,107,53,0.12)"},children:[(0,I.localPhoto)(a.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(a.profile_image_url),alt:"",style:{width:32,height:32,borderRadius:"50%",objectFit:"cover",flexShrink:0,border:`2px solid ${e[a.tier]||"#555"}`},onError:a=>{a.target.style.display="none"}}):(0,b.jsx)("div",{style:{width:32,height:32,borderRadius:"50%",flexShrink:0,fontSize:12,fontWeight:700,background:e[a.tier]||"#555",color:"S"===a.tier?"#000":"var(--sd-fg-1, #fff)",display:"flex",alignItems:"center",justifyContent:"center"},children:a.name?.charAt(0)}),(0,b.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,b.jsx)("div",{style:{fontSize:11,fontWeight:600,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.name}),(0,b.jsx)("div",{style:{fontSize:8,color:"var(--sd-fg-3, #888)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.headline?.substring(0,40)}),c&&(0,b.jsxs)("div",{style:{fontSize:8,color:"var(--sd-orange, #FF6B35)",marginTop:1},children:["via ",c.name?.split(" ")[0]]})]}),(0,b.jsxs)("div",{style:{textAlign:"center",flexShrink:0},children:[(0,b.jsx)("div",{style:{fontSize:9,fontWeight:800,color:e[a.tier]||"#888"},children:a.tier}),(0,b.jsx)("div",{style:{fontSize:8,color:"var(--sd-fg-4, #666)"},children:parseFloat(a.power_score||0).toFixed(1)})]}),(0,b.jsx)("button",{onClick:()=>s&&s(a),title:"Remove from pending",style:{background:"none",border:"none",color:"var(--sd-fg-5, #555)",cursor:"pointer",fontSize:12,padding:2,flexShrink:0},children:"✕"})]},a.id)})})]}),"pending"!==l&&(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("h4",{style:{fontSize:13,fontWeight:600,color:"var(--sd-orange, #FF6B35)",marginBottom:8},children:"Most Valuable Clusters"}),(0,b.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:6},children:Object.entries(J).map(([a,b])=>{let c=f.find(b=>b.id===a);if(!c)return null;let d=b.length;if(0===d)return null;let e=b.filter(a=>"S"===a.tier),g=b.filter(a=>"A"===a.tier),h=b.filter(a=>"B"===a.tier),i=e.length,j=g.length,k=h.length,l=i>0?e.reduce((a,b)=>a+(parseFloat(b.power_score)||0),0)/i:0,m=j>0?g.reduce((a,b)=>a+(parseFloat(b.power_score)||0),0)/j:0,n=h.filter(a=>(parseFloat(a.power_score)||0)>=5).length,o=(i+j)/d,p=l/7*i*15+m/5.5*j*6+3*n+25*o+2*Math.log2(d+1)+10*!!c.is_catalyst,q=b.reduce((a,b)=>a+(parseFloat(b.power_score)||0),0)/d;return{bridge:c,members:d,sCount:i,aCount:j,bCount:k,risingCount:n,sAvgPower:l,avgPower:q,elitePct:o,clusterValue:p,sTier:e,aTier:g,topMembers:[...b].sort((a,b)=>(parseFloat(b.power_score)||0)-(parseFloat(a.power_score)||0))}}).filter(Boolean).sort((a,b)=>b.clusterValue-a.clusterValue).map((a,c)=>(0,b.jsx)(b9,{cs:a,rank:c+1,tierColors:e,onSelect:o},a.bridge.id))})]})]})}let V=[...f||[]].sort((a,b)=>(parseFloat(b.power_score)||0)-(parseFloat(a.power_score)||0)),W=G.length>=2?V.filter(a=>a.name.toLowerCase().includes(G.toLowerCase())).slice(0,8):[];return(0,b.jsxs)(b1,{collapsed:k,onToggle:n,children:[(0,b.jsxs)("button",{onClick:n,style:{display:"flex",alignItems:"center",gap:6,background:"rgba(var(--sd-ink, 255, 255, 255), 0.06)",border:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.1)",borderRadius:6,color:"var(--sd-fg-3, #aaa)",fontSize:12,cursor:"pointer",padding:"6px 12px",marginBottom:12,fontWeight:600},children:[(0,b.jsx)("span",{style:{fontSize:16},children:"←"})," Close"]}),(0,b.jsx)("h3",{style:{fontSize:16,fontWeight:700,marginTop:0},children:"Network Circle"}),d&&(0,b.jsxs)("div",{style:{display:"grid",gridTemplateColumns:"1fr 1fr",gap:8,marginBottom:16},children:[(0,b.jsx)(b2,{label:"Total Connections",value:d.total}),(0,b.jsx)(b2,{label:"S-Tier",value:d.tiers?.S||0}),(0,b.jsx)(b2,{label:"A-Tier",value:d.tiers?.A||0}),(0,b.jsx)(b2,{label:"B-Tier",value:d.tiers?.B||0})]}),(0,b.jsxs)("div",{style:{position:"relative",marginBottom:12},children:[(0,b.jsx)("input",{type:"text",placeholder:"Search connections...",value:G,onChange:a=>H(a.target.value),style:{width:"100%",padding:"8px 12px",borderRadius:8,boxSizing:"border-box",border:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.1)",background:"rgba(var(--sd-shade, 0, 0, 0), 0.3)",color:"var(--sd-fg-1, #fff)",fontSize:12,outline:"none"}}),W.length>0&&(0,b.jsx)("div",{style:{position:"absolute",top:"100%",left:0,right:0,zIndex:10,background:"color-mix(in srgb, var(--sd-bg) 97%, transparent)",border:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.1)",borderRadius:8,marginTop:4,overflow:"hidden",boxShadow:"0 8px 24px rgba(0,0,0,0.5)"},children:W.map(a=>(0,b.jsxs)("div",{onClick:()=>{o&&o(a),q&&q(a.id),H("")},style:{display:"flex",alignItems:"center",gap:8,padding:"8px 10px",cursor:"pointer",borderBottom:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.04)"},onMouseEnter:a=>a.currentTarget.style.background="rgba(var(--sd-ink, 255, 255, 255), 0.08)",onMouseLeave:a=>a.currentTarget.style.background="transparent",children:[(0,I.localPhoto)(a.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(a.profile_image_url),alt:"",style:{width:24,height:24,borderRadius:"50%",objectFit:"cover",flexShrink:0,border:`1.5px solid ${e[a.tier]||"#555"}`},onError:a=>{a.target.style.display="none"}}):(0,b.jsx)("div",{style:{width:24,height:24,borderRadius:"50%",flexShrink:0,fontSize:10,fontWeight:700,background:e[a.tier]||"#555",color:"S"===a.tier?"#000":"var(--sd-fg-1, #fff)",display:"flex",alignItems:"center",justifyContent:"center"},children:a.name?.charAt(0)}),(0,b.jsxs)("div",{style:{flex:1,minWidth:0},children:[(0,b.jsx)("div",{style:{fontSize:12,fontWeight:600,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.name}),(0,b.jsx)("div",{style:{fontSize:9,color:"var(--sd-fg-4, #666)"},children:a.headline?.substring(0,35)})]}),(0,b.jsx)("span",{style:{fontSize:10,color:e[a.tier],fontWeight:700},children:a.tier})]},a.id))})]}),(0,b.jsxs)("h4",{style:{fontSize:13,fontWeight:600,color:"var(--sd-gold, #FFD700)",marginBottom:8},children:["Power Rankings (",V.length,")"]}),(0,b.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:3},children:(A={},B={},V.forEach(a=>{B[a.tier]=(B[a.tier]||0)+1}),V.map((a,c)=>{let d=c>0?V[c-1].tier:null,f=a.tier!==d;f&&(A[a.tier]=0),A[a.tier]=(A[a.tier]||0)+1;let g=A[a.tier];return(0,b.jsxs)("div",{children:[f&&(0,b.jsxs)("div",{style:{padding:"8px 10px",marginTop:8*(c>0),marginBottom:4,background:`${e[a.tier]||"#555"}15`,borderLeft:`3px solid ${e[a.tier]||"#555"}`,borderRadius:4,fontSize:11,fontWeight:700,color:e[a.tier]||"#888",display:"flex",justifyContent:"space-between"},children:[(0,b.jsx)("span",{children:{S:"S-Tier · Elite",A:"A-Tier · High Value",B:"B-Tier · Notable",C:"C-Tier · Standard",D:"D-Tier · Entry"}[a.tier]||a.tier}),(0,b.jsx)("span",{style:{fontWeight:400,opacity:.7},children:B[a.tier]||0})]}),(0,b.jsxs)("div",{onClick:()=>{o&&o(a),q&&q(a.id)},style:{padding:"6px 8px",background:"rgba(var(--sd-ink, 255, 255, 255), 0.03)",borderRadius:6,borderLeft:`3px solid ${e[a.tier]||"#555"}`,cursor:"pointer",display:"flex",alignItems:"center",gap:8,transition:"background 0.15s"},onMouseEnter:a=>a.currentTarget.style.background="rgba(var(--sd-ink, 255, 255, 255), 0.1)",onMouseLeave:a=>a.currentTarget.style.background="rgba(var(--sd-ink, 255, 255, 255), 0.03)",children:[(0,b.jsxs)("span",{style:{color:"var(--sd-fg-5, #555)",fontSize:10,fontWeight:600,minWidth:22,textAlign:"right"},children:["#",g]}),(0,I.localPhoto)(a.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(a.profile_image_url),alt:"",style:{width:28,height:28,borderRadius:"50%",objectFit:"cover",flexShrink:0,border:`1.5px solid ${e[a.tier]||"#555"}`},onError:a=>{a.target.style.display="none",a.target.nextSibling.style.display="flex"}}):null,(0,b.jsx)("div",{style:{width:28,height:28,borderRadius:"50%",flexShrink:0,background:e[a.tier]||"#555",display:(0,I.localPhoto)(a.profile_image_url)?"none":"flex",alignItems:"center",justifyContent:"center",fontSize:12,fontWeight:700,color:"S"===a.tier?"#000":"var(--sd-fg-1, #fff)"},children:a.name?.charAt(0)}),(0,b.jsxs)("div",{style:{minWidth:0,flex:1},children:[(0,b.jsx)("div",{style:{fontWeight:600,fontSize:11,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.name}),(0,b.jsx)("div",{style:{fontSize:9,color:"var(--sd-fg-4, #666)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.headline?.substring(0,45)})]}),(0,b.jsxs)("div",{style:{textAlign:"right",flexShrink:0},children:[(0,b.jsx)("div",{style:{fontSize:10,fontWeight:700,color:e[a.tier]||"#555"},children:parseFloat(a.power_score).toFixed(1)}),(0,b.jsx)("div",{style:{fontSize:8,color:"var(--sd-fg-5, #555)"},children:a.tier})]})]})]},a.id)}))})]})}function b1({children:a,collapsed:d,onToggle:e}){let[f,g]=(0,c.useState)(!1);return((0,c.useEffect)(()=>{let a=()=>g(window.innerWidth<768);return a(),window.addEventListener("resize",a),()=>window.removeEventListener("resize",a)},[]),d)?(0,b.jsxs)("div",{onClick:e,style:{position:"fixed",right:16,top:140,zIndex:30,cursor:"pointer",display:"flex",alignItems:"center",flexDirection:"row-reverse",gap:0,height:36,borderRadius:18,background:"rgba(255,215,0,0.15)",border:"2px solid rgba(255,215,0,0.5)",color:"var(--sd-gold, #FFD700)",fontWeight:700,boxShadow:"0 0 12px rgba(255,215,0,0.3)",backdropFilter:"blur(8px)",WebkitBackdropFilter:"blur(8px)",overflow:"hidden",transition:"width 0.25s ease",width:36,padding:"0 10px"},onMouseEnter:a=>{a.currentTarget.style.width="120px"},onMouseLeave:a=>{a.currentTarget.style.width="36px"},children:[(0,b.jsx)("span",{style:{fontSize:18,flexShrink:0,width:16,textAlign:"center"},children:"‹"}),(0,b.jsx)("span",{style:{fontSize:11,fontWeight:600,whiteSpace:"nowrap",marginRight:6,opacity:.9},children:"Details"})]}):(0,b.jsxs)("div",{style:f?{position:"fixed",top:0,right:0,bottom:0,zIndex:100,width:"100vw",pointerEvents:"auto"}:{flexShrink:0,height:"100%"},children:[f&&(0,b.jsx)("div",{onClick:e,style:{position:"absolute",inset:0,background:"rgba(var(--sd-shade, 0, 0, 0), 0.5)"}}),(0,b.jsx)("div",{"data-glass-panel":f?void 0:"side",style:{width:f?"80vw":320,minWidth:320*!f,maxWidth:f?300:320,height:"100%",borderLeft:"1px solid rgba(255,215,0,0.12)",padding:f?"12px 10px":"16px 16px",overflowY:"auto",overflowX:"hidden",background:f?"var(--sd-surface, rgba(15,12,5,0.98))":"var(--sd-panel)",fontSize:13,backdropFilter:"var(--sd-panel-blur)",WebkitBackdropFilter:"var(--sd-panel-blur)",boxShadow:"inset 0 0 60px rgba(255,215,0,0.03), -4px 0 24px rgba(0,0,0,0.3)",marginLeft:f?"auto":0},children:a})]})}function b2({label:a,value:c}){return(0,b.jsxs)("div",{style:{background:"rgba(var(--sd-ink, 255, 255, 255), 0.05)",padding:"10px 12px",borderRadius:8},children:[(0,b.jsx)("div",{style:{fontSize:10,color:"var(--sd-fg-3, #888)",marginBottom:2},children:a}),(0,b.jsx)("div",{style:{fontSize:18,fontWeight:700},children:c})]})}function b3(){return(0,b.jsx)("span",{style:{color:"var(--sd-fg-5, #555)",fontSize:16},children:"→"})}function b4({routes:a,selected:d,tierColors:e,onSelect:f}){let[g,h]=(0,c.useState)(!1),i=a.length,j=g?a:a.slice(0,4),k={display:"flex",alignItems:"center",gap:6,fontSize:13,flexWrap:"wrap"};return(0,b.jsxs)("div",{style:{background:"rgba(255,107,53,0.1)",border:"1px solid rgba(255,107,53,0.3)",borderRadius:8,padding:12,marginBottom:16},children:[(0,b.jsxs)("div",{style:{fontSize:10,color:"var(--sd-orange, #FF6B35)",fontWeight:600,marginBottom:8},children:["PATH TO THIS PERSON",i>1?` \xb7 ${i} WAYS IN`:""]}),(0,b.jsx)("div",{style:{display:"flex",flexDirection:"column",gap:10},children:j.map((a,c)=>{if(!a.bridge)return(0,b.jsxs)("div",{title:"This route came from a scanned list whose connection record doesn’t match anyone in your 1st-degree list, so who introduces you can’t be named. The person is real, and still reachable.",style:{...k,color:"var(--sd-fg-3, #888)",fontStyle:"italic"},children:[(0,b.jsx)("span",{style:{fontWeight:700,fontStyle:"normal",color:"var(--sd-fg-1, #fff)"},children:"You"}),(0,b.jsx)(b3,{}),(0,b.jsx)("span",{children:"a connection we can’t name"}),(0,b.jsx)(b3,{}),(0,b.jsx)("span",{children:"them"})]},`unnamed-${a.id}`);let g=a.bridge,h=e[g.tier]||"#ccc",j=[[g.role,g.company].filter(Boolean).join(" @ "),g.tier?`${g.tier}-tier`:""].filter(Boolean).join(" · ");return(0,b.jsxs)("div",{children:[(0,b.jsxs)("div",{style:k,children:[(0,b.jsx)("span",{style:{fontWeight:700},children:"You"}),(0,b.jsx)(b3,{}),(0,b.jsxs)("button",{onClick:()=>f&&f(g),title:`Open ${g.name}`,style:{display:"inline-flex",alignItems:"center",gap:6,padding:0,border:"none",background:"none",cursor:"pointer",color:h,fontWeight:600,fontSize:13,textAlign:"left"},children:[(0,b.jsx)(a_,{person:g,size:18,tierColors:e}),g.name]}),(0,b.jsx)(b3,{}),(0,b.jsx)("span",{style:{color:"var(--sd-orange, #FF6B35)",fontWeight:600},children:d.name}),0===c&&i>1&&(0,b.jsx)("span",{style:{fontSize:9,fontWeight:700,color:"var(--sd-orange, #FF6B35)",padding:"1px 6px",borderRadius:8,background:"rgba(255,107,53,0.15)",whiteSpace:"nowrap"},children:"top-scored bridge"})]}),j&&(0,b.jsx)("div",{style:{fontSize:11,color:"var(--sd-fg-3, #888)",marginTop:3},children:j})]},a.id)})}),i>4&&(0,b.jsx)("button",{onClick:()=>h(a=>!a),style:{marginTop:10,padding:"4px 10px",borderRadius:6,cursor:"pointer",fontSize:11,fontWeight:600,border:"1px solid rgba(255,107,53,0.35)",background:"transparent",color:"var(--sd-orange, #FF6B35)"},children:g?"Show fewer":`Show all ${i}`})]})}function b5({selected:a,degree2:d}){let g=(0,f.default)(),[h,i]=(0,c.useState)(!1),[j,k]=(0,c.useState)(null),[l,m]=(0,c.useState)(void 0),n=d?.filter(b=>b.source_connection_id===a.id).length||0,o=n>0,p=g.running&&(0,e.scansCircleOf)(g,a),q=g.running&&!p?(0,e.busyReason)(g):null,r=g.finished.find(b=>(0,e.scansCircleOf)(b,a)),s=g.finished[0]?.startedAt??null;async function t(b){k(null),i(!0);let c=(0,e.notReadyMessage)(await (0,e.scraperStatus)().catch(()=>null));if(i(!1),c)return void k({text:c,offline:!0});try{await (0,e.beginScrape)(b,"resume"===b?{id:a.id}:{name:a.name,id:a.id})}catch(a){k({text:a.message||"Could not start the scan."})}}(0,c.useEffect)(()=>{let b=!0;return(0,e.resumePoint)(a.id).then(a=>{b&&m(a)},()=>{b&&m(null)}),()=>{b=!1}},[a.id,s]);let u=o||!!l,v=o?"#00ff88":"#9B59B6",w=!!q||h,x=a=>({flex:1,padding:"11px 8px",borderRadius:8,fontWeight:700,fontSize:a?13:12,cursor:w?"not-allowed":"pointer",opacity:w?.45:1,...a?{border:"none",background:"linear-gradient(135deg, #9B59B6, #3498DB)",color:"#fff"}:{border:`1px solid ${v}55`,background:`${v}14`,color:v}});return(0,b.jsxs)("div",{id:"scan-box",style:{background:o?"rgba(0,255,136,0.06)":"rgba(155,89,182,0.08)",border:`1px solid ${o?"rgba(0,255,136,0.2)":"rgba(155,89,182,0.3)"}`,borderRadius:10,padding:16,marginTop:16},children:[(0,b.jsx)("div",{style:{fontSize:10,color:v,fontWeight:700,letterSpacing:1,marginBottom:4,textAlign:"center"},children:o?"CLUSTER ACTIVE":"CREATE CLUSTER"}),(0,b.jsx)("div",{style:{fontSize:12,color:"var(--sd-fg-3, #aaa)",marginBottom:12,textAlign:"center"},children:o?`${n} connections mapped in Six Degrees`:(0,b.jsxs)(b.Fragment,{children:["Scan ",a.name,"'s connections to map their network"]})}),p?(0,b.jsx)(b7,{title:g.pending?"Starting…":`Scanning ${a.name}’s circle…`,log:g.log}):j?.offline?(0,b.jsxs)(b.Fragment,{children:[(0,b.jsx)("div",{style:{padding:"10px",borderRadius:8,background:"rgba(255,80,80,0.1)",border:"1px solid rgba(255,80,80,0.3)",color:"var(--sd-red, #ff5050)",fontSize:12,marginBottom:8,textAlign:"center"},children:"Scanner offline"}),(0,b.jsxs)("div",{style:{fontSize:10,color:"var(--sd-fg-3, #888)",textAlign:"center",marginBottom:8},children:[j.text," Open the ",(0,b.jsx)("strong",{children:"Scan"})," page to finish setting the scanner up."]}),(0,b.jsx)("button",{onClick:()=>k(null),style:{width:"100%",padding:"10px",borderRadius:8,border:"none",cursor:"pointer",background:"rgba(var(--sd-ink, 255, 255, 255), 0.1)",color:"var(--sd-fg-3, #aaa)",fontWeight:600,fontSize:12},children:"Retry"})]}):(0,b.jsxs)(b.Fragment,{children:[r&&(0,b.jsx)(b8,{job:r}),(0,b.jsxs)("div",{style:{display:"flex",gap:8},children:[l&&(0,b.jsxs)("button",{onClick:()=>t("resume"),disabled:w,style:x(!0),children:["Resume from page ",l.nextPage]}),(0,b.jsx)("button",{onClick:()=>t("bridge"),disabled:w,style:x(!l&&!o),children:u?"Rescan from the start":(0,b.jsxs)(b.Fragment,{children:["Scan ",a.name,"'s Network"]})})]}),l&&(0,b.jsxs)("div",{style:{fontSize:10,color:"var(--sd-fg-3, #888)",marginTop:8,lineHeight:1.45,textAlign:"center"},children:["Read to page ",l.pagesRead," so far. Resume carries on from page ",l.nextPage,". LinkedIn lists their connections in its own order, not by date, so Rescan reads them all again from page 1."]}),o&&null===l&&(0,b.jsx)("div",{style:{fontSize:10,color:"var(--sd-fg-3, #888)",marginTop:8,lineHeight:1.45,textAlign:"center"},children:"Their whole list has been read. LinkedIn doesn't date other people's connections, so a rescan reads it all again to find anyone new."}),q&&(0,b.jsxs)("div",{style:{fontSize:10,color:"var(--sd-fg-2, #bbb)",marginTop:8,textAlign:"center"},children:[q,". One scan at a time: this one can start when it finishes."]}),j&&(0,b.jsx)("div",{style:{fontSize:11,color:"#ff8080",marginTop:8,textAlign:"center"},children:j.text})]})]})}function b6({csvSource:a,style:c}){return(0,b.jsx)("div",{style:{padding:"10px 12px",borderRadius:8,fontSize:11,color:"var(--sd-fg-3, #999)",lineHeight:1.5,textAlign:"center",background:"rgba(var(--sd-ink, 255, 255, 255), 0.03)",border:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.08)",...c},children:"sample"===a?"Scanning needs your own network: everyone in the sample is invented.":"Scanning needs your own network, not a CSV import. Remove the import (× at the top) and open Scan."})}function b7({title:a,log:c,small:d=!1}){return(0,b.jsxs)("div",{style:{padding:"10px",borderRadius:8,background:"rgba(155,89,182,0.1)",border:"1px solid rgba(155,89,182,0.3)"},children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,marginBottom:4},children:[(0,b.jsx)("style",{children:"@keyframes scanlogPulse { 0%, 100% { opacity: 1; transform: scale(1); } 50% { opacity: .35; transform: scale(.7); } } @media (prefers-reduced-motion: reduce) { .scanlog-dot { animation: none !important; } }"}),(0,b.jsx)("div",{className:"scanlog-dot",style:{width:d?6:8,height:d?6:8,borderRadius:"50%",background:"#9B59B6",animation:"scanlogPulse 1s ease-in-out infinite"}}),(0,b.jsx)("span",{style:{fontSize:11,fontWeight:600,color:"var(--sd-purple, #9B59B6)"},children:a})]}),(0,b.jsx)("div",{style:{fontFamily:"monospace",fontSize:d?9:10,color:"var(--sd-fg-3, #888)",maxHeight:d?80:100,overflow:"auto"},children:c.slice(-40).map((a,c)=>(0,b.jsx)("div",{children:a},c))})]})}function b8({job:a,who:c=null}){let d=0===a.exitCode,e=!d&&Array.isArray(a.failure)&&a.failure.length?a.failure[a.failure.length-1]:null;return(0,b.jsx)("div",{style:{padding:"8px 10px",borderRadius:8,marginBottom:10,fontSize:11,textAlign:"center",lineHeight:1.4,background:d?"rgba(0,255,136,0.08)":"rgba(255,80,80,0.08)",border:`1px solid ${d?"rgba(0,255,136,0.25)":"rgba(255,80,80,0.25)"}`,color:d?"var(--sd-green, #00ff88)":"#ff8080"},children:d?`${c?`${c}’s circle`:"The scan"} finished. What it found is on the map.`:`${c?`${c}’s scan`:"The scan"} stopped before the end${e?`: ${e}`:"."}`})}function b9({cs:a,rank:d,tierColors:e,onSelect:f}){let[g,h]=(0,c.useState)(!1);return(0,b.jsxs)("div",{style:{background:"rgba(var(--sd-ink, 255, 255, 255), 0.05)",borderRadius:6,borderLeft:`3px solid ${e[a.bridge.tier]||"#FF6B35"}`,overflow:"hidden"},children:[(0,b.jsxs)("div",{style:{padding:"10px 10px"},children:[(0,b.jsxs)("div",{onClick:()=>f&&f(a.bridge),style:{cursor:"pointer",display:"flex",justifyContent:"space-between",alignItems:"center",marginBottom:4},children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:8},children:[(0,I.localPhoto)(a.bridge.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(a.bridge.profile_image_url),alt:"",style:{width:28,height:28,borderRadius:"50%",objectFit:"cover",flexShrink:0,border:`1.5px solid ${e[a.bridge.tier]||"#555"}`},onError:a=>{a.target.style.display="none"}}):(0,b.jsx)("div",{style:{width:28,height:28,borderRadius:"50%",flexShrink:0,fontSize:11,fontWeight:700,background:e[a.bridge.tier]||"#555",color:"S"===a.bridge.tier?"#000":"var(--sd-fg-1, #fff)",display:"flex",alignItems:"center",justifyContent:"center"},children:a.bridge.name?.charAt(0)}),(0,b.jsxs)("div",{children:[(0,b.jsxs)("div",{style:{fontWeight:600,fontSize:12},children:[(0,b.jsxs)("span",{style:{color:"var(--sd-fg-5, #555)",marginRight:4},children:["#",d]}),a.bridge.name]}),(0,b.jsx)("div",{style:{fontSize:9,color:"var(--sd-fg-4, #666)"},children:a.bridge.headline?.substring(0,40)})]})]}),(0,b.jsx)("span",{style:{fontSize:10,fontWeight:700,padding:"2px 6px",borderRadius:4,background:e[a.bridge.tier],color:"S"===a.bridge.tier?"#000":"var(--sd-fg-1, #fff)"},children:a.bridge.tier})]}),(0,b.jsxs)("div",{style:{display:"flex",gap:6,marginTop:6,fontSize:10},children:[a.sCount>0&&(0,b.jsxs)("span",{style:{color:"var(--sd-gold, #FFD700)",fontWeight:600},children:[a.sCount,"S",a.sAvgPower>0?` (${a.sAvgPower.toFixed(1)})`:""]}),a.aCount>0&&(0,b.jsxs)("span",{style:{color:"var(--sd-purple, #9B59B6)",fontWeight:600},children:[a.aCount,"A"]}),a.bCount>0&&(0,b.jsxs)("span",{style:{color:"var(--sd-blue, #3498DB)"},children:[a.bCount,"B"]}),a.risingCount>0&&(0,b.jsxs)("span",{style:{color:"#2ECC71"},children:[a.risingCount," rising"]}),(0,b.jsxs)("span",{style:{color:"var(--sd-fg-5, #555)"},children:[a.members," total"]})]}),(0,b.jsxs)("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",marginTop:4,fontSize:10},children:[(0,b.jsxs)("span",{style:{color:"var(--sd-fg-4, #666)"},children:["Elite: ",(100*a.elitePct).toFixed(0),"% · Avg: ",a.avgPower.toFixed(1)]}),(0,b.jsx)("span",{style:{color:"var(--sd-orange, #FF6B35)",fontWeight:700},children:a.clusterValue.toFixed(1)})]}),(a.sTier.length>0||a.aTier.length>0)&&(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:4,marginTop:8},children:[[...a.sTier,...a.aTier].slice(0,4).map(a=>(0,I.localPhoto)(a.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(a.profile_image_url),alt:a.name,style:{width:22,height:22,borderRadius:"50%",objectFit:"cover",border:`1.5px solid ${e[a.tier]||"#555"}`},onError:a=>{a.target.style.display="none"},title:a.name},a.id):(0,b.jsx)("div",{style:{width:22,height:22,borderRadius:"50%",fontSize:9,fontWeight:700,background:e[a.tier]||"#555",color:"S"===a.tier?"#000":"var(--sd-fg-1, #fff)",display:"flex",alignItems:"center",justifyContent:"center"},title:a.name,children:a.name?.charAt(0)},a.id)),a.sCount+a.aCount>4&&(0,b.jsxs)("span",{style:{fontSize:9,color:"var(--sd-fg-4, #666)"},children:["+",a.sCount+a.aCount-4," more"]})]}),(0,b.jsxs)("button",{onClick:()=>h(!g),style:{marginTop:6,background:"none",border:"none",color:"var(--sd-fg-3, #888)",fontSize:10,cursor:"pointer",padding:0,display:"flex",alignItems:"center",gap:4},children:[(0,b.jsx)("span",{style:{fontSize:12},children:g?"▾":"▸"}),g?"Hide members":`View all ${a.members} members`]})]}),g&&(0,b.jsx)("div",{style:{borderTop:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.06)",padding:"6px 10px 10px",maxHeight:250,overflowY:"auto"},children:a.topMembers.map(a=>(0,b.jsxs)("div",{onClick:()=>f&&f(a),style:{display:"flex",alignItems:"center",gap:6,padding:"4px 2px",cursor:"pointer",borderRadius:4},onMouseEnter:a=>a.currentTarget.style.background="rgba(var(--sd-ink, 255, 255, 255), 0.06)",onMouseLeave:a=>a.currentTarget.style.background="transparent",children:[(0,I.localPhoto)(a.profile_image_url)?(0,b.jsx)("img",{src:(0,I.localPhoto)(a.profile_image_url),alt:"",style:{width:20,height:20,borderRadius:"50%",objectFit:"cover",flexShrink:0,border:`1px solid ${e[a.tier]||"#555"}`},onError:a=>{a.target.style.display="none",a.target.nextSibling.style.display="flex"}}):null,(0,b.jsx)("div",{style:{width:20,height:20,borderRadius:"50%",flexShrink:0,fontSize:8,fontWeight:700,background:e[a.tier]||"#555",color:"S"===a.tier?"#000":"var(--sd-fg-1, #fff)",display:(0,I.localPhoto)(a.profile_image_url)?"none":"flex",alignItems:"center",justifyContent:"center"},children:a.name?.charAt(0)}),(0,b.jsx)("div",{style:{minWidth:0,flex:1},children:(0,b.jsx)("div",{style:{fontSize:10,fontWeight:600,overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:a.name})}),(0,b.jsxs)("span",{style:{fontSize:9,color:e[a.tier]||"#555",fontWeight:600,flexShrink:0},children:[a.tier," ",parseFloat(a.power_score).toFixed(1)]})]},a.id))})]})}function ca({connections:a,degree2:d,scanNotes:g,tierColors:h}){let i=(0,f.default)(),[j,k]=(0,c.useState)(!1),l=(0,c.useMemo)(()=>(0,K.reachIndex)(a,d,g),[a,d,g]),m=(0,c.useMemo)(()=>(0,K.readyToScan)(a,l),[a,l]),n=(0,c.useMemo)(()=>a.filter(a=>"hidden"===(0,K.reachState)(a,l)),[a,l]),o=(0,c.useMemo)(()=>a.filter(a=>null===(0,K.reachState)(a,l)&&"todo"===(0,K.circleState)(a,l)).length,[a,l]),p=(0,c.useMemo)(()=>new Map(a.map(a=>[a.id,a])),[a]),q=(0,K.circleScanCost)(),r=i.running&&(0,e.isCircleScan)(i),s=i.running&&!r?(0,e.busyReason)(i):null,t=i.finished.find(e.isCircleScan),u=j?m:m.slice(0,5);return(0,b.jsxs)("div",{style:{background:"rgba(0,255,136,0.05)",border:"1px solid rgba(0,255,136,0.2)",borderRadius:10,padding:14,marginBottom:16},children:[(0,b.jsxs)("div",{style:{fontSize:12,fontWeight:800,color:"var(--sd-green, #00ff88)",marginBottom:4},children:["Ready to scan (",m.length,")"]}),(0,b.jsx)("div",{style:{fontSize:10.5,color:"var(--sd-fg-3, #999)",lineHeight:1.5,marginBottom:10},children:"People you added through a circle whose own circle isn't scanned yet. Scanning one brings in who they know: 3rd degree, through the circle you found them in."}),r?(0,b.jsx)("div",{style:{marginBottom:10},children:(0,b.jsx)(b7,{small:!0,title:i.pending?"Starting…":`Scanning ${i.target?.name||"a circle"}…`,log:i.log})}):t&&(0,b.jsx)(b8,{job:t,who:t.target?.name}),0===m.length?(0,b.jsxs)("div",{style:{fontSize:11,color:"var(--sd-fg-3, #aaa)",lineHeight:1.5},children:["Nobody yet. When someone you asked from a circle accepts, ↻ ",(0,b.jsx)("b",{children:"Check for new"})," brings them into your connections, and they show here."]}):(0,b.jsxs)("div",{role:"list",style:{display:"flex",flexDirection:"column",gap:6},children:[u.map(a=>{let c=r&&(0,e.scansCircleOf)(i,a),d=p.get(a.unlocked_from_bridge_id)?.name||a.unlocked_from_name;return(0,b.jsxs)(V.default,{role:"listitem",href:`/setup?scan=${encodeURIComponent(a.id)}`,"aria-label":`Scan ${a.name}’s circle: opens the Scan page to confirm`,style:{display:"flex",alignItems:"center",gap:8,padding:"8px 10px",borderRadius:8,textDecoration:"none",color:"var(--sd-fg-1, #fff)",background:"rgba(var(--sd-ink, 255, 255, 255), 0.04)",border:"1px solid rgba(0,255,136,0.18)"},children:[(0,b.jsx)("span",{style:{width:8,height:8,borderRadius:"50%",flexShrink:0,background:h[a.tier]||"#888",boxShadow:"0 0 0 2px rgba(0,255,136,0.45)"}}),(0,b.jsxs)("span",{style:{flex:1,minWidth:0},children:[(0,b.jsx)("span",{style:{fontSize:12,fontWeight:700},children:a.name}),(0,b.jsx)("span",{style:{fontSize:10,color:h[a.tier]||"#888",fontWeight:700,marginLeft:6},children:a.tier}),d&&(0,b.jsxs)("span",{style:{display:"block",fontSize:10,color:"var(--sd-fg-3, #888)",overflow:"hidden",textOverflow:"ellipsis",whiteSpace:"nowrap"},children:["was in ",String(d||"").trim().split(/\s+/)[0],"'s circle"]})]}),(0,b.jsx)("span",{style:{fontSize:10.5,fontWeight:700,color:"var(--sd-green, #00ff88)",whiteSpace:"nowrap"},children:c?"Scanning…":"Scan… →"})]},a.id)}),m.length>5&&(0,b.jsx)("button",{type:"button",onClick:()=>k(a=>!a),style:{background:"none",border:"none",color:"var(--sd-fg-3, #888)",fontSize:10.5,fontWeight:600,cursor:"pointer",padding:"2px 0",textAlign:"left"},children:j?"Show fewer":`Show all ${m.length}`})]}),m.length>0&&(0,b.jsxs)("div",{style:{fontSize:10,color:"var(--sd-fg-3, #888)",lineHeight:1.5,marginTop:8},children:["Each scan: ",q.profileViews," profile view, then one LinkedIn search for every page of their list, up to ",q.searches," pages (about ",q.minutes," min for a whole list). Nothing starts until you confirm it on the Scan page."]}),n.length>0&&(0,b.jsxs)("div",{style:{marginTop:10,fontSize:10.5,color:"var(--sd-fg-4, #777)",lineHeight:1.6},children:[n.slice(0,3).map(a=>(0,b.jsxs)("div",{style:{opacity:.7},children:[(0,b.jsx)("span",{"aria-hidden":"true",children:"🔒"})," ",a.name," ",(0,b.jsx)("span",{style:{color:"var(--sd-fg-4, #666)"},children:"· their list is hidden"})]},a.id)),n.length>3&&(0,b.jsxs)("div",{style:{opacity:.7},children:["🔒 and ",n.length-3," more with hidden lists"]})]}),o>0&&(0,b.jsxs)("div",{style:{fontSize:10.5,color:"var(--sd-fg-3, #888)",lineHeight:1.5,marginTop:10},children:[o.toLocaleString("en-US")," of your other connections aren't scanned yet."," ",(0,b.jsx)(V.default,{href:"/setup",style:{color:"var(--sd-blue, #3498DB)",textDecoration:"none"},children:"Map them in batches on the Scan page →"})]}),s&&(0,b.jsxs)("div",{style:{fontSize:10,color:"var(--sd-fg-2, #bbb)",marginTop:8},children:[s,". One scan at a time."]})]})}var cb=a.i(80306),cc=a.i(36839),cd=a.i(58834),ce=a.i(42510);function cf(){let[a,d]=(0,c.useState)(!1),[e,f]=(0,c.useState)("");async function g(){d(!0),f("");try{await (0,cd.loadSampleIntoSession)(),window.location.reload()}catch(a){f(a.message||"Could not load the sample network."),d(!1)}}return(0,b.jsx)("div",{style:{position:"absolute",inset:0,display:"flex",alignItems:"center",justifyContent:"center",padding:24,overflowY:"auto"},children:(0,b.jsxs)("div",{style:{maxWidth:520,width:"100%",textAlign:"center"},children:[(0,b.jsx)("div",{style:{width:68,height:68,borderRadius:"50%",margin:"0 auto 22px",border:"2px solid rgba(255,215,0,0.35)",display:"flex",alignItems:"center",justifyContent:"center",fontSize:26},children:"✦"}),(0,b.jsx)("h2",{style:{fontSize:28,fontWeight:800,margin:"0 0 10px",background:"linear-gradient(135deg, #FFD700, #9B59B6, #3498DB)",WebkitBackgroundClip:"text",WebkitTextFillColor:"transparent"},children:"Welcome to Six Degrees"}),(0,b.jsx)("p",{style:{color:"rgba(var(--sd-ink, 255, 255, 255), 0.5)",fontSize:14.5,lineHeight:1.7,margin:"0 0 28px"},children:"Your network, drawn as a galaxy. Everything stays on this computer. Pick how to bring it in. You can switch later."}),(0,b.jsx)(ch,{href:"/setup",primary:!0,badge:"Recommended",title:"Scan my LinkedIn",body:"A few guided steps: set up the scanner, sign into LinkedIn yourself, and watch your galaxy fill in. The only way to see who your connections know. Needs Google Chrome.",note:"It runs your own LinkedIn account automatically, and LinkedIn may restrict accounts that do this."}),(0,b.jsx)(cg,{}),(0,b.jsx)(ch,{onClick:g,disabled:a,title:a?"Loading…":"Explore a sample network",body:"150 invented connections and the 598 people they know. Every view except Outlink and Scan, which need your own scan. Nothing about you is used."}),e&&(0,b.jsx)("div",{style:{color:"var(--sd-red, #ff6b6b)",fontSize:13,marginTop:18},children:e}),(0,b.jsxs)("p",{style:{color:"rgba(var(--sd-ink, 255, 255, 255), 0.45)",fontSize:13,lineHeight:1.6,margin:"18px 0 0"},children:["Moving from another computer?"," ",(0,b.jsx)("a",{href:"/settings#data",style:{color:"rgba(var(--sd-ink, 255, 255, 255), 0.75)"},children:"Import your saved copy in Settings → Your data."})]})]})})}function cg(){let[a,d]=(0,c.useState)(null);return(0,c.useEffect)(()=>{let a=!1;return(0,ce.keptCsvProblem)().then(b=>{a||d(b)}),()=>{a=!0}},[]),(0,b.jsx)(ch,{href:"/import",title:"Import my LinkedIn CSV",body:"LinkedIn’s official export. Takes about ten minutes to arrive by email. Kept on this computer, in your data folder, until you remove it. Shows the people you know, not who they know.",note:a})}function ch({href:a,onClick:c,disabled:d,primary:e,badge:f,title:g,body:h,note:i}){let j={display:"block",width:"100%",boxSizing:"border-box",textAlign:"left",padding:"16px 18px",borderRadius:12,marginBottom:12,textDecoration:"none",cursor:d?"default":"pointer",font:"inherit",border:e?"1px solid rgba(255,215,0,0.45)":"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.12)",background:e?"linear-gradient(135deg, rgba(255,215,0,0.12), rgba(155,89,182,0.14))":"rgba(var(--sd-ink, 255, 255, 255), 0.03)",color:"var(--sd-fg-1, #fff)"},k=(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:10,marginBottom:5},children:[(0,b.jsx)("span",{style:{fontSize:15.5,fontWeight:750},children:g}),f&&(0,b.jsx)("span",{style:{fontSize:10.5,fontWeight:800,letterSpacing:.5,textTransform:"uppercase",padding:"3px 8px",borderRadius:20,background:"#FFD700",color:"#0a0a1a"},children:f}),(0,b.jsx)("span",{style:{marginLeft:"auto",color:"rgba(var(--sd-ink, 255, 255, 255), 0.4)"},children:"→"})]}),(0,b.jsx)("div",{style:{fontSize:13,color:"rgba(var(--sd-ink, 255, 255, 255), 0.5)",lineHeight:1.6},children:h}),i&&(0,b.jsx)("div",{style:{fontSize:12.5,color:"var(--sd-gold, #FFD700)",opacity:.85,lineHeight:1.5,marginTop:6},children:i})]});return a?(0,b.jsx)("a",{href:a,style:j,children:k}):(0,b.jsx)("button",{onClick:c,disabled:d,style:j,children:k})}var ci=a.i(31318),cj=a.i(54031);let ck=[],cl=a=>!!a&&!["install","setup","login"].includes(a.action);function cm(a,b){let c={};a.forEach(a=>{c[a.tier]=(c[a.tier]||0)+1});let d={};return b.forEach(a=>{d[a.tier]=(d[a.tier]||0)+1}),{total:a.length,tiers:c,d2Total:b.length,d2Tiers:d}}function cn(){let a,{userId:f,userName:j}=(0,ac.useUser)(),k=function(){let[a,b]=(0,c.useState)(!1);return(0,c.useEffect)(()=>{let a=()=>b(window.innerWidth<768);return a(),window.addEventListener("resize",a),()=>window.removeEventListener("resize",a)},[]),a}(),[l,m]=(0,c.useState)([]),[n,o]=(0,c.useState)([]),[p,q]=(0,c.useState)([]),[r,s]=(0,c.useState)({network:bz.NETWORK_GRID,degrees:bz.DEGREES_GRID}),[t,u]=(0,c.useState)(null),v=(0,c.useRef)(null),w=(0,d.useSearchParams)(),x=w.get("chain"),y=["network","degrees","separation"].includes(w.get("mode"))?w.get("mode"):null,[z,A]=(0,c.useState)(x),[B,C]=(0,c.useState)(null),[D,E]=(0,c.useState)(()=>z?"degrees":y||"network"),[F,G]=(0,c.useState)(!0),[H,I]=(0,c.useState)(null),[J,K]=(0,c.useState)(!0),[L,M]=(0,c.useState)(!0),[N,Q]=(0,c.useState)(()=>z||"degrees"===y?"chain":"separation"===y?"separation":"galaxy"),[R,S]=(0,c.useState)(null),T=w.get("note"),U=(0,c.useCallback)(a=>{S(a),K(!1)},[]),[W,X]=(0,c.useState)(!1),[Y,Z]=(0,c.useState)("csv"),[$,_]=(0,c.useState)(e.NO_SCAN_NOTES),aa=(0,c.useRef)(""),ab=(0,h.requestCount)((0,g.default)());(0,c.useEffect)(()=>{f&&a();async function a(){let a=await (0,ce.loadCsvNetwork)();a&&(X(!0),Z(a.source||"csv"));let{degree1:b,degree2:c,degree3:d=[]}=cd.IS_DEMO?await (0,cd.loadDemoNetwork)():a||await (async()=>await (0,i.loadNetwork)(f))();m(b),o(c),q(d||[]),aa.current=co(b,c),I(cm(b,c)),G(!1),cd.IS_DEMO||a||(0,e.loadScanNotes)().then(_)}},[f]);let ad=(0,c.useCallback)(async()=>{if(!cd.IS_DEMO&&!W&&f)try{let[{degree1:a,degree2:b,degree3:c=[]},d]=await Promise.all([(0,i.loadNetwork)(f),(0,e.loadScanNotes)()]);_(a=>JSON.stringify(a)===JSON.stringify(d)?a:d),q(a=>a.length===(c||[]).length?a:c||[]);let g=co(a,b);if(g===aa.current)return;aa.current=g,m(a),o(b),I(cm(a,b))}catch{}},[f,W]),[ae,af]=(0,c.useState)(null),ag=(0,c.useCallback)(a=>{af({...a,id:`${a.query}|${a.tier||""}|${a.rarity||""}|${Math.random()}`}),E("separation"),Q("separation")},[]),ah=(0,c.useCallback)(a=>{A(a),E("degrees"),Q("chain")},[]),ai=(0,c.useCallback)(()=>{A(null);try{window.history.replaceState(null,"",window.location.pathname)}catch{}},[]),aj="degrees"===D||"separation"===D,ak=(0,c.useMemo)(()=>(function(a=[],b=[],c=[]){let d=new Set,e=(a,b)=>{let c=[];for(let e of a||[]){let a=(0,P.keyFor)(e);d.has(a)||(d.add(a),c.push(e.degree===b?e:{...e,degree:b}))}return c};return{1:e(a,1),2:e(b,2),3:e(c,3)}})(l,n,p),[l,n,p]),al=aj?r.degrees:r.network,am="separation"===D,an=(0,c.useMemo)(()=>am?l:aj?l.filter(a=>(0,bz.shows)(al,a.tier,1)):[1,2,3].flatMap(a=>(ak[a]||[]).filter(b=>(0,bz.shows)(al,b.tier,a))),[am,aj,l,ak,al]),ao=(0,c.useMemo)(()=>new Map(l.map(a=>[a.id,a])),[l]),ap=(0,c.useMemo)(()=>(0,cj.networkLevel)(l,n),[l,n]),aq=(0,c.useMemo)(()=>new Set(n.map(a=>a.source_connection_id).filter(Boolean)),[n]),ar=(0,c.useMemo)(()=>aj?am?n.filter(a=>(0,bz.shows)(al,a.tier,2)):n.filter(a=>(0,bz.shows)(al,a.tier,2)&&(0,bz.shows)(al,ao.get(a.source_connection_id)?.tier,1)):ck,[aj,am,al,ao,n]),as=(0,c.useMemo)(()=>(0,bz.gridCounts)(am?{2:ak[2]}:aj?{1:l.filter(a=>aq.has(a.id)),2:ak[2]}:ak),[am,aj,l,aq,ak]),at=(0,c.useCallback)(a=>{u(a),a&&(K(!1),S(null))},[]),au=(a=bw[N])&&a.modes.includes(D)?{key:N,...a}:by(D)[0]??{key:"list",...bw.list},av=l.length>0;if((0,c.useEffect)(()=>{if(av)return(0,aZ.setNotchTabs)({items:by(D).map(a=>({key:a.key,label:a.label,icon:a.icon,title:a.desc})),current:au.key,onPick:Q}),()=>(0,aZ.setNotchTabs)(null)},[D,au.key,av]),F)return(0,b.jsxs)("div",{style:{minHeight:"100vh",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"center",background:"var(--sd-page)",color:"var(--sd-fg-1, #fff)"},children:[(0,b.jsx)("div",{style:{fontSize:24,fontWeight:700},children:"Loading Six Degrees…"}),(0,b.jsx)("div",{style:{fontSize:14,color:"var(--sd-fg-3, #888)",marginTop:8},children:"Mapping your LinkedIn network"})]});let aw=!cd.IS_DEMO&&!W;return(0,b.jsxs)("div",{"data-map":!0,style:{height:"100vh",overflow:"hidden",background:"var(--sd-page)",color:"var(--sd-fg-1, #fff)",fontFamily:"var(--sd-font)"},children:[(0,b.jsx)(ci.default,{active:D,isMobile:k,csvMode:W,onMode:a=>{E(a),u(null),Q("network"===a?"galaxy":"degrees"===a?"chain":"separation")},level:ap,onOpenNote:U,openNoteId:T,chips:W&&(0,b.jsxs)("div",{style:{display:"flex",alignItems:"center",gap:6,marginLeft:k?4:10,padding:k?"4px 8px":"5px 10px",borderRadius:999,background:"rgba(var(--sd-ink, 255, 255, 255), 0.05)",border:"1px solid rgba(var(--sd-ink, 255, 255, 255), 0.12)"},children:[(0,b.jsx)("span",{style:{width:6,height:6,borderRadius:"50%",background:"sample"===Y?"#9B59B6":"#2ecc71"}}),(0,b.jsx)("span",{style:{fontSize:k?10:12,color:"rgba(var(--sd-ink, 255, 255, 255), 0.65)",whiteSpace:"nowrap"},children:"sample"===Y?"Sample network":"Your CSV"}),(0,b.jsx)("button",{onClick:async()=>{if("sample"!==Y&&!window.confirm(ce.REMOVE_CSV_QUESTION))return;let a=await (0,ce.closeCsvNetwork)(Y);a.ok?window.location.href="/":alert(a.error)},title:"sample"===Y?"Leave the sample network":"Remove this import from this computer",style:{border:"none",background:"transparent",cursor:"pointer",color:"var(--sd-fg-3, #888)",fontSize:k?13:15,lineHeight:1,padding:"0 0 0 2px"},children:"×"})]}),children:aj&&!W&&ab>0&&(0,b.jsxs)(V.default,{href:"/queue",style:{padding:"5px 12px",borderRadius:16,fontSize:12,fontWeight:600,textDecoration:"none",background:"rgba(255,107,53,0.12)",color:"var(--sd-orange, #FF6B35)",border:"1px solid rgba(255,107,53,0.25)",display:"inline-flex",alignItems:"center",gap:5},children:[(0,b.jsx)("span",{style:{fontSize:10},children:"⏳"}),ab," Pending"]})}),(0,b.jsxs)("div",{style:{display:"flex",height:k?"calc(100vh - 70px)":"calc(100vh - 130px)",position:"relative"},children:[(0,b.jsx)(cb.default,{collapsed:L,onToggle:()=>M(!L),mode:am?"separation":aj?"degrees":"network",visualMode:au.key,grid:al,gridCounts:as,onGridChange:a=>s(b=>({...b,[aj?"degrees":"network"]:a}))}),(()=>{if(0===l.length)return(0,b.jsx)(cf,{});if(aj&&0===n.length)return(0,b.jsx)("div",{style:{position:"absolute",inset:0,display:"flex",alignItems:"center",justifyContent:"center",padding:24,textAlign:"center"},children:(0,b.jsxs)("div",{style:{maxWidth:440},children:[(0,b.jsx)("div",{style:{fontSize:40,marginBottom:16,opacity:.5},children:"🔗"}),(0,b.jsx)("h2",{style:{fontSize:22,fontWeight:800,margin:"0 0 12px",color:"var(--sd-fg-1, #fff)"},children:W?"Degrees need 2nd-degree data":"Who they know comes next"}),(0,b.jsxs)("p",{style:{color:"rgba(var(--sd-ink, 255, 255, 255), 0.45)",fontSize:14,lineHeight:1.7,margin:"0 0 20px"},children:["This view maps who ",(0,b.jsx)("em",{children:"your connections"})," ","know: the people you haven’t met yet."," ",W?(0,b.jsx)(b.Fragment,{children:"LinkedIn’s CSV export only covers your own 1st-degree list, so there are no circles to open here."}):(0,b.jsx)(b.Fragment,{children:"Your own connections are mapped. Step 4 on the Scan page reads their circles, one person at a time: the first shows up here in a few minutes, and the rest fill in over days."})]}),(0,b.jsxs)("p",{style:{color:"var(--sd-fg-4, #666)",fontSize:13,lineHeight:1.7,margin:0},children:[W?(0,b.jsxs)(b.Fragment,{children:["The local scanner maps those circles (and captures real photos)."," "]}):null,(0,b.jsxs)(V.default,{href:"/setup",style:{color:"var(--sd-blue, #3498DB)",textDecoration:"none"},children:[W?"Set up scanning":"Map who they know"," →"]})]})]})});let a=au.component,c={connections:an,degree2:au.allDegree2?n:ar,onSelect:at,mode:D,userName:j,userImage:null,selectedId:t?.id??null,tierColors:O.TIER_COLORS,focusNodeRef:v,fullDegree1:l,fullDegree2:n,scanNotes:$,canScan:aw,chainOpen:z,onChainOpened:ai,onCircle:C,preset:ae};return(0,b.jsx)(a,{...c})})(),(0,b.jsx)(b0,{selected:t,stats:H,tierColors:O.TIER_COLORS,connections:l,degree2:n,mode:aj?"degrees":"network",collapsed:J,onToggle:()=>K(!J),onSelect:a=>{u(a||null)},onSwitchMode:a=>{E(a)},note:R,onCloseNote:()=>S(null),circle:"chain"===au.key?B:null,onOpenCircle:ah,onShowInSeparation:ag,onFocusNode:a=>{v.current&&v.current(a)},csvSource:cd.IS_DEMO?"sample":W?Y:null,scanNotes:$,canScan:aw}),aw&&(0,b.jsx)(cp,{onChange:ad,live:"chain"===au.key})]})]})}function co(a,b){let c=0x811c9dc5,d=a=>{for(let b=0;b<a.length;b++)c=Math.imul(c^a.charCodeAt(b),0x1000193)};for(let c of[...a,...b])d(`${c.id}|${c.degree}|${c.source_connection_id??""}|${c.unlocked_from_bridge_id??""}|${c.tier}|${c.power_score}|${c.unlock_status??""}|${c.profile_image_url??""};`);return`${a.length}:${b.length}:${c>>>0}`}function cp({onChange:a,live:b}){let d=(0,f.default)(),g=d.finished.find(cl)?.startedAt??null,h=b&&d.running&&(0,e.fillsCircles)(d);return(0,c.useEffect)(()=>{null!=g&&a()},[g,a]),(0,c.useEffect)(()=>{if(!h)return;let b=setInterval(a,2e4);return()=>clearInterval(b)},[h,a]),null}a.s(["default",0,function(){return(0,b.jsx)(cc.default,{children:(0,b.jsx)(c.Suspense,{children:(0,b.jsx)(cn,{})})})}],30100)}];
46
58
 
47
59
  //# sourceMappingURL=app_page_1fazqbf.js.map