geneseed 3.3.0 → 3.5.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 (231) hide show
  1. package/CHANGELOG.md +323 -0
  2. package/DESIGN.md +11 -14
  3. package/QUICKSTART.md +3 -1
  4. package/README.md +53 -44
  5. package/SETUP.md +25 -27
  6. package/SHIPPED.md +26 -32
  7. package/adapters/bob/README.md +12 -9
  8. package/adapters/copilot/README.md +28 -26
  9. package/adapters/opencode/GLOBAL-HARNESS-SPEC.md +1 -1
  10. package/adapters/opencode/README.md +8 -4
  11. package/adapters/opencode/plugins/geneseed-context.js +5 -3
  12. package/adapters/opencode/plugins/geneseed-workflow.js +30 -3
  13. package/adapters/opencode/workflows/_runtime.js +97 -7
  14. package/bin/build-driver.mjs +5 -1248
  15. package/bin/geneseed-cli.mjs +11 -6
  16. package/bin/geneseed-hook.mjs +4 -2
  17. package/docs/candidate-hosts.md +1 -1
  18. package/docs/design-history.md +37 -37
  19. package/docs/extending.md +49 -27
  20. package/docs/token-footprint.md +52 -26
  21. package/docs/web/agents.md +1 -1
  22. package/docs/web/claude-hooks.md +3 -2
  23. package/docs/web/collaboration.md +2 -2
  24. package/docs/web/first-session.md +2 -2
  25. package/docs/web/footprint.md +2 -2
  26. package/docs/web/harnesses.md +1 -1
  27. package/docs/web/model.md +1 -1
  28. package/docs/web/plugin-workflow.md +1 -0
  29. package/docs/web/rules.md +3 -3
  30. package/docs/web/setup-choices.md +2 -2
  31. package/docs/web/skills.md +1 -1
  32. package/docs/web/themes-author.md +1 -1
  33. package/docs/web-ui.md +18 -10
  34. package/harness.config.json +1 -1
  35. package/js/README.md +6 -5
  36. package/js/build/driver.mjs +1191 -0
  37. package/js/build/emit-claude.mjs +17 -10
  38. package/js/build/emit-common.mjs +4 -4
  39. package/js/build/generate.mjs +1 -1
  40. package/js/build/render.mjs +48 -44
  41. package/js/build/stubs.mjs +1 -1
  42. package/js/build/themes.mjs +4 -4
  43. package/js/build/version.mjs +12 -0
  44. package/js/cli-table.json +21 -6
  45. package/js/hosts/hooks.mjs +89 -74
  46. package/js/hosts/hosts.mjs +19 -2
  47. package/js/hosts/mcp.mjs +14 -20
  48. package/js/hosts/native.mjs +85 -25
  49. package/js/hosts/opencode.mjs +14 -0
  50. package/js/hosts/settings.mjs +52 -104
  51. package/js/inspect/checks-authoring.mjs +117 -3
  52. package/js/inspect/diff.mjs +1 -1
  53. package/js/inspect/doctor.mjs +1 -1
  54. package/js/inspect/excludes.mjs +1 -1
  55. package/js/inspect/inventory.mjs +12 -7
  56. package/js/inspect/scan.mjs +3 -14
  57. package/js/inspect/status.mjs +2 -2
  58. package/js/inspect/validate.mjs +1 -1
  59. package/js/lib/fs.mjs +23 -8
  60. package/js/lib/json.mjs +7 -1
  61. package/js/lib/proc.mjs +6 -4
  62. package/js/maintain/migrate.mjs +1 -1
  63. package/js/maintain/setup.mjs +1 -1
  64. package/js/maintain/uninstall.mjs +17 -15
  65. package/js/ui/cli.mjs +19 -0
  66. package/js/ui/menu.mjs +1 -1
  67. package/js/web/actions.mjs +4 -4
  68. package/js/web/activity.mjs +4 -4
  69. package/js/web/api.mjs +14 -11
  70. package/js/web/daemon.mjs +1 -1
  71. package/js/web/docs.mjs +12 -12
  72. package/js/web/handler.mjs +12 -5
  73. package/js/web/jobs.mjs +1 -1
  74. package/package.json +1 -1
  75. package/registry.json +86 -79
  76. package/src/AGENT.md.tmpl +83 -48
  77. package/src/agents/architect.md +4 -1
  78. package/src/agents/developer.md +2 -2
  79. package/src/agents/explorer.md +2 -0
  80. package/src/agents/operator.md +13 -0
  81. package/src/agents/pragmatist.md +12 -0
  82. package/src/agents/researcher.md +72 -0
  83. package/src/agents/reviewer.md +5 -2
  84. package/src/agents/security.md +7 -1
  85. package/src/agents/skeptic.md +2 -1
  86. package/src/agents/tester.md +5 -1
  87. package/src/agents/user-advocate.md +13 -0
  88. package/src/doctrines/README.md +26 -3
  89. package/src/doctrines/craft.md +78 -5
  90. package/src/doctrines/ops.md +62 -0
  91. package/src/doctrines/process.md +91 -4
  92. package/src/doctrines/rigor.md +41 -1
  93. package/src/laws/universal.md +27 -21
  94. package/src/memory/README.md +4 -2
  95. package/src/modes/foreman.md +5 -5
  96. package/src/notebook/README.md +2 -1
  97. package/src/ontology/universal.md +71 -67
  98. package/src/postures/peer.md +3 -0
  99. package/src/skills/_self-improvement.md +19 -0
  100. package/src/skills/_template.md +1 -12
  101. package/src/skills/brainstorm.md +37 -19
  102. package/src/skills/bruno-collection-generator.md +2 -13
  103. package/src/skills/bruno-test-writer.md +3 -14
  104. package/src/skills/ci-fix.md +49 -0
  105. package/src/skills/codebase-design.md +1 -12
  106. package/src/skills/commit.md +1 -12
  107. package/src/skills/consolidate-memory.md +50 -0
  108. package/src/skills/council.md +1 -12
  109. package/src/skills/daydream/LICENSE +21 -0
  110. package/src/skills/daydream/VENDOR.md +3 -1
  111. package/src/skills/debug.md +1 -12
  112. package/src/skills/deps-audit.md +46 -0
  113. package/src/skills/develop.md +38 -20
  114. package/src/skills/document-project.md +1 -12
  115. package/src/skills/domain-modeling.md +1 -12
  116. package/src/skills/forge-mcp.md +1 -12
  117. package/src/skills/fresh-eyes.md +1 -12
  118. package/src/skills/frontend-design.md +1 -12
  119. package/src/skills/geneseed-code-review.md +7 -14
  120. package/src/skills/geneseed.md +1 -12
  121. package/src/skills/git-archaeology.md +1 -12
  122. package/src/skills/git-rescue.md +1 -12
  123. package/src/skills/handoff.md +1 -12
  124. package/src/skills/herdr.md +1 -12
  125. package/src/skills/ingest.md +1 -12
  126. package/src/skills/migrate.md +1 -12
  127. package/src/skills/opencode-theme.md +1 -12
  128. package/src/skills/parallel-agents.md +4 -15
  129. package/src/skills/pipeline.md +6 -17
  130. package/src/skills/plan.md +1 -12
  131. package/src/skills/ponytail.md +1 -12
  132. package/src/skills/profile.md +1 -12
  133. package/src/skills/prose.md +1 -12
  134. package/src/skills/prototype.md +1 -12
  135. package/src/skills/quiz.md +43 -0
  136. package/src/skills/react-view-transitions/VENDOR.md +7 -1
  137. package/src/skills/refactor.md +1 -12
  138. package/src/skills/release.md +1 -12
  139. package/src/skills/repo-map.md +1 -12
  140. package/src/skills/research.md +5 -13
  141. package/src/skills/review-response.md +1 -12
  142. package/src/skills/roast-me.md +1 -12
  143. package/src/skills/rule.md +1 -12
  144. package/src/skills/security-audit.md +51 -0
  145. package/src/skills/ship.md +1 -12
  146. package/src/skills/skill-forge.md +59 -0
  147. package/src/skills/teach.md +50 -0
  148. package/src/skills/tickets.md +1 -12
  149. package/src/skills/wayfinder.md +1 -12
  150. package/src/skills/wiki.md +1 -12
  151. package/src/skills/workflow.md +82 -26
  152. package/src/skills/worktree.md +52 -0
  153. package/themes/_TEMPLATE.json +15 -12
  154. package/themes/biker.json +14 -11
  155. package/themes/commentator.json +14 -11
  156. package/themes/cyberpunk.json +14 -11
  157. package/themes/gamer.json +14 -11
  158. package/themes/imperial.json +14 -11
  159. package/themes/joker.json +14 -11
  160. package/themes/marvin.json +14 -11
  161. package/themes/mean.json +14 -11
  162. package/themes/military.json +14 -11
  163. package/themes/neutral.json +15 -12
  164. package/themes/opencode/README.md +2 -2
  165. package/themes/pirate.json +14 -11
  166. package/themes/sports.json +14 -11
  167. package/themes/verstappen.json +14 -11
  168. package/themes/wizard.json +14 -11
  169. package/web/dist/assets/Activity-Flgf4kHy.js +1 -0
  170. package/web/dist/assets/ActivityDetail-DIpr85nh.js +1 -0
  171. package/web/dist/assets/CatalogRow-CjyLjaLb.js +1 -0
  172. package/web/dist/assets/Diff-Deisdha8.js +2 -0
  173. package/web/dist/assets/Docs-DGUdY4l4.js +2 -0
  174. package/web/dist/assets/Doctor-F74lJ69P.js +1 -0
  175. package/web/dist/assets/FilterInput-BakJLvaV.js +1 -0
  176. package/web/dist/assets/GreenhouseView-D072lBiD.js +2 -0
  177. package/web/dist/assets/Harness-DNRP2Va7.js +1 -0
  178. package/web/dist/assets/JournalView-DWFqZ0Iw.js +1 -0
  179. package/web/dist/assets/Laws-BN6g3HU7.js +3 -0
  180. package/web/dist/assets/Library-CDOv4emM.js +1 -0
  181. package/web/dist/assets/Markdown-BQAvN8xx.js +38 -0
  182. package/web/dist/assets/OperatorHudView-CwNIUVX8.js +2 -0
  183. package/web/dist/assets/Profile-CpP9BTne.js +1 -0
  184. package/web/dist/assets/Rules-DFXsUCB7.js +1 -0
  185. package/web/dist/assets/Settings-BqZVUtJ5.js +1 -0
  186. package/web/dist/assets/Skills-Cu6kBgfF.js +1 -0
  187. package/web/dist/assets/StatusBadge-Cg6j-NJL.js +1 -0
  188. package/web/dist/assets/activity-iWaWVtsR.js +1 -0
  189. package/web/dist/assets/drawable-BgfrEBer.js +1 -0
  190. package/web/dist/assets/index-CAqrWhKl.js +2 -0
  191. package/web/dist/assets/index-Ruh93A3A.css +1 -0
  192. package/web/dist/assets/jobBuckets-Dbq8ZlWW.js +1 -0
  193. package/web/dist/assets/lawCats-BLgxl151.js +1 -0
  194. package/web/dist/assets/react-DbkvxWG5.js +8 -0
  195. package/web/dist/assets/rolldown-runtime-CbXtAM7H.js +1 -0
  196. package/web/dist/index.html +4 -3
  197. package/web/src/pages/Laws.jsx +22 -8
  198. package/src/skills/clarify.md +0 -28
  199. package/src/skills/crash-course.md +0 -29
  200. package/src/skills/decode.md +0 -29
  201. package/src/skills/drill.md +0 -29
  202. package/src/skills/feynman.md +0 -27
  203. package/src/skills/gap-detector.md +0 -27
  204. package/src/skills/learning-path.md +0 -27
  205. package/src/skills/react-view-transitions/README.md +0 -42
  206. package/src/skills/tdd.md +0 -31
  207. package/web/dist/assets/Activity-BfVcLrda.js +0 -1
  208. package/web/dist/assets/ActivityDetail-CQXccGPl.js +0 -1
  209. package/web/dist/assets/CatalogRow-DALEQImZ.js +0 -1
  210. package/web/dist/assets/Diff-BIjxXx46.js +0 -5
  211. package/web/dist/assets/Doctor-CJLbgsrw.js +0 -1
  212. package/web/dist/assets/FilterInput-CkUCk_lY.js +0 -1
  213. package/web/dist/assets/GreenhouseView-DfC5IILJ.js +0 -2
  214. package/web/dist/assets/Harness-Dm5CCU-v.js +0 -1
  215. package/web/dist/assets/JournalView-Cpu2eI4s.js +0 -1
  216. package/web/dist/assets/Laws-DDDVFuQz.js +0 -3
  217. package/web/dist/assets/Library-Dao3T9na.js +0 -1
  218. package/web/dist/assets/Markdown-C__nuWX5.js +0 -46
  219. package/web/dist/assets/OperatorHudView-DEpCtAjP.js +0 -2
  220. package/web/dist/assets/Profile-BlXtUlh2.js +0 -1
  221. package/web/dist/assets/Rules-DIre6gxR.js +0 -1
  222. package/web/dist/assets/Skills-rY13ZPhM.js +0 -1
  223. package/web/dist/assets/StatusBadge-wW_RS_my.js +0 -1
  224. package/web/dist/assets/activity-DpYPKNrA.js +0 -1
  225. package/web/dist/assets/index-BEZvPvpF.js +0 -1
  226. package/web/dist/assets/index-DNQE5ydy.js +0 -10
  227. package/web/dist/assets/index-DzdQjvM1.css +0 -1
  228. package/web/dist/assets/index-PmQGRS1X.js +0 -2
  229. package/web/dist/assets/jobBuckets-DfTUJUxR.js +0 -1
  230. package/web/dist/assets/lawCats-DUS9UTH4.js +0 -1
  231. package/web/dist/assets/react-DOpiTn5v.js +0 -32
@@ -0,0 +1 @@
1
+ @font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/space-grotesk-latin-400-normal-CJ-V5oYT.woff2)format("woff2")}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/space-grotesk-latin-500-normal-lFbtlQH6.woff2)format("woff2")}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/space-grotesk-latin-600-normal-DjKNqYRj.woff2)format("woff2")}@font-face{font-family:Space Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-grotesk-latin-700-normal-RjhwGPKo.woff2)format("woff2")}@font-face{font-family:Hanken Grotesk;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/hanken-grotesk-latin-400-normal-BG6hkEXj.woff2)format("woff2")}@font-face{font-family:Hanken Grotesk;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/hanken-grotesk-latin-500-normal-DrDcrrxK.woff2)format("woff2")}@font-face{font-family:Hanken Grotesk;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/hanken-grotesk-latin-600-normal-CIXX6EOa.woff2)format("woff2")}@font-face{font-family:Hanken Grotesk;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/hanken-grotesk-latin-700-normal-CeQ8H3UY.woff2)format("woff2")}@font-face{font-family:Hanken Grotesk;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/hanken-grotesk-latin-400-italic-Bserb8X5.woff2)format("woff2")}@font-face{font-family:Hanken Grotesk;font-style:italic;font-display:swap;font-weight:500;src:url(/assets/hanken-grotesk-latin-500-italic-BGfwwhek.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/jetbrains-mono-latin-400-normal-V6pRDFza.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/jetbrains-mono-latin-500-normal-BWZEU5yA.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/jetbrains-mono-latin-600-normal-C8RAYTDA.woff2)format("woff2")}@font-face{font-family:Space Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/space-mono-latin-400-normal-Rg4St2Dn.woff2)format("woff2")}@font-face{font-family:Space Mono;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/space-mono-latin-700-normal-mWgeinG7.woff2)format("woff2")}@font-face{font-family:Space Mono;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/space-mono-latin-400-italic-YylcN9Ay.woff2)format("woff2")}@font-face{font-family:Space Mono;font-style:italic;font-display:swap;font-weight:700;src:url(/assets/space-mono-latin-700-italic-vNvENeTh.woff2)format("woff2")}@font-face{font-family:IBM Plex Serif;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-serif-latin-400-normal-BIGslYFI.woff2)format("woff2")}@font-face{font-family:IBM Plex Serif;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-serif-latin-500-normal-REKAfBVG.woff2)format("woff2")}@font-face{font-family:IBM Plex Serif;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-serif-latin-600-normal-DAxitmSu.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2)format("woff2")}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/oswald-latin-400-normal-BAFo8sP8.woff2)format("woff2")}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/oswald-latin-500-normal-B-eyT0Dw.woff2)format("woff2")}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/oswald-latin-600-normal-plFmSr5g.woff2)format("woff2")}@font-face{font-family:Oswald;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/oswald-latin-700-normal-vy6hmKSr.woff2)format("woff2")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/poppins-latin-400-normal-cpxAROuN.woff2)format("woff2")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/poppins-latin-500-normal-C8OXljZJ.woff2)format("woff2")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/poppins-latin-600-normal-zEkxB9Mr.woff2)format("woff2")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/poppins-latin-700-normal-Qrb0O0WB.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2)format("woff2")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-mono-latin-600-normal-BgSNZQsw.woff2)format("woff2")}@font-face{font-family:Audiowide;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/audiowide-latin-400-normal-6GFCX7ni.woff2)format("woff2")}@font-face{font-family:Geist Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/geist-mono-latin-400-normal-DKaoCDn5.woff2)format("woff2")}@font-face{font-family:Geist Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/geist-mono-latin-500-normal-C3sF8Y1B.woff2)format("woff2")}@font-face{font-family:Geist Mono;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/geist-mono-latin-600-normal-BHzjB6_C.woff2)format("woff2")}:root{--bg:#08090b;--bg-2:#0c0e11;--surface:#101317;--surface-2:#14181d;--surface-3:#1b2026;--line:#2c333b;--line-2:#3a434d;--line-3:#4c5762;--text:#eaeef2;--text-2:#9aa6b2;--text-3:#727f8e;--accent:#3ad4c4;--accent-2:#2ba89b;--accent-ink:#04100d;--accent-soft:color-mix(in srgb, var(--accent) 13%, transparent);--accent-line:color-mix(in srgb, var(--accent) 34%, transparent);--good:#4ed888;--warn:#e8b53d;--bad:#ff5c57;--r-xs:4px;--r-sm:7px;--r-md:11px;--r-lg:16px;--r-xl:22px;--rail-w:clamp(232px, 18vw, 256px);--topbar-h:56px;--shadow-pop:0 18px 50px -12px #000000b3, 0 2px 0 #ffffff05 inset;--shadow-card:0 1px 0 #ffffff05 inset, 0 14px 40px -28px #000000e6;--font-display:"Space Grotesk", system-ui, sans-serif;--font-ui:"Hanken Grotesk", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--bg);color:var(--text);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:14px;line-height:1.55}#root{height:100%}::selection{background:var(--accent-soft);color:var(--text)}a{color:var(--accent);text-decoration:none}button{font-family:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-xs)}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.law-rowhead .toggle-col{text-align:center;vertical-align:middle;width:42px}.law-row .toggle-col{vertical-align:middle;justify-content:center;align-items:center;display:flex}.skip-link{z-index:100;border:1px solid var(--accent);background:var(--surface);color:var(--text);border-radius:10px;padding:10px 16px;font-size:13px;text-decoration:none;position:fixed;top:8px;left:-999px}.skip-link:focus{left:8px}.atmos{pointer-events:none;z-index:0;background:radial-gradient(900px 520px at 78% -8%, var(--accent-soft), transparent 60%), radial-gradient(700px 600px at -6% 102%, color-mix(in srgb, var(--accent) 5%, transparent), transparent 60%);opacity:.9;position:fixed;inset:0}.atmos:after{content:"";opacity:.025;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.4'/%3E%3C/svg%3E");position:absolute;inset:0}.app{z-index:1;color:var(--text);background:var(--bg);grid-template-columns:var(--rail-w) 1fr;scrollbar-color:var(--line-2) transparent;min-height:100%;display:grid;position:relative}.app,.app *{scrollbar-width:thin}.app ::-webkit-scrollbar{width:9px;height:9px}.app ::-webkit-scrollbar-thumb{background:var(--line-2);border-radius:999px}.app ::-webkit-scrollbar-thumb:hover{background:var(--line-3)}.app ::-webkit-scrollbar-track{background:0 0}.app ::-webkit-scrollbar-corner{background:0 0}.rail{border-right:1px solid var(--line);background:linear-gradient(180deg, var(--bg-2), var(--bg));flex-direction:column;align-self:start;gap:2px;height:100vh;padding:18px 14px;display:flex;position:sticky;top:0;overflow-y:auto}.rail-vitals{flex:none}.rail-brand{cursor:pointer;-webkit-user-select:none;user-select:none;font:inherit;color:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:11px;padding:6px 10px 16px;display:flex}.sprout{width:30px;height:30px;filter:drop-shadow(0 0 10px var(--accent-soft));flex:none}.rail-brand:hover .sprout{transform:rotate(-7deg)}.sprout{transform-origin:50% 88%;transition:transform .25s}.brand-text{flex-direction:column;line-height:1.1;display:flex}.brand-name{font-family:var(--font-display);letter-spacing:-.01em;font-size:17px;font-weight:600}.brand-name b{color:var(--accent);font-weight:600}.brand-sub{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);margin-top:2px;font-size:9.5px}.rail-group{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--text-3);padding:16px 12px 6px;font-size:9.5px}.rail-nav{flex-direction:column;gap:1px;display:flex;position:relative}.rail-thread{background:linear-gradient(var(--line-2), transparent);border-radius:2px;width:2px;position:absolute;top:8px;bottom:8px;left:4px}.rail-item{border-radius:var(--r-sm);cursor:pointer;color:var(--text-2);align-items:center;gap:11px;padding:9px 12px 9px 18px;font-size:13.5px;font-weight:500;transition:color .14s,background .14s;display:flex;position:relative}.rail-item:hover{color:var(--text);background:var(--surface)}.rail-item .glyph{opacity:.8;flex:none;width:17px;height:17px}.rail-item .tag{font-family:var(--font-mono);color:var(--text-3);font-variant-numeric:tabular-nums;margin-left:auto;font-size:11px}.rail-item.active{color:var(--text);background:linear-gradient(90deg, var(--accent-soft), transparent 88%)}.rail-item.active:before{content:"";background:var(--accent);width:3px;height:18px;box-shadow:0 0 12px var(--accent);border-radius:3px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.rail-item.active .glyph{opacity:1;color:var(--accent)}.rail-item.active .tag{color:var(--accent)}.rail-spacer{flex:1}.rail-sub{flex-direction:column;gap:1px;margin:2px 0 4px;display:flex;position:relative}.rail-sub:before{content:"";background:var(--line-2);width:1px;position:absolute;top:4px;bottom:6px;left:25px}.rail-subitem{border-radius:var(--r-sm);cursor:pointer;color:var(--text-3);align-items:center;gap:9px;padding:7px 12px 7px 38px;font-size:12.5px;font-weight:500;text-decoration:none;transition:color .14s,background .14s;display:flex;position:relative}.rail-subitem:hover{color:var(--text);background:var(--surface)}.rail-subitem .tag{font-family:var(--font-mono);color:var(--text-3);font-variant-numeric:tabular-nums;margin-left:auto;font-size:10.5px}.rail-subitem.active{color:var(--text);background:linear-gradient(90deg, var(--accent-soft), transparent 88%)}.rail-subitem.active:before{content:"";background:var(--accent);width:3px;height:13px;box-shadow:0 0 10px var(--accent);border-radius:3px;position:absolute;top:50%;left:24px;transform:translateY(-50%)}.rail-subitem.active .tag{color:var(--accent)}.rail-foot{border-top:1px solid var(--line);margin-top:8px;padding:12px 12px 2px}.rail-foot .voice{cursor:pointer;border-radius:var(--r-sm);font:inherit;color:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:9px;width:100%;padding:8px 10px;display:flex}.rail-foot .voice:hover{background:var(--surface)}.voice-orb{background:var(--accent);width:13px;height:13px;box-shadow:0 0 10px var(--accent);border-radius:50%;flex:none}.voice-meta{min-width:0;line-height:1.2}.voice-meta .vk{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);font-size:9px}.voice-meta .vv{text-transform:capitalize;font-size:13px;font-weight:600}.voice .chev{color:var(--text-3);margin-left:auto;font-size:12px}@media (width<=960px){:root{--rail-w:62px}.rail{padding:18px 6px}.rail-brand{justify-content:center;padding:6px 0 14px}.brand-text,.voice-meta,.voice .chev{display:none}.rail-item span,.rail-item .tag{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.rail-group{background:var(--line-2);height:1px;margin:10px 10px 8px;padding:0;font-size:0}.rail-item{justify-content:center;padding:10px 0 10px 6px}.rail-foot{padding:12px 0 2px}.rail-foot .voice{justify-content:center;padding:8px 0}}.tb-menu,.nav-scrim{display:none}@media (width<=720px){.topbar .prompt{display:none}.tb-search input{width:150px}.app{grid-template-columns:1fr}.tb-menu{border:1px solid var(--line);background:var(--surface);width:34px;height:34px;color:var(--text-2);cursor:pointer;border-radius:9px;flex:none;place-items:center;margin-left:-6px;display:inline-grid}.tb-menu:hover{color:var(--text);border-color:var(--line-2)}:root{--rail-w:248px}.rail{z-index:40;width:var(--rail-w);visibility:hidden;height:100dvh;padding:18px 14px;transition:transform .22s,visibility .22s;position:fixed;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-100%);box-shadow:0 0 60px -10px #000c}.app.nav-open .rail{visibility:visible;transform:none}.brand-text,.voice-meta,.voice .chev{display:flex}.rail-item span,.rail-item .tag{clip-path:none;width:auto;height:auto;position:static}.rail-group{background:0 0;height:auto;margin:14px 0 6px;padding:0 10px;font-size:9.5px}.rail-item{justify-content:flex-start;padding:9px 10px}.nav-scrim{z-index:39;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);cursor:pointer;background:#0000008c;border:0;padding:0;display:block;position:fixed;inset:0}}@media (width<=720px) and (prefers-reduced-motion:reduce){.rail{transition:none}}.col{flex-direction:column;min-width:0;min-height:100vh;display:flex}.topbar{z-index:6;height:var(--topbar-h);border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--bg) 78%, transparent);-webkit-backdrop-filter:blur(14px)saturate(140%);backdrop-filter:blur(14px)saturate(140%);align-items:center;gap:16px;padding:0 26px;display:flex;position:sticky;top:0}.prompt{font-family:var(--font-mono);white-space:nowrap;text-overflow:ellipsis;font-size:12.5px;overflow:hidden}.prompt .path{color:var(--text-3)}.prompt .sep{color:var(--accent);margin:0 7px 0 2px}.prompt .cmd{color:var(--text)}.prompt .flag{color:var(--text-2)}.prompt .ver{color:var(--text-3,var(--text-2));opacity:.75}@media (width<=720px){.prompt .ver{display:none}}.prompt .cur{vertical-align:-2px;background:var(--accent);width:7px;height:15px;margin-left:5px;animation:1.05s steps(2,end) infinite blink;display:inline-block}@keyframes blink{0%,50%{opacity:1}50.01%,to{opacity:0}}.topbar-spacer{flex:1}.tb-search{position:relative}.tb-search input{background:var(--surface);width:240px;color:var(--text);border:1px solid var(--line);border-radius:var(--r-sm);font-family:var(--font-ui);padding:8px 12px 8px 32px;font-size:13px;transition:border-color .14s}.tb-search input:focus{border-color:var(--accent-line);outline:none}.tb-search .mag{width:14px;height:14px;color:var(--text-3);position:absolute;top:50%;left:11px;transform:translateY(-50%)}.kbd{font-family:var(--font-mono);color:var(--text-3);border:1px solid var(--line-2);border-radius:4px;padding:1px 5px;font-size:10px;position:absolute;top:50%;right:9px;transform:translateY(-50%)}.spotlight{z-index:12;background:var(--surface);width:380px;max-height:60vh;color:var(--text);border:1px solid var(--line);border-radius:var(--r-sm);padding:6px 0;position:absolute;top:calc(100% + 6px);right:0;overflow-y:auto;box-shadow:0 14px 40px #00000052}.spot-empty{color:var(--text-3);padding:14px 16px;font-size:12.5px}.spot-group+.spot-group{border-top:1px solid var(--line-2);margin-top:4px;padding-top:4px}.spot-group-head{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);padding:6px 14px 4px;font-size:10px}.spot-row{cursor:pointer;padding:7px 14px}.spot-row.on{background:color-mix(in srgb, var(--accent) 16%, transparent)}.spot-title{color:var(--text);font-size:13px}.spot-desc{color:var(--text-3);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:11.5px;overflow:hidden}.page{flex:1;padding:30px 34px 120px;overflow:auto}.page.center{width:100%;max-width:1180px;margin:0 auto}.pad{max-width:1180px;margin:0 auto}.pad-wide{max-width:none}.eyebrow{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--text-3);align-items:center;gap:8px;font-size:10px;display:inline-flex}.eyebrow:before{content:"";background:var(--accent);border-radius:2px;width:14px;height:2px}h1.h{font-family:var(--font-display);letter-spacing:-.02em;margin:10px 0 4px;font-size:27px;font-weight:600}h2.h{font-family:var(--font-display);letter-spacing:-.01em;margin:0;font-size:19px;font-weight:600}.sub{color:var(--text-2);max-width:70ch;margin:0;font-size:14px}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.muted{color:var(--text-2)}.dim{color:var(--text-3)}svg.glyph{flex:none;width:16px;height:16px}.card{background:linear-gradient(180deg, var(--surface), var(--surface-2));border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-card)}.card.pad-lg{padding:22px 24px}.card.pad-md{padding:18px 20px}.act-card{transition:border-color .15s,transform .12s}.act-card:hover{border-color:var(--line-2);transform:translateY(-1px)}.act-chev{color:var(--text-3);transition:color .14s,transform .14s}.act-card:hover .act-chev{color:var(--text);transform:translate(2px)}.card-head{align-items:center;gap:12px;margin-bottom:16px;display:flex}.card-head h3{font-family:var(--font-display);letter-spacing:-.01em;margin:0;font-size:16.5px;font-weight:600}.card-head .right{align-items:center;gap:8px;margin-left:auto;display:flex}.tick{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);font-size:10px}.metric{font-family:var(--font-display);font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-weight:500;line-height:1}.badge{font-family:var(--font-mono);letter-spacing:.02em;border:1px solid var(--line-2);color:var(--text-2);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:3px 9px;font-size:11px;display:inline-flex}.badge .dot{background:currentColor;border-radius:50%;width:6px;height:6px}.badge.ok{color:var(--good);border-color:color-mix(in srgb, var(--good) 36%, transparent);background:color-mix(in srgb, var(--good) 9%, transparent)}.badge.warn{color:var(--warn);border-color:color-mix(in srgb, var(--warn) 36%, transparent);background:color-mix(in srgb, var(--warn) 9%, transparent)}.badge.bad{color:var(--bad);border-color:color-mix(in srgb, var(--bad) 36%, transparent);background:color-mix(in srgb, var(--bad) 9%, transparent)}.badge.acc{color:var(--accent);border-color:var(--accent-line);background:var(--accent-soft)}.btn{cursor:pointer;white-space:nowrap;font-family:var(--font-ui);border-radius:var(--r-sm);background:var(--accent);color:var(--accent-ink);border:1px solid #0000;align-items:center;gap:8px;padding:9px 15px;font-size:13px;font-weight:600;transition:filter .14s,transform 80ms;display:inline-flex}.btn:hover{filter:brightness(1.08)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.45;cursor:default;filter:none}.btn.ghost{color:var(--text);border-color:var(--line-2);background:0 0}.btn.ghost:hover{border-color:var(--accent-line);background:var(--surface);filter:none}.btn.soft{background:var(--accent-soft);color:var(--accent);border-color:var(--accent-line)}.btn.soft:hover{background:color-mix(in srgb, var(--accent) 18%, transparent);filter:none}.btn.sm{padding:5px 10px;font-size:12px}.btn .glyph{width:15px;height:15px}.fl-heirloom .btn:not(.ghost):not(.soft):disabled,.fl-perspective .btn:not(.ghost):not(.soft):disabled,.fl-matrix .btn:not(.ghost):not(.soft):not(.btn-grid):disabled{box-shadow:none;background-image:none}.fl-aurora .btn:disabled,.fl-neon .btn:disabled,.fl-cosmic .btn:not(.ghost):not(.soft):disabled{opacity:1;background:var(--surface-3);color:var(--text-3);box-shadow:none;background-image:none}.seg{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);gap:2px;padding:3px;display:inline-flex}.seg button{cursor:pointer;color:var(--text-2);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;background:0 0;border:0;border-radius:5px;padding:6px 13px;font-size:11px;transition:color .14s,background .14s}.seg button:hover{color:var(--text)}.seg button.on{color:var(--accent-ink);background:var(--accent)}.kv{border-bottom:1px solid var(--line);grid-template-columns:168px 1fr;align-items:baseline;gap:16px;padding:11px 0;font-size:13.5px;display:grid}.kv:last-child{border-bottom:0}.kv .k{color:var(--text-3);font-family:var(--font-mono);letter-spacing:.04em;font-size:11.5px}.kv .v{color:var(--text);word-break:break-word}.meter{background:var(--surface-3);border-radius:999px;height:7px;overflow:hidden}.meter>i{background:linear-gradient(90deg, var(--accent-2), var(--accent));border-radius:999px;height:100%;display:block}.hr{background:var(--line);border:0;height:1px;margin:22px 0}code{font-family:var(--font-mono);background:var(--surface-3);border:1px solid var(--line);border-radius:var(--r-xs);color:var(--text);padding:1px 6px;font-size:.92em}.sel{background:var(--surface);color:var(--text);border:1px solid var(--line-2);border-radius:var(--r-sm);font-family:var(--font-mono);cursor:pointer;min-width:180px;padding:9px 12px;font-size:12.5px}.sel:focus{border-color:var(--accent-line);outline:none}.sel option{background:var(--surface-2)}.grid{gap:16px;display:grid}.g-2{grid-template-columns:repeat(2,1fr)}.g-3{grid-template-columns:repeat(3,1fr)}.g-4{grid-template-columns:repeat(4,1fr)}.row{align-items:center;gap:12px;display:flex}.wrap{flex-wrap:wrap}.between{justify-content:space-between}.stack{flex-direction:column;display:flex}.grid.split-status{grid-template-columns:1.55fr 1fr;align-items:start}.grid.split-operator{grid-template-columns:1.6fr 1fr;align-items:start}.grid.split-even{grid-template-columns:1fr 1fr;align-items:start}.grid.split-lineage{grid-template-columns:1fr 1.1fr;align-items:stretch}.head-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px;display:flex}.hero{grid-template-columns:232px 1fr;align-items:center;gap:28px;display:grid}.ring-wrap{width:232px;height:232px;position:relative}.ring-wrap svg{width:100%;height:100%;transform:rotate(-90deg)}.ring-center{text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.ring-center .pct{font-family:var(--font-display);letter-spacing:-.03em;font-size:44px;font-weight:600;line-height:1}.ring-center .lbl{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--text-3);margin-top:6px;font-size:9.5px}.hero-facts{flex-direction:column;gap:4px;display:flex}.hero-facts .ttl{font-family:var(--font-display);letter-spacing:-.02em;font-size:25px;font-weight:600}.hero-chips{flex-wrap:wrap;gap:8px;margin:14px 0 18px;display:flex}.chip{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);font-family:var(--font-mono);align-items:center;gap:8px;padding:7px 12px;font-size:12px;display:inline-flex}.chip .ck{color:var(--text-3)}.chip .cv{color:var(--text)}.kpiband{flex-wrap:wrap;align-items:center;gap:30px;padding:16px 22px;display:flex}.kseg{cursor:pointer;font:inherit;color:inherit;background:0 0;border:0;align-items:baseline;gap:9px;padding:0;text-decoration:none;display:flex}.kseg-n{font-family:var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:27px;font-weight:500;line-height:1}.kseg-n.zero{color:var(--text-3)}.kseg-l{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);font-size:10px}.kseg:hover .kseg-l{color:var(--accent)}.kseg-spacer{flex:1}.kseg.hot .kseg-n{color:var(--good)}.delta{font-family:var(--font-mono);font-size:11.5px}.delta.up{color:var(--good)}.delta.down{color:var(--bad)}.genome{grid-template-columns:repeat(auto-fill,minmax(216px,1fr));gap:14px;display:grid}.gcell{cursor:pointer;background:var(--bg-2);box-shadow:none;border-radius:var(--r-md);padding:18px;transition:border-color .15s,transform .15s,background .15s;position:relative;overflow:hidden}.gcell:hover{border-color:var(--accent-line);background:var(--surface-2);transform:translateY(-2px)}.gcell .gtop{justify-content:space-between;align-items:center;display:flex}.gcell .gname{font-family:var(--font-display);font-size:15px;font-weight:600}.gcell .gcount{font-family:var(--font-display);letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin:14px 0 4px;font-size:34px;font-weight:500;line-height:1}.gcell .gcount.zero{color:var(--text-3)}.gcell .gdesc{color:var(--text-2);font-size:12.5px}.gcell .gicon{width:20px;height:20px;color:var(--text-3)}.gcell:hover .gicon{color:var(--accent)}.fl-aurora .gcell{background:var(--surface)}.feed{flex-direction:column;display:flex}.feed-row{border-bottom:1px solid var(--line);grid-template-columns:14px 1fr auto;align-items:center;gap:12px;padding:11px 0;display:grid}.feed-row:last-child{border-bottom:0}.feed-dot{background:var(--text-3);border-radius:50%;width:8px;height:8px}.feed-dot.ok{background:var(--good)}.feed-dot.acc{background:var(--accent)}.feed-dot.warn{background:var(--warn)}.feed-dot.bad{background:var(--bad)}.feed-txt{font-size:13px}.feed-txt b{font-weight:600}.feed-when{font-family:var(--font-mono);color:var(--text-3);font-size:11px}.tbl{border-collapse:collapse;width:100%}.tbl th{text-align:left;font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);border-bottom:1px solid var(--line);padding:0 14px 11px;font-size:10px;font-weight:500}.tbl td{border-bottom:1px solid var(--line);vertical-align:middle;padding:12px 14px;font-size:13.5px}.tbl tr:last-child td{border-bottom:0}.tbl tbody tr{transition:background .1s}.tbl tbody tr:hover{background:var(--surface-2)}.tbl .num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:right}.tbl .name{font-weight:600}.tbl .clickable{cursor:pointer}.tbl-scroll{overflow-x:auto}.harness-tbl td{white-space:nowrap}.harness-tbl th.th-acts{width:1%}.harness-tbl .h-exp-cell{width:1%;padding-right:0}.harness-tbl .h-path{text-overflow:ellipsis;max-width:280px;color:var(--text-3);font-family:var(--font-mono);margin-top:3px;font-size:11.5px;display:block;overflow:hidden}.harness-tbl .h-acts{grid-template-columns:168px 78px 92px 92px 84px 38px 32px;justify-content:end;align-items:center;gap:8px;display:grid}.harness-tbl .h-acts .ha-cell{align-items:center;min-width:0;display:flex}.harness-tbl .h-acts .ha-voice,.harness-tbl .h-acts .ha-fp,.harness-tbl .h-acts .ha-posture,.harness-tbl .h-acts .ha-mode,.harness-tbl .h-acts .ha-btn{justify-content:stretch}.harness-tbl .h-acts .ha-sw,.harness-tbl .h-acts .ha-trash{justify-content:center}.harness-tbl .h-acts .sel{width:100%;min-width:0}.harness-tbl .h-acts .btn{justify-content:center;width:100%;min-width:0}.harness-tbl .h-exp{cursor:pointer;color:var(--text-3);background:0 0;border:0;padding:4px;display:inline-flex}.harness-tbl .h-exp:hover{color:var(--text)}.harness-tbl .h-exp .glyph{transition:transform .15s}.harness-tbl .h-exp .glyph.open{transform:rotate(90deg)}.harness-tbl tbody tr.h-detail-row:hover{background:0 0}.harness-tbl .h-detail{white-space:normal;padding-top:4px;padding-bottom:16px}.harness-tbl .h-detail .mcp-target{margin-bottom:0}.harness-tbl .h-detail .mt-head,.harness-tbl .h-detail .mcp-info p{white-space:normal;overflow-wrap:anywhere}.hbar{background:var(--surface-3);border-radius:999px;width:100%;min-width:80px;height:6px;overflow:hidden}.hbar>i{background:var(--accent);height:100%;display:block}.hbar.ok>i{background:var(--good)}.hbar.warn>i{background:var(--warn)}.strand{border-bottom:1px solid var(--line);cursor:pointer;justify-content:space-between;align-items:center;padding:13px 0;display:flex}.strand .strand-name{align-items:center;gap:12px;min-width:150px;font-weight:600;display:flex}.strand .strand-link{color:inherit;text-decoration:none}.strand .strand-link:hover{text-decoration:underline}.strand .strand-dot{background:var(--accent);border-radius:50%;flex:none;width:7px;height:7px}.strand .hbar{flex:1;margin:0 16px}.strand .strand-val{font-family:var(--font-mono);text-align:right;width:34px;font-size:14px}.lineage-track{padding-left:26px;position:relative}.lineage-track .spine{background:linear-gradient(var(--accent), var(--line-2));width:2px;position:absolute;top:6px;bottom:18px;left:7px}.lineage-step{position:relative}.lineage-step:not(:last-child){margin-bottom:22px}.lineage-step .node{border:2px solid var(--bg);background:var(--surface-3);border-radius:50%;width:14px;height:14px;position:absolute;top:3px;left:-26px}.lineage-step .node.on{background:var(--accent);box-shadow:0 0 10px var(--accent)}.lineage-step .lt{font-family:var(--font-display);font-size:15px;font-weight:600}.lineage-step .ld{color:var(--text-2);font-size:13px}.lineage-step .ltag{font-family:var(--font-mono);color:var(--text-3);margin-top:2px;font-size:11px}.lib{grid-template-columns:300px 1fr;align-items:start;gap:20px;display:grid}.lib-list{overflow:hidden}.lib-head{border-bottom:1px solid var(--line);align-items:baseline;gap:8px;padding:13px 16px;display:flex}.lib-head-label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-2);font-size:11px}.lib-head-count{font-family:var(--font-mono);color:var(--text-3);font-variant-numeric:tabular-nums;font-size:11px}.lib-filter{box-sizing:border-box;background:var(--surface);width:100%;color:var(--text);border:0;border-bottom:1px solid var(--line);font-family:var(--font-mono);padding:10px 16px;font-size:12px}.lib-filter:focus{border-bottom-color:var(--accent-line);outline:none}.lib-filter::placeholder{color:var(--text-3)}.lib-more{font-family:var(--font-mono);color:var(--text-3);border-bottom:1px solid var(--line);padding:12px 16px;font-size:11px}.lib-rows{max-height:calc(100vh - 280px);overflow:auto}.lib-row{text-align:left;border:0;border-bottom:1px solid var(--line);cursor:pointer;width:100%;font:inherit;color:var(--text);background:0 0;padding:12px 16px;transition:background .1s;display:block}.lib-row:hover{background:var(--surface-2)}.lib-row.on{background:var(--accent-soft)}.lib-row.on .lr-name{color:var(--accent)}.lib-row .lr-name{align-items:center;gap:8px;font-size:13.5px;font-weight:600;display:flex}.lib-row .lr-name .mono{color:var(--text-3);font-size:11px}.lib-row .lr-desc{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;margin-top:2px;font-size:12px;overflow:hidden}.lib-group{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);background:var(--surface-2);border-bottom:1px solid var(--line);padding:10px 16px 4px;font-size:10px}.mf-doc{flex-direction:column;gap:18px;display:flex}.mf-vault{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2);padding:14px 16px}.mf-vault-head{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.mf-vault-name{font-family:var(--font-display);font-size:15px;font-weight:600}.mf-vault-path{color:var(--text-3);font-size:11.5px}.mf-vault-desc{color:var(--text-2);margin:4px 0 10px;font-size:13px}.mf-roles{flex-wrap:wrap;gap:6px;margin-bottom:12px;display:flex}.mf-role{border-radius:var(--r-sm);background:var(--bg-2);color:var(--text-2);align-items:center;gap:5px;padding:3px 8px;font-size:11.5px;display:inline-flex}.mf-role .glyph{width:13px;height:13px}.mf-role-danger{color:var(--bad);background:color-mix(in srgb, var(--bad) 12%, transparent)}.mf-entries{border-collapse:collapse;width:100%;font-size:12.5px}.mf-entries td{border-top:1px solid var(--line);vertical-align:top;padding:7px 0}.mf-entries tr:first-child td{border-top:0}.mf-path{width:42%;color:var(--text)}.mf-struck{color:var(--text-3);text-decoration:line-through}.mf-load-cell{white-space:nowrap;width:74px}.mf-edesc{color:var(--text-2)}.mf-load{font-family:var(--font-mono);letter-spacing:.04em;border:1px solid color-mix(in srgb, currentColor 36%, transparent);border-radius:999px;padding:2px 8px;font-size:10px;display:inline-block}.mf-load-ok{color:var(--good)}.mf-load-warn{color:var(--warn)}.mf-load-muted{color:var(--text-3)}.mf-empty{color:var(--text-2)}.mf-empty-title{font-family:var(--font-display);color:var(--text);margin-bottom:6px;font-size:15px;font-weight:600}.mf-empty p{margin:0 0 12px;font-size:13px}.mf-raw{margin-top:16px}.mf-raw-toggle{cursor:pointer;font:inherit;color:var(--text-3);background:0 0;border:0;align-items:center;gap:6px;padding:4px 0;font-size:12px;display:inline-flex}.mf-raw-toggle:hover{color:var(--text)}.mf-caret{width:13px;height:13px;transition:transform .12s}.mf-caret.on{transform:rotate(90deg)}.mf-raw-pre{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r-md);font-family:var(--font-mono);color:var(--text-2);margin-top:8px;padding:14px 16px;font-size:12px;overflow:auto}.detail-doc{padding:28px 32px}.detail-doc h1{font-family:var(--font-display);letter-spacing:-.02em;margin:0 0 4px;font-size:24px;font-weight:600}.detail-doc .doc-meta{flex-wrap:wrap;gap:8px;margin:12px 0 22px;display:flex}.detail-doc h2{font-family:var(--font-display);margin:26px 0 8px;font-size:16px;font-weight:600}.detail-doc p{color:var(--text);margin:0 0 12px}.detail-doc ul{color:var(--text);margin:0 0 14px;padding-left:20px}.detail-doc li{margin:4px 0}.detail-doc .wikilink{color:var(--accent);border-bottom:1px dashed var(--accent-line);cursor:pointer}.detail-doc pre{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r-md);font-family:var(--font-mono);color:var(--text-2);padding:14px 16px;font-size:12.5px;overflow:auto}.theme-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;display:grid}.theme-card{border-top:2px solid var(--tc,var(--line));flex-direction:column;gap:12px;padding:20px;display:flex;position:relative;overflow:hidden}.theme-card .tc-glow{background:var(--tc);opacity:.1;filter:blur(20px);pointer-events:none;border-radius:50%;width:130px;height:130px;position:absolute;top:-40px;right:-40px}.theme-card .th-head{align-items:center;gap:10px;display:flex}.theme-card .th-orb{background:var(--tc);width:14px;height:14px;box-shadow:0 0 12px var(--tc);border-radius:50%;flex:none}.theme-card .th-name{font-family:var(--font-display);text-transform:capitalize;font-size:18px;font-weight:600}.theme-card .th-tag{color:var(--text);font-size:13px;font-style:italic;line-height:1.5}.theme-card .th-sigil{font-family:var(--font-mono);color:var(--text-2);background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r-sm);padding:8px 10px;font-size:11.5px;line-height:1.4}.theme-card .btn{align-self:flex-start;margin-top:auto}.theme-card.current{box-shadow:0 0 0 1px var(--tc) inset, var(--shadow-card)}.check{padding:16px 20px;transition:border-color .15s}.check.bad{border-color:color-mix(in srgb, var(--bad) 34%, var(--line))}.check-head{cursor:pointer;width:100%;color:inherit;font:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:12px;display:flex}.check-head:disabled{cursor:default}.check-head:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:4px}.check-head h3{font-family:var(--font-display);margin:0;font-size:14.5px;font-weight:600}.check-head .chev{color:var(--text-3);margin-left:auto;transition:transform .15s}.check.open .check-head .chev{transform:rotate(90deg)}.check-body{border-top:1px solid var(--line);flex-direction:column;gap:8px;margin:14px 0 0;padding:14px 0 0;display:flex}.problem{color:var(--text-2);font-size:13px;font-family:var(--font-mono);grid-template-columns:16px 1fr;gap:10px;display:grid}.problem .x{color:var(--bad)}.graph-search{background:var(--surface);color:var(--text);border:1px solid var(--line);font-family:var(--font-mono);border-radius:6px;width:200px;padding:5px 10px;font-size:12px;transition:border-color .15s}.graph-search:focus{border-color:var(--accent-line);outline:none}.graph-search::placeholder{color:var(--text-3)}.legend{font-family:var(--font-mono);color:var(--text-2);align-items:center;gap:18px;font-size:11.5px;display:flex}.legend .sw{vertical-align:-1px;border-radius:50%;width:10px;height:10px;margin-right:6px;display:inline-block}.diff-file{overflow:hidden}.diff-head{cursor:pointer;border-bottom:1px solid #0000;align-items:center;gap:12px;padding:13px 18px;display:flex}.diff-file.open .diff-head{border-bottom-color:var(--line)}.diff-head .chk{width:16px;height:16px;accent-color:var(--accent)}.diff-head .fname{font-family:var(--font-mono);font-size:13px;font-weight:500}.diff-body{font-family:var(--font-mono);padding:6px 0;font-size:12.5px;line-height:1.7;overflow:auto}.diff-line{white-space:pre;padding:0 18px}.diff-line.add{background:color-mix(in srgb, var(--good) 9%, transparent);color:var(--good)}.diff-line.del{background:color-mix(in srgb, var(--bad) 9%, transparent);color:var(--bad)}.diff-line.ctx{color:var(--text-3)}.diff-line.hunk{color:var(--accent);background:var(--accent-soft)}.mcp-target{border:1px solid var(--line);border-radius:var(--r-md);margin-bottom:14px;overflow:hidden}.mcp-target .mt-head{background:var(--bg-2);font-family:var(--font-mono);color:var(--text-2);align-items:center;gap:8px;padding:11px 16px;font-size:11.5px;display:flex}.mcp-row{border-top:1px solid var(--line);align-items:center;gap:14px;padding:13px 16px;display:flex}.mcp-info{flex:1;min-width:0}.mcp-info .mi-top{align-items:center;gap:8px;display:flex}.mcp-info strong{font-size:13.5px}.mcp-info p{color:var(--text-2);margin:3px 0 0;font-size:12px}.sw-toggle{background:var(--surface-3);border:1px solid var(--line-2);cursor:pointer;appearance:none;border-radius:999px;flex:none;width:38px;height:22px;margin:0;padding:0;transition:background .15s;position:relative}.sw-toggle:after{content:"";background:var(--text-2);border-radius:50%;width:16px;height:16px;transition:transform .15s,background .15s;position:absolute;top:2px;left:2px}.sw-toggle.on{background:var(--accent-soft);border-color:var(--accent-line)}.sw-toggle.on:after{background:var(--accent);transform:translate(16px)}.console{left:var(--rail-w);z-index:20;background:linear-gradient(180deg, var(--surface), var(--bg-2));border-top:1px solid var(--line-2);flex-direction:column;transition:transform .18s cubic-bezier(.22,1,.36,1);display:flex;position:fixed;bottom:0;right:0;box-shadow:0 -16px 40px -20px #000c}.console-head{cursor:pointer;-webkit-user-select:none;user-select:none;flex:none;align-items:center;gap:12px;height:42px;padding:0 18px;display:flex}.console-head .ttl{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-2);align-items:center;gap:9px;font-size:11px;display:flex}.console-head .ttl .live{background:var(--text-3);border-radius:50%;width:7px;height:7px}.console-head .ttl .live.on{background:var(--warn);animation:1.1s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}.console-head .count{font-family:var(--font-mono);color:var(--text-3);border:1px solid var(--line-2);border-radius:999px;padding:0 7px;font-size:11px}.console-head .right{align-items:center;gap:6px;margin-left:auto;display:flex}.console-body{font-family:var(--font-mono);flex:1;padding:8px 18px 16px;font-size:12px;line-height:1.6;overflow:auto}.console-empty{color:var(--text-3);padding:14px 0;font-style:italic}.run{margin-bottom:12px}.run-head{align-items:center;gap:9px;display:flex}.run-head .pr{color:var(--accent);font-weight:600}.run-head .act{color:var(--text)}.run-head .st{margin-left:auto;font-size:11px}.run-head .st.running{color:var(--warn)}.run-head .st.done{color:var(--good)}.run-head .st.failed{color:var(--bad)}.run-out{white-space:pre-wrap;color:var(--text-2);border-left:2px solid var(--line-2);margin:5px 0 0;padding-left:12px}.run-out .c-ok{color:var(--good)}.run-out .c-acc{color:var(--accent)}.run-out .c-warn{color:var(--warn)}.run-out .c-dim{color:var(--text-3)}.iconbtn{border-radius:var(--r-sm);cursor:pointer;width:28px;height:28px;color:var(--text-2);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;display:inline-flex}.iconbtn:hover{background:var(--surface-3);color:var(--text)}.iconbtn .glyph{width:16px;height:16px}.pop{z-index:30;background:var(--surface-2);border:1px solid var(--line-2);border-radius:var(--r-md);width:204px;box-shadow:var(--shadow-pop);max-height:60vh;padding:8px;position:fixed;bottom:72px;left:14px;overflow:auto}.pop-item{border-radius:var(--r-sm);cursor:pointer;width:100%;color:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:10px;padding:8px 10px;font-family:inherit;font-size:13px;display:flex}.pop-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.pop-item:hover{background:var(--surface-3)}.pop-item .po{border-radius:50%;flex:none;width:11px;height:11px}.pop-item .pn{text-transform:capitalize;font-weight:500}.pop-item.on{background:var(--accent-soft)}.pop-item.on .pn{color:var(--accent)}@keyframes rise{0%{transform:translateY(9px)}to{transform:none}}.rise{animation:.5s cubic-bezier(.2,.7,.2,1) both rise;animation-delay:calc(var(--i,0) * 50ms)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.empty{text-align:center;color:var(--text-3);padding:60px 20px}.empty .big{font-family:var(--font-display);color:var(--text-2);margin-bottom:6px;font-size:18px}@media (width<=1180px){.hero,.lib{grid-template-columns:1fr}}.app.light{--bg:#e7eaee;--bg-2:#dde2e7;--surface:#f4f6f8;--surface-2:#ebeef1;--surface-3:#e0e5ea;--line:#c2cbd3;--line-2:#a7b2bc;--line-3:#8593a0;--text:#11161b;--text-2:#3c4750;--text-3:#5a6772;--good:#1f9657;--warn:#b07914;--bad:#d23a37;--shadow-card:0 1px 2px #1f2a210a, 0 14px 36px -28px #1f2a2166;--shadow-pop:0 18px 50px -16px #1f2a2147;--shadow-modal:0 24px 60px -18px #1f2a214d}.app.light .atmos{background:radial-gradient(900px 520px at 80% -10%, var(--accent-soft), transparent 62%), radial-gradient(700px 600px at -6% 102%, color-mix(in srgb, var(--accent) 7%, transparent), transparent 60%);opacity:.7}.app.light .atmos:after{opacity:.015}.app.light .rail{background:linear-gradient(#fbfdfa,#f3f6f2)}.app.light .topbar{background:color-mix(in srgb, var(--bg) 82%, transparent)}.app.light .card{background:linear-gradient(180deg, #fbfdfc, var(--surface-2))}.app.light .sprout{filter:none}.app.light .console{background:linear-gradient(180deg, var(--surface), var(--bg-2))}.app.light .kbd{color:var(--text-3)}.app.light .diff-line.add{background:color-mix(in srgb, var(--good) 13%, transparent)}.app.light .diff-line.del{background:color-mix(in srgb, var(--bad) 13%, transparent)}.app.light .sel option{background:#fbfdfc}.voice-readout{font-family:var(--font-mono);color:var(--text-2);background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r-sm);align-items:center;gap:10px;max-width:64ch;margin:4px 0 16px;padding:9px 13px;font-size:12.5px;display:flex}.voice-readout .vr-cur{color:var(--accent);flex:none;font-weight:600}.voice-readout .vr-txt{color:var(--text);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.voice-tag{color:var(--text-2);margin:0;font-size:13px;font-style:italic}.toast{z-index:40;background:var(--surface-2);border:1px solid var(--line-2);border-radius:var(--r-md);max-width:380px;box-shadow:var(--shadow-pop);padding:14px 16px;font-size:13px;transition:opacity .22s cubic-bezier(.22,1,.36,1),transform .22s cubic-bezier(.22,1,.36,1);position:fixed;bottom:56px;right:18px}@starting-style{.toast{opacity:0;transform:translateY(10px)}}.toast.err{border-color:color-mix(in srgb, var(--bad) 45%, var(--line-2))}.toast.info{border-color:color-mix(in srgb, var(--accent) 45%, var(--line-2))}.run-cancel{margin-left:8px}.detail-doc .markdown h1,.detail-doc .markdown h2,.detail-doc .markdown h3{font-family:var(--font-display);letter-spacing:-.01em;font-weight:600}.detail-doc .markdown h1{margin:22px 0 8px;font-size:20px}.detail-doc .markdown h2{margin:22px 0 8px;font-size:16px}.detail-doc .markdown h3{margin:18px 0 6px;font-size:14px}.detail-doc .markdown p{color:var(--text);margin:0 0 12px}.detail-doc .markdown ul,.detail-doc .markdown ol{margin:0 0 14px;padding-left:20px}.detail-doc .markdown li{margin:4px 0}.detail-doc .markdown a{color:var(--accent);border-bottom:1px dashed var(--accent-line)}.detail-doc .markdown pre{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r-md);font-family:var(--font-mono);color:var(--text-2);padding:14px 16px;font-size:12.5px;overflow:auto}.detail-doc .markdown pre code{background:0 0;border:0;padding:0}.detail-doc .markdown blockquote{border-left:2px solid var(--line-2);color:var(--text-2);margin:0 0 12px;padding:2px 14px}.detail-doc .markdown table{border-collapse:collapse;margin:0 0 14px}.detail-doc .markdown th,.detail-doc .markdown td{border:1px solid var(--line);padding:6px 10px;font-size:13px}.loading{color:var(--text-3);font-family:var(--font-mono);padding:40px 0;font-size:12.5px}.skel{gap:10px;max-width:560px;margin-top:16px;display:grid}.skel-bar{border-radius:var(--r-sm);background:linear-gradient(90deg, var(--surface-2) 25%, var(--surface-3) 50%, var(--surface-2) 75%);background-size:200% 100%;height:13px;animation:1.3s linear infinite skel-shimmer}.skel-bar:nth-child(2){width:72%}.skel-bar:nth-child(3){width:46%}@keyframes skel-shimmer{0%{background-position:200% 0}to{background-position:0 0}}dialog.confirm{background:var(--surface);color:var(--text);border:1px solid var(--line-2);border-radius:var(--r-lg);box-shadow:var(--shadow-pop);max-width:400px;padding:20px 22px}dialog.confirm::backdrop{background:#0000008c}dialog.confirm[open]{transition:opacity .2s cubic-bezier(.22,1,.36,1),transform .2s cubic-bezier(.22,1,.36,1)}dialog.confirm[open]::backdrop{transition:opacity .2s ease-out}@starting-style{dialog.confirm[open]{opacity:0;transform:scale(.96)translateY(6px)}dialog.confirm[open]::backdrop{opacity:0}}.confirm-title{font-family:var(--font-display);margin:0 0 8px;font-size:17px;font-weight:600}.confirm-body{color:var(--text-2);font-size:13px;line-height:1.5}.confirm-actions{justify-content:flex-end;gap:8px;margin-top:18px;display:flex}.law-toolbar .law-filter{border:1px solid var(--line);border-radius:var(--r-sm);max-width:200px;margin:0;padding:8px 12px}.law-toolbar .law-filter:focus{border-color:var(--accent-line)}a.rail-item{color:var(--text-2)}a.rail-item:hover,a.rail-item.active{color:var(--text)}.mb-14{margin-bottom:14px}.mb-16{margin-bottom:16px}.mb-18{margin-bottom:18px}.gap-8{gap:8px}.gap-10{gap:10px}.gap-12{gap:12px}.gap-16{gap:16px}.gap-20{gap:20px}.narrow{max-width:820px}.narrow-lg{max-width:860px}.docs-group{padding:6px 0 4px}.docs-group+.docs-group{border-top:1px solid var(--line)}.docs-group-head{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);padding:10px 16px 6px;font-size:10px}.docs-toc{border:1px solid var(--line-2);background:var(--surface);border-radius:10px;margin:6px 0 22px;padding:12px 16px}.docs-toc-head{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);margin-bottom:6px;font-size:10.5px}.docs-toc ul{margin:0;padding:0;list-style:none}.docs-toc li{padding:2px 0}.docs-toc li.lvl-3{padding-left:14px}.docs-toc a{color:var(--text-2);font-size:13px;text-decoration:none}.docs-toc a:hover{color:var(--accent)}.markdown .docs-here{background:var(--accent-soft);border:1px solid var(--accent-line);border-radius:8px;padding:6px 10px}.cli-card .cli-syn{background:var(--surface);border:1px solid var(--line);font-family:var(--font-mono);white-space:pre-wrap;color:var(--text);border-radius:8px;margin:10px 0;padding:10px 12px;font-size:12.5px}.cli-block{margin-top:10px}.cli-block-head{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);margin-bottom:6px;font-size:10.5px}.cli-arg{border-bottom:1px dashed var(--line);padding:6px 0}.cli-arg:last-child{border-bottom:0}.cli-arg-name{font-family:var(--font-mono);color:var(--text);font-weight:600}.cli-arg-meta{color:var(--text-3);font-size:11.5px}.cli-arg-help{color:var(--text-2);margin-top:2px;font-size:13px}.spec-row:hover{border-color:var(--accent-line)}.glossary-table{border-collapse:collapse;width:100%;font-size:13px}.glossary-table th,.glossary-table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:top;padding:9px 10px}.glossary-table th{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);font-size:10.5px;font-weight:500}.glossary-table td.dim{color:var(--text-2)}.law-toolbar{flex-wrap:wrap;align-items:center;gap:16px;margin:18px 0 14px;display:flex}.law-cats{flex-wrap:wrap;gap:8px;display:flex}.law-cat{border:1px solid var(--line);background:var(--surface);cursor:pointer;color:var(--text-2);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;border-radius:999px;align-items:center;gap:8px;padding:6px 13px;font-size:11px;transition:border-color .14s,color .14s,background .14s;display:inline-flex}.law-cat:hover{color:var(--text);border-color:var(--line-2)}.law-cat .cdot{background:var(--cc,var(--text-3));border-radius:50%;width:8px;height:8px}.law-cat .cn{color:var(--text-3)}.law-cat.on{color:var(--text);border-color:var(--accent-line);background:var(--accent-soft)}.law-readout{font-family:var(--font-mono);color:var(--text-3);letter-spacing:.04em;margin-left:auto;font-size:11px}.law-readout b{color:var(--text);font-weight:500}.law-wrap{padding:0;overflow:hidden}.law-rowhead{border-bottom:1px solid var(--line);background:var(--bg-2);grid-template-columns:64px 1fr 1.25fr 138px 42px;gap:16px;padding:11px 18px;display:grid}.law-rowhead span{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);font-size:10px}.law-rowhead .toggle-col,.law-row .toggle-col{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);justify-content:center;padding:13px 0;font-size:10px}.law-row{text-align:left;border:0;border-bottom:1px solid var(--line);cursor:pointer;width:100%;font:inherit;color:var(--text);background:0 0;grid-template-columns:64px 1fr 1.25fr 138px 42px;align-items:center;gap:16px;padding:13px 18px;transition:background .1s;display:grid}.law-row.has-toggle{padding:0 18px}.law-disclosure{min-width:0;color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;grid-column:1/5;grid-template-columns:64px 1fr 1.25fr 138px;align-items:center;gap:16px;padding:13px 0;display:grid}.law-disclosure:focus-visible{outline:2px solid var(--accent);outline-offset:-2px;border-radius:4px}.law-row.has-toggle .toggle-col{align-items:center;padding:0;display:flex}.law-row:last-of-type{border-bottom:0}.law-row:hover{background:var(--surface-2)}.law-row.on{background:var(--accent-soft);border-bottom-color:#0000}.law-no{font-family:var(--font-mono);color:var(--cc,var(--accent));font-variant-numeric:tabular-nums;align-items:center;gap:8px;font-size:13px;display:flex}.law-no .x{color:var(--text-3);font-size:11px;transition:transform .14s}.law-row.on .law-no .x{color:var(--accent);transform:rotate(90deg)}.law-name{font-family:var(--font-display);color:var(--text);letter-spacing:-.01em;font-size:15px;font-weight:600}.law-princ{font-family:var(--font-mono);color:var(--text-2);font-size:12.5px;line-height:1.45}.law-class{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);align-items:center;gap:7px;font-size:10.5px;display:inline-flex}.law-class .cdot{background:var(--cc,var(--text-3));border-radius:50%;width:8px;height:8px}.law-expand{border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--accent) 4%, transparent);padding:2px 18px 20px 82px}.law-expand p{color:var(--text-2);max-width:75ch;margin:6px 0 0;font-size:13.5px;line-height:1.66}.law-expand p code{font-family:var(--font-mono);background:var(--surface-2);border:1px solid var(--line);border-radius:4px;padding:1px 5px;font-size:12.5px}.law-expand em{color:var(--text);font-style:italic}.law-srcline{font-family:var(--font-mono);color:var(--text-3);letter-spacing:.04em;margin-top:13px;font-size:10.5px}@media (width<=1180px){.law-row,.law-rowhead{grid-template-columns:52px 1fr 116px 42px}.law-disclosure{grid-column:1/4;grid-template-columns:52px 1fr 116px}.law-princ{display:none}.law-expand{padding-left:18px}}.tier-head{justify-content:space-between;align-items:baseline;gap:16px;margin:26px 0 10px;display:flex}.tier-h{letter-spacing:.08em;text-transform:uppercase;color:var(--fg);margin:0;font-size:15px;font-weight:600}.ont-row .law-no{justify-content:flex-start}.ont-row .law-princ{color:var(--dim);font-style:italic}.pack-head{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:baseline;gap:12px;padding:13px 18px;display:flex}.pack-name{align-items:center;gap:7px;font-weight:600;display:inline-flex}.pack-name .cdot{background:var(--cc,var(--dim));border-radius:50%;width:8px;height:8px}.pack-desc{color:var(--dim);flex:1;font-size:13px}.pack-state{color:var(--dim);letter-spacing:.04em;font-size:12px}.pack-wrap.pack-off{opacity:.62}.pack-wrap.pack-off .pack-state{color:var(--warn)}.pack-enable{font-family:var(--mono);color:var(--dim);border-bottom:1px solid var(--line);background:var(--bg-2,transparent);white-space:nowrap;padding:9px 18px;font-size:12px;overflow-x:auto}.law-row.law-off .law-name{text-decoration:line-through;text-decoration-thickness:1px}.pack-toggles{gap:10px;margin-bottom:14px;display:grid}.pack-toggle{border:1px solid var(--line);background:var(--surface);cursor:pointer;border-radius:10px;grid-template-columns:38px 1fr;align-items:start;gap:12px;padding:11px 13px;display:grid}.pack-toggle:hover{border-color:var(--accent-line)}.pack-toggle .sw-toggle{cursor:pointer}.pack-toggle-body{gap:3px;min-width:0;display:grid}.pack-toggle-name{align-items:baseline;gap:9px;font-weight:600;display:flex}.pack-toggle-n{color:var(--dim);letter-spacing:.03em;text-transform:uppercase;font-size:11px;font-weight:400}.pack-warn{color:var(--warn);border:1px solid var(--line-2);background:color-mix(in srgb, var(--warn) 8%, transparent);border-radius:10px;flex-wrap:wrap;align-items:baseline;gap:8px;margin:0 0 14px;padding:10px 13px;font-size:13px;display:flex}.pack-apply{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.law-row.law-off .law-princ,.law-row.law-off .law-class{opacity:.55}.skill-rowhead,.skill-row{grid-template-columns:1.1fr 1.7fr 150px;align-items:center;gap:16px;padding:13px 18px;display:grid}.skill-rowhead{border-bottom:1px solid var(--line);background:var(--bg-2);padding:11px 18px}.skill-rowhead span{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);font-size:10px}.skill-row{text-align:left;border:0;border-bottom:1px solid var(--line);cursor:pointer;width:100%;font:inherit;color:var(--text);background:0 0;transition:background .1s}.skill-row:last-of-type{border-bottom:0}.skill-row:hover{background:var(--surface-2)}.skill-row.on{background:var(--accent-soft);border-bottom-color:#0000}.skill-name{font-family:var(--font-display);color:var(--text);letter-spacing:-.01em;align-items:center;gap:8px;font-size:15px;font-weight:600;display:flex}.skill-name .x{color:var(--text-3);font-size:11px;font-family:var(--font-mono);transition:transform .14s}.skill-row.on .skill-name .x{color:var(--accent);transform:rotate(90deg)}.skill-desc{font-family:var(--font-mono);color:var(--text-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12.5px;line-height:1.45;display:-webkit-box;overflow:hidden}.skill-expand{padding-left:18px}.skill-doc{max-width:75ch}.skill-doc .markdown{color:var(--text-2);font-size:13.5px;line-height:1.62}.skill-doc .markdown>:first-child{margin-top:4px}.skill-doc .markdown h1,.skill-doc .markdown h2,.skill-doc .markdown h3{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text);font-weight:600}.skill-doc .markdown h1{margin:18px 0 7px;font-size:17px}.skill-doc .markdown h2{margin:17px 0 6px;font-size:14.5px}.skill-doc .markdown h3{margin:14px 0 5px;font-size:13px}.skill-doc .markdown p{margin:0 0 11px}.skill-doc .markdown ul,.skill-doc .markdown ol{margin:0 0 12px;padding-left:20px}.skill-doc .markdown li{margin:3px 0}.skill-doc .markdown li>ul,.skill-doc .markdown li>ol{margin:3px 0 0}.skill-doc .markdown a{color:var(--accent);border-bottom:1px dashed var(--accent-line)}.skill-doc .markdown strong{color:var(--text);font-weight:600}.skill-doc .markdown code{font-family:var(--font-mono);background:var(--surface-2);border:1px solid var(--line);border-radius:4px;padding:1px 5px;font-size:12px}.skill-doc .markdown pre{background:var(--bg-2);border:1px solid var(--line);border-radius:var(--r-md);margin:0 0 12px;padding:12px 14px;overflow:auto}.skill-doc .markdown pre code{color:var(--text-2);background:0 0;border:0;padding:0;font-size:12px}.skill-doc .markdown blockquote{border-left:2px solid var(--line-2);color:var(--text-2);margin:0 0 12px;padding:2px 14px}.skill-doc .markdown table{border-collapse:collapse;margin:0 0 12px;font-size:12.5px;display:block;overflow-x:auto}.skill-doc .markdown th,.skill-doc .markdown td{border:1px solid var(--line);text-align:left;padding:6px 10px}.skill-doc .markdown th{background:var(--bg-2);color:var(--text);font-weight:600}.skill-doc .markdown hr{border:0;border-top:1px solid var(--line);margin:16px 0}@media (width<=1180px){.skill-row,.skill-rowhead{grid-template-columns:1fr 130px}.skill-desc{display:none}}.fl-cultivar{--bg:#0b0e12;--bg-2:#0f1318;--surface:#14181d;--surface-2:#1b2026;--surface-3:#232a31;--line:#2c333b;--line-2:#3a434d;--line-3:#4c5762;--text:#eaeef2;--text-2:#9aa6b2;--text-3:#758290;--good:#4ed888;--warn:#e8b53d;--bad:#ff6b66;--r-xs:4px;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:20px;--font-display:"Space Grotesk", system-ui, sans-serif;--font-ui:"Hanken Grotesk", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--shadow-card:0 1px 0 #ffffff08 inset, 0 16px 40px -28px #000000e6}.fl-cultivar.light{--bg:#eef2f1;--bg-2:#e6eceb;--surface:#fbfdfc;--surface-2:#f3f6f6;--surface-3:#e9efee;--line:#dde5e4;--line-2:#c7d2d1;--line-3:#9dacac;--text:#0e1620;--text-2:#46535f;--text-3:#616f80;--good:#14855a;--warn:#9e6410;--bad:#cc3a44}.fl-cultivar h1.h,.fl-cultivar h2,.fl-cultivar h3{font-family:var(--font-display);letter-spacing:-.012em}.fl-cultivar .card-head h3{font-family:var(--font-display);letter-spacing:-.01em;font-weight:600}.fl-cultivar .card{background:var(--surface);box-shadow:inset 0 1px 0 var(--accent-soft), var(--shadow-card)}.fl-cultivar .btn:not(.ghost):not(.soft){box-shadow:inset 0 1px 0 #ffffff24, 0 6px 16px -10px color-mix(in srgb, var(--accent) 60%, transparent)}.fl-cultivar .badge{border-radius:var(--r-sm)}.fl-cultivar .atmos{background:radial-gradient(880px 520px at 82% -10%, var(--accent-soft), transparent 62%), radial-gradient(680px 560px at -8% 104%, color-mix(in srgb, var(--accent) 4%, transparent), transparent 60%);opacity:.85}.fl-cultivar .atmos:after{content:"";pointer-events:none;background-image:radial-gradient(color-mix(in srgb, var(--text) 5%, transparent) 1px, transparent 1px);opacity:.5;background-size:26px 26px;position:absolute;inset:0}.fl-greenhouse{--bg:#15110b;--bg-2:#100d08;--surface:#1a2116;--surface-2:#202a1a;--surface-3:#283322;--line:#33402b;--line-2:#445437;--line-3:#5e7350;--text:#f2efe4;--text-2:#b2bba4;--text-3:#7d8b71;--good:#74ce86;--warn:#e8b53d;--bad:#ff6f69;--r-xs:8px;--r-sm:12px;--r-md:16px;--r-lg:20px;--r-xl:24px;--font-display:"Poppins", system-ui, sans-serif;--font-ui:"Hanken Grotesk", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--shadow-card:0 1px 0 #ffffff0a inset, 0 24px 54px -30px #000000d1}.fl-greenhouse.light{--bg:#f4f0e6;--bg-2:#ede8da;--surface:#fbfdfc;--surface-2:#faf7ee;--surface-3:#f0ecdf;--line:#e5decc;--line-2:#d2c9b2;--line-3:#a79c82;--text:#22271a;--text-2:#575c45;--text-3:#6a705a;--good:#1c8450;--warn:#9c6a10;--bad:#cc4a45}.fl-greenhouse h1.h,.fl-greenhouse h2,.fl-greenhouse h3{font-family:var(--font-display);letter-spacing:-.022em;font-weight:600}.fl-greenhouse .card-head h3{font-family:var(--font-display);font-weight:600}.fl-greenhouse .card{background:linear-gradient(176deg, color-mix(in srgb, var(--accent) 7%, var(--surface)) 0%, var(--surface) 46%, color-mix(in srgb, #283322 50%, var(--surface)) 100%);border-radius:var(--r-lg)}.fl-greenhouse .btn:not(.ghost):not(.soft){box-shadow:inset 0 1px 0 #ffffff29, 0 6px 18px -8px color-mix(in srgb, var(--accent) 60%, transparent);background-image:linear-gradient(#ffffff24,#0000);border-radius:999px}.fl-greenhouse .badge{border-radius:999px}.fl-greenhouse .atmos:after{content:"";pointer-events:none;opacity:.035;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.4'/%3E%3C/svg%3E");position:absolute;inset:0}.fl-operator{--bg:#0a0c0e;--bg-2:#0a0c0e;--surface:#11151a;--surface-2:#171c22;--surface-3:#1e242c;--line:#262d36;--line-2:#333c46;--line-3:#48535f;--text:#d6dee6;--text-2:#92a0ae;--text-3:#738091;--good:#4fb37e;--warn:#e8a23b;--bad:#e8625a;--r-xs:0px;--r-sm:0px;--r-md:0px;--r-lg:0px;--r-xl:0px;--font-display:"JetBrains Mono", ui-monospace, monospace;--font-ui:"JetBrains Mono", ui-monospace, monospace;--font-mono:"JetBrains Mono", ui-monospace, monospace;--shadow-card:none}.fl-operator.light{--bg:#eceef1;--bg-2:#eceef1;--surface:#fbfdfc;--surface-2:#f4f6f8;--surface-3:#e9ecf0;--line:#dce0e5;--line-2:#c4cad1;--line-3:#97a0aa;--text:#141a21;--text-2:#47525e;--text-3:#626d7a;--good:#1a7a4d;--warn:#8f5e10;--bad:#c2403f}.fl-operator{--shadow-card:none}.fl-operator h1.h,.fl-operator h2,.fl-operator h3{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;font-weight:600}.fl-operator .card{background:var(--surface);box-shadow:none;border:1px solid var(--line)}.fl-operator .btn{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;border-radius:0}.fl-operator .btn:not(.ghost):not(.soft){box-shadow:inset 0 1px 0 color-mix(in srgb, var(--accent-ink) 22%, transparent)}.fl-operator .badge{text-transform:uppercase;letter-spacing:.06em;border-radius:0}.fl-operator .atmos{background:0 0}.fl-operator .atmos:after{content:"";pointer-events:none;background-image:repeating-linear-gradient(0deg, color-mix(in srgb, var(--accent) 5%, transparent) 0 1px, transparent 1px 3px);opacity:1;mix-blend-mode:normal;position:absolute;inset:0}.fl-heirloom{--bg:#13111c;--bg-2:#13111c;--surface:#181621;--surface-2:#26222f;--surface-3:#2d2a38;--line:#33313b;--line-2:#3a3744;--line-3:#45414f;--text:#f4f8f6;--text-2:#d4d0dc;--text-3:#a8a3b0;--good:#8ab89a;--warn:#d49a5a;--bad:#d06676;--r-xs:4px;--r-sm:8px;--r-md:14px;--r-lg:16px;--r-xl:16px;--font-display:"IBM Plex Serif", Georgia, "Times New Roman", serif;--font-ui:"Inter", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--shadow-card:0 1px 0 #ffffff05 inset, 0 18px 44px -30px #000000d9}.fl-heirloom.light{--bg:#f4f1f7;--bg-2:#ece8f1;--surface:#fbfdfc;--surface-2:#f7f4fa;--surface-3:#efeaf4;--line:#e2dcec;--line-2:#cfc6dc;--line-3:#a99ebc;--text:#1e1826;--text-2:#574e63;--text-3:#746b80;--good:#3c8b5e;--warn:#b07914;--bad:#c24452}.fl-heirloom h1.h,.fl-heirloom h2,.fl-heirloom h3{font-family:var(--font-display);letter-spacing:-.01em}.fl-heirloom .card-head h3{font-family:var(--font-display);font-weight:600}.fl-heirloom .card{background:linear-gradient(180deg, var(--surface) 0%, var(--surface) 55%, color-mix(in srgb, var(--surface-2) 14%, var(--surface)) 82%, color-mix(in srgb, var(--line-2) 22%, var(--surface)) 100%)}.fl-heirloom .btn:not(.ghost):not(.soft){box-shadow:0 1px 2px #00000040, inset 0 6px 0 -5px #ffffff1f, 0 4px 12px -5px color-mix(in srgb, var(--accent) 55%, transparent);background-image:linear-gradient(#ffffff1f,#0000)}.fl-heirloom .badge{border-radius:var(--r-sm)}.fl-heirloom .atmos{background:radial-gradient(820px 480px at 84% -10%, color-mix(in srgb, var(--accent) 12%, transparent), transparent 62%), radial-gradient(640px 560px at -8% 104%, color-mix(in srgb, var(--text) 4%, transparent), transparent 60%)}.fl-heirloom .atmos:after{content:"";pointer-events:none;background-image:repeating-linear-gradient(90deg, color-mix(in srgb, var(--text) 3%, transparent) 0 1px, transparent 1px 7px);opacity:.5;position:absolute;inset:0}.fl-matrix{--bg:#04070a;--bg-2:#04070a;--surface:#0b1116;--surface-2:#121a21;--surface-3:#18242c;--line:#16242b;--line-2:#22343c;--line-3:#33514c;--text:#d2ebd9;--text-2:#86a492;--text-3:#64836e;--good:#2dd68a;--warn:#d4a024;--bad:#f2495b;--r-xs:2px;--r-sm:2px;--r-md:2px;--r-lg:2px;--r-xl:2px;--font-display:"Space Mono", ui-monospace, monospace;--font-ui:"Space Mono", ui-monospace, monospace;--font-mono:"Space Mono", ui-monospace, monospace;--shadow-card:none}.fl-matrix.light{--bg:#e8f1eb;--bg-2:#e8f1eb;--surface:#fbfdfc;--surface-2:#e9f4ed;--surface-3:#dceae0;--line:#d0e2d6;--line-2:#b4cdbc;--line-3:#86a793;--text:#0a1410;--text-2:#41564b;--text-3:#5c7064;--good:#117a4e;--warn:#9a6410;--bad:#c2403f}.fl-matrix .card{background:var(--surface);box-shadow:none}.fl-matrix h1.h,.fl-matrix h2,.fl-matrix h3{letter-spacing:.03em}.fl-matrix .btn{font-family:var(--font-mono);letter-spacing:.05em;border-radius:2px}.fl-matrix .badge{text-transform:uppercase;letter-spacing:.04em;border-radius:2px}.fl-matrix .btn:not(.ghost):not(.soft):not(.btn-grid){box-shadow:0 1px 2px #0006, inset 0 1px 0 color-mix(in srgb, var(--accent) 22%, transparent), 0 2px 10px -3px color-mix(in srgb, var(--accent) 34%, transparent)}.fl-matrix .atmos{background:0 0}.fl-matrix .atmos:after{content:"";pointer-events:none;background-image:repeating-linear-gradient(0deg, color-mix(in srgb, var(--text) 5%, transparent) 0 1px, transparent 1px 26px), repeating-linear-gradient(90deg, color-mix(in srgb, var(--text) 5%, transparent) 0 1px, transparent 1px 26px);position:absolute;inset:0}.fl-aurora{--bg:#04130e;--bg-2:#06180f;--surface:#144a3c80;--surface-2:#103e324d;--surface-3:#5ab4962e;--line:#78d2b429;--line-2:#82dcbe42;--line-3:#96e6c866;--text:#e8f6ef;--text-2:#a2cfc0;--text-3:#6e9a8c;--good:#34d9a6;--warn:#fbbf24;--bad:#fb6f84;--r-xs:8px;--r-sm:12px;--r-md:16px;--r-lg:18px;--r-xl:24px;--font-display:"Space Grotesk", system-ui, sans-serif;--font-ui:"Inter", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--shadow-card:0 10px 36px -8px #00100a8c, inset 0 1px 0 #ffffff38, inset 0 -1px 0 #ffffff0d}.fl-aurora.light{--bg:#e8f4ee;--bg-2:#dcede3;--surface:#ffffffb3;--surface-2:#ffffff85;--surface-3:#ffffffe0;--line:#103a2c1f;--line-2:#103a2c2e;--line-3:#103a2c4d;--text:#0e241c;--text-2:#3e5a4e;--text-3:#5e7a6e;--good:#0a8068;--warn:#b45309;--bad:#be123c}.fl-aurora .card,.fl-aurora .seg,.fl-aurora .spotlight,.fl-aurora .rail{-webkit-backdrop-filter:blur(22px)saturate(165%)!important}.fl-aurora .console{-webkit-backdrop-filter:blur(20px)saturate(150%);background:linear-gradient(#081e17e0,#05160ff2)}.fl-aurora .rail{background:linear-gradient(#ffffff12,#ffffff05)}.fl-aurora h1.h,.fl-aurora h2,.fl-aurora h3{font-family:var(--font-display);letter-spacing:-.015em}.fl-aurora .btn:not(.ghost):not(.soft){box-shadow:inset 0 1px 0 #ffffff4d, 0 6px 20px -6px color-mix(in srgb, var(--accent) 60%, transparent);background-image:linear-gradient(#ffffff29,#0000)}.fl-aurora .badge{border-radius:999px}.fl-aurora .atmos{opacity:1;background:radial-gradient(720px 480px at 12% -6%, color-mix(in srgb, var(--accent) 26%, transparent), transparent 60%), radial-gradient(680px 520px at 90% 6%, #2fd39a33, transparent 62%), radial-gradient(820px 660px at 50% 112%, #e879c926, transparent 60%)}.fl-aurora.light .atmos{background:radial-gradient(720px 480px at 12% -6%, color-mix(in srgb, var(--accent) 15%, transparent), transparent 62%), radial-gradient(680px 520px at 90% 6%, #2fd39a1f, transparent 64%), radial-gradient(820px 660px at 50% 112%, #e879c91a, transparent 62%)}.fl-perspective{--bg:#0e1117;--bg-2:#0c0f14;--surface:#161b22;--surface-2:#1e2530;--surface-3:#262f3b;--line:#232c36;--line-2:#34404d;--line-3:#475463;--text:#eceff4;--text-2:#aeb8c4;--text-3:#7e8a98;--good:#4ed888;--warn:#e8b53d;--bad:#ff6b63;--r-xs:5px;--r-sm:7px;--r-md:10px;--r-lg:14px;--r-xl:18px;--font-display:"Oswald", "Hanken Grotesk", system-ui, sans-serif;--font-ui:"Poppins", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--shadow-card:0 1px 0 #ffffff0a inset, 0 2px 4px -1px #00000080, 0 16px 30px -16px #000000d9}.fl-perspective.light{--bg:#eef1f5;--bg-2:#e5e9ef;--surface:#fbfdfc;--surface-2:#f4f6f9;--surface-3:#e9edf2;--line:#dee3ea;--line-2:#c5cdd7;--line-3:#94a0ad;--text:#11161d;--text-2:#4a5563;--text-3:#636f7c;--good:#1f8a52;--warn:#9a6a12;--bad:#c2403c}.fl-perspective h1.h,.fl-perspective h2,.fl-perspective h3,.fl-perspective .card-head h3,.fl-perspective .metric{font-family:var(--font-display);letter-spacing:-.005em}.fl-perspective h1.h,.fl-perspective h2.h,.fl-perspective .card-head h3{font-weight:600}.fl-perspective .eyebrow,.fl-perspective .tick,.fl-perspective .rail-group{font-family:var(--font-display);letter-spacing:.12em}.fl-perspective .card{background:linear-gradient(180deg, var(--surface-2) 0%, var(--surface) 60%, var(--bg-2) 100%);border-top-color:var(--line-2);transition:transform .16s,box-shadow .16s}.fl-perspective .card:hover{box-shadow:0 1px 0 #ffffff0d inset, 0 3px 6px -1px #00000080, 0 26px 46px -18px #000000e6, 0 22px 50px -28px var(--accent-soft);transform:translateY(-3px)}.fl-perspective .btn:not(.ghost):not(.soft){box-shadow:inset 0 1px 0 #ffffff57, 0 1px 1px #00000073, 0 10px 22px -10px color-mix(in srgb, var(--accent) 62%, transparent)}.fl-perspective .btn:not(.ghost):not(.soft):active{box-shadow:inset 0 2px 4px #0006}.fl-perspective .badge{border-radius:999px}.fl-perspective .atmos{background:radial-gradient(820px 520px at 88% -12%, var(--accent-soft), transparent 62%)}.fl-perspective .atmos:after{content:"";pointer-events:none;background-image:repeating-linear-gradient(180deg, color-mix(in srgb, var(--text) 4%, transparent) 0 1px, transparent 1px 7px);opacity:.6;mix-blend-mode:normal;position:absolute;inset:0}.fl-sequencer{--bg:#070b14;--bg-2:#0b111e;--surface:#0e1424;--surface-2:#16203a;--surface-3:#22304e;--line:#1e2a45;--line-2:#2c3b5c;--line-3:#3e4e74;--text:#f2f5fb;--text-2:#9ba6be;--text-3:#747f94;--good:#2bc48a;--warn:#f5a524;--bad:#f4516b;--r-xs:3px;--r-sm:5px;--r-md:6px;--r-lg:8px;--r-xl:10px;--font-display:"Inter", system-ui, sans-serif;--font-ui:"Inter", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace;--shadow-card:0 1px 2px 0 #0f17290d, 0 1px 1px 0 #0f17290a}.fl-sequencer.light{--bg:#f6f8fb;--bg-2:#eef2f8;--surface:#fbfdfc;--surface-2:#f6f8fc;--surface-3:#eef2f8;--line:#e3e8f0;--line-2:#cdd5e2;--line-3:#9ba6bc;--text:#0f1729;--text-2:#475067;--text-3:#697285;--good:#077a55;--warn:#b45309;--bad:#c7003d}.fl-sequencer .metric,.fl-sequencer .kseg-n,.fl-sequencer .gcell .gcount,.fl-sequencer .tbl .num,.fl-sequencer .delta{font-variant-numeric:tabular-nums lining-nums slashed-zero;font-feature-settings:"tnum" 1, "lnum" 1, "zero" 1;letter-spacing:-.01em}.fl-sequencer h1.h,.fl-sequencer h2,.fl-sequencer h3{letter-spacing:-.014em;font-weight:650}.fl-sequencer .card-head h3{font-weight:650}.fl-sequencer .card{background:var(--surface);position:relative}.fl-sequencer .card:before{content:"";background:var(--accent-line);border-radius:var(--r-lg) var(--r-lg) 0 0;height:2px;position:absolute;inset:0 0 auto}.fl-sequencer .btn:not(.ghost):not(.soft){font-weight:600;box-shadow:inset 0 1px #ffffff29,0 1px 1px #0f17291a}.fl-sequencer .badge{border-radius:var(--r-xs);font-family:var(--font-mono)}.fl-sequencer .atmos{background:0 0}.fl-sequencer .atmos:after{content:"";pointer-events:none;background-image:linear-gradient(var(--text) 1px, transparent 1px), linear-gradient(90deg, var(--text) 1px, transparent 1px);opacity:.028;background-size:26px 26px;position:absolute;inset:0}.fl-cobalt{--bg:#02060d;--bg-2:#02060d;--surface:#07101c;--surface-2:#0b1b2c;--surface-3:#0f2436;--line:#143046;--line-2:#1b4763;--line-3:#2e83ae;--text:#cfe6f5;--text-2:#86bbd8;--text-3:#5683a0;--good:#14c08a;--warn:#fbbf24;--bad:#ff5c72;--r-xs:2px;--r-sm:2px;--r-md:2px;--r-lg:2px;--r-xl:2px;--font-display:"IBM Plex Mono", "JetBrains Mono", ui-monospace, monospace;--font-ui:"IBM Plex Mono", "JetBrains Mono", ui-monospace, monospace;--font-mono:"IBM Plex Mono", "JetBrains Mono", ui-monospace, monospace;--shadow-card:none}.fl-cobalt.light{--bg:#e9f1f7;--bg-2:#e9f1f7;--surface:#fbfdfc;--surface-2:#e5eff6;--surface-3:#d7e6f1;--line:#bdd6e6;--line-2:#9fc2d8;--line-3:#6398bb;--text:#082230;--text-2:#335a72;--text-3:#507084;--good:#0a7a57;--warn:#b45309;--bad:#c70036}.fl-cobalt .card{background:var(--surface);box-shadow:none}.fl-cobalt h1.h,.fl-cobalt h2,.fl-cobalt h3{font-family:var(--font-display);letter-spacing:.02em}.fl-cobalt .btn{font-family:var(--font-mono);letter-spacing:.05em;border-radius:2px}.fl-cobalt .badge{border-radius:2px}.fl-cobalt .btn:not(.ghost):not(.soft){box-shadow:inset 0 1px 0 color-mix(in srgb, var(--accent) 22%, transparent), 0 2px 10px -4px color-mix(in srgb, var(--accent) 55%, transparent)}.fl-cobalt .atmos{background:0 0}.fl-cobalt .atmos:after{content:"";pointer-events:none;background-image:repeating-linear-gradient(0deg, color-mix(in srgb, var(--text) 6%, transparent) 0 1px, transparent 1px 3px);opacity:1;mix-blend-mode:normal;position:absolute;inset:0}.fl-cosmic{--bg:#07041a;--bg-2:#07041a;--surface:#120a30;--surface-2:#1a1042;--surface-3:#241656;--line:#2e1e63;--line-2:#3d2a7a;--line-3:#553d9b;--text:#ece6ff;--text-2:#b9a8e6;--text-3:#8a77be;--good:#56d9a6;--warn:#e6b23d;--bad:#ff5c8a;--r-xs:2px;--r-sm:3px;--r-md:4px;--r-lg:6px;--r-xl:8px;--font-display:"Audiowide", system-ui, sans-serif;--font-ui:"Space Grotesk", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--shadow-card:0 1px 0 #b66bff0d inset, 0 20px 50px -34px #000000f2}.fl-cosmic.light{--bg:#f4f0ff;--bg-2:#ece6fb;--surface:#fbfdfc;--surface-2:#f6f1ff;--surface-3:#ede5fb;--line:#e2d7f5;--line-2:#cbbaea;--line-3:#a48fd0;--text:#1c1233;--text-2:#574a78;--text-3:#746892;--good:#1f9466;--warn:#9a6a12;--bad:#c53060}.fl-cosmic .brand-name,.fl-cosmic h1.h{font-family:var(--font-display);letter-spacing:.01em}.fl-cosmic h2,.fl-cosmic h3,.fl-cosmic .card-head h3{font-family:var(--font-ui);letter-spacing:-.005em;font-weight:600}.fl-cosmic .card{clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);background:linear-gradient(160deg, var(--surface-2) 0%, var(--surface) 55%);border:1px solid var(--line-2);box-shadow:0 0 0 1px #b66bff0a inset, var(--shadow-card)}.fl-cosmic .btn:not(.ghost):not(.soft){clip-path:polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px);box-shadow:inset 0 1px 0 #ffffff24, 0 3px 14px -6px color-mix(in srgb, var(--accent) 60%, transparent)}.fl-cosmic .badge{border-radius:var(--r-xs);letter-spacing:.03em}.fl-cosmic .atmos{background:radial-gradient(820px 480px at 82% -10%, color-mix(in srgb, var(--accent) 14%, transparent), transparent 62%), radial-gradient(640px 560px at -8% 104%, #ff5fd017, transparent 64%)}.fl-cosmic .atmos:after{content:"";pointer-events:none;background-image:linear-gradient(color-mix(in srgb, var(--text) 4%, transparent) 1px, transparent 1px), linear-gradient(90deg, color-mix(in srgb, var(--text) 4%, transparent) 1px, transparent 1px);background-size:46px 46px,46px 46px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(120% 120% at 50% 0,#000 35%,#0000 78%);mask-image:radial-gradient(120% 120% at 50% 0,#000 35%,#0000 78%)}.fl-neon{--bg:#050505;--bg-2:#0a0a0a;--surface:#0e0e0e;--surface-2:#141414;--surface-3:#1a1a1a;--line:#1c1c1c;--line-2:#262626;--line-3:#383838;--text:#ededed;--text-2:#909090;--text-3:#7b7b7b;--good:#0c8;--warn:#f83;--bad:#f35;--r-xs:4px;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:20px;--font-display:"Geist Mono", "JetBrains Mono", ui-monospace, monospace;--font-ui:"Geist Mono", "JetBrains Mono", ui-monospace, monospace;--font-mono:"Geist Mono", "JetBrains Mono", ui-monospace, monospace;--shadow-card:0 1px 0 #ffffff08 inset, 0 18px 50px -32px #000000f2}.fl-neon.light{--bg:#f5f5f6;--bg-2:#efeff1;--surface:#fbfdfc;--surface-2:#f4f4f6;--surface-3:#ececef;--line:#e2e2e6;--line-2:#d2d2d8;--line-3:#a8a8b0;--text:#161618;--text-2:#56565c;--text-3:#707077;--good:#00a371;--warn:#c2410c;--bad:#d7263d}.fl-neon h1.h,.fl-neon h2,.fl-neon h3{font-family:var(--font-display);letter-spacing:-.02em}.fl-neon .card{background:color-mix(in srgb, var(--surface) 72%, transparent);-webkit-backdrop-filter:blur(13px);backdrop-filter:blur(13px);border-color:color-mix(in srgb, var(--accent) 16%, var(--line-2))}.fl-neon .btn:not(.ghost):not(.soft){box-shadow:0 0 0 1px color-mix(in srgb, var(--accent) 30%, transparent), 0 0 14px -4px color-mix(in srgb, var(--accent) 60%, transparent)}.fl-neon .btn:not(.ghost):not(.soft):hover{box-shadow:0 0 0 1px var(--accent), 0 0 22px -2px color-mix(in srgb, var(--accent) 78%, transparent)}.fl-neon .btn:not(.ghost):not(.soft):active{filter:brightness(.94);box-shadow:0 0 12px -4px color-mix(in srgb, var(--accent) 55%, transparent)}.fl-neon :focus-visible{box-shadow:0 0 0 2px var(--bg), 0 0 0 4px var(--accent), 0 0 16px -2px color-mix(in srgb, var(--accent) 70%, transparent);outline:none}.fl-neon .badge{border-radius:var(--r-xs);letter-spacing:.02em}.fl-neon .atmos{background:radial-gradient(680px 460px at 84% -10%, color-mix(in srgb, var(--accent) 14%, transparent), transparent 62%);opacity:1}.fl-neon .atmos:after{background-image:radial-gradient(color-mix(in srgb, var(--text) 4%, transparent) 1px, transparent 1px);opacity:.5;mix-blend-mode:normal;background-size:3px 3px}.fl-atlas{--bg:#15130e;--bg-2:#100e0a;--surface:#1c1a12;--surface-2:#211e15;--surface-3:#2a2619;--line:#322d22;--line-2:#453e2e;--line-3:#5c5340;--text:#efeae0;--text-2:#b5ac99;--text-3:#8a8172;--good:#8fd694;--warn:#e8b53d;--bad:#ff6f69;--r-xs:8px;--r-sm:12px;--r-md:16px;--r-lg:20px;--r-xl:24px;--font-display:"Space Grotesk", system-ui, sans-serif;--font-ui:"Hanken Grotesk", system-ui, sans-serif;--font-mono:"JetBrains Mono", ui-monospace, monospace;--shadow-card:0 1px 0 #ffffff08 inset, 0 22px 50px -32px #000000d9}.fl-atlas.light{--bg:#f4f0e6;--bg-2:#ebe6d8;--surface:#fcfaf4;--surface-2:#f6f2e7;--surface-3:#ede8d9;--line:#e2dac6;--line-2:#cfc5ac;--line-3:#a2977c;--text:#1f1d16;--text-2:#56503f;--text-3:#736c5a;--good:#1c8450;--warn:#9c6a10;--bad:#cc4a45}.fl-atlas h1.h,.fl-atlas h2,.fl-atlas h3{font-family:var(--font-display);letter-spacing:-.015em;font-weight:600}.fl-atlas .card-head h3{font-family:var(--font-display);font-weight:600}.fl-atlas .card{background:linear-gradient(180deg, color-mix(in srgb, var(--accent) 4%, var(--surface)) 0%, var(--surface) 22%);border-radius:var(--r-lg)}.fl-atlas .btn{border-radius:999px}.fl-atlas .btn:not(.ghost):not(.soft){box-shadow:inset 0 1px 0 #ffffff24, 0 8px 20px -12px color-mix(in srgb, var(--accent) 55%, transparent);background-image:linear-gradient(#ffffff1a,#0000)}.fl-atlas .badge,.fl-atlas .rail-item .tag{border-radius:999px}.fl-atlas .rail-item{border-radius:var(--r-sm)}.fl-atlas .rail-item.active{background:var(--accent-soft);border:1px solid var(--accent-line)}.fl-atlas .rail-vitals{border-radius:18px}.fl-atlas .tb-search,.fl-atlas .sel,.fl-atlas .inp{border-radius:999px}.fl-atlas .atmos{background:radial-gradient(900px 560px at 70% -10%, color-mix(in srgb, var(--accent) 8%, transparent), transparent 60%);opacity:1}.fl-atlas .atmos:after{content:"";pointer-events:none;opacity:.03;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.4'/%3E%3C/svg%3E");position:absolute;inset:0}.dir-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:4px;display:grid}.dir-tile{text-align:left;border:1px solid var(--line);background:var(--surface);border-radius:var(--r-md);cursor:pointer;font:inherit;color:var(--text);flex-direction:column;gap:11px;padding:12px;transition:border-color .14s,transform .1s,box-shadow .14s;display:flex}.dir-tile:hover{border-color:var(--accent-line);transform:translateY(-2px)}.dir-tile.on{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset, 0 12px 28px -22px var(--accent)}.dir-thumb{border:1px solid #ffffff0f;border-radius:8px;flex-direction:column;justify-content:center;gap:6px;height:78px;padding:10px 10px 10px 34px;display:flex;position:relative;overflow:hidden}.dir-thumb-rail{opacity:.9;width:24px;position:absolute;top:0;bottom:0;left:0}.dir-thumb-bar{opacity:.92;border-radius:3px;height:6px}.dir-thumb-dot{border-radius:50%;width:9px;height:9px;position:absolute;top:10px;right:10px}.dir-cultivar .dir-thumb{background:#0b0e12;border-radius:12px}.dir-cultivar .dir-thumb-rail{background:#14181d;border-right:1px solid #2c333b}.dir-cultivar .dir-thumb-bar{background:#3ad4c4}.dir-cultivar .dir-thumb-bar:nth-child(2),.dir-cultivar .dir-thumb-bar:nth-child(3){background:#2c333b}.dir-cultivar .dir-thumb-dot{background:#3ad4c4;box-shadow:0 0 8px #2ba89b}.dir-atlas .dir-thumb{background:#15130e;border-radius:18px}.dir-atlas .dir-thumb-rail{background:#1c1a12;border-right:1px solid #322d22}.dir-atlas .dir-thumb-bar{background:#8fd694;border-radius:999px}.dir-atlas .dir-thumb-bar:nth-child(2),.dir-atlas .dir-thumb-bar:nth-child(3){background:#322d22}.dir-atlas .dir-thumb-dot{background:#c9e8a8;box-shadow:0 0 8px #5c7a50}.dir-greenhouse .dir-thumb{background:#15110b;border-radius:16px}.dir-greenhouse .dir-thumb-rail{background:#1a2116;border-right:1px solid #33402b}.dir-greenhouse .dir-thumb-bar{background:#74ce86}.dir-greenhouse .dir-thumb-bar:nth-child(2),.dir-greenhouse .dir-thumb-bar:nth-child(3){background:#33402b}.dir-greenhouse .dir-thumb-dot{background:#74ce86;box-shadow:0 0 8px #74ce86}.dir-operator .dir-thumb{background:#0a0c0e;border-radius:0}.dir-operator .dir-thumb-rail{background:#11151a;border-right:1px solid #262d36}.dir-operator .dir-thumb-bar{background:#e8a23b}.dir-operator .dir-thumb-bar:nth-child(2),.dir-operator .dir-thumb-bar:nth-child(3){background:#262d36}.dir-operator .dir-thumb-dot{background:#e8a23b;box-shadow:0 0 8px #e8a23b}.dir-heirloom .dir-thumb{background:#13111c;border-radius:12px}.dir-heirloom .dir-thumb-rail{background:#181621;border-right:1px solid #33313b}.dir-heirloom .dir-thumb-bar{background:#b9a6c6}.dir-heirloom .dir-thumb-bar:nth-child(2),.dir-heirloom .dir-thumb-bar:nth-child(3){background:#33313b}.dir-heirloom .dir-thumb-dot{background:#b9a6c6;box-shadow:0 0 8px #8e7a9b}.dir-matrix .dir-thumb{background:#04070a;border-radius:2px}.dir-matrix .dir-thumb-rail{background:#0b1116;border-right:1px solid #16242b}.dir-matrix .dir-thumb-bar{background:#19e37c}.dir-matrix .dir-thumb-bar:nth-child(2),.dir-matrix .dir-thumb-bar:nth-child(3){background:#18242c}.dir-matrix .dir-thumb-dot{background:#19e37c;box-shadow:0 0 8px #19e37c}.dir-aurora .dir-thumb{background:#04130e;border-radius:16px}.dir-aurora .dir-thumb-rail{background:#ffffff0f;border-right:1px solid #ffffff1f}.dir-aurora .dir-thumb-bar{background:#2de0b8}.dir-aurora .dir-thumb-bar:nth-child(2),.dir-aurora .dir-thumb-bar:nth-child(3){background:#ffffff29}.dir-aurora .dir-thumb-dot{background:#2de0b8;box-shadow:0 0 8px #2de0b8}.dir-perspective .dir-thumb{background:#0e1117;border-radius:7px}.dir-perspective .dir-thumb-rail{background:#161b22;border-right:1px solid #232c36}.dir-perspective .dir-thumb-bar{background:#ff7a59}.dir-perspective .dir-thumb-bar:nth-child(2),.dir-perspective .dir-thumb-bar:nth-child(3){background:#2c3845}.dir-perspective .dir-thumb-dot{background:#ff7a59;box-shadow:0 0 8px #ff7a59}.dir-sequencer .dir-thumb{background:#fbfdfc;border-radius:6px}.dir-sequencer .dir-thumb-rail{background:#f6f8fb;border-right:1px solid #e3e8f0}.dir-sequencer .dir-thumb-bar{background:#4f46e5}.dir-sequencer .dir-thumb-bar:nth-child(2),.dir-sequencer .dir-thumb-bar:nth-child(3){background:#d7dce6}.dir-sequencer .dir-thumb-dot{background:#4f46e5;box-shadow:0 0 8px #4f46e573}.dir-cobalt .dir-thumb{background:#02060d;border-radius:2px}.dir-cobalt .dir-thumb-rail{background:#07101c;border-right:1px solid #1b4763}.dir-cobalt .dir-thumb-bar{background:#2ba8ff}.dir-cobalt .dir-thumb-bar:nth-child(2),.dir-cobalt .dir-thumb-bar:nth-child(3){background:#1b4763}.dir-cobalt .dir-thumb-dot{background:#2ba8ff;box-shadow:0 0 8px #2ba8ff}.dir-cosmic .dir-thumb{background:#07041a;border-radius:3px}.dir-cosmic .dir-thumb-rail{background:#120a30;border-right:1px solid #2e1e63}.dir-cosmic .dir-thumb-bar{background:#b66bff}.dir-cosmic .dir-thumb-bar:nth-child(2),.dir-cosmic .dir-thumb-bar:nth-child(3){background:#2e1e63}.dir-cosmic .dir-thumb-dot{background:#ff5fd0;box-shadow:0 0 8px #b66bff}.dir-neon .dir-thumb{background:#050505;border-radius:8px}.dir-neon .dir-thumb-rail{background:#0a0a0a;border-right:1px solid #1a1a1a}.dir-neon .dir-thumb-bar{background:#f44174}.dir-neon .dir-thumb-bar:nth-child(2),.dir-neon .dir-thumb-bar:nth-child(3){background:#1a1a1a}.dir-neon .dir-thumb-dot{background:#f44174;box-shadow:0 0 8px #f44174}.dir-meta{flex-direction:column;gap:4px;display:flex}.dir-name{font-family:var(--font-display);align-items:center;gap:8px;font-size:14.5px;font-weight:600;display:flex}.dir-check{font-family:var(--font-mono);color:var(--accent);margin-left:auto;font-size:10px}.dir-tag{color:var(--text-2);font-size:12px;line-height:1.45}.dir-layout{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;padding-bottom:16px;display:flex}.dir-layout .tick{color:var(--text-2)}.dir-layout-note{font-size:12px}@media (width<=960px){.dir-grid{grid-template-columns:1fr}}.fl-greenhouse .hero{gap:32px;padding:4px 0}.fl-greenhouse .hero-facts .ttl{letter-spacing:-.018em;font-size:30px}.fl-greenhouse .chip{background:var(--surface-3);border:1px solid var(--line);border-radius:999px;padding:7px 14px}.fl-greenhouse .chip .ck{color:var(--text-3)}.fl-greenhouse .chip .cv{color:var(--text);font-weight:500}.fl-greenhouse .kpiband{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--line)}.fl-greenhouse .kseg-n{letter-spacing:-.02em;font-size:29px}.fl-greenhouse .gcell{border-radius:var(--r-md)}.fl-greenhouse .gcell:hover{transform:translateY(-3px)}.fl-greenhouse .feed-row{padding:13px 0}.fl-greenhouse .card-head h3{font-family:var(--font-display);letter-spacing:-.01em}.fl-operator .card{background:var(--surface);box-shadow:none;border-radius:0}.fl-operator .card-head{border-bottom:1px solid var(--line);margin-bottom:14px;padding-bottom:11px}.fl-operator .card-head h3{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--text-2);padding-left:22px;font-size:10.5px;font-weight:500;position:relative}.fl-operator .card-head h3:before{content:"";background:var(--accent);width:14px;height:2px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.fl-operator .hero-facts .ttl{font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;font-size:17px;font-weight:600}.fl-operator .voice-readout .vr-txt{font-family:var(--font-mono);color:var(--text-3);letter-spacing:.02em;font-size:11.5px}.fl-operator .chip{border:1px solid var(--line);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;background:0 0;border-radius:2px;padding:5px 10px;font-size:10.5px}.fl-operator .chip .ck{color:var(--text-3)}.fl-operator .chip .cv{color:var(--text)}.fl-operator .kpiband{border:1px solid var(--line);border-radius:0;padding:12px 14px}.fl-operator .kseg-l{letter-spacing:.14em;font-size:9px}.fl-operator .kseg-n{font-family:var(--font-mono);letter-spacing:-.01em;font-size:24px;font-weight:500}.fl-operator .gcell{border:1px solid var(--line);border-radius:0;padding:14px 16px}.fl-operator .gcell .gname{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-2);font-size:11px}.fl-operator .gcell .gcount{font-family:var(--font-mono);letter-spacing:-.01em;font-size:30px}.fl-operator .gcell .gdesc{font-family:var(--font-mono);letter-spacing:.04em;color:var(--text-3);font-size:10.5px}.fl-operator .feed-row{border-bottom:1px solid var(--line);font-family:var(--font-mono);padding:9px 0;font-size:12px}.fl-operator .seg{border:1px solid var(--line);background:var(--surface);border-radius:0}.fl-operator .seg button{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;border-radius:0;font-size:10.5px}.fl-operator .atmos:after{content:"";pointer-events:none;background-image:radial-gradient(#ffffff06 1px,#0000 1px);background-size:22px 22px;position:absolute;inset:0}.fl-operator.light .atmos:after{background-image:radial-gradient(#141c260a 1px,#0000 1px)}.b-greet{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:18px;display:flex}.b-greet h1.b-h{letter-spacing:-.025em;margin:4px 0 0;font-size:31px}.b-hero-grid{grid-template-columns:1.25fr 1fr;align-items:stretch}.b-hero{align-items:center;gap:24px;min-height:220px;padding:24px;display:flex}.b-hero-ring{flex:none}.b-hero-side{flex-direction:column;gap:9px;min-width:0;display:flex}.b-hero-title{font-family:var(--font-display);letter-spacing:-.01em;margin:0;font-size:21px;font-weight:600}.b-chips{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.b-chip{background:var(--surface-3);border:1px solid var(--line);color:var(--text-2);white-space:nowrap;border-radius:999px;padding:6px 13px;font-size:12.5px}.b-chip b{color:var(--text);font-weight:500}.b-hero-checks{flex-direction:column;gap:5px;margin:2px 0;padding:0;list-style:none;display:flex}.b-hcheck{color:var(--text-2);grid-template-columns:16px 1fr;align-items:center;gap:9px;font-size:12.5px;display:grid}.b-hcheck-mark{border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;font-size:10px;font-weight:700;line-height:1;display:inline-flex}.b-hcheck.ok .b-hcheck-mark{color:var(--good);background:color-mix(in srgb, var(--good) 14%, transparent)}.b-hcheck.bad .b-hcheck-mark{color:var(--bad);background:color-mix(in srgb, var(--bad) 14%, transparent)}.b-hcheck.bad .b-hcheck-label{color:var(--text)}.b-tiles{grid-template-columns:1fr 1fr;gap:14px;display:grid}.b-tile{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-card);flex-direction:column;gap:10px;padding:18px;display:flex;position:relative}.b-tile-ic{border-radius:12px;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.b-tile-ic .glyph{width:19px;height:19px}.b-tile-body{flex-direction:column;gap:2px;display:flex}.b-tile-val{font-family:var(--font-display);letter-spacing:-.02em;font-size:32px;font-weight:600;line-height:1}.b-tile-val.zero{color:var(--text-3)}.b-tile-label{color:var(--text-2);font-size:13px}.b-tile-sub{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--text-3);font-size:9.5px;position:absolute;top:18px;right:18px}.b-mix-card{flex-direction:column;display:flex}.b-mix{flex:1;grid-template-columns:auto 1fr;align-items:center;gap:26px;display:grid}.b-legend{flex-direction:column;gap:11px;display:flex}.b-leg-row{grid-template-columns:12px 90px 1fr 32px;align-items:center;gap:10px;display:grid}.b-leg-dot{border-radius:4px;width:11px;height:11px}.b-leg-name{font-size:13px}.b-leg-bar{background:var(--surface-3);border-radius:999px;height:8px;overflow:hidden}.b-leg-bar i{border-radius:999px;height:100%;display:block}.b-leg-val{font-family:var(--font-mono);text-align:right;font-variant-numeric:tabular-nums;font-size:13px}.b-stat-lead{align-items:baseline;gap:10px;margin-bottom:10px;display:flex}.b-stat-big{font-family:var(--font-display);letter-spacing:-.02em;font-size:34px;font-weight:600}.b-stat-cap{color:var(--text-2);font-size:12.5px}.b-timeline{flex-direction:column;display:flex}.b-tl-row{border-bottom:1px solid var(--line);grid-template-columns:16px 1fr auto;align-items:center;gap:14px;padding:12px 0;display:grid}.b-tl-row:last-child{border-bottom:0}.b-tl-node{background:var(--text-3);width:10px;height:10px;box-shadow:0 0 0 4px var(--surface);border-radius:50%}.b-tl-node.ok{background:var(--good)}.b-tl-node.acc{background:var(--accent)}.b-tl-node.warn{background:var(--warn)}.b-tl-body{word-break:break-word;min-width:0;font-size:13.5px}.b-tl-body b{text-transform:capitalize}.b-tl-when{font-family:var(--font-mono);color:var(--text-3);white-space:nowrap;font-size:11px}.donut-c-num{font-family:var(--font-display);fill:var(--text);font-size:28px;font-weight:600}.donut-c-cap{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;fill:var(--text-3);font-size:10px}@media (width<=1180px){.b-hero-grid{grid-template-columns:1fr}.b-tiles{grid-template-columns:repeat(4,1fr)}}@media (width<=720px){.b-tiles{grid-template-columns:1fr 1fr}.b-hero{flex-direction:column;align-items:flex-start}.b-mix{grid-template-columns:1fr}}.c-root{font-family:var(--font-mono)}.c-titlebar{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:16px;display:flex}.c-h1{font-family:var(--font-mono);letter-spacing:.02em;color:var(--text);margin:0;font-size:17px;font-weight:600}.c-sub{font-family:var(--font-mono);color:var(--text-3);margin-top:5px;font-size:11.5px}.c-root .btn{font-family:var(--font-mono);letter-spacing:.05em;border-radius:var(--r-sm);font-size:11px}.c-strip{border:1px solid var(--line);background:var(--surface);border-radius:var(--r-sm);grid-template-columns:repeat(7,1fr);margin-bottom:14px;display:grid}.c-strip-cell{border-right:1px solid var(--line);min-width:0;padding:11px 14px}.c-strip-cell:last-child{border-right:0}.c-strip-k{letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);font-size:9px}.c-strip-v{color:var(--text);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;margin-top:6px;font-size:13.5px;overflow:hidden}.c-pill{letter-spacing:.08em;border-radius:var(--r-sm);text-transform:uppercase;border:1px solid;padding:2px 7px;font-size:9.5px;display:inline-block}.c-pill.ok{color:var(--good)}.c-pill.warn{color:var(--warn)}.c-pill.bad{color:var(--bad)}.c-kpi-row{border:1px solid var(--line);background:var(--surface);border-radius:var(--r-sm);grid-template-columns:repeat(6,1fr);margin-bottom:14px;display:grid}.c-kpi{border-right:1px solid var(--line);padding:14px 16px;position:relative}.c-kpi:last-child{border-right:0}.c-kpi-label{letter-spacing:.14em;text-transform:uppercase;color:var(--text-3);font-size:9px}.c-kpi-val{letter-spacing:-.02em;font-variant-numeric:tabular-nums;color:var(--text);margin-top:6px;font-size:29px;font-weight:500}.c-kpi-val.zero{color:var(--text-3)}.c-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.c-mod{border:1px solid var(--line);background:var(--surface);border-radius:var(--r-sm);flex-direction:column;min-width:0;display:flex}.c-mod-head{border-bottom:1px solid var(--line);align-items:center;gap:9px;padding:11px 14px;display:flex}.c-tab{background:var(--accent);flex:none;width:16px;height:2px}.c-mod-head h3{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-2);margin:0;font-size:10.5px;font-weight:500}.c-mod-right{letter-spacing:.1em;color:var(--text-3);margin-left:auto;font-size:10.5px}.c-mod-body{flex:1;padding:14px}.c-tbl{border-collapse:collapse;width:100%;font-family:var(--font-mono)}.c-tbl th{text-align:left;letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);border-bottom:1px solid var(--line);padding:0 10px 9px;font-size:9px;font-weight:500}.c-tbl td{border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums;padding:8px 10px;font-size:12.5px}.c-tbl tr:last-child td{border-bottom:0}.c-tbl .num{text-align:right}.c-name{color:var(--text);font-weight:500}.c-dim{color:var(--text-3)}.c-bar{background:var(--surface-3);border-radius:var(--r-sm);height:7px;overflow:hidden}.c-bar i{height:100%;display:block}.c-check-list{flex-direction:column;margin-top:12px;display:flex}.c-check-row{border-top:1px solid var(--line);grid-template-columns:12px 1fr auto;align-items:center;gap:10px;padding:7px 0;font-size:12px;display:grid}.c-check-row:first-child{border-top:0}.c-dotmark{background:var(--text-3);border-radius:2px;width:8px;height:8px}.c-dotmark.ok{background:var(--good)}.c-dotmark.bad{background:var(--bad)}.c-dotmark.acc{background:var(--accent)}.c-dotmark.warn{background:var(--warn)}.c-check-name{color:var(--text)}.c-check-detail{color:var(--text-3);text-align:right;font-size:11px}.c-axis{color:var(--text-3);font-size:9px;font-family:var(--font-mono);justify-content:space-between;margin-top:6px;display:flex}.c-axis span{text-align:center;flex:1}.c-cols{align-items:flex-end;gap:4px;width:100%;display:flex}.c-col{background:var(--surface-3);flex:1;min-width:4px;transition:background .12s}.c-col.hi{background:var(--accent)}.c-band{gap:3px;margin-bottom:12px;display:flex}.c-band-cell{background:var(--surface-3);flex:1;height:14px}.c-band-cell.ok{background:var(--good)}.c-band-cell.bad{background:var(--bad)}@media (width<=1180px){.c-strip{grid-template-columns:repeat(4,1fr)}.c-kpi-row{grid-template-columns:repeat(3,1fr)}.c-grid{grid-template-columns:repeat(2,1fr)}.c-grid .c-mod[style*=span\ 3],.c-grid .c-mod[style*=span\ 2]{grid-column:span 2!important}}@media (width<=720px){.c-strip,.c-kpi-row{grid-template-columns:repeat(2,1fr)}.c-grid{grid-template-columns:1fr}.c-grid .c-mod[style*=span]{grid-column:span 1!important}}.lib-secbar{flex-wrap:wrap;gap:8px;margin:6px 0 16px;display:flex}.lib-secchip{border:1px solid var(--line);background:var(--surface);cursor:pointer;font:inherit;color:var(--text-2);border-radius:999px;align-items:center;gap:9px;padding:8px 14px;font-size:13px;transition:border-color .14s,color .14s,background .14s;display:inline-flex}.lib-secchip .glyph{opacity:.85;width:16px;height:16px}.lib-secchip:hover{color:var(--text);border-color:var(--line-2)}.lib-secchip.on{color:var(--text);border-color:var(--accent-line);background:var(--accent-soft)}.lib-secchip.on .glyph{color:var(--accent);opacity:1}.lib-secchip-n{font-family:var(--font-mono);color:var(--text-3);font-variant-numeric:tabular-nums;font-size:11px}.lib-secchip.on .lib-secchip-n{color:var(--accent)}.lib.lib-2{grid-template-columns:320px 1fr}.lib-main{overflow:hidden}.lib-detail{min-height:320px;padding:22px 24px}.lib-detail .eyebrow{margin-bottom:4px}.lib-meta-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.lib-meta-v{color:var(--text);word-break:break-word;margin-top:4px;font-size:13px}.lib-meta-v.mono{font-family:var(--font-mono);color:var(--text-2);font-size:12px}.lib-doc{font-size:14px}.lib-doc-empty{border:1px dashed var(--line-2);border-radius:var(--r-sm);color:var(--text-2);align-items:flex-start;gap:10px;padding:16px;font-size:13px;display:flex}.lib-doc-empty .glyph{width:20px;height:20px;color:var(--text-3);flex:none}@media (width<=960px){.lib.lib-2{grid-template-columns:1fr}.lib-secbar{gap:6px}.lib-secchip{padding:6px 11px;font-size:12.5px}}.gx-stats{text-align:right;color:var(--text-3);white-space:nowrap;font-size:11px;line-height:1.7}.gx-stats span{color:var(--text);font-size:13px}.gx-toolbar{font-family:var(--font-mono);flex-wrap:wrap;align-items:center;gap:14px;padding:0 2px 14px;display:flex}.gx-search{display:inline-flex;position:relative}.gx-search .graph-search{padding-left:28px}.gx-search-ic{color:var(--text-3);pointer-events:none;font-size:13px;position:absolute;top:50%;left:9px;transform:translateY(-50%)}.gx-filters{gap:6px;display:flex}.gx-filter{cursor:pointer;font-family:var(--font-mono);border-radius:var(--r-sm);border:1px solid var(--line-2);background:var(--surface-2);color:var(--text);align-items:center;gap:7px;padding:6px 11px;font-size:11.5px;transition:opacity .15s,border-color .15s,background .15s,color .15s;display:inline-flex}.gx-filter:hover{border-color:var(--line-3)}.gx-filter.off{border-color:var(--line);color:var(--text-3);background:0 0}.gx-filter.off .dot{opacity:.35}.gx-filter .dot{border-radius:2px;width:8px;height:8px;display:inline-block}.gx-readout{min-height:18px;color:var(--text-2);margin-left:auto;font-size:11.5px}.gx-canvas{border:1px solid var(--line);border-radius:var(--r-md);background-color:var(--bg-2);background-image:linear-gradient(#ffffff03 1px,#0000 1px),linear-gradient(90deg,#ffffff03 1px,#0000 1px);background-size:24px 24px;max-height:calc(100vh - 300px);overflow:auto;box-shadow:inset 0 14px 40px -28px #000000e6}.gx-inner{min-width:max-content;padding:8px;animation:.25s gxfade}.gx-inner.fluid{justify-content:center;align-items:flex-start;width:100%;min-width:0;display:flex}.gx-svg.gx-fluid{max-width:100%;height:auto}.gx-svg{font-family:var(--font-mono);-webkit-user-select:none;user-select:none;display:block}.gx-hint{color:var(--text-3);margin:14px 2px 0;font-size:11px;line-height:1.6}@keyframes gxfade{0%{opacity:0}to{opacity:1}}.spec-list{flex-direction:column;gap:14px;display:flex}.spec-item{padding:0;overflow:hidden}.spec-row{width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:110px 1fr auto auto 22px;align-items:center;gap:18px;padding:18px 20px;transition:background .12s;display:grid}.spec-row:hover,.spec-item.open .spec-row{background:var(--surface-2)}.spec-date{font-family:var(--font-mono);color:var(--text-2);letter-spacing:.02em;font-variant-numeric:tabular-nums;font-size:12px}.spec-main{flex-direction:column;gap:4px;min-width:0;display:flex}.spec-name{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text);font-size:15px;font-weight:600}.spec-purpose{color:var(--text-2);font-size:13px;line-height:1.5}.spec-status{border:1px solid var(--line-2);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--text-2);white-space:nowrap;border-radius:999px;align-items:center;gap:7px;padding:4px 11px;font-size:10.5px;display:inline-flex}.spec-status .dot{background:currentColor;border-radius:50%;width:6px;height:6px}.spec-status-planned{color:var(--text-3);background:var(--surface-2)}.spec-status-ongoing{color:var(--warn);border-color:color-mix(in srgb, var(--warn) 36%, transparent);background:color-mix(in srgb, var(--warn) 10%, transparent)}.spec-status-completed{color:var(--good);border-color:color-mix(in srgb, var(--good) 36%, transparent);background:color-mix(in srgb, var(--good) 10%, transparent)}.spec-chev{color:var(--text-3);text-align:center;font-size:22px;transition:transform .14s,color .14s;display:inline-block}.spec-item.open .spec-chev{color:var(--accent)}.spec-body{border-top:1px solid var(--line);background:color-mix(in srgb, var(--accent) 3%, transparent);max-height:640px;padding:18px 22px 22px;overflow:auto}@media (width<=720px){.spec-row{grid-template-columns:1fr auto 22px;gap:14px}.spec-date{grid-column:1/-1;margin-bottom:4px}.spec-status{grid-column:1/-1;justify-self:start;margin-top:4px}}.boot-splash{z-index:100;background:var(--bg);flex-direction:column;justify-content:center;align-items:center;gap:20px;display:flex;position:fixed;inset:0}.boot-splash.fading{animation:.55s forwards splashOut}.boot-dial{width:172px;height:172px;animation:1.8s ease-in-out infinite glowPulse;position:relative}.boot-ring{width:100%;height:100%;transform:rotate(-90deg)}.boot-progress{stroke-dasharray:452;stroke-dashoffset:452px;--end:0;animation:.4s cubic-bezier(.2,.7,.2,1) forwards ringFill}.boot-sprout{width:58px;height:58px;position:absolute;top:50%;left:50%;overflow:visible;transform:translate(-50%,-50%)}.boot-sprout .bs-stem{transform-origin:12px 21.5px;animation:.3s cubic-bezier(.2,.7,.2,1) .1s forwards stemGrow;transform:scaleY(0)}.boot-sprout .bs-leaf{transform-origin:12px 12px;transform:scale(0)}.boot-sprout .bs-leaf-main{animation:.2s cubic-bezier(.22,1,.36,1) .25s forwards leafIn}.boot-sprout .bs-leaf-back{animation:.2s cubic-bezier(.22,1,.36,1) .35s forwards leafIn}.boot-status{font:500 12px var(--font-mono);color:var(--text-2);align-items:center;display:flex}.boot-caret{background:var(--accent);width:6px;height:13px;margin-left:7px;animation:1s step-end infinite blink}@keyframes splashOut{to{opacity:0;visibility:hidden}}@keyframes stemGrow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes leafIn{0%{transform:scale(0)}to{transform:scale(1)}}@keyframes ringFill{to{stroke-dashoffset:var(--end)}}@keyframes glowPulse{0%,to{filter:drop-shadow(0 0 6px var(--accent-soft))}50%{filter:drop-shadow(0 0 16px var(--accent-line))}}.deploy-pop{border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--surface);flex-direction:column;gap:10px;margin-bottom:16px;padding:12px;display:flex}.deploy-pop .dp-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.deploy-pop .dp-path{background:var(--surface-2);min-width:200px;color:var(--text);border:1px solid var(--line-2);border-radius:var(--r-xs);font-family:var(--font-mono,monospace);flex:260px;padding:7px 10px;font-size:13px}.deploy-pop .dp-path:focus{border-color:var(--accent-line);outline:none}.deploy-pop .dp-note{color:var(--text-2);margin:0}.deploy-pop .dp-note code{color:var(--text)}.deploy-pop .dp-field{align-items:center;gap:6px;display:flex}.deploy-pop .dp-field>span{color:var(--text-2);white-space:nowrap;font-size:12px}.harness-tbl .h-acts .btn.h-trash{width:100%;min-width:0;padding:6px 0}.harness-tbl .h-acts .btn.h-trash:hover{color:var(--bad);border-color:color-mix(in srgb, var(--bad) 45%, var(--line-2))}.h-remove{border:1px solid color-mix(in srgb, var(--bad) 35%, var(--line-2));border-radius:var(--r-sm);background:color-mix(in srgb, var(--bad) 7%, transparent);flex-wrap:wrap;align-items:center;gap:14px;padding:10px 12px;display:flex}.h-remove .hr-msg{flex-direction:column;flex:280px;gap:2px;display:flex}.h-remove .hr-msg .sub{color:var(--text-2)}.h-remove .hr-msg code{color:var(--text)}.h-remove .hr-field{align-items:center;gap:6px;display:flex}.h-remove .hr-field>span{color:var(--text-2);white-space:nowrap;font-size:12px}.h-remove .hr-acts{align-items:center;gap:8px;display:flex}.h-remove .btn.hr-go{background:var(--bad);color:#fdf6f5;border-color:#0000}.h-remove .btn.hr-go:hover{filter:brightness(1.08)}.harness-tbl tbody tr.h-group td{font-family:var(--font-display);letter-spacing:.08em;text-transform:uppercase;color:var(--text-2);border:0;padding:18px 0 8px;font-size:12px;font-weight:600}.harness-tbl tbody tr.h-group .hg-sub{text-transform:none;letter-spacing:0;color:var(--text-3);font-weight:400;font-family:var(--font-mono);font-size:11px}.harness-tbl tbody tr.h-group:hover,.harness-tbl tbody tr.h-empty-row:hover{background:0 0}.harness-tbl .h-empty{color:var(--text-3);border:0;padding:6px 0 16px;font-size:13px}.rules-list{overflow:hidden}.rule-row{border-bottom:1px solid var(--line)}.rule-row:last-child{border-bottom:0}.rule-head{text-align:left;cursor:pointer;width:100%;font:inherit;color:var(--text);background:0 0;border:0;align-items:center;gap:12px;padding:13px 18px;transition:background .1s;display:flex}.rule-head:hover{background:var(--surface-2)}.rule-row.on .rule-head{background:var(--accent-soft)}.rule-no{font-family:var(--font-mono);color:var(--accent);font-variant-numeric:tabular-nums;min-width:34px;font-size:13px}.rule-title{font-family:var(--font-display);letter-spacing:-.01em;flex:1;font-size:15px;font-weight:600}.rule-chip{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);border:1px solid var(--line-2);border-radius:999px;padding:3px 9px;font-size:10.5px}.rule-chip.user{color:var(--accent);border-color:var(--accent-line)}.rule-chip.trial{color:var(--warn);border-color:color-mix(in srgb, var(--warn) 45%, transparent)}.rule-chip.trial.overdue{color:var(--bg);background:var(--warn);border-color:var(--warn)}.rule-expand{background:color-mix(in srgb, var(--accent) 4%, transparent);padding:2px 18px 18px 64px}.rule-expand p{color:var(--text-2);white-space:pre-wrap;font-size:13.5px;line-height:1.66}.rule-src{font-family:var(--font-mono);color:var(--text-3);margin-top:8px;font-size:11px}.rule-notice{color:var(--warn);margin:0 0 12px}.rules-meter{align-items:center;gap:12px;margin-bottom:16px;display:flex}.rules-meter-bar{background:var(--surface-3);border:1px solid var(--line);border-radius:999px;flex:0 0 180px;height:6px;overflow:hidden}.rules-meter-fill{background:var(--accent);height:100%;transition:width .2s}.rules-meter.warn .rules-meter-fill{background:var(--warn)}.rules-meter.over .rules-meter-fill{background:oklch(62% .19 25)}.rules-meter-label{font-family:var(--font-mono);color:var(--text-3);font-size:11.5px}.rules-meter.warn .rules-meter-label{color:var(--warn)}.rules-meter.over .rules-meter-label{color:oklch(62% .19 25)}.rule-form{flex-direction:column;gap:10px;display:flex}.rule-form .lib-filter{width:100%}.rule-body-input{resize:vertical;background:var(--surface);width:100%;color:var(--text);border:1px solid var(--line-2);border-radius:var(--r-sm);font-family:var(--font-mono);padding:10px 12px;font-size:12.5px;line-height:1.6}.rule-body-input:focus{border-color:var(--accent-line);outline:none}.rule-trial-label{font-family:var(--font-mono);color:var(--text-3);text-transform:uppercase;letter-spacing:.06em;align-items:center;gap:8px;font-size:11px;display:inline-flex}.rule-date{width:150px}.rail-vitals{border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-2);align-items:center;gap:14px;margin:2px 4px 12px;padding:12px 14px;display:flex}.rv-ring{flex:none}.rv-ring-num{fill:var(--accent);font-family:var(--font-display);font-size:17px;font-weight:700}.rv-ring-lbl{fill:var(--text-3);font-family:var(--font-mono);letter-spacing:1px;font-size:6.5px}.rv-rows{flex-direction:column;flex:1;gap:5px;min-width:0;font-size:12px;display:flex}.rv-rows>div{justify-content:space-between;gap:8px;display:flex}.rv-rows span{color:var(--text-2)}.rv-rows b{font-family:var(--font-mono);color:var(--accent);white-space:nowrap;text-overflow:ellipsis;font-size:11px;font-weight:500;overflow:hidden}.rv-rows b.plain{color:var(--text)}.motto{border-top:1px solid var(--line-2);max-width:62ch;margin:12px 0 0;padding-top:10px;font-style:italic}.voice-ref{padding:0}.voice-ref>summary{cursor:pointer;border-radius:var(--r-md);align-items:baseline;gap:12px;padding:12px 18px;list-style:none;display:flex}.voice-ref>summary::-webkit-details-marker{display:none}.voice-ref>summary:before{content:"";border-right:1.5px solid var(--text-3);border-bottom:1.5px solid var(--text-3);flex:none;width:5px;height:5px;margin-right:2px;transition:transform .15s;transform:rotate(-45deg)}.voice-ref[open]>summary:before{transform:rotate(45deg)}.voice-ref>summary:hover{background:var(--surface-2)}.voice-ref .vr-title{font-family:var(--font-display);font-size:14px;font-weight:600}.voice-ref .vr-current{font-family:var(--font-mono);color:var(--accent);text-transform:capitalize;font-size:11.5px}.voice-ref .vr-hint{margin-left:auto}.vr-list{padding:2px 12px 12px}.voice-row{border-radius:var(--r-xs);border:1px solid #0000;align-items:baseline;gap:12px;padding:5px 8px;display:flex}.voice-row.current{border-color:var(--accent-line);background:var(--accent-soft)}.vr-name{width:108px;font-family:var(--font-display);text-transform:capitalize;flex:none;font-size:12.5px;font-weight:600}.vr-desc{min-width:0;color:var(--text-2);flex:1;font-size:11.5px;font-style:italic}.h-setup{flex-direction:column;gap:10px;padding:4px 0;display:flex}.h-setup .hs-msg{margin:0}.hs-steps{flex-wrap:wrap;gap:14px;display:flex}.hs-step{align-items:center;gap:8px;display:flex}.hs-step>span{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--text-3);white-space:nowrap;font-size:10px}.jr-head{margin-bottom:14px}.jr-row2{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px;display:grid}.jr-card{padding-top:14px;padding-bottom:14px}.jr-card .card-head{margin-bottom:10px}.jr-ring{width:100%;color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:9px;padding:5px 0;display:flex}.jr-ring:hover .jr-ring-label{color:var(--text)}.jr-ring-label{width:88px;color:var(--text-2);flex:none;font-size:11.5px}.jr-ring-track{background:var(--surface-3);border-radius:999px;flex:1;height:8px;overflow:hidden}.jr-ring-fill{background:linear-gradient(90deg, var(--accent-2), var(--accent));border-radius:999px;height:100%;display:block}.jr-ring-num{text-align:right;width:34px;font-family:var(--font-mono);color:var(--accent);flex:none;font-size:10.5px}.jr-fresh{border:0;border-bottom:1px solid var(--line-2);width:100%;color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;align-items:baseline;gap:10px;padding:6px 0;display:flex}.jr-fresh:hover .jr-fresh-name{color:var(--accent)}.jr-fresh-kind{width:64px;font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);flex:none;font-size:8.5px}.jr-fresh-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:11.5px;overflow:hidden}.jr-fresh-when{font-family:var(--font-mono);color:var(--text-3);flex:none;font-size:10px}.jr-skipped{margin:8px 0 0;font-size:11px}.jr-care{border-top:1px solid var(--line-2);color:var(--text-3);margin:8px 0 0;padding-top:9px;font-size:11.5px}.jr-go{font-family:var(--font-mono);color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0;font-size:10.5px}.jr-go:hover{text-decoration:underline}.jr-go.right{margin-left:auto}.jr-map{border-color:var(--accent-line)}.jr-others{margin:14px 0 0;font-size:11.5px}.cmap{width:100%;height:auto;min-height:300px;display:block}.cm-edge{fill:none;stroke:var(--line-3);stroke-width:1.5px}.cm-edge-gov{fill:none;stroke:var(--line-2);stroke-width:1.2px;stroke-dasharray:4 5}.cm-node{cursor:pointer}.cmap .cm-node,.cmap .cm-mini>g{transform-box:fill-box;transform-origin:50%}.cm-node:hover circle{stroke-width:2.6px}.cm-node:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.cm-hub-disc{fill:var(--accent-soft);stroke:var(--accent);stroke-width:2px}.cm-hub-name{fill:var(--accent);font-family:var(--font-display);font-size:17px;font-weight:600}.cm-hub-num{fill:var(--text);font-family:var(--font-mono);font-size:10px}.cm-sat-disc{fill:var(--surface-2);stroke:var(--accent);stroke-width:1.5px}.cm-sat-name{fill:var(--text);font-family:var(--font-display);font-size:12.5px;font-weight:600}.cm-sat-num{fill:var(--accent);font-family:var(--font-mono);font-size:10px}.cm-sat-big{fill:var(--accent);font-family:var(--font-mono);font-size:13px;font-weight:500}.cm-mini{font-family:var(--font-mono);font-size:7.5px}.cm-mini-disc{fill:var(--surface);stroke-width:1.2px}.cm-pack-disc{fill:var(--accent-soft);stroke-width:1.2px}.cm-pack-id{fill:var(--text)}.cm-gov-disc{fill:var(--surface);stroke:var(--line-3);stroke-width:1.3px}.cm-gov-name{fill:var(--text);font-family:var(--font-display);font-size:10.5px;font-weight:600}.cm-gov-num{fill:var(--accent);font-family:var(--font-mono);font-size:9px}.cm-note{fill:var(--text-3);font-family:var(--font-mono);font-size:8.5px}.cm-govern-label{fill:var(--text-3);font-family:var(--font-mono);letter-spacing:1.5px;font-size:8.5px}@media (width<=1180px){.jr-row2{grid-template-columns:1fr}}@media (width<=960px){.rail-vitals{display:none}}@media (width<=720px){.rail-vitals{display:flex}.vr-name{width:100%}.voice-row{flex-wrap:wrap}.voice-ref .vr-hint{display:none}}.col:has(.pad>.jr-head){height:100vh}.page:has(>.pad>.jr-head){flex-direction:column;display:flex}.pad:has(>.jr-head){flex-direction:column;flex:1;width:100%;max-width:none;min-height:0;margin:0;display:flex}.pad:has(>.jr-head) .jr-map{flex-direction:column;flex:1;min-height:0;display:flex}.pad:has(>.jr-head) .jr-map .card-head{flex:none}.pad:has(>.jr-head) .cmap{flex:1;height:auto;min-height:240px}.pad:has(>.jr-head) .jr-others{flex:none}:root{--ease-out:cubic-bezier(.22,1,.36,1)}.glide{pointer-events:none;opacity:0;width:0;height:0;position:absolute;top:0;left:0}.rail>.glide{border-radius:var(--r-sm);background:linear-gradient(90deg, var(--accent-soft), transparent 88%)}.rail>.glide:before{content:"";background:var(--accent);width:3px;height:18px;box-shadow:0 0 12px var(--accent);border-radius:3px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.rail:has(>.glide) .rail-item.active{background:0 0}.rail:has(>.glide) .rail-item.active:before{opacity:0}.fl-atlas .rail>.glide{background:var(--accent-soft);border:1px solid var(--accent-line)}.fl-atlas .rail:has(>.glide) .rail-item.active{border-color:#0000}.seg:has(>.glide){position:relative}.seg>.glide{background:var(--accent);border-radius:5px}.fl-operator .seg>.glide{border-radius:0}.seg:has(>.glide) button{position:relative}.seg:has(>.glide) button.on{background:0 0}@keyframes viewIn{0%{opacity:.4;transform:translateY(5px)}}.view-in{animation:viewIn .22s var(--ease-out)}.console-head{position:relative}.console-progress{height:2px;position:absolute;top:-1px;left:0;right:0;overflow:hidden}.console-progress:after{content:"";background:linear-gradient(90deg, transparent, var(--warn), transparent);width:30%;animation:1.3s cubic-bezier(.45,0,.55,1) infinite consoleScan;position:absolute;inset:0}@keyframes consoleScan{0%{transform:translate(-100%)}to{transform:translate(340%)}}.console-head.flash-ok{animation:.9s ease-out flashOk}.console-head.flash-bad{animation:.9s ease-out flashBad}@keyframes flashOk{0%{background:color-mix(in srgb, var(--good) 28%, transparent)}}@keyframes flashBad{0%{background:color-mix(in srgb, var(--bad) 28%, transparent)}}@keyframes dotPop{0%{transform:scale(.2)}60%{transform:scale(1.35)}}.check.rise .feed-dot{animation:dotPop .4s var(--ease-out) both;animation-delay:calc(var(--i,0) * 50ms + .14s)}:root{interpolate-size:allow-keywords}.law-expand,.rule-expand,.check-body,.mf-raw-pre,.h-detail>*{transition:height .28s var(--ease-out), opacity .2s ease-out, padding-top .28s var(--ease-out), margin-top .28s var(--ease-out);overflow:clip}@starting-style{.law-expand,.rule-expand,.mf-raw-pre,.h-detail>*{opacity:0;height:0}.check-body{opacity:0;height:0;margin-top:0;padding-top:0}}.spot-hit{background:color-mix(in srgb, var(--accent) 26%, transparent);color:inherit;border-radius:2px;padding:0 1px;animation:.5s ease-out hitIn}@keyframes hitIn{0%{background:color-mix(in srgb, var(--accent) 55%, transparent)}}.sprout-sway{transform-origin:50% 88%;flex:none;display:inline-flex}::view-transition-old(root){animation-duration:.32s;animation-timing-function:var(--ease-out)}::view-transition-new(root){animation-duration:.32s;animation-timing-function:var(--ease-out)}
@@ -0,0 +1 @@
1
+ function e(e,t=10,n=`today`){let r=Array(t).fill(0).map((e,r)=>({t:r===t-1?n:`${t-1-r}d`,v:0})),i=Date.now();for(let n of e){let e=n.started||n.finished||n.created||n.ts;if(!e)continue;let a=typeof e==`string`?Date.parse(e):e*1e3;if(!Number.isFinite(a))continue;let o=Math.floor((i-a)/864e5);o<0||o>=t||(r[t-1-o].v+=1)}return r}export{e as t};
@@ -0,0 +1 @@
1
+ var e={security:`oklch(0.74 0.085 45)`,verify:`oklch(0.78 0.075 200)`,process:`oklch(0.76 0.075 150)`,craft:`oklch(0.78 0.085 95)`,context:`oklch(0.74 0.08 280)`,comms:`oklch(0.76 0.085 345)`},t={security:{label:`Security`,c:e.security},verify:{label:`Verification`,c:e.verify},process:{label:`Process`,c:e.process},craft:{label:`Craft`,c:e.craft},context:{label:`Context`,c:e.context},comms:{label:`Communication`,c:e.comms}},n=[`security`,`verify`,`process`,`craft`,`context`,`comms`],r={craft:e.craft,rigor:e.verify,ops:e.process,process:e.security},i=e=>r[e]||`var(--text-3)`;export{i as a,r as i,t as n,n as r,e as t};