runlist 0.0.0 → 0.94.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (166) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +1114 -6
  3. package/assets/app/app.css +283 -0
  4. package/assets/app/app.mjs +381 -0
  5. package/assets/app/block-editor.mjs +182 -0
  6. package/assets/app/block-model.mjs +52 -0
  7. package/assets/app/document-create.mjs +86 -0
  8. package/assets/app/document-lifecycle.mjs +36 -0
  9. package/assets/app/document-stages.mjs +22 -0
  10. package/assets/app/document-views.mjs +33 -0
  11. package/assets/app/document-yardstick.mjs +258 -0
  12. package/assets/app/editor-navigation.mjs +51 -0
  13. package/assets/app/filing-navigation.mjs +138 -0
  14. package/assets/app/git-changes.mjs +80 -0
  15. package/assets/app/git-commit.mjs +46 -0
  16. package/assets/app/index.html +70 -0
  17. package/assets/app/library-navigation.mjs +93 -0
  18. package/assets/app/outline.mjs +18 -0
  19. package/assets/app/quick-navigation.mjs +52 -0
  20. package/assets/app/record-navigation.mjs +78 -0
  21. package/assets/app/recovery-center.mjs +53 -0
  22. package/assets/app/semantic-search.mjs +14 -0
  23. package/assets/app/settings.mjs +15 -0
  24. package/assets/app/shared.mjs +104 -0
  25. package/assets/app/stage-source.mjs +75 -0
  26. package/assets/app/template-editor.mjs +47 -0
  27. package/assets/app/theme.mjs +25 -0
  28. package/assets/app/transport.mjs +43 -0
  29. package/assets/contracts/source-editing-v1.md +232 -0
  30. package/assets/opencode/plugin.js +162 -0
  31. package/assets/schemas/runlist-record-v1.schema.json +912 -0
  32. package/bin/dotmd.mjs +5 -0
  33. package/bin/runlist.mjs +2714 -0
  34. package/package.json +53 -6
  35. package/plugins/runlist-codex/.codex-plugin/plugin.json +18 -0
  36. package/plugins/runlist-codex/bin/runlist-hook +86 -0
  37. package/plugins/runlist-codex/hooks/hooks.json +16 -0
  38. package/plugins/runlist-codex/skills/runlist/SKILL.md +25 -0
  39. package/runlist.config.example.mjs +370 -0
  40. package/scripts/postinstall.mjs +56 -0
  41. package/src/agent-context.mjs +201 -0
  42. package/src/ai.mjs +30 -0
  43. package/src/app-create.mjs +169 -0
  44. package/src/app-filing.mjs +139 -0
  45. package/src/app-git-commits.mjs +48 -0
  46. package/src/app-git.mjs +180 -0
  47. package/src/app-library.mjs +152 -0
  48. package/src/app-lifecycle-worker.mjs +12 -0
  49. package/src/app-lifecycle.mjs +79 -0
  50. package/src/app-records.mjs +134 -0
  51. package/src/app-search.mjs +80 -0
  52. package/src/app-semantic-search.mjs +105 -0
  53. package/src/app-service.mjs +208 -0
  54. package/src/app-yardstick.mjs +269 -0
  55. package/src/app.mjs +102 -0
  56. package/src/atomic-mutation.mjs +1736 -0
  57. package/src/baton.mjs +435 -0
  58. package/src/body-link.mjs +48 -0
  59. package/src/bulk-tag.mjs +174 -0
  60. package/src/check-collapse.mjs +75 -0
  61. package/src/claude-commands.mjs +75 -0
  62. package/src/cli-editor.mjs +8 -0
  63. package/src/code-refs.mjs +545 -0
  64. package/src/codex-integration.mjs +81 -0
  65. package/src/color.mjs +14 -0
  66. package/src/commands.mjs +374 -0
  67. package/src/completions.mjs +93 -0
  68. package/src/config-edit.mjs +606 -0
  69. package/src/config.mjs +705 -0
  70. package/src/decision-action.mjs +58 -0
  71. package/src/decision.mjs +220 -0
  72. package/src/decisions.mjs +787 -0
  73. package/src/deps.mjs +317 -0
  74. package/src/desktop-install.mjs +158 -0
  75. package/src/desktop-runtime.mjs +4 -0
  76. package/src/desktop.mjs +25 -0
  77. package/src/diff.mjs +101 -0
  78. package/src/doctor.mjs +591 -0
  79. package/src/durable-rename.mjs +55 -0
  80. package/src/errors-read.mjs +44 -0
  81. package/src/export.mjs +496 -0
  82. package/src/extractors.mjs +101 -0
  83. package/src/filing.mjs +255 -0
  84. package/src/fix-membership.mjs +134 -0
  85. package/src/fix-refs.mjs +174 -0
  86. package/src/flags.mjs +318 -0
  87. package/src/frontmatter-fix.mjs +195 -0
  88. package/src/frontmatter.mjs +252 -0
  89. package/src/git-commit-filters.mjs +32 -0
  90. package/src/git-commit-protocol.mjs +198 -0
  91. package/src/git-commit-signing.mjs +75 -0
  92. package/src/git-commit-store.mjs +26 -0
  93. package/src/git-commit-support.mjs +16 -0
  94. package/src/git-commit-worker.mjs +32 -0
  95. package/src/git.mjs +909 -0
  96. package/src/glossary-check.mjs +35 -0
  97. package/src/glossary.mjs +243 -0
  98. package/src/graph.mjs +298 -0
  99. package/src/guard.mjs +488 -0
  100. package/src/health.mjs +212 -0
  101. package/src/hints.mjs +129 -0
  102. package/src/host-integration.mjs +339 -0
  103. package/src/hub-membership.mjs +284 -0
  104. package/src/hub.mjs +292 -0
  105. package/src/hud.mjs +436 -0
  106. package/src/index-file.mjs +163 -0
  107. package/src/index.mjs +478 -0
  108. package/src/init.mjs +512 -0
  109. package/src/install.mjs +222 -0
  110. package/src/journal-read.mjs +116 -0
  111. package/src/journal.mjs +472 -0
  112. package/src/lifecycle.mjs +1444 -0
  113. package/src/lint.mjs +386 -0
  114. package/src/managed-path.mjs +192 -0
  115. package/src/markdown-code-spans.mjs +58 -0
  116. package/src/migrate-prompts.mjs +171 -0
  117. package/src/migrate-template.mjs +170 -0
  118. package/src/migrate.mjs +90 -0
  119. package/src/misuse-read.mjs +61 -0
  120. package/src/model-request.mjs +33 -0
  121. package/src/model.mjs +523 -0
  122. package/src/modules.mjs +355 -0
  123. package/src/naming.mjs +55 -0
  124. package/src/native-action.mjs +59 -0
  125. package/src/native-record.mjs +244 -0
  126. package/src/new.mjs +1321 -0
  127. package/src/output-identity.mjs +111 -0
  128. package/src/parent-plan.mjs +58 -0
  129. package/src/parse-cache.mjs +99 -0
  130. package/src/path-containment.mjs +15 -0
  131. package/src/pickup-card.mjs +293 -0
  132. package/src/pickup.mjs +671 -0
  133. package/src/prompt.mjs +25 -0
  134. package/src/prompts.mjs +585 -0
  135. package/src/query.mjs +977 -0
  136. package/src/record-action.mjs +11 -0
  137. package/src/record-create.mjs +82 -0
  138. package/src/reference-planner.mjs +388 -0
  139. package/src/reference-values.mjs +11 -0
  140. package/src/rename.mjs +107 -0
  141. package/src/render.mjs +678 -0
  142. package/src/roadmap.mjs +184 -0
  143. package/src/runlist.mjs +944 -0
  144. package/src/section.mjs +225 -0
  145. package/src/semantic-search-client.mjs +58 -0
  146. package/src/ship.mjs +166 -0
  147. package/src/show.mjs +101 -0
  148. package/src/skill-drift.mjs +98 -0
  149. package/src/source-editor.mjs +491 -0
  150. package/src/stages.mjs +73 -0
  151. package/src/state-migration.mjs +123 -0
  152. package/src/stats.mjs +200 -0
  153. package/src/status-metadata.mjs +87 -0
  154. package/src/statuses.mjs +721 -0
  155. package/src/summary.mjs +74 -0
  156. package/src/surfaces.mjs +28 -0
  157. package/src/sync-status.mjs +316 -0
  158. package/src/template-store.mjs +62 -0
  159. package/src/update.mjs +338 -0
  160. package/src/use.mjs +58 -0
  161. package/src/util.mjs +337 -0
  162. package/src/validate.mjs +794 -0
  163. package/src/watch.mjs +56 -0
  164. package/src/xref.mjs +406 -0
  165. package/src/yardstick-command.mjs +178 -0
  166. package/src/yardstick.mjs +112 -0
@@ -0,0 +1,283 @@
1
+ :root{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:14px;color:var(--text);background:var(--bg);color-scheme:light;
2
+ --text:#242d29;
3
+ --bg:#f8f7f3;
4
+ --main:#fbfaf7;
5
+ --panel:#f2f2ec;
6
+ --raised:#fff;
7
+ --input:#fbfbf7;
8
+ --hover:#f0f0e9;
9
+ --selected:#e0e9df;
10
+ --line:#dfded7;
11
+ --muted:#737972;
12
+ --subtle:#8b8d84;
13
+ --green:#135d46;
14
+ --action-hover:#0a4835;
15
+ --focus:#83bca8;
16
+ --focus-surface:#fffefa;
17
+ --focus-line:#e7e5dc;
18
+ --code:#efeee7;
19
+ --quote-line:#b8c8b8;
20
+ --notice:#eeeee7;
21
+ --notice-text:#545e55;
22
+ --warning-bg:#f1ecd9;
23
+ --warning-line:#b4a160;
24
+ --warning-text:#7d624e;
25
+ --error-bg:#fff0e9;
26
+ --error-text:#944022;
27
+ --add-bg:#e4f0e4;
28
+ --add-text:#28592e;
29
+ --remove-bg:#fae6df;
30
+ --remove-text:#924b35;
31
+ --status-bg:#e9eadf;
32
+ --status-text:#616c54;
33
+ --status-line:#d9dccb;
34
+ --good:#2b8765;
35
+ --caution:#b78b36;
36
+ --dot:#90998f;
37
+ --marker:#4b5348;
38
+ --footer:#fbfaf7ee;
39
+ --shadow:#182b2433;
40
+ --backdrop:#14221c66;
41
+ --action-fill:#135d46;
42
+ --on-action:#fff;
43
+ }
44
+ :root[data-theme="dark"]{color-scheme:dark;
45
+ --text:#e2e5e1;
46
+ --bg:#171a18;
47
+ --main:#1b1e1c;
48
+ --panel:#202421;
49
+ --raised:#262b27;
50
+ --input:#242924;
51
+ --hover:#2a302b;
52
+ --selected:#2a4034;
53
+ --line:#394039;
54
+ --muted:#a6afa7;
55
+ --subtle:#959e96;
56
+ --green:#8fd5b5;
57
+ --action-fill:#286c50;
58
+ --action-hover:#338761;
59
+ --on-action:#f4fbf6;
60
+ --focus:#92d9b8;
61
+ --focus-surface:#252d27;
62
+ --focus-line:#526e5b;
63
+ --code:#272d28;
64
+ --quote-line:#64836c;
65
+ --notice:#222922;
66
+ --notice-text:#b4c0b4;
67
+ --warning-bg:#352f22;
68
+ --warning-line:#a58a4d;
69
+ --warning-text:#d9c398;
70
+ --error-bg:#3b2824;
71
+ --error-text:#f0b29e;
72
+ --add-bg:#243c2d;
73
+ --add-text:#a8deba;
74
+ --remove-bg:#452d2a;
75
+ --remove-text:#efb3a5;
76
+ --status-bg:#303a2d;
77
+ --status-text:#c1d0b5;
78
+ --status-line:#4b5943;
79
+ --good:#7bcc9d;
80
+ --caution:#e5bd72;
81
+ --dot:#9da79e;
82
+ --marker:#c0c9be;
83
+ --footer:#1b1e1cee;
84
+ --shadow:#0008;
85
+ --backdrop:#080d0acc;
86
+ }
87
+
88
+ *{box-sizing:border-box}body{margin:0}button,input,textarea{font:inherit}button{cursor:pointer;border:1px solid var(--line);border-radius:6px;background:var(--raised);color:inherit;padding:8px 13px;font-weight:550;white-space:nowrap}button:hover{background:var(--hover)}button:disabled{opacity:.4;cursor:default}button.primary{background:var(--action-fill);border-color:var(--action-fill);color:var(--on-action)}button.primary:hover:not(:disabled){background:var(--action-hover)}.quiet{border-color:transparent;background:transparent}.small{padding:5px 9px;font-size:12px}button:focus-visible,input:focus-visible,textarea:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--focus);outline-offset:2px}[hidden]{display:none!important}.muted{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
89
+ .app-header{height:64px;padding:0 26px;display:flex;align-items:center;border-bottom:1px solid var(--line);gap:24px;background:var(--raised)}.brand{font-weight:730;font-size:22px;letter-spacing:-1px;display:flex;align-items:center;gap:9px}.brand-mark{width:26px;height:26px;background:var(--action-fill);color:var(--on-action);display:grid;place-items:center;border-radius:5px;font-family:monospace;font-size:23px;font-weight:400}.checkout{padding-left:24px;border-left:1px solid var(--line);font-size:13px;color:var(--muted)}.identity{margin-left:auto;color:var(--muted);font-size:12px}#notice{min-height:30px;padding:8px 26px;font-size:12px;border-bottom:1px solid var(--line);background:var(--notice);color:var(--notice-text)}#notice.error{background:var(--error-bg);color:var(--error-text)}.workspace{display:grid;grid-template-columns:230px minmax(400px,1fr) 282px;min-height:calc(100vh - 100px)}
90
+ .sidebar{background:var(--panel);border-right:1px solid var(--line);padding:26px 16px;display:flex;flex-direction:column}.sidebar-label{font-size:10px;letter-spacing:1.8px;color:var(--muted);font-weight:650;display:flex;justify-content:space-between;margin-bottom:16px}.search{width:100%;border:1px solid var(--line);background:var(--input);padding:9px 11px;border-radius:5px;margin-bottom:20px}.plan{width:100%;text-align:left;display:block;border:0;background:none;padding:12px 11px;margin:2px 0;border-radius:6px;white-space:normal}.plan.active{background:var(--selected)}.plan-name{display:block;font-size:13px;line-height:1.5;font-weight:600}.plan-meta{font-size:11px;color:var(--muted);display:block;margin-top:5px}.dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--dot);margin-right:6px}.dot.active,.dot.in-session{background:var(--good)}.dot.partial,.dot.blocked{background:var(--caution)}.sidebar-footer{font-size:12px;line-height:1.8;color:var(--muted);margin-top:auto;padding:32px 12px 5px}.sidebar-footer span{font-size:11px;color:var(--muted)}main{min-width:0;background:var(--main)}.document-toolbar{display:flex;align-items:center;gap:14px;padding:16px 26px;border-bottom:1px solid var(--line);min-height:72px}.document-name{min-width:0;flex:1}#doc-title{font-weight:650;line-height:1.5;font-size:13px}#doc-path{display:block;color:var(--muted);font-family:ui-monospace,SFMono-Regular,monospace;font-size:10px;margin-top:4px;overflow-wrap:anywhere}.status-badge{background:var(--status-bg);color:var(--status-text);border:1px solid var(--status-line);padding:4px 7px;border-radius:4px;font-size:10px;white-space:nowrap}.document-actions{display:flex;gap:5px;align-items:center}#toggle-plans{display:none}.view-tabs{display:flex;align-items:center;gap:17px;padding:0 30px;border-bottom:1px solid var(--line);height:53px}.view-tabs button{border:0;border-radius:0;padding:16px 0 14px;font-size:12px;background:none;border-bottom:2px solid transparent;color:var(--muted)}.view-tabs button[aria-selected=true]{color:var(--green);border-bottom-color:var(--green)}.draft-status{margin-left:auto;font-size:10px;color:var(--muted);text-align:right}.inline-note{margin:20px 30px 0;padding:12px 14px;background:var(--warning-bg);border-left:3px solid var(--warning-line);font-size:12px;line-height:1.7}.recovery{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.recovery span{flex:1}.empty{padding:80px 50px;max-width:600px}.empty h1,.connect-panel h1{font-family:Georgia,serif;font-weight:400;font-size:34px;line-height:1.3}.empty p{line-height:1.8;color:var(--muted)}
91
+ .markdown{max-width:850px;padding:35px 46px 80px;margin:auto;font-size:14px;line-height:1.85;overflow-wrap:anywhere}.markdown h1,.markdown h2,.markdown h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;line-height:1.3;letter-spacing:-.4px}.markdown h1{font-size:34px;margin:10px 0 28px}.markdown h2{font-size:25px;margin:42px 0 18px}.markdown h3{font-size:20px;margin:28px 0 12px}.markdown p{margin:16px 0}.markdown a{color:var(--green);text-underline-offset:3px}.markdown code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;background:var(--code);font-size:.88em;padding:2px 4px;border-radius:3px}.markdown pre{background:var(--code);border:1px solid var(--line);padding:17px;overflow:auto;border-radius:5px;line-height:1.6}.markdown pre code{padding:0;background:none}.markdown ul,.markdown ol{padding-left:22px}.markdown li{margin:8px 0}.markdown .task{list-style:none;display:flex;gap:11px;margin-left:-20px}.task span{color:var(--green);font-size:18px;flex:none}.markdown blockquote{border-left:3px solid var(--quote-line);padding:2px 17px;color:var(--muted);margin:24px 0}.table-wrap{overflow:auto}.markdown table{border-collapse:collapse;width:100%;font-size:12px;margin:24px 0}.markdown td,.markdown th{border-bottom:1px solid var(--line);padding:10px;text-align:left}.markdown th{color:var(--muted);background:var(--code)}.markdown hr{border:0;border-top:1px solid var(--line);margin:35px 0}
92
+ .evidence{border-left:1px solid var(--line);padding:29px 23px;background:var(--panel)}.file-info{font-size:12px;line-height:1.7;border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:24px}.file-info dt{color:var(--muted);font-size:10px;margin-top:14px}.file-info dd{margin:3px 0 0;overflow-wrap:anywhere}.file-info code{font-size:10px}.flag{padding-bottom:25px;margin-bottom:24px;border-bottom:1px solid var(--line)}.flag h3{font-size:12px;font-weight:600;line-height:1.65;margin:12px 0}.flag-tag{font-size:10px;color:var(--warning-text);text-transform:uppercase;letter-spacing:1px}.flag h4{font-size:10px;letter-spacing:.4px;color:var(--muted);font-weight:500;margin:17px 0 8px}.flag pre{white-space:pre-wrap;overflow-wrap:anywhere;font:10px/1.7 ui-monospace,monospace;padding:10px;background:var(--code);border-radius:4px;margin:8px 0}.flag small{font-size:10px;color:var(--muted);line-height:1.7;display:block}.flag .current-quote{background:var(--selected)}.editing,.reviewing,.source-view{padding:25px 30px 50px}.editor-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:11px;color:var(--muted);margin-bottom:12px}.editor-caption span:last-child{font-size:10px}textarea{display:block;resize:vertical;width:100%;min-height:calc(100vh - 360px);padding:20px 22px;border:1px solid var(--line);border-radius:6px;background:var(--raised);color:var(--text);font:12px/1.85 ui-monospace,SFMono-Regular,Consolas,monospace;tab-size:2}.editor-footer{display:flex;gap:7px;flex-wrap:wrap;margin-top:17px}.review-heading h2{font:25px Georgia,serif;margin:6px 0 10px}.review-heading p{font-size:12px;color:var(--muted);margin-bottom:22px}.diff{background:var(--raised);border:1px solid var(--line);border-radius:5px;overflow:auto;font:11px/1.8 ui-monospace,SFMono-Regular,monospace}.diff-line{display:flex;min-width:fit-content;padding:2px 13px;white-space:pre-wrap;overflow-wrap:anywhere}.diff-line>span{flex:none;min-width:24px;user-select:none}.diff-line code{font:inherit}.diff-line.add{background:var(--add-bg);color:var(--add-text)}.diff-line.remove{background:var(--remove-bg);color:var(--remove-text)}.diff-gap{background:var(--code);color:var(--subtle);padding:4px 15px}.diff>p{padding:14px}.save-bar{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);padding-top:22px;margin-top:25px}.save-bar>div{flex:1}.save-bar strong{font-size:12px}.save-bar p{font-size:10px;color:var(--muted);line-height:1.6}.source-view pre,.conflict pre,#repair-evidence{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--code);border:1px solid var(--line);padding:17px;font:11px/1.8 ui-monospace,monospace;max-height:70vh;overflow:auto}.conflict{margin:20px 30px;border:1px solid var(--warning-line);background:var(--warning-bg);padding:22px}.conflict h2{font:23px Georgia,serif;margin-top:0}.conflict p{font-size:12px;line-height:1.8;color:var(--warning-text)}.conflict-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:20px 0}.conflict-columns section{min-width:0}.conflict h3{font-size:11px}.conflict summary{font-size:11px;margin-top:12px;cursor:pointer}.connect-panel{max-width:520px;margin:90px auto;padding:0 25px}.connect-panel p{color:var(--muted);line-height:1.8}.connect-panel label{display:block;font-size:12px;margin:24px 0 9px}.connect-panel input{width:100%;padding:11px;border:1px solid var(--line);border-radius:5px;margin-bottom:15px}
93
+ @media(min-width:1121px){.app-header{position:sticky;top:0;z-index:10}#notice{position:sticky;top:64px;z-index:9}.sidebar{position:sticky;top:95px;height:calc(100vh - 95px);overflow:auto;align-self:start}.evidence{position:sticky;top:95px;max-height:calc(100vh - 95px);overflow:auto;align-self:start}.document-toolbar{position:sticky;top:95px;z-index:4;background:var(--main)}.view-tabs{position:sticky;top:167px;z-index:4;background:var(--main)}.conflict{scroll-margin-top:260px}}
94
+ @media(min-width:1500px){.workspace{grid-template-columns:230px minmax(400px,1fr) 300px}.markdown{padding-top:45px;font-size:15px}.markdown h1{font-size:39px}}
95
+ @media(max-width:1120px){.workspace{grid-template-columns:220px minmax(400px,1fr)}.evidence{grid-column:2;border-left:0;border-top:1px solid var(--line)}.evidence #flags{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.file-info{max-width:700px}.markdown{padding:30px}.document-toolbar{padding:19px 24px}.view-tabs{padding:0 24px;gap:15px}.identity{display:none}}
96
+ @media(max-width:740px){.app-header{height:58px;padding:0 16px;gap:17px}.checkout{font-size:11px;padding-left:16px}#disconnect{font-size:11px;padding:6px;margin-left:auto}#notice{padding:9px 16px}.workspace{display:block}.sidebar{display:none;max-height:50vh;overflow:auto;border-right:0;border-bottom:1px solid var(--line);padding:18px}.sidebar.open{display:block}.sidebar-footer{display:none}.document-toolbar{padding:16px;flex-wrap:wrap;gap:10px}.document-name{flex-basis:calc(100% - 70px)}#toggle-plans{display:block;font-size:11px}.document-actions{margin-left:auto}.view-tabs{padding:0 16px;gap:15px;flex-wrap:wrap;height:auto;min-height:50px}.view-tabs button{font-size:11px}.draft-status{width:100%;padding-bottom:9px;text-align:left}.markdown{padding:24px 22px 50px;font-size:13px}.markdown h1{font-size:29px}.markdown h2{font-size:23px}.editing,.reviewing,.source-view{padding:22px 16px}.editor-caption{align-items:start}.editor-caption span:last-child{max-width:160px;text-align:right}textarea{padding:15px;font-size:11px;min-height:50vh}.evidence{padding:24px 22px}.evidence #flags{display:block}.save-bar{flex-wrap:wrap}.save-bar>div{flex-basis:100%}.conflict{margin:16px;padding:17px}.conflict-columns{display:block}.inline-note{margin:16px 16px 0}.empty{padding:45px 24px}.connect-panel{margin-top:45px}}
97
+ /* The document itself is the editing surface. Block controls appear on intent. */
98
+ .editing{padding:0 0 30px}.inline-editor-hint{display:flex;align-items:center;justify-content:space-between;gap:10px;max-width:850px;margin:0 auto;padding:15px 46px 0;color:var(--subtle);font-size:11px}.inline-editor-hint kbd{font:inherit;background:var(--code);border:1px solid var(--line);border-radius:3px;padding:0 4px}.block-document{padding-top:22px}.doc-block{position:relative;margin:7px 0;min-width:0}.doc-block .block-text{outline:none;border-radius:3px;min-height:1.85em;white-space:pre-wrap;cursor:text;overflow-wrap:anywhere}.doc-block .block-text:focus{background:var(--focus-surface);box-shadow:0 0 0 1px var(--focus-line)}.doc-block .block-text:empty:before{content:attr(data-placeholder);color:var(--subtle);pointer-events:none}.block-handle{position:absolute;left:-30px;top:1px;width:24px;height:26px;padding:0;border:0;background:transparent;color:var(--subtle);opacity:0;font-size:20px;font-weight:400;z-index:1}.doc-block:hover>.block-handle,.doc-block:focus-within>.block-handle,.block-handle:focus-visible{opacity:1}.block-h1{margin:10px 0 28px}.block-h2{margin:36px 0 16px}.block-h3{margin:24px 0 10px}.doc-block h1,.doc-block h2,.doc-block h3,.doc-block h4,.doc-block h5,.doc-block h6{margin:0;min-height:1.3em!important}.block-h1 .block-handle{top:8px}.block-h2 .block-handle{top:4px}.block-bullet,.block-number,.block-task{display:flex;align-items:flex-start;gap:11px;margin:5px 0}.block-marker{flex:none;min-width:18px;color:var(--marker);line-height:1.85}.block-number .block-marker{font-size:.95em}.block-task input{width:16px;height:16px;min-width:16px;margin:7px 0 0;accent-color:var(--green);cursor:pointer}.block-task .block-text,.block-bullet .block-text,.block-number .block-text{flex:1;min-width:0}.block-task:has(input:checked)>.block-text{color:var(--subtle);text-decoration-color:var(--subtle)}.block-quote{padding:4px 16px;border-left:3px solid var(--quote-line);margin:20px 0;color:var(--muted)}.block-code pre{margin:16px 0!important;white-space:pre;overflow:auto;min-height:3em!important}.source-block summary{color:var(--muted);font-size:11px;cursor:pointer;margin:5px 0 14px}.source-block textarea{min-height:150px;font-size:12px}.locked-block{border-top:1px solid var(--line);margin-top:40px;padding-top:12px;color:var(--muted)}.locked-block>.block-handle{display:none}.block-lock-label{font-size:10px;font-family:Inter,sans-serif;color:var(--subtle)}.append-block{display:block;padding:10px 0;border:0;background:transparent;color:var(--subtle);font-size:12px;font-weight:400;margin-top:20px}.append-block:hover{color:var(--green);background:none}.editing>.editor-footer{position:sticky;bottom:0;z-index:5;background:var(--footer);border-top:1px solid var(--line);padding:12px 30px;margin:0;backdrop-filter:blur(8px)}#markdown-fallback{padding:25px 30px}.block-format{position:fixed;z-index:30;display:flex;gap:2px;border:1px solid var(--line);background:var(--raised);box-shadow:0 4px 18px var(--shadow);padding:4px;border-radius:7px}.block-format button{border:0;padding:7px 10px;border-radius:4px;font-size:12px}.block-menu{position:fixed;z-index:31;width:248px;max-height:420px;overflow:auto;border:1px solid var(--line);background:var(--raised);box-shadow:0 6px 24px var(--shadow);border-radius:8px;padding:6px}.block-menu-title{font-size:9px;letter-spacing:1px;color:var(--subtle);padding:8px 10px}.block-menu button{display:block;width:100%;text-align:left;border:0;padding:7px 10px;white-space:normal;font-size:12px}.block-menu button.selected{background:var(--hover)}.block-menu small{display:block;color:var(--subtle);font-size:10px;margin-top:2px}.block-menu p{font-size:12px;padding:8px}.block-text a{cursor:text}.block-text[contenteditable=false]{cursor:default}
99
+ @media(max-width:740px){.editing{padding:0 0 16px}.inline-editor-hint{padding:12px 22px 0;align-items:start;font-size:10px}.inline-editor-hint>span{max-width:170px}.inline-editor-hint button{font-size:10px;padding:3px}.block-document{padding-left:32px;padding-right:22px;padding-top:20px}.block-handle{left:-27px;opacity:.65}.editing>.editor-footer{padding:10px 16px}.block-menu{max-height:50vh}.block-format button{padding:8px}.block-task input{margin-top:5px}#markdown-fallback{padding:20px 16px}}
100
+
101
+ /* Section tools stay beside the document, including while writing. */
102
+ .template-launch{display:flex;flex-direction:column;width:100%;text-align:left;margin-top:20px;border-top:1px solid var(--line);padding:16px 8px}.template-launch span{font-size:12px;color:var(--muted);margin-top:3px}
103
+ .section-navigation{position:static;padding-bottom:20px}.section-navigation .sidebar-label{display:flex;align-items:center;gap:8px}.section-navigation .search{width:100%;margin:12px 0}.section-navigation #outline{max-height:40vh;overflow:auto;overscroll-behavior:contain}.outline-row{display:flex;align-items:center;flex-wrap:wrap;border-radius:5px;min-height:34px}.outline-row:hover{background:var(--hover)}.section-link{flex:1;min-width:0;text-align:left;font-size:12px;line-height:1.5;padding:7px 4px 7px calc(4px + (var(--heading-level) - 1)*9px);overflow:hidden;text-overflow:ellipsis}.section-link[aria-current="true"]{color:var(--green);font-weight:650;background:var(--selected);border-radius:5px}.section-bookmark{padding:5px 7px;font-size:16px;color:var(--muted)}.section-bookmark[aria-pressed="true"]{color:var(--caution)}.outline-row small{width:100%;padding-left:6px;color:var(--muted);font-size:11px}.bookmark-heading{margin-top:24px}.navigation-keys{font-size:11px;line-height:1.8;color:var(--muted);margin-top:20px}#add-section{margin-top:10px}#close-outline{display:none}#toggle-outline{margin-left:auto}.file-evidence{border-top:1px solid var(--line);padding-top:20px}.file-evidence>summary{font-size:11px;font-weight:650;letter-spacing:.08em;cursor:pointer;color:var(--muted);margin-bottom:18px}.evidence .muted{font-size:12px}.block-row{scroll-margin-top:240px}
104
+ .template-dialog{border:1px solid var(--line);border-radius:12px;width:min(1080px,calc(100vw - 48px));max-height:90vh;padding:0;box-shadow:0 24px 100px var(--shadow);color:var(--text);background:var(--panel)}.template-dialog::backdrop{background:var(--backdrop)}.template-header{display:flex;align-items:center;justify-content:space-between;padding:24px 30px;border-bottom:1px solid var(--line)}.template-header h2{margin:0;font-size:25px;font-family:Georgia,serif}.template-header p{margin:7px 0 0;font-size:13px;color:var(--muted)}.template-header>button{font-size:25px}.template-layout{display:grid;grid-template-columns:170px minmax(0,1fr);min-height:560px}.template-layout>nav{padding:20px 12px;border-right:1px solid var(--line)}.template-layout>nav button{display:block;width:100%;text-align:left;padding:12px;border-radius:6px}.template-layout>nav button.active{background:var(--selected);color:var(--green);font-weight:650}.template-detail{padding:24px 30px;min-width:0}.template-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.template-heading h3{font-size:19px;margin:0;text-transform:capitalize}.template-detail>p,.template-detail .muted{font-size:12px;line-height:1.7}.template-tabs{display:flex;gap:8px;margin:22px 0 10px}.template-tabs [aria-pressed="true"]{background:var(--selected);color:var(--green)}.template-detail textarea{box-sizing:border-box;width:100%;min-height:300px;max-height:45vh;resize:vertical;border:1px solid var(--line);border-radius:6px;background:var(--raised);padding:18px;line-height:1.65;font:12px/1.65 ui-monospace,monospace;color:var(--text)}.template-detail pre{white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px}.template-detail .markdown{padding:18px;background:var(--raised);border:1px solid var(--line);border-radius:6px;max-height:45vh;overflow:auto}.template-actions{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 10px}#template-feedback{font-size:13px;padding:10px 0;min-height:20px}#template-feedback.error{color:var(--error-text)}.template-dialog details{margin:15px 0}.template-dialog summary{cursor:pointer;font-size:12px}.template-dialog #template-diff{max-height:250px;overflow:auto}
105
+ @media(max-width:1120px){.section-navigation{position:static}#toggle-outline{display:block}.evidence.outline-open{display:block!important;position:fixed;inset:110px 18px 18px auto;width:300px;max-width:calc(100vw - 36px);z-index:20;overflow:auto;background:var(--panel);box-shadow:0 12px 60px var(--shadow);border:1px solid var(--line);border-radius:10px;padding:22px;box-sizing:border-box}.outline-open #close-outline{display:block;margin-left:auto}.outline-open .file-evidence{display:none}.outline-open #outline{max-height:45vh}}
106
+ @media(max-width:740px){.template-dialog{width:calc(100vw - 20px);max-height:95vh}.template-header{padding:18px}.template-layout{grid-template-columns:1fr}.template-layout>nav{display:flex;gap:8px;overflow:auto;border-right:0;border-bottom:1px solid var(--line);padding:10px}.template-layout>nav button{width:auto;white-space:nowrap}.template-detail{padding:18px}.template-heading{align-items:flex-start;flex-direction:column;gap:5px}.template-detail textarea{min-height:250px}.view-tabs #toggle-outline{padding-left:8px;padding-right:8px}.section-navigation{padding-top:10px}}
107
+ .template-header{position:sticky;top:0;z-index:2;background:var(--panel)}
108
+ .document-pin{border:0;font-size:20px;padding:4px}.document-pin[aria-pressed=true]{color:var(--caution)}.document-connections{padding-bottom:20px;border-bottom:1px solid var(--line);margin-bottom:20px}.document-connections summary{font-size:11px;color:var(--muted);cursor:pointer;margin:8px 0}.connection-link{width:100%;display:block;text-align:left;font-size:11px;line-height:1.5;padding:7px 4px}.connection-link:hover{background:var(--selected)}.saved-document{display:flex;align-items:center;gap:2px}.saved-document>.plan{flex:1;min-width:0}.saved-document>.small{border:0;padding:5px;font-size:16px;color:var(--muted)}
109
+ #library-home{border:0;background:transparent;padding:0;border-radius:0}#library-home:hover{color:var(--green)}.library-start .document-pin{display:none}
110
+
111
+ /* Navigation names the destinations; the main area holds their contents. */
112
+ .sidebar{padding:24px 12px;gap:18px}
113
+ .sidebar>.sidebar-label{margin:0 10px;align-items:center;letter-spacing:1.2px}
114
+ .library-kinds{display:flex;flex-direction:column;gap:3px}
115
+ .library-kinds button{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;text-align:left;font-size:13px}
116
+ .library-kinds button>span:last-child{font-size:11px;font-weight:400;color:var(--muted)}
117
+ .library-kinds button[aria-pressed=true]{background:var(--selected);color:var(--green)}
118
+ .library-local{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain}
119
+ .library-local summary{font-size:10px;letter-spacing:1px;color:var(--muted);cursor:pointer;padding:12px 10px 6px}
120
+ .library-local .plan{padding:9px 10px;margin:1px 0}
121
+ .library-local .plan-name{font-size:12px;font-weight:500;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
122
+ .library-local .plan-location{font-size:9px;margin-top:3px}
123
+ .sidebar-bottom{margin-top:auto;flex-shrink:0}
124
+ .sidebar .template-launch{margin:0;padding:14px 10px;border-radius:0;border-top:1px solid var(--line);font-size:13px}
125
+ .sidebar .template-launch span{font-size:10px}
126
+ .sidebar-footer{padding:12px 10px 0;margin:0;font-size:11px}
127
+ .workspace.library-start{grid-template-columns:230px minmax(0,1fr)}
128
+ .library-start .evidence,.library-start .document-toolbar{display:none}
129
+ .library-home{max-width:1440px;padding:36px 40px 24px;margin:0 auto}
130
+ .library-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:25px}
131
+ .library-heading h1{font:32px/1.3 Georgia,serif;letter-spacing:-.5px;margin:0 0 8px}
132
+ .library-heading p{font-size:12px;line-height:1.6;color:var(--muted);margin:0}
133
+ .library-heading>button{margin-top:3px}
134
+ .library-controls{display:flex;gap:12px;align-items:center}
135
+ .library-controls .search{flex:1;min-width:0;width:auto;margin:0;background:var(--raised);padding:11px 13px}
136
+ .library-controls select,.library-filters select{font:12px Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;border:1px solid var(--line);border-radius:5px;background:var(--raised);color:inherit;padding:9px;min-width:0;max-width:100%}
137
+ .library-filters{margin:12px 0 4px}
138
+ .library-filters summary{font-size:12px;color:var(--muted);cursor:pointer;width:fit-content;padding:5px 0}
139
+ .filter-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:14px 0;border-bottom:1px solid var(--line)}
140
+ .filter-fields>label{font-size:11px;color:var(--muted);display:flex;flex-direction:column;gap:6px;min-width:0}
141
+ .filter-fields .archive-choice{flex-direction:row;align-items:center;font-size:12px;gap:8px}
142
+ .archive-choice input{margin:0}
143
+ .filter-fields>button{justify-self:start;align-self:center}
144
+ .library-pagination{display:flex;align-items:center;gap:5px;padding:15px 0}
145
+ .library-pagination>span{flex:1;color:var(--muted);font-size:12px}
146
+ .library-pagination button{font-size:12px;padding:5px 9px}
147
+ .library-columns,#plans .plan{display:grid;grid-template-columns:minmax(0,1fr) 90px 125px 105px;align-items:center;gap:18px}
148
+ .library-columns{font-size:11px;color:var(--muted);padding:10px 12px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
149
+ #plans .plan{text-align:left;margin:0;border-radius:0;border-bottom:1px solid var(--line);padding:13px 12px;background:transparent}
150
+ #plans .plan:hover{background:var(--hover)}
151
+ #plans .plan:focus-visible{position:relative;z-index:1;outline-offset:-3px}
152
+ #plans .plan-name{font-size:13px;font-weight:550;line-height:1.5}
153
+ #plans .plan-location{font-size:10px;margin-top:3px}
154
+ #plans .plan-meta,#plans .plan-type,#plans .plan-updated{font-size:11px;line-height:1.5;color:var(--muted);margin:0;overflow-wrap:anywhere}
155
+ #plans .plan-type{text-transform:capitalize}
156
+ .library-no-results{padding:45px 15px;line-height:1.8;color:var(--muted);text-align:center}
157
+ #library-scan-note{font-size:12px;line-height:1.6}#library-scan-note:empty{display:none}
158
+ #back-library{font-size:12px;padding:6px 8px;color:var(--muted)}
159
+ @media(max-width:1120px){.sidebar{position:sticky;top:0;height:100vh;align-self:start}.library-home{padding:30px 26px}.library-columns,#plans .plan{grid-template-columns:minmax(0,1fr) 75px 110px;gap:12px}.library-columns>span:last-child,.plan-updated{display:none}}
160
+ @media(max-width:740px){
161
+ .workspace.library-start{display:block}
162
+ .sidebar{position:static;height:auto;max-height:65vh;padding:16px;overflow:auto}
163
+ .sidebar.open{display:flex}
164
+ .library-local{overflow:visible}
165
+ .sidebar-footer{display:none}
166
+ .library-start .document-toolbar{display:flex;min-height:56px;padding:12px 16px;border-bottom:1px solid var(--line)}
167
+ .library-start .document-name{flex:1;font-size:12px}
168
+ .library-start .document-actions,.library-start #doc-status,.library-start #back-library,.library-start .document-pin{display:none}
169
+ .document-toolbar #toggle-plans{font-size:11px}
170
+ .document-toolbar .document-name{flex-basis:100%;order:2}
171
+ .library-start .document-name{flex-basis:auto;order:0}
172
+ #back-library{padding:4px;font-size:11px}
173
+ .library-home{padding:25px 18px 16px}
174
+ .library-heading{margin-bottom:20px;gap:10px}.library-heading h1{font-size:29px}.library-heading p{font-size:11px}
175
+ .library-heading>button{padding:5px;font-size:11px}
176
+ .library-controls{flex-wrap:wrap;gap:8px}.library-controls .search{flex-basis:100%}.library-controls select{font-size:11px;padding:7px}
177
+ .filter-fields{grid-template-columns:1fr;gap:12px}
178
+ .library-columns{display:none}
179
+ #plans{border-top:1px solid var(--line)}
180
+ #plans .plan{grid-template-columns:minmax(0,1fr) auto;gap:5px 10px;padding:13px 6px}
181
+ #plans .plan-label{grid-column:1 / -1}
182
+ #plans .plan-type,#plans .plan-meta{font-size:10px}
183
+ .library-pagination button{font-size:11px;padding:5px 6px}.library-pagination>span{font-size:11px}
184
+ }
185
+
186
+ /* Native controls and selection follow the same palette as the document. */
187
+ input,textarea,select{color:var(--text);background-color:var(--input)}
188
+ input::placeholder,textarea::placeholder{color:var(--subtle);opacity:1}
189
+ ::selection{background:var(--selected);color:var(--text)}
190
+ input[type=checkbox]{accent-color:var(--green)}
191
+ .theme-control{display:flex;align-items:center;gap:7px;flex-shrink:0;color:var(--muted)}
192
+ .theme-control select{font:12px Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;padding:6px 8px;border:1px solid var(--line);border-radius:5px;background:var(--panel);color:var(--text);max-width:110px}
193
+ .theme-control>span{font-size:16px}
194
+ .app-header #disconnect{margin-left:0}
195
+ @media(max-width:740px){.app-header{gap:10px}.checkout{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;padding-left:10px}.theme-control{margin-left:auto;gap:0}.theme-control>span{display:none}.theme-control select{font-size:11px;max-width:80px;padding:5px 3px}.app-header #disconnect{padding:4px;font-size:10px}}
196
+
197
+ .plan-location{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}
198
+
199
+ .record-kinds{border-top:1px solid var(--line);padding-top:12px;margin-top:12px}
200
+ .records-home{max-width:1300px;margin:auto}
201
+ .record-controls{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin-bottom:18px}
202
+ .record-controls>.search{flex:1;min-width:180px}
203
+ .record-controls label,.record-action label{display:grid;gap:7px;color:var(--muted);font-size:12px}
204
+ .record-controls select{max-width:230px;padding:9px 10px;font:inherit;border:1px solid var(--line);border-radius:5px}
205
+ .record-row{display:flex;width:100%;align-items:center;justify-content:space-between;gap:25px;text-align:left;border-radius:0;border-bottom:1px solid var(--line);padding:18px 9px}
206
+ .record-row-label{min-width:0;display:grid;gap:8px}.record-row-label strong{font-size:15px;font-weight:550;line-height:1.5}.record-row-label small{color:var(--muted);overflow-wrap:anywhere}
207
+ .record-row-meta{display:flex;flex-shrink:0;align-items:center;gap:12px;font-size:11px;color:var(--muted)}.record-id{font-family:ui-monospace,monospace}
208
+ .severity.problem{color:var(--error-text)}.severity.warn{color:var(--warning-text)}
209
+ .record-back{display:flex;justify-content:space-between;margin-bottom:28px}.record-heading h1{font-size:32px;line-height:1.35;font-weight:580;max-width:900px;overflow-wrap:anywhere}.record-eyebrow{color:var(--muted);font-size:12px}.record-heading>p{overflow-wrap:anywhere}
210
+ .records-home h2{font-size:17px;font-weight:580;margin-top:28px}.record-connections{display:flex;flex-wrap:wrap;gap:8px}.record-connections button{border:1px solid var(--line);max-width:100%;white-space:normal;text-align:left}.record-connections span{margin-left:8px;font-size:10px}
211
+ .record-evidence{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:10px}.record-evidence section{min-width:0}.record-evidence pre,.record-structured pre{font:12px/1.7 ui-monospace,monospace;background:var(--code);padding:18px;white-space:pre-wrap;overflow-wrap:anywhere;border-radius:6px}
212
+ .record-body.markdown{padding:26px 0;max-width:100%;font-size:14px}.record-history{padding-left:22px;line-height:1.8}.record-history li{padding:8px 0}.record-history p{margin:4px 0}.record-history span{font-size:12px}
213
+ .record-action{border-top:1px solid var(--line);margin-top:30px;padding-top:12px;padding-bottom:30px}.record-action-fields{display:flex;gap:18px;margin-bottom:18px;flex-wrap:wrap}.record-action-fields label:last-child{flex:1}.record-action input,.record-action select,.record-action textarea{font:inherit;font-size:14px;line-height:1.6;border:1px solid var(--line);border-radius:5px;padding:10px;width:100%;box-sizing:border-box}.record-action textarea{resize:vertical}.record-action form>p{font-size:12px;line-height:1.8}.record-review-actions{display:flex;gap:12px;margin-top:18px}.record-action .diff{max-height:500px;overflow:auto}.record-structured summary{color:var(--muted);cursor:pointer}
214
+ @media(max-width:740px){.record-controls>.search{flex-basis:100%}.record-controls label{flex:1;min-width:120px}.record-controls select{max-width:100%;width:100%}.record-row{flex-direction:column;align-items:start;gap:10px}.record-row-meta{flex-wrap:wrap}.record-heading h1{font-size:25px}.record-evidence{grid-template-columns:1fr;gap:0}.record-action-fields{display:grid;grid-template-columns:1fr;width:100%}.record-connections button{font-size:11px}.record-body.markdown{padding:20px 0}}
215
+
216
+ .decision-outcome{background:var(--panel);border-left:3px solid var(--green);padding:16px 22px;margin-top:28px;border-radius:3px}.decision-outcome h2{margin:0 0 15px;font-size:12px;color:var(--muted);font-weight:500}.decision-outcome strong{font-size:17px}.decision-outcome p{line-height:1.7}.decision-history summary{cursor:pointer;color:var(--muted);padding:12px 0}
217
+
218
+ .native-options{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px}.native-options section{border:1px solid var(--line);padding:18px;border-radius:5px}.native-options p,.native-options li{line-height:1.7}.native-evidence pre{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--code);padding:16px}
219
+ .record-action textarea,.lifecycle-dialog textarea{min-height:96px;line-height:1.6}
220
+
221
+ .settings-dialog,.lifecycle-dialog{width:min(820px,calc(100vw - 32px));max-height:85vh;background:var(--main);color:var(--text);border:1px solid var(--line);border-radius:9px;padding:26px;box-sizing:border-box;overflow:auto}.settings-section{border-bottom:1px solid var(--line);padding:12px 0 24px;margin-bottom:15px}.settings-section:last-child{border:0;margin:0}.settings-section h3{font-size:17px}.settings-section p{line-height:1.7;font-size:12px}.settings-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin:18px 0}.settings-fields label,.lifecycle-dialog label{display:grid;gap:8px;font-size:12px;color:var(--muted)}.settings-fields select,.lifecycle-dialog select,.lifecycle-dialog textarea{font:inherit;color:var(--text);background:var(--input);padding:10px;border:1px solid var(--line);border-radius:5px}.settings-fields .settings-check{display:flex;align-items:center;gap:10px}.settings-paths{display:grid;grid-template-columns:140px 1fr;gap:12px;font-size:12px;line-height:1.8}.settings-paths dt{color:var(--muted)}.settings-paths dd{margin:0;overflow-wrap:anywhere}.settings-paths code{display:inline-block;margin-right:6px}.settings-rules summary{cursor:pointer;padding:14px 0;border-top:1px solid var(--line);font-size:12px}.settings-table{overflow:auto}.settings-table table{width:100%;border-collapse:collapse;font-size:12px;text-align:left}.settings-table th,.settings-table td{padding:10px;border-bottom:1px solid var(--line);font-weight:400}.settings-table th{color:var(--muted)}#settings-feedback{padding-left:15px;font-size:12px}.lifecycle-dialog form{display:grid;gap:18px;margin:22px 0}.lifecycle-dialog form>button{justify-self:start}.lifecycle-report{white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.8 ui-monospace,monospace;background:var(--code);padding:18px}.lifecycle-dialog #lifecycle-review>button{margin:5px 10px 5px 0}.library-start #lifecycle-open{display:none}.lifecycle-dialog .template-header p{overflow-wrap:anywhere}@media(max-width:740px){.settings-dialog,.lifecycle-dialog{padding:18px;max-height:90vh}.settings-fields{grid-template-columns:1fr}.settings-paths{grid-template-columns:1fr;gap:6px}.settings-paths dd{margin-bottom:10px}#lifecycle-open{order:3}}
222
+
223
+ /* Native startup uses the existing application palette and controls. */
224
+ .desktop-welcome{max-width:660px;margin:12vh auto;padding:36px}.welcome-mark{display:block;font-size:72px;font-weight:700;color:var(--accent);line-height:1}.desktop-welcome h1{font-size:30px;letter-spacing:-.7px;margin:24px 0 12px}.desktop-welcome p{line-height:1.6}.desktop-welcome .primary{margin:16px 0}.recent-checkout{display:block;width:100%;text-align:left;overflow-wrap:anywhere;margin-top:8px;font-size:12px}#desktop-recents{margin-top:28px;border-top:1px solid var(--border);padding-top:12px}
225
+
226
+ .desktop-location{padding:6px 26px;border-bottom:1px solid var(--border);font-size:11px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
227
+
228
+ .document-view-tabs{display:flex;align-items:center;gap:17px}
229
+ /* Creation, quick navigation and recovery share the existing surfaces and type. */
230
+ .app-header{flex-wrap:wrap}.app-header kbd{font-size:10px;color:var(--muted);margin-left:5px}
231
+ .create-dialog,.recovery-dialog{width:min(820px,calc(100vw - 32px));max-height:calc(100vh - 40px);overflow:auto;background:var(--raised);color:var(--text);border:1px solid var(--line);border-radius:12px;padding:24px}
232
+ .quick-dialog{width:min(720px,calc(100vw - 32px));max-height:calc(100vh - 60px);overflow:auto;background:var(--raised);color:var(--text);border:1px solid var(--line);border-radius:12px;padding:20px}
233
+ .filter-dialog{width:min(460px,calc(100vw - 32px));background:var(--raised);color:var(--text);border:1px solid var(--line);border-radius:12px;padding:24px}
234
+ .create-dialog::backdrop,.quick-dialog::backdrop,.recovery-dialog::backdrop,.filter-dialog::backdrop{background:var(--backdrop)}
235
+ .create-fields{display:grid;grid-template-columns:1fr 1fr;gap:16px}.create-fields label,.filter-dialog label{display:grid;gap:7px;font-weight:500}.field-wide{grid-column:1 / -1}
236
+ .create-fields input,.create-fields select,.create-fields textarea,.filter-dialog input{width:100%;min-width:0;box-sizing:border-box;padding:10px 12px;background:var(--input);color:var(--text);border:1px solid var(--line);border-radius:6px;font:inherit}
237
+ .create-fields textarea{min-height:120px;resize:vertical}.create-dialog pre{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--code);padding:14px;border-radius:6px}
238
+ .record-heading-actions,.create-alternative-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
239
+ .create-fields fieldset{border:0;padding:0;margin:8px 0;min-width:0}.create-fields legend{font-weight:600}.create-alternative{border-top:1px solid var(--line);padding:16px 0;display:grid;gap:12px}.create-alternative h3{margin:0;font-size:1rem}.create-alternative textarea{min-height:70px}.create-consequences{display:grid;gap:12px;margin-top:12px}.create-dialog #create-setup{border-top:1px solid var(--line);padding-top:16px}
240
+ .create-dialog .markdown{max-height:45vh;overflow:auto;padding:16px 0}.create-dialog .dialog-actions{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}
241
+ #quick-query{width:100%;box-sizing:border-box;font-size:16px;margin-bottom:12px}#quick-results{max-height:48vh;overflow:auto;margin:12px -8px}
242
+ .quick-result{width:100%;display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:12px;gap:5px;border-radius:6px;white-space:normal}.quick-result small{color:var(--muted);overflow-wrap:anywhere}.quick-result[aria-selected=true]{background:var(--selected);outline:2px solid var(--focus);outline-offset:-2px}
243
+ .recovery-controls{display:flex;gap:12px}.recovery-controls input{flex:1;min-width:0}.recovery-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 0;border-top:1px solid var(--line)}.recovery-item strong{overflow-wrap:anywhere}.recovery-item p{margin:6px 0;color:var(--muted)}.recovery-item small{color:var(--muted)}.recovery-item button{flex-shrink:0}
244
+ .content-search-choice{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--muted);white-space:nowrap}.saved-views{display:flex;align-items:center;gap:10px;margin:0 0 14px;color:var(--muted);font-size:12px}.saved-views select{max-width:300px;min-width:0}.search-excerpt{display:block;font-weight:400;color:var(--muted);font-size:12px;white-space:normal;margin-top:4px}
245
+ .library-controls{flex-wrap:wrap}.library-controls .search{min-width:180px}.filter-dialog input{margin-bottom:12px}
246
+ @media(max-width:720px){.create-dialog,.quick-dialog,.recovery-dialog,.filter-dialog{padding:16px;box-sizing:border-box}.create-fields{grid-template-columns:1fr}.field-wide{grid-column:auto}.app-header .checkout{max-width:40vw}.app-header kbd{display:none}.recovery-item{align-items:flex-start;flex-direction:column;gap:10px}.saved-views{flex-wrap:wrap}.saved-views select{max-width:65vw}}
247
+
248
+ /* Saved checkout changes share the library and appearance tokens. */
249
+ .changes-controls{display:flex;align-items:center;gap:20px;margin:24px 0 12px}.changes-controls .search{flex:1;margin:0}.changes-controls .archive-choice{flex:none}
250
+ .changes-layout{display:grid;grid-template-columns:minmax(240px, .8fr) minmax(0,1.5fr);gap:28px;align-items:start}
251
+ .changes-files{min-width:0}.changes-selection{display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:12px;border-bottom:1px solid var(--line);padding:6px 0 12px}
252
+ #changes-list{max-height:65vh;overflow:auto}.changes-row{display:flex;align-items:start;gap:10px;border-bottom:1px solid var(--line);padding:13px 0}.changes-row>input{margin:6px 0 0;accent-color:var(--green);flex:none}
253
+ .changes-file{width:100%;min-width:0;text-align:left;border:0;padding:2px 6px;white-space:normal}.changes-file[aria-pressed=true]{background:var(--selected)}.changes-file strong{display:block;font-size:13px;line-height:1.6}.changes-file span,.changes-file small{display:block;overflow-wrap:anywhere}.changes-path{font:11px/1.7 ui-monospace,monospace;color:var(--muted)}.changes-meta{font-size:11px;margin:8px 0 4px;color:var(--green)}.changes-blocked{font-size:11px;line-height:1.65;color:var(--muted)}
254
+ .changes-review{min-width:0;position:sticky;top:120px}.changes-review h2{font-size:17px;font-weight:600;overflow-wrap:anywhere;margin:8px 0 12px}.changes-review p{font-size:12px;line-height:1.7;color:var(--muted)}.changes-review .diff{max-height:65vh}.changes-review-heading{display:flex;align-items:start;justify-content:space-between;gap:14px}.changes-review-heading>div{min-width:0}.changes-review-heading>button{flex:none}.changes-review .inline-note{margin:12px 0}
255
+ .changes-footer{border-top:1px solid var(--line);margin-top:26px;padding-top:12px;font-size:12px;line-height:1.7}.changes-home>.inline-note{margin:16px 0;display:flex;align-items:center;gap:15px;flex-wrap:wrap}.changes-home>.inline-note>span{flex:1;min-width:180px}#changes-feedback{font-size:12px;color:var(--muted);line-height:1.7}
256
+ @media(max-width:1000px){.changes-layout{grid-template-columns:1fr}.changes-review{position:static}.changes-review .diff{max-height:50vh}#changes-list{max-height:45vh}}
257
+ @media(max-width:740px){.changes-controls{flex-wrap:wrap;gap:12px}.changes-controls>.search{flex-basis:100%}.changes-review-heading{flex-wrap:wrap}.changes-layout{gap:20px}.changes-home .library-heading{align-items:start}.changes-home .library-heading button{flex:none}.changes-home .library-pagination{flex-wrap:wrap}}
258
+
259
+ .git-commit-dialog { width:min(1050px,calc(100vw - 32px)); max-height:calc(100vh - 48px); }
260
+ #git-commit-form label { display:grid; gap:8px; margin:16px 0; }
261
+ #git-commit-message { width:100%; resize:vertical; }
262
+ #git-commit-files { display:flex; flex-wrap:wrap; gap:8px; margin:16px 0; }
263
+ #git-commit-files [aria-pressed=true] { background:var(--selected); color:var(--green); }
264
+ #git-commit-diff { max-height:45vh; overflow:auto; border:1px solid var(--line); border-radius:8px; }
265
+ .git-source-pair { display:grid; grid-template-columns:1fr 1fr; gap:16px; padding:16px; }
266
+ .git-source-pair pre,#git-commit-paths,#git-commit-reviewed-message { white-space:pre-wrap; overflow-wrap:anywhere; }
267
+ @media(max-width:740px) { .git-source-pair { grid-template-columns:1fr; } .changes-selection { flex-wrap:wrap; } }
268
+
269
+ .git-commit-dialog textarea { min-height:88px; font-size:13px; line-height:1.5; }
270
+ #git-commit-settlement label { display:grid; gap:8px; margin:16px 0; }
271
+
272
+ .quick-controls{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:14px 0}.quick-controls label{font-size:12px;color:var(--muted)}.quick-controls select,.settings-fields input{font:inherit;color:var(--text);background:var(--input);border:1px solid var(--line);border-radius:5px;padding:8px}.quick-controls select{margin-left:8px}.settings-fields input{min-width:0}.quick-controls [hidden]{display:none}
273
+
274
+ .plan-stage{display:block;font-size:10px;line-height:1.5;color:var(--muted);margin-top:4px}.library-stage-heading{padding:16px 12px 10px;background:var(--panel);border-bottom:1px solid var(--line)}.library-stage-heading h2{font-size:13px;margin:0;font-weight:650}.library-stage-heading p{font-size:11px;line-height:1.6;color:var(--muted);margin:4px 0 0;overflow-wrap:anywhere}.document-stage-fields{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:14px 30px;border-bottom:1px solid var(--line);margin-bottom:12px}.document-stage-fields>label{font-size:12px;font-weight:600}.document-stage-fields>select{max-width:280px;font:12px Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;border:1px solid var(--line);border-radius:5px;background:var(--raised);color:inherit;padding:9px}.document-stage-fields>p{flex-basis:100%;margin:0;font-size:11px;line-height:1.6}
275
+ @media(max-width:740px){.document-stage-fields{padding:12px 22px}.document-stage-fields>select{max-width:100%}}
276
+
277
+ /* Saved goal comparisons and read-only filing evidence share checkout themes. */
278
+ .yardstick-panel{max-width:980px;margin:0 auto 20px;border:1px solid var(--line);border-radius:7px;background:var(--main)}
279
+ .yardstick-summary{padding:14px 18px;font-size:13px;line-height:1.7}.yardstick-summary>summary{cursor:pointer;font-weight:550}.yardstick-summary h3{font-size:12px;color:var(--muted);margin:18px 0 4px}.yardstick-goal,.yardstick-delivers,.yardstick-reason{white-space:pre-wrap;overflow-wrap:anywhere}.yardstick-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.yardstick-availability{color:var(--muted);font-size:12px}
280
+ .yardstick-dialog{width:min(820px,calc(100vw - 32px));max-height:85vh;overflow:auto;box-sizing:border-box;padding:26px;background:var(--main);color:var(--text);border:1px solid var(--line);border-radius:9px}.yardstick-form,.yardstick-acknowledgement{display:grid;gap:18px;margin:22px 0}.yardstick-form label,.yardstick-acknowledgement label{display:grid;gap:8px;font-size:12px;color:var(--muted)}.yardstick-dialog input,.yardstick-dialog select,.yardstick-dialog textarea{font:inherit;color:var(--text);background:var(--input);padding:10px;border:1px solid var(--line);border-radius:5px;box-sizing:border-box;width:100%}.yardstick-dialog textarea{min-height:96px;resize:vertical;line-height:1.6}.yardstick-dialog button{margin-right:8px}.yardstick-feedback{font-size:12px;line-height:1.7;overflow-wrap:anywhere}
281
+ .filing-home h1{font-size:30px;font-weight:580}.filing-home>p{font-size:13px;line-height:1.7}.filing-controls{display:flex;align-items:end;flex-wrap:wrap;gap:16px;margin:24px 0}.filing-controls label{display:grid;gap:8px;font-size:12px;color:var(--muted)}.filing-controls label:first-child{flex:1;min-width:180px}.filing-controls input,.filing-controls select{font:inherit;color:var(--text);background:var(--input);border:1px solid var(--line);border-radius:5px;padding:10px;box-sizing:border-box;width:100%}.filing-totals{display:flex;gap:12px 22px;flex-wrap:wrap;font-size:12px;line-height:1.8}.filing-totals details{flex-basis:100%;overflow-wrap:anywhere}.filing-totals summary{cursor:pointer}.filing-layout{display:grid;grid-template-columns:minmax(220px,1fr) minmax(250px,1.2fr);gap:26px;margin:18px 0}.filing-list,.filing-detail{min-width:0}.filing-plan{display:grid;gap:8px;text-align:left;width:100%;padding:16px;border-bottom:1px solid var(--line);border-radius:0;white-space:normal;overflow-wrap:anywhere;font-size:12px;line-height:1.6}.filing-plan strong{font-size:14px;font-weight:550}.filing-plan[aria-pressed="true"]{background:var(--code);box-shadow:inset 3px 0 var(--text)}.filing-detail{border-left:1px solid var(--line);padding-left:26px;overflow-wrap:anywhere}.filing-detail h2{font-size:19px;font-weight:550}.filing-detail p{font-size:12px;line-height:1.8}.filing-home-row{border-top:1px solid var(--line);padding:18px 0}.filing-home-row h3{font:12px/1.7 ui-monospace,monospace;overflow-wrap:anywhere}.filing-pagination{display:flex;gap:12px}.source-location{display:block;background:var(--code);color:var(--text);outline:2px solid var(--line);scroll-margin-top:180px}
282
+ @media(max-width:740px){.yardstick-dialog{padding:18px;max-height:90vh}.filing-layout{grid-template-columns:1fr;gap:16px}.filing-detail{border-left:0;border-top:1px solid var(--line);padding:20px 0 0}.filing-controls label{width:100%}.yardstick-summary{padding:12px}.yardstick-actions button{white-space:normal}}
283
+ .yardstick-reviewed-comparison{margin:20px 0;padding-bottom:18px;border-bottom:1px solid var(--line);font-size:13px;line-height:1.7}.yardstick-reviewed-comparison h3{font-size:12px;color:var(--muted);margin:16px 0 4px}.yardstick-reviewed-comparison p{white-space:pre-wrap;overflow-wrap:anywhere}