create-pmos 0.511.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 (114) hide show
  1. package/package.json +27 -31
  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 +26 -0
  13. package/workspace/fixtures/next-prompt-replay.json +40 -0
  14. package/workspace/guide/home.md +1 -1
  15. package/workspace/guide/index.md +1 -0
  16. package/workspace/guide/next-prompt.md +62 -0
  17. package/workspace/guide/settings.md +3 -1
  18. package/workspace/intel-report-ui-test.js +1 -1
  19. package/workspace/intelligence-gaps-ui-test.js +1 -1
  20. package/workspace/lib/next-prompt.js +199 -0
  21. package/workspace/lib/premium-console-type.js +15 -12
  22. package/workspace/lib/route-modules.js +1 -0
  23. package/workspace/lib/routes-next-prompt.js +248 -0
  24. package/workspace/metric-drafts-ui-test.js +2 -2
  25. package/workspace/package-lock.json +2 -2
  26. package/workspace/package.json +1 -1
  27. package/workspace/premium-menu-rows-test.js +1 -1
  28. package/workspace/premium-vw-doc-test.js +1 -1
  29. package/workspace/public/pm/bd-pin-card.css +4 -4
  30. package/workspace/public/pm/bd-publish.css +11 -11
  31. package/workspace/public/pm/bd-shared.css +17 -17
  32. package/workspace/public/pm/c3-capture.css +9 -9
  33. package/workspace/public/pm/c3-initiatives.css +23 -23
  34. package/workspace/public/pm/c3-listen.css +1 -1
  35. package/workspace/public/pm/components.css +572 -572
  36. package/workspace/public/pm/console3.css +374 -373
  37. package/workspace/public/pm/cozy-adler.css +4 -4
  38. package/workspace/public/pm/cozy-aud.css +1 -1
  39. package/workspace/public/pm/cozy-board.css +328 -328
  40. package/workspace/public/pm/cozy-ev.css +80 -78
  41. package/workspace/public/pm/cozy-home-rows.css +32 -32
  42. package/workspace/public/pm/cozy-home.css +285 -241
  43. package/workspace/public/pm/cozy-insights.css +200 -200
  44. package/workspace/public/pm/cozy-live-pill.css +5 -5
  45. package/workspace/public/pm/cozy-mtg-present.css +28 -28
  46. package/workspace/public/pm/cozy-onboard.css +15 -15
  47. package/workspace/public/pm/cozy-panel.css +39 -39
  48. package/workspace/public/pm/cozy-pick.css +5 -5
  49. package/workspace/public/pm/cozy-rec-now.css +23 -23
  50. package/workspace/public/pm/cozy-rec-present.css +11 -11
  51. package/workspace/public/pm/cozy-rec-tab.css +13 -13
  52. package/workspace/public/pm/cozy-settings.js +37 -2
  53. package/workspace/public/pm/cozy-steps.css +14 -14
  54. package/workspace/public/pm/cozy-today.css +95 -95
  55. package/workspace/public/pm/cozy-viewer.css +27 -27
  56. package/workspace/public/pm/cozy-vw-mtg.css +113 -113
  57. package/workspace/public/pm/cozy-vw-rp.css +79 -79
  58. package/workspace/public/pm/cozy-vw-shell.css +43 -43
  59. package/workspace/public/pm/cozy-vw.css +129 -129
  60. package/workspace/public/pm/cozy-xv.css +15 -15
  61. package/workspace/public/pm/cozy.css +53 -21
  62. package/workspace/public/pm/dash-view.css +27 -27
  63. package/workspace/public/pm/hi-pop.css +26 -26
  64. package/workspace/public/pm/home-chat.js +21 -4
  65. package/workspace/public/pm/home-impact.css +8 -8
  66. package/workspace/public/pm/home-ini.css +36 -36
  67. package/workspace/public/pm/home-line.css +7 -7
  68. package/workspace/public/pm/impact.css +9 -9
  69. package/workspace/public/pm/ini-view.css +243 -243
  70. package/workspace/public/pm/load-shapes.css +1 -1
  71. package/workspace/public/pm/loose-props.css +14 -14
  72. package/workspace/public/pm/metric-drafts.css +20 -20
  73. package/workspace/public/pm/ms-suggest.css +9 -9
  74. package/workspace/public/pm/next-prompt-ui.js +117 -0
  75. package/workspace/public/pm/ov-view.css +14 -14
  76. package/workspace/public/pm/premium-insights.js +3 -3
  77. package/workspace/public/pm/premium-report-frame.css +1 -1
  78. package/workspace/public/pm/premium-report-intel.css +17 -17
  79. package/workspace/public/pm/premium-report-print.css +1 -1
  80. package/workspace/public/pm/premium-vw-backlog.css +13 -13
  81. package/workspace/public/pm/premium-vw-cal.css +32 -32
  82. package/workspace/public/pm/premium-vw-copy.css +7 -7
  83. package/workspace/public/pm/premium-vw-doc.css +69 -69
  84. package/workspace/public/pm/premium-vw-item.css +12 -12
  85. package/workspace/public/pm/premium-vw-jira.css +39 -39
  86. package/workspace/public/pm/premium-vw-meet.css +28 -28
  87. package/workspace/public/pm/premium-vw-notepad.css +13 -13
  88. package/workspace/public/pm/premium-vw-notes.css +11 -11
  89. package/workspace/public/pm/premium-vw-rec.css +27 -27
  90. package/workspace/public/pm/premium-vw-report.css +21 -21
  91. package/workspace/public/pm/premium-vw-slides.css +28 -28
  92. package/workspace/public/pm/premium.css +618 -618
  93. package/workspace/public/pm/prog-order.css +6 -6
  94. package/workspace/public/pm/prog-page.css +17 -17
  95. package/workspace/public/pm/program-charter.css +33 -33
  96. package/workspace/public/pm/ready-lib.css +6 -6
  97. package/workspace/public/pm/sort-order.css +1 -1
  98. package/workspace/public/pm/split-merge.css +18 -18
  99. package/workspace/public/pm/task-card.css +24 -24
  100. package/workspace/public/pm/tk-tasks.css +42 -42
  101. package/workspace/public/pm/tk-view.css +6 -6
  102. package/workspace/public/pm/wf-page.css +31 -31
  103. package/workspace/public/premium-aud.html +1 -1
  104. package/workspace/public/premium-board.html +1 -1
  105. package/workspace/public/premium-intelligence.html +1 -1
  106. package/workspace/public/premium-rec.html +1 -1
  107. package/workspace/public/premium-viewer.html +1 -1
  108. package/workspace/public/premium-workflows.html +1 -1
  109. package/workspace/public/premium.html +1 -1
  110. package/workspace/public/vendor/plus-jakarta-sans-var.woff2 +0 -0
  111. package/workspace/server.js +1 -0
  112. package/workspace/test-lists/next-prompt.json +5 -0
  113. package/workspace/third-party/README.md +2 -1
  114. package/workspace/third-party/plus-jakarta-sans-OFL.LICENSE +93 -0
@@ -13,18 +13,18 @@
13
13
  /* ── shared parts ── */
14
14
  .vz { --vzd: var(--cz-ink); --vzd-on: var(--cz-card); } /* the design's dark button (.btn.dark: ink on card) */
15
15
  .vz .vzm-fb rect, .vz .vzp-strip rect, .vz .vzp-strip circle, .vz .vzp-phpl rect { stroke: none; }
16
- .vz .vzm-lbl { margin: 0; font-size: var(--fs-2); font-weight: 700; color: var(--cz-ink2); }
17
- .vz .vzm-lbl small { font-size: inherit; font-weight: 500; color: var(--cz-ink3); margin-left: 4px; }
18
- .vz .vzm-mlbl { margin: 6px 0 2px; font-size: var(--fs-1); font-weight: 700; color: var(--cz-ink3); }
19
- .vz .vzm-sm { font-size: var(--fs-2); }
16
+ .vz .vzm-lbl { margin: 0; font-size: var(--fs-label); font-weight: var(--fw-strong); color: var(--cz-ink2); line-height: var(--lh-label); }
17
+ .vz .vzm-lbl small { font-size: inherit; font-weight: var(--fw-regular); color: var(--cz-ink3); margin-left: 4px; }
18
+ .vz .vzm-mlbl { margin: 6px 0 2px; font-size: var(--fs-badge); font-weight: var(--fw-strong); color: var(--cz-ink3); line-height: var(--lh-badge); }
19
+ .vz .vzm-sm { font-size: var(--fs-meta); line-height: var(--lh-meta); }
20
20
  .vz .vzm-mut, .vzm-mut { color: var(--cz-ink3); }
21
21
  .vz .vzm-ink3 { color: var(--cz-ink3); }
22
22
  .vz .vzm-grow { flex: 1; min-width: 0; }
23
23
  .vz .vzm-r { display: flex; align-items: center; gap: 8px; flex-wrap: wrap; }
24
- .vz .vzm-h2 { margin: 0; font-size: var(--fs-5); font-weight: 800; letter-spacing: -.01em; }
25
- .vz .vzm-h3 { margin: 0; font-size: var(--fs-3); font-weight: 800; }
26
- .vz .vzm-h1 { margin: 6px 0 4px; font-size: var(--fs-5); font-weight: 800; letter-spacing: -.01em; }
27
- .vz .vzm-btn { display: inline-flex; align-items: center; gap: 6px; min-height: 30px; padding: 0 12px; border-radius: 999px; font-size: var(--fs-2); font-weight: 700; white-space: nowrap; border: 1px solid var(--cz-hair); background: var(--cz-card); }
24
+ .vz .vzm-h2 { margin: 0; font-size: var(--fs-panel); font-weight: var(--fw-strong); letter-spacing: -.01em; line-height: var(--lh-panel); }
25
+ .vz .vzm-h3 { margin: 0; font-size: var(--fs-section); font-weight: var(--fw-strong); line-height: var(--lh-section); }
26
+ .vz .vzm-h1 { margin: 6px 0 4px; font-size: var(--fs-page); font-weight: var(--fw-strong); letter-spacing: -.01em; line-height: var(--lh-page); }
27
+ .vz .vzm-btn { display: inline-flex; align-items: center; gap: 6px; min-height: 30px; padding: 0 12px; border-radius: 999px; font-size: var(--fs-label); font-weight: var(--fw-strong); white-space: nowrap; border: 1px solid var(--cz-hair); background: var(--cz-card); line-height: var(--lh-label); }
28
28
  .vz .vzm-btn.vzm-soft { border-color: transparent; background: var(--cz-well); }
29
29
  .vz .vzm-btn.vzm-card { background: var(--cz-card); }
30
30
  .vz .vzm-btn.vzm-ghost { border-color: transparent; background: transparent; color: var(--cz-ink2); padding: 0 8px; }
@@ -33,7 +33,7 @@
33
33
  .vz .vzm-btn.vzm-dark:hover:not(:disabled), .vz .vzm-solid:hover:not(:disabled) { background: color-mix(in oklab, var(--vzd) 88%, var(--cz-card)); }
34
34
  .vz .vzm-ib { width: 30px; height: 30px; border-radius: 50%; display: inline-grid; place-items: center; color: var(--cz-ink2); flex: none; }
35
35
  .vz .vzm-ib.vzm-solid { width: 32px; height: 32px; color: var(--vzd-on); }
36
- .vz .vzm-chip { display: inline-flex; align-items: center; gap: 6px; min-height: 30px; padding: 0 12px; border-radius: 999px; font-size: var(--fs-2); font-weight: 600; border: 1px solid var(--cz-hair); background: var(--cz-card); color: var(--cz-ink2); white-space: nowrap; max-width: 260px; overflow: hidden; text-overflow: ellipsis; }
36
+ .vz .vzm-chip { display: inline-flex; align-items: center; gap: 6px; min-height: 30px; padding: 0 12px; border-radius: 999px; font-size: var(--fs-label); font-weight: var(--fw-strong); border: 1px solid var(--cz-hair); background: var(--cz-card); color: var(--cz-ink2); white-space: nowrap; max-width: 260px; overflow: hidden; text-overflow: ellipsis; line-height: var(--lh-label); }
37
37
  .vz .vzm-chip.on { background: var(--cz-bluebg); border-color: transparent; color: var(--cz-blueink); }
38
38
  .vz .vzm-chip.vzm-dash { border-style: dashed; }
39
39
  .vz .vzm-chip[data-tone="rec"] { color: var(--cz-ink); }
@@ -46,10 +46,10 @@
46
46
  .vz .vzm-box { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 14px; background: var(--cz-well); flex-wrap: wrap; }
47
47
  .vz .vzm-warn { display: flex; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 14px; background: var(--cz-latebg); color: var(--cz-late); line-height: 1.45; flex-wrap: wrap; }
48
48
  .vz .vzm-warn .vzm-btn { color: var(--cz-ink); }
49
- .vz .vzm-pill { display: inline-flex; align-items: center; min-height: 22px; padding: 0 9px; border-radius: 999px; background: var(--cz-well); color: var(--cz-ink2); font-size: var(--fs-1); font-weight: 700; white-space: nowrap; }
49
+ .vz .vzm-pill { display: inline-flex; align-items: center; min-height: 22px; padding: 0 9px; border-radius: 999px; background: var(--cz-well); color: var(--cz-ink2); font-size: var(--fs-badge); font-weight: var(--fw-strong); white-space: nowrap; line-height: var(--lh-badge); }
50
50
  .vz .vzm-pill[data-k="you"] { background: var(--cz-bluebg); color: var(--cz-blueink); }
51
51
  .vz .vzm-in { display: flex; align-items: center; gap: 8px; min-height: 40px; padding: 0 12px; border-radius: 12px; background: var(--cz-well); color: var(--cz-ink3); }
52
- .vz .vzm-in input { flex: 1; min-width: 0; border: 0; background: transparent; font: var(--fs-3) var(--cz-sans); color: var(--cz-ink); outline: none; }
52
+ .vz .vzm-in input { flex: 1; min-width: 0; border: 0; background: transparent; font: var(--fs-body)/var(--lh-body) var(--cz-sans); color: var(--cz-ink); outline: none; }
53
53
  .vz .vzm-in:focus-within { box-shadow: 0 0 0 1.5px var(--cz-blue); }
54
54
  .vz .vzm-in input:focus-visible { outline: none; }
55
55
 
@@ -71,10 +71,10 @@
71
71
  .vzm-pop { position: absolute; right: 0; top: 4px; z-index: 30; width: min(380px, 100%); display: flex; flex-direction: column; gap: 6px; padding: 12px; border-radius: 18px; background: var(--cz-card); border: 1px solid var(--cz-hair); box-shadow: var(--cz-lift); }
72
72
  .vzm-anc[data-pop="mat"] { height: auto; }
73
73
  .vzm-anc[data-pop="mat"] .vzm-pop { position: relative; top: 0; width: 100%; }
74
- .vzm-pop .vz-empty { font-size: var(--fs-2); }
75
- .vzm-mi2 { display: flex !important; width: 100%; align-items: center; gap: 10px; min-height: 40px; padding: 6px 10px !important; border-radius: 10px; font-size: var(--fs-3); color: var(--cz-ink); }
74
+ .vzm-pop .vz-empty { font-size: var(--fs-meta); line-height: var(--lh-meta); }
75
+ .vzm-mi2 { display: flex !important; width: 100%; align-items: center; gap: 10px; min-height: 40px; padding: 6px 10px !important; border-radius: 10px; font-size: var(--fs-body); color: var(--cz-ink); line-height: var(--lh-body); }
76
76
  .vzm-mi2.hl, .vzm-mi2[aria-current="true"] { background: var(--cz-well); }
77
- .vzm-mi2 .vzm-k { color: var(--cz-ink3); font-size: var(--fs-2); }
77
+ .vzm-mi2 .vzm-k { color: var(--cz-ink3); font-size: var(--fs-meta); line-height: var(--lh-meta); }
78
78
  .vzm-agl { display: flex; flex-direction: column; }
79
79
 
80
80
  /* ── material (XvAMaterial): a row per item, the preview on the row and Present on its icon; Add material and its menu ── */
@@ -82,43 +82,43 @@
82
82
  .vzm-mrow { display: flex; align-items: center; gap: 6px; border-bottom: 1px solid var(--cz-hair); }
83
83
  .vzm-mopen { flex: 1; min-width: 0; display: flex !important; align-items: center; gap: 12px; min-height: 56px; padding: 6px 4px !important; border-radius: 10px; text-align: left; }
84
84
  .vzm-mopen .vzm-mi { width: 32px; height: 32px; }
85
- .vzm-mt small { display: block; font-size: var(--fs-2); color: var(--cz-ink3); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
86
- .vzm-mt b { display: block; font-size: var(--fs-3); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
85
+ .vzm-mt small { display: block; font-size: var(--fs-meta); color: var(--cz-ink3); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; line-height: var(--lh-meta); }
86
+ .vzm-mt b { display: block; font-size: var(--fs-body); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; line-height: var(--lh-body); }
87
87
  .vzm-pres { color: var(--cz-blueink) !important; }
88
- .vzm-add { display: inline-flex !important; align-items: center; gap: 8px; align-self: flex-start; min-height: 40px; padding: 0 6px !important; border-radius: 10px; font-size: var(--fs-3); font-weight: 700; color: var(--cz-blueink) !important; }
88
+ .vzm-add { display: inline-flex !important; align-items: center; gap: 8px; align-self: flex-start; min-height: 40px; padding: 0 6px !important; border-radius: 10px; font-size: var(--fs-row); font-weight: var(--fw-strong); color: var(--cz-blueink) !important; line-height: var(--lh-row); }
89
89
  .vzm-addm { gap: 0; padding: 6px; }
90
- .vzm-ar { display: flex; align-items: center; gap: 12px; min-height: 42px; padding: 0 10px; border-radius: 10px; font-size: var(--fs-3); cursor: pointer; }
91
- .vzm-ar b { flex: 1; font-weight: 600; }
90
+ .vzm-ar { display: flex; align-items: center; gap: 12px; min-height: 42px; padding: 0 10px; border-radius: 10px; font-size: var(--fs-body); cursor: pointer; line-height: var(--lh-body); }
91
+ .vzm-ar b { flex: 1; font-weight: var(--fw-strong); }
92
92
  .vzm-ar input { flex: 1; min-width: 0; min-height: 36px; border: 0; background: transparent; font: inherit; color: var(--cz-ink); outline: none; }
93
93
  .vzm-ar input::placeholder { color: var(--cz-ink); }
94
- .vzm-ar small { font-size: var(--fs-2); color: var(--cz-ink3); white-space: nowrap; }
94
+ .vzm-ar small { font-size: var(--fs-meta); color: var(--cz-ink3); white-space: nowrap; line-height: var(--lh-meta); }
95
95
  .vzm-ar:focus-within { background: var(--cz-well); }
96
96
  .vzm-addm .vzm-mlbl { margin: 8px 10px 2px; padding-top: 8px; border-top: 1px solid var(--cz-hair); }
97
97
  .vzm-scope { padding: 6px 10px 2px; }
98
98
 
99
99
  /* ── rows: material, decisions, steps, questions ── */
100
- .vzm-trow, .vzm-step { display: flex; align-items: center; gap: 10px; min-height: 48px; padding: 8px 4px; border-bottom: 1px solid var(--cz-hair); font-size: var(--fs-3); flex-wrap: wrap; }
100
+ .vzm-trow, .vzm-step { display: flex; align-items: center; gap: 10px; min-height: 48px; padding: 8px 4px; border-bottom: 1px solid var(--cz-hair); font-size: var(--fs-body); flex-wrap: wrap; line-height: var(--lh-body); }
101
101
  .vzm-trow.vzm-top { align-items: flex-start; }
102
102
  .vzm-mi { width: 44px; height: 32px; border-radius: 8px; display: grid; place-items: center; background: var(--cz-well); color: var(--cz-ink2); flex: none; }
103
103
  .vzm-mt { flex: 1; min-width: 0; }
104
- .vzm-mt b { font-weight: 700; }
104
+ .vzm-mt b { font-weight: var(--fw-strong); }
105
105
  .vzm-why { flex-basis: 100%; }
106
- .vzm-made { display: flex; align-items: center; gap: 8px; padding: 8px 12px; border-radius: 12px; background: var(--cz-bluebg); color: var(--cz-blueink); font-size: var(--fs-2); margin-top: 4px; }
106
+ .vzm-made { display: flex; align-items: center; gap: 8px; padding: 8px 12px; border-radius: 12px; background: var(--cz-bluebg); color: var(--cz-blueink); font-size: var(--fs-meta); margin-top: 4px; line-height: var(--lh-meta); }
107
107
  .vzm-made span { flex: 1; min-width: 0; }
108
- .vzm-made .vzm-btn { color: var(--cz-blueink); font-weight: 700; }
109
- .vzm-fold { display: flex !important; align-items: center; gap: 8px; min-height: 40px; padding: 0 8px !important; border-radius: 12px; font-size: var(--fs-3); }
108
+ .vzm-made .vzm-btn { color: var(--cz-blueink); font-weight: var(--fw-strong); }
109
+ .vzm-fold { display: flex !important; align-items: center; gap: 8px; min-height: 40px; padding: 0 8px !important; border-radius: 12px; font-size: var(--fs-body); line-height: var(--lh-body); }
110
110
  .vzm-fold[aria-expanded="true"] svg { transform: rotate(90deg); }
111
- .vzm-fold .vzm-mut { font-size: var(--fs-2); }
111
+ .vzm-fold .vzm-mut { font-size: var(--fs-meta); line-height: var(--lh-meta); }
112
112
 
113
113
  /* ── Focus (MtFocus) ── */
114
114
  .vzm-now { padding: 16px 20px; border-radius: 18px; border: 1px solid var(--cz-blue); background: var(--cz-card); }
115
- .vzm-now .vzm-lbl { font-size: var(--fs-1); }
115
+ .vzm-now .vzm-lbl { font-size: var(--fs-meta); line-height: var(--lh-meta); }
116
116
  .vzm-topics { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
117
- .vzm-ag { display: grid; grid-template-columns: minmax(120px, 160px) minmax(0, 1fr) 64px; align-items: center; gap: 0 16px; min-height: 30px; font-size: var(--fs-2); color: var(--cz-ink2); }
117
+ .vzm-ag { display: grid; grid-template-columns: minmax(120px, 160px) minmax(0, 1fr) 64px; align-items: center; gap: 0 16px; min-height: 30px; font-size: var(--fs-meta); color: var(--cz-ink2); line-height: var(--lh-meta); }
118
118
  .vzm-ag[data-k="plan"] { color: var(--cz-ink3); }
119
- .vzm-ag b { color: var(--cz-ink); font-weight: 700; }
120
- .vzm-ag small { font-size: var(--fs-2); }
121
- .vzm-ag[data-k="late"] small, .vzm-ag[data-k="now"] small { color: var(--cz-late); font-weight: 700; }
119
+ .vzm-ag b { color: var(--cz-ink); font-weight: var(--fw-strong); }
120
+ .vzm-ag small { font-size: var(--fs-meta); line-height: var(--lh-meta); }
121
+ .vzm-ag[data-k="late"] small, .vzm-ag[data-k="now"] small { color: var(--cz-late); font-weight: var(--fw-strong); }
122
122
  .vzm-fb { display: block; }
123
123
  .vzm-fb .bg { fill: var(--cz-well); }
124
124
  .vzm-fb .fg { fill: var(--cz-ink3); }
@@ -128,23 +128,23 @@
128
128
  /* ── Replay (MtReplay; the phone half MtPhone) ── */
129
129
  .vzp { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
130
130
  .vzp .vzp-mut, .vzp-mut { color: var(--cz-ink3); }
131
- .vzp-sm { font-size: var(--fs-2); line-height: 1.5; }
132
- .vzp-lbl { margin: 0; font-size: var(--fs-2); font-weight: 700; color: var(--cz-ink2); }
131
+ .vzp-sm { font-size: var(--fs-meta); line-height: 1.5; }
132
+ .vzp-lbl { margin: 0; font-size: var(--fs-label); font-weight: var(--fw-strong); color: var(--cz-ink2); line-height: var(--lh-label); }
133
133
  .vzp-pl { display: flex; flex-direction: column; gap: 10px; padding: 12px; border-radius: 18px; background: var(--cz-well); }
134
134
  .vzp-pr { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); gap: 16px; align-items: start; }
135
135
  .vzp-shot { position: relative; border-radius: 12px; background: var(--cz-card); border: 1px solid var(--cz-hair); overflow: hidden; aspect-ratio: 16 / 10; }
136
136
  .vzp-img { position: absolute; inset: 0; }
137
137
  .vzp-img img, .vzp-th img { width: 100%; height: 100%; object-fit: cover; display: block; }
138
- .vzp-who { position: absolute; left: 8px; bottom: 8px; padding: 2px 9px; border-radius: 999px; background: var(--vzd); color: var(--vzd-on); font-size: var(--fs-2); font-weight: 700; }
138
+ .vzp-who { position: absolute; left: 8px; bottom: 8px; padding: 2px 9px; border-radius: 999px; background: var(--vzd); color: var(--vzd-on); font-size: var(--fs-label); font-weight: var(--fw-strong); line-height: var(--lh-label); }
139
139
  .vzp-ib { width: 30px; height: 30px; border-radius: 50%; display: inline-grid !important; place-items: center; color: var(--cz-ink2); }
140
140
  .vzp-big { position: absolute !important; right: 6px; top: 6px; background: var(--cz-card) !important; }
141
141
  .vzp-pc { display: flex; flex-direction: column; gap: 8px; min-width: 0; }
142
142
  .vzp-ctl { display: flex; align-items: center; gap: 10px; }
143
- .vzp-ctl b { font-size: var(--fs-3); font-weight: 800; font-variant-numeric: tabular-nums; }
144
- .vzp-ctl .vzp-mut { font-size: var(--fs-2); flex: 1; }
143
+ .vzp-ctl b { font-size: var(--fs-row); font-weight: var(--fw-strong); font-variant-numeric: tabular-nums; line-height: var(--lh-row); }
144
+ .vzp-ctl .vzp-mut { font-size: var(--fs-meta); flex: 1; line-height: var(--lh-meta); }
145
145
  .vzp-ib.vzp-solid { width: 40px; height: 40px; background: var(--vzd) !important; color: var(--vzd-on); }
146
146
  .vzp-fill { fill: currentColor; stroke: none; }
147
- .vzp-speed { min-width: 32px; min-height: 28px; padding: 0 6px !important; border-radius: 8px; font-size: var(--fs-2); color: var(--cz-ink2); text-align: center !important; }
147
+ .vzp-speed { min-width: 32px; min-height: 28px; padding: 0 6px !important; border-radius: 8px; font-size: var(--fs-meta); color: var(--cz-ink2); text-align: center !important; line-height: var(--lh-meta); }
148
148
  .vzp-ths { display: flex; flex-wrap: wrap; gap: 6px; }
149
149
  .vzp-th { width: 56px; height: 34px; border-radius: 6px; background: var(--cz-card) !important; border: 1px solid var(--cz-hair) !important; overflow: hidden; flex: none; }
150
150
  .vzp-th.on { border: 2px solid var(--cz-blue) !important; }
@@ -158,75 +158,75 @@
158
158
  .vzp-kd[data-k="risk"] { fill: var(--cz-risk); }
159
159
  .vzp-head { fill: var(--cz-ink); }
160
160
  .vzp-tops { display: flex; gap: 4px; }
161
- .vzp-top { flex: 1 1 0; min-width: 0; font-size: var(--fs-2); color: var(--cz-ink3); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; padding: 2px 0 !important; }
162
- .vzp-top[aria-current="true"] { color: var(--cz-ink); font-weight: 700; }
161
+ .vzp-top { flex: 1 1 0; min-width: 0; font-size: var(--fs-meta); color: var(--cz-ink3); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; padding: 2px 0 !important; line-height: var(--lh-meta); }
162
+ .vzp-top[aria-current="true"] { color: var(--cz-ink); font-weight: var(--fw-strong); }
163
163
  .vzp-fl { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
164
164
  .vzp-fl > .vzp-mut { margin-left: auto; }
165
165
  .vzp-seg { display: inline-flex; gap: 2px; padding: 3px; border-radius: 999px; background: var(--cz-well); }
166
- .vzp-seg button { min-height: 30px; padding: 0 12px !important; border-radius: 999px; font-size: var(--fs-2); font-weight: 600; color: var(--cz-ink2); white-space: nowrap; }
167
- .vzp-seg button[aria-pressed="true"] { background: var(--cz-card); color: var(--cz-ink); font-weight: 700; box-shadow: 0 1px 2px color-mix(in oklab, var(--cz-ink) 10%, transparent); }
168
- .vzp-bulk { display: flex; align-items: center; gap: 8px; padding: 8px 8px 8px 14px; border-radius: 14px; background: var(--vzd); color: var(--vzd-on); font-size: var(--fs-3); }
166
+ .vzp-seg button { min-height: 30px; padding: 0 12px !important; border-radius: 999px; font-size: var(--fs-label); font-weight: var(--fw-strong); color: var(--cz-ink2); white-space: nowrap; line-height: var(--lh-label); }
167
+ .vzp-seg button[aria-pressed="true"] { background: var(--cz-card); color: var(--cz-ink); font-weight: var(--fw-strong); box-shadow: 0 1px 2px color-mix(in oklab, var(--cz-ink) 10%, transparent); }
168
+ .vzp-bulk { display: flex; align-items: center; gap: 8px; padding: 8px 8px 8px 14px; border-radius: 14px; background: var(--vzd); color: var(--vzd-on); font-size: var(--fs-body); line-height: var(--lh-body); }
169
169
  .vzp-bulk b { flex: 1; }
170
- .vzp-bulk button { min-height: 30px; padding: 0 12px !important; border-radius: 999px; background: color-mix(in oklab, var(--vzd-on) 16%, transparent) !important; color: var(--vzd-on) !important; font-size: var(--fs-2); font-weight: 700; }
170
+ .vzp-bulk button { min-height: 30px; padding: 0 12px !important; border-radius: 999px; background: color-mix(in oklab, var(--vzd-on) 16%, transparent) !important; color: var(--vzd-on) !important; font-size: var(--fs-label); font-weight: var(--fw-strong); line-height: var(--lh-label); }
171
171
  .vzp-bulk button.vzp-gh { background: transparent !important; }
172
172
  .vzp-kl { display: flex; flex-direction: column; }
173
- .vzp-kr { display: grid; grid-template-columns: 22px 92px minmax(0, 1fr) 46px; gap: 0 10px; align-items: flex-start; padding: 10px 6px; border-top: 1px solid var(--cz-hair); font-size: var(--fs-3); }
173
+ .vzp-kr { display: grid; grid-template-columns: 22px 92px minmax(0, 1fr) 46px; gap: 0 10px; align-items: flex-start; padding: 10px 6px; border-top: 1px solid var(--cz-hair); font-size: var(--fs-body); line-height: var(--lh-body); }
174
174
  .vzp-kr.sel { background: var(--cz-bluebg); border-radius: 12px; border-top-color: transparent; }
175
175
  .vzp-kr p { margin: 0; }
176
176
  .vzp-chk { width: 18px; height: 18px; margin-top: 1px; border-radius: 5px; border: 1.5px solid var(--cz-ink3) !important; display: grid !important; place-items: center; color: var(--vzd-on); }
177
177
  .vzp-chk[aria-checked="true"] { background: var(--vzd) !important; border-color: var(--vzd) !important; }
178
- .vzp-pill { justify-self: start; display: inline-flex; align-items: center; min-height: 22px; padding: 0 9px; border-radius: 999px; font-size: var(--fs-1); font-weight: 700; white-space: nowrap; background: var(--cz-well); color: var(--cz-ink2); }
178
+ .vzp-pill { justify-self: start; display: inline-flex; align-items: center; min-height: 22px; padding: 0 9px; border-radius: 999px; font-size: var(--fs-badge); font-weight: var(--fw-strong); white-space: nowrap; background: var(--cz-well); color: var(--cz-ink2); line-height: var(--lh-badge); }
179
179
  .vzp-pill[data-k="ok"] { background: var(--cz-okbg); color: var(--cz-ok); }
180
180
  .vzp-pill[data-k="you"], .vzp-pill[data-k="y"] { background: transparent; color: var(--cz-blueink); }
181
181
  .vzp-pill[data-k="w"] { background: var(--cz-latebg); color: var(--cz-late); }
182
- .vzp-q { font-size: var(--fs-2); color: var(--cz-ink3); margin-top: 2px !important; }
183
- .vzp-conf { display: inline-flex; align-items: center; gap: 3px; font-size: var(--fs-2); font-weight: 700; color: var(--cz-ok); }
184
- .vzp-tm { justify-self: end; font-size: var(--fs-2); font-weight: 700; color: var(--cz-blueink); font-variant-numeric: tabular-nums; text-align: right !important; }
182
+ .vzp-q { font-size: var(--fs-meta); color: var(--cz-ink3); margin-top: 2px !important; line-height: var(--lh-meta); }
183
+ .vzp-conf { display: inline-flex; align-items: center; gap: 3px; font-size: var(--fs-label); font-weight: var(--fw-strong); color: var(--cz-ok); line-height: var(--lh-label); }
184
+ .vzp-tm { justify-self: end; font-size: var(--fs-label); font-weight: var(--fw-strong); color: var(--cz-blueink); font-variant-numeric: tabular-nums; text-align: right !important; line-height: var(--lh-label); }
185
185
  .vzp-tm.risk { color: var(--cz-late); }
186
186
  .vzp-tm:hover:not(:disabled) { text-decoration: underline; }
187
- .vzp-left { display: flex !important; align-items: center; gap: 8px; min-height: 40px; padding: 0 6px !important; border-top: 1px solid var(--cz-hair) !important; font-size: var(--fs-3); flex-wrap: wrap; }
188
- .vzp-left span { color: var(--cz-ink3); font-size: var(--fs-2); }
187
+ .vzp-left { display: flex !important; align-items: center; gap: 8px; min-height: 40px; padding: 0 6px !important; border-top: 1px solid var(--cz-hair) !important; font-size: var(--fs-body); flex-wrap: wrap; line-height: var(--lh-body); }
188
+ .vzp-left span { color: var(--cz-ink3); font-size: var(--fs-meta); line-height: var(--lh-meta); }
189
189
  .vzp-left[aria-expanded="true"] svg { transform: rotate(90deg); }
190
190
  .vzp-ll { display: flex; flex-direction: column; }
191
- .vzp-lr { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 10px; align-items: baseline; padding: 8px 6px 8px 28px; font-size: var(--fs-2); color: var(--cz-ink2); border-top: 1px solid var(--cz-hair); }
192
- .vzp-lr small { font-size: var(--fs-2); color: var(--cz-ink3); }
193
- .vzp-link { color: var(--cz-blueink); font-weight: 700; font-size: var(--fs-2); }
194
- .vzp-empty { margin: 0; font-size: var(--fs-2); color: var(--cz-ink3); }
191
+ .vzp-lr { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; gap: 10px; align-items: baseline; padding: 8px 6px 8px 28px; font-size: var(--fs-meta); color: var(--cz-ink2); border-top: 1px solid var(--cz-hair); line-height: var(--lh-meta); }
192
+ .vzp-lr small { font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
193
+ .vzp-link { color: var(--cz-blueink); font-weight: var(--fw-strong); font-size: var(--fs-label); line-height: var(--lh-label); }
194
+ .vzp-empty { margin: 0; font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
195
195
  .vzp-phh { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
196
- .vzp-dark { min-height: 32px; padding: 0 14px !important; border-radius: 999px; background: var(--vzd) !important; color: var(--vzd-on) !important; font-size: var(--fs-3); font-weight: 700; }
197
- .vzp-h3 { margin: 8px 0 0 !important; font-size: var(--fs-4); font-weight: 800; }
198
- .vzp-prow { display: flex; align-items: center; gap: 10px; min-height: 48px; padding: 6px 4px; border-bottom: 1px solid var(--cz-hair); font-size: var(--fs-3); }
196
+ .vzp-dark { min-height: 32px; padding: 0 14px !important; border-radius: 999px; background: var(--vzd) !important; color: var(--vzd-on) !important; font-size: var(--fs-row); font-weight: var(--fw-strong); line-height: var(--lh-row); }
197
+ .vzp-h3 { margin: 8px 0 0 !important; font-size: var(--fs-section); font-weight: var(--fw-strong); line-height: var(--lh-section); }
198
+ .vzp-prow { display: flex; align-items: center; gap: 10px; min-height: 48px; padding: 6px 4px; border-bottom: 1px solid var(--cz-hair); font-size: var(--fs-body); line-height: var(--lh-body); }
199
199
  .vzp-prow span { flex: 1; min-width: 0; }
200
200
  .vzp-prow .vzp-tm { justify-self: auto; }
201
- .vzp-soft { min-height: 30px; padding: 0 12px !important; border-radius: 999px; background: var(--cz-well) !important; font-size: var(--fs-2); font-weight: 700; }
201
+ .vzp-soft { min-height: 30px; padding: 0 12px !important; border-radius: 999px; background: var(--cz-well) !important; font-size: var(--fs-label); font-weight: var(--fw-strong); line-height: var(--lh-label); }
202
202
  /* ── Replay as one card (XvAReplay): the player, then the points of the part playing; a point is a press that corrects it ── */
203
203
  .vzp-card { display: flex; flex-direction: column; gap: 10px; padding: 12px; border-radius: 20px; background: var(--cz-well); }
204
204
  .vzp-card .vzp-pl { padding: 0; background: none; }
205
205
  .vzp-card .vzp-shot { background: var(--cz-card); }
206
206
  .vzp-pts { display: flex; flex-direction: column; gap: 6px; }
207
- .vzp-pt { display: grid !important; grid-template-columns: 76px minmax(0, 1fr); gap: 10px; align-items: start; width: 100%; padding: 10px !important; border-radius: 12px; background: var(--cz-card) !important; text-align: left; font-size: var(--fs-3); }
207
+ .vzp-pt { display: grid !important; grid-template-columns: 76px minmax(0, 1fr); gap: 10px; align-items: start; width: 100%; padding: 10px !important; border-radius: 12px; background: var(--cz-card) !important; text-align: left; font-size: var(--fs-body); line-height: var(--lh-body); }
208
208
  .vzp-pt:hover { box-shadow: 0 0 0 1px var(--cz-hair); }
209
209
  .vzp-pt .vzp-pill { justify-self: center; }
210
210
  .vzp-kt { display: flex !important; flex-direction: column; gap: 2px; min-width: 0; text-align: left; }
211
- .vzp-kt b { font-weight: 700; }
212
- .vzp-kt small { font-size: var(--fs-2); color: var(--cz-ink3); }
211
+ .vzp-kt b { font-weight: var(--fw-strong); }
212
+ .vzp-kt small { font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
213
213
  .vzp-kr .vzp-kt:hover b { text-decoration: underline; text-decoration-color: var(--cz-hair); }
214
214
  .vzp-chk2 { color: var(--cz-late) !important; }
215
215
  .vzp-ed { display: flex; flex-direction: column; gap: 10px; padding: 12px; border-radius: 14px; background: var(--cz-card); box-shadow: 0 0 0 2px var(--cz-blue); }
216
216
  .vzp-kinds { display: flex; gap: 6px; }
217
- .vzp-kinds button { min-height: 30px; padding: 0 12px !important; border-radius: 10px; background: var(--cz-well) !important; font-size: var(--fs-2); font-weight: 700; color: var(--cz-ink2); }
217
+ .vzp-kinds button { min-height: 30px; padding: 0 12px !important; border-radius: 10px; background: var(--cz-well) !important; font-size: var(--fs-label); font-weight: var(--fw-strong); color: var(--cz-ink2); line-height: var(--lh-label); }
218
218
  .vzp-kinds button[aria-checked="true"][data-pk="ok"] { background: var(--cz-okbg) !important; color: var(--cz-ok); box-shadow: inset 0 0 0 1.5px var(--cz-ok); }
219
219
  .vzp-kinds button[aria-checked="true"][data-pk="w"] { background: var(--cz-latebg) !important; color: var(--cz-late); box-shadow: inset 0 0 0 1.5px var(--cz-late); }
220
220
  .vzp-kinds button[aria-checked="true"][data-pk="y"] { background: var(--cz-bluebg) !important; color: var(--cz-blueink); box-shadow: inset 0 0 0 1.5px var(--cz-blueink); }
221
- .vzp-was { margin: 0; font-size: var(--fs-2); color: var(--cz-ink3); }
222
- .vzp-eta { width: 100%; min-height: 64px; padding: 10px 12px; border-radius: 12px; border: 1px solid var(--cz-hair); background: var(--cz-card); font: inherit; font-size: var(--fs-3); line-height: 1.45; color: var(--cz-ink); resize: vertical; }
221
+ .vzp-was { margin: 0; font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
222
+ .vzp-eta { width: 100%; min-height: 64px; padding: 10px 12px; border-radius: 12px; border: 1px solid var(--cz-hair); background: var(--cz-card); font: inherit; font-size: var(--fs-body); line-height: 1.45; color: var(--cz-ink); resize: vertical; }
223
223
  .vzp-eta:focus { outline: 2px solid var(--cz-blue); outline-offset: -1px; }
224
- .vzp-learn { padding: 10px 12px; border-radius: 12px; background: var(--cz-bluebg); font-size: var(--fs-2); line-height: 1.45; color: var(--cz-ink); }
224
+ .vzp-learn { padding: 10px 12px; border-radius: 12px; background: var(--cz-bluebg); font-size: var(--fs-meta); line-height: 1.45; color: var(--cz-ink); }
225
225
  .vzp-learn b:empty { display: none; }
226
226
  .vzp-ef { display: flex; align-items: center; gap: 10px; }
227
227
  .vzp-sp { flex: 1; }
228
228
  .vzp-del:hover { color: var(--cz-ink); }
229
- .vzp-gbtn { min-height: 34px; padding: 0 12px !important; border-radius: 999px; font-size: var(--fs-3); font-weight: 700; }
229
+ .vzp-gbtn { min-height: 34px; padding: 0 12px !important; border-radius: 999px; font-size: var(--fs-row); font-weight: var(--fw-strong); line-height: var(--lh-row); }
230
230
 
231
231
  /* ── the recording view (batch 25 item 11, MvC/MvF/MvN): summary and lean kept rows left, the evidence right, the timeline docked ── */
232
232
  /* the shell's wide grid (summary left, 75ch right) does not apply: this view is its own two columns */
@@ -237,15 +237,15 @@
237
237
  .vzr-cols { display: grid; grid-template-columns: minmax(0, 1fr); gap: 16px; align-items: start; }
238
238
  @container (min-width: 860px) { .vzr-cols { grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); gap: 20px; } .vzr-ev { position: sticky; top: 0; } }
239
239
  .vzr-l { display: flex; flex-direction: column; gap: 14px; min-width: 0; }
240
- .vzr-sum .czs-p { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; font-size: var(--fs-3); line-height: 1.55; margin: 0; }
240
+ .vzr-sum .czs-p { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; overflow: hidden; font-size: var(--fs-body); line-height: 1.55; margin: 0; }
241
241
  .vzr-sum.all .czs-p { display: block; }
242
242
  .vzr-sm { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
243
243
  .vzr-sm .czs-meta { margin: 0 0 0 auto; }
244
- .vzr-more2 { font-size: var(--fs-2); font-weight: 800; color: var(--cz-blueink); padding: 4px 0 !important; }
244
+ .vzr-more2 { font-size: var(--fs-label); font-weight: var(--fw-strong); color: var(--cz-blueink); padding: 4px 0 !important; line-height: var(--lh-label); }
245
245
  .vzr-pts { border: 1px solid var(--cz-hair); border-radius: 20px; background: var(--cz-card); overflow: hidden; }
246
246
  .vzr-ph { display: flex; align-items: center; gap: 12px; padding: 12px 14px 8px 18px; flex-wrap: wrap; }
247
- .vzr-ph h3 { margin: 0; font-size: var(--fs-4); font-weight: 800; }
248
- .vzr-cnt { display: inline-flex; align-items: center; gap: 4px; font-size: var(--fs-2); font-weight: 700; color: var(--cz-ink2); }
247
+ .vzr-ph h3 { margin: 0; font-size: var(--fs-section); font-weight: var(--fw-strong); line-height: var(--lh-section); }
248
+ .vzr-cnt { display: inline-flex; align-items: center; gap: 4px; font-size: var(--fs-label); font-weight: var(--fw-strong); color: var(--cz-ink2); line-height: var(--lh-label); }
249
249
  .vzr-cfall { display: inline-flex !important; align-items: center; gap: 6px; }
250
250
  .vzr-k { display: inline-flex; align-items: center; justify-content: center; width: 20px; height: 20px; flex: none; color: var(--cz-ink2); }
251
251
  .vzr-k[data-k="decision"]::before { content: ''; width: 10px; height: 10px; border-radius: 50%; background: var(--cz-ok); }
@@ -254,23 +254,23 @@
254
254
  .vzp-kr.vzr-row { grid-template-columns: 20px minmax(0, 1fr) auto 32px; gap: 0 12px; align-items: start; padding: 10px 12px 10px 18px; }
255
255
  .vzp-kr.vzr-row .vzr-k { margin-top: 1px; }
256
256
  .vzp-kr.vzr-row.sel { margin: 2px 6px; padding-left: 12px; padding-right: 6px; }
257
- .vzr-row .vzp-kt b { font-weight: 800; line-height: 1.35; }
257
+ .vzr-row .vzp-kt b { font-weight: var(--fw-strong); line-height: 1.35; }
258
258
  .vzr-row .vzp-tm { padding-top: 2px !important; min-width: 44px; }
259
259
  .vzr-cf { width: 30px; height: 30px; border-radius: 50%; border: 1.6px solid var(--cz-hair) !important; display: inline-grid !important; place-items: center; color: var(--cz-ink3); margin-top: -3px; }
260
260
  .vzr-cf:hover { color: var(--cz-ok); border-color: var(--cz-ok) !important; }
261
261
  .vzr-cf.on { background: var(--cz-okbg) !important; border-color: transparent !important; color: var(--cz-ok); }
262
- .vzr-fu { grid-column: 2 / 5; display: flex; align-items: center; gap: 10px; margin-top: 6px; font-size: var(--fs-2); color: var(--cz-ink2); }
262
+ .vzr-fu { grid-column: 2 / 5; display: flex; align-items: center; gap: 10px; margin-top: 6px; font-size: var(--fs-meta); color: var(--cz-ink2); line-height: var(--lh-meta); }
263
263
  .vzr-fu.vzr-sub { margin-top: 2px; }
264
264
  .vzr-bx { color: var(--cz-ink3); flex: none; }
265
265
  .vzr-grow { flex: 1; min-width: 0; }
266
266
  .vzr-who { color: var(--cz-ink3); }
267
- .vzr-tk { display: inline-flex; align-items: center; height: 22px; padding: 0 9px; border-radius: 999px; background: var(--cz-bluebg); color: var(--cz-blueink); font-size: var(--fs-1); font-weight: 800; }
267
+ .vzr-tk { display: inline-flex; align-items: center; height: 22px; padding: 0 9px; border-radius: 999px; background: var(--cz-bluebg); color: var(--cz-blueink); font-size: var(--fs-badge); font-weight: var(--fw-strong); line-height: var(--lh-badge); }
268
268
  .vzr-ghost { background: var(--cz-well) !important; }
269
- .vzr-chk { grid-column: 2 / 5; margin: 4px 0 0; font-size: var(--fs-2); color: var(--cz-late); }
269
+ .vzr-chk { grid-column: 2 / 5; margin: 4px 0 0; font-size: var(--fs-meta); color: var(--cz-late); line-height: var(--lh-meta); }
270
270
  .vzr-pad { padding: 4px 18px 14px; }
271
271
  .vzr-fold { display: flex; gap: 6px; flex-wrap: wrap; }
272
- .vzr-ch { min-height: 34px; padding: 0 13px !important; border-radius: 999px; background: var(--cz-well) !important; display: inline-flex !important; align-items: center; gap: 7px; font-size: var(--fs-2); color: var(--cz-ink2); }
273
- .vzr-ch b { font-weight: 800; color: var(--cz-ink); }
272
+ .vzr-ch { min-height: 34px; padding: 0 13px !important; border-radius: 999px; background: var(--cz-well) !important; display: inline-flex !important; align-items: center; gap: 7px; font-size: var(--fs-meta); color: var(--cz-ink2); line-height: var(--lh-meta); }
273
+ .vzr-ch b { font-weight: var(--fw-strong); color: var(--cz-ink); }
274
274
  .vzr-ch span { color: var(--cz-ink3); }
275
275
  .vzr-ch[aria-expanded="true"] { background: var(--cz-ink) !important; color: var(--cz-card); }
276
276
  .vzr-ch[aria-expanded="true"] b, .vzr-ch[aria-expanded="true"] span { color: var(--cz-card); }
@@ -280,27 +280,27 @@
280
280
  .vzr-noshot { display: grid; place-items: center; min-height: 120px; border-radius: 12px; background: var(--cz-well); padding: 12px; text-align: center; }
281
281
  .vzr-acts { display: flex; align-items: center; gap: 10px; }
282
282
  .vzr-pri { width: 40px !important; height: 40px !important; background: var(--cz-blueink) !important; color: var(--cz-card) !important; }
283
- .vzr-at { font-size: var(--fs-3); font-weight: 800; color: var(--cz-blueink); font-variant-numeric: tabular-nums; }
284
- .vzr-q { margin: 0; font-size: var(--fs-3); line-height: 1.5; color: var(--cz-ink2); }
283
+ .vzr-at { font-size: var(--fs-row); font-weight: var(--fw-strong); color: var(--cz-blueink); font-variant-numeric: tabular-nums; line-height: var(--lh-row); }
284
+ .vzr-q { margin: 0; font-size: var(--fs-body); line-height: 1.5; color: var(--cz-ink2); }
285
285
  .vzr-film { display: flex; gap: 6px; align-items: center; overflow: hidden; }
286
286
  .vzr-film.all { flex-wrap: wrap; }
287
287
  .vzr-film .vzp-th { width: 72px; height: 44px; }
288
- .vzr-more { height: 44px; min-width: 44px; padding: 0 8px !important; border-radius: 6px; background: var(--cz-well) !important; color: var(--cz-ink2); font-size: var(--fs-2); font-weight: 800; display: inline-grid !important; place-items: center; }
288
+ .vzr-more { height: 44px; min-width: 44px; padding: 0 8px !important; border-radius: 6px; background: var(--cz-well) !important; color: var(--cz-ink2); font-size: var(--fs-label); font-weight: var(--fw-strong); display: inline-grid !important; place-items: center; line-height: var(--lh-label); }
289
289
  .vzr-dock { position: sticky; bottom: 0; z-index: 2; flex-direction: row !important; align-items: center; gap: 14px !important; padding: 10px 16px !important; border-radius: 22px; background: var(--cz-card) !important; box-shadow: 0 18px 44px -18px color-mix(in oklab, var(--cz-ink) 40%, transparent), 0 0 0 1px var(--cz-hair); }
290
290
  .vzr-dock .vzp-ctl { flex: none; }
291
291
  .vzr-dock .vzp-ctl .vzp-mut { flex: none; }
292
292
  .vzr-tl { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
293
293
  .vzr-tops { align-items: flex-end; }
294
- .vzr-tops .vzp-top { white-space: normal; text-overflow: clip; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-height: 1.2; font-weight: 700; color: var(--cz-ink2); padding: 0 6px 0 0 !important; text-align: left !important; }
295
- .vzr-tops .vzp-top[aria-current="true"] { color: var(--cz-ink); font-weight: 800; }
294
+ .vzr-tops .vzp-top { white-space: normal; text-overflow: clip; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-height: 1.2; font-weight: var(--fw-strong); color: var(--cz-ink2); padding: 0 6px 0 0 !important; text-align: left !important; }
295
+ .vzr-tops .vzp-top[aria-current="true"] { color: var(--cz-ink); font-weight: var(--fw-strong); }
296
296
  .vzp-kd[data-k="decision"] { fill: var(--cz-ok); }
297
297
  .vzp-kd[data-k="action"] { fill: var(--cz-blue); }
298
298
  .vzp-kd[data-k="question"] { fill: var(--cz-late); }
299
299
  /* a word fixed in place (MvF): fixed in green, a guess underlined dotted, the field in place */
300
- .vzr-fx { background: var(--cz-okbg); border-radius: 5px; padding: 0 3px; font-weight: 700; color: var(--cz-ink); }
301
- .vzr-fl { display: inline !important; padding: 0 !important; font: inherit; color: var(--cz-ink); font-weight: 700; border-bottom: 2px dotted var(--cz-late) !important; border-radius: 0 !important; cursor: pointer; }
300
+ .vzr-fx { background: var(--cz-okbg); border-radius: 5px; padding: 0 3px; font-weight: var(--fw-strong); color: var(--cz-ink); }
301
+ .vzr-fl { display: inline !important; padding: 0 !important; font: inherit; color: var(--cz-ink); font-weight: var(--fw-strong); border-bottom: 2px dotted var(--cz-late) !important; border-radius: 0 !important; cursor: pointer; }
302
302
  .vzr-fe { display: inline-flex; align-items: center; gap: 4px; padding: 0 2px 0 8px; border-radius: 10px; background: var(--cz-card); box-shadow: 0 0 0 2px var(--cz-blue); vertical-align: middle; }
303
- .vzr-fe input { width: 12ch; height: 28px; border: 0; outline: 0; background: transparent; font: inherit; font-weight: 800; color: var(--cz-ink); }
303
+ .vzr-fe input { width: 12ch; height: 28px; border: 0; outline: 0; background: transparent; font: inherit; font-weight: var(--fw-strong); color: var(--cz-ink); }
304
304
  .vzr-ok { width: 26px; height: 26px; border-radius: 50%; display: inline-grid !important; place-items: center; background: var(--cz-blueink) !important; color: var(--cz-card); }
305
305
  .vzr-ok svg, .vzr-ev .vzp-ib svg, .vzr-pts svg, .vzr-cfall svg { fill: none; stroke: currentColor; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
306
306
  .vzr-ev .vzp-fill, .vzr-pri svg { fill: currentColor; stroke: none; }
@@ -323,50 +323,50 @@
323
323
  /* Calendar | Notes and + (XvACal): a full-width switch, the active half a white pill */
324
324
  .vzc-top { display: flex; align-items: center; gap: 8px; }
325
325
  .vzc-seg { flex: 1; display: grid; grid-auto-flow: column; grid-auto-columns: max-content; gap: 2px; padding: 4px; border-radius: 999px; background: var(--cz-well); }
326
- .vzc-seg > button { all: unset; cursor: pointer; height: 30px; padding: 0 16px; border-radius: 999px; font: 600 var(--fs-2) var(--cz-sans); color: var(--cz-ink2); display: inline-flex; align-items: center; }
326
+ .vzc-seg > button { all: unset; cursor: pointer; height: 30px; padding: 0 16px; border-radius: 999px; font: var(--fw-strong) var(--fs-label)/var(--lh-label) var(--cz-sans); color: var(--cz-ink2); display: inline-flex; align-items: center; }
327
327
  .vzc-seg > button[aria-selected="true"] { background: var(--cz-card); color: var(--cz-ink); box-shadow: 0 1px 3px rgba(42,46,53,.12); }
328
328
  .vzc-seg > button:focus-visible { outline: 2px solid var(--cz-blue); outline-offset: 1px; }
329
329
  .vz-cal > .czs-sum { margin: 0; }
330
330
  .vzc-head { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
331
331
  .vzc-head .vzm-h2 { margin-right: 10px; }
332
- .vzc-mut { color: var(--cz-ink3); font-size: var(--fs-2); }
332
+ .vzc-mut { color: var(--cz-ink3); font-size: var(--fs-meta); line-height: var(--lh-meta); }
333
333
  /* the week grid */
334
334
  .vzc-wk { display: grid; grid-template-columns: 44px repeat(5, minmax(84px, 1fr)) repeat(2, 64px); border: 1px solid var(--cz-hair); border-radius: 16px; overflow: auto; max-height: 640px; }
335
335
  .vzc-col { min-width: 0; border-left: 1px solid var(--cz-hair); }
336
336
  .vzc-col.vzc-gut { border-left: 0; }
337
337
  .vzc-col.we { background: color-mix(in oklab, var(--cz-ink) 3%, transparent); }
338
- .vzc-hd { position: sticky; top: 0; z-index: 2; height: 58px; padding: 8px 8px 6px; background: var(--cz-card); border-bottom: 1px solid var(--cz-hair); display: flex; flex-direction: column; gap: 4px; font-size: var(--fs-2); color: var(--cz-ink2); }
338
+ .vzc-hd { position: sticky; top: 0; z-index: 2; height: 58px; padding: 8px 8px 6px; background: var(--cz-card); border-bottom: 1px solid var(--cz-hair); display: flex; flex-direction: column; gap: 4px; font-size: var(--fs-meta); color: var(--cz-ink2); line-height: var(--lh-meta); }
339
339
  .vzc-col.we .vzc-hd { background: color-mix(in oklab, var(--cz-ink) 3%, var(--cz-card)); }
340
- .vzc-dn { font-size: var(--fs-2); font-weight: 700; color: var(--cz-ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
340
+ .vzc-dn { font-size: var(--fs-label); font-weight: var(--fw-strong); color: var(--cz-ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; line-height: var(--lh-label); }
341
341
  .vzc-hd.now .vzc-dn, .vzc-hd.now small { color: var(--cz-blueink); }
342
- .vzc-hd small { font-size: var(--fs-2); }
342
+ .vzc-hd small { font-size: var(--fs-meta); line-height: var(--lh-meta); }
343
343
  .vzc-lb { display: block; height: 4px; border-radius: 2px; background: var(--cz-well); overflow: hidden; }
344
344
  .vzc-lb i { display: block; height: 100%; width: var(--w, 0); border-radius: 2px; background: color-mix(in oklab, var(--cz-blue) 55%, var(--cz-well2)); }
345
345
  .vzc-hd.now .vzc-lb i { background: var(--cz-blue); }
346
346
  .vzc-body { position: relative; height: var(--hh, 520px); background-image: linear-gradient(var(--cz-hair) 1px, transparent 1px); background-size: 100% 52px; }
347
347
  .vzc-body.now { background-color: color-mix(in oklab, var(--cz-blue) 5%, transparent); }
348
348
  .vzc-gut .vzc-body { background-image: none; }
349
- .vzc-gut .vzc-body i { position: absolute; right: 8px; top: calc(var(--t, 0px) + 4px); font-style: normal; font-size: var(--fs-1); color: var(--cz-ink3); }
350
- .vzc-ev { position: absolute; top: var(--t, 0); height: var(--h, 24px); left: calc(4px + (100% - 8px) * var(--l, 0) / var(--lc, 1)); width: calc((100% - 8px) / var(--lc, 1) - 2px); display: flex !important; flex-direction: column; gap: 1px; padding: 4px 8px !important; border-radius: 8px; background: var(--cz-bluebg) !important; color: var(--cz-ink); font-size: var(--fs-2); line-height: 1.3; overflow: hidden; z-index: 1; }
349
+ .vzc-gut .vzc-body i { position: absolute; right: 8px; top: calc(var(--t, 0px) + 4px); font-style: normal; font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
350
+ .vzc-ev { position: absolute; top: var(--t, 0); height: var(--h, 24px); left: calc(4px + (100% - 8px) * var(--l, 0) / var(--lc, 1)); width: calc((100% - 8px) / var(--lc, 1) - 2px); display: flex !important; flex-direction: column; gap: 1px; padding: 4px 8px !important; border-radius: 8px; background: var(--cz-bluebg) !important; color: var(--cz-ink); font-size: var(--fs-meta); line-height: 1.3; overflow: hidden; z-index: 1; }
351
351
  .vzc-ev > * { flex: none; }
352
- .vzc-ev b { font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
353
- .vzc-ev span { font-size: var(--fs-1); color: var(--cz-ink2); }
352
+ .vzc-ev b { font-weight: var(--fw-strong); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
353
+ .vzc-ev span { font-size: var(--fs-meta); color: var(--cz-ink2); line-height: var(--lh-meta); }
354
354
  .vzc-ev.un { background: var(--cz-card) !important; border: 1px dashed var(--cz-ink3) !important; }
355
355
  .vzc-ev.ring { box-shadow: 0 0 0 2px var(--cz-blue); }
356
356
  .vzc-ev.past { opacity: .85; }
357
357
  .vzc-ev:hover { filter: brightness(.97); }
358
- .vzc-link { color: var(--cz-blueink) !important; font-weight: 700; cursor: pointer; }
358
+ .vzc-link { color: var(--cz-blueink) !important; font-weight: var(--fw-strong); cursor: pointer; }
359
359
  .vzc-nl { position: absolute; left: 0; right: 0; top: var(--t, 0); height: 2px; background: var(--cz-blue); z-index: 2; }
360
360
  .vzc-ads { display: flex; flex-direction: column; gap: 2px; padding: 4px; border-bottom: 1px solid var(--cz-hair); }
361
- .vzc-ad { padding: 2px 6px !important; border-radius: 6px; background: var(--cz-bluebg) !important; font-size: var(--fs-2); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
362
- .vzc-leg { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; font-size: var(--fs-2); color: var(--cz-ink2); }
361
+ .vzc-ad { padding: 2px 6px !important; border-radius: 6px; background: var(--cz-bluebg) !important; font-size: var(--fs-meta); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; line-height: var(--lh-meta); }
362
+ .vzc-leg { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; font-size: var(--fs-meta); color: var(--cz-ink2); line-height: var(--lh-meta); }
363
363
  .vzc-leg > span { display: inline-flex; align-items: center; gap: 6px; }
364
364
  .vzc-sw { width: 14px; height: 10px; border-radius: 3px; background: var(--cz-bluebg); }
365
365
  .vzc-sw.un { background: transparent; border: 1px dashed var(--cz-ink3); }
366
366
  /* the day (phone) */
367
367
  .vzc-days { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 6px; }
368
- .vzc-dy { display: flex !important; flex-direction: column; align-items: center; gap: 2px; min-height: 64px; padding: 10px 8px 8px !important; border-radius: 14px; background: var(--cz-well) !important; border: 1.5px solid transparent !important; font-size: var(--fs-1); color: var(--cz-ink2); text-align: center !important; }
369
- .vzc-dy b { font-size: var(--fs-4); font-weight: 700; color: var(--cz-ink); }
368
+ .vzc-dy { display: flex !important; flex-direction: column; align-items: center; gap: 2px; min-height: 64px; padding: 10px 8px 8px !important; border-radius: 14px; background: var(--cz-well) !important; border: 1.5px solid transparent !important; font-size: var(--fs-meta); color: var(--cz-ink2); text-align: center !important; line-height: var(--lh-meta); }
369
+ .vzc-dy b { font-size: var(--fs-row); font-weight: var(--fw-strong); color: var(--cz-ink); line-height: var(--lh-row); }
370
370
  .vzc-dy .vzc-lb { align-self: stretch; margin: 4px 6px 0; height: 3px; background: transparent; }
371
371
  .vzc-dy[aria-pressed="true"] { background: var(--cz-bluebg) !important; border-color: var(--cz-blue) !important; color: var(--cz-blueink); }
372
372
  .vzc-dy[aria-pressed="true"] b { color: var(--cz-blueink); }
@@ -376,27 +376,27 @@
376
376
  .vzc-de { display: grid !important; grid-template-columns: 44px minmax(0, 1fr) auto; align-items: center; gap: 12px; min-height: 44px; padding: 8px 10px !important; text-align: left !important; }
377
377
  .vzc-de + .vzc-de { border-top: 1px solid var(--cz-hair) !important; }
378
378
  .vzc-de.past .vzc-dt b { color: var(--cz-ink2); }
379
- .vzc-t { font-size: var(--fs-3); font-weight: 700; color: var(--cz-ink); font-variant-numeric: tabular-nums; }
379
+ .vzc-t { font-size: var(--fs-row); font-weight: var(--fw-strong); color: var(--cz-ink); font-variant-numeric: tabular-nums; line-height: var(--lh-row); }
380
380
  .vzc-dt { display: flex; flex-direction: column; gap: 1px; min-width: 0; }
381
- .vzc-dt b { font-size: var(--fs-3); font-weight: 700; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
382
- .vzc-dt small { font-size: var(--fs-2); color: var(--cz-ink2); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
383
- .vzc-de .vzc-link { padding: 4px 10px; border-radius: 999px; background: var(--cz-well); color: var(--cz-ink) !important; font-size: var(--fs-2); font-weight: 600; }
381
+ .vzc-dt b { font-size: var(--fs-row); font-weight: var(--fw-strong); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; line-height: var(--lh-row); }
382
+ .vzc-dt small { font-size: var(--fs-meta); color: var(--cz-ink2); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; line-height: var(--lh-meta); }
383
+ .vzc-de .vzc-link { padding: 4px 10px; border-radius: 999px; background: var(--cz-well); color: var(--cz-ink) !important; font-size: var(--fs-label); font-weight: var(--fw-strong); line-height: var(--lh-label); }
384
384
  .vzc-nx { width: 8px; height: 8px; margin-right: 4px; border-radius: 50%; background: var(--cz-blue); box-shadow: 0 0 0 3px var(--cz-bluebg); }
385
385
  /* the month */
386
386
  .vzc-mg { border: 1px solid var(--cz-hair); border-radius: 16px; overflow: hidden; }
387
387
  .vzc-mh, .vzc-mb { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); }
388
- .vzc-mh span { padding: 8px; font-size: var(--fs-2); font-weight: 700; color: var(--cz-ink2); border-bottom: 1px solid var(--cz-hair); }
388
+ .vzc-mh span { padding: 8px; font-size: var(--fs-label); font-weight: var(--fw-strong); color: var(--cz-ink2); border-bottom: 1px solid var(--cz-hair); line-height: var(--lh-label); }
389
389
  .vzc-md { min-height: 92px; padding: 4px; display: flex; flex-direction: column; gap: 2px; border-top: 1px solid var(--cz-hair); border-left: 1px solid var(--cz-hair); min-width: 0; }
390
390
  .vzc-md:nth-child(7n + 1) { border-left: 0; }
391
391
  .vzc-md:nth-child(-n + 7) { border-top: 0; }
392
392
  .vzc-md.out { background: color-mix(in oklab, var(--cz-ink) 3%, transparent); color: var(--cz-ink3); }
393
- .vzc-mn { display: flex !important; align-items: center; justify-content: space-between; padding: 2px 4px !important; border-radius: 6px; font-size: var(--fs-2); }
393
+ .vzc-mn { display: flex !important; align-items: center; justify-content: space-between; padding: 2px 4px !important; border-radius: 6px; font-size: var(--fs-meta); line-height: var(--lh-meta); }
394
394
  .vzc-md.now .vzc-mn b { color: var(--cz-blueink); }
395
- .vzc-mn i { font-style: normal; font-size: var(--fs-1); color: var(--cz-ink3); }
396
- .vzc-me { display: block !important; padding: 1px 6px !important; border-radius: 6px; background: var(--cz-bluebg) !important; font-size: var(--fs-2); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
395
+ .vzc-mn i { font-style: normal; font-size: var(--fs-meta); color: var(--cz-ink3); line-height: var(--lh-meta); }
396
+ .vzc-me { display: block !important; padding: 1px 6px !important; border-radius: 6px; background: var(--cz-bluebg) !important; font-size: var(--fs-meta); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; line-height: var(--lh-meta); }
397
397
  .vzc-me.un { background: transparent !important; border: 1px dashed var(--cz-ink3) !important; }
398
398
  .vzc-me time { color: var(--cz-ink3); margin-right: 4px; }
399
- .vzc-more { font-size: var(--fs-2); font-weight: 700; color: var(--cz-blueink); padding: 0 6px !important; }
399
+ .vzc-more { font-size: var(--fs-label); font-weight: var(--fw-strong); color: var(--cz-blueink); padding: 0 6px !important; line-height: var(--lh-label); }
400
400
  /* the notes tab (MtNotes) */
401
401
  .vzc-find { min-height: 42px; }
402
402
  .vzc-find .vzc-mut { white-space: nowrap; }
@@ -404,17 +404,17 @@
404
404
  .vzc-grp { display: flex; flex-direction: column; gap: 6px; }
405
405
  .vzc-card { display: flex; flex-direction: column; border-radius: 16px; border: 1px solid var(--cz-hair); overflow: hidden; }
406
406
  .vzc-card .vzc-nr { border-top: 1px solid var(--cz-hair) !important; border-radius: 0; }
407
- .vzc-ch { display: flex !important; align-items: center; gap: 8px; width: 100%; min-height: 44px; padding: 0 14px !important; font-size: var(--fs-3); }
407
+ .vzc-ch { display: flex !important; align-items: center; gap: 8px; width: 100%; min-height: 44px; padding: 0 14px !important; font-size: var(--fs-body); line-height: var(--lh-body); }
408
408
  .vzc-ch[aria-expanded="true"] { background: var(--cz-well) !important; }
409
409
  .vzc-ch .vzc-mut { margin-left: auto; }
410
- .vzc-ch b { font-weight: 700; }
410
+ .vzc-ch b { font-weight: var(--fw-strong); }
411
411
  .vzc-ch .vz-cc { margin-left: 4px; }
412
- .vzc-nr { display: flex !important; align-items: center; gap: 10px; width: 100%; padding: 10px 12px !important; border-radius: 12px; font-size: var(--fs-3); }
412
+ .vzc-nr { display: flex !important; align-items: center; gap: 10px; width: 100%; padding: 10px 12px !important; border-radius: 12px; font-size: var(--fs-body); line-height: var(--lh-body); }
413
413
  .vzc-grp > .vzc-nr { border-bottom: 1px solid var(--cz-hair) !important; border-radius: 0; }
414
- .vzc-nr b { font-weight: 700; }
414
+ .vzc-nr b { font-weight: var(--fw-strong); }
415
415
  .vzc-nr > span:not(.vz-cc):not(.vzc-mic) { flex: 1; min-width: 0; }
416
- .vzc-nr small { display: block; font-size: var(--fs-2); color: var(--cz-ink2); margin-top: 2px; overflow: hidden; text-overflow: ellipsis; }
417
- .vzc-nr mark { background: var(--cz-bluebg); color: var(--cz-blueink); border-radius: 4px; padding: 0 2px; font-weight: 700; }
416
+ .vzc-nr small { display: block; font-size: var(--fs-meta); color: var(--cz-ink2); margin-top: 2px; overflow: hidden; text-overflow: ellipsis; line-height: var(--lh-meta); }
417
+ .vzc-nr mark { background: var(--cz-bluebg); color: var(--cz-blueink); border-radius: 4px; padding: 0 2px; font-weight: var(--fw-strong); }
418
418
  .vzc-mic { width: 28px; height: 28px; border-radius: 50%; display: grid; place-items: center; background: var(--cz-well); color: var(--cz-ink2); flex: none; }
419
419
  .vzc-dash { border: 1px dashed var(--cz-ink3); background: transparent; margin-left: 4px; }
420
420
  /* a narrow pane: the week scrolls sideways */