shieldcortex 4.15.0 → 4.16.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 (234) hide show
  1. package/README.md +4 -0
  2. package/dashboard/.next/standalone/dashboard/.next/BUILD_ID +1 -1
  3. package/dashboard/.next/standalone/dashboard/.next/build-manifest.json +2 -2
  4. package/dashboard/.next/standalone/dashboard/.next/prerender-manifest.json +3 -3
  5. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.html +2 -2
  6. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.rsc +1 -1
  7. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  8. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  9. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  10. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  11. package/dashboard/.next/standalone/dashboard/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  12. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.html +2 -2
  13. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.rsc +1 -1
  14. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_full.segment.rsc +1 -1
  15. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  16. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_index.segment.rsc +1 -1
  17. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  18. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  19. package/dashboard/.next/standalone/dashboard/.next/server/app/_not-found.segments/_tree.segment.rsc +1 -1
  20. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.html +1 -1
  21. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.rsc +1 -1
  22. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.segments/!KGRhc2hib2FyZCk/admin/__PAGE__.segment.rsc +1 -1
  23. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.segments/!KGRhc2hib2FyZCk/admin.segment.rsc +1 -1
  24. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  25. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.segments/_full.segment.rsc +1 -1
  26. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.segments/_head.segment.rsc +1 -1
  27. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.segments/_index.segment.rsc +1 -1
  28. package/dashboard/.next/standalone/dashboard/.next/server/app/admin.segments/_tree.segment.rsc +1 -1
  29. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.html +1 -1
  30. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.rsc +1 -1
  31. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.segments/!KGRhc2hib2FyZCk/cloud/__PAGE__.segment.rsc +1 -1
  32. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.segments/!KGRhc2hib2FyZCk/cloud.segment.rsc +1 -1
  33. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  34. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.segments/_full.segment.rsc +1 -1
  35. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.segments/_head.segment.rsc +1 -1
  36. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.segments/_index.segment.rsc +1 -1
  37. package/dashboard/.next/standalone/dashboard/.next/server/app/cloud.segments/_tree.segment.rsc +1 -1
  38. package/dashboard/.next/standalone/dashboard/.next/server/app/index.html +1 -1
  39. package/dashboard/.next/standalone/dashboard/.next/server/app/index.rsc +1 -1
  40. package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/__PAGE__.segment.rsc +1 -1
  41. package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/_full.segment.rsc +1 -1
  42. package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/_head.segment.rsc +1 -1
  43. package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/_index.segment.rsc +1 -1
  44. package/dashboard/.next/standalone/dashboard/.next/server/app/index.segments/_tree.segment.rsc +1 -1
  45. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.html +1 -1
  46. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.rsc +1 -1
  47. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/!KGRhc2hib2FyZCk/memory/capture/__PAGE__.segment.rsc +1 -1
  48. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/!KGRhc2hib2FyZCk/memory/capture.segment.rsc +1 -1
  49. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/!KGRhc2hib2FyZCk/memory.segment.rsc +1 -1
  50. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  51. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/_full.segment.rsc +1 -1
  52. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/_head.segment.rsc +1 -1
  53. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/_index.segment.rsc +1 -1
  54. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/capture.segments/_tree.segment.rsc +1 -1
  55. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.html +1 -1
  56. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.rsc +1 -1
  57. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/!KGRhc2hib2FyZCk/memory/graph/__PAGE__.segment.rsc +1 -1
  58. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/!KGRhc2hib2FyZCk/memory/graph.segment.rsc +1 -1
  59. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/!KGRhc2hib2FyZCk/memory.segment.rsc +1 -1
  60. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  61. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/_full.segment.rsc +1 -1
  62. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/_head.segment.rsc +1 -1
  63. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/_index.segment.rsc +1 -1
  64. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/graph.segments/_tree.segment.rsc +1 -1
  65. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.html +1 -1
  66. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.rsc +1 -1
  67. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/!KGRhc2hib2FyZCk/memory/recall/__PAGE__.segment.rsc +1 -1
  68. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/!KGRhc2hib2FyZCk/memory/recall.segment.rsc +1 -1
  69. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/!KGRhc2hib2FyZCk/memory.segment.rsc +1 -1
  70. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  71. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/_full.segment.rsc +1 -1
  72. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/_head.segment.rsc +1 -1
  73. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/_index.segment.rsc +1 -1
  74. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/recall.segments/_tree.segment.rsc +1 -1
  75. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.html +1 -1
  76. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.rsc +1 -1
  77. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/!KGRhc2hib2FyZCk/memory/review/__PAGE__.segment.rsc +1 -1
  78. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/!KGRhc2hib2FyZCk/memory/review.segment.rsc +1 -1
  79. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/!KGRhc2hib2FyZCk/memory.segment.rsc +1 -1
  80. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  81. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/_full.segment.rsc +1 -1
  82. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/_head.segment.rsc +1 -1
  83. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/_index.segment.rsc +1 -1
  84. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/review.segments/_tree.segment.rsc +1 -1
  85. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.html +1 -1
  86. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.rsc +1 -1
  87. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/!KGRhc2hib2FyZCk/memory/timeline/__PAGE__.segment.rsc +1 -1
  88. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/!KGRhc2hib2FyZCk/memory/timeline.segment.rsc +1 -1
  89. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/!KGRhc2hib2FyZCk/memory.segment.rsc +1 -1
  90. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  91. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/_full.segment.rsc +1 -1
  92. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/_head.segment.rsc +1 -1
  93. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/_index.segment.rsc +1 -1
  94. package/dashboard/.next/standalone/dashboard/.next/server/app/memory/timeline.segments/_tree.segment.rsc +1 -1
  95. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.html +2 -2
  96. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.rsc +1 -1
  97. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.segments/!KGRhc2hib2FyZCk/memory/__PAGE__.segment.rsc +1 -1
  98. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.segments/!KGRhc2hib2FyZCk/memory.segment.rsc +1 -1
  99. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  100. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.segments/_full.segment.rsc +1 -1
  101. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.segments/_head.segment.rsc +1 -1
  102. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.segments/_index.segment.rsc +1 -1
  103. package/dashboard/.next/standalone/dashboard/.next/server/app/memory.segments/_tree.segment.rsc +1 -1
  104. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.html +2 -2
  105. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.rsc +1 -1
  106. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.segments/!KGRhc2hib2FyZCk/overview/__PAGE__.segment.rsc +1 -1
  107. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.segments/!KGRhc2hib2FyZCk/overview.segment.rsc +1 -1
  108. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  109. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.segments/_full.segment.rsc +1 -1
  110. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.segments/_head.segment.rsc +1 -1
  111. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.segments/_index.segment.rsc +1 -1
  112. package/dashboard/.next/standalone/dashboard/.next/server/app/overview.segments/_tree.segment.rsc +1 -1
  113. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.html +1 -1
  114. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.rsc +1 -1
  115. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/!KGRhc2hib2FyZCk/protection/audit/__PAGE__.segment.rsc +1 -1
  116. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/!KGRhc2hib2FyZCk/protection/audit.segment.rsc +1 -1
  117. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/!KGRhc2hib2FyZCk/protection.segment.rsc +1 -1
  118. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  119. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/_full.segment.rsc +1 -1
  120. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/_head.segment.rsc +1 -1
  121. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/_index.segment.rsc +1 -1
  122. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/audit.segments/_tree.segment.rsc +1 -1
  123. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.html +1 -1
  124. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.rsc +1 -1
  125. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/!KGRhc2hib2FyZCk/protection/intercepts/__PAGE__.segment.rsc +1 -1
  126. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/!KGRhc2hib2FyZCk/protection/intercepts.segment.rsc +1 -1
  127. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/!KGRhc2hib2FyZCk/protection.segment.rsc +1 -1
  128. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  129. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/_full.segment.rsc +1 -1
  130. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/_head.segment.rsc +1 -1
  131. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/_index.segment.rsc +1 -1
  132. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/intercepts.segments/_tree.segment.rsc +1 -1
  133. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.html +1 -1
  134. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.rsc +1 -1
  135. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/!KGRhc2hib2FyZCk/protection/iron-dome/__PAGE__.segment.rsc +1 -1
  136. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/!KGRhc2hib2FyZCk/protection/iron-dome.segment.rsc +1 -1
  137. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/!KGRhc2hib2FyZCk/protection.segment.rsc +1 -1
  138. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  139. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/_full.segment.rsc +1 -1
  140. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/_head.segment.rsc +1 -1
  141. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/_index.segment.rsc +1 -1
  142. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/iron-dome.segments/_tree.segment.rsc +1 -1
  143. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.html +1 -1
  144. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.rsc +1 -1
  145. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/!KGRhc2hib2FyZCk/protection/policies/__PAGE__.segment.rsc +1 -1
  146. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/!KGRhc2hib2FyZCk/protection/policies.segment.rsc +1 -1
  147. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/!KGRhc2hib2FyZCk/protection.segment.rsc +1 -1
  148. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  149. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/_full.segment.rsc +1 -1
  150. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/_head.segment.rsc +1 -1
  151. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/_index.segment.rsc +1 -1
  152. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/policies.segments/_tree.segment.rsc +1 -1
  153. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.html +1 -1
  154. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.rsc +1 -1
  155. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/!KGRhc2hib2FyZCk/protection/quarantine/__PAGE__.segment.rsc +1 -1
  156. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/!KGRhc2hib2FyZCk/protection/quarantine.segment.rsc +1 -1
  157. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/!KGRhc2hib2FyZCk/protection.segment.rsc +1 -1
  158. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  159. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/_full.segment.rsc +1 -1
  160. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/_head.segment.rsc +1 -1
  161. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/_index.segment.rsc +1 -1
  162. package/dashboard/.next/standalone/dashboard/.next/server/app/protection/quarantine.segments/_tree.segment.rsc +1 -1
  163. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.html +2 -2
  164. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.rsc +1 -1
  165. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.segments/!KGRhc2hib2FyZCk/protection/__PAGE__.segment.rsc +1 -1
  166. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.segments/!KGRhc2hib2FyZCk/protection.segment.rsc +1 -1
  167. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  168. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.segments/_full.segment.rsc +1 -1
  169. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.segments/_head.segment.rsc +1 -1
  170. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.segments/_index.segment.rsc +1 -1
  171. package/dashboard/.next/standalone/dashboard/.next/server/app/protection.segments/_tree.segment.rsc +1 -1
  172. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.html +2 -2
  173. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.rsc +1 -1
  174. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.segments/!KGRhc2hib2FyZCk/settings/__PAGE__.segment.rsc +1 -1
  175. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.segments/!KGRhc2hib2FyZCk/settings.segment.rsc +1 -1
  176. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  177. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.segments/_full.segment.rsc +1 -1
  178. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.segments/_head.segment.rsc +1 -1
  179. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.segments/_index.segment.rsc +1 -1
  180. package/dashboard/.next/standalone/dashboard/.next/server/app/settings.segments/_tree.segment.rsc +1 -1
  181. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.html +1 -1
  182. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.rsc +1 -1
  183. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/!KGRhc2hib2FyZCk/supply-chain/xray/__PAGE__.segment.rsc +1 -1
  184. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/!KGRhc2hib2FyZCk/supply-chain/xray.segment.rsc +1 -1
  185. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/!KGRhc2hib2FyZCk/supply-chain.segment.rsc +1 -1
  186. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  187. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/_full.segment.rsc +1 -1
  188. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/_head.segment.rsc +1 -1
  189. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/_index.segment.rsc +1 -1
  190. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain/xray.segments/_tree.segment.rsc +1 -1
  191. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.html +1 -1
  192. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.rsc +1 -1
  193. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.segments/!KGRhc2hib2FyZCk/supply-chain/__PAGE__.segment.rsc +1 -1
  194. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.segments/!KGRhc2hib2FyZCk/supply-chain.segment.rsc +1 -1
  195. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  196. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.segments/_full.segment.rsc +1 -1
  197. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.segments/_head.segment.rsc +1 -1
  198. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.segments/_index.segment.rsc +1 -1
  199. package/dashboard/.next/standalone/dashboard/.next/server/app/supply-chain.segments/_tree.segment.rsc +1 -1
  200. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.html +2 -2
  201. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.rsc +1 -1
  202. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.segments/!KGRhc2hib2FyZCk/xray/__PAGE__.segment.rsc +1 -1
  203. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.segments/!KGRhc2hib2FyZCk/xray.segment.rsc +1 -1
  204. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.segments/!KGRhc2hib2FyZCk.segment.rsc +1 -1
  205. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.segments/_full.segment.rsc +1 -1
  206. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.segments/_head.segment.rsc +1 -1
  207. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.segments/_index.segment.rsc +1 -1
  208. package/dashboard/.next/standalone/dashboard/.next/server/app/xray.segments/_tree.segment.rsc +1 -1
  209. package/dashboard/.next/standalone/dashboard/.next/server/pages/404.html +2 -2
  210. package/dashboard/.next/standalone/dashboard/.next/server/pages/500.html +2 -2
  211. package/dashboard/.next/standalone/dashboard/.next/server/server-reference-manifest.js +1 -1
  212. package/dashboard/.next/standalone/dashboard/.next/server/server-reference-manifest.json +1 -1
  213. package/dist/cli/migrate-legacy.d.ts +18 -0
  214. package/dist/cli/migrate-legacy.js +96 -0
  215. package/dist/database/init.js +21 -0
  216. package/dist/database/schema.sql +1 -0
  217. package/dist/database/seed-firewall-rules.d.ts +21 -0
  218. package/dist/database/seed-firewall-rules.js +105 -0
  219. package/dist/defence/custom-rules/store.d.ts +4 -1
  220. package/dist/defence/custom-rules/store.js +7 -3
  221. package/dist/defence/firewall/instruction-detector.js +15 -0
  222. package/dist/defence/pipeline.js +19 -13
  223. package/dist/defence/types.d.ts +1 -1
  224. package/hooks/openclaw/cortex-memory/HOOK.md +37 -0
  225. package/package.json +1 -1
  226. package/plugins/openclaw/dist/openclaw.plugin.json +1 -1
  227. package/scripts/lib/extract-memorable-segments.mjs +555 -0
  228. package/scripts/lib/save-memory.mjs +198 -13
  229. package/scripts/pre-compact-hook.mjs +19 -375
  230. package/scripts/session-end-hook.mjs +16 -307
  231. package/scripts/stop-hook.mjs +28 -159
  232. /package/dashboard/.next/standalone/dashboard/.next/static/{10a_MRwbHFUuDdfr86RUu → 6WjF0Utj3STrFgg7vZVPK}/_buildManifest.js +0 -0
  233. /package/dashboard/.next/standalone/dashboard/.next/static/{10a_MRwbHFUuDdfr86RUu → 6WjF0Utj3STrFgg7vZVPK}/_clientMiddlewareManifest.json +0 -0
  234. /package/dashboard/.next/standalone/dashboard/.next/static/{10a_MRwbHFUuDdfr86RUu → 6WjF0Utj3STrFgg7vZVPK}/_ssgManifest.js +0 -0
@@ -1,4 +1,4 @@
1
- <!DOCTYPE html><!--10a_MRwbHFUuDdfr86RUu--><html lang="en" class="dark" data-theme="terminal"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" href="/_next/static/media/797e433ab948586e-s.p.dbea232f.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/caa3a2e1cccd8315-s.p.853070df.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/chunks/2473c16c0c2f6b5f.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/chunks/bf725d638cce46d4.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/d878b929b21636c4.js"/><script src="/_next/static/chunks/d9ad4c35fc865415.js" async=""></script><script src="/_next/static/chunks/43d761df92da7cb6.js" async=""></script><script src="/_next/static/chunks/e281719dbabcca1d.js" async=""></script><script src="/_next/static/chunks/9e56d1f8f4d7adcb.js" async=""></script><script src="/_next/static/chunks/turbopack-79214717b23f7452.js" async=""></script><script src="/_next/static/chunks/8a5b61fd5e1bbcfa.js" async=""></script><script src="/_next/static/chunks/102f894cc892994d.js" async=""></script><script src="/_next/static/chunks/417032eeb2cd875f.js" async=""></script><script src="/_next/static/chunks/d334b69bff7779be.js" async=""></script><script src="/_next/static/chunks/e804a1fda2839550.js" async=""></script><script src="/_next/static/chunks/3729c748a4361c1f.js" async=""></script><script src="/_next/static/chunks/e9f4b8da354f1005.js" async=""></script><script src="/_next/static/chunks/d2f861595d6a41df.js" async=""></script><script src="/_next/static/chunks/8d4a0f601450b091.js" async=""></script><meta name="next-size-adjust" content=""/><title>ShieldCortex</title><meta name="description" content="AI Memory Security Dashboard — Defence pipeline, audit logs, quarantine review"/><script>
1
+ <!DOCTYPE html><!--6WjF0Utj3STrFgg7vZVPK--><html lang="en" class="dark" data-theme="terminal"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" href="/_next/static/media/797e433ab948586e-s.p.dbea232f.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="preload" href="/_next/static/media/caa3a2e1cccd8315-s.p.853070df.woff2" as="font" crossorigin="" type="font/woff2"/><link rel="stylesheet" href="/_next/static/chunks/2473c16c0c2f6b5f.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/chunks/bf725d638cce46d4.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/d878b929b21636c4.js"/><script src="/_next/static/chunks/d9ad4c35fc865415.js" async=""></script><script src="/_next/static/chunks/43d761df92da7cb6.js" async=""></script><script src="/_next/static/chunks/e281719dbabcca1d.js" async=""></script><script src="/_next/static/chunks/9e56d1f8f4d7adcb.js" async=""></script><script src="/_next/static/chunks/turbopack-79214717b23f7452.js" async=""></script><script src="/_next/static/chunks/8a5b61fd5e1bbcfa.js" async=""></script><script src="/_next/static/chunks/102f894cc892994d.js" async=""></script><script src="/_next/static/chunks/417032eeb2cd875f.js" async=""></script><script src="/_next/static/chunks/d334b69bff7779be.js" async=""></script><script src="/_next/static/chunks/e804a1fda2839550.js" async=""></script><script src="/_next/static/chunks/3729c748a4361c1f.js" async=""></script><script src="/_next/static/chunks/e9f4b8da354f1005.js" async=""></script><script src="/_next/static/chunks/d2f861595d6a41df.js" async=""></script><script src="/_next/static/chunks/8d4a0f601450b091.js" async=""></script><meta name="next-size-adjust" content=""/><title>ShieldCortex</title><meta name="description" content="AI Memory Security Dashboard — Defence pipeline, audit logs, quarantine review"/><script>
2
2
  try {
3
3
  var t = localStorage.getItem('sc-theme');
4
4
  if (t !== 'glass' && t !== 'terminal') t = 'terminal';
@@ -6,4 +6,4 @@ try {
6
6
  } catch (e) {
7
7
  document.documentElement.dataset.theme = 'terminal';
8
8
  }
9
- </script><script src="/_next/static/chunks/a6dad97d9634a72d.js" noModule=""></script></head><body class="geist_a71539c9-module__T19VSG__variable geist_mono_8d43a2aa-module__8Li5zG__variable antialiased bg-slate-950"><div hidden=""><!--$--><!--/$--></div><div class="flex h-dvh w-full overflow-hidden bg-[var(--sc-bg-deep)] text-[var(--sc-text-primary)]"><div class="contents theme-glass:hidden"><button type="button" class="fixed left-3 top-3 z-50 flex h-10 w-10 items-center justify-center rounded-md bg-[var(--term-surface)] border border-[var(--term-border)] text-[var(--term-text-muted)] md:hidden" aria-label="Open navigation"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-menu" aria-hidden="true"><path d="M4 5h16"></path><path d="M4 12h16"></path><path d="M4 19h16"></path></svg></button><aside class="z-50 flex shrink-0 flex-col border-r border-[var(--term-border)] bg-[var(--term-bg)] transition-[width] duration-200 fixed inset-y-0 left-0 md:relative -translate-x-full md:translate-x-0 w-14"><div class="flex h-12 items-center gap-2 border-b border-[var(--term-border)] px-3"><span class="text-[var(--term-electric-fg)] font-mono text-sm" aria-hidden="true">$</span><div class="overflow-hidden whitespace-nowrap transition-opacity duration-200 opacity-0"><span class="font-mono text-sm text-[var(--term-text)]">shieldcortex</span><span class="cli-cursor text-[var(--term-electric-fg)] ml-1" aria-hidden="true"></span></div></div><nav class="flex-1 overflow-y-auto py-3 px-1.5 font-mono text-sm" role="navigation" aria-label="Main navigation"><a aria-current="page" class="group flex items-center gap-2 rounded-sm px-2 py-1.5 transition-colors focus-visible:outline-1 focus-visible:outline-offset-1 focus-visible:outline-[var(--term-electric)] text-[var(--term-electric-fg)] bg-[var(--term-surface-2)]" href="/overview"><span class="w-3 shrink-0 select-none text-[var(--term-electric-fg)]" aria-hidden="true">&gt;</span><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-house shrink-0" aria-hidden="true"><path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"></path><path d="M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path></svg><span class="overflow-hidden whitespace-nowrap transition-opacity duration-200 opacity-0">Overview</span></a><a class="group flex items-center gap-2 rounded-sm px-2 py-1.5 transition-colors focus-visible:outline-1 focus-visible:outline-offset-1 focus-visible:outline-[var(--term-electric)] text-[var(--term-text-muted)] hover:text-[var(--term-text)]" href="/memory"><span class="w-3 shrink-0 select-none text-transparent" aria-hidden="true"> </span><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database shrink-0" aria-hidden="true"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg><span class="overflow-hidden whitespace-nowrap transition-opacity duration-200 opacity-0">Memory</span></a><a class="group flex items-center gap-2 rounded-sm px-2 py-1.5 transition-colors focus-visible:outline-1 focus-visible:outline-offset-1 focus-visible:outline-[var(--term-electric)] text-[var(--term-text-muted)] hover:text-[var(--term-text)]" href="/protection"><span class="w-3 shrink-0 select-none text-transparent" aria-hidden="true"> </span><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield shrink-0" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path></svg><span class="overflow-hidden whitespace-nowrap transition-opacity duration-200 opacity-0">Protection</span></a><a class="group flex items-center gap-2 rounded-sm px-2 py-1.5 transition-colors focus-visible:outline-1 focus-visible:outline-offset-1 focus-visible:outline-[var(--term-electric)] text-[var(--term-text-muted)] hover:text-[var(--term-text)]" href="/xray"><span class="w-3 shrink-0 select-none text-transparent" aria-hidden="true"> </span><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scan-search shrink-0" aria-hidden="true"><path d="M3 7V5a2 2 0 0 1 2-2h2"></path><path d="M17 3h2a2 2 0 0 1 2 2v2"></path><path d="M21 17v2a2 2 0 0 1-2 2h-2"></path><path d="M7 21H5a2 2 0 0 1-2-2v-2"></path><circle cx="12" cy="12" r="3"></circle><path d="m16 16-1.9-1.9"></path></svg><span class="overflow-hidden whitespace-nowrap transition-opacity duration-200 opacity-0">X-Ray</span></a><a class="group flex items-center gap-2 rounded-sm px-2 py-1.5 transition-colors focus-visible:outline-1 focus-visible:outline-offset-1 focus-visible:outline-[var(--term-electric)] text-[var(--term-text-muted)] hover:text-[var(--term-text)]" href="/settings"><span class="w-3 shrink-0 select-none text-transparent" aria-hidden="true"> </span><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings shrink-0" aria-hidden="true"><path d="M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915"></path><circle cx="12" cy="12" r="3"></circle></svg><span class="overflow-hidden whitespace-nowrap transition-opacity duration-200 opacity-0">Settings</span></a></nav><div class="space-y-1 border-t border-[var(--term-border)] px-1.5 py-2 font-mono"><div class="flex items-center gap-2 px-2 py-1 text-[11px]"><span class="h-1.5 w-1.5 shrink-0 rounded-full bg-[var(--term-danger)] pulse-coral" aria-label="Real-time disconnected"></span><span class="overflow-hidden whitespace-nowrap text-[var(--term-text-muted)] transition-opacity duration-200 opacity-0">ws=<!-- -->down</span></div><div class="overflow-hidden whitespace-nowrap px-2 text-[10px] text-[var(--term-text-faint)] transition-opacity duration-200 opacity-0">v<!-- -->...</div></div></aside></div><div class="hidden theme-glass:contents"><button class="fixed left-3 top-3 z-50 flex h-10 w-10 items-center justify-center rounded-xl bg-[var(--sc-bg-surface)] border border-[var(--sc-border)] text-[var(--sc-text-secondary)] md:hidden" aria-label="Open navigation"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-menu" aria-hidden="true"><path d="M4 5h16"></path><path d="M4 12h16"></path><path d="M4 19h16"></path></svg></button><aside class="z-50 flex shrink-0 flex-col border-r border-[var(--sc-border)] bg-[var(--sc-bg-deep)] transition-all duration-300 fixed inset-y-0 left-0 md:relative -translate-x-full md:translate-x-0 w-16"><div class="flex h-16 items-center gap-3 border-b border-[var(--sc-border)] px-4"><div class="flex h-8 w-8 shrink-0 items-center justify-center rounded-lg bg-gradient-to-br from-[var(--sc-coral)] to-[var(--sc-coral-dark)]"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield text-white" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path></svg></div><div class="overflow-hidden whitespace-nowrap transition-all duration-300 w-0 opacity-0"><div class="text-[11px] font-semibold uppercase tracking-[0.2em] text-[var(--sc-coral)]">ShieldCortex</div><div class="text-xs text-[var(--sc-text-muted)]">Dashboard</div></div></div><nav class="flex-1 space-y-1 px-2 py-4" role="navigation" aria-label="Main navigation"><a aria-current="page" class="relative flex items-center gap-3 rounded-xl px-3 py-2.5 transition-all duration-200 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[var(--sc-cyan)] bg-[var(--sc-surface-interactive)] text-[var(--sc-text-primary)]" href="/overview"><div class="absolute left-0 top-1/2 h-5 w-0.5 -translate-y-1/2 rounded-r bg-[var(--sc-coral)]"></div><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-house shrink-0 text-[var(--sc-coral)]" aria-hidden="true"><path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"></path><path d="M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path></svg><span class="overflow-hidden whitespace-nowrap text-sm font-medium transition-all duration-300 w-0 opacity-0">Overview</span></a><a class="relative flex items-center gap-3 rounded-xl px-3 py-2.5 transition-all duration-200 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[var(--sc-cyan)] text-[var(--sc-text-muted)] hover:bg-[var(--sc-surface-interactive)] hover:text-[var(--sc-text-secondary)]" href="/memory"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database shrink-0" aria-hidden="true"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg><span class="overflow-hidden whitespace-nowrap text-sm font-medium transition-all duration-300 w-0 opacity-0">Memory</span></a><a class="relative flex items-center gap-3 rounded-xl px-3 py-2.5 transition-all duration-200 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[var(--sc-cyan)] text-[var(--sc-text-muted)] hover:bg-[var(--sc-surface-interactive)] hover:text-[var(--sc-text-secondary)]" href="/protection"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield shrink-0" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path></svg><span class="overflow-hidden whitespace-nowrap text-sm font-medium transition-all duration-300 w-0 opacity-0">Protection</span></a><a class="relative flex items-center gap-3 rounded-xl px-3 py-2.5 transition-all duration-200 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[var(--sc-cyan)] text-[var(--sc-text-muted)] hover:bg-[var(--sc-surface-interactive)] hover:text-[var(--sc-text-secondary)]" href="/xray"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scan-search shrink-0" aria-hidden="true"><path d="M3 7V5a2 2 0 0 1 2-2h2"></path><path d="M17 3h2a2 2 0 0 1 2 2v2"></path><path d="M21 17v2a2 2 0 0 1-2 2h-2"></path><path d="M7 21H5a2 2 0 0 1-2-2v-2"></path><circle cx="12" cy="12" r="3"></circle><path d="m16 16-1.9-1.9"></path></svg><span class="overflow-hidden whitespace-nowrap text-sm font-medium transition-all duration-300 w-0 opacity-0">X-Ray</span></a><a class="relative flex items-center gap-3 rounded-xl px-3 py-2.5 transition-all duration-200 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[var(--sc-cyan)] text-[var(--sc-text-muted)] hover:bg-[var(--sc-surface-interactive)] hover:text-[var(--sc-text-secondary)]" href="/settings"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings shrink-0" aria-hidden="true"><path d="M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915"></path><circle cx="12" cy="12" r="3"></circle></svg><span class="overflow-hidden whitespace-nowrap text-sm font-medium transition-all duration-300 w-0 opacity-0">Settings</span></a></nav><div class="space-y-2 border-t border-[var(--sc-border)] px-2 py-3"><div class="flex items-center gap-3 px-3 py-1"><span class="h-2 w-2 shrink-0 rounded-full bg-[var(--sc-coral)] pulse-coral" aria-label="Real-time disconnected"></span><span class="overflow-hidden whitespace-nowrap text-[11px] text-[var(--sc-text-muted)] transition-all duration-300 w-0 opacity-0">Disconnected</span></div><div class="overflow-hidden whitespace-nowrap px-3 font-mono text-[10px] text-[var(--sc-text-muted)] transition-all duration-300 h-0 opacity-0">v<!-- -->...</div></div></aside></div><div class="flex min-w-0 flex-1 flex-col"><div class="flex items-center gap-3 border-b border-[var(--sc-border)] bg-[var(--sc-bg-surface)]/30 px-4 py-2 text-[11px] text-[var(--sc-text-muted)]"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-activity animate-pulse" aria-hidden="true"><path d="M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2"></path></svg> Loading activity…</div><div class="theme-glass:hidden flex items-center gap-3 border-b border-[var(--term-border)] bg-[var(--term-surface)] px-4 py-1.5 font-mono text-xs"><span class="text-[var(--term-text-muted)]">project</span><span class="text-[var(--term-text-muted)]" aria-hidden="true">=</span><select id="project-filter" class="rounded-sm border border-[var(--term-border)] bg-[var(--term-surface-2)] px-2 py-0.5 text-xs text-[var(--term-text)] font-mono focus:outline-none focus:border-[var(--term-electric)]" aria-label="Filter dashboard by project"><option value="" selected="">*</option></select></div><div class="hidden theme-glass:flex items-center gap-2 border-b border-[var(--sc-border)] bg-[var(--sc-bg-surface)]/40 px-4 py-2 backdrop-blur-sm"><svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-funnel text-[var(--sc-text-muted)]" aria-hidden="true"><path d="M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z"></path></svg><label for="project-filter-glass" class="text-xs uppercase tracking-[0.14em] text-[var(--sc-text-muted)]">Project</label><select id="project-filter-glass" class="rounded-md border border-[var(--sc-border)] bg-[var(--sc-bg-deep)] px-2 py-1 text-xs text-[var(--sc-text-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--sc-cyan)]" aria-label="Filter dashboard by project (glass)"><option value="" selected="">All projects</option></select></div><main class="min-w-0 flex-1 overflow-auto"><div class="contents theme-glass:hidden"><div class="h-full overflow-y-auto"><div class="mx-auto max-w-7xl space-y-6 p-6"><div class="space-y-3 theme-glass:space-y-4"><div class="flex flex-col gap-2 sm:flex-row sm:items-start sm:justify-between sm:gap-4 theme-glass:gap-3"><div class="min-w-0"><div class="theme-glass:hidden"><p class="text-[11px] uppercase tracking-wider text-[var(--term-text-muted)]"><span class="text-[var(--term-electric-fg)]">›</span> <!-- -->command-centre</p><h1 class="mt-1 flex items-baseline flex-wrap gap-2 text-base font-mono text-[var(--term-text)] sm:text-lg"><span class="text-[var(--term-electric-fg)]" aria-hidden="true">$</span><span>shieldcortex</span><span class="text-[var(--term-text-dim)]">overview</span><span class="cli-cursor text-[var(--term-electric-fg)]" aria-hidden="true"></span></h1><p class="mt-1 text-xs text-[var(--term-text-muted)]"><span aria-hidden="true">#</span> <!-- -->Stored-memory health, memory-file findings, threat pressure, operational status.</p></div><div class="hidden theme-glass:block"><p class="text-[10px] font-semibold uppercase tracking-[0.2em] text-[var(--sc-coral)] sm:text-[11px]">command-centre</p><h1 class="mt-1 text-xl font-bold text-[var(--sc-text-primary)] sm:text-2xl">overview</h1><p class="mt-1 text-xs text-[var(--sc-text-secondary)] sm:text-sm">Stored-memory health, memory-file findings, threat pressure, operational status.</p></div></div></div></div><div class="grid grid-cols-1 gap-6 lg:grid-cols-2"><div class="glass-card overflow-hidden"><div class="flex items-center gap-2 px-4 py-2 border-b border-[var(--term-border)] bg-[var(--term-surface-2)] theme-glass:hidden"><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-red)]"></span><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-yellow)]"></span><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-green)]"></span><span class="ml-2 text-xs select-none truncate text-[var(--term-text-muted)]">memory.stats</span></div><div class=""><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">stored.total</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-neon-fg)]">0</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">stored.total</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-cyan)]/10"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database text-[var(--sc-cyan)]" aria-hidden="true"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg></div></div></div><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">health.percent</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-electric-fg)]">0%</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">health.percent</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0%</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-coral)]/10"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield text-[var(--sc-coral)]" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path></svg></div></div></div><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">quality.duplicates</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-text)]">0</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">quality.duplicates</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-surface-interactive)]"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database text-[var(--sc-text-secondary)]" aria-hidden="true"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg></div></div></div><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-clock3 lucide-clock-3 text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><path d="M12 6v6h4"></path><circle cx="12" cy="12" r="10"></circle></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">quality.stale</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-text)]">0</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">quality.stale</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-surface-interactive)]"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-clock3 lucide-clock-3 text-[var(--sc-text-secondary)]" aria-hidden="true"><path d="M12 6v6h4"></path><circle cx="12" cy="12" r="10"></circle></svg></div></div></div><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">quality.unused</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-text)]">0</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">quality.unused</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-surface-interactive)]"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database text-[var(--sc-text-secondary)]" aria-hidden="true"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg></div></div></div></div><div class="px-4 py-2 text-xs border-t border-[var(--term-border)] bg-[var(--term-surface-2)] text-[var(--term-text-muted)] theme-glass:hidden">healthy=0 · fading=0 · critical=0</div></div><div class="glass-card overflow-hidden"><div class="flex items-center gap-2 px-4 py-2 border-b border-[var(--term-border)] bg-[var(--term-surface-2)] theme-glass:hidden"><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-red)]"></span><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-yellow)]"></span><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-green)]"></span><span class="ml-2 text-xs select-none truncate text-[var(--term-text-muted)]">protection.stats</span></div><div class=""><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield-alert text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path><path d="M12 8v4"></path><path d="M12 16h.01"></path></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">threats.blocked</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-text)]">0</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">threats.blocked</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-surface-interactive)]"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield-alert text-[var(--sc-text-secondary)]" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path><path d="M12 8v4"></path><path d="M12 16h.01"></path></svg></div></div></div><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-file-text text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><path d="M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"></path><path d="M14 2v5a1 1 0 0 0 1 1h5"></path><path d="M10 9H8"></path><path d="M16 13H8"></path><path d="M16 17H8"></path></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">memory.file.flags</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-text)]">0</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">memory.file.flags</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-surface-interactive)]"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-file-text text-[var(--sc-text-secondary)]" aria-hidden="true"><path d="M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"></path><path d="M14 2v5a1 1 0 0 0 1 1h5"></path><path d="M10 9H8"></path><path d="M16 13H8"></path><path d="M16 17H8"></path></svg></div></div></div><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-triangle-alert text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"></path><path d="M12 9v4"></path><path d="M12 17h.01"></path></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">quarantine.pending</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-text)]">0</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">quarantine.pending</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-surface-interactive)]"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-triangle-alert text-[var(--sc-text-secondary)]" aria-hidden="true"><path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"></path><path d="M12 9v4"></path><path d="M12 17h.01"></path></svg></div></div></div><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-triangle-alert text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"></path><path d="M12 9v4"></path><path d="M12 17h.01"></path></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">contradictions</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-text)]">0</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">contradictions</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-surface-interactive)]"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-triangle-alert text-[var(--sc-text-secondary)]" aria-hidden="true"><path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"></path><path d="M12 9v4"></path><path d="M12 17h.01"></path></svg></div></div></div><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scan-search text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><path d="M3 7V5a2 2 0 0 1 2-2h2"></path><path d="M17 3h2a2 2 0 0 1 2 2v2"></path><path d="M21 17v2a2 2 0 0 1-2 2h-2"></path><path d="M7 21H5a2 2 0 0 1-2-2v-2"></path><circle cx="12" cy="12" r="3"></circle><path d="m16 16-1.9-1.9"></path></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">xray.scans</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-neon-fg)]">0</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">xray.scans</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-cyan)]/10"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scan-search text-[var(--sc-cyan)]" aria-hidden="true"><path d="M3 7V5a2 2 0 0 1 2-2h2"></path><path d="M17 3h2a2 2 0 0 1 2 2v2"></path><path d="M21 17v2a2 2 0 0 1-2 2h-2"></path><path d="M7 21H5a2 2 0 0 1-2-2v-2"></path><circle cx="12" cy="12" r="3"></circle><path d="m16 16-1.9-1.9"></path></svg></div></div></div></div><div class="px-4 py-2 text-xs border-t border-[var(--term-border)] bg-[var(--term-surface-2)] text-[var(--term-text-muted)] theme-glass:hidden">window=24h · blocked=0 · pending=0</div></div></div><div class="grid grid-cols-1 gap-6 lg:grid-cols-2"><div class="glass-card overflow-hidden"><div class="flex items-center gap-2 px-4 py-2 border-b border-[var(--term-border)] bg-[var(--term-surface-2)] theme-glass:hidden"><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-red)]"></span><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-yellow)]"></span><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-green)]"></span><span class="ml-2 text-xs select-none truncate text-[var(--term-text-muted)]">memory.health</span></div><div class="p-5"><div class="flex items-center justify-center py-2"><div class="relative h-36 w-36"><svg viewBox="0 0 100 100" class="h-full w-full -rotate-90" aria-hidden="true"><circle cx="50" cy="50" r="42" fill="none" stroke="var(--term-surface-2)" stroke-width="6"></circle><circle cx="50" cy="50" r="42" fill="none" stroke="var(--term-neon)" stroke-width="6" stroke-dasharray="0 264" stroke-linecap="butt"></circle></svg><div class="absolute inset-0 flex flex-col items-center justify-center font-mono"><span class="text-2xl text-[var(--term-text)] tabular-nums">0<!-- -->%</span><span class="text-[10px] text-[var(--term-text-muted)] uppercase tracking-wider">healthy</span></div></div></div><div class="mt-2 grid grid-cols-3 gap-3 text-center font-mono text-xs"><div><div class="text-base text-[var(--term-neon-fg)] tabular-nums">0</div><div class="text-[10px] text-[var(--term-text-muted)] uppercase tracking-wider">healthy</div></div><div><div class="text-base text-[var(--term-warn)] tabular-nums">0</div><div class="text-[10px] text-[var(--term-text-muted)] uppercase tracking-wider">fading</div></div><div><div class="text-base text-[var(--term-danger)] tabular-nums">0</div><div class="text-[10px] text-[var(--term-text-muted)] uppercase tracking-wider">critical</div></div></div></div><div class="px-4 py-2 text-xs border-t border-[var(--term-border)] bg-[var(--term-surface-2)] text-[var(--term-text-muted)] theme-glass:hidden">decay distribution across stored memories</div></div><div class="glass-card overflow-hidden"><div class="flex items-center gap-2 px-4 py-2 border-b border-[var(--term-border)] bg-[var(--term-surface-2)] theme-glass:hidden"><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-red)]"></span><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-yellow)]"></span><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-green)]"></span><span class="ml-2 text-xs select-none truncate text-[var(--term-text-muted)]">alerts.urgent</span></div><div class=""><div class="flex items-center gap-3 px-4 py-6"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-check shrink-0 text-[var(--term-neon-fg)]" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="m9 12 2 2 4-4"></path></svg><div class="font-mono text-sm"><p class="text-[var(--term-text)]"><span class="text-[var(--term-neon-fg)]">[OK]</span> all clear</p><p class="text-xs text-[var(--term-text-muted)] mt-0.5"># no urgent issues right now</p></div></div></div><div class="px-4 py-2 text-xs border-t border-[var(--term-border)] bg-[var(--term-surface-2)] text-[var(--term-text-muted)] theme-glass:hidden">no urgent items</div></div></div><div class="glass-card overflow-hidden"><div class="flex items-center gap-2 px-4 py-2 border-b border-[var(--term-border)] bg-[var(--term-surface-2)] theme-glass:hidden"><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-red)]"></span><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-yellow)]"></span><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-green)]"></span><span class="ml-2 text-xs select-none truncate text-[var(--term-text-muted)]">quick.actions</span></div><div class=""><ul class="font-mono text-sm"><li class="border-b border-[var(--term-border)] last:border-0"><a class="flex items-center gap-3 px-4 py-2.5 hover:bg-[var(--term-surface-2)] transition-colors" href="/xray"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scan-search shrink-0 text-[var(--term-electric-fg)]" aria-hidden="true"><path d="M3 7V5a2 2 0 0 1 2-2h2"></path><path d="M17 3h2a2 2 0 0 1 2 2v2"></path><path d="M21 17v2a2 2 0 0 1-2 2h-2"></path><path d="M7 21H5a2 2 0 0 1-2-2v-2"></path><circle cx="12" cy="12" r="3"></circle><path d="m16 16-1.9-1.9"></path></svg><span class="text-[var(--term-electric-fg)]">$</span><span class="text-[var(--term-text)] truncate">shieldcortex xray</span><span class="ml-auto truncate text-[var(--term-text-muted)] text-xs"># <!-- -->inspect packages and files for hidden risk</span></a></li><li class="border-b border-[var(--term-border)] last:border-0"><a class="flex items-center gap-3 px-4 py-2.5 hover:bg-[var(--term-surface-2)] transition-colors" href="/protection?tab=quarantine"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-triangle-alert shrink-0 text-[var(--term-warn)]" aria-hidden="true"><path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"></path><path d="M12 9v4"></path><path d="M12 17h.01"></path></svg><span class="text-[var(--term-electric-fg)]">$</span><span class="text-[var(--term-text)] truncate">shieldcortex quarantine review</span><span class="ml-auto truncate text-[var(--term-text-muted)] text-xs"># <!-- -->0 items pending</span></a></li><li class="border-b border-[var(--term-border)] last:border-0"><a class="flex items-center gap-3 px-4 py-2.5 hover:bg-[var(--term-surface-2)] transition-colors" href="/memory?tab=recall"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database shrink-0 text-[var(--term-electric-fg)]" aria-hidden="true"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg><span class="text-[var(--term-electric-fg)]">$</span><span class="text-[var(--term-text)] truncate">shieldcortex recall debug</span><span class="ml-auto truncate text-[var(--term-text-muted)] text-xs"># <!-- -->test queries and inspect ranking factors</span></a></li><li class="border-b border-[var(--term-border)] last:border-0"><a class="flex items-center gap-3 px-4 py-2.5 hover:bg-[var(--term-surface-2)] transition-colors" href="/protection?tab=dome"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield-alert shrink-0 text-[var(--term-danger)]" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path><path d="M12 8v4"></path><path d="M12 16h.01"></path></svg><span class="text-[var(--term-electric-fg)]">$</span><span class="text-[var(--term-text)] truncate">shieldcortex iron-dome status</span><span class="ml-auto truncate text-[var(--term-text-muted)] text-xs"># <!-- -->kill switch and behaviour gates</span></a></li></ul></div></div><div class="glass-card overflow-hidden"><div class="flex items-center gap-2 px-4 py-2 border-b border-[var(--term-border)] bg-[var(--term-surface-2)] theme-glass:hidden"><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-red)]"></span><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-yellow)]"></span><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-green)]"></span><span class="ml-2 text-xs select-none truncate text-[var(--term-text-muted)]">licence</span></div><div class="p-5"><div class="flex items-center justify-between font-mono"><div><p class="text-sm text-[var(--term-text)]"><span class="text-[var(--term-text-muted)]">tier</span><span class="text-[var(--term-text-muted)] mx-2">=</span><span class="text-[var(--term-electric-fg)]">Free</span></p><p class="mt-1 text-xs text-[var(--term-text-muted)]"># current tier and feature access</p></div><span class="inline-flex items-center gap-1.5 px-1 text-[11px] font-semibold uppercase tracking-wider whitespace-nowrap text-[var(--term-text-muted)] theme-glass:rounded-full theme-glass:border theme-glass:px-2.5 theme-glass:py-0.5 theme-glass:bg-[var(--sc-surface-interactive)] theme-glass:border-[var(--sc-border)]"><span aria-hidden="true" class="text-[var(--term-text-muted)] theme-glass:hidden">[</span><span>Free</span><span aria-hidden="true" class="text-[var(--term-text-muted)] theme-glass:hidden">]</span></span></div><div class="mt-4 flex items-center gap-4 border border-[var(--term-border)] bg-[var(--term-surface-2)] p-3 rounded-md font-mono text-sm"><div class="flex-1"><p class="text-[var(--term-text)]">unlock deep scanning, custom policies, and audit exports</p><p class="mt-1 text-xs text-[var(--term-text-muted)]"># pro starts at £29/mo · 10K cloud scans · 90-day retention</p></div><a href="https://shieldcortex.ai/pricing" target="_blank" rel="noopener noreferrer"><button class="inline-flex items-center justify-center gap-2 rounded-md font-mono transition-colors focus-visible:outline-1 focus-visible:outline-offset-2 focus-visible:outline-[var(--term-electric)] disabled:pointer-events-none disabled:opacity-50 border border-[var(--term-electric)] text-[var(--term-electric-fg)] bg-transparent hover:bg-[var(--term-electric)]/10 px-2 py-1 text-xs theme-glass:font-semibold theme-glass:transition-all theme-glass:hover:-translate-y-0.5 theme-glass:border-0 theme-glass:bg-gradient-to-br theme-glass:from-[var(--sc-coral)] theme-glass:to-[var(--sc-coral-dark)] theme-glass:text-white theme-glass:hover:shadow-[0_8px_30px_var(--sc-glow-coral-mid)] theme-glass:px-3 theme-glass:py-1.5 theme-glass:text-xs theme-glass:rounded-lg" type="button"><span class="inline-flex items-center gap-2 theme-glass:hidden"><span class="text-[var(--term-text-muted)]" aria-hidden="true">[</span><span class="leading-none">upgrade</span><span class="text-[var(--term-text-muted)]" aria-hidden="true">]</span></span><span class="hidden theme-glass:inline-flex items-center gap-2">upgrade</span></button></a></div></div><div class="px-4 py-2 text-xs border-t border-[var(--term-border)] bg-[var(--term-surface-2)] text-[var(--term-text-muted)] theme-glass:hidden">tier=free</div></div></div></div></div><div class="hidden theme-glass:contents"><div class="h-full overflow-y-auto"><div class="mx-auto max-w-7xl space-y-6 p-6"><div class="space-y-3 theme-glass:space-y-4"><div class="flex flex-col gap-2 sm:flex-row sm:items-start sm:justify-between sm:gap-4 theme-glass:gap-3"><div class="min-w-0"><div class="theme-glass:hidden"><p class="text-[11px] uppercase tracking-wider text-[var(--term-text-muted)]"><span class="text-[var(--term-electric-fg)]">›</span> <!-- -->ShieldCortex</p><h1 class="mt-1 flex items-baseline flex-wrap gap-2 text-base font-mono text-[var(--term-text)] sm:text-lg"><span class="text-[var(--term-electric-fg)]" aria-hidden="true">$</span><span>shieldcortex</span><span class="text-[var(--term-text-dim)]">command centre</span><span class="cli-cursor text-[var(--term-electric-fg)]" aria-hidden="true"></span></h1><p class="mt-1 text-xs text-[var(--term-text-muted)]"><span aria-hidden="true">#</span> <!-- -->Stored-memory health, memory-file findings, threat pressure, and operational status at a glance.</p></div><div class="hidden theme-glass:block"><p class="text-[10px] font-semibold uppercase tracking-[0.2em] text-[var(--sc-coral)] sm:text-[11px]">ShieldCortex</p><h1 class="mt-1 text-xl font-bold text-[var(--sc-text-primary)] sm:text-2xl">Command Centre</h1><p class="mt-1 text-xs text-[var(--sc-text-secondary)] sm:text-sm">Stored-memory health, memory-file findings, threat pressure, and operational status at a glance.</p></div></div></div></div><div class="grid grid-cols-2 gap-4 lg:grid-cols-5"><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">Stored Memories</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-neon-fg)]">0</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">Stored Memories</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-cyan)]/10"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database text-[var(--sc-cyan)]" aria-hidden="true"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg></div></div></div><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-file-text text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><path d="M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"></path><path d="M14 2v5a1 1 0 0 0 1 1h5"></path><path d="M10 9H8"></path><path d="M16 13H8"></path><path d="M16 17H8"></path></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">Memory Files Flagged</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-text)]">0</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">Memory Files Flagged</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-surface-interactive)]"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-file-text text-[var(--sc-text-secondary)]" aria-hidden="true"><path d="M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"></path><path d="M14 2v5a1 1 0 0 0 1 1h5"></path><path d="M10 9H8"></path><path d="M16 13H8"></path><path d="M16 17H8"></path></svg></div></div></div><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield-alert text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path><path d="M12 8v4"></path><path d="M12 16h.01"></path></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">Threats Blocked</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-text)]">0</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">Threats Blocked</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-surface-interactive)]"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield-alert text-[var(--sc-text-secondary)]" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path><path d="M12 8v4"></path><path d="M12 16h.01"></path></svg></div></div></div><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scan-search text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><path d="M3 7V5a2 2 0 0 1 2-2h2"></path><path d="M17 3h2a2 2 0 0 1 2 2v2"></path><path d="M21 17v2a2 2 0 0 1-2 2h-2"></path><path d="M7 21H5a2 2 0 0 1-2-2v-2"></path><circle cx="12" cy="12" r="3"></circle><path d="m16 16-1.9-1.9"></path></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">X-Ray Scans</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-neon-fg)]">0</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">X-Ray Scans</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-cyan)]/10"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scan-search text-[var(--sc-cyan)]" aria-hidden="true"><path d="M3 7V5a2 2 0 0 1 2-2h2"></path><path d="M17 3h2a2 2 0 0 1 2 2v2"></path><path d="M21 17v2a2 2 0 0 1-2 2h-2"></path><path d="M7 21H5a2 2 0 0 1-2-2v-2"></path><circle cx="12" cy="12" r="3"></circle><path d="m16 16-1.9-1.9"></path></svg></div></div></div><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">Health Score</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-electric-fg)]">0%</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">Health Score</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0%</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-coral)]/10"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield text-[var(--sc-coral)]" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path></svg></div></div></div></div><div class="grid grid-cols-1 gap-6 lg:grid-cols-[1fr_1fr]"><div class="glass-card overflow-hidden p-6"><div class="p-5"><h3 class="text-lg font-semibold text-[var(--sc-text-primary)]">Stored Memory Health</h3><p class="mt-1 text-sm text-[var(--sc-text-muted)]">Decay distribution across ShieldCortex stored memories.</p><div class="mt-6 flex items-center justify-center"><div class="relative h-40 w-40"><svg viewBox="0 0 100 100" class="h-full w-full -rotate-90"><circle cx="50" cy="50" r="42" fill="none" stroke="var(--sc-bg-elevated)" stroke-width="8"></circle><circle cx="50" cy="50" r="42" fill="none" stroke="var(--sc-cyan)" stroke-width="8" stroke-dasharray="0 264" stroke-linecap="round" class="transition-all duration-1000"></circle></svg><div class="absolute inset-0 flex flex-col items-center justify-center"><span class="text-3xl font-bold text-[var(--sc-text-primary)]">0<!-- -->%</span><span class="text-xs text-[var(--sc-text-muted)]">healthy</span></div></div></div><div class="mt-6 grid grid-cols-3 gap-3 text-center"><div><div class="text-lg font-semibold text-[var(--sc-cyan)]">0</div><div class="text-xs text-[var(--sc-text-muted)]">Healthy</div></div><div><div class="text-lg font-semibold text-[var(--sc-amber)]">0</div><div class="text-xs text-[var(--sc-text-muted)]">Fading</div></div><div><div class="text-lg font-semibold text-[var(--sc-coral)]">0</div><div class="text-xs text-[var(--sc-text-muted)]">Critical</div></div></div></div></div><div class="glass-card overflow-hidden p-6"><div class="p-5"><div class="flex items-center justify-between"><h3 class="text-lg font-semibold text-[var(--sc-text-primary)]">Urgent Actions</h3></div><p class="mt-1 text-sm text-[var(--sc-text-muted)]">Quickest wins for trust, safety, and recall quality.</p><div class="mt-4 space-y-3"><div class="flex items-center gap-3 rounded-xl bg-[var(--sc-bg-elevated)] p-4"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-check shrink-0 text-[var(--sc-cyan)]" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="m9 12 2 2 4-4"></path></svg><div><p class="text-sm font-medium text-[var(--sc-text-primary)]">All clear</p><p class="text-xs text-[var(--sc-text-muted)]">No urgent issues right now. Memory health looks stable.</p></div></div></div></div></div></div><div class="grid grid-cols-2 gap-4 lg:grid-cols-4"><a href="/xray"><div class="glass-card overflow-hidden glass-card-hover cursor-pointer p-5"><div class="p-5"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scan-search text-[var(--sc-cyan)]" aria-hidden="true"><path d="M3 7V5a2 2 0 0 1 2-2h2"></path><path d="M17 3h2a2 2 0 0 1 2 2v2"></path><path d="M21 17v2a2 2 0 0 1-2 2h-2"></path><path d="M7 21H5a2 2 0 0 1-2-2v-2"></path><circle cx="12" cy="12" r="3"></circle><path d="m16 16-1.9-1.9"></path></svg><p class="mt-3 text-sm font-semibold text-[var(--sc-text-primary)]">Run X-Ray Scan</p><p class="mt-1 text-xs text-[var(--sc-text-muted)]">Inspect packages and files for hidden risk.</p></div></div></a><a href="/protection?tab=quarantine"><div class="glass-card overflow-hidden glass-card-hover cursor-pointer p-5"><div class="p-5"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-triangle-alert text-[var(--sc-amber)]" aria-hidden="true"><path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"></path><path d="M12 9v4"></path><path d="M12 17h.01"></path></svg><p class="mt-3 text-sm font-semibold text-[var(--sc-text-primary)]">Review Quarantine</p><p class="mt-1 text-xs text-[var(--sc-text-muted)]">0 items pending review.</p></div></div></a><a href="/memory?tab=recall"><div class="glass-card overflow-hidden glass-card-hover cursor-pointer p-5"><div class="p-5"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database text-[var(--sc-cyan)]" aria-hidden="true"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg><p class="mt-3 text-sm font-semibold text-[var(--sc-text-primary)]">Debug Recall</p><p class="mt-1 text-xs text-[var(--sc-text-muted)]">Test queries and inspect ranking factors.</p></div></div></a><a href="/protection?tab=dome"><div class="glass-card overflow-hidden glass-card-hover cursor-pointer p-5"><div class="p-5"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield-alert text-[var(--sc-coral)]" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path><path d="M12 8v4"></path><path d="M12 16h.01"></path></svg><p class="mt-3 text-sm font-semibold text-[var(--sc-text-primary)]">Iron Dome</p><p class="mt-1 text-xs text-[var(--sc-text-muted)]">Kill switch and behaviour gates.</p></div></div></a></div><div class="glass-card overflow-hidden p-6"><div class="p-5"><div class="flex items-center justify-between"><div><h3 class="text-lg font-semibold text-[var(--sc-text-primary)]">Licence</h3><p class="mt-1 text-sm text-[var(--sc-text-muted)]">Current tier and feature access.</p></div><span class="inline-flex items-center gap-1.5 px-1 text-[11px] font-semibold uppercase tracking-wider whitespace-nowrap text-[var(--term-text-muted)] theme-glass:rounded-full theme-glass:border theme-glass:px-2.5 theme-glass:py-0.5 theme-glass:bg-[var(--sc-surface-interactive)] theme-glass:border-[var(--sc-border)]"><span aria-hidden="true" class="text-[var(--term-text-muted)] theme-glass:hidden">[</span><span>Free</span><span aria-hidden="true" class="text-[var(--term-text-muted)] theme-glass:hidden">]</span></span></div></div></div></div></div></div><!--$--><!--/$--><section aria-label="Notifications alt+T" tabindex="-1" aria-live="polite" aria-relevant="additions text" aria-atomic="false"></section></main></div></div><script src="/_next/static/chunks/d878b929b21636c4.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[36111,[\"/_next/static/chunks/8a5b61fd5e1bbcfa.js\"],\"Providers\"]\n3:I[57043,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"default\"]\n4:I[10445,[\"/_next/static/chunks/8a5b61fd5e1bbcfa.js\",\"/_next/static/chunks/d334b69bff7779be.js\"],\"default\"]\n5:I[27657,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"default\"]\n6:I[48416,[\"/_next/static/chunks/8a5b61fd5e1bbcfa.js\",\"/_next/static/chunks/e804a1fda2839550.js\",\"/_next/static/chunks/3729c748a4361c1f.js\",\"/_next/static/chunks/e9f4b8da354f1005.js\"],\"Sidebar\"]\n7:I[31971,[\"/_next/static/chunks/8a5b61fd5e1bbcfa.js\",\"/_next/static/chunks/e804a1fda2839550.js\",\"/_next/static/chunks/3729c748a4361c1f.js\",\"/_next/static/chunks/e9f4b8da354f1005.js\"],\"DailyMomentBar\"]\n8:I[4979,[\"/_next/static/chunks/8a5b61fd5e1bbcfa.js\",\"/_next/static/chunks/e804a1fda2839550.js\",\"/_next/static/chunks/3729c748a4361c1f.js\",\"/_next/static/chunks/e9f4b8da354f1005.js\"],\"ProjectFilterBar\"]\n9:I[74792,[\"/_next/static/chunks/8a5b61fd5e1bbcfa.js\",\"/_next/static/chunks/e804a1fda2839550.js\",\"/_next/static/chunks/3729c748a4361c1f.js\",\"/_next/static/chunks/e9f4b8da354f1005.js\",\"/_next/static/chunks/d2f861595d6a41df.js\"],\"default\"]\na:I[24478,[\"/_next/static/chunks/8a5b61fd5e1bbcfa.js\",\"/_next/static/chunks/e804a1fda2839550.js\",\"/_next/static/chunks/3729c748a4361c1f.js\",\"/_next/static/chunks/e9f4b8da354f1005.js\"],\"ToastProvider\"]\nb:I[4167,[\"/_next/static/chunks/8a5b61fd5e1bbcfa.js\",\"/_next/static/chunks/e804a1fda2839550.js\",\"/_next/static/chunks/3729c748a4361c1f.js\",\"/_next/static/chunks/e9f4b8da354f1005.js\"],\"BlockToastBridge\"]\n10:I[30687,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"default\"]\n:HL[\"/_next/static/chunks/2473c16c0c2f6b5f.css\",\"style\"]\n:HL[\"/_next/static/chunks/bf725d638cce46d4.css\",\"style\"]\n:HL[\"/_next/static/media/797e433ab948586e-s.p.dbea232f.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/caa3a2e1cccd8315-s.p.853070df.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"10a_MRwbHFUuDdfr86RUu\",\"c\":[\"\",\"overview\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"(dashboard)\",{\"children\":[\"overview\",{\"children\":[\"__PAGE__\",{}]}]}]},\"$undefined\",\"$undefined\",true],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/2473c16c0c2f6b5f.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/bf725d638cce46d4.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/8a5b61fd5e1bbcfa.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"dark\",\"data-theme\":\"terminal\",\"suppressHydrationWarning\":true,\"children\":[[\"$\",\"head\",null,{\"children\":[\"$\",\"script\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"\\ntry {\\n var t = localStorage.getItem('sc-theme');\\n if (t !== 'glass' \u0026\u0026 t !== 'terminal') t = 'terminal';\\n document.documentElement.dataset.theme = t;\\n} catch (e) {\\n document.documentElement.dataset.theme = 'terminal';\\n}\\n\"}}]}],[\"$\",\"body\",null,{\"className\":\"geist_a71539c9-module__T19VSG__variable geist_mono_8d43a2aa-module__8Li5zG__variable antialiased bg-slate-950\",\"children\":[\"$\",\"$L2\",null,{\"children\":[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$4\",\"errorStyles\":[],\"errorScripts\":[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/d334b69bff7779be.js\",\"async\":true}]],\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/e804a1fda2839550.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/3729c748a4361c1f.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-2\",{\"src\":\"/_next/static/chunks/e9f4b8da354f1005.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"div\",null,{\"className\":\"flex h-dvh w-full overflow-hidden bg-[var(--sc-bg-deep)] text-[var(--sc-text-primary)]\",\"children\":[[\"$\",\"$L6\",null,{}],[\"$\",\"div\",null,{\"className\":\"flex min-w-0 flex-1 flex-col\",\"children\":[[\"$\",\"$L7\",null,{}],[\"$\",\"$L8\",null,{}],[\"$\",\"main\",null,{\"className\":\"min-w-0 flex-1 overflow-auto\",\"children\":[[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$9\",\"errorStyles\":[],\"errorScripts\":[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/d2f861595d6a41df.js\",\"async\":true}]],\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:notFound:0:1:props:style\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}],[\"$\",\"$La\",null,{}],[\"$\",\"$Lb\",null,{}]]}]]}]]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[\"$Lc\",[\"$Ld\"],\"$Le\"]}],{},null,false,false]},null,false,false]},null,false,false]},null,false,false],\"$Lf\",false]],\"m\":\"$undefined\",\"G\":[\"$10\",[]],\"S\":true}\n"])</script><script>self.__next_f.push([1,"11:I[16339,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"ClientPageRoot\"]\n12:I[14612,[\"/_next/static/chunks/8a5b61fd5e1bbcfa.js\",\"/_next/static/chunks/e804a1fda2839550.js\",\"/_next/static/chunks/3729c748a4361c1f.js\",\"/_next/static/chunks/e9f4b8da354f1005.js\",\"/_next/static/chunks/8d4a0f601450b091.js\"],\"default\"]\n15:I[56978,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"OutletBoundary\"]\n16:\"$Sreact.suspense\"\n18:I[56978,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"ViewportBoundary\"]\n1a:I[56978,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"MetadataBoundary\"]\nc:[\"$\",\"$L11\",null,{\"Component\":\"$12\",\"serverProvidedParams\":{\"searchParams\":{},\"params\":{},\"promises\":[\"$@13\",\"$@14\"]}}]\nd:[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/8d4a0f601450b091.js\",\"async\":true,\"nonce\":\"$undefined\"}]\ne:[\"$\",\"$L15\",null,{\"children\":[\"$\",\"$16\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@17\"}]}]\nf:[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L18\",null,{\"children\":\"$L19\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L1a\",null,{\"children\":[\"$\",\"$16\",null,{\"name\":\"Next.Metadata\",\"children\":\"$L1b\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}]\n"])</script><script>self.__next_f.push([1,"13:{}\n14:\"$c:props:serverProvidedParams:params\"\n"])</script><script>self.__next_f.push([1,"19:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"17:null\n1b:[[\"$\",\"title\",\"0\",{\"children\":\"ShieldCortex\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"AI Memory Security Dashboard — Defence pipeline, audit logs, quarantine review\"}]]\n"])</script></body></html>
9
+ </script><script src="/_next/static/chunks/a6dad97d9634a72d.js" noModule=""></script></head><body class="geist_a71539c9-module__T19VSG__variable geist_mono_8d43a2aa-module__8Li5zG__variable antialiased bg-slate-950"><div hidden=""><!--$--><!--/$--></div><div class="flex h-dvh w-full overflow-hidden bg-[var(--sc-bg-deep)] text-[var(--sc-text-primary)]"><div class="contents theme-glass:hidden"><button type="button" class="fixed left-3 top-3 z-50 flex h-10 w-10 items-center justify-center rounded-md bg-[var(--term-surface)] border border-[var(--term-border)] text-[var(--term-text-muted)] md:hidden" aria-label="Open navigation"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-menu" aria-hidden="true"><path d="M4 5h16"></path><path d="M4 12h16"></path><path d="M4 19h16"></path></svg></button><aside class="z-50 flex shrink-0 flex-col border-r border-[var(--term-border)] bg-[var(--term-bg)] transition-[width] duration-200 fixed inset-y-0 left-0 md:relative -translate-x-full md:translate-x-0 w-14"><div class="flex h-12 items-center gap-2 border-b border-[var(--term-border)] px-3"><span class="text-[var(--term-electric-fg)] font-mono text-sm" aria-hidden="true">$</span><div class="overflow-hidden whitespace-nowrap transition-opacity duration-200 opacity-0"><span class="font-mono text-sm text-[var(--term-text)]">shieldcortex</span><span class="cli-cursor text-[var(--term-electric-fg)] ml-1" aria-hidden="true"></span></div></div><nav class="flex-1 overflow-y-auto py-3 px-1.5 font-mono text-sm" role="navigation" aria-label="Main navigation"><a aria-current="page" class="group flex items-center gap-2 rounded-sm px-2 py-1.5 transition-colors focus-visible:outline-1 focus-visible:outline-offset-1 focus-visible:outline-[var(--term-electric)] text-[var(--term-electric-fg)] bg-[var(--term-surface-2)]" href="/overview"><span class="w-3 shrink-0 select-none text-[var(--term-electric-fg)]" aria-hidden="true">&gt;</span><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-house shrink-0" aria-hidden="true"><path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"></path><path d="M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path></svg><span class="overflow-hidden whitespace-nowrap transition-opacity duration-200 opacity-0">Overview</span></a><a class="group flex items-center gap-2 rounded-sm px-2 py-1.5 transition-colors focus-visible:outline-1 focus-visible:outline-offset-1 focus-visible:outline-[var(--term-electric)] text-[var(--term-text-muted)] hover:text-[var(--term-text)]" href="/memory"><span class="w-3 shrink-0 select-none text-transparent" aria-hidden="true"> </span><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database shrink-0" aria-hidden="true"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg><span class="overflow-hidden whitespace-nowrap transition-opacity duration-200 opacity-0">Memory</span></a><a class="group flex items-center gap-2 rounded-sm px-2 py-1.5 transition-colors focus-visible:outline-1 focus-visible:outline-offset-1 focus-visible:outline-[var(--term-electric)] text-[var(--term-text-muted)] hover:text-[var(--term-text)]" href="/protection"><span class="w-3 shrink-0 select-none text-transparent" aria-hidden="true"> </span><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield shrink-0" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path></svg><span class="overflow-hidden whitespace-nowrap transition-opacity duration-200 opacity-0">Protection</span></a><a class="group flex items-center gap-2 rounded-sm px-2 py-1.5 transition-colors focus-visible:outline-1 focus-visible:outline-offset-1 focus-visible:outline-[var(--term-electric)] text-[var(--term-text-muted)] hover:text-[var(--term-text)]" href="/xray"><span class="w-3 shrink-0 select-none text-transparent" aria-hidden="true"> </span><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scan-search shrink-0" aria-hidden="true"><path d="M3 7V5a2 2 0 0 1 2-2h2"></path><path d="M17 3h2a2 2 0 0 1 2 2v2"></path><path d="M21 17v2a2 2 0 0 1-2 2h-2"></path><path d="M7 21H5a2 2 0 0 1-2-2v-2"></path><circle cx="12" cy="12" r="3"></circle><path d="m16 16-1.9-1.9"></path></svg><span class="overflow-hidden whitespace-nowrap transition-opacity duration-200 opacity-0">X-Ray</span></a><a class="group flex items-center gap-2 rounded-sm px-2 py-1.5 transition-colors focus-visible:outline-1 focus-visible:outline-offset-1 focus-visible:outline-[var(--term-electric)] text-[var(--term-text-muted)] hover:text-[var(--term-text)]" href="/settings"><span class="w-3 shrink-0 select-none text-transparent" aria-hidden="true"> </span><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings shrink-0" aria-hidden="true"><path d="M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915"></path><circle cx="12" cy="12" r="3"></circle></svg><span class="overflow-hidden whitespace-nowrap transition-opacity duration-200 opacity-0">Settings</span></a></nav><div class="space-y-1 border-t border-[var(--term-border)] px-1.5 py-2 font-mono"><div class="flex items-center gap-2 px-2 py-1 text-[11px]"><span class="h-1.5 w-1.5 shrink-0 rounded-full bg-[var(--term-danger)] pulse-coral" aria-label="Real-time disconnected"></span><span class="overflow-hidden whitespace-nowrap text-[var(--term-text-muted)] transition-opacity duration-200 opacity-0">ws=<!-- -->down</span></div><div class="overflow-hidden whitespace-nowrap px-2 text-[10px] text-[var(--term-text-faint)] transition-opacity duration-200 opacity-0">v<!-- -->...</div></div></aside></div><div class="hidden theme-glass:contents"><button class="fixed left-3 top-3 z-50 flex h-10 w-10 items-center justify-center rounded-xl bg-[var(--sc-bg-surface)] border border-[var(--sc-border)] text-[var(--sc-text-secondary)] md:hidden" aria-label="Open navigation"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-menu" aria-hidden="true"><path d="M4 5h16"></path><path d="M4 12h16"></path><path d="M4 19h16"></path></svg></button><aside class="z-50 flex shrink-0 flex-col border-r border-[var(--sc-border)] bg-[var(--sc-bg-deep)] transition-all duration-300 fixed inset-y-0 left-0 md:relative -translate-x-full md:translate-x-0 w-16"><div class="flex h-16 items-center gap-3 border-b border-[var(--sc-border)] px-4"><div class="flex h-8 w-8 shrink-0 items-center justify-center rounded-lg bg-gradient-to-br from-[var(--sc-coral)] to-[var(--sc-coral-dark)]"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield text-white" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path></svg></div><div class="overflow-hidden whitespace-nowrap transition-all duration-300 w-0 opacity-0"><div class="text-[11px] font-semibold uppercase tracking-[0.2em] text-[var(--sc-coral)]">ShieldCortex</div><div class="text-xs text-[var(--sc-text-muted)]">Dashboard</div></div></div><nav class="flex-1 space-y-1 px-2 py-4" role="navigation" aria-label="Main navigation"><a aria-current="page" class="relative flex items-center gap-3 rounded-xl px-3 py-2.5 transition-all duration-200 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[var(--sc-cyan)] bg-[var(--sc-surface-interactive)] text-[var(--sc-text-primary)]" href="/overview"><div class="absolute left-0 top-1/2 h-5 w-0.5 -translate-y-1/2 rounded-r bg-[var(--sc-coral)]"></div><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-house shrink-0 text-[var(--sc-coral)]" aria-hidden="true"><path d="M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8"></path><path d="M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"></path></svg><span class="overflow-hidden whitespace-nowrap text-sm font-medium transition-all duration-300 w-0 opacity-0">Overview</span></a><a class="relative flex items-center gap-3 rounded-xl px-3 py-2.5 transition-all duration-200 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[var(--sc-cyan)] text-[var(--sc-text-muted)] hover:bg-[var(--sc-surface-interactive)] hover:text-[var(--sc-text-secondary)]" href="/memory"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database shrink-0" aria-hidden="true"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg><span class="overflow-hidden whitespace-nowrap text-sm font-medium transition-all duration-300 w-0 opacity-0">Memory</span></a><a class="relative flex items-center gap-3 rounded-xl px-3 py-2.5 transition-all duration-200 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[var(--sc-cyan)] text-[var(--sc-text-muted)] hover:bg-[var(--sc-surface-interactive)] hover:text-[var(--sc-text-secondary)]" href="/protection"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield shrink-0" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path></svg><span class="overflow-hidden whitespace-nowrap text-sm font-medium transition-all duration-300 w-0 opacity-0">Protection</span></a><a class="relative flex items-center gap-3 rounded-xl px-3 py-2.5 transition-all duration-200 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[var(--sc-cyan)] text-[var(--sc-text-muted)] hover:bg-[var(--sc-surface-interactive)] hover:text-[var(--sc-text-secondary)]" href="/xray"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scan-search shrink-0" aria-hidden="true"><path d="M3 7V5a2 2 0 0 1 2-2h2"></path><path d="M17 3h2a2 2 0 0 1 2 2v2"></path><path d="M21 17v2a2 2 0 0 1-2 2h-2"></path><path d="M7 21H5a2 2 0 0 1-2-2v-2"></path><circle cx="12" cy="12" r="3"></circle><path d="m16 16-1.9-1.9"></path></svg><span class="overflow-hidden whitespace-nowrap text-sm font-medium transition-all duration-300 w-0 opacity-0">X-Ray</span></a><a class="relative flex items-center gap-3 rounded-xl px-3 py-2.5 transition-all duration-200 focus-visible:outline-2 focus-visible:outline-offset-2 focus-visible:outline-[var(--sc-cyan)] text-[var(--sc-text-muted)] hover:bg-[var(--sc-surface-interactive)] hover:text-[var(--sc-text-secondary)]" href="/settings"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-settings shrink-0" aria-hidden="true"><path d="M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915"></path><circle cx="12" cy="12" r="3"></circle></svg><span class="overflow-hidden whitespace-nowrap text-sm font-medium transition-all duration-300 w-0 opacity-0">Settings</span></a></nav><div class="space-y-2 border-t border-[var(--sc-border)] px-2 py-3"><div class="flex items-center gap-3 px-3 py-1"><span class="h-2 w-2 shrink-0 rounded-full bg-[var(--sc-coral)] pulse-coral" aria-label="Real-time disconnected"></span><span class="overflow-hidden whitespace-nowrap text-[11px] text-[var(--sc-text-muted)] transition-all duration-300 w-0 opacity-0">Disconnected</span></div><div class="overflow-hidden whitespace-nowrap px-3 font-mono text-[10px] text-[var(--sc-text-muted)] transition-all duration-300 h-0 opacity-0">v<!-- -->...</div></div></aside></div><div class="flex min-w-0 flex-1 flex-col"><div class="flex items-center gap-3 border-b border-[var(--sc-border)] bg-[var(--sc-bg-surface)]/30 px-4 py-2 text-[11px] text-[var(--sc-text-muted)]"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-activity animate-pulse" aria-hidden="true"><path d="M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2"></path></svg> Loading activity…</div><div class="theme-glass:hidden flex items-center gap-3 border-b border-[var(--term-border)] bg-[var(--term-surface)] px-4 py-1.5 font-mono text-xs"><span class="text-[var(--term-text-muted)]">project</span><span class="text-[var(--term-text-muted)]" aria-hidden="true">=</span><select id="project-filter" class="rounded-sm border border-[var(--term-border)] bg-[var(--term-surface-2)] px-2 py-0.5 text-xs text-[var(--term-text)] font-mono focus:outline-none focus:border-[var(--term-electric)]" aria-label="Filter dashboard by project"><option value="" selected="">*</option></select></div><div class="hidden theme-glass:flex items-center gap-2 border-b border-[var(--sc-border)] bg-[var(--sc-bg-surface)]/40 px-4 py-2 backdrop-blur-sm"><svg xmlns="http://www.w3.org/2000/svg" width="13" height="13" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-funnel text-[var(--sc-text-muted)]" aria-hidden="true"><path d="M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z"></path></svg><label for="project-filter-glass" class="text-xs uppercase tracking-[0.14em] text-[var(--sc-text-muted)]">Project</label><select id="project-filter-glass" class="rounded-md border border-[var(--sc-border)] bg-[var(--sc-bg-deep)] px-2 py-1 text-xs text-[var(--sc-text-primary)] focus:outline-none focus:ring-1 focus:ring-[var(--sc-cyan)]" aria-label="Filter dashboard by project (glass)"><option value="" selected="">All projects</option></select></div><main class="min-w-0 flex-1 overflow-auto"><div class="contents theme-glass:hidden"><div class="h-full overflow-y-auto"><div class="mx-auto max-w-7xl space-y-6 p-6"><div class="space-y-3 theme-glass:space-y-4"><div class="flex flex-col gap-2 sm:flex-row sm:items-start sm:justify-between sm:gap-4 theme-glass:gap-3"><div class="min-w-0"><div class="theme-glass:hidden"><p class="text-[11px] uppercase tracking-wider text-[var(--term-text-muted)]"><span class="text-[var(--term-electric-fg)]">›</span> <!-- -->command-centre</p><h1 class="mt-1 flex items-baseline flex-wrap gap-2 text-base font-mono text-[var(--term-text)] sm:text-lg"><span class="text-[var(--term-electric-fg)]" aria-hidden="true">$</span><span>shieldcortex</span><span class="text-[var(--term-text-dim)]">overview</span><span class="cli-cursor text-[var(--term-electric-fg)]" aria-hidden="true"></span></h1><p class="mt-1 text-xs text-[var(--term-text-muted)]"><span aria-hidden="true">#</span> <!-- -->Stored-memory health, memory-file findings, threat pressure, operational status.</p></div><div class="hidden theme-glass:block"><p class="text-[10px] font-semibold uppercase tracking-[0.2em] text-[var(--sc-coral)] sm:text-[11px]">command-centre</p><h1 class="mt-1 text-xl font-bold text-[var(--sc-text-primary)] sm:text-2xl">overview</h1><p class="mt-1 text-xs text-[var(--sc-text-secondary)] sm:text-sm">Stored-memory health, memory-file findings, threat pressure, operational status.</p></div></div></div></div><div class="grid grid-cols-1 gap-6 lg:grid-cols-2"><div class="glass-card overflow-hidden"><div class="flex items-center gap-2 px-4 py-2 border-b border-[var(--term-border)] bg-[var(--term-surface-2)] theme-glass:hidden"><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-red)]"></span><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-yellow)]"></span><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-green)]"></span><span class="ml-2 text-xs select-none truncate text-[var(--term-text-muted)]">memory.stats</span></div><div class=""><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">stored.total</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-neon-fg)]">0</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">stored.total</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-cyan)]/10"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database text-[var(--sc-cyan)]" aria-hidden="true"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg></div></div></div><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">health.percent</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-electric-fg)]">0%</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">health.percent</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0%</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-coral)]/10"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield text-[var(--sc-coral)]" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path></svg></div></div></div><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">quality.duplicates</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-text)]">0</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">quality.duplicates</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-surface-interactive)]"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database text-[var(--sc-text-secondary)]" aria-hidden="true"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg></div></div></div><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-clock3 lucide-clock-3 text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><path d="M12 6v6h4"></path><circle cx="12" cy="12" r="10"></circle></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">quality.stale</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-text)]">0</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">quality.stale</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-surface-interactive)]"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-clock3 lucide-clock-3 text-[var(--sc-text-secondary)]" aria-hidden="true"><path d="M12 6v6h4"></path><circle cx="12" cy="12" r="10"></circle></svg></div></div></div><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">quality.unused</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-text)]">0</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">quality.unused</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-surface-interactive)]"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database text-[var(--sc-text-secondary)]" aria-hidden="true"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg></div></div></div></div><div class="px-4 py-2 text-xs border-t border-[var(--term-border)] bg-[var(--term-surface-2)] text-[var(--term-text-muted)] theme-glass:hidden">healthy=0 · fading=0 · critical=0</div></div><div class="glass-card overflow-hidden"><div class="flex items-center gap-2 px-4 py-2 border-b border-[var(--term-border)] bg-[var(--term-surface-2)] theme-glass:hidden"><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-red)]"></span><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-yellow)]"></span><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-green)]"></span><span class="ml-2 text-xs select-none truncate text-[var(--term-text-muted)]">protection.stats</span></div><div class=""><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield-alert text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path><path d="M12 8v4"></path><path d="M12 16h.01"></path></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">threats.blocked</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-text)]">0</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">threats.blocked</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-surface-interactive)]"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield-alert text-[var(--sc-text-secondary)]" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path><path d="M12 8v4"></path><path d="M12 16h.01"></path></svg></div></div></div><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-file-text text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><path d="M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"></path><path d="M14 2v5a1 1 0 0 0 1 1h5"></path><path d="M10 9H8"></path><path d="M16 13H8"></path><path d="M16 17H8"></path></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">memory.file.flags</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-text)]">0</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">memory.file.flags</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-surface-interactive)]"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-file-text text-[var(--sc-text-secondary)]" aria-hidden="true"><path d="M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"></path><path d="M14 2v5a1 1 0 0 0 1 1h5"></path><path d="M10 9H8"></path><path d="M16 13H8"></path><path d="M16 17H8"></path></svg></div></div></div><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-triangle-alert text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"></path><path d="M12 9v4"></path><path d="M12 17h.01"></path></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">quarantine.pending</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-text)]">0</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">quarantine.pending</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-surface-interactive)]"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-triangle-alert text-[var(--sc-text-secondary)]" aria-hidden="true"><path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"></path><path d="M12 9v4"></path><path d="M12 17h.01"></path></svg></div></div></div><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-triangle-alert text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"></path><path d="M12 9v4"></path><path d="M12 17h.01"></path></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">contradictions</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-text)]">0</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">contradictions</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-surface-interactive)]"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-triangle-alert text-[var(--sc-text-secondary)]" aria-hidden="true"><path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"></path><path d="M12 9v4"></path><path d="M12 17h.01"></path></svg></div></div></div><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scan-search text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><path d="M3 7V5a2 2 0 0 1 2-2h2"></path><path d="M17 3h2a2 2 0 0 1 2 2v2"></path><path d="M21 17v2a2 2 0 0 1-2 2h-2"></path><path d="M7 21H5a2 2 0 0 1-2-2v-2"></path><circle cx="12" cy="12" r="3"></circle><path d="m16 16-1.9-1.9"></path></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">xray.scans</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-neon-fg)]">0</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">xray.scans</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-cyan)]/10"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scan-search text-[var(--sc-cyan)]" aria-hidden="true"><path d="M3 7V5a2 2 0 0 1 2-2h2"></path><path d="M17 3h2a2 2 0 0 1 2 2v2"></path><path d="M21 17v2a2 2 0 0 1-2 2h-2"></path><path d="M7 21H5a2 2 0 0 1-2-2v-2"></path><circle cx="12" cy="12" r="3"></circle><path d="m16 16-1.9-1.9"></path></svg></div></div></div></div><div class="px-4 py-2 text-xs border-t border-[var(--term-border)] bg-[var(--term-surface-2)] text-[var(--term-text-muted)] theme-glass:hidden">window=24h · blocked=0 · pending=0</div></div></div><div class="grid grid-cols-1 gap-6 lg:grid-cols-2"><div class="glass-card overflow-hidden"><div class="flex items-center gap-2 px-4 py-2 border-b border-[var(--term-border)] bg-[var(--term-surface-2)] theme-glass:hidden"><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-red)]"></span><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-yellow)]"></span><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-green)]"></span><span class="ml-2 text-xs select-none truncate text-[var(--term-text-muted)]">memory.health</span></div><div class="p-5"><div class="flex items-center justify-center py-2"><div class="relative h-36 w-36"><svg viewBox="0 0 100 100" class="h-full w-full -rotate-90" aria-hidden="true"><circle cx="50" cy="50" r="42" fill="none" stroke="var(--term-surface-2)" stroke-width="6"></circle><circle cx="50" cy="50" r="42" fill="none" stroke="var(--term-neon)" stroke-width="6" stroke-dasharray="0 264" stroke-linecap="butt"></circle></svg><div class="absolute inset-0 flex flex-col items-center justify-center font-mono"><span class="text-2xl text-[var(--term-text)] tabular-nums">0<!-- -->%</span><span class="text-[10px] text-[var(--term-text-muted)] uppercase tracking-wider">healthy</span></div></div></div><div class="mt-2 grid grid-cols-3 gap-3 text-center font-mono text-xs"><div><div class="text-base text-[var(--term-neon-fg)] tabular-nums">0</div><div class="text-[10px] text-[var(--term-text-muted)] uppercase tracking-wider">healthy</div></div><div><div class="text-base text-[var(--term-warn)] tabular-nums">0</div><div class="text-[10px] text-[var(--term-text-muted)] uppercase tracking-wider">fading</div></div><div><div class="text-base text-[var(--term-danger)] tabular-nums">0</div><div class="text-[10px] text-[var(--term-text-muted)] uppercase tracking-wider">critical</div></div></div></div><div class="px-4 py-2 text-xs border-t border-[var(--term-border)] bg-[var(--term-surface-2)] text-[var(--term-text-muted)] theme-glass:hidden">decay distribution across stored memories</div></div><div class="glass-card overflow-hidden"><div class="flex items-center gap-2 px-4 py-2 border-b border-[var(--term-border)] bg-[var(--term-surface-2)] theme-glass:hidden"><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-red)]"></span><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-yellow)]"></span><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-green)]"></span><span class="ml-2 text-xs select-none truncate text-[var(--term-text-muted)]">alerts.urgent</span></div><div class=""><div class="flex items-center gap-3 px-4 py-6"><svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-check shrink-0 text-[var(--term-neon-fg)]" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="m9 12 2 2 4-4"></path></svg><div class="font-mono text-sm"><p class="text-[var(--term-text)]"><span class="text-[var(--term-neon-fg)]">[OK]</span> all clear</p><p class="text-xs text-[var(--term-text-muted)] mt-0.5"># no urgent issues right now</p></div></div></div><div class="px-4 py-2 text-xs border-t border-[var(--term-border)] bg-[var(--term-surface-2)] text-[var(--term-text-muted)] theme-glass:hidden">no urgent items</div></div></div><div class="glass-card overflow-hidden"><div class="flex items-center gap-2 px-4 py-2 border-b border-[var(--term-border)] bg-[var(--term-surface-2)] theme-glass:hidden"><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-red)]"></span><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-yellow)]"></span><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-green)]"></span><span class="ml-2 text-xs select-none truncate text-[var(--term-text-muted)]">quick.actions</span></div><div class=""><ul class="font-mono text-sm"><li class="border-b border-[var(--term-border)] last:border-0"><a class="flex items-center gap-3 px-4 py-2.5 hover:bg-[var(--term-surface-2)] transition-colors" href="/xray"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scan-search shrink-0 text-[var(--term-electric-fg)]" aria-hidden="true"><path d="M3 7V5a2 2 0 0 1 2-2h2"></path><path d="M17 3h2a2 2 0 0 1 2 2v2"></path><path d="M21 17v2a2 2 0 0 1-2 2h-2"></path><path d="M7 21H5a2 2 0 0 1-2-2v-2"></path><circle cx="12" cy="12" r="3"></circle><path d="m16 16-1.9-1.9"></path></svg><span class="text-[var(--term-electric-fg)]">$</span><span class="text-[var(--term-text)] truncate">shieldcortex xray</span><span class="ml-auto truncate text-[var(--term-text-muted)] text-xs"># <!-- -->inspect packages and files for hidden risk</span></a></li><li class="border-b border-[var(--term-border)] last:border-0"><a class="flex items-center gap-3 px-4 py-2.5 hover:bg-[var(--term-surface-2)] transition-colors" href="/protection?tab=quarantine"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-triangle-alert shrink-0 text-[var(--term-warn)]" aria-hidden="true"><path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"></path><path d="M12 9v4"></path><path d="M12 17h.01"></path></svg><span class="text-[var(--term-electric-fg)]">$</span><span class="text-[var(--term-text)] truncate">shieldcortex quarantine review</span><span class="ml-auto truncate text-[var(--term-text-muted)] text-xs"># <!-- -->0 items pending</span></a></li><li class="border-b border-[var(--term-border)] last:border-0"><a class="flex items-center gap-3 px-4 py-2.5 hover:bg-[var(--term-surface-2)] transition-colors" href="/memory?tab=recall"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database shrink-0 text-[var(--term-electric-fg)]" aria-hidden="true"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg><span class="text-[var(--term-electric-fg)]">$</span><span class="text-[var(--term-text)] truncate">shieldcortex recall debug</span><span class="ml-auto truncate text-[var(--term-text-muted)] text-xs"># <!-- -->test queries and inspect ranking factors</span></a></li><li class="border-b border-[var(--term-border)] last:border-0"><a class="flex items-center gap-3 px-4 py-2.5 hover:bg-[var(--term-surface-2)] transition-colors" href="/protection?tab=dome"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield-alert shrink-0 text-[var(--term-danger)]" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path><path d="M12 8v4"></path><path d="M12 16h.01"></path></svg><span class="text-[var(--term-electric-fg)]">$</span><span class="text-[var(--term-text)] truncate">shieldcortex iron-dome status</span><span class="ml-auto truncate text-[var(--term-text-muted)] text-xs"># <!-- -->kill switch and behaviour gates</span></a></li></ul></div></div><div class="glass-card overflow-hidden"><div class="flex items-center gap-2 px-4 py-2 border-b border-[var(--term-border)] bg-[var(--term-surface-2)] theme-glass:hidden"><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-red)]"></span><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-yellow)]"></span><span aria-hidden="true" class="w-2.5 h-2.5 rounded-full bg-[var(--term-light-green)]"></span><span class="ml-2 text-xs select-none truncate text-[var(--term-text-muted)]">licence</span></div><div class="p-5"><div class="flex items-center justify-between font-mono"><div><p class="text-sm text-[var(--term-text)]"><span class="text-[var(--term-text-muted)]">tier</span><span class="text-[var(--term-text-muted)] mx-2">=</span><span class="text-[var(--term-electric-fg)]">Free</span></p><p class="mt-1 text-xs text-[var(--term-text-muted)]"># current tier and feature access</p></div><span class="inline-flex items-center gap-1.5 px-1 text-[11px] font-semibold uppercase tracking-wider whitespace-nowrap text-[var(--term-text-muted)] theme-glass:rounded-full theme-glass:border theme-glass:px-2.5 theme-glass:py-0.5 theme-glass:bg-[var(--sc-surface-interactive)] theme-glass:border-[var(--sc-border)]"><span aria-hidden="true" class="text-[var(--term-text-muted)] theme-glass:hidden">[</span><span>Free</span><span aria-hidden="true" class="text-[var(--term-text-muted)] theme-glass:hidden">]</span></span></div><div class="mt-4 flex items-center gap-4 border border-[var(--term-border)] bg-[var(--term-surface-2)] p-3 rounded-md font-mono text-sm"><div class="flex-1"><p class="text-[var(--term-text)]">unlock deep scanning, custom policies, and audit exports</p><p class="mt-1 text-xs text-[var(--term-text-muted)]"># pro starts at £29/mo · 10K cloud scans · 90-day retention</p></div><a href="https://shieldcortex.ai/pricing" target="_blank" rel="noopener noreferrer"><button class="inline-flex items-center justify-center gap-2 rounded-md font-mono transition-colors focus-visible:outline-1 focus-visible:outline-offset-2 focus-visible:outline-[var(--term-electric)] disabled:pointer-events-none disabled:opacity-50 border border-[var(--term-electric)] text-[var(--term-electric-fg)] bg-transparent hover:bg-[var(--term-electric)]/10 px-2 py-1 text-xs theme-glass:font-semibold theme-glass:transition-all theme-glass:hover:-translate-y-0.5 theme-glass:border-0 theme-glass:bg-gradient-to-br theme-glass:from-[var(--sc-coral)] theme-glass:to-[var(--sc-coral-dark)] theme-glass:text-white theme-glass:hover:shadow-[0_8px_30px_var(--sc-glow-coral-mid)] theme-glass:px-3 theme-glass:py-1.5 theme-glass:text-xs theme-glass:rounded-lg" type="button"><span class="inline-flex items-center gap-2 theme-glass:hidden"><span class="text-[var(--term-text-muted)]" aria-hidden="true">[</span><span class="leading-none">upgrade</span><span class="text-[var(--term-text-muted)]" aria-hidden="true">]</span></span><span class="hidden theme-glass:inline-flex items-center gap-2">upgrade</span></button></a></div></div><div class="px-4 py-2 text-xs border-t border-[var(--term-border)] bg-[var(--term-surface-2)] text-[var(--term-text-muted)] theme-glass:hidden">tier=free</div></div></div></div></div><div class="hidden theme-glass:contents"><div class="h-full overflow-y-auto"><div class="mx-auto max-w-7xl space-y-6 p-6"><div class="space-y-3 theme-glass:space-y-4"><div class="flex flex-col gap-2 sm:flex-row sm:items-start sm:justify-between sm:gap-4 theme-glass:gap-3"><div class="min-w-0"><div class="theme-glass:hidden"><p class="text-[11px] uppercase tracking-wider text-[var(--term-text-muted)]"><span class="text-[var(--term-electric-fg)]">›</span> <!-- -->ShieldCortex</p><h1 class="mt-1 flex items-baseline flex-wrap gap-2 text-base font-mono text-[var(--term-text)] sm:text-lg"><span class="text-[var(--term-electric-fg)]" aria-hidden="true">$</span><span>shieldcortex</span><span class="text-[var(--term-text-dim)]">command centre</span><span class="cli-cursor text-[var(--term-electric-fg)]" aria-hidden="true"></span></h1><p class="mt-1 text-xs text-[var(--term-text-muted)]"><span aria-hidden="true">#</span> <!-- -->Stored-memory health, memory-file findings, threat pressure, and operational status at a glance.</p></div><div class="hidden theme-glass:block"><p class="text-[10px] font-semibold uppercase tracking-[0.2em] text-[var(--sc-coral)] sm:text-[11px]">ShieldCortex</p><h1 class="mt-1 text-xl font-bold text-[var(--sc-text-primary)] sm:text-2xl">Command Centre</h1><p class="mt-1 text-xs text-[var(--sc-text-secondary)] sm:text-sm">Stored-memory health, memory-file findings, threat pressure, and operational status at a glance.</p></div></div></div></div><div class="grid grid-cols-2 gap-4 lg:grid-cols-5"><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">Stored Memories</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-neon-fg)]">0</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">Stored Memories</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-cyan)]/10"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database text-[var(--sc-cyan)]" aria-hidden="true"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg></div></div></div><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-file-text text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><path d="M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"></path><path d="M14 2v5a1 1 0 0 0 1 1h5"></path><path d="M10 9H8"></path><path d="M16 13H8"></path><path d="M16 17H8"></path></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">Memory Files Flagged</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-text)]">0</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">Memory Files Flagged</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-surface-interactive)]"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-file-text text-[var(--sc-text-secondary)]" aria-hidden="true"><path d="M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z"></path><path d="M14 2v5a1 1 0 0 0 1 1h5"></path><path d="M10 9H8"></path><path d="M16 13H8"></path><path d="M16 17H8"></path></svg></div></div></div><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield-alert text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path><path d="M12 8v4"></path><path d="M12 16h.01"></path></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">Threats Blocked</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-text)]">0</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">Threats Blocked</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-surface-interactive)]"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield-alert text-[var(--sc-text-secondary)]" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path><path d="M12 8v4"></path><path d="M12 16h.01"></path></svg></div></div></div><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scan-search text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><path d="M3 7V5a2 2 0 0 1 2-2h2"></path><path d="M17 3h2a2 2 0 0 1 2 2v2"></path><path d="M21 17v2a2 2 0 0 1-2 2h-2"></path><path d="M7 21H5a2 2 0 0 1-2-2v-2"></path><circle cx="12" cy="12" r="3"></circle><path d="m16 16-1.9-1.9"></path></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">X-Ray Scans</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-neon-fg)]">0</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">X-Ray Scans</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-cyan)]/10"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scan-search text-[var(--sc-cyan)]" aria-hidden="true"><path d="M3 7V5a2 2 0 0 1 2-2h2"></path><path d="M17 3h2a2 2 0 0 1 2 2v2"></path><path d="M21 17v2a2 2 0 0 1-2 2h-2"></path><path d="M7 21H5a2 2 0 0 1-2-2v-2"></path><circle cx="12" cy="12" r="3"></circle><path d="m16 16-1.9-1.9"></path></svg></div></div></div><div class="theme-glass:hidden flex items-center justify-between gap-3 px-4 py-2 border-b border-[var(--term-border)] last:border-0"><div class="flex items-center gap-3 min-w-0"><svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield text-[var(--term-text-muted)] shrink-0" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path></svg><span class="text-xs uppercase tracking-wider text-[var(--term-text-muted)] truncate">Health Score</span></div><div class="flex items-baseline gap-2 shrink-0"><span class="text-base tabular-nums text-[var(--term-electric-fg)]">0%</span></div></div><div class="hidden theme-glass:block glass-card p-5"><div class="flex items-start justify-between"><div class="min-w-0"><p class="text-xs font-medium uppercase tracking-wider text-[var(--sc-text-muted)]">Health Score</p><p class="mt-2 text-2xl font-bold text-[var(--sc-text-primary)]">0%</p></div><div class="rounded-xl p-2.5 bg-[var(--sc-coral)]/10"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield text-[var(--sc-coral)]" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path></svg></div></div></div></div><div class="grid grid-cols-1 gap-6 lg:grid-cols-[1fr_1fr]"><div class="glass-card overflow-hidden p-6"><div class="p-5"><h3 class="text-lg font-semibold text-[var(--sc-text-primary)]">Stored Memory Health</h3><p class="mt-1 text-sm text-[var(--sc-text-muted)]">Decay distribution across ShieldCortex stored memories.</p><div class="mt-6 flex items-center justify-center"><div class="relative h-40 w-40"><svg viewBox="0 0 100 100" class="h-full w-full -rotate-90"><circle cx="50" cy="50" r="42" fill="none" stroke="var(--sc-bg-elevated)" stroke-width="8"></circle><circle cx="50" cy="50" r="42" fill="none" stroke="var(--sc-cyan)" stroke-width="8" stroke-dasharray="0 264" stroke-linecap="round" class="transition-all duration-1000"></circle></svg><div class="absolute inset-0 flex flex-col items-center justify-center"><span class="text-3xl font-bold text-[var(--sc-text-primary)]">0<!-- -->%</span><span class="text-xs text-[var(--sc-text-muted)]">healthy</span></div></div></div><div class="mt-6 grid grid-cols-3 gap-3 text-center"><div><div class="text-lg font-semibold text-[var(--sc-cyan)]">0</div><div class="text-xs text-[var(--sc-text-muted)]">Healthy</div></div><div><div class="text-lg font-semibold text-[var(--sc-amber)]">0</div><div class="text-xs text-[var(--sc-text-muted)]">Fading</div></div><div><div class="text-lg font-semibold text-[var(--sc-coral)]">0</div><div class="text-xs text-[var(--sc-text-muted)]">Critical</div></div></div></div></div><div class="glass-card overflow-hidden p-6"><div class="p-5"><div class="flex items-center justify-between"><h3 class="text-lg font-semibold text-[var(--sc-text-primary)]">Urgent Actions</h3></div><p class="mt-1 text-sm text-[var(--sc-text-muted)]">Quickest wins for trust, safety, and recall quality.</p><div class="mt-4 space-y-3"><div class="flex items-center gap-3 rounded-xl bg-[var(--sc-bg-elevated)] p-4"><svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-circle-check shrink-0 text-[var(--sc-cyan)]" aria-hidden="true"><circle cx="12" cy="12" r="10"></circle><path d="m9 12 2 2 4-4"></path></svg><div><p class="text-sm font-medium text-[var(--sc-text-primary)]">All clear</p><p class="text-xs text-[var(--sc-text-muted)]">No urgent issues right now. Memory health looks stable.</p></div></div></div></div></div></div><div class="grid grid-cols-2 gap-4 lg:grid-cols-4"><a href="/xray"><div class="glass-card overflow-hidden glass-card-hover cursor-pointer p-5"><div class="p-5"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-scan-search text-[var(--sc-cyan)]" aria-hidden="true"><path d="M3 7V5a2 2 0 0 1 2-2h2"></path><path d="M17 3h2a2 2 0 0 1 2 2v2"></path><path d="M21 17v2a2 2 0 0 1-2 2h-2"></path><path d="M7 21H5a2 2 0 0 1-2-2v-2"></path><circle cx="12" cy="12" r="3"></circle><path d="m16 16-1.9-1.9"></path></svg><p class="mt-3 text-sm font-semibold text-[var(--sc-text-primary)]">Run X-Ray Scan</p><p class="mt-1 text-xs text-[var(--sc-text-muted)]">Inspect packages and files for hidden risk.</p></div></div></a><a href="/protection?tab=quarantine"><div class="glass-card overflow-hidden glass-card-hover cursor-pointer p-5"><div class="p-5"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-triangle-alert text-[var(--sc-amber)]" aria-hidden="true"><path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3"></path><path d="M12 9v4"></path><path d="M12 17h.01"></path></svg><p class="mt-3 text-sm font-semibold text-[var(--sc-text-primary)]">Review Quarantine</p><p class="mt-1 text-xs text-[var(--sc-text-muted)]">0 items pending review.</p></div></div></a><a href="/memory?tab=recall"><div class="glass-card overflow-hidden glass-card-hover cursor-pointer p-5"><div class="p-5"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-database text-[var(--sc-cyan)]" aria-hidden="true"><ellipse cx="12" cy="5" rx="9" ry="3"></ellipse><path d="M3 5V19A9 3 0 0 0 21 19V5"></path><path d="M3 12A9 3 0 0 0 21 12"></path></svg><p class="mt-3 text-sm font-semibold text-[var(--sc-text-primary)]">Debug Recall</p><p class="mt-1 text-xs text-[var(--sc-text-muted)]">Test queries and inspect ranking factors.</p></div></div></a><a href="/protection?tab=dome"><div class="glass-card overflow-hidden glass-card-hover cursor-pointer p-5"><div class="p-5"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-shield-alert text-[var(--sc-coral)]" aria-hidden="true"><path d="M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z"></path><path d="M12 8v4"></path><path d="M12 16h.01"></path></svg><p class="mt-3 text-sm font-semibold text-[var(--sc-text-primary)]">Iron Dome</p><p class="mt-1 text-xs text-[var(--sc-text-muted)]">Kill switch and behaviour gates.</p></div></div></a></div><div class="glass-card overflow-hidden p-6"><div class="p-5"><div class="flex items-center justify-between"><div><h3 class="text-lg font-semibold text-[var(--sc-text-primary)]">Licence</h3><p class="mt-1 text-sm text-[var(--sc-text-muted)]">Current tier and feature access.</p></div><span class="inline-flex items-center gap-1.5 px-1 text-[11px] font-semibold uppercase tracking-wider whitespace-nowrap text-[var(--term-text-muted)] theme-glass:rounded-full theme-glass:border theme-glass:px-2.5 theme-glass:py-0.5 theme-glass:bg-[var(--sc-surface-interactive)] theme-glass:border-[var(--sc-border)]"><span aria-hidden="true" class="text-[var(--term-text-muted)] theme-glass:hidden">[</span><span>Free</span><span aria-hidden="true" class="text-[var(--term-text-muted)] theme-glass:hidden">]</span></span></div></div></div></div></div></div><!--$--><!--/$--><section aria-label="Notifications alt+T" tabindex="-1" aria-live="polite" aria-relevant="additions text" aria-atomic="false"></section></main></div></div><script src="/_next/static/chunks/d878b929b21636c4.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[36111,[\"/_next/static/chunks/8a5b61fd5e1bbcfa.js\"],\"Providers\"]\n3:I[57043,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"default\"]\n4:I[10445,[\"/_next/static/chunks/8a5b61fd5e1bbcfa.js\",\"/_next/static/chunks/d334b69bff7779be.js\"],\"default\"]\n5:I[27657,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"default\"]\n6:I[48416,[\"/_next/static/chunks/8a5b61fd5e1bbcfa.js\",\"/_next/static/chunks/e804a1fda2839550.js\",\"/_next/static/chunks/3729c748a4361c1f.js\",\"/_next/static/chunks/e9f4b8da354f1005.js\"],\"Sidebar\"]\n7:I[31971,[\"/_next/static/chunks/8a5b61fd5e1bbcfa.js\",\"/_next/static/chunks/e804a1fda2839550.js\",\"/_next/static/chunks/3729c748a4361c1f.js\",\"/_next/static/chunks/e9f4b8da354f1005.js\"],\"DailyMomentBar\"]\n8:I[4979,[\"/_next/static/chunks/8a5b61fd5e1bbcfa.js\",\"/_next/static/chunks/e804a1fda2839550.js\",\"/_next/static/chunks/3729c748a4361c1f.js\",\"/_next/static/chunks/e9f4b8da354f1005.js\"],\"ProjectFilterBar\"]\n9:I[74792,[\"/_next/static/chunks/8a5b61fd5e1bbcfa.js\",\"/_next/static/chunks/e804a1fda2839550.js\",\"/_next/static/chunks/3729c748a4361c1f.js\",\"/_next/static/chunks/e9f4b8da354f1005.js\",\"/_next/static/chunks/d2f861595d6a41df.js\"],\"default\"]\na:I[24478,[\"/_next/static/chunks/8a5b61fd5e1bbcfa.js\",\"/_next/static/chunks/e804a1fda2839550.js\",\"/_next/static/chunks/3729c748a4361c1f.js\",\"/_next/static/chunks/e9f4b8da354f1005.js\"],\"ToastProvider\"]\nb:I[4167,[\"/_next/static/chunks/8a5b61fd5e1bbcfa.js\",\"/_next/static/chunks/e804a1fda2839550.js\",\"/_next/static/chunks/3729c748a4361c1f.js\",\"/_next/static/chunks/e9f4b8da354f1005.js\"],\"BlockToastBridge\"]\n10:I[30687,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"default\"]\n:HL[\"/_next/static/chunks/2473c16c0c2f6b5f.css\",\"style\"]\n:HL[\"/_next/static/chunks/bf725d638cce46d4.css\",\"style\"]\n:HL[\"/_next/static/media/797e433ab948586e-s.p.dbea232f.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/media/caa3a2e1cccd8315-s.p.853070df.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"6WjF0Utj3STrFgg7vZVPK\",\"c\":[\"\",\"overview\"],\"q\":\"\",\"i\":false,\"f\":[[[\"\",{\"children\":[\"(dashboard)\",{\"children\":[\"overview\",{\"children\":[\"__PAGE__\",{}]}]}]},\"$undefined\",\"$undefined\",true],[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/2473c16c0c2f6b5f.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/chunks/bf725d638cce46d4.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/8a5b61fd5e1bbcfa.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"dark\",\"data-theme\":\"terminal\",\"suppressHydrationWarning\":true,\"children\":[[\"$\",\"head\",null,{\"children\":[\"$\",\"script\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"\\ntry {\\n var t = localStorage.getItem('sc-theme');\\n if (t !== 'glass' \u0026\u0026 t !== 'terminal') t = 'terminal';\\n document.documentElement.dataset.theme = t;\\n} catch (e) {\\n document.documentElement.dataset.theme = 'terminal';\\n}\\n\"}}]}],[\"$\",\"body\",null,{\"className\":\"geist_a71539c9-module__T19VSG__variable geist_mono_8d43a2aa-module__8Li5zG__variable antialiased bg-slate-950\",\"children\":[\"$\",\"$L2\",null,{\"children\":[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$4\",\"errorStyles\":[],\"errorScripts\":[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/d334b69bff7779be.js\",\"async\":true}]],\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/e804a1fda2839550.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-1\",{\"src\":\"/_next/static/chunks/3729c748a4361c1f.js\",\"async\":true,\"nonce\":\"$undefined\"}],[\"$\",\"script\",\"script-2\",{\"src\":\"/_next/static/chunks/e9f4b8da354f1005.js\",\"async\":true,\"nonce\":\"$undefined\"}]],[\"$\",\"div\",null,{\"className\":\"flex h-dvh w-full overflow-hidden bg-[var(--sc-bg-deep)] text-[var(--sc-text-primary)]\",\"children\":[[\"$\",\"$L6\",null,{}],[\"$\",\"div\",null,{\"className\":\"flex min-w-0 flex-1 flex-col\",\"children\":[[\"$\",\"$L7\",null,{}],[\"$\",\"$L8\",null,{}],[\"$\",\"main\",null,{\"className\":\"min-w-0 flex-1 overflow-auto\",\"children\":[[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$9\",\"errorStyles\":[],\"errorScripts\":[[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/d2f861595d6a41df.js\",\"async\":true}]],\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:notFound:0:1:props:style\",\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:notFound:0:1:props:children:props:children:1:props:style\",\"children\":404}],[\"$\",\"div\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:style\",\"children\":[\"$\",\"h2\",null,{\"style\":\"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style\",\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}],[\"$\",\"$La\",null,{}],[\"$\",\"$Lb\",null,{}]]}]]}]]}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[null,[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L5\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]]}],{\"children\":[[\"$\",\"$1\",\"c\",{\"children\":[\"$Lc\",[\"$Ld\"],\"$Le\"]}],{},null,false,false]},null,false,false]},null,false,false]},null,false,false],\"$Lf\",false]],\"m\":\"$undefined\",\"G\":[\"$10\",[]],\"S\":true}\n"])</script><script>self.__next_f.push([1,"11:I[16339,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"ClientPageRoot\"]\n12:I[14612,[\"/_next/static/chunks/8a5b61fd5e1bbcfa.js\",\"/_next/static/chunks/e804a1fda2839550.js\",\"/_next/static/chunks/3729c748a4361c1f.js\",\"/_next/static/chunks/e9f4b8da354f1005.js\",\"/_next/static/chunks/8d4a0f601450b091.js\"],\"default\"]\n15:I[56978,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"OutletBoundary\"]\n16:\"$Sreact.suspense\"\n18:I[56978,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"ViewportBoundary\"]\n1a:I[56978,[\"/_next/static/chunks/102f894cc892994d.js\",\"/_next/static/chunks/417032eeb2cd875f.js\"],\"MetadataBoundary\"]\nc:[\"$\",\"$L11\",null,{\"Component\":\"$12\",\"serverProvidedParams\":{\"searchParams\":{},\"params\":{},\"promises\":[\"$@13\",\"$@14\"]}}]\nd:[\"$\",\"script\",\"script-0\",{\"src\":\"/_next/static/chunks/8d4a0f601450b091.js\",\"async\":true,\"nonce\":\"$undefined\"}]\ne:[\"$\",\"$L15\",null,{\"children\":[\"$\",\"$16\",null,{\"name\":\"Next.MetadataOutlet\",\"children\":\"$@17\"}]}]\nf:[\"$\",\"$1\",\"h\",{\"children\":[null,[\"$\",\"$L18\",null,{\"children\":\"$L19\"}],[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$L1a\",null,{\"children\":[\"$\",\"$16\",null,{\"name\":\"Next.Metadata\",\"children\":\"$L1b\"}]}]}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]]}]\n"])</script><script>self.__next_f.push([1,"13:{}\n14:\"$c:props:serverProvidedParams:params\"\n"])</script><script>self.__next_f.push([1,"19:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n"])</script><script>self.__next_f.push([1,"17:null\n1b:[[\"$\",\"title\",\"0\",{\"children\":\"ShieldCortex\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"AI Memory Security Dashboard — Defence pipeline, audit logs, quarantine review\"}]]\n"])</script></body></html>
@@ -14,7 +14,7 @@ b:I[4167,["/_next/static/chunks/8a5b61fd5e1bbcfa.js","/_next/static/chunks/e804a
14
14
  :HL["/_next/static/chunks/bf725d638cce46d4.css","style"]
15
15
  :HL["/_next/static/media/797e433ab948586e-s.p.dbea232f.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
16
16
  :HL["/_next/static/media/caa3a2e1cccd8315-s.p.853070df.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
17
- 0:{"P":null,"b":"10a_MRwbHFUuDdfr86RUu","c":["","overview"],"q":"","i":false,"f":[[["",{"children":["(dashboard)",{"children":["overview",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/2473c16c0c2f6b5f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","link","1",{"rel":"stylesheet","href":"/_next/static/chunks/bf725d638cce46d4.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/8a5b61fd5e1bbcfa.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en","className":"dark","data-theme":"terminal","suppressHydrationWarning":true,"children":[["$","head",null,{"children":["$","script",null,{"dangerouslySetInnerHTML":{"__html":"\ntry {\n var t = localStorage.getItem('sc-theme');\n if (t !== 'glass' && t !== 'terminal') t = 'terminal';\n document.documentElement.dataset.theme = t;\n} catch (e) {\n document.documentElement.dataset.theme = 'terminal';\n}\n"}}]}],["$","body",null,{"className":"geist_a71539c9-module__T19VSG__variable geist_mono_8d43a2aa-module__8Li5zG__variable antialiased bg-slate-950","children":["$","$L2",null,{"children":["$","$L3",null,{"parallelRouterKey":"children","error":"$4","errorStyles":[],"errorScripts":[["$","script","script-0",{"src":"/_next/static/chunks/d334b69bff7779be.js","async":true}]],"template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]]}]]}],{"children":[["$","$1","c",{"children":[[["$","script","script-0",{"src":"/_next/static/chunks/e804a1fda2839550.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/3729c748a4361c1f.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/e9f4b8da354f1005.js","async":true,"nonce":"$undefined"}]],["$","div",null,{"className":"flex h-dvh w-full overflow-hidden bg-[var(--sc-bg-deep)] text-[var(--sc-text-primary)]","children":[["$","$L6",null,{}],["$","div",null,{"className":"flex min-w-0 flex-1 flex-col","children":[["$","$L7",null,{}],["$","$L8",null,{}],["$","main",null,{"className":"min-w-0 flex-1 overflow-auto","children":[["$","$L3",null,{"parallelRouterKey":"children","error":"$9","errorStyles":[],"errorScripts":[["$","script","script-0",{"src":"/_next/static/chunks/d2f861595d6a41df.js","async":true}]],"template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:notFound:0:1:props:style","children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:notFound:0:1:props:children:props:children:1:props:style","children":404}],["$","div",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:style","children":["$","h2",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style","children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$La",null,{}],["$","$Lb",null,{}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L3",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",["$Ld"],"$Le"]}],{},null,false,false]},null,false,false]},null,false,false]},null,false,false],"$Lf",false]],"m":"$undefined","G":["$10",[]],"S":true}
17
+ 0:{"P":null,"b":"6WjF0Utj3STrFgg7vZVPK","c":["","overview"],"q":"","i":false,"f":[[["",{"children":["(dashboard)",{"children":["overview",{"children":["__PAGE__",{}]}]}]},"$undefined","$undefined",true],[["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/chunks/2473c16c0c2f6b5f.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","link","1",{"rel":"stylesheet","href":"/_next/static/chunks/bf725d638cce46d4.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}],["$","script","script-0",{"src":"/_next/static/chunks/8a5b61fd5e1bbcfa.js","async":true,"nonce":"$undefined"}]],["$","html",null,{"lang":"en","className":"dark","data-theme":"terminal","suppressHydrationWarning":true,"children":[["$","head",null,{"children":["$","script",null,{"dangerouslySetInnerHTML":{"__html":"\ntry {\n var t = localStorage.getItem('sc-theme');\n if (t !== 'glass' && t !== 'terminal') t = 'terminal';\n document.documentElement.dataset.theme = t;\n} catch (e) {\n document.documentElement.dataset.theme = 'terminal';\n}\n"}}]}],["$","body",null,{"className":"geist_a71539c9-module__T19VSG__variable geist_mono_8d43a2aa-module__8Li5zG__variable antialiased bg-slate-950","children":["$","$L2",null,{"children":["$","$L3",null,{"parallelRouterKey":"children","error":"$4","errorStyles":[],"errorScripts":[["$","script","script-0",{"src":"/_next/static/chunks/d334b69bff7779be.js","async":true}]],"template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]]}]]}],{"children":[["$","$1","c",{"children":[[["$","script","script-0",{"src":"/_next/static/chunks/e804a1fda2839550.js","async":true,"nonce":"$undefined"}],["$","script","script-1",{"src":"/_next/static/chunks/3729c748a4361c1f.js","async":true,"nonce":"$undefined"}],["$","script","script-2",{"src":"/_next/static/chunks/e9f4b8da354f1005.js","async":true,"nonce":"$undefined"}]],["$","div",null,{"className":"flex h-dvh w-full overflow-hidden bg-[var(--sc-bg-deep)] text-[var(--sc-text-primary)]","children":[["$","$L6",null,{}],["$","div",null,{"className":"flex min-w-0 flex-1 flex-col","children":[["$","$L7",null,{}],["$","$L8",null,{}],["$","main",null,{"className":"min-w-0 flex-1 overflow-auto","children":[["$","$L3",null,{"parallelRouterKey":"children","error":"$9","errorStyles":[],"errorScripts":[["$","script","script-0",{"src":"/_next/static/chunks/d2f861595d6a41df.js","async":true}]],"template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:notFound:0:1:props:style","children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:notFound:0:1:props:children:props:children:1:props:style","children":404}],["$","div",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:style","children":["$","h2",null,{"style":"$0:f:0:1:0:props:children:1:props:children:1:props:children:props:children:props:notFound:0:1:props:children:props:children:2:props:children:props:style","children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}],["$","$La",null,{}],["$","$Lb",null,{}]]}]]}]]}]]}],{"children":[["$","$1","c",{"children":[null,["$","$L3",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L5",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":"$undefined","forbidden":"$undefined","unauthorized":"$undefined"}]]}],{"children":[["$","$1","c",{"children":["$Lc",["$Ld"],"$Le"]}],{},null,false,false]},null,false,false]},null,false,false]},null,false,false],"$Lf",false]],"m":"$undefined","G":["$10",[]],"S":true}
18
18
  11:I[16339,["/_next/static/chunks/102f894cc892994d.js","/_next/static/chunks/417032eeb2cd875f.js"],"ClientPageRoot"]
19
19
  12:I[14612,["/_next/static/chunks/8a5b61fd5e1bbcfa.js","/_next/static/chunks/e804a1fda2839550.js","/_next/static/chunks/3729c748a4361c1f.js","/_next/static/chunks/e9f4b8da354f1005.js","/_next/static/chunks/8d4a0f601450b091.js"],"default"]
20
20
  15:I[56978,["/_next/static/chunks/102f894cc892994d.js","/_next/static/chunks/417032eeb2cd875f.js"],"OutletBoundary"]
@@ -3,7 +3,7 @@
3
3
  3:I[14612,["/_next/static/chunks/8a5b61fd5e1bbcfa.js","/_next/static/chunks/e804a1fda2839550.js","/_next/static/chunks/3729c748a4361c1f.js","/_next/static/chunks/e9f4b8da354f1005.js","/_next/static/chunks/8d4a0f601450b091.js"],"default"]
4
4
  6:I[56978,["/_next/static/chunks/102f894cc892994d.js","/_next/static/chunks/417032eeb2cd875f.js"],"OutletBoundary"]
5
5
  7:"$Sreact.suspense"
6
- 0:{"buildId":"10a_MRwbHFUuDdfr86RUu","rsc":["$","$1","c",{"children":[["$","$L2",null,{"Component":"$3","serverProvidedParams":{"searchParams":{},"params":{},"promises":["$@4","$@5"]}}],[["$","script","script-0",{"src":"/_next/static/chunks/8d4a0f601450b091.js","async":true}]],["$","$L6",null,{"children":["$","$7",null,{"name":"Next.MetadataOutlet","children":"$@8"}]}]]}],"loading":null,"isPartial":false}
6
+ 0:{"buildId":"6WjF0Utj3STrFgg7vZVPK","rsc":["$","$1","c",{"children":[["$","$L2",null,{"Component":"$3","serverProvidedParams":{"searchParams":{},"params":{},"promises":["$@4","$@5"]}}],[["$","script","script-0",{"src":"/_next/static/chunks/8d4a0f601450b091.js","async":true}]],["$","$L6",null,{"children":["$","$7",null,{"name":"Next.MetadataOutlet","children":"$@8"}]}]]}],"loading":null,"isPartial":false}
7
7
  4:{}
8
8
  5:{}
9
9
  8:null
@@ -1,4 +1,4 @@
1
1
  1:"$Sreact.fragment"
2
2
  2:I[57043,["/_next/static/chunks/102f894cc892994d.js","/_next/static/chunks/417032eeb2cd875f.js"],"default"]
3
3
  3:I[27657,["/_next/static/chunks/102f894cc892994d.js","/_next/static/chunks/417032eeb2cd875f.js"],"default"]
4
- 0:{"buildId":"10a_MRwbHFUuDdfr86RUu","rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"loading":null,"isPartial":false}
4
+ 0:{"buildId":"6WjF0Utj3STrFgg7vZVPK","rsc":["$","$1","c",{"children":[null,["$","$L2",null,{"parallelRouterKey":"children","template":["$","$L3",null,{}]}]]}],"loading":null,"isPartial":false}