create-pmos 0.512.0 → 0.513.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 (103) hide show
  1. package/package.json +14 -16
  2. package/payload/KIT-VERSION +1 -1
  3. package/payload/planning/evals/eval-calibration.md +1 -1
  4. package/payload/planning/okrs/health-budgets.md +1 -1
  5. package/payload/state/discoveries.md +1 -1
  6. package/workspace/briefing-premium-adddoc-test.js +3 -3
  7. package/workspace/briefing-premium-board-test.js +2 -2
  8. package/workspace/briefing-premium-initiative-test.js +3 -3
  9. package/workspace/briefing-premium-insights-test.js +2 -2
  10. package/workspace/briefing-premium-sources-test.js +4 -5
  11. package/workspace/briefing-premium-test.js +2 -2
  12. package/workspace/changelog.json +13 -0
  13. package/workspace/guide/home.md +1 -1
  14. package/workspace/intel-report-ui-test.js +1 -1
  15. package/workspace/intelligence-gaps-ui-test.js +1 -1
  16. package/workspace/lib/premium-console-type.js +15 -12
  17. package/workspace/metric-drafts-ui-test.js +2 -2
  18. package/workspace/package-lock.json +2 -2
  19. package/workspace/package.json +1 -1
  20. package/workspace/premium-menu-rows-test.js +1 -1
  21. package/workspace/premium-vw-doc-test.js +1 -1
  22. package/workspace/public/pm/bd-pin-card.css +4 -4
  23. package/workspace/public/pm/bd-publish.css +11 -11
  24. package/workspace/public/pm/bd-shared.css +17 -17
  25. package/workspace/public/pm/c3-capture.css +9 -9
  26. package/workspace/public/pm/c3-initiatives.css +23 -23
  27. package/workspace/public/pm/c3-listen.css +1 -1
  28. package/workspace/public/pm/components.css +572 -572
  29. package/workspace/public/pm/console3.css +374 -373
  30. package/workspace/public/pm/cozy-adler.css +4 -4
  31. package/workspace/public/pm/cozy-aud.css +1 -1
  32. package/workspace/public/pm/cozy-board.css +328 -328
  33. package/workspace/public/pm/cozy-ev.css +78 -78
  34. package/workspace/public/pm/cozy-home-rows.css +32 -32
  35. package/workspace/public/pm/cozy-home.css +240 -240
  36. package/workspace/public/pm/cozy-insights.css +200 -200
  37. package/workspace/public/pm/cozy-live-pill.css +5 -5
  38. package/workspace/public/pm/cozy-mtg-present.css +28 -28
  39. package/workspace/public/pm/cozy-onboard.css +15 -15
  40. package/workspace/public/pm/cozy-panel.css +39 -39
  41. package/workspace/public/pm/cozy-pick.css +5 -5
  42. package/workspace/public/pm/cozy-rec-now.css +23 -23
  43. package/workspace/public/pm/cozy-rec-present.css +11 -11
  44. package/workspace/public/pm/cozy-rec-tab.css +13 -13
  45. package/workspace/public/pm/cozy-steps.css +14 -14
  46. package/workspace/public/pm/cozy-today.css +95 -95
  47. package/workspace/public/pm/cozy-viewer.css +27 -27
  48. package/workspace/public/pm/cozy-vw-mtg.css +113 -113
  49. package/workspace/public/pm/cozy-vw-rp.css +79 -79
  50. package/workspace/public/pm/cozy-vw-shell.css +43 -43
  51. package/workspace/public/pm/cozy-vw.css +129 -129
  52. package/workspace/public/pm/cozy-xv.css +15 -15
  53. package/workspace/public/pm/cozy.css +53 -21
  54. package/workspace/public/pm/dash-view.css +27 -27
  55. package/workspace/public/pm/hi-pop.css +26 -26
  56. package/workspace/public/pm/home-impact.css +8 -8
  57. package/workspace/public/pm/home-ini.css +36 -36
  58. package/workspace/public/pm/home-line.css +7 -7
  59. package/workspace/public/pm/impact.css +9 -9
  60. package/workspace/public/pm/ini-view.css +243 -243
  61. package/workspace/public/pm/load-shapes.css +1 -1
  62. package/workspace/public/pm/loose-props.css +14 -14
  63. package/workspace/public/pm/metric-drafts.css +20 -20
  64. package/workspace/public/pm/ms-suggest.css +9 -9
  65. package/workspace/public/pm/ov-view.css +14 -14
  66. package/workspace/public/pm/premium-insights.js +3 -3
  67. package/workspace/public/pm/premium-report-frame.css +1 -1
  68. package/workspace/public/pm/premium-report-intel.css +17 -17
  69. package/workspace/public/pm/premium-report-print.css +1 -1
  70. package/workspace/public/pm/premium-vw-backlog.css +13 -13
  71. package/workspace/public/pm/premium-vw-cal.css +32 -32
  72. package/workspace/public/pm/premium-vw-copy.css +7 -7
  73. package/workspace/public/pm/premium-vw-doc.css +69 -69
  74. package/workspace/public/pm/premium-vw-item.css +12 -12
  75. package/workspace/public/pm/premium-vw-jira.css +39 -39
  76. package/workspace/public/pm/premium-vw-meet.css +28 -28
  77. package/workspace/public/pm/premium-vw-notepad.css +13 -13
  78. package/workspace/public/pm/premium-vw-notes.css +11 -11
  79. package/workspace/public/pm/premium-vw-rec.css +27 -27
  80. package/workspace/public/pm/premium-vw-report.css +21 -21
  81. package/workspace/public/pm/premium-vw-slides.css +28 -28
  82. package/workspace/public/pm/premium.css +618 -618
  83. package/workspace/public/pm/prog-order.css +6 -6
  84. package/workspace/public/pm/prog-page.css +17 -17
  85. package/workspace/public/pm/program-charter.css +33 -33
  86. package/workspace/public/pm/ready-lib.css +6 -6
  87. package/workspace/public/pm/sort-order.css +1 -1
  88. package/workspace/public/pm/split-merge.css +18 -18
  89. package/workspace/public/pm/task-card.css +24 -24
  90. package/workspace/public/pm/tk-tasks.css +42 -42
  91. package/workspace/public/pm/tk-view.css +6 -6
  92. package/workspace/public/pm/wf-page.css +31 -31
  93. package/workspace/public/premium-aud.html +1 -1
  94. package/workspace/public/premium-board.html +1 -1
  95. package/workspace/public/premium-intelligence.html +1 -1
  96. package/workspace/public/premium-rec.html +1 -1
  97. package/workspace/public/premium-viewer.html +1 -1
  98. package/workspace/public/premium-workflows.html +1 -1
  99. package/workspace/public/premium.html +1 -1
  100. package/workspace/public/vendor/plus-jakarta-sans-var.woff2 +0 -0
  101. package/workspace/server.js +1 -0
  102. package/workspace/third-party/README.md +2 -1
  103. package/workspace/third-party/plus-jakarta-sans-OFL.LICENSE +93 -0
@@ -37,15 +37,15 @@ body.cz-home { min-height: 100vh; overflow: hidden; }
37
37
 
38
38
  /* ── the list head, New, the meeting line ── */
39
39
  .hm-hd { display: flex; align-items: center; gap: 8px; padding: 4px 4px 10px 8px; }
40
- .hm-hd h1 { margin: 0; flex: 1; font-size: var(--fs-3); font-weight: 600; color: var(--cz-ink2); }
41
- .hm-new { display: inline-flex; align-items: center; gap: 6px; height: 32px; padding: 0 12px; border-radius: 999px; border: 0; background: var(--cz-card); box-shadow: var(--cz-vlift); color: var(--cz-ink); font-size: var(--fs-3); font-weight: 700; cursor: pointer; }
40
+ .hm-hd h1 { margin: 0; flex: 1; font-size: var(--fs-row); font-weight: var(--fw-strong); color: var(--cz-ink2); line-height: var(--lh-row); }
41
+ .hm-new { display: inline-flex; align-items: center; gap: 6px; height: 32px; padding: 0 12px; border-radius: 999px; border: 0; background: var(--cz-card); box-shadow: var(--cz-vlift); color: var(--cz-ink); font-size: var(--fs-row); font-weight: var(--fw-strong); cursor: pointer; line-height: var(--lh-row); }
42
42
  .hm-meet { display: flex; gap: 6px; margin: 0 2px 6px; }
43
- .hm-mt, .hm-mp { box-sizing: border-box; height: 44px; border-radius: 14px; border: 0; background: var(--cz-card); color: var(--cz-ink); cursor: pointer; font-size: var(--fs-3); }
43
+ .hm-mt, .hm-mp { box-sizing: border-box; height: 44px; border-radius: 14px; border: 0; background: var(--cz-card); color: var(--cz-ink); cursor: pointer; font-size: var(--fs-body); line-height: var(--lh-body); }
44
44
  .hm-mt { flex: 1; min-width: 0; display: flex; align-items: center; gap: 10px; padding: 0 12px; text-align: left; }
45
45
  .hm-mt svg { color: var(--cz-blueink); flex: none; }
46
46
  .hm-mt span { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
47
47
  .hm-mt em { font-style: normal; color: var(--cz-blueink); }
48
- .hm-mp { flex: 0 0 44px; font-weight: 700; color: var(--cz-ink2); display: grid; place-items: center; }
48
+ .hm-mp { flex: 0 0 44px; font-weight: var(--fw-strong); color: var(--cz-ink2); display: grid; place-items: center; }
49
49
  .hm-mp.rec i { width: 10px; height: 10px; border-radius: 50%; background: var(--cz-blue); }
50
50
  .hm-mp.rec.on i { background: var(--cz-dot-red); box-shadow: 0 0 0 4px var(--cz-redbg); }
51
51
 
@@ -54,9 +54,9 @@ body.cz-home { min-height: 100vh; overflow: hidden; }
54
54
  .hm-ghr { display: flex; align-items: center; gap: 4px; }
55
55
  .hm-gadd { flex: none; width: 32px; height: 32px; border-radius: 10px; border: 0; background: none; color: var(--cz-ink3); display: grid; place-items: center; cursor: pointer; } /* Add a stakeholder, on the Stakeholders head */
56
56
  .hm-gadd:hover { background: var(--cz-well2); color: var(--cz-ink); }
57
- .hm-gh { display: flex; align-items: center; gap: 6px; height: 36px; width: 100%; flex: 1; min-width: 0; padding: 0 10px; border: 0; background: none; color: var(--cz-ink2); font-size: var(--fs-2); font-weight: 700; cursor: pointer; text-align: left; }
58
- .hm-gh.add { font-weight: 600; color: var(--cz-ink3); }
59
- .hm-none { margin: 6px 12px; font-size: var(--fs-2); color: var(--cz-ink3); }
57
+ .hm-gh { display: flex; align-items: center; gap: 6px; height: 36px; width: 100%; flex: 1; min-width: 0; padding: 0 10px; border: 0; background: none; color: var(--cz-ink2); font-size: var(--fs-label); font-weight: var(--fw-strong); cursor: pointer; text-align: left; line-height: var(--lh-label); }
58
+ .hm-gh.add { font-weight: var(--fw-strong); color: var(--cz-ink3); }
59
+ .hm-none { margin: 6px 12px; font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
60
60
  .hm-r { position: relative; display: flex; align-items: center; gap: 4px; border-radius: 18px; min-height: 75px; margin: 0 0 7px; } /* a row about 75px tall at an 82px pitch (AgHome) */
61
61
  .hm-r:hover { background: var(--cz-well2); }
62
62
  .hm-r.sel { background: var(--cz-card); box-shadow: var(--cz-lift); }
@@ -67,9 +67,9 @@ body.cz-home { min-height: 100vh; overflow: hidden; }
67
67
  .hm-r.sel .hm-tile { background: var(--cz-bluebg); color: var(--cz-blueink); box-shadow: none; }
68
68
  .hm-tile.sq { border-radius: 10px; width: 34px; height: 34px; background: var(--cz-bluebg); color: var(--cz-blueink); box-shadow: none; }
69
69
  .hm-rt { min-width: 0; display: flex; flex-direction: column; gap: 2px; }
70
- .hm-rt b { font-size: var(--fs-3); font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
71
- .hm-rt em { font-style: normal; font-size: var(--fs-2); color: var(--cz-blueink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
72
- .hm-kc { flex: none; display: inline-flex; align-items: center; gap: 4px; height: 32px; padding: 0 8px; border: 0; background: none; border-radius: 10px; font-size: var(--fs-1); font-weight: 700; color: var(--cz-ink3); cursor: pointer; white-space: nowrap; }
70
+ .hm-rt b { font-size: var(--fs-row); font-weight: var(--fw-strong); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; line-height: var(--lh-row); }
71
+ .hm-rt em { font-style: normal; font-size: var(--fs-meta); color: var(--cz-blueink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; line-height: var(--lh-meta); }
72
+ .hm-kc { flex: none; display: inline-flex; align-items: center; gap: 4px; height: 32px; padding: 0 8px; border: 0; background: none; border-radius: 10px; font-size: var(--fs-badge); font-weight: var(--fw-strong); color: var(--cz-ink3); cursor: pointer; white-space: nowrap; line-height: var(--lh-badge); }
73
73
  .hm-kc.loud { color: var(--cz-blueink); }
74
74
  .hm-kc:hover { background: var(--cz-well); }
75
75
  .hm-x { flex: none; width: 36px; height: 36px; margin-right: 4px; border-radius: 12px; border: 0; background: none; color: var(--cz-ink3); display: grid; place-items: center; cursor: pointer; opacity: 0; }
@@ -79,76 +79,76 @@ body.cz-home { min-height: 100vh; overflow: hidden; }
79
79
  .hm-kids { margin: 0 0 4px 22px; }
80
80
  .hm-r.kid { min-height: 48px; margin: 2px 0; }
81
81
  .hm-r.kid .hm-rm { min-height: 48px; padding: 6px 10px; }
82
- .hm-more { display: block; margin: 2px 0 0 14px; height: 32px; border: 0; background: none; font-size: var(--fs-2); font-weight: 700; color: var(--cz-blueink); cursor: pointer; padding: 0 2px; }
82
+ .hm-more { display: block; margin: 2px 0 0 14px; height: 32px; border: 0; background: none; font-size: var(--fs-label); font-weight: var(--fw-strong); color: var(--cz-blueink); cursor: pointer; padding: 0 2px; line-height: var(--lh-label); }
83
83
 
84
84
  /* ── the initiative and product card ── */
85
85
  .hm-card { background: var(--cz-card); border-radius: 20px; padding: 6px; box-shadow: var(--cz-vlift); margin: 0 0 6px; }
86
86
  .hm-ch { display: flex; align-items: center; gap: 6px; padding: 8px 6px 10px 8px; }
87
87
  .hm-sw { flex: 1; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: 1px; border: 0; background: none; padding: 0 0 0 4px; cursor: pointer; color: var(--cz-ink); text-align: left; }
88
- .hm-sw .k { font-size: var(--fs-1); color: var(--cz-ink3); }
89
- .hm-sw b { font-size: var(--fs-4); font-weight: 800; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%; }
88
+ .hm-sw .k { font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
89
+ .hm-sw b { font-size: var(--fs-row); font-weight: var(--fw-strong); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%; line-height: var(--lh-row); }
90
90
  .hm-plus { width: 36px; height: 36px; border-radius: 50%; border: 1px solid var(--cz-hair); background: var(--cz-card); color: var(--cz-ink2); display: grid; place-items: center; cursor: pointer; flex: none; }
91
91
  .hm-box { background: var(--cz-well); border-radius: 14px; padding: 10px; display: flex; flex-direction: column; gap: 6px; }
92
92
  .hm-box.you { box-shadow: inset 0 0 0 1.5px var(--cz-blue); background: var(--cz-card); }
93
- .hm-br { display: flex; align-items: center; gap: 8px; font-size: var(--fs-2); }
93
+ .hm-br { display: flex; align-items: center; gap: 8px; font-size: var(--fs-meta); line-height: var(--lh-meta); }
94
94
  .hm-br .st { margin-left: auto; color: var(--cz-ink3); }
95
95
  /* whose turn, as a pill (AgInitYou, AgInitAgents, AgInitStalled): yours on the blue tint; agents (or engineers) working, navy on white with a
96
96
  * navy dot; stalled, a blue outline with a ring dot */
97
- .hm-turn { display: inline-flex; align-items: center; gap: 6px; padding: 2px 9px 2px 7px; border-radius: 999px; font-weight: 700; color: var(--cz-blueink); background: var(--cz-bluebg); }
97
+ .hm-turn { display: inline-flex; align-items: center; gap: 6px; padding: 2px 9px 2px 7px; border-radius: 999px; font-weight: var(--fw-strong); color: var(--cz-blueink); background: var(--cz-bluebg); }
98
98
  .hm-turn i { width: 8px; height: 8px; border-radius: 50%; background: var(--cz-blue); flex: none; }
99
99
  .hm-turn.agents, .hm-turn.jira { background: var(--cz-card); color: var(--cz-ink2); } .hm-turn.agents i, .hm-turn.jira i { background: var(--cz-done); }
100
100
  .hm-turn.stalled { background: none; box-shadow: inset 0 0 0 1px var(--cz-blue); } .hm-turn.stalled i { background: none; box-shadow: inset 0 0 0 2px var(--cz-blue); }
101
- .hm-lad { margin: 2px 0 0; display: flex; align-items: center; gap: 6px; font-size: var(--fs-2); color: var(--cz-ink3); flex-wrap: wrap; }
101
+ .hm-lad { margin: 2px 0 0; display: flex; align-items: center; gap: 6px; font-size: var(--fs-meta); color: var(--cz-ink3); flex-wrap: wrap; line-height: var(--lh-meta); }
102
102
  .hm-lad .pv { color: var(--cz-blueink); display: inline-flex; align-items: center; gap: 3px; }
103
- .hm-lad b { font-size: var(--fs-3); font-weight: 700; color: var(--cz-ink); }
103
+ .hm-lad b { font-size: var(--fs-row); font-weight: var(--fw-strong); color: var(--cz-ink); line-height: var(--lh-row); }
104
104
  .hm-bars { display: flex; gap: 4px; margin: 2px 0 6px; }
105
105
  .hm-bars i { flex: 1; height: 5px; border-radius: 3px; background: var(--cz-hair); }
106
106
  .hm-bars i.done { background: var(--cz-done); } .hm-bars i.now { background: var(--cz-blue); }
107
- .hm-ckh { display: flex; align-items: baseline; gap: 8px; font-size: var(--fs-2); width: 100%; border: 0; background: none; padding: 0; color: var(--cz-ink2); cursor: pointer; text-align: left; font-family: var(--cz-sans); }
107
+ .hm-ckh { display: flex; align-items: baseline; gap: 8px; font-size: var(--fs-meta); width: 100%; border: 0; background: none; padding: 0; color: var(--cz-ink2); cursor: pointer; text-align: left; font-family: var(--cz-sans); line-height: var(--lh-meta); }
108
108
  .hm-ckh b .cz-ms { margin: 0 4px 1px 3px; }
109
109
  .hm-cfold { align-items: center; gap: 6px; min-height: 32px; padding: 0 6px; border-radius: 8px; } /* the folded checklist: one line (AgInitSpec) */
110
110
  .hm-cfold:hover { background: var(--cz-well2); }
111
111
  .hm-cfold b { flex: none; white-space: nowrap; }
112
112
  .hm-ckh.hm-cfold span { flex: 1; min-width: 0; margin-left: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
113
113
  .hm-cfold svg { flex: none; color: var(--cz-ink3); }
114
- .hm-ckh b { font-weight: 700; color: var(--cz-ink); } .hm-ckh span { margin-left: auto; color: var(--cz-ink3); }
115
- .hm-it { display: flex; align-items: center; gap: 10px; min-height: 34px; font-size: var(--fs-2); color: var(--cz-ink2); border: 0; background: none; padding: 0; width: 100%; text-align: left; font-family: var(--cz-sans); }
114
+ .hm-ckh b { font-weight: var(--fw-strong); color: var(--cz-ink); } .hm-ckh span { margin-left: auto; color: var(--cz-ink3); }
115
+ .hm-it { display: flex; align-items: center; gap: 10px; min-height: 34px; font-size: var(--fs-meta); color: var(--cz-ink2); border: 0; background: none; padding: 0; width: 100%; text-align: left; font-family: var(--cz-sans); line-height: var(--lh-meta); }
116
116
  .hm-it .l { flex: 1; min-width: 0; }
117
- .hm-it .l small { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; margin-top: 2px; font-size: var(--fs-2); line-height: 1.35; color: var(--cz-ink3); }
117
+ .hm-it .l small { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; margin-top: 2px; font-size: var(--fs-meta); line-height: 1.35; color: var(--cz-ink3); }
118
118
  .hm-it.donerow { cursor: pointer; } .hm-it.donerow .l { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
119
- .hm-mk { width: 18px; height: 18px; border-radius: 50%; flex: none; display: grid; place-items: center; box-sizing: border-box; font-size: var(--fs-1); font-weight: 800; }
119
+ .hm-mk { width: 18px; height: 18px; border-radius: 50%; flex: none; display: grid; place-items: center; box-sizing: border-box; font-size: var(--fs-badge); font-weight: var(--fw-strong); line-height: var(--lh-badge); }
120
120
  .hm-mk.done { background: var(--cz-done); color: var(--cz-onsolid); }
121
121
  .hm-mk.you { border: 2px solid var(--cz-blue); background: var(--cz-bluebg); }
122
122
  .hm-mk.agent { border: 2px solid var(--cz-blue); }
123
123
  .hm-mk.wait { border: 1.5px solid var(--cz-well2); box-shadow: inset 0 0 0 1px var(--cz-hair); } /* a step that is next: an empty grey circle */
124
- .hm-mk-av.hm-av { width: 20px; height: 20px; font-size: var(--fs-1); }
124
+ .hm-mk-av.hm-av { width: 20px; height: 20px; font-size: var(--fs-meta); line-height: var(--lh-meta); }
125
125
  .hm-it.wait { color: var(--cz-ink2); }
126
126
  .hm-mk.risk { border: 1.5px solid var(--cz-blue); color: var(--cz-blueink); }
127
127
  .hm-mk.jira { background: var(--cz-well2); color: var(--cz-ink2); }
128
- .hm-it .tag { font-size: var(--fs-1); font-weight: 700; border-radius: 999px; padding: 1px 8px; }
128
+ .hm-it .tag { font-size: var(--fs-badge); font-weight: var(--fw-strong); border-radius: 999px; padding: 1px 8px; line-height: var(--lh-badge); }
129
129
  .hm-it .tag.you { background: var(--cz-blue); color: var(--cz-onsolid); }
130
130
  .hm-it .tag.risk { box-shadow: inset 0 0 0 1px var(--cz-blue); color: var(--cz-blueink); }
131
131
  .hm-it .tag.jira { background: var(--cz-well2); color: var(--cz-ink3); }
132
- .hm-it .tag.agent, .hm-it .tag.wait { padding: 0; background: none; color: var(--cz-ink3); font-size: var(--fs-1); font-weight: 400; } /* Working, Next: a plain word */
133
- .hm-it .tag.agent.stuck { padding: 1px 8px; box-shadow: inset 0 0 0 1.5px var(--cz-blue); color: var(--cz-blueink); font-weight: 700; }
134
- .hm-then { margin: 2px 0 0; padding: 8px 10px; border-radius: 10px; background: var(--cz-card); font-size: var(--fs-2); line-height: 1.45; color: var(--cz-ink2); box-shadow: 0 0 0 1px var(--cz-hair); }
132
+ .hm-it .tag.agent, .hm-it .tag.wait { padding: 0; background: none; color: var(--cz-ink3); font-size: var(--fs-meta); font-weight: var(--fw-regular); line-height: var(--lh-meta); } /* Working, Next: a plain word */
133
+ .hm-it .tag.agent.stuck { padding: 1px 8px; box-shadow: inset 0 0 0 1.5px var(--cz-blue); color: var(--cz-blueink); font-weight: var(--fw-strong); }
134
+ .hm-then { margin: 2px 0 0; padding: 8px 10px; border-radius: 10px; background: var(--cz-card); font-size: var(--fs-meta); line-height: 1.45; color: var(--cz-ink2); box-shadow: 0 0 0 1px var(--cz-hair); }
135
135
  .hm-box:not(.you) .hm-then { box-shadow: none; }
136
136
  .hm-then b { color: var(--cz-ink); }
137
- .hm-time { margin: 2px 0 0; display: flex; align-items: center; gap: 6px; font-size: var(--fs-2); color: var(--cz-blueink); }
137
+ .hm-time { margin: 2px 0 0; display: flex; align-items: center; gap: 6px; font-size: var(--fs-meta); color: var(--cz-blueink); line-height: var(--lh-meta); }
138
138
  .hm-time.over { color: var(--cz-late); }
139
139
  .hm-acts { display: flex; gap: 8px; align-items: center; }
140
- .hm-cta { flex: 1; height: 38px; border-radius: 12px; border: 0; background: var(--cz-solid); color: var(--cz-onsolid); font-size: var(--fs-3); font-weight: 700; cursor: pointer; text-align: left; padding: 0 12px; }
140
+ .hm-cta { flex: 1; height: 38px; border-radius: 12px; border: 0; background: var(--cz-solid); color: var(--cz-onsolid); font-size: var(--fs-row); font-weight: var(--fw-strong); cursor: pointer; text-align: left; padding: 0 12px; line-height: var(--lh-row); }
141
141
  .hm-cta.alt { background: var(--cz-card); color: var(--cz-ink); box-shadow: inset 0 0 0 1px var(--cz-hair); }
142
142
  .hm-ov { width: 38px; height: 38px; border-radius: 12px; border: 0; background: var(--cz-card); box-shadow: inset 0 0 0 1px var(--cz-hair); display: grid; place-items: center; cursor: pointer; padding: 0; }
143
143
  .hm-else { display: flex; align-items: center; gap: 10px; width: 100%; min-height: 48px; margin-top: 10px; padding: 8px 12px; border: 0; border-radius: 16px; background: var(--cz-card); box-shadow: var(--cz-vlift); cursor: pointer; text-align: left; color: var(--cz-ink); }
144
144
  .hm-else span { flex: 1; min-width: 0; display: flex; flex-direction: column; }
145
- .hm-else em { font-style: normal; font-size: var(--fs-1); color: var(--cz-ink3); }
146
- .hm-else b { font-size: var(--fs-3); font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
145
+ .hm-else em { font-style: normal; font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
146
+ .hm-else b { font-size: var(--fs-row); font-weight: var(--fw-strong); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; line-height: var(--lh-row); }
147
147
 
148
148
  /* ── avatars (the role tints) ── */
149
- .hm-av { display: inline-grid; place-items: center; flex: none; border-radius: 50%; font-weight: 800; font-size: var(--fs-1); line-height: 1; background: var(--cz-bluebg); color: var(--cz-blueink); font-family: var(--cz-sans); }
150
- .hm-av.s20 { width: 20px; height: 20px; font-size: var(--fs-1); } .hm-av.s24 { width: 24px; height: 24px; font-size: var(--fs-1); }
151
- .hm-av.s28 { width: 28px; height: 28px; font-size: var(--fs-1); } .hm-av.s30 { width: 30px; height: 30px; }
149
+ .hm-av { display: inline-grid; place-items: center; flex: none; border-radius: 50%; font-weight: var(--fw-strong); font-size: var(--fs-badge); line-height: 1; background: var(--cz-bluebg); color: var(--cz-blueink); font-family: var(--cz-sans); }
150
+ .hm-av.s20 { width: 20px; height: 20px; font-size: var(--fs-meta); line-height: var(--lh-meta); } .hm-av.s24 { width: 24px; height: 24px; font-size: var(--fs-meta); line-height: var(--lh-meta); }
151
+ .hm-av.s28 { width: 28px; height: 28px; font-size: var(--fs-meta); line-height: var(--lh-meta); } .hm-av.s30 { width: 30px; height: 30px; }
152
152
  .hm-av.t-C { background: var(--cz-c-2f5fb3); color: var(--cz-c-ffffff); }
153
153
  .hm-av.t-St { background: var(--cz-c-eef1f8); color: var(--cz-c-34508a); } .hm-av.t-Re { background: var(--cz-c-faf0e4); color: var(--cz-c-8a5212); }
154
154
  .hm-av.t-Sp { background: var(--cz-c-e9f4ee); color: var(--cz-c-2e6e48); } .hm-av.t-Ev { background: var(--cz-c-faecef); color: var(--cz-c-9a3b55); }
@@ -163,9 +163,9 @@ body.cz-home { min-height: 100vh; overflow: hidden; }
163
163
  /* A loose chat's guess at its initiative (XvALinkSuggest): one quiet chip at the chat's top, never a banner */
164
164
  .hm-sug { padding: 10px 56px 0 16px; }
165
165
  .hm-sug[hidden] { display: none; }
166
- .hm-sugc { display: inline-flex; align-items: center; gap: 8px; max-width: 100%; padding: 4px 6px 4px 12px; white-space: nowrap; border-radius: 999px; background: var(--cz-bluebg); color: var(--cz-blueink); font-size: var(--fs-3); }
167
- .hm-sugc b { font-weight: 700; color: var(--cz-blueink); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0; }
168
- .hm-sugl { border: 0; background: none; padding: 2px 4px; font: inherit; font-weight: 800; color: var(--cz-blueink); text-decoration: underline; cursor: pointer; }
166
+ .hm-sugc { display: inline-flex; align-items: center; gap: 8px; max-width: 100%; padding: 4px 6px 4px 12px; white-space: nowrap; border-radius: 999px; background: var(--cz-bluebg); color: var(--cz-blueink); font-size: var(--fs-body); line-height: var(--lh-body); }
167
+ .hm-sugc b { font-weight: var(--fw-strong); color: var(--cz-blueink); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0; }
168
+ .hm-sugl { border: 0; background: none; padding: 2px 4px; font: inherit; font-weight: var(--fw-strong); color: var(--cz-blueink); text-decoration: underline; cursor: pointer; }
169
169
  .hm-sugx { border: 0; background: none; width: 24px; height: 24px; border-radius: 50%; display: inline-grid; place-items: center; color: var(--cz-ink3); cursor: pointer; }
170
170
  .hm-sugx:hover, .hm-sugl:hover { background: var(--cz-card); }
171
171
  @media (max-width: 760px) { .hm-sug { padding: 8px 16px 0; } .hm-sugc { padding: 0 0 0 12px; } .hm-sugl, .hm-sugx { min-height: 44px; min-width: 44px; } }
@@ -186,7 +186,7 @@ body.cz-home { min-height: 100vh; overflow: hidden; }
186
186
  .hm-chd { flex: none; display: flex; align-items: center; gap: 10px; min-width: 0; height: 40px; padding-right: 48px; margin-bottom: 26px; box-sizing: border-box; }
187
187
  .hm-chd[hidden] { display: none; }
188
188
  .hm-chd .hv-mk { margin-right: -4px; }
189
- .hm-chb { min-width: 0; font-size: var(--fs-4); font-weight: 800; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
189
+ .hm-chb { min-width: 0; font-size: var(--fs-row); font-weight: var(--fw-strong); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; line-height: var(--lh-row); }
190
190
  /* session names A (canvas XmsNames): the session's name is the rename press; a tap makes it the agreed field (RnATask) */
191
191
  .hm-chn { min-width: 0; flex: 0 1 auto; display: flex; align-items: center; }
192
192
  .hm-chn:has(.hm-ren) { flex: 1; }
@@ -194,11 +194,11 @@ body.cz-home { min-height: 100vh; overflow: hidden; }
194
194
  .hm-rn:hover { background: var(--cz-well); }
195
195
  .hm-rn:focus-visible { outline: 2px solid var(--cz-blue); outline-offset: 1px; }
196
196
  .hm-ren { flex: 1; min-width: 0; display: flex; align-items: center; gap: 4px; height: 40px; border-radius: 12px; background: var(--cz-card); box-shadow: 0 0 0 1.5px var(--cz-blue), 0 0 0 5px color-mix(in srgb, var(--cz-blue) 14%, transparent); padding: 0 4px 0 10px; }
197
- .hm-ren input { flex: 1; min-width: 0; font: inherit; font-size: var(--fs-4); font-weight: 800; color: var(--cz-ink); border: 0; background: transparent; outline: 0; padding: 0; }
197
+ .hm-ren input { flex: 1; min-width: 0; font: inherit; font-size: var(--fs-row); font-weight: var(--fw-strong); color: var(--cz-ink); border: 0; background: transparent; outline: 0; padding: 0; line-height: var(--lh-row); }
198
198
  .hm-ren .sv { width: 32px; height: 32px; border-radius: 999px; border: 0; background: var(--cz-solid); color: var(--cz-onsolid); display: inline-flex; align-items: center; justify-content: center; flex: none; cursor: pointer; }
199
199
  .hm-ren .sv:disabled { opacity: .6; cursor: default; }
200
- .hm-renerr { margin: 4px 0 0 10px; font-size: var(--fs-2); color: var(--cz-red); }
201
- .hm-chs { flex: 0 1 auto; min-width: 0; height: 28px; padding: 0 10px; border-radius: 999px; background: var(--cz-well); color: var(--cz-ink2); font-size: var(--fs-2); font-weight: 700; display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; }
200
+ .hm-renerr { margin: 4px 0 0 10px; font-size: var(--fs-meta); color: var(--cz-red); line-height: var(--lh-meta); }
201
+ .hm-chs { flex: 0 1 auto; min-width: 0; height: 28px; padding: 0 10px; border-radius: 999px; background: var(--cz-well); color: var(--cz-ink2); font-size: var(--fs-label); font-weight: var(--fw-strong); display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; line-height: var(--lh-label); }
202
202
  .hm-chs > span { overflow: hidden; text-overflow: ellipsis; }
203
203
  .hm-chs .hv-mt { margin-left: 0; }
204
204
  .hm-chs > svg { flex: none; color: var(--cz-c-6b4fa3); }
@@ -211,52 +211,52 @@ body.cz-home { min-height: 100vh; overflow: hidden; }
211
211
  @media (max-width: 760px) { .hm-chd { display: none; } }
212
212
  .hm-log { flex: 1; min-height: 0; overflow: auto; display: flex; flex-direction: column; gap: 14px; padding: 2px 4px 12px 0; scrollbar-width: thin; }
213
213
 
214
- .hm-empty { margin: auto; max-width: 360px; text-align: center; color: var(--cz-ink3); font-size: var(--fs-3); line-height: 1.5; }
214
+ .hm-empty { margin: auto; max-width: 360px; text-align: center; color: var(--cz-ink3); font-size: var(--fs-body); line-height: 1.5; }
215
215
  .hm-a { display: flex; gap: 10px; align-items: flex-start; }
216
- .hm-ab { flex: 1; min-width: 0; font-size: var(--fs-3); line-height: 1.55; color: var(--cz-ink); }
216
+ .hm-ab { flex: 1; min-width: 0; font-size: var(--fs-body); line-height: 1.55; color: var(--cz-ink); }
217
217
  .hm-ab .md p { margin: 0 0 6px; }
218
218
  .hm-bub .md, .hm-qb .md { max-width: none; color: inherit; line-height: 1.5; }
219
219
  .hm-bub .md p, .hm-qb .md p { margin: 0 0 6px; }
220
220
  .hm-bub .md pre, .hm-qb .md pre { background: rgba(255,255,255,.6); }
221
- .hm-who { margin: 0; font-size: var(--fs-2); font-weight: 700; color: var(--cz-ink); line-height: 1.55; }
222
- .hm-who span { font-weight: 400; color: var(--cz-ink3); }
223
- .hm-who .hm-say { font-size: var(--fs-3); color: var(--cz-ink); }
221
+ .hm-who { margin: 0; font-size: var(--fs-label); font-weight: var(--fw-strong); color: var(--cz-ink); line-height: 1.55; }
222
+ .hm-who span { font-weight: var(--fw-regular); color: var(--cz-ink3); }
223
+ .hm-who .hm-say { font-size: var(--fs-body); color: var(--cz-ink); line-height: var(--lh-body); }
224
224
  /* the name and time sit in line before the first words of the message (AgChatRunning); over the message that asks, and on a phone, on their own line (AgChatAsk, AgChatPhone) */
225
225
  @media (min-width: 761px) { .hm-a:not(.ask) .hm-ab > .hm-who { float: left; margin-right: 6px; line-height: calc(14px * 1.55); } }
226
226
  .hm-ab::after { content: ''; display: block; clear: both; }
227
227
  .hm-tools { display: flex; gap: 16px; margin-top: 4px; clear: both; }
228
- .hm-tools button { border: 0; background: none; padding: 0; height: 24px; font-size: var(--fs-2); color: var(--cz-ink3); cursor: pointer; }
228
+ .hm-tools button { border: 0; background: none; padding: 0; height: 24px; font-size: var(--fs-meta); color: var(--cz-ink3); cursor: pointer; line-height: var(--lh-meta); }
229
229
  .hm-tools button:hover { color: var(--cz-ink); }
230
230
  .hm-pills { display: flex; flex-wrap: wrap; gap: 8px; padding-left: 38px; }
231
- .hm-pills button { min-height: 38px; padding: 0 16px; border-radius: 999px; border: 1px solid var(--cz-hair); background: var(--cz-card); color: var(--cz-ink2); font-size: var(--fs-2); cursor: pointer; }
232
- .hm-pills button.pri { background: var(--cz-solid); color: var(--cz-onsolid); border-color: transparent; font-weight: 700; }
231
+ .hm-pills button { min-height: 38px; padding: 0 16px; border-radius: 999px; border: 1px solid var(--cz-hair); background: var(--cz-card); color: var(--cz-ink2); font-size: var(--fs-meta); cursor: pointer; line-height: var(--lh-meta); }
232
+ .hm-pills button.pri { background: var(--cz-solid); color: var(--cz-onsolid); border-color: transparent; font-weight: var(--fw-strong); }
233
233
  .hm-u { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; }
234
- .hm-bub { max-width: 80%; padding: 10px 16px; border-radius: 18px 18px 8px 18px; background: var(--cz-bubble); font-size: var(--fs-3); line-height: 1.5; color: var(--cz-ink); }
235
- .hm-you { font-size: var(--fs-1); color: var(--cz-ink3); }
234
+ .hm-bub { max-width: 80%; padding: 10px 16px; border-radius: 18px 18px 8px 18px; background: var(--cz-bubble); font-size: var(--fs-body); line-height: 1.5; color: var(--cz-ink); }
235
+ .hm-you { font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
236
236
  .hm-pend.sending .hm-bub { opacity: .72; } /* batch 24 item 2: the bubble shows at once, a touch lighter until PMOS takes it */
237
237
  .hm-worked { padding-left: 38px; }
238
- .hm-wk { display: flex; align-items: center; gap: 8px; max-width: 100%; min-height: 32px; padding: 0 4px; border: 0; border-radius: 8px; background: none; color: var(--cz-ink3); font-size: var(--fs-2); cursor: pointer; text-align: left; } /* a plain grey line (AgChatAsk) */
238
+ .hm-wk { display: flex; align-items: center; gap: 8px; max-width: 100%; min-height: 32px; padding: 0 4px; border: 0; border-radius: 8px; background: none; color: var(--cz-ink3); font-size: var(--fs-meta); cursor: pointer; text-align: left; line-height: var(--lh-meta); } /* a plain grey line (AgChatAsk) */
239
239
  .hm-wk:hover { color: var(--cz-ink2); }
240
240
  .hm-wk span { min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
241
241
  .hm-wk[aria-expanded="true"] svg { transform: rotate(90deg); }
242
- .hm-calls { margin: 6px 0 0; padding: 0 0 0 16px; font-size: var(--fs-2); color: var(--cz-ink3); display: flex; flex-direction: column; gap: 3px; }
243
- .hm-calls code { margin-left: 8px; font-family: var(--cz-mono); font-size: var(--fs-1); }
244
- .hm-day, .hm-since { display: flex; align-items: center; gap: 12px; font-size: var(--fs-2); color: var(--cz-ink3); }
242
+ .hm-calls { margin: 6px 0 0; padding: 0 0 0 16px; font-size: var(--fs-meta); color: var(--cz-ink3); display: flex; flex-direction: column; gap: 3px; line-height: var(--lh-meta); }
243
+ .hm-calls code { margin-left: 8px; font-family: var(--cz-mono); font-size: var(--fs-meta); line-height: var(--lh-meta); }
244
+ .hm-day, .hm-since { display: flex; align-items: center; gap: 12px; font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
245
245
  .hm-day span, .hm-since span { flex: 1; height: 1px; background: var(--cz-hair); }
246
- .hm-since { color: var(--cz-blueink); font-weight: 700; } .hm-since span { background: var(--cz-blue); }
247
- .hm-fold { align-self: center; height: 32px; padding: 0 16px; border-radius: 999px; border: 1px solid var(--cz-hair); background: var(--cz-card); font-size: var(--fs-2); color: var(--cz-ink2); cursor: pointer; }
248
- .hm-stopped, .hm-note { margin: 0; font-size: var(--fs-2); color: var(--cz-ink3); padding-left: 38px; }
246
+ .hm-since { color: var(--cz-blueink); font-weight: var(--fw-strong); } .hm-since span { background: var(--cz-blue); }
247
+ .hm-fold { align-self: center; height: 32px; padding: 0 16px; border-radius: 999px; border: 1px solid var(--cz-hair); background: var(--cz-card); font-size: var(--fs-meta); color: var(--cz-ink2); cursor: pointer; line-height: var(--lh-meta); }
248
+ .hm-stopped, .hm-note { margin: 0; font-size: var(--fs-meta); color: var(--cz-ink3); padding-left: 38px; line-height: var(--lh-meta); }
249
249
  .hm-live { display: flex; gap: 10px; }
250
250
  .hm-lb { flex: 1; min-width: 0; }
251
- .hm-steps { list-style: none; margin: 6px 0 0; padding: 12px 14px; border-radius: 14px; background: var(--cz-well); display: flex; flex-direction: column; gap: 8px; font-size: var(--fs-3); }
251
+ .hm-steps { list-style: none; margin: 6px 0 0; padding: 12px 14px; border-radius: 14px; background: var(--cz-well); display: flex; flex-direction: column; gap: 8px; font-size: var(--fs-body); line-height: var(--lh-body); }
252
252
  .hm-steps li { display: flex; align-items: flex-start; gap: 10px; color: var(--cz-ink3); }
253
253
  .hm-steps li > span { min-width: 0; display: flex; flex-direction: column; gap: 2px; }
254
- .hm-steps li small { font-size: var(--fs-1); font-weight: 400; color: var(--cz-ink3); } /* a step's result and time (AgChatRunning) */
255
- .hm-steps li code { font-family: var(--cz-mono); font-size: var(--fs-1); font-weight: 400; color: var(--cz-ink2); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } /* the call it runs now */
254
+ .hm-steps li small { font-size: var(--fs-meta); font-weight: var(--fw-regular); color: var(--cz-ink3); line-height: var(--lh-meta); } /* a step's result and time (AgChatRunning) */
255
+ .hm-steps li code { font-family: var(--cz-mono); font-size: var(--fs-meta); font-weight: var(--fw-regular); color: var(--cz-ink2); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; line-height: var(--lh-meta); } /* the call it runs now */
256
256
  .hm-steps li i { width: 10px; height: 10px; margin-top: 4px; border-radius: 50%; box-sizing: border-box; border: 1.5px solid var(--cz-ink3); flex: none; }
257
257
  .hm-steps li.done { color: var(--cz-ink); } .hm-steps li.done i { background: var(--cz-done); border-color: var(--cz-done); }
258
- .hm-steps li.now { color: var(--cz-ink); font-weight: 700; } .hm-steps li.now i { border: 2px solid var(--cz-blue); }
259
- .hm-watch { margin-top: 6px; border: 0; background: none; padding: 0 8px; height: 30px; font-size: var(--fs-2); color: var(--cz-ink2); cursor: pointer; }
258
+ .hm-steps li.now { color: var(--cz-ink); font-weight: var(--fw-strong); } .hm-steps li.now i { border: 2px solid var(--cz-blue); }
259
+ .hm-watch { margin-top: 6px; border: 0; background: none; padding: 0 8px; height: 30px; font-size: var(--fs-meta); color: var(--cz-ink2); cursor: pointer; line-height: var(--lh-meta); }
260
260
  /* every kind of ask, one card (canvas XcbOptions "Every kind of ask", home-ask.js): part of the agent's message, in line with its text, no
261
261
  * avatar of its own; the kind's label, what it asks, before → after where the change holds both, then the answers as labeled icons */
262
262
  .hm-askw, .hm-askc { padding-left: 38px; }
@@ -265,11 +265,11 @@ body.cz-home { min-height: 100vh; overflow: hidden; }
265
265
  .hm-flash .hm-askk, .hm-a.hm-flash .hm-ab { animation: hm-flash .9s ease-out 1; border-radius: 16px; }
266
266
  @keyframes hm-flash { 0% { box-shadow: inset 0 0 0 1.5px var(--cz-blue), 0 0 0 0 var(--cz-blue); } 40% { box-shadow: inset 0 0 0 1.5px var(--cz-blue), 0 0 0 5px color-mix(in srgb, var(--cz-blue) 30%, transparent); } 100% { box-shadow: inset 0 0 0 1.5px var(--cz-blue), 0 0 0 0 transparent; } }
267
267
  @media (prefers-reduced-motion: reduce) { .hm-flash .hm-askk, .hm-a.hm-flash .hm-ab { animation: none; } }
268
- .hm-askk { padding: 10px 12px 12px; border-radius: 16px; background: linear-gradient(180deg, var(--cz-bluebg) 0%, var(--cz-card) 70%); box-shadow: inset 0 0 0 1.5px var(--cz-blue); display: flex; flex-direction: column; gap: 4px; font-size: var(--fs-3); }
269
- .hm-askk .k { margin: 0; font-size: var(--fs-2); font-weight: 700; color: var(--cz-ink3); }
270
- .hm-askk .q { font-size: var(--fs-3); font-weight: 700; color: var(--cz-ink); overflow-wrap: anywhere; }
271
- .hm-askk .ft { margin: 0; display: flex; align-items: center; gap: 6px; flex-wrap: wrap; font-size: var(--fs-3); }
272
- .hm-askk .ft b { font-weight: 600; }
268
+ .hm-askk { padding: 10px 12px 12px; border-radius: 16px; background: linear-gradient(180deg, var(--cz-bluebg) 0%, var(--cz-card) 70%); box-shadow: inset 0 0 0 1.5px var(--cz-blue); display: flex; flex-direction: column; gap: 4px; font-size: var(--fs-body); line-height: var(--lh-body); }
269
+ .hm-askk .k { margin: 0; font-size: var(--fs-label); font-weight: var(--fw-strong); color: var(--cz-ink3); line-height: var(--lh-label); }
270
+ .hm-askk .q { font-size: var(--fs-row); font-weight: var(--fw-strong); color: var(--cz-ink); overflow-wrap: anywhere; line-height: var(--lh-row); }
271
+ .hm-askk .ft { margin: 0; display: flex; align-items: center; gap: 6px; flex-wrap: wrap; font-size: var(--fs-body); line-height: var(--lh-body); }
272
+ .hm-askk .ft b { font-weight: var(--fw-strong); }
273
273
  .hm-askk s { color: var(--cz-ink3); }
274
274
  .hm-askk .acts, .hm-fix { display: flex; align-items: center; gap: 8px; margin-top: 6px; }
275
275
  .hm-fix { padding-left: 38px; margin-top: 0; }
@@ -280,9 +280,9 @@ body.cz-home { min-height: 100vh; overflow: hidden; }
280
280
  .hm-chat .hm-askk.tc { margin-top: 0; padding: 10px 12px 12px; }
281
281
  .hm-chat .hm-askk .askq { margin: 0 0 6px; display: flex; flex-direction: column; gap: 4px; }
282
282
  .hm-chat .chips2 { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 6px; }
283
- .hm-chat .chips2 .chip2 { min-height: 44px; padding: 8px 12px; border-radius: 14px; border: 1px solid var(--cz-hair); background: var(--cz-card); color: var(--cz-ink); font: 600 var(--fs-2)/1.25 var(--cz-sans); text-align: left; cursor: pointer; }
283
+ .hm-chat .chips2 .chip2 { min-height: 44px; padding: 8px 12px; border-radius: 14px; border: 1px solid var(--cz-hair); background: var(--cz-card); color: var(--cz-ink); font: var(--fw-strong) var(--fs-label)/1.25 var(--cz-sans); text-align: left; cursor: pointer; }
284
284
  .hm-chat .chips2 .chip2.rec { border-color: var(--cz-blue); background: var(--cz-bluebg); }
285
- .hm-chat .chips2 .chip2 small { display: block; font-size: var(--fs-1); font-weight: 800; color: var(--cz-blueink); }
285
+ .hm-chat .chips2 .chip2 small { display: block; font-size: var(--fs-badge); font-weight: var(--fw-strong); color: var(--cz-blueink); line-height: var(--lh-badge); }
286
286
  .hm-chat .chips2 .chip2[aria-pressed="true"] { background: var(--cz-solid); color: var(--cz-onsolid); border-color: transparent; }
287
287
  .hm-chat .chips2 .chip2[aria-pressed="true"] small { color: inherit; }
288
288
  .hm-chat .chips2 .chip2:disabled { opacity: .55; cursor: default; }
@@ -297,48 +297,48 @@ body.cz-home { min-height: 100vh; overflow: hidden; }
297
297
  the floating menu button steps aside while it is open, so nothing covers it */
298
298
  .hm-scope .hm-addm { left: auto; right: 0; max-width: calc(100vw - 32px); }
299
299
  body:has(.hm-addm:not([hidden])) .cz-fab { visibility: hidden; }
300
- .hm-addm button { display: flex; flex-direction: column; align-items: flex-start; gap: 1px; min-height: 44px; padding: 6px 10px; background: none; color: var(--cz-ink); cursor: pointer; font-family: var(--cz-sans); font-size: var(--fs-3); }
300
+ .hm-addm button { display: flex; flex-direction: column; align-items: flex-start; gap: 1px; min-height: 44px; padding: 6px 10px; background: none; color: var(--cz-ink); cursor: pointer; font-family: var(--cz-sans); font-size: var(--fs-body); line-height: var(--lh-body); }
301
301
  .hm-addm button:hover, .hm-addm button:focus-visible { background: var(--cz-well); }
302
- .hm-addm em { font-style: normal; font-size: var(--fs-1); color: var(--cz-ink3); }
303
- .hm-addm b { font-weight: 600; }
302
+ .hm-addm em { font-style: normal; font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
303
+ .hm-addm b { font-weight: var(--fw-strong); }
304
304
  .hm-q { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; opacity: .75; }
305
- .hm-qb { max-width: 80%; padding: 10px 16px; border-radius: 18px 18px 8px 18px; border: 1px dashed var(--cz-blue); font-size: var(--fs-3); }
306
- .hm-qn { font-size: var(--fs-1); color: var(--cz-ink3); display: flex; gap: 10px; align-items: center; }
307
- .hm-qn button { border: 0; background: none; color: var(--cz-blueink); cursor: pointer; font-size: var(--fs-1); padding: 0; height: 24px; }
305
+ .hm-qb { max-width: 80%; padding: 10px 16px; border-radius: 18px 18px 8px 18px; border: 1px dashed var(--cz-blue); font-size: var(--fs-body); line-height: var(--lh-body); }
306
+ .hm-qn { font-size: var(--fs-meta); color: var(--cz-ink3); display: flex; gap: 10px; align-items: center; line-height: var(--lh-meta); }
307
+ .hm-qn button { border: 0; background: none; color: var(--cz-blueink); cursor: pointer; font-size: var(--fs-meta); padding: 0; height: 24px; line-height: var(--lh-meta); }
308
308
 
309
309
  /* ── the foot: also, the run strip, the composers ── */
310
310
  .hm-foot { flex: none; display: flex; flex-direction: column; gap: 8px; padding-top: 8px; }
311
- .hm-also { display: flex; align-items: center; gap: 10px; min-height: 40px; padding: 0 14px; border: 0; border-radius: 12px; background: var(--cz-bluebg); color: var(--cz-ink); font-size: var(--fs-2); cursor: pointer; text-align: left; }
311
+ .hm-also { display: flex; align-items: center; gap: 10px; min-height: 40px; padding: 0 14px; border: 0; border-radius: 12px; background: var(--cz-bluebg); color: var(--cz-ink); font-size: var(--fs-meta); cursor: pointer; text-align: left; line-height: var(--lh-meta); }
312
312
  .hm-also i { width: 7px; height: 7px; border-radius: 50%; background: var(--cz-blue); flex: none; }
313
313
  .hm-also span { flex: 1; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
314
- .hm-also em { font-style: normal; font-weight: 700; color: var(--cz-blueink); }
314
+ .hm-also em { font-style: normal; font-weight: var(--fw-strong); color: var(--cz-blueink); }
315
315
  .hm-run { display: flex; align-items: center; gap: 10px; padding: 8px 8px 8px 10px; border-radius: 16px; background: var(--cz-card); box-shadow: inset 0 0 0 1px var(--cz-hair); }
316
- .hm-rt { flex: 1; min-width: 0; display: flex; flex-direction: column; font-size: var(--fs-3); }
317
- .hm-rt span { font-size: var(--fs-1); color: var(--cz-ink3); }
316
+ .hm-rt { flex: 1; min-width: 0; display: flex; flex-direction: column; font-size: var(--fs-body); line-height: var(--lh-body); }
317
+ .hm-rt span { font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
318
318
  .hm-bar { flex: 0 0 64px; height: 4px; border: 0; border-radius: 2px; background: var(--cz-hair); overflow: hidden; appearance: none; -webkit-appearance: none; color: var(--cz-blue); }
319
319
  .hm-bar::-webkit-progress-bar { background: var(--cz-hair); }
320
320
  .hm-bar::-webkit-progress-value { background: var(--cz-blue); }
321
321
  .hm-bar::-moz-progress-bar { background: var(--cz-blue); }
322
- .hm-stop { display: inline-flex; align-items: center; gap: 6px; height: 36px; padding: 0 12px; border-radius: 12px; border: 1px solid var(--cz-hair); background: var(--cz-card); font-size: var(--fs-3); font-weight: 700; color: var(--cz-ink); cursor: pointer; }
322
+ .hm-stop { display: inline-flex; align-items: center; gap: 6px; height: 36px; padding: 0 12px; border-radius: 12px; border: 1px solid var(--cz-hair); background: var(--cz-card); font-size: var(--fs-row); font-weight: var(--fw-strong); color: var(--cz-ink); cursor: pointer; line-height: var(--lh-row); }
323
323
  .hm-stop i { width: 9px; height: 9px; border-radius: 2px; background: var(--cz-ink); }
324
324
  .hm-box-rich, .hm-box#hmForm, form.hm-box { display: flex; flex-direction: column; gap: 6px; padding: 8px; border-radius: 24px; background: var(--cz-well); }
325
- form.hm-box textarea { min-height: 48px; border: 0; background: none; resize: none; font: inherit; font-size: var(--fs-3); color: var(--cz-ink); padding: 8px 10px; outline: none; }
325
+ form.hm-box textarea { min-height: 48px; border: 0; background: none; resize: none; font: inherit; font-size: var(--fs-body); color: var(--cz-ink); padding: 8px 10px; outline: none; line-height: var(--lh-body); }
326
326
  .hm-tb { display: flex; align-items: center; gap: 4px; }
327
327
  .hm-tb .sp { flex: 1; }
328
- .hm-tool { width: 36px; height: 36px; border-radius: 12px; display: grid; place-items: center; border: 0; background: none; color: var(--cz-ink2); cursor: pointer; font-size: var(--fs-3); }
328
+ .hm-tool { width: 36px; height: 36px; border-radius: 12px; display: grid; place-items: center; border: 0; background: none; color: var(--cz-ink2); cursor: pointer; font-size: var(--fs-body); line-height: var(--lh-body); }
329
329
  .hm-tool:hover { background: var(--cz-well2); }
330
- .hm-tool b { font-weight: 500; }
331
- .hm-chip { display: inline-flex; align-items: center; gap: 6px; height: 32px; padding: 0 10px; border-radius: 999px; border: 0; background: var(--cz-bluebg); color: var(--cz-blueink); font-size: var(--fs-2); font-weight: 700; cursor: pointer; max-width: 260px; min-width: 0; white-space: nowrap; flex: 0 1 auto; }
330
+ .hm-tool b { font-weight: var(--fw-regular); }
331
+ .hm-chip { display: inline-flex; align-items: center; gap: 6px; height: 32px; padding: 0 10px; border-radius: 999px; border: 0; background: var(--cz-bluebg); color: var(--cz-blueink); font-size: var(--fs-label); font-weight: var(--fw-strong); cursor: pointer; max-width: 260px; min-width: 0; white-space: nowrap; flex: 0 1 auto; line-height: var(--lh-label); }
332
332
  .hm-chip span { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
333
333
  .hm-chip.to { background: var(--cz-card); color: var(--cz-ink); }
334
334
  .hm-chip.loose { background: var(--cz-well); color: var(--cz-ink2); }
335
335
  .hm-chip .dot { width: 7px; height: 7px; border-radius: 50%; background: var(--cz-blue); }
336
- .hm-key { font-size: var(--fs-1); color: var(--cz-ink3); margin-right: 6px; }
336
+ .hm-key { font-size: var(--fs-meta); color: var(--cz-ink3); margin-right: 6px; line-height: var(--lh-meta); }
337
337
  .hm-send { width: 40px; height: 40px; border-radius: 50%; border: 0; background: var(--cz-solid); color: var(--cz-onsolid); display: grid; place-items: center; cursor: pointer; }
338
338
  .hm-files { display: flex; flex-wrap: nowrap; overflow-x: auto; gap: 6px; padding: 0 8px; }
339
- .hm-att { display: inline-flex; flex: none; align-items: center; gap: 6px; max-width: 220px; padding: 2px 2px 2px 10px; border-radius: 999px; background: var(--cz-card); font-size: var(--fs-2); }
339
+ .hm-att { display: inline-flex; flex: none; align-items: center; gap: 6px; max-width: 220px; padding: 2px 2px 2px 10px; border-radius: 999px; background: var(--cz-card); font-size: var(--fs-meta); line-height: var(--lh-meta); }
340
340
  .hm-att.saving { opacity: .6; }
341
- .hm-att b { font-weight: 600; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
341
+ .hm-att b { font-weight: var(--fw-strong); min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
342
342
  .hm-att em { font-style: normal; color: var(--cz-ink3); white-space: nowrap; }
343
343
  .hm-ath { width: 22px; height: 22px; border-radius: 6px; object-fit: cover; margin-left: -6px; }
344
344
  .hm-att button { border: 0; background: none; cursor: pointer; width: 28px; height: 28px; border-radius: 999px; color: var(--cz-ink3); }
@@ -346,11 +346,11 @@ form.hm-box textarea { min-height: 48px; border: 0; background: none; resize: no
346
346
  .hm-chat.hm-drop { outline: 2px dashed var(--cz-blue); outline-offset: -8px; }
347
347
  .hm-scope { display: flex; align-items: center; gap: 8px; }
348
348
  .hm-scope .sp { flex: 1; }
349
- .hm-link { border: 0; background: none; color: var(--cz-blueink); font-size: var(--fs-2); font-weight: 700; cursor: pointer; height: 32px; }
349
+ .hm-link { border: 0; background: none; color: var(--cz-blueink); font-size: var(--fs-label); font-weight: var(--fw-strong); cursor: pointer; height: 32px; line-height: var(--lh-label); }
350
350
  .hm-basic { display: flex; align-items: flex-end; gap: 8px; }
351
- .hm-basic textarea { flex: 1; box-sizing: border-box; min-height: 46px; padding: 12px 18px; border-radius: 28px; border: 0; background: var(--cz-well); resize: none; font: inherit; font-size: var(--fs-3); color: var(--cz-ink); outline: none; }
351
+ .hm-basic textarea { flex: 1; box-sizing: border-box; min-height: 46px; padding: 12px 18px; border-radius: 28px; border: 0; background: var(--cz-well); resize: none; font: inherit; font-size: var(--fs-body); color: var(--cz-ink); outline: none; line-height: var(--lh-body); }
352
352
  .hm-go { width: 46px; height: 46px; border-radius: 50%; border: 0; background: var(--cz-solid); color: var(--cz-onsolid); display: grid; place-items: center; cursor: pointer; flex: none; }
353
- .hm-hint { margin: 0; font-size: var(--fs-2); line-height: 1.5; color: var(--cz-ink3); }
353
+ .hm-hint { margin: 0; font-size: var(--fs-meta); line-height: 1.5; color: var(--cz-ink3); }
354
354
 
355
355
  /* ── menus and the toast ── */
356
356
  .hm-menu { position: fixed; z-index: 80; left: 12px; bottom: 12px; width: min(300px, calc(100vw - 24px)); box-sizing: border-box; max-height: min(440px, calc(100vh - 24px)); overflow: auto; padding: 6px; border-radius: 18px; background: var(--cz-card); box-shadow: var(--cz-sheet); border: 1px solid var(--cz-hair); display: flex; flex-direction: column; }
@@ -361,104 +361,104 @@ form.hm-box textarea { min-height: 48px; border: 0; background: none; resize: no
361
361
  /* on a phone the menu is always the sheet at the bottom: the buttons that open it sit low on the screen, so a menu under them would leave it */
362
362
  @media (max-width: 760px) { .hm-menu.hm-menu { position-anchor: auto; left: 12px; top: auto; bottom: 12px; margin: 0; }
363
363
  .hm-menu.hm-menu.top { left: auto; right: 12px; top: 64px; bottom: auto; max-height: calc(100vh - 80px); } } /* top: set from the button when it opened the menu */ /* the ⋯ menu of the top bar opens under its button */
364
- .hm-ml { margin: 6px 10px; font-size: var(--fs-1); font-weight: 700; color: var(--cz-ink3); }
364
+ .hm-ml { margin: 6px 10px; font-size: var(--fs-badge); font-weight: var(--fw-strong); color: var(--cz-ink3); line-height: var(--lh-badge); }
365
365
  .hm-menu button { display: flex; flex-direction: column; align-items: flex-start; gap: 1px; min-height: 44px; flex-shrink: 0; /* a long row keeps its height in a menu that scrolls (testing fixes: rows drew over each other) */
366
- padding: 6px 10px; border: 0; border-radius: 12px; background: none; color: var(--cz-ink); cursor: pointer; text-align: left; font-family: var(--cz-sans); font-size: var(--fs-3); }
366
+ padding: 6px 10px; border: 0; border-radius: 12px; background: none; color: var(--cz-ink); cursor: pointer; text-align: left; font-family: var(--cz-sans); font-size: var(--fs-body); line-height: var(--lh-body); }
367
367
  .hm-menu button:hover, .hm-menu button:focus-visible { background: var(--cz-well); }
368
- .hm-menu em { font-style: normal; font-size: var(--fs-2); color: var(--cz-ink3); }
369
- .hm-toast { position: fixed; z-index: 90; left: 50%; bottom: 28px; transform: translate(-50%, 20px); max-width: min(520px, calc(100vw - 32px)); padding: 10px 16px; border-radius: 14px; background: var(--cz-ink); color: var(--cz-card); font-size: var(--fs-3); opacity: 0; pointer-events: none; transition: opacity .2s, transform .2s; }
368
+ .hm-menu em { font-style: normal; font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
369
+ .hm-toast { position: fixed; z-index: 90; left: 50%; bottom: 28px; transform: translate(-50%, 20px); max-width: min(520px, calc(100vw - 32px)); padding: 10px 16px; border-radius: 14px; background: var(--cz-ink); color: var(--cz-card); font-size: var(--fs-body); opacity: 0; pointer-events: none; transition: opacity .2s, transform .2s; line-height: var(--lh-body); }
370
370
  .hm-toast.on { opacity: 1; transform: translate(-50%, 0); }
371
371
 
372
372
  /* ── the Viewer contents drawn here (needs rows, the weekly update, the minimal versions) ── */
373
- .hv { padding: 16px 20px 24px; display: flex; flex-direction: column; gap: 14px; font-size: var(--fs-3); color: var(--cz-ink); }
374
- .hv-note { margin: 0; padding: 10px 12px; border-radius: 12px; background: var(--cz-well); font-size: var(--fs-2); line-height: 1.5; color: var(--cz-ink2); }
375
- .hv-h { margin: 0; font-size: var(--fs-3); }
373
+ .hv { padding: 16px 20px 24px; display: flex; flex-direction: column; gap: 14px; font-size: var(--fs-body); color: var(--cz-ink); line-height: var(--lh-body); }
374
+ .hv-note { margin: 0; padding: 10px 12px; border-radius: 12px; background: var(--cz-well); font-size: var(--fs-meta); line-height: 1.5; color: var(--cz-ink2); }
375
+ .hv-h { margin: 0; font-size: var(--fs-body); line-height: var(--lh-body); }
376
376
  .hv-facts { margin: 0; display: grid; gap: 6px; }
377
377
  .hv-facts div { display: grid; grid-template-columns: 120px 1fr; gap: 10px; }
378
- .hv-facts dt { color: var(--cz-ink3); font-size: var(--fs-2); } .hv-facts dd { margin: 0; }
379
- .hv-sec h4 { margin: 0 0 8px; font-size: var(--fs-3); }
378
+ .hv-facts dt { color: var(--cz-ink3); font-size: var(--fs-meta); line-height: var(--lh-meta); } .hv-facts dd { margin: 0; }
379
+ .hv-sec h4 { margin: 0 0 8px; font-size: var(--fs-body); line-height: var(--lh-body); }
380
380
  .hv-opts { display: flex; flex-direction: column; gap: 6px; }
381
381
  .hv-opts button { display: flex; flex-direction: column; align-items: flex-start; gap: 2px; padding: 10px 12px; border-radius: 12px; border: 1px solid var(--cz-hair); background: var(--cz-card); text-align: left; cursor: pointer; color: var(--cz-ink); font-family: var(--cz-sans); }
382
382
  .hv-opts button[aria-checked="true"] { box-shadow: inset 0 0 0 1.5px var(--cz-blue); background: var(--cz-bluebg); }
383
- .hv-opts em { font-style: normal; font-size: var(--fs-2); color: var(--cz-ink3); }
384
- .hv-why { display: flex; flex-direction: column; gap: 4px; margin-top: 10px; font-size: var(--fs-2); color: var(--cz-ink3); }
385
- .hv-why textarea, .hv-why input { font: inherit; font-size: var(--fs-3); color: var(--cz-ink); padding: 8px 10px; border-radius: 12px; border: 1px solid var(--cz-hair); background: var(--cz-card); resize: vertical; min-height: 36px; box-sizing: border-box; }
383
+ .hv-opts em { font-style: normal; font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
384
+ .hv-why { display: flex; flex-direction: column; gap: 4px; margin-top: 10px; font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
385
+ .hv-why textarea, .hv-why input { font: inherit; font-size: var(--fs-body); color: var(--cz-ink); padding: 8px 10px; border-radius: 12px; border: 1px solid var(--cz-hair); background: var(--cz-card); resize: vertical; min-height: 36px; box-sizing: border-box; line-height: var(--lh-body); }
386
386
  .hv-seg { display: flex; flex-wrap: wrap; gap: 6px; }
387
387
  .hv-seg button { height: 32px; padding: 0 12px; border-radius: 999px; border: 1px solid var(--cz-hair); background: var(--cz-card); cursor: pointer; color: var(--cz-ink2); }
388
- .hv-seg button[aria-pressed="true"] { background: var(--cz-bluebg); color: var(--cz-blueink); border-color: transparent; font-weight: 700; }
388
+ .hv-seg button[aria-pressed="true"] { background: var(--cz-bluebg); color: var(--cz-blueink); border-color: transparent; font-weight: var(--fw-strong); }
389
389
  .hv-acts { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-top: 10px; }
390
390
  .hv-later { position: relative; }
391
391
  .hv-lm { position: absolute; left: 0; top: 40px; z-index: 5; min-width: 160px; padding: 6px; border-radius: 14px; background: var(--cz-card); box-shadow: var(--cz-sheet); display: flex; flex-direction: column; }
392
392
  .hv-lm[hidden] { display: none; }
393
393
  .hv-lm button { border: 0; background: none; text-align: left; min-height: 36px; padding: 0 10px; border-radius: 10px; cursor: pointer; color: var(--cz-ink); }
394
394
  .hv-lm button:hover { background: var(--cz-well); }
395
- .hv-to { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; font-size: var(--fs-2); color: var(--cz-ink3); }
396
- .hv-chip { height: 26px; padding: 0 10px; border-radius: 999px; border: 0; background: var(--cz-well); color: var(--cz-ink); font-size: var(--fs-2); cursor: pointer; }
397
- .hv-to input { flex: 1; min-width: 120px; height: 28px; border: 0; background: none; font: inherit; font-size: var(--fs-2); color: var(--cz-ink); outline: none; }
398
- .hv-up h4 { display: flex; align-items: center; gap: 8px; margin: 4px 0 8px; font-size: var(--fs-3); }
395
+ .hv-to { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
396
+ .hv-chip { height: 26px; padding: 0 10px; border-radius: 999px; border: 0; background: var(--cz-well); color: var(--cz-ink); font-size: var(--fs-meta); cursor: pointer; line-height: var(--lh-meta); }
397
+ .hv-to input { flex: 1; min-width: 120px; height: 28px; border: 0; background: none; font: inherit; font-size: var(--fs-meta); color: var(--cz-ink); outline: none; line-height: var(--lh-meta); }
398
+ .hv-up h4 { display: flex; align-items: center; gap: 8px; margin: 4px 0 8px; font-size: var(--fs-body); line-height: var(--lh-body); }
399
399
  .hv-up h4 i { width: 8px; height: 8px; border-radius: 50%; background: var(--cz-done); }
400
400
  .hv-up.risk h4 i { background: var(--cz-blue); } .hv-up.decide h4 i { background: none; box-shadow: inset 0 0 0 1.5px var(--cz-blue); }
401
401
  .hv-ui { display: flex; flex-direction: column; gap: 4px; width: 100%; padding: 12px; margin-bottom: 6px; border-radius: 12px; border: 1px solid var(--cz-hair); background: var(--cz-card); text-align: left; cursor: pointer; color: var(--cz-ink); font-family: var(--cz-sans); }
402
- .hv-ui .t { display: flex; align-items: baseline; gap: 8px; } .hv-ui .t b { flex: 1; font-size: var(--fs-3); font-weight: 600; } .hv-ui .t em { font-style: normal; font-size: var(--fs-1); color: var(--cz-ink3); }
403
- .hv-ui .d { font-size: var(--fs-2); color: var(--cz-ink2); }
404
- .hv-ui .flag { align-self: flex-start; padding: 1px 8px; border-radius: 999px; box-shadow: inset 0 0 0 1.5px var(--cz-blue); color: var(--cz-blueink); font-size: var(--fs-2); font-weight: 700; }
402
+ .hv-ui .t { display: flex; align-items: baseline; gap: 8px; } .hv-ui .t b { flex: 1; font-size: var(--fs-row); font-weight: var(--fw-strong); line-height: var(--lh-row); } .hv-ui .t em { font-style: normal; font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
403
+ .hv-ui .d { font-size: var(--fs-meta); color: var(--cz-ink2); line-height: var(--lh-meta); }
404
+ .hv-ui .flag { align-self: flex-start; padding: 1px 8px; border-radius: 999px; box-shadow: inset 0 0 0 1.5px var(--cz-blue); color: var(--cz-blueink); font-size: var(--fs-label); font-weight: var(--fw-strong); line-height: var(--lh-label); }
405
405
  .hv-doc { line-height: 1.6; }
406
- .hx { padding: 16px 20px 24px; display: flex; flex-direction: column; gap: 12px; font-size: var(--fs-3); }
407
- .hx-wait, .hv .hx-wait { margin: 0; display: inline-flex; align-self: flex-start; align-items: center; gap: 6px; padding: 3px 10px; border-radius: 999px; background: var(--cz-well); color: var(--cz-ink3); font-size: var(--fs-1); font-weight: 700; }
406
+ .hx { padding: 16px 20px 24px; display: flex; flex-direction: column; gap: 12px; font-size: var(--fs-body); line-height: var(--lh-body); }
407
+ .hx-wait, .hv .hx-wait { margin: 0; display: inline-flex; align-self: flex-start; align-items: center; gap: 6px; padding: 3px 10px; border-radius: 999px; background: var(--cz-well); color: var(--cz-ink3); font-size: var(--fs-badge); font-weight: var(--fw-strong); line-height: var(--lh-badge); }
408
408
  .hx-wait i { width: 6px; height: 6px; border-radius: 50%; background: var(--cz-dot-q); }
409
- .hx-sec h4 { margin: 4px 0 6px; font-size: var(--fs-3); }
409
+ .hx-sec h4 { margin: 4px 0 6px; font-size: var(--fs-body); line-height: var(--lh-body); }
410
410
  .hx-row { display: flex; align-items: center; gap: 8px; min-height: 44px; border-bottom: 1px solid var(--cz-hair); }
411
411
  .hx-t { flex: 1; min-width: 0; display: flex; flex-direction: column; }
412
- .hx-t em { font-style: normal; font-size: var(--fs-2); color: var(--cz-ink3); }
413
- .hm-iss { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; padding: 10px 12px; margin: 4px 0 8px; border-radius: 16px; background: var(--cz-well); font-size: var(--fs-2); color: var(--cz-ink2); } /* a draft's Issue it bar */
412
+ .hx-t em { font-style: normal; font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
413
+ .hm-iss { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; padding: 10px 12px; margin: 4px 0 8px; border-radius: 16px; background: var(--cz-well); font-size: var(--fs-meta); color: var(--cz-ink2); line-height: var(--lh-meta); } /* a draft's Issue it bar */
414
414
  .hm-iss span { flex: 1; min-width: 180px; }
415
415
  .hm-iss.done { color: var(--cz-ink3); }
416
- .hm-md { font-size: var(--fs-3); line-height: 1.55; color: var(--cz-ink); overflow-wrap: anywhere; }
417
- .hm-md h1, .hm-md h2, .hm-md h3 { font-size: var(--fs-3); margin: 12px 0 4px; }
416
+ .hm-md { font-size: var(--fs-body); line-height: 1.55; color: var(--cz-ink); overflow-wrap: anywhere; }
417
+ .hm-md h1, .hm-md h2, .hm-md h3 { font-size: var(--fs-body); margin: 12px 0 4px; line-height: var(--lh-body); }
418
418
  /* a table Claude wrote (chat-md.js .mdtab): Home does not load premium.css, so the chat's tables had no rules, padding or edge (PM, 2026-10-27) */
419
419
  :is(.hm-md, .hm-ab .md) .mdtab { margin: 4px 0 12px; overflow-x: auto; border: 1px solid var(--cz-hair); border-radius: 12px; }
420
- :is(.hm-md, .hm-ab .md) .mdtab table { border-collapse: collapse; width: 100%; font-size: var(--fs-3); }
420
+ :is(.hm-md, .hm-ab .md) .mdtab table { border-collapse: collapse; width: 100%; font-size: var(--fs-body); line-height: var(--lh-body); }
421
421
  :is(.hm-md, .hm-ab .md) .mdtab th, :is(.hm-md, .hm-ab .md) .mdtab td { padding: 7px 10px; text-align: left; vertical-align: top; border-bottom: 1px solid var(--cz-hair); overflow-wrap: normal; }
422
- :is(.hm-md, .hm-ab .md) .mdtab th { font-weight: 600; background: var(--cz-well); }
422
+ :is(.hm-md, .hm-ab .md) .mdtab th { font-weight: var(--fw-strong); background: var(--cz-well); }
423
423
  :is(.hm-md, .hm-ab .md) .mdtab tr:last-child td { border-bottom: 0; }
424
424
  :is(.hm-md, .hm-ab .md) .mdtab .al-c { text-align: center; }
425
425
  :is(.hm-md, .hm-ab .md) .mdtab .al-r { text-align: right; }
426
- .hx-t small { font-size: var(--fs-2); color: var(--cz-ink3); overflow-wrap: anywhere; } /* a linked document's address, as text */
427
- .hv-why select { font: inherit; font-size: var(--fs-2); color: var(--cz-ink); padding: 0 10px; height: 36px; border-radius: 12px; border: 1px solid var(--cz-hair); background: var(--cz-card); box-sizing: border-box; }
428
- .hx-b { height: 32px; padding: 0 12px; border-radius: 999px; border: 1px solid var(--cz-hair); background: var(--cz-card); color: var(--cz-ink); font-size: var(--fs-2); cursor: pointer; font-family: var(--cz-sans); }
429
- .hx-b.pri { background: var(--cz-solid); color: var(--cz-onsolid); border-color: transparent; font-weight: 700; }
426
+ .hx-t small { font-size: var(--fs-meta); color: var(--cz-ink3); overflow-wrap: anywhere; line-height: var(--lh-meta); } /* a linked document's address, as text */
427
+ .hv-why select { font: inherit; font-size: var(--fs-meta); color: var(--cz-ink); padding: 0 10px; height: 36px; border-radius: 12px; border: 1px solid var(--cz-hair); background: var(--cz-card); box-sizing: border-box; line-height: var(--lh-meta); }
428
+ .hx-b { height: 32px; padding: 0 12px; border-radius: 999px; border: 1px solid var(--cz-hair); background: var(--cz-card); color: var(--cz-ink); font-size: var(--fs-meta); cursor: pointer; font-family: var(--cz-sans); line-height: var(--lh-meta); }
429
+ .hx-b.pri { background: var(--cz-solid); color: var(--cz-onsolid); border-color: transparent; font-weight: var(--fw-strong); }
430
430
  .hx-b:disabled { opacity: .5; cursor: not-allowed; }
431
- .hx-sw { height: 28px; min-width: 48px; border-radius: 999px; border: 0; background: var(--cz-well2); color: var(--cz-ink3); font-size: var(--fs-2); font-weight: 700; cursor: pointer; }
431
+ .hx-sw { height: 28px; min-width: 48px; border-radius: 999px; border: 0; background: var(--cz-well2); color: var(--cz-ink3); font-size: var(--fs-label); font-weight: var(--fw-strong); cursor: pointer; line-height: var(--lh-label); }
432
432
  .hx-sw[aria-checked="true"] { background: var(--cz-bluebg); color: var(--cz-blueink); }
433
- .hx-n { margin: 0; font-size: var(--fs-2); color: var(--cz-ink3); }
433
+ .hx-n { margin: 0; font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
434
434
  .hx-h.warn, .hx-h.bad { color: var(--cz-late); }
435
435
  .hx-add { display: flex; gap: 8px; margin-top: 8px; }
436
- .hx-add input, .hx-q input { flex: 1; height: 36px; padding: 0 12px; border-radius: 12px; border: 1px solid var(--cz-hair); background: var(--cz-card); font: inherit; font-size: var(--fs-3); color: var(--cz-ink); box-sizing: border-box; }
436
+ .hx-add input, .hx-q input { flex: 1; height: 36px; padding: 0 12px; border-radius: 12px; border: 1px solid var(--cz-hair); background: var(--cz-card); font: inherit; font-size: var(--fs-body); color: var(--cz-ink); box-sizing: border-box; line-height: var(--lh-body); }
437
437
  .hx-q { display: flex; }
438
438
  .hx-tabs { display: flex; flex-wrap: wrap; gap: 4px; }
439
- .hx-tabs button { height: 32px; padding: 0 12px; border-radius: 999px; border: 0; background: none; color: var(--cz-ink3); font-weight: 700; font-size: var(--fs-2); cursor: pointer; }
439
+ .hx-tabs button { height: 32px; padding: 0 12px; border-radius: 999px; border: 0; background: none; color: var(--cz-ink3); font-weight: var(--fw-strong); font-size: var(--fs-label); cursor: pointer; line-height: var(--lh-label); }
440
440
  .hx-tabs button[aria-selected="true"], .hx-tabs button[aria-pressed="true"] { background: var(--cz-well); color: var(--cz-ink); }
441
441
  .hx-top { display: flex; align-items: center; gap: 10px; }
442
442
  .hx-hit { display: flex; flex-direction: column; align-items: flex-start; gap: 1px; width: 100%; min-height: 44px; padding: 6px 10px; border: 0; border-radius: 12px; background: none; text-align: left; cursor: pointer; color: var(--cz-ink); font-family: var(--cz-sans); }
443
443
  .hx-hit:hover { background: var(--cz-well); }
444
- .hx-hit em { font-style: normal; font-size: var(--fs-2); color: var(--cz-ink3); }
445
- .hx select { height: 30px; border-radius: 10px; border: 1px solid var(--cz-hair); background: var(--cz-card); color: var(--cz-ink); font: inherit; font-size: var(--fs-2); }
444
+ .hx-hit em { font-style: normal; font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
445
+ .hx select { height: 30px; border-radius: 10px; border: 1px solid var(--cz-hair); background: var(--cz-card); color: var(--cz-ink); font: inherit; font-size: var(--fs-meta); line-height: var(--lh-meta); }
446
446
 
447
447
  /* ── a phone: the chat is the page; the list is a sheet ── */
448
448
  @media (max-width: 760px) {
449
449
  body.cz-home { overflow: auto; }
450
450
  .hm-top { display: flex; align-items: center; gap: 8px; position: sticky; top: 0; z-index: 20; padding: 16px 12px 8px 18px; background: var(--cz-ground); }
451
451
  .hm-top-t { flex: 1; min-width: 0; display: flex; align-items: baseline; gap: 10px; }
452
- .hm-top-t b { font-size: var(--fs-4); font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 55%; }
453
- .hm-top-t span { font-size: var(--fs-2); color: var(--cz-ink3); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
452
+ .hm-top-t b { font-size: var(--fs-row); font-weight: var(--fw-strong); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 55%; line-height: var(--lh-row); }
453
+ .hm-top-t span { font-size: var(--fs-meta); color: var(--cz-ink3); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; line-height: var(--lh-meta); }
454
454
  /* session names A: the top bar is back + the name; the name is a 44 px press, and the field fills the bar (XmsNames) */
455
455
  .hm-top-t:has(.hm-rn, .hm-ren) b { max-width: 100%; flex: 1; min-width: 0; display: flex; flex-direction: column; }
456
456
  .hm-top-t .hm-rn { min-height: 44px; display: flex; align-items: center; max-width: 100%; }
457
- .hm-top-t .hm-rn, .hm-top-t .hm-ren input { font-size: var(--fs-4); }
457
+ .hm-top-t .hm-rn, .hm-top-t .hm-ren input { font-size: var(--fs-field); }
458
458
  .hm-top-t .hm-ren { flex: none; height: 44px; }
459
459
  .hm-top-t .hm-ren .sv { width: 36px; height: 36px; }
460
460
  .hm-top-t span:empty { display: none; }
461
- .hm-needs { flex: none; display: inline-flex; align-items: center; gap: 8px; height: 44px; padding: 0 16px; border-radius: 999px; border: 1px solid var(--cz-hair); background: var(--cz-card); color: var(--cz-ink); font-size: var(--fs-3); font-weight: 700; cursor: pointer; font-family: var(--cz-sans); }
461
+ .hm-needs { flex: none; display: inline-flex; align-items: center; gap: 8px; height: 44px; padding: 0 16px; border-radius: 999px; border: 1px solid var(--cz-hair); background: var(--cz-card); color: var(--cz-ink); font-size: var(--fs-row); font-weight: var(--fw-strong); cursor: pointer; font-family: var(--cz-sans); line-height: var(--lh-row); }
462
462
  .hm-needs i { width: 7px; height: 7px; border-radius: 50%; background: var(--cz-dot-q); }
463
463
  .hm-needs.loud i { background: var(--cz-blue); }
464
464
  .hm-top .hm-ib { width: 44px; height: 44px; }
@@ -469,9 +469,9 @@ form.hm-box textarea { min-height: 48px; border: 0; background: none; resize: no
469
469
  .hm-chat { min-height: calc(100vh - 92px); min-height: calc(100dvh - 92px); }
470
470
  .hm-foot .hm-chip { min-height: 44px; }
471
471
  .hx-tabs button, .hx-b { height: auto; min-height: 44px; } /* the Viewer's minimal views: 44 px targets on a phone */
472
- .hm-foot textarea { font-size: var(--fs-4); } /* 16 px or more: focus does not zoom the page on a phone */
473
- .hv-why input, .hv-why select, .hv-why textarea { font-size: var(--fs-4); min-height: 44px; }
474
- .hx-row select, .hx-add input { font-size: var(--fs-4); min-height: 44px; } /* a task's status and Add a task: 44 px targets that do not zoom the page */
472
+ .hm-foot textarea { font-size: var(--fs-field); } /* 16 px or more: focus does not zoom the page on a phone */
473
+ .hv-why input, .hv-why select, .hv-why textarea { font-size: var(--fs-field); min-height: 44px; }
474
+ .hx-row select, .hx-add input { font-size: var(--fs-field); min-height: 44px; } /* a task's status and Add a task: 44 px targets that do not zoom the page */
475
475
  .hm-foot { position: sticky; bottom: 0; z-index: 5; margin: 0 -16px; padding: 8px 16px calc(12px + env(safe-area-inset-bottom)); background: var(--cz-ground); } /* the composer stays on the screen while the conversation scrolls */
476
476
  .hm-x { opacity: 1; }
477
477
  .hm-unfold, .hm-folded .hm-unfold { display: none; }
@@ -482,7 +482,7 @@ form.hm-box textarea { min-height: 48px; border: 0; background: none; resize: no
482
482
  /* the menu button sits just above the foot (the box, its bars and the hint: home-chat.js keeps --bd-hmfoot), never over a press; the log ends
483
483
  * with room for it, so the last message scrolls clear of it */
484
484
  @media (max-width: 760px) { body.cz-home .cz-fabw { bottom: calc(var(--bd-hmfoot, 232px) + 10px); } body.cz-home.hm-sheet .cz-fabw { bottom: 118px; } .hm-log { padding-bottom: 76px; } }
485
- .hv-term { margin: 0; height: 100%; box-sizing: border-box; padding: 16px 20px; overflow: auto; white-space: pre-wrap; word-break: break-word; font-family: var(--cz-mono); font-size: var(--fs-2); line-height: 1.5; color: var(--cz-ink2); background: var(--cz-well); }
485
+ .hv-term { margin: 0; height: 100%; box-sizing: border-box; padding: 16px 20px; overflow: auto; white-space: pre-wrap; word-break: break-word; font-family: var(--cz-mono); font-size: var(--fs-meta); line-height: 1.5; color: var(--cz-ink2); background: var(--cz-well); }
486
486
  .hv-xt { height: 100%; box-sizing: border-box; padding: 12px 16px; overflow: auto; background: var(--cz-well); } /* term-view.js: the session's terminal drawn by xterm.js, read only */
487
487
  .hv-xt .xterm { display: inline-block; zoom: .8; } /* xterm's 15px default drawn at 12px */
488
488
  .hv-xt .xterm-viewport { background: transparent !important; }
@@ -492,59 +492,59 @@ form.hm-box textarea { min-height: 48px; border: 0; background: none; resize: no
492
492
  .hm-chat .ctxc { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
493
493
  .hm-chat .ctxchip { display: inline-flex; align-items: center; gap: 8px; max-width: 100%; min-height: 40px; padding: 6px 12px; border-radius: 12px; border: 1px solid var(--cz-hair); background: var(--cz-card); color: var(--cz-ink); cursor: pointer; text-align: left; font-family: var(--cz-sans); }
494
494
  .hm-chat .ctxchip span { display: flex; flex-direction: column; min-width: 0; }
495
- .hm-chat .ctxchip b { font-size: var(--fs-2); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
496
- .hm-chat .ctxchip em { font-style: normal; font-size: var(--fs-1); color: var(--cz-ink3); }
495
+ .hm-chat .ctxchip b { font-size: var(--fs-meta); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; line-height: var(--lh-meta); }
496
+ .hm-chat .ctxchip em { font-style: normal; font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
497
497
  .hm-chat .ctxchip.lead { box-shadow: inset 0 0 0 1.5px var(--cz-blue); }
498
498
  .hm-chat .ctxchip svg, .hm-chat .i { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.8; flex: none; }
499
- .hm-chat .tc, .hm-chat .gcard { margin-top: 8px; padding: 12px 14px; border-radius: 16px; background: var(--cz-card); box-shadow: inset 0 0 0 1.5px var(--cz-blue); font-size: var(--fs-3); }
500
- .hm-chat .agtag, .hm-chat .askh { margin: 0 0 4px; font-size: var(--fs-1); font-weight: 700; color: var(--cz-ink3); }
499
+ .hm-chat .tc, .hm-chat .gcard { margin-top: 8px; padding: 12px 14px; border-radius: 16px; background: var(--cz-card); box-shadow: inset 0 0 0 1.5px var(--cz-blue); font-size: var(--fs-body); line-height: var(--lh-body); }
500
+ .hm-chat .agtag, .hm-chat .askh { margin: 0 0 4px; font-size: var(--fs-badge); font-weight: var(--fw-strong); color: var(--cz-ink3); line-height: var(--lh-badge); }
501
501
  .hm-chat .askq, .hm-chat .tt { margin: 0 0 6px; }
502
502
  .hm-chat .chips, .hm-chat .chatopts { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 6px; }
503
- .hm-chat .chips .chip, .hm-chat .chatopts .cta, .hm-chat .askfoot button { min-height: 34px; padding: 0 14px; border-radius: 999px; border: 1px solid var(--cz-hair); background: var(--cz-card); color: var(--cz-ink); font-size: var(--fs-2); cursor: pointer; font-family: var(--cz-sans); }
504
- .hm-chat .chips .chip[aria-pressed="true"], .hm-chat .chatopts .cta:not(.alt) { background: var(--cz-solid); color: var(--cz-onsolid); border-color: transparent; font-weight: 700; }
503
+ .hm-chat .chips .chip, .hm-chat .chatopts .cta, .hm-chat .askfoot button { min-height: 34px; padding: 0 14px; border-radius: 999px; border: 1px solid var(--cz-hair); background: var(--cz-card); color: var(--cz-ink); font-size: var(--fs-meta); cursor: pointer; font-family: var(--cz-sans); line-height: var(--lh-meta); }
504
+ .hm-chat .chips .chip[aria-pressed="true"], .hm-chat .chatopts .cta:not(.alt) { background: var(--cz-solid); color: var(--cz-onsolid); border-color: transparent; font-weight: var(--fw-strong); }
505
505
  .hm-chat .gkv { display: grid; grid-template-columns: 90px 1fr; gap: 4px 10px; margin: 6px 0; }
506
- .hm-chat .smart { display: flex; gap: 4px; } .hm-chat .smart b { width: 20px; height: 20px; border-radius: 6px; display: grid; place-items: center; font-size: var(--fs-1); background: var(--cz-well); color: var(--cz-ink3); }
506
+ .hm-chat .smart { display: flex; gap: 4px; } .hm-chat .smart b { width: 20px; height: 20px; border-radius: 6px; display: grid; place-items: center; font-size: var(--fs-meta); background: var(--cz-well); color: var(--cz-ink3); line-height: var(--lh-meta); }
507
507
  .hm-chat .smart b.y { background: var(--cz-bluebg); color: var(--cz-blueink); }
508
508
  /* the goal before Start (XcbOptions B, row 1; home-goal.js, goal-chat.js): the method line with Change, a row of dots (one per point the
509
509
  * method needs), tap answers with one recommended, the plan card with Start, Change and Cancel as icons, the editor in place, the /goal choice */
510
- :is(.hm-chat, .vwgoal) .gq, :is(.hm-chat, .vwgoal) .gplan { min-width: 0; font-size: var(--fs-3); }
510
+ :is(.hm-chat, .vwgoal) .gq, :is(.hm-chat, .vwgoal) .gplan { min-width: 0; font-size: var(--fs-body); line-height: var(--lh-body); }
511
511
  :is(.hm-chat, .vwgoal) .gmw { position: relative; display: inline-block; }
512
- :is(.hm-chat, .vwgoal) .gmeth { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; min-height: 32px; margin: 0 0 2px; padding: 0; border: 0; background: none; font: inherit; font-size: var(--fs-2); color: var(--cz-ink3); text-align: left; }
512
+ :is(.hm-chat, .vwgoal) .gmeth { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; min-height: 32px; margin: 0 0 2px; padding: 0; border: 0; background: none; font: inherit; font-size: var(--fs-meta); color: var(--cz-ink3); text-align: left; line-height: var(--lh-meta); }
513
513
  :is(.hm-chat, .vwgoal) button.gmeth { cursor: pointer; }
514
- :is(.hm-chat, .vwgoal) .gmeth b { color: var(--cz-ink); font-weight: 800; }
514
+ :is(.hm-chat, .vwgoal) .gmeth b { color: var(--cz-ink); font-weight: var(--fw-strong); }
515
515
  :is(.hm-chat, .vwgoal) .gmeth svg { color: var(--cz-blueink); }
516
516
  :is(.hm-chat, .vwgoal) .gmeth em { font-style: normal; margin-left: 4px; }
517
517
  :is(.hm-chat, .vwgoal) .gmenu { position: absolute; left: 0; top: 34px; z-index: 6; min-width: 240px; padding: 6px; border-radius: 14px; background: var(--cz-card); box-shadow: var(--cz-sheet); border: 1px solid var(--cz-hair); display: flex; flex-direction: column; }
518
518
  :is(.hm-chat, .vwgoal) .gmenu[hidden] { display: none; }
519
- :is(.hm-chat, .vwgoal) .gmenu button { display: flex; flex-direction: column; gap: 1px; min-height: 44px; padding: 6px 10px; border: 0; border-radius: 10px; background: none; color: var(--cz-ink); font: inherit; font-size: var(--fs-3); text-align: left; cursor: pointer; }
519
+ :is(.hm-chat, .vwgoal) .gmenu button { display: flex; flex-direction: column; gap: 1px; min-height: 44px; padding: 6px 10px; border: 0; border-radius: 10px; background: none; color: var(--cz-ink); font: inherit; font-size: var(--fs-body); text-align: left; cursor: pointer; line-height: var(--lh-body); }
520
520
  :is(.hm-chat, .vwgoal) .gmenu button:hover, :is(.hm-chat, .vwgoal) .gmenu button:focus-visible { background: var(--cz-well); }
521
- :is(.hm-chat, .vwgoal) .gmenu em { font-style: normal; font-size: var(--fs-2); color: var(--cz-ink3); }
521
+ :is(.hm-chat, .vwgoal) .gmenu em { font-style: normal; font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
522
522
  :is(.hm-chat, .vwgoal) .gdots { display: flex; gap: 4px; margin: 2px 0 8px; }
523
523
  :is(.hm-chat, .vwgoal) .gdots i { display: block; width: 16px; height: 5px; border-radius: 3px; background: var(--cz-ink3); opacity: .3; }
524
524
  :is(.hm-chat, .vwgoal) .gdots i.y { background: var(--cz-blueink); opacity: 1; }
525
525
  :is(.hm-chat, .vwgoal) .gchips { display: flex; flex-direction: column; gap: 6px; margin-top: 8px; }
526
- :is(.hm-chat, .vwgoal) .gchip { min-height: 44px; padding: 8px 12px; border-radius: 14px; border: 1px solid var(--cz-hair); background: var(--cz-card); color: var(--cz-ink); font: inherit; font-size: var(--fs-2); font-weight: 600; text-align: left; cursor: pointer; }
526
+ :is(.hm-chat, .vwgoal) .gchip { min-height: 44px; padding: 8px 12px; border-radius: 14px; border: 1px solid var(--cz-hair); background: var(--cz-card); color: var(--cz-ink); font: inherit; font-size: var(--fs-label); font-weight: var(--fw-strong); text-align: left; cursor: pointer; line-height: var(--lh-label); }
527
527
  :is(.hm-chat, .vwgoal) .gchip.rec { border-color: var(--cz-blue); background: var(--cz-bluebg); }
528
528
  :is(.hm-chat, .vwgoal) .gchip:active:not(:disabled) { transform: scale(.98); }
529
529
  :is(.hm-chat, .vwgoal) .gchip.on { border-color: var(--cz-blue); background: var(--cz-blue); color: var(--cz-card); }
530
530
  :is(.hm-chat, .vwgoal) .gchip.on small { color: inherit; }
531
531
  :is(.hm-chat, .vwgoal) .gchip:disabled { cursor: default; }
532
532
  :is(.hm-chat, .vwgoal) .gchip:disabled:not(.on) { opacity: .6; }
533
- :is(.hm-chat, .vwgoal) .gchip small { display: block; font-size: var(--fs-1); font-weight: 800; color: var(--cz-blueink); }
533
+ :is(.hm-chat, .vwgoal) .gchip small { display: block; font-size: var(--fs-badge); font-weight: var(--fw-strong); color: var(--cz-blueink); line-height: var(--lh-badge); }
534
534
  :is(.hm-chat, .vwgoal) .gchip small.warn { color: var(--cz-late); }
535
535
  :is(.hm-chat, .vwgoal) .gplan { margin-top: 6px; padding: 10px 12px 12px; border-radius: 16px; border: 1px solid var(--cz-hair); background: linear-gradient(180deg, var(--cz-bluebg) 0%, var(--cz-card) 60%); box-shadow: var(--cz-vlift); }
536
- :is(.hm-chat, .vwgoal) .gpt { display: block; padding: 0; border: 0; background: none; color: var(--cz-ink); font: inherit; font-size: var(--fs-3); font-weight: 800; text-align: left; cursor: pointer; }
537
- :is(.hm-chat, .vwgoal) .gplan ul { margin: 2px 0 6px; padding-left: 18px; font-size: var(--fs-3); line-height: 1.45; }
538
- :is(.hm-chat, .vwgoal) .pk2 { margin: 8px 0 0; font-size: var(--fs-2); font-weight: 700; color: var(--cz-ink3); }
539
- :is(.hm-chat, .vwgoal) .pk2 span { color: var(--cz-ink); font-weight: 600; }
536
+ :is(.hm-chat, .vwgoal) .gpt { display: block; padding: 0; border: 0; background: none; color: var(--cz-ink); font: inherit; font-size: var(--fs-row); font-weight: var(--fw-strong); text-align: left; cursor: pointer; line-height: var(--lh-row); }
537
+ :is(.hm-chat, .vwgoal) .gplan ul { margin: 2px 0 6px; padding-left: 18px; font-size: var(--fs-body); line-height: 1.45; }
538
+ :is(.hm-chat, .vwgoal) .pk2 { margin: 8px 0 0; font-size: var(--fs-label); font-weight: var(--fw-strong); color: var(--cz-ink3); line-height: var(--lh-label); }
539
+ :is(.hm-chat, .vwgoal) .pk2 span { color: var(--cz-ink); font-weight: var(--fw-strong); }
540
540
  :is(.hm-chat, .vwgoal) .pk2 em { font-style: normal; margin-left: 4px; padding: 0 5px; border-radius: 6px; color: var(--cz-late); background: var(--cz-latebg); }
541
541
  :is(.hm-chat, .vwgoal) .acts { display: flex; gap: 8px; margin-top: 10px; }
542
542
  :is(.hm-chat, .vwgoal, .gprog2) .icb { width: 44px; height: 44px; flex: none; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; border: 1px solid var(--cz-hair); background: var(--cz-card); color: var(--cz-ink2); cursor: pointer; }
543
543
  :is(.hm-chat, .vwgoal) .icb.pri { background: var(--cz-solid); border-color: var(--cz-solid); color: var(--cz-onsolid); }
544
544
  :is(.hm-chat, .vwgoal) .icb:disabled { opacity: .5; cursor: default; }
545
- :is(.hm-chat, .vwgoal) .gplan.ed .fld { flex: 1; min-width: 0; box-sizing: border-box; padding: 8px 10px; border-radius: 10px; border: 1px solid transparent; background: var(--cz-well); color: var(--cz-ink); font: inherit; font-size: var(--fs-3); line-height: 1.35; resize: none; overflow: hidden; }
545
+ :is(.hm-chat, .vwgoal) .gplan.ed .fld { flex: 1; min-width: 0; box-sizing: border-box; padding: 8px 10px; border-radius: 10px; border: 1px solid transparent; background: var(--cz-well); color: var(--cz-ink); font: inherit; font-size: var(--fs-body); line-height: 1.35; resize: none; overflow: hidden; }
546
546
  :is(.hm-chat, .vwgoal) .gplan.ed .fld:focus { outline: none; border-color: var(--cz-blue); background: var(--cz-card); box-shadow: 0 0 0 3px var(--cz-bluebg); }
547
- :is(.hm-chat, .vwgoal) .gplan.ed .fld.s { display: inline-block; flex: none; width: 13em; max-width: 100%; padding: 2px 6px; font-size: var(--fs-2); font-weight: 600; }
547
+ :is(.hm-chat, .vwgoal) .gplan.ed .fld.s { display: inline-block; flex: none; width: 13em; max-width: 100%; padding: 2px 6px; font-size: var(--fs-label); font-weight: var(--fw-strong); line-height: var(--lh-label); }
548
548
  :is(.hm-chat, .vwgoal) .gplan.ed .kv { display: flex; flex-wrap: wrap; gap: 6px 12px; }
549
549
  :is(.hm-chat, .vwgoal) .gplan.ed .kv label { display: inline-flex; align-items: center; gap: 6px; min-width: 0; }
550
550
  :is(.hm-chat, .vwgoal) .edl { list-style: none; margin: 4px 0 0; padding: 0; display: grid; gap: 6px; }
@@ -554,84 +554,84 @@ form.hm-box textarea { min-height: 48px; border: 0; background: none; resize: no
554
554
  :is(.hm-chat, .vwgoal, .gprog2) .rx { width: 36px; height: 36px; flex: none; display: inline-flex; align-items: center; justify-content: center; padding: 0; border: 0; border-radius: 50%; background: none; color: var(--cz-ink3); cursor: pointer; }
555
555
  :is(.hm-chat, .vwgoal) .addp { width: 36px; height: 36px; margin: 6px 0 0 28px; display: inline-flex; align-items: center; justify-content: center; border-radius: 50%; border: 1px dashed var(--cz-ink3); background: none; color: var(--cz-blueink); cursor: pointer; }
556
556
  .hm-chat .gchoice .askc { padding: 10px 12px 12px; border-radius: 16px; border: 1.5px solid var(--cz-blue); background: linear-gradient(180deg, var(--cz-bluebg) 0%, var(--cz-card) 70%); }
557
- .hm-chat .gchoice .askc .k { margin: 0; font-size: var(--fs-2); font-weight: 700; color: var(--cz-ink3); }
558
- .hm-chat .gchoice .askc > b { font-size: var(--fs-3); }
557
+ .hm-chat .gchoice .askc .k { margin: 0; font-size: var(--fs-label); font-weight: var(--fw-strong); color: var(--cz-ink3); line-height: var(--lh-label); }
558
+ .hm-chat .gchoice .askc > b { font-size: var(--fs-body); line-height: var(--lh-body); }
559
559
  .vwgoal .gprog2 .grow { display: flex; align-items: center; gap: 8px; }
560
560
  .vwgoal .gprog2 .grow b { flex: 1; min-width: 0; }
561
- .vwgoal .gprog2 .gpill { font-size: var(--fs-2); color: var(--cz-ink3); }
561
+ .vwgoal .gprog2 .gpill { font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
562
562
  .vwgoal .gprog2 .grow .icb { width: 36px; height: 36px; }
563
- .vwgoal .gprog { margin: 8px 0 0; font-size: var(--fs-2); color: var(--cz-ink2); }
563
+ .vwgoal .gprog { margin: 8px 0 0; font-size: var(--fs-meta); color: var(--cz-ink2); line-height: var(--lh-meta); }
564
564
  .vwgoal .gpts { list-style: none; margin: 10px 0 0; padding: 0; display: grid; gap: 6px; }
565
- .vwgoal .gpts li { display: grid; grid-template-columns: 14px 1fr auto; gap: 0 10px; align-items: center; font-size: var(--fs-3); }
566
- .vwgoal .gpts li > em { grid-column: 2; font-style: normal; font-size: var(--fs-2); color: var(--cz-ink3); }
565
+ .vwgoal .gpts li { display: grid; grid-template-columns: 14px 1fr auto; gap: 0 10px; align-items: center; font-size: var(--fs-body); line-height: var(--lh-body); }
566
+ .vwgoal .gpts li > em { grid-column: 2; font-style: normal; font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
567
567
  .vwgoal .gpts li > .rx { grid-column: 3; grid-row: 1 / span 2; }
568
568
  .vwgoal .gpts i { width: 10px; height: 10px; border-radius: 50%; box-shadow: inset 0 0 0 1.5px var(--cz-ink3); }
569
569
  .vwgoal .gpts li.m i { background: var(--cz-ok); box-shadow: none; }
570
570
  .vwgoal .gpts li.sk s { color: var(--cz-ink3); }
571
571
  .hm-chat .atrow { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 6px; }
572
- .hm-chat .atc { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border-radius: 10px; background: var(--cz-card); font-size: var(--fs-2); cursor: pointer; border: 1px solid var(--cz-hair); }
572
+ .hm-chat .atc { display: inline-flex; align-items: center; gap: 6px; padding: 4px 10px; border-radius: 10px; background: var(--cz-card); font-size: var(--fs-meta); cursor: pointer; border: 1px solid var(--cz-hair); line-height: var(--lh-meta); }
573
573
  /* batch 18 item 13: the chip's picture is a 36 px thumbnail (premium.css is not loaded on Home, so a pasted screenshot drew at full size out of
574
574
  the bubble); the chip opens the file beside the conversation */
575
575
  .hm-chat .atc { max-width: min(260px, 100%); min-width: 0; }
576
576
  .atc .ath { width: 36px; height: 36px; border-radius: 8px; flex: none; object-fit: cover; background: var(--cz-well); display: block; }
577
- .atc .atx { display: grid; place-items: center; font-size: var(--fs-1); font-weight: 700; letter-spacing: .04em; color: var(--cz-ink3); }
577
+ .atc .atx { display: grid; place-items: center; font-size: var(--fs-badge); font-weight: var(--fw-strong); letter-spacing: .04em; color: var(--cz-ink3); line-height: var(--lh-badge); }
578
578
  .atc .atn { display: grid; min-width: 0; text-align: left; }
579
- .atc .atn b { font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
580
- .atc .atn em { font-style: normal; font-size: var(--fs-1); color: var(--cz-ink3); }
581
- .hm-peek { display: flex; align-items: center; gap: 10px; min-height: 40px; margin-top: 8px; padding: 0 14px; border: 0; border-radius: 12px; background: var(--cz-bluebg); color: var(--cz-ink); font-size: var(--fs-2); cursor: pointer; text-align: left; }
579
+ .atc .atn b { font-weight: var(--fw-strong); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
580
+ .atc .atn em { font-style: normal; font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
581
+ .hm-peek { display: flex; align-items: center; gap: 10px; min-height: 40px; margin-top: 8px; padding: 0 14px; border: 0; border-radius: 12px; background: var(--cz-bluebg); color: var(--cz-ink); font-size: var(--fs-meta); cursor: pointer; text-align: left; line-height: var(--lh-meta); }
582
582
  .hm-peek[hidden] { display: none; }
583
583
  .hm-peek span { flex: 1; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
584
- .hm-peek em { font-style: normal; font-weight: 700; color: var(--cz-blueink); }
584
+ .hm-peek em { font-style: normal; font-weight: var(--fw-strong); color: var(--cz-blueink); }
585
585
  .hm-slash { display: flex; flex-direction: column; max-height: min(320px, 45vh); overflow-y: auto; overscroll-behavior: contain; padding: 6px; border-radius: 16px; background: var(--cz-card); box-shadow: var(--cz-sheet); border: 1px solid var(--cz-hair); }
586
586
  .hm-slash[hidden] { display: none; }
587
587
  .hm-slash button { display: flex; flex-direction: column; align-items: stretch; gap: 1px; min-height: 40px; flex-shrink: 0; padding: 6px 10px; border: 0; border-radius: 10px; background: none; cursor: pointer; text-align: left; color: var(--cz-ink); font-family: var(--cz-sans); }
588
588
  .hm-slash button[aria-selected="true"], .hm-slash button:hover { background: var(--cz-well); }
589
- .hm-slash code { font-family: var(--cz-mono); font-size: var(--fs-2); color: var(--cz-blueink); }
590
- .hm-slash em { font-style: normal; font-size: var(--fs-2); color: var(--cz-ink3); display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; }
589
+ .hm-slash code { font-family: var(--cz-mono); font-size: var(--fs-meta); color: var(--cz-blueink); line-height: var(--lh-meta); }
590
+ .hm-slash em { font-style: normal; font-size: var(--fs-meta); color: var(--cz-ink3); display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; line-height: var(--lh-meta); }
591
591
  .hm-slash .l1 { display: flex; align-items: baseline; gap: 8px; min-width: 0; }
592
- .hm-slash .l1 b { font-size: var(--fs-3); font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
592
+ .hm-slash .l1 b { font-size: var(--fs-row); font-weight: var(--fw-strong); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; line-height: var(--lh-row); }
593
593
  .hm-scope + .hm-files { margin-bottom: 6px; }
594
594
  /* the phone moment card (home-phone-card.js) at the top of the phone's sheet; not in the Agreed design, so marked Waiting for design */
595
595
  .hm-phc { display: grid; gap: 6px; margin: 2px 2px 14px; padding: 14px 16px; border-radius: 18px; background: var(--cz-card); box-shadow: inset 3px 0 0 var(--cz-blue), var(--cz-float); color: var(--cz-ink); }
596
596
  .hm-phc[hidden] { display: none; }
597
- .hm-phc .label { font-size: var(--fs-1); font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--cz-ink3); }
598
- .hm-phc .phbig { font-size: var(--fs-5); font-weight: 700; line-height: 1.25; color: var(--cz-ink); }
599
- .hm-phc .phl { margin: 0; font-size: var(--fs-3); color: var(--cz-ink2); }
600
- .hm-phc .phs { margin: 0; font-size: var(--fs-2); color: var(--cz-ink2); }
597
+ .hm-phc .label { font-size: var(--fs-badge); font-weight: var(--fw-strong); letter-spacing: .04em; text-transform: uppercase; color: var(--cz-ink3); line-height: var(--lh-badge); }
598
+ .hm-phc .phbig { font-size: var(--fs-display); font-weight: var(--fw-strong); line-height: 1.25; color: var(--cz-ink); }
599
+ .hm-phc .phl { margin: 0; font-size: var(--fs-body); color: var(--cz-ink2); line-height: var(--lh-body); }
600
+ .hm-phc .phs { margin: 0; font-size: var(--fs-meta); color: var(--cz-ink2); line-height: var(--lh-meta); }
601
601
  .hm-phc .phfit { display: grid; gap: 4px; padding: 10px 12px; border-radius: 14px; background: var(--cz-well); }
602
- .hm-phc .phtt { font-size: var(--fs-3); font-weight: 600; }
602
+ .hm-phc .phtt { font-size: var(--fs-row); font-weight: var(--fw-strong); line-height: var(--lh-row); }
603
603
  .hm-phc .phacts { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 4px; }
604
- .hm-phc .cta { min-height: 44px; padding: 0 16px; border-radius: 14px; border: 0; background: var(--cz-solid); color: var(--cz-onsolid); font: 600 var(--fs-3) var(--cz-sans); cursor: pointer; }
604
+ .hm-phc .cta { min-height: 44px; padding: 0 16px; border-radius: 14px; border: 0; background: var(--cz-solid); color: var(--cz-onsolid); font: var(--fw-strong) var(--fs-row)/var(--lh-row) var(--cz-sans); cursor: pointer; }
605
605
  .hm-phc .cta.alt { background: var(--cz-well2); color: var(--cz-ink); }
606
- .hm-phc .phok { display: flex; align-items: center; gap: 6px; margin: 0; font-size: var(--fs-3); color: var(--cz-ok); }
606
+ .hm-phc .phok { display: flex; align-items: center; gap: 6px; margin: 0; font-size: var(--fs-body); color: var(--cz-ok); line-height: var(--lh-body); }
607
607
  .hm-phc .phok svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2.2; }
608
- .hm-phc .pherr { margin: 0; font-size: var(--fs-3); color: var(--cz-red); }
608
+ .hm-phc .pherr { margin: 0; font-size: var(--fs-body); color: var(--cz-red); line-height: var(--lh-body); }
609
609
  .hm-phc .phstats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
610
610
  .hm-phc .phstats div { display: grid; padding: 8px 10px; border-radius: 12px; background: var(--cz-well); }
611
- .hm-phc .phstats b { font-size: var(--fs-5); }
612
- .hm-phc .phstats span { font-size: var(--fs-2); color: var(--cz-ink3); }
611
+ .hm-phc .phstats b { font-size: var(--fs-display); line-height: var(--lh-display); }
612
+ .hm-phc .phstats span { font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
613
613
  /* the evening recap's What moved: plain rows, a quiet kind word, the text clamped to two lines, where it came from under it */
614
614
  .hm-phc .phmv { display: grid; gap: 8px; margin-top: 4px; }
615
- .hm-phc .phmv p { display: grid; grid-template-columns: 56px 1fr; column-gap: 8px; margin: 0; font-size: var(--fs-3); line-height: 1.4; color: var(--cz-ink); }
616
- .hm-phc .phmv p b { font-size: var(--fs-2); font-weight: 700; color: var(--cz-ink3); }
615
+ .hm-phc .phmv p { display: grid; grid-template-columns: 56px 1fr; column-gap: 8px; margin: 0; font-size: var(--fs-body); line-height: 1.4; color: var(--cz-ink); }
616
+ .hm-phc .phmv p b { font-size: var(--fs-label); font-weight: var(--fw-strong); color: var(--cz-ink3); line-height: var(--lh-label); }
617
617
  .hm-phc .phmv p span { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
618
- .hm-phc .phmv p em { grid-column: 2; font-style: normal; font-size: var(--fs-2); color: var(--cz-ink3); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
618
+ .hm-phc .phmv p em { grid-column: 2; font-style: normal; font-size: var(--fs-meta); color: var(--cz-ink3); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; line-height: var(--lh-meta); }
619
619
  .hm-phc .phq { color: var(--cz-ink3); }
620
620
 
621
621
  /* the first-run card after an import (premium-first.js): plain, Waiting for design */
622
622
  .hm-first { display: grid; gap: 8px; margin: 2px 2px 14px; padding: 14px 16px; border-radius: 18px; background: var(--cz-card); box-shadow: var(--cz-float); color: var(--cz-ink); }
623
- .hm-first h2 { margin: 0; font-size: var(--fs-3); }
624
- .hm-first h4 { margin: 4px 0 0; font-size: var(--fs-3); }
623
+ .hm-first h2 { margin: 0; font-size: var(--fs-body); line-height: var(--lh-body); }
624
+ .hm-first h4 { margin: 4px 0 0; font-size: var(--fs-body); line-height: var(--lh-body); }
625
625
  .hm-first-l { margin: 0; padding: 0; list-style: none; }
626
626
  .hm-first .hx-t em.bad { color: var(--cz-late); }
627
627
  /* a Needs-you row from the morning brief (home-app.js openNeedViewer): why now, and the item's own link */
628
- .hv-intro { margin: 0; font-size: var(--fs-2); line-height: 1.5; color: var(--cz-ink2); }
628
+ .hv-intro { margin: 0; font-size: var(--fs-meta); line-height: 1.5; color: var(--cz-ink2); }
629
629
  .hv-intro b { margin-right: 4px; color: var(--cz-ink); }
630
630
  .hv-link { display: inline-flex; align-items: center; min-height: 44px; height: auto; text-decoration: none; box-sizing: border-box; }
631
631
  /* Around you (home-around.js): plain, Waiting for design */
632
632
  .ar { display: grid; gap: 10px; }
633
633
  .ar-hd { display: flex; align-items: center; gap: 8px; justify-content: space-between; }
634
- .ar-hd small { font-size: var(--fs-2); color: var(--cz-ink3); }
634
+ .ar-hd small { font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
635
635
  .ar-rows { display: grid; gap: 2px; }
636
636
  .ar-row { display: flex; align-items: center; gap: 10px; width: 100%; min-height: 52px; padding: 8px 10px; border: 0; border-radius: 14px; background: none; color: var(--cz-ink); text-align: left; cursor: pointer; font-family: var(--cz-sans); }
637
637
  .ar-row:hover { background: var(--cz-well); }
@@ -639,121 +639,121 @@ form.hm-box textarea { min-height: 48px; border: 0; background: none; resize: no
639
639
  .ar-ic { width: 30px; height: 30px; border-radius: 10px; display: grid; place-items: center; background: var(--cz-well); color: var(--cz-ink2); flex: none; }
640
640
  .ar .i { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
641
641
  .ar .wtx { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
642
- .ar .wtit { font-size: var(--fs-3); font-weight: 700; }
643
- .ar .ws { font-size: var(--fs-2); color: var(--cz-ink3); }
644
- .ar .due { display: inline-block; min-width: 22px; padding: 1px 8px; border-radius: 999px; background: var(--cz-bluebg); color: var(--cz-blueink); font-size: var(--fs-2); font-weight: 700; text-align: center; }
642
+ .ar .wtit { font-size: var(--fs-row); font-weight: var(--fw-strong); line-height: var(--lh-row); }
643
+ .ar .ws { font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
644
+ .ar .due { display: inline-block; min-width: 22px; padding: 1px 8px; border-radius: 999px; background: var(--cz-bluebg); color: var(--cz-blueink); font-size: var(--fs-label); font-weight: var(--fw-strong); text-align: center; line-height: var(--lh-label); }
645
645
  .ar .due.od { background: var(--cz-well2); color: var(--cz-late); }
646
646
  .ar .bd-bar { display: flex; height: 6px; border-radius: 999px; overflow: hidden; background: var(--cz-well2); margin-top: 4px; }
647
647
  .ar .bd-bar i { display: block; height: 100%; width: var(--bd-w, 0); }
648
648
  .ar .bd-bar i.bad, .ar .bd-leg i.bad { background: var(--cz-dot-late); } .ar .bd-bar i.warn, .ar .bd-leg i.warn { background: var(--cz-late); }
649
649
  .ar .bd-bar i.ok, .ar .bd-leg i.ok { background: var(--cz-dot-ok); } .ar .bd-bar i.none, .ar .bd-leg i.none { background: var(--cz-ink3); }
650
- .ar .bd-leg { display: flex; flex-wrap: wrap; gap: 12px; font-size: var(--fs-2); color: var(--cz-ink2); }
650
+ .ar .bd-leg { display: flex; flex-wrap: wrap; gap: 12px; font-size: var(--fs-meta); color: var(--cz-ink2); line-height: var(--lh-meta); }
651
651
  .ar .bd-leg i { display: inline-block; width: 8px; height: 8px; border-radius: 50%; margin-right: 6px; }
652
- .ar-prep { display: flex; align-items: center; gap: 12px; padding: 8px 10px; border-radius: 14px; background: var(--cz-well); font-size: var(--fs-2); color: var(--cz-ink2); }
652
+ .ar-prep { display: flex; align-items: center; gap: 12px; padding: 8px 10px; border-radius: 14px; background: var(--cz-well); font-size: var(--fs-meta); color: var(--cz-ink2); line-height: var(--lh-meta); }
653
653
  .ar-prep[hidden] { display: none; }
654
654
  .ar-prep div { display: flex; flex-direction: column; } .ar-prep b { color: var(--cz-ink); }
655
- .ar-prep .rb { stroke: var(--cz-well2); } .ar-prep .rg { stroke: var(--cz-blue); } .ar-prep .rt { font-size: var(--fs-1); font-weight: 700; fill: var(--cz-ink); }
655
+ .ar-prep .rb { stroke: var(--cz-well2); } .ar-prep .rg { stroke: var(--cz-blue); } .ar-prep .rt { font-size: var(--fs-badge); font-weight: var(--fw-strong); fill: var(--cz-ink); line-height: var(--lh-badge); }
656
656
  .ar .bd-list { display: grid; gap: 8px; }
657
657
  .ar .bd-it { display: grid; gap: 6px; padding: 12px; border-radius: 14px; background: var(--cz-card); border: 1px solid var(--cz-hair); }
658
658
  .ar .bd-it.decided { opacity: .7; }
659
659
  .ar .pcard { cursor: pointer; } .ar .pcard.on { border-color: var(--cz-blue); }
660
660
  .ar .bd-h { display: flex; flex-wrap: wrap; gap: 6px; margin: 0; }
661
- .ar .bd-chip { padding: 2px 8px; border-radius: 999px; background: var(--cz-well); color: var(--cz-ink2); font-size: var(--fs-1); }
661
+ .ar .bd-chip { padding: 2px 8px; border-radius: 999px; background: var(--cz-well); color: var(--cz-ink2); font-size: var(--fs-meta); line-height: var(--lh-meta); }
662
662
  .ar .bd-chip.warn, .ar .bd-chip.hot { color: var(--cz-late); }
663
- .ar .bd-t { font-size: var(--fs-3); font-weight: 700; color: var(--cz-ink); background: none; border: 0; padding: 0; text-align: left; font-family: var(--cz-sans); }
664
- .ar .bd-q, .ar .bd-why, .ar .pc-line { margin: 0; font-size: var(--fs-2); color: var(--cz-ink2); }
665
- .ar .pc-more { border: 0; background: none; color: var(--cz-blueink); font-size: var(--fs-2); cursor: pointer; }
666
- .ar .pc-k { font-size: var(--fs-1); color: var(--cz-ink3); }
663
+ .ar .bd-t { font-size: var(--fs-row); font-weight: var(--fw-strong); color: var(--cz-ink); background: none; border: 0; padding: 0; text-align: left; font-family: var(--cz-sans); line-height: var(--lh-row); }
664
+ .ar .bd-q, .ar .bd-why, .ar .pc-line { margin: 0; font-size: var(--fs-meta); color: var(--cz-ink2); line-height: var(--lh-meta); }
665
+ .ar .pc-more { border: 0; background: none; color: var(--cz-blueink); font-size: var(--fs-meta); cursor: pointer; line-height: var(--lh-meta); }
666
+ .ar .pc-k { font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
667
667
  .ar .bd-acts { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
668
668
  .ar a.hx-b { display: inline-flex; align-items: center; text-decoration: none; box-sizing: border-box; }
669
- .ar .bd-done { display: flex; gap: 6px; align-items: center; margin: 0; font-size: var(--fs-2); color: var(--cz-ink2); }
670
- .ar .nodef.err { margin: 0; font-size: var(--fs-2); color: var(--cz-late); }
671
- .ar .empty3 { display: flex; gap: 6px; align-items: center; margin: 0; font-size: var(--fs-2); color: var(--cz-ink2); }
669
+ .ar .bd-done { display: flex; gap: 6px; align-items: center; margin: 0; font-size: var(--fs-meta); color: var(--cz-ink2); line-height: var(--lh-meta); }
670
+ .ar .nodef.err { margin: 0; font-size: var(--fs-meta); color: var(--cz-late); line-height: var(--lh-meta); }
671
+ .ar .empty3 { display: flex; gap: 6px; align-items: center; margin: 0; font-size: var(--fs-meta); color: var(--cz-ink2); line-height: var(--lh-meta); }
672
672
  .ar .bd-src { display: flex; gap: 8px; align-items: center; padding: 8px 0; border-bottom: 1px solid var(--cz-hair); }
673
- .ar .bd-src > span { flex: 1; min-width: 0; display: flex; flex-direction: column; font-size: var(--fs-2); } .ar .bd-src small { color: var(--cz-ink3); }
673
+ .ar .bd-src > span { flex: 1; min-width: 0; display: flex; flex-direction: column; font-size: var(--fs-meta); line-height: var(--lh-meta); } .ar .bd-src small { color: var(--cz-ink3); }
674
674
  .ar .bd-top { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; justify-content: space-between; margin: 0; }
675
- .ar .bd-l { font-size: var(--fs-2); color: var(--cz-ink2); }
676
- .ar textarea, .ar input[type="text"] { width: 100%; box-sizing: border-box; padding: 8px 10px; border-radius: 12px; border: 1px solid var(--cz-hair); background: var(--cz-card); color: var(--cz-ink); font: inherit; font-size: var(--fs-3); }
675
+ .ar .bd-l { font-size: var(--fs-meta); color: var(--cz-ink2); line-height: var(--lh-meta); }
676
+ .ar textarea, .ar input[type="text"] { width: 100%; box-sizing: border-box; padding: 8px 10px; border-radius: 12px; border: 1px solid var(--cz-hair); background: var(--cz-card); color: var(--cz-ink); font: inherit; font-size: var(--fs-body); line-height: var(--lh-body); }
677
677
  .ar .pc-bar { position: sticky; bottom: 0; display: grid; gap: 6px; padding: 10px 0 4px; background: var(--cz-card); border-top: 1px solid var(--cz-hair); }
678
678
  .ar .pc-row { display: flex; gap: 8px; justify-content: flex-end; flex-wrap: wrap; }
679
- .ar .pc-fine { margin: 0; font-size: var(--fs-1); color: var(--cz-ink3); text-align: right; }
680
- .ar .pc-i { font-style: normal; font-weight: 700; margin-right: 6px; }
681
- .ar details.bd-more summary { cursor: pointer; font-size: var(--fs-2); font-weight: 700; min-height: 32px; }
679
+ .ar .pc-fine { margin: 0; font-size: var(--fs-meta); color: var(--cz-ink3); text-align: right; line-height: var(--lh-meta); }
680
+ .ar .pc-i { font-style: normal; font-weight: var(--fw-strong); margin-right: 6px; }
681
+ .ar details.bd-more summary { cursor: pointer; font-size: var(--fs-label); font-weight: var(--fw-strong); min-height: 32px; line-height: var(--lh-label); }
682
682
  @media (max-width: 760px) { .ar .hx-b, .ar .pc-more, .ar .pc-pick, .ar .hx-tabs button, .ar details.bd-more summary { min-height: 44px; } }
683
683
  #srcHealth .sdot { display: inline-block; width: 8px; height: 8px; border-radius: 50%; margin-right: 6px; background: var(--cz-dot-ok); }
684
684
  #srcHealth .sdot.warn { background: var(--cz-late); } #srcHealth .sdot.bad { background: var(--cz-dot-late); }
685
685
  /* My work in the Viewer (home-work.js): a plain minimal card until the Agreed design draws it. 44 px targets in the item and Focus views. */
686
686
  .hm-toast.act.on { pointer-events: auto; }
687
- .hm-toast .undo { margin-left: 8px; min-height: 32px; padding: 0 10px; border-radius: 999px; border: 0; background: var(--cz-card); color: var(--cz-ink); font: inherit; font-weight: 700; cursor: pointer; }
687
+ .hm-toast .undo { margin-left: 8px; min-height: 32px; padding: 0 10px; border-radius: 999px; border: 0; background: var(--cz-card); color: var(--cz-ink); font: inherit; font-weight: var(--fw-strong); cursor: pointer; }
688
688
  .mw-head { display: flex; justify-content: flex-end; margin: 4px 0; }
689
- .mw-g { margin: 12px 0 2px; font-size: var(--fs-2); color: var(--cz-ink3); }
689
+ .mw-g { margin: 12px 0 2px; font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
690
690
  .wrw { position: relative; overflow: hidden; }
691
691
  .wrow { position: relative; background: var(--cz-card); }
692
692
  .wrow.xdr { transform: translateX(var(--wl-dx, 0)); }
693
693
  .wrh { border: 0; background: none; padding: 6px 0; text-align: left; color: var(--cz-ink); font: inherit; cursor: pointer; min-height: 44px; }
694
694
  .wrh:focus-visible, .wrh:focus { outline: 2px solid var(--cz-blue); outline-offset: -2px; }
695
- .wrh .xfc { margin-left: 6px; padding: 1px 6px; border-radius: 999px; background: var(--cz-bluebg); color: var(--cz-blueink); font-size: var(--fs-1); font-style: normal; font-weight: 700; }
695
+ .wrh .xfc { margin-left: 6px; padding: 1px 6px; border-radius: 999px; background: var(--cz-bluebg); color: var(--cz-blueink); font-size: var(--fs-badge); font-style: normal; font-weight: var(--fw-strong); line-height: var(--lh-badge); }
696
696
  .wrh .xfc.sug { background: var(--cz-well); color: var(--cz-ink3); }
697
- .xrv { position: absolute; inset: 0; display: flex; align-items: center; gap: 6px; padding: 0 14px; background: var(--cz-well); color: var(--cz-ink); font-size: var(--fs-2); font-weight: 700; opacity: var(--wl-d, 0); }
697
+ .xrv { position: absolute; inset: 0; display: flex; align-items: center; gap: 6px; padding: 0 14px; background: var(--cz-well); color: var(--cz-ink); font-size: var(--fs-label); font-weight: var(--fw-strong); opacity: var(--wl-d, 0); line-height: var(--lh-label); }
698
698
  .xrv.l { justify-content: flex-end; }
699
699
  .xrv .i { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2; }
700
700
  .xfq:focus-visible, .xfq:focus { outline: 2px solid var(--cz-blue); outline-offset: 2px; }
701
701
  .xfq em { font-style: normal; color: var(--cz-ink3); }
702
702
  .mw-sub { display: flex; flex-direction: column; gap: 10px; }
703
703
  .mw-sub .hx-b, .mw-sub .mw-in, .xfq { min-height: 44px; height: auto; }
704
- .mw-t { margin: 0; font-size: var(--fs-4); }
705
- .mw-say { margin: 0; font-size: var(--fs-2); color: var(--cz-ink2); }
704
+ .mw-t { margin: 0; font-size: var(--fs-body); line-height: var(--lh-body); }
705
+ .mw-say { margin: 0; font-size: var(--fs-meta); color: var(--cz-ink2); line-height: var(--lh-meta); }
706
706
  .mw-sheet { display: flex; flex-direction: column; gap: 8px; padding: 10px; border: 1px solid var(--cz-hair); border-radius: 14px; background: var(--cz-well2); }
707
707
  .mw-sheet[hidden] { display: none; }
708
708
  .ffd { display: flex; flex-direction: column; align-items: flex-start; text-align: left; border-radius: 12px; padding: 6px 12px; }
709
- .ffd small { font-size: var(--fs-1); color: var(--cz-ink3); }
710
- .ffd em { font-style: normal; font-weight: 400; color: var(--cz-ink3); }
709
+ .ffd small { font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
710
+ .ffd em { font-style: normal; font-weight: var(--fw-regular); color: var(--cz-ink3); }
711
711
  .xpan { display: flex; flex-direction: column; gap: 8px; padding: 4px 0 8px 8px; border-left: 2px solid var(--cz-hair); }
712
712
  .xpan .fopt { text-align: left; border-radius: 12px; }
713
713
  .xpan .fopt small { color: var(--cz-ink3); }
714
- .mw-f { display: flex; flex-direction: column; gap: 4px; font-size: var(--fs-2); color: var(--cz-ink3); }
715
- .mw-in, .mw-ta { width: 100%; box-sizing: border-box; padding: 0 12px; border-radius: 12px; border: 1px solid var(--cz-hair); background: var(--cz-card); color: var(--cz-ink); font: inherit; font-size: var(--fs-3); }
714
+ .mw-f { display: flex; flex-direction: column; gap: 4px; font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
715
+ .mw-in, .mw-ta { width: 100%; box-sizing: border-box; padding: 0 12px; border-radius: 12px; border: 1px solid var(--cz-hair); background: var(--cz-card); color: var(--cz-ink); font: inherit; font-size: var(--fs-body); line-height: var(--lh-body); }
716
716
  .mw-ta { padding: 8px 12px; min-height: 44px; }
717
717
  .mw-sub .hx-add { flex-wrap: wrap; }
718
718
  .mw-sub .hx-add .mw-in { flex: 1 1 180px; width: auto; }
719
719
  .mw-sub .hx-top { display: flex; flex-wrap: wrap; gap: 6px; }
720
720
  .mw-sub .hx-b[aria-pressed="true"], .mw-sub .xco[aria-checked="true"] { background: var(--cz-well); border-color: var(--cz-ink3); }
721
721
  .xsteps { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; }
722
- .xsteps li { display: flex; flex-direction: column; gap: 4px; font-size: var(--fs-3); }
722
+ .xsteps li { display: flex; flex-direction: column; gap: 4px; font-size: var(--fs-body); line-height: var(--lh-body); }
723
723
  .xch { display: flex; flex-direction: column; gap: 6px; }
724
724
  .xco { display: flex; flex-direction: column; align-items: flex-start; text-align: left; border-radius: 12px; padding: 6px 12px; }
725
- .xco em { font-style: normal; font-size: var(--fs-1); color: var(--cz-blueink); }
726
- .xco span { font-size: var(--fs-2); color: var(--cz-ink3); }
725
+ .xco em { font-style: normal; font-size: var(--fs-meta); color: var(--cz-blueink); line-height: var(--lh-meta); }
726
+ .xco span { font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
727
727
  .agblk, .xcon, .agpane, .mw-src, .mw-rec, .mw-fc { display: flex; flex-direction: column; gap: 8px; padding: 10px 12px; border: 1px solid var(--cz-hair); border-radius: 14px; background: var(--cz-card); }
728
- .agblk h4, .mw-sub h4 { margin: 0; font-size: var(--fs-3); }
729
- .xq { margin: 0; padding: 8px 10px; border-radius: 10px; background: var(--cz-well); font-size: var(--fs-3); overflow-wrap: anywhere; }
730
- .mw-md { font-size: var(--fs-3); overflow-wrap: anywhere; }
728
+ .agblk h4, .mw-sub h4 { margin: 0; font-size: var(--fs-body); line-height: var(--lh-body); }
729
+ .xq { margin: 0; padding: 8px 10px; border-radius: 10px; background: var(--cz-well); font-size: var(--fs-body); overflow-wrap: anywhere; line-height: var(--lh-body); }
730
+ .mw-md { font-size: var(--fs-body); overflow-wrap: anywhere; line-height: var(--lh-body); }
731
731
  .mw-md.clipd { max-height: 320px; overflow: hidden; }
732
- .mw-turns { margin: 0; padding-left: 18px; font-size: var(--fs-2); }
732
+ .mw-turns { margin: 0; padding-left: 18px; font-size: var(--fs-meta); line-height: var(--lh-meta); }
733
733
  .mw-err { color: var(--cz-red); }
734
734
  .mw-a { display: inline-flex; align-items: center; text-decoration: none; box-sizing: border-box; }
735
735
 
736
736
  /* the metrics review in the Viewer (AgMetrics): three tiles, the correction rate by week with the current week in blue, what moved it */
737
- .hm-met { gap: 16px; font-size: var(--fs-3); }
737
+ .hm-met { gap: 16px; font-size: var(--fs-body); line-height: var(--lh-body); }
738
738
  .hm-kpis { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; }
739
739
  .hm-kpi { display: flex; flex-direction: column; gap: 2px; padding: 12px 14px; border-radius: 16px; background: var(--cz-well); min-width: 0; }
740
- .hm-kpi p { margin: 0; font-size: var(--fs-2); color: var(--cz-ink3); }
741
- .hm-kpi b { margin-top: 2px; font-size: var(--fs-5); font-weight: 700; letter-spacing: -0.02em; color: var(--cz-ink); }
742
- .hm-kpi span { font-size: var(--fs-2); color: var(--cz-ink2); }
740
+ .hm-kpi p { margin: 0; font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
741
+ .hm-kpi b { margin-top: 2px; font-size: var(--fs-display); font-weight: var(--fw-strong); letter-spacing: -0.02em; color: var(--cz-ink); line-height: var(--lh-display); }
742
+ .hm-kpi span { font-size: var(--fs-meta); color: var(--cz-ink2); line-height: var(--lh-meta); }
743
743
  .hm-fig { margin: 0; }
744
- .hm-fig figcaption { margin-bottom: 10px; font-size: var(--fs-3); font-weight: 700; }
744
+ .hm-fig figcaption { margin-bottom: 10px; font-size: var(--fs-row); font-weight: var(--fw-strong); line-height: var(--lh-row); }
745
745
  .hm-chart { height: 140px; display: flex; align-items: flex-end; gap: 10px; padding-bottom: 4px; border-bottom: 1px solid var(--cz-hair); }
746
746
  .hm-chart > div { flex: 1; height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: flex-end; gap: 4px; }
747
- .hm-chart span { font-size: var(--fs-1); color: var(--cz-ink3); }
747
+ .hm-chart span { font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
748
748
  .hm-chart i { display: block; height: var(--bd-h, 0); width: 100%; max-width: 36px; border-radius: 8px 8px 3px 3px; background: var(--cz-well2); }
749
749
  .hm-chart i.now { background: var(--cz-blue); }
750
750
  .hm-chx { display: flex; gap: 10px; margin-top: 6px; }
751
- .hm-chx span { flex: 1; text-align: center; font-size: var(--fs-1); color: var(--cz-ink3); }
752
- .hm-moved { width: 100%; border-collapse: collapse; font-size: var(--fs-3); }
753
- .hm-moved th { padding: 6px 0; border-bottom: 1px solid var(--cz-hair); font-weight: 600; color: var(--cz-ink3); text-align: left; }
751
+ .hm-chx span { flex: 1; text-align: center; font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
752
+ .hm-moved { width: 100%; border-collapse: collapse; font-size: var(--fs-body); line-height: var(--lh-body); }
753
+ .hm-moved th { padding: 6px 0; border-bottom: 1px solid var(--cz-hair); font-weight: var(--fw-strong); color: var(--cz-ink3); text-align: left; }
754
754
  .hm-moved th + th, .hm-moved td + td { text-align: right; }
755
755
  .hm-moved td { padding: 8px 0; border-bottom: 1px solid var(--cz-hair); }
756
- .hm-moved td + td { padding-left: 12px; font-weight: 600; white-space: nowrap; }
756
+ .hm-moved td + td { padding-left: 12px; font-weight: var(--fw-strong); white-space: nowrap; }
757
757
  @media (max-width: 760px) { .hm-kpis { grid-template-columns: 1fr; } }
758
758
  /* the list stays when there is no room beside the chat (HbCNarrow): the Viewer lies over the chat, at most the room right of the list */
759
759
  @media (min-width: 761px) {
@@ -766,7 +766,7 @@ form.hm-box textarea { min-height: 48px; border: 0; background: none; resize: no
766
766
  @media (max-width: 760px) {
767
767
  body.cz-home:not(.hm-plist) #hmTopSub { display: none; }
768
768
  .hm-recp:not([hidden]) { flex: none; display: inline-flex; align-items: center; height: 44px; padding: 0 2px; border: 0; background: none; cursor: pointer; }
769
- .hm-recp .pill { display: inline-flex; align-items: center; gap: 6px; height: 32px; padding: 0 12px; border-radius: 999px; background: var(--cz-redbg); color: var(--cz-red); font: 700 var(--fs-2) var(--cz-sans); font-variant-numeric: tabular-nums; }
769
+ .hm-recp .pill { display: inline-flex; align-items: center; gap: 6px; height: 32px; padding: 0 12px; border-radius: 999px; background: var(--cz-redbg); color: var(--cz-red); font: var(--fw-strong) var(--fs-label)/var(--lh-label) var(--cz-sans); font-variant-numeric: tabular-nums; }
770
770
  .hm-recp i { width: 8px; height: 8px; border-radius: 50%; background: var(--cz-dot-red); }
771
771
  .hm-recp.paused .pill { background: var(--cz-well); color: var(--cz-ink3); }
772
772
  .hm-recp.paused i { background: var(--cz-dot-q); }
@@ -778,7 +778,7 @@ form.hm-box textarea { min-height: 48px; border: 0; background: none; resize: no
778
778
  .hm-ch .cz-ctx { margin-left: auto; margin-right: 6px; }
779
779
  .hm-sugc.cpt { white-space: normal; }
780
780
  .hm-sugs { font-style: normal; color: var(--cz-blueink); }
781
- .hm-sugw { color: var(--cz-ink2); font-weight: 700; min-width: 0; }
781
+ .hm-sugw { color: var(--cz-ink2); font-weight: var(--fw-strong); min-width: 0; }
782
782
  .hm-sugx.ok { color: var(--cz-blueink); }
783
783
  #hmTopTitle .cz-ctx { margin-left: 8px; vertical-align: -2px; }
784
784
  /* Adler (batch 16 item 2): Claude's avatar on the latest reply (AdU1) and the resting figure in an empty chat (AdH1) */
@@ -786,7 +786,7 @@ form.hm-box textarea { min-height: 48px; border: 0; background: none; resize: no
786
786
  .hm-empty-ad { display: flex; flex-direction: column; align-items: center; gap: 8px; }
787
787
  .hm-empty-ad p { margin: 0; }
788
788
  .hm-chat .ctxmore { display: contents; }
789
- .hm-chat .ctxmore > summary { display: inline-flex; align-items: center; min-height: 40px; padding: 0 12px; border-radius: 12px; color: var(--cz-ink3); font-size: var(--fs-1); cursor: pointer; list-style: none; }
789
+ .hm-chat .ctxmore > summary { display: inline-flex; align-items: center; min-height: 40px; padding: 0 12px; border-radius: 12px; color: var(--cz-ink3); font-size: var(--fs-meta); cursor: pointer; list-style: none; line-height: var(--lh-meta); }
790
790
  .hm-chat .ctxmore > summary::-webkit-details-marker { display: none; }
791
791
  .hm-chat .ctxmore > summary:hover { color: var(--cz-ink); }
792
792
  .hm-chat .ctxmore[open] > summary { display: none; }