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
@@ -2,7 +2,7 @@
2
2
  @font-face{font-family:"IBM Plex Mono";src:url(/vendor/ibm-plex-mono-400.woff2) format("woff2");font-weight:400;font-display:swap}
3
3
  @font-face{font-family:"IBM Plex Mono";src:url(/vendor/ibm-plex-mono-500.woff2) format("woff2");font-weight:500;font-display:swap}
4
4
  @font-face{font-family:"IBM Plex Mono";src:url(/vendor/ibm-plex-mono-700.woff2) format("woff2");font-weight:600 700;font-display:swap}
5
- :root{--fs-1:11px;--fs-2:12px;--fs-3:14px;--fs-4:16px;--fs-5:20px;--fs-6:28px}
5
+ :root{--fw-regular:400;--fw-strong:600;--fs-field:16px;--fs-display:26px;--fs-page:26px;--fs-panel:18px;--fs-section:15px;--fs-row:15px;--fs-body:15px;--fs-meta:13px;--fs-label:13px;--fs-badge:13px;--lh-display:1.2;--lh-page:1.2;--lh-panel:1.3;--lh-section:1.35;--lh-row:1.4;--lh-body:1.6;--lh-meta:1.5;--lh-label:1.35;--lh-badge:1.2}
6
6
  /* pm/premium-vw-cal.css — the calendar grid in the premium viewer: Day, Week and Month (initiative premium-viewer, R8; premium-vw-cal.js).
7
7
  * Loaded once by vwStyle('cal'). Sizes are only var(--fs-1..6), weights 400/500/600 (premium-console-type.test.js).
8
8
  * The pane's own width picks the layout: the timeline from 560px, the day list below it (the mockup's Week and Agenda). */
@@ -11,16 +11,16 @@
11
11
  .vc{container-type:inline-size}
12
12
  .vc .vc-w{background:var(--card-solid);border:1px solid var(--hair);border-radius:8px;box-shadow:var(--card-shadow);overflow:hidden}
13
13
  .vc .vc-h{display:flex;align-items:center;gap:8px;padding:10px 12px;border-bottom:1px solid var(--hair);flex-wrap:wrap}
14
- .vc .vc-t{font-size:var(--fs-3);font-weight:600;color:var(--ink)}
15
- .vc .vc-cap{flex:1 0 auto;font:400 var(--fs-2) var(--mono);color:var(--ink-3);white-space:nowrap}
14
+ .vc .vc-t{font-size:var(--fs-row);font-weight:var(--fw-strong);color:var(--ink);line-height:var(--lh-row);}
15
+ .vc .vc-cap{flex:1 0 auto;font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);color:var(--ink-3);white-space:nowrap}
16
16
  .vc .vc-ib{width:36px;height:36px;border-radius:6px;display:grid;place-items:center;background:var(--well);color:var(--ink)}
17
17
  .vc .vc-ib .i{width:16px;height:16px}
18
- .vc .vc-tdy{min-height:36px;padding:0 12px;border-radius:6px;border:1px solid var(--hair);font-size:var(--fs-2);font-weight:500;color:var(--ink)}
18
+ .vc .vc-tdy{min-height:36px;padding:0 12px;border-radius:6px;border:1px solid var(--hair);font-size:var(--fs-meta);font-weight:var(--fw-regular);color:var(--ink);line-height:var(--lh-meta);}
19
19
  .vc .vc-seg{display:flex;gap:2px;padding:3px;border-radius:8px;background:var(--well)}
20
- .vc .vc-seg button{min-height:32px;padding:0 12px;border-radius:6px;font-size:var(--fs-2);font-weight:500;color:var(--ink-2)}
20
+ .vc .vc-seg button{min-height:32px;padding:0 12px;border-radius:6px;font-size:var(--fs-meta);font-weight:var(--fw-regular);color:var(--ink-2);line-height:var(--lh-meta);}
21
21
  .vc .vc-seg button[aria-pressed="true"]{background:var(--solid);color:var(--on-solid)}
22
22
  .vc button:focus-visible{outline:2px solid var(--ember);outline-offset:2px}
23
- .vc .vc-empty{margin:0;padding:12px 14px;font-size:var(--fs-2);color:var(--ink-3);border-bottom:1px solid var(--hair)}
23
+ .vc .vc-empty{margin:0;padding:12px 14px;font-size:var(--fs-meta);color:var(--ink-3);border-bottom:1px solid var(--hair);line-height:var(--lh-meta);}
24
24
  .vc .vc-w>.vc-empty:last-child{border-bottom:0}
25
25
  /* the timeline (Day and Week), as the console's Calendar draws it (console3.css .cal3-tg): 46px an hour, every hour labelled */
26
26
  .vc{--vc-ev:color-mix(in oklab,var(--ember) 30%,var(--card-solid));--vc-evh:color-mix(in oklab,var(--ember) 42%,var(--card-solid));--vc-we:color-mix(in oklab,var(--well) 70%,transparent);--vc-now:color-mix(in oklab,var(--ember) 9%,transparent)}
@@ -30,75 +30,75 @@
30
30
  .vc .vc-dh{display:grid;gap:4px;align-content:start;min-width:0;padding:6px 4px 4px;border-left:1px solid var(--hair);border-bottom:1px solid var(--hair)}
31
31
  .vc .vc-c{border-bottom:1px solid var(--hair)}
32
32
  .vc .vc-dl{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:0 6px;min-width:0}
33
- .vc .vc-dl b,.vc .vc-db{font:500 var(--fs-2) var(--mono);color:var(--ink);white-space:nowrap}
33
+ .vc .vc-dl b,.vc .vc-db{font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);color:var(--ink);white-space:nowrap}
34
34
  .vc .vc-db{min-height:24px;padding:2px 4px;border-radius:6px;text-align:left}
35
35
  .vc .vc-dh.now .vc-dl b,.vc .vc-dh.now .vc-db{color:var(--ember-ink)}
36
- .vc .vc-hrs{font:400 var(--fs-1) var(--mono);color:var(--ink-3);white-space:nowrap}
36
+ .vc .vc-hrs{font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);color:var(--ink-3);white-space:nowrap}
37
37
  .vc .vc-lb{display:flex;gap:2px;height:5px;margin:0 4px}
38
38
  .vc .vc-lb i{display:block;border-radius:0;background:var(--well)}
39
39
  .vc .vc-lb i.tied{width:var(--tl-a,0);background:var(--ember)}
40
40
  .vc .vc-lb i.rt{width:var(--tl-b,0);background:var(--ink-3)}
41
41
  .vc .vc-lb::after{content:"";flex:1;background:var(--well)}
42
- .vc .vc-adl{font:400 var(--fs-1) var(--mono);color:var(--ink-3);padding:6px 4px;border-bottom:1px solid var(--hair)}
42
+ .vc .vc-adl{font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);color:var(--ink-3);padding:6px 4px;border-bottom:1px solid var(--hair)}
43
43
  .vc .vc-sc{min-width:0;min-height:30px;padding:3px;display:grid;gap:2px;align-content:start;border-left:1px solid var(--hair);border-bottom:1px solid var(--hair)}
44
44
  .vc .vc-sc.line{display:flex;flex-wrap:wrap;align-items:center;gap:4px}
45
45
  .vc .vc-sc.line .vc-ad{max-width:280px}
46
46
  .vc .vc-sc.we,.vc .vc-dh.we{background:var(--vc-we)}
47
- .vc .vc-none{padding:4px;font:400 var(--fs-1) var(--mono);color:var(--ink-3)}
48
- .vc .vc-ad{display:block;min-width:0;min-height:22px;border-radius:6px;padding:2px 6px;font-size:var(--fs-1);font-weight:500;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left;
47
+ .vc .vc-none{padding:4px;font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);color:var(--ink-3)}
48
+ .vc .vc-ad{display:block;min-width:0;min-height:22px;border-radius:6px;padding:2px 6px;font-size:var(--fs-meta);font-weight:var(--fw-regular);line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left;
49
49
  border-left:3px solid var(--ec,var(--ink-3));background:var(--well);color:var(--ink)}
50
- .vc .vc-ad.meet{border-left-color:var(--ember);background:var(--vc-ev);font-weight:600}
50
+ .vc .vc-ad.meet{border-left-color:var(--ember);background:var(--vc-ev);font-weight:var(--fw-strong)}
51
51
  .vc .vc-ad.t-warn{--ec:var(--ember)}.vc .vc-ad.t-bad{--ec:var(--bad)}.vc .vc-ad.t-ok{--ec:var(--ok)}
52
- .vc .vc-more{justify-self:start;min-height:20px;padding:0 6px;border-radius:6px;font:400 var(--fs-1) var(--mono);color:var(--ink-3)}
52
+ .vc .vc-more{justify-self:start;min-height:20px;padding:0 6px;border-radius:6px;font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);color:var(--ink-3)}
53
53
  .vc .vc-gut{position:relative;height:var(--tl-hh)}
54
- .vc .vc-gut i{position:absolute;top:var(--tl-t);right:6px;font:400 var(--fs-1) var(--mono);font-style:normal;color:var(--ink-3);line-height:1;padding-top:3px}
54
+ .vc .vc-gut i{position:absolute;top:var(--tl-t);right:6px;font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);font-style:normal;color:var(--ink-3);line-height:1;padding-top:3px}
55
55
  .vc .vc-day{position:relative;height:var(--tl-hh);border-left:1px solid var(--hair);background-image:repeating-linear-gradient(to bottom,var(--hair) 0 1px,transparent 1px 46px)}
56
56
  .vc .vc-day.we{background-color:var(--vc-we)}
57
57
  .vc .vc-day.now{background-color:var(--vc-now)}
58
58
  .vc .vc-ev{position:absolute;top:var(--tl-t);height:var(--tl-h);left:calc(2px + (100% - 4px) * var(--tl-l) / var(--tl-lc));width:calc((100% - 4px) / var(--tl-lc) - 2px);
59
- display:block;border-radius:6px;padding:3px 6px;font-size:var(--fs-2);line-height:1.3;overflow:hidden;white-space:nowrap;text-align:left;
59
+ display:block;border-radius:6px;padding:3px 6px;font-size:var(--fs-meta);line-height:1.3;overflow:hidden;white-space:nowrap;text-align:left;
60
60
  background:var(--vc-ev);color:var(--ink);box-shadow:inset 3px 0 0 var(--ember);z-index:1}
61
- .vc .vc-ev b{display:block;font-weight:600;overflow:hidden;text-overflow:ellipsis}
62
- .vc .vc-ev small{display:block;font:400 var(--fs-1) var(--mono);color:var(--ink-2);overflow:hidden;text-overflow:ellipsis}
61
+ .vc .vc-ev b{display:block;font-weight:var(--fw-strong);overflow:hidden;text-overflow:ellipsis}
62
+ .vc .vc-ev small{display:block;font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);color:var(--ink-2);overflow:hidden;text-overflow:ellipsis}
63
63
  .vc .vc-ev.rt{background:var(--well);color:var(--ink-2);box-shadow:inset 3px 0 0 var(--ink-3)}
64
- .vc .vc-ev.rt b{font-weight:500}
65
- .vc .vc-ev.sh{padding:1px 6px;font-size:var(--fs-1)}
64
+ .vc .vc-ev.rt b{font-weight:var(--fw-regular)}
65
+ .vc .vc-ev.sh{padding:1px 6px;font-size:var(--fs-meta);line-height:var(--lh-meta);}
66
66
  .vc .vc-ev.past{opacity:.55}
67
67
  .vc .vc-now{position:absolute;top:var(--tl-t);left:0;right:0;height:2px;background:var(--bad);z-index:2;pointer-events:none}
68
68
  .vc .vc-now::before{content:"";position:absolute;left:-4px;top:-3px;width:8px;height:8px;border-radius:6px;background:var(--bad)}
69
69
  /* the day list (Day and Week in a narrow pane) */
70
70
  .vc .vc-ag{display:none}
71
- .vc .vc-ag h4{margin:0;padding:10px 14px 4px;font-size:var(--fs-2);font-weight:600;color:var(--ink-3);border-top:1px solid var(--hair)}
71
+ .vc .vc-ag h4{margin:0;padding:10px 14px 4px;font-size:var(--fs-label);font-weight:var(--fw-strong);color:var(--ink-3);border-top:1px solid var(--hair);line-height:var(--lh-label);}
72
72
  .vc .vc-ag h4:first-child{border-top:0}
73
73
  .vc .vc-ag h4.now{color:var(--ember-ink)}
74
74
  .vc .vc-ag>.vc-ad{margin:2px 10px}
75
75
  .vc .vc-ar{display:flex;gap:10px;align-items:baseline;width:calc(100% - 20px);min-height:44px;margin:3px 10px;padding:8px 10px;border-radius:8px;text-align:left;
76
- box-shadow:inset 3px 0 0 var(--ember);background:var(--vc-ev);color:var(--ink);font-size:var(--fs-3)}
77
- .vc .vc-ar time{width:48px;flex:none;font:400 var(--fs-2) var(--mono);color:var(--ink-2)}
76
+ box-shadow:inset 3px 0 0 var(--ember);background:var(--vc-ev);color:var(--ink);font-size:var(--fs-body); line-height: var(--lh-body);}
77
+ .vc .vc-ar time{width:48px;flex:none;font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);color:var(--ink-2)}
78
78
  .vc .vc-ar span{min-width:0}
79
- .vc .vc-ar b{display:block;font-weight:500}
80
- .vc .vc-ar small{display:block;font-size:var(--fs-2);color:var(--ink-3)}
79
+ .vc .vc-ar b{display:block;font-weight:var(--fw-regular)}
80
+ .vc .vc-ar small{display:block;font-size:var(--fs-meta);color:var(--ink-3);line-height:var(--lh-meta);}
81
81
  .vc .vc-ar.rt{background:var(--well);box-shadow:inset 3px 0 0 var(--ink-3)}
82
82
  .vc .vc-ar.past{opacity:.7}
83
- .vc .vc-none{margin:0;padding:4px 14px 10px;font-size:var(--fs-2);color:var(--ink-3)}
83
+ .vc .vc-none{margin:0;padding:4px 14px 10px;font-size:var(--fs-meta);color:var(--ink-3);line-height:var(--lh-meta);}
84
84
  @container (max-width:559px){.vc .vc-sx:has(.vc-g:not(.one)){display:none}.vc .vc-ag{display:block;padding-bottom:8px}}
85
85
  /* the month, as the console draws it (console3.css .cal3-mg): a card per day, the weekend muted, today outlined */
86
86
  .vc .vc-mg{padding:8px}
87
87
  .vc .vc-mh{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;padding-bottom:4px}
88
- .vc .vc-mh span{padding:2px 8px;font:400 var(--fs-1) var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3)}
88
+ .vc .vc-mh span{padding:2px 8px;font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3)}
89
89
  .vc .vc-mb{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
90
90
  .vc .vc-md{min-width:0;min-height:96px;padding:4px;border:1px solid var(--hair);border-radius:8px;display:flex;flex-direction:column;gap:2px;background:var(--card-solid)}
91
91
  .vc .vc-md:nth-child(7n+6),.vc .vc-md:nth-child(7n){background:var(--vc-we)}
92
92
  .vc .vc-md.out{opacity:.55}
93
93
  .vc .vc-md.now{border-color:var(--ember);box-shadow:inset 0 0 0 1px var(--ember)}
94
94
  .vc .vc-dn{display:flex;align-items:center;gap:6px;min-height:24px;padding:0 4px;border-radius:6px;text-align:left}
95
- .vc .vc-dn b{font:500 var(--fs-2) var(--mono);color:var(--ink)}
95
+ .vc .vc-dn b{font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);color:var(--ink)}
96
96
  .vc .vc-md.now .vc-dn b{color:var(--ember-ink)}
97
- .vc .vc-dn i{font-style:normal;font:400 var(--fs-1) var(--mono);color:var(--ink-3)}
98
- .vc .vc-me{display:block;min-width:0;min-height:20px;border-radius:6px;padding:1px 6px;font-size:var(--fs-1);font-weight:500;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left;color:var(--ink);
97
+ .vc .vc-dn i{font-style:normal;font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);color:var(--ink-3)}
98
+ .vc .vc-me{display:block;min-width:0;min-height:20px;border-radius:6px;padding:1px 6px;font-size:var(--fs-meta);font-weight:var(--fw-regular);line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:left;color:var(--ink);
99
99
  background:var(--vc-ev);box-shadow:inset 3px 0 0 var(--ember)}
100
- .vc .vc-me time{font:400 var(--fs-1) var(--mono);color:var(--ink-2);margin-right:4px}
101
- .vc .vc-md>.vc-ad{font-size:var(--fs-1)}
100
+ .vc .vc-me time{font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);color:var(--ink-2);margin-right:4px}
101
+ .vc .vc-md>.vc-ad{font-size:var(--fs-meta);line-height:var(--lh-meta);}
102
102
  .vc .vc-md>.vc-more{align-self:flex-start}
103
103
  @container (max-width:559px){
104
104
  .vc .vc-mg{padding:4px}.vc .vc-mb,.vc .vc-mh{gap:2px}
@@ -106,7 +106,7 @@
106
106
  .vc .vc-md>.vc-me,.vc .vc-md>.vc-more,.vc .vc-md>.vc-ad{display:none}
107
107
  .vc .vc-dn{flex:1;flex-direction:column;justify-content:center;gap:2px;min-height:44px;padding:0}
108
108
  .vc .vc-dn i{display:block}
109
- .vc .vc-dn b{font-size:var(--fs-2)}
109
+ .vc .vc-dn b{font-size:var(--fs-meta);line-height:var(--lh-meta);}
110
110
  .vc .vc-mh span{padding:6px 2px;text-align:center}
111
111
  }
112
112
  @media (max-width:640px){.vc-open,.vc .vc-ib{width:44px;height:44px}.vc .vc-tdy,.vc .vc-seg button,.vc .vc-db,.vc .vc-more,.vc .vc-ad{min-height:44px}.vc .vc-ad{padding-block:0;line-height:44px}}
@@ -2,22 +2,22 @@
2
2
  @font-face{font-family:"IBM Plex Mono";src:url(/vendor/ibm-plex-mono-400.woff2) format("woff2");font-weight:400;font-display:swap}
3
3
  @font-face{font-family:"IBM Plex Mono";src:url(/vendor/ibm-plex-mono-500.woff2) format("woff2");font-weight:500;font-display:swap}
4
4
  @font-face{font-family:"IBM Plex Mono";src:url(/vendor/ibm-plex-mono-700.woff2) format("woff2");font-weight:600 700;font-display:swap}
5
- :root{--fs-1:11px;--fs-2:12px;--fs-3:14px;--fs-4:16px;--fs-5:20px;--fs-6:28px}
5
+ :root{--fw-regular:400;--fw-strong:600;--fs-field:16px;--fs-display:26px;--fs-page:26px;--fs-panel:18px;--fs-section:15px;--fs-row:15px;--fs-body:15px;--fs-meta:13px;--fs-label:13px;--fs-badge:13px;--lh-display:1.2;--lh-page:1.2;--lh-panel:1.3;--lh-section:1.35;--lh-row:1.4;--lh-body:1.6;--lh-meta:1.5;--lh-label:1.35;--lh-badge:1.2}
6
6
  /* pm/premium-vw-copy.css — a Confluence page or Google Doc in the premium viewer (premium-vw-copies.js, premium-viewer R11). Loaded by vwStyle('copy'). */
7
7
  .cpv{display:grid;gap:12px;max-width:760px}
8
8
  .cpv-bar{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid var(--hair);border-radius:8px;background:var(--card-solid);box-shadow:var(--card-shadow)}
9
9
  .cpv-bar.warn{background:color-mix(in oklab,var(--ember) 12%,var(--card-solid))}
10
10
  .cpv-bar>div{flex:1;min-width:0;display:grid;gap:2px}
11
- .cpv-bar b{font-size:var(--fs-3);font-weight:600;color:var(--ink)}
12
- .cpv-bar small{font-size:var(--fs-2);color:var(--ink-3)}
13
- .cpv-lg{width:28px;height:28px;flex:none;display:grid;place-items:center;border-radius:6px;background:var(--well);color:var(--ink);font-size:var(--fs-2);font-weight:600}
11
+ .cpv-bar b{font-size:var(--fs-row);font-weight:var(--fw-strong);color:var(--ink);line-height:var(--lh-row);}
12
+ .cpv-bar small{font-size:var(--fs-meta);color:var(--ink-3);line-height:var(--lh-meta);}
13
+ .cpv-lg{width:28px;height:28px;flex:none;display:grid;place-items:center;border-radius:6px;background:var(--well);color:var(--ink);font-size:var(--fs-label);font-weight:var(--fw-strong);line-height:var(--lh-label);}
14
14
  .cpv-why{margin:0}
15
- .cpv-why code{font-size:var(--fs-2)}
15
+ .cpv-why code{font-size:var(--fs-meta);line-height:var(--lh-meta);}
16
16
  .cpv-acts{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
17
17
  .cpv-acts .dmcta{border-radius:6px;text-decoration:none}
18
18
  .cpv-empty{display:grid;gap:8px;padding:18px 20px;border:1px dashed var(--ink-3);border-radius:8px;color:var(--ink-2)}
19
- .cpv-empty b{font-size:var(--fs-4);font-weight:600;color:var(--ink)}
20
- .cpv-empty p{margin:0;font-size:var(--fs-3)}
19
+ .cpv-empty b{font-size:var(--fs-row);font-weight:var(--fw-strong);color:var(--ink);line-height:var(--lh-row);}
20
+ .cpv-empty p{margin:0;font-size:var(--fs-body);line-height:var(--lh-body);}
21
21
  .cpv-page{padding:18px 22px;border:1px solid var(--hair);border-radius:8px;background:var(--card-solid)}
22
22
  .cpv-page.dim{opacity:.62}
23
23
  @media (max-width:700px){
@@ -1,4 +1,4 @@
1
- :root{--fs-1:11px;--fs-2:12px;--fs-3:14px;--fs-4:16px;--fs-5:20px;--fs-6:28px}
1
+ :root{--fw-regular:400;--fw-strong:600;--fs-field:16px;--fs-display:26px;--fs-page:26px;--fs-panel:18px;--fs-section:15px;--fs-row:15px;--fs-body:15px;--fs-meta:13px;--fs-label:13px;--fs-badge:13px;--lh-display:1.2;--lh-page:1.2;--lh-panel:1.3;--lh-section:1.35;--lh-row:1.4;--lh-body:1.6;--lh-meta:1.5;--lh-label:1.35;--lh-badge:1.2}
2
2
  /* premium-vw-doc.css — the document page in the premium viewer (initiative premium-viewer, S2). Loaded once by vwStyle('doc'). Sizes are the console's
3
3
  * six steps only (var(--fs-1..6)), weights 400/500/600, the page's own tokens otherwise. Checked by premium-console-type.test.js. */
4
4
  :root{--vw-lnk:rgb(36,92,190);--vw-pur:rgb(110,72,190)}
@@ -6,74 +6,74 @@
6
6
  @media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--vw-lnk:rgb(130,170,250);--vw-pur:rgb(186,160,250)}}
7
7
  .vwdoc{max-width:780px;margin:0 auto;padding:2px 0 24px;position:relative}
8
8
  .vwdoc .gap{flex:1}
9
- .vwmut{color:var(--ink-3);font-size:var(--fs-2);margin:0}
9
+ .vwmut{color:var(--ink-3);font-size:var(--fs-meta);margin:0;line-height:var(--lh-meta);}
10
10
  .vwline{margin:0 0 10px}
11
- .vwfnone{margin:8px 0;padding:22px 20px;border:1px dashed var(--hair);border-radius:8px;display:grid;gap:6px;color:var(--ink-2);font-size:var(--fs-3)}
11
+ .vwfnone{margin:8px 0;padding:22px 20px;border:1px dashed var(--hair);border-radius:8px;display:grid;gap:6px;color:var(--ink-2);font-size:var(--fs-body);line-height:var(--lh-body);}
12
12
  .vwart .vwbtn{text-decoration:none;justify-self:start}
13
- .vwfnone b{font-weight:500;color:var(--ink)}
14
- .vwfnone code{font:400 var(--fs-1) var(--mono);color:var(--ink-3);overflow-wrap:anywhere}
15
- .vwempty{color:var(--ink-3);font-size:var(--fs-3);padding:24px 4px}
13
+ .vwfnone b{font-weight:var(--fw-regular);color:var(--ink)}
14
+ .vwfnone code{font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);color:var(--ink-3);overflow-wrap:anywhere}
15
+ .vwempty{color:var(--ink-3);font-size:var(--fs-body);padding:24px 4px;line-height:var(--lh-body);}
16
16
  .vwrow{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px}
17
17
  .vwrow .vwmut{flex:1;min-width:160px}
18
- .vwbtn{min-height:34px;padding:0 13px;border-radius:6px;border:1px solid var(--hair);background:var(--card-solid);color:var(--ink);font:500 var(--fs-2) var(--sans);display:inline-flex;align-items:center;gap:6px;cursor:pointer}
18
+ .vwbtn{min-height:34px;padding:0 13px;border-radius:6px;border:1px solid var(--hair);background:var(--card-solid);color:var(--ink);font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--sans);display:inline-flex;align-items:center;gap:6px;cursor:pointer}
19
19
  .vwbtn.pri{background:var(--solid);color:var(--on-solid);border-color:var(--solid)}
20
20
  .vwbtn[disabled]{opacity:.45;cursor:default}
21
21
  .vwbtn .i,.vwseg .i,.vwtb .i,.vwcl .i,.vwagt>.i{width:15px;height:15px;flex:none}
22
- .vwin{flex:1;min-width:0;min-height:34px;padding:0 11px;border-radius:6px;border:1px solid var(--hair);background:var(--card-solid);color:var(--ink);font:400 var(--fs-3) var(--sans)}
22
+ .vwin{flex:1;min-width:0;min-height:34px;padding:0 11px;border-radius:6px;border:1px solid var(--hair);background:var(--card-solid);color:var(--ink);font:var(--fw-regular) var(--fs-body)/var(--lh-body) var(--sans)}
23
23
  .vwdoc :focus-visible{outline:2px solid var(--ember);outline-offset:2px}
24
24
  /* the document's own bar: Page, Edit, Markdown, and Ask the agent */
25
25
  .vwdt{display:flex;align-items:center;gap:8px;margin:0 0 12px;flex-wrap:wrap}
26
26
  .vwsg{display:inline-flex;padding:3px;border-radius:8px;background:var(--well);gap:2px}
27
- .vwseg{min-height:30px;padding:0 11px;border-radius:6px;border:0;background:transparent;color:var(--ink-2);font:500 var(--fs-2) var(--sans);display:inline-flex;align-items:center;gap:6px;cursor:pointer}
27
+ .vwseg{min-height:30px;padding:0 11px;border-radius:6px;border:0;background:transparent;color:var(--ink-2);font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--sans);display:inline-flex;align-items:center;gap:6px;cursor:pointer}
28
28
  .vwseg[aria-pressed="true"]{background:var(--card-solid);color:var(--ink);box-shadow:var(--card-shadow)}
29
29
  .vwseg[disabled]{opacity:.45;cursor:default}
30
30
  .vwask{margin:0 0 14px;padding:10px 12px;border:1px solid var(--hair);border-radius:8px;background:var(--card-solid)}
31
- .vwask textarea{width:100%;box-sizing:border-box;border:0;background:transparent;color:var(--ink);font:400 var(--fs-3)/1.5 var(--sans);resize:vertical;outline:0}
31
+ .vwask textarea{width:100%;box-sizing:border-box;border:0;background:transparent;color:var(--ink);font:var(--fw-regular) var(--fs-body)/1.5 var(--sans);resize:vertical;outline:0}
32
32
  /* an agent's edit: one bar, then the changed sections highlighted in the page */
33
- .vwag{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 12px;padding:8px 8px 8px 14px;border-radius:8px;background:var(--card-solid);border:1px solid var(--hair);box-shadow:var(--card-shadow);font-size:var(--fs-2);color:var(--ink-2)}
33
+ .vwag{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 12px;padding:8px 8px 8px 14px;border-radius:8px;background:var(--card-solid);border:1px solid var(--hair);box-shadow:var(--card-shadow);font-size:var(--fs-meta);color:var(--ink-2);line-height:var(--lh-meta);}
34
34
  .vwagt{display:flex;gap:9px;align-items:flex-start;flex:1;min-width:200px}
35
35
  .vwagt>.i{color:var(--ember-ink);margin-top:2px}
36
- .vwagt b{display:block;color:var(--ink);font-weight:500}
36
+ .vwagt b{display:block;color:var(--ink);font-weight:var(--fw-regular)}
37
37
  .vwaga{display:flex;gap:6px}
38
38
  .vwchg{position:relative;margin:0 -12px 6px;padding:2px 12px 2px;border-left:3px solid var(--ok);background:color-mix(in oklab,var(--ok) 8%,transparent);border-top-right-radius:6px;border-bottom-right-radius:6px}
39
39
  .vwchg.removed{border-left-color:var(--bad);background:color-mix(in oklab,var(--bad) 7%,transparent)}
40
40
  .vwchg.removed .vwcb{text-decoration:line-through;color:var(--ink-3)}
41
41
  .vwchg.off{border-left-color:var(--hair);background:transparent}
42
42
  .vwchg.off.removed .vwcb{text-decoration:none;color:inherit}
43
- .vwcl{display:flex;align-items:center;gap:6px;width:100%;min-height:30px;margin:4px 0 0;padding:0;border:0;background:transparent;color:var(--ok);font:500 var(--fs-1) var(--mono);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;text-align:left}
43
+ .vwcl{display:flex;align-items:center;gap:6px;width:100%;min-height:30px;margin:4px 0 0;padding:0;border:0;background:transparent;color:var(--ok);font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);letter-spacing:.04em;text-transform:uppercase;cursor:pointer;text-align:left}
44
44
  .vwchg.removed .vwcl{color:var(--bad)}
45
45
  .vwchg.off .vwcl{color:var(--ink-3)}
46
46
  .vwcl em{margin-left:auto;font-style:normal;text-transform:none;letter-spacing:0;font-family:var(--sans);color:var(--ink-3);text-decoration:underline}
47
47
  .vwbefore{margin:6px 0 10px;padding:10px 12px;border-radius:6px;background:var(--well);border:1px dashed var(--hair)}
48
- .vwlab{margin:0 0 6px;font:500 var(--fs-1) var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}
48
+ .vwlab{margin:0 0 6px;font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}
49
49
  /* the page itself, drawn like a Confluence page */
50
- .cf{background:var(--card-solid);border:1px solid var(--hair);border-radius:8px;padding:26px 36px 20px;box-shadow:var(--card-shadow);font-size:var(--fs-3);line-height:1.65;color:var(--ink);transition:box-shadow .25s}
50
+ .cf{background:var(--card-solid);border:1px solid var(--hair);border-radius:8px;padding:26px 36px 20px;box-shadow:var(--card-shadow);font-size:var(--fs-body);line-height:1.65;color:var(--ink);transition:box-shadow .25s}
51
51
  .cf.editing{box-shadow:0 0 0 2px color-mix(in oklab,var(--ember) 35%,transparent)}
52
- .cft{font:600 var(--fs-6)/1.25 var(--sans);letter-spacing:-.015em;margin:0 0 10px;outline:0}
53
- .cfby{display:flex;align-items:center;gap:8px;font-size:var(--fs-2);color:var(--ink-3);flex-wrap:wrap}
54
- .cfby .avdot{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--solid);color:var(--on-solid);font:600 var(--fs-1) var(--sans)}
52
+ .cft{font:var(--fw-strong) var(--fs-page)/1.25 var(--sans);letter-spacing:-.015em;margin:0 0 10px;outline:0}
53
+ .cfby{display:flex;align-items:center;gap:8px;font-size:var(--fs-meta);color:var(--ink-3);flex-wrap:wrap;line-height:var(--lh-meta);}
54
+ .cfby .avdot{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:var(--solid);color:var(--on-solid);font:var(--fw-strong) var(--fs-badge)/var(--lh-badge) var(--sans)}
55
55
  .cflb{display:flex;gap:6px;flex-wrap:wrap;margin-top:12px}
56
- .cflb span{font-size:var(--fs-1);padding:1px 8px;border-radius:6px;background:var(--well);color:var(--ink-2)}
57
- .cfpr{width:100%;border-collapse:collapse;margin:16px 0 0;font-size:var(--fs-2)}
58
- .cfpr th{width:150px;text-align:left;font-weight:500;background:var(--well);color:var(--ink-2)}
56
+ .cflb span{font-size:var(--fs-meta);padding:1px 8px;border-radius:6px;background:var(--well);color:var(--ink-2);line-height:var(--lh-meta);}
57
+ .cfpr{width:100%;border-collapse:collapse;margin:16px 0 0;font-size:var(--fs-meta);line-height:var(--lh-meta);}
58
+ .cfpr th{width:150px;text-align:left;font-weight:var(--fw-regular);background:var(--well);color:var(--ink-2)}
59
59
  .cfpr th,.cfpr td{border:1px solid var(--hair);padding:6px 11px;vertical-align:top;overflow-wrap:anywhere}
60
60
  .cfb{outline:0;min-height:80px}
61
61
  .cfb>:first-child{margin-top:18px}
62
- .cfb h2{font:600 var(--fs-5)/1.3 var(--sans);letter-spacing:-.01em;margin:26px 0 8px}
63
- .cfb h3{font:600 var(--fs-4)/1.35 var(--sans);margin:20px 0 6px}
64
- .cfb h4{font:600 var(--fs-3)/1.4 var(--sans);margin:16px 0 4px}
62
+ .cfb h2{font:var(--fw-strong) var(--fs-panel)/1.3 var(--sans);letter-spacing:-.01em;margin:26px 0 8px}
63
+ .cfb h3{font:var(--fw-strong) var(--fs-section)/1.35 var(--sans);margin:20px 0 6px}
64
+ .cfb h4{font:var(--fw-strong) var(--fs-section)/1.4 var(--sans);margin:16px 0 4px}
65
65
  .cfb p{margin:0 0 10px}
66
66
  .cfb ul,.cfb ol{margin:0 0 10px;padding-left:24px}
67
67
  .cfb li{margin:3px 0}
68
68
  .cf a{color:var(--vw-lnk);text-decoration:none}
69
69
  .cfb blockquote{margin:0 0 12px;padding:1px 0 1px 16px;border-left:3px solid var(--hair);color:var(--ink-2)}
70
70
  .cfb blockquote p:last-child{margin:0}
71
- .cfb code{font:400 var(--fs-2) var(--mono);background:var(--well);padding:1px 5px;border-radius:6px}
71
+ .cfb code{font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);background:var(--well);padding:1px 5px;border-radius:6px}
72
72
  .cfb hr{border:0;border-top:1px solid var(--hair);margin:22px 0}
73
73
  .cfb .tw{overflow-x:auto;margin:0 0 14px}
74
- .cfb table{border-collapse:collapse;min-width:60%;font-size:var(--fs-2)}
74
+ .cfb table{border-collapse:collapse;min-width:60%;font-size:var(--fs-meta);line-height:var(--lh-meta);}
75
75
  .cfb th,.cfb td{border:1px solid var(--hair);padding:6px 11px;text-align:left;vertical-align:top;min-width:60px}
76
- .cfb thead th{background:var(--well);font-weight:500}
76
+ .cfb thead th{background:var(--well);font-weight:var(--fw-regular)}
77
77
  .cfb .tw table{width:max-content;min-width:60%}
78
78
  .cfb .tw th,.cfb .tw td{max-width:32ch;overflow-wrap:break-word}
79
79
  .cfb .al-l{text-align:left}
@@ -88,8 +88,8 @@
88
88
  .pnl.warning{--pb:color-mix(in oklab,var(--ember) 14%,transparent);--pc:var(--ember-ink)}
89
89
  .pnl.caution{--pb:color-mix(in oklab,var(--bad) 10%,transparent);--pc:var(--bad)}
90
90
  .pnl.decision{--pb:color-mix(in oklab,var(--ok) 7%,transparent);--pc:var(--ok)}
91
- .pnl.decision .pc::before{content:"Decision";display:block;font:600 var(--fs-1) var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ok);margin-bottom:2px}
92
- .lz{display:inline-block;padding:0 6px;border-radius:6px;font:600 var(--fs-1)/19px var(--sans);text-transform:uppercase;letter-spacing:.03em;vertical-align:1px;background:var(--well);color:var(--ink-2);white-space:nowrap;user-select:none}
91
+ .pnl.decision .pc::before{content:"Decision";display:block;font:var(--fw-strong) var(--fs-badge)/var(--lh-badge) var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ok);margin-bottom:2px}
92
+ .lz{display:inline-block;padding:0 6px;border-radius:6px;font:var(--fw-strong) var(--fs-badge)/19px var(--sans);text-transform:uppercase;letter-spacing:.03em;vertical-align:1px;background:var(--well);color:var(--ink-2);white-space:nowrap;user-select:none}
93
93
  .lz.g{background:color-mix(in oklab,var(--ok) 14%,transparent);color:var(--ok)}
94
94
  .lz.b{background:color-mix(in oklab,var(--vw-lnk) 13%,transparent);color:var(--vw-lnk)}
95
95
  .lz.r{background:color-mix(in oklab,var(--bad) 13%,transparent);color:var(--bad)}
@@ -103,41 +103,41 @@
103
103
  .chk[aria-checked="true"]::after{content:"";width:8px;height:4px;border:2px solid var(--card-solid);border-top:0;border-right:0;transform:rotate(-45deg) translate(1px,-1px)}
104
104
  .tasks li[data-done="true"]>span:last-child{text-decoration:line-through;color:var(--ink-3)}
105
105
  .xp{border:1px solid var(--hair);border-radius:6px;margin:0 0 14px}
106
- .xp summary{cursor:pointer;padding:7px 12px;font-weight:500;list-style:none;display:flex;gap:8px;align-items:center}
106
+ .xp summary{cursor:pointer;padding:7px 12px;font-weight:var(--fw-regular);list-style:none;display:flex;gap:8px;align-items:center}
107
107
  .xp summary::-webkit-details-marker{display:none}
108
108
  .xp summary::before{content:"";width:6px;height:6px;border:solid var(--ink-3);border-width:0 1.5px 1.5px 0;transform:rotate(-45deg);transition:transform .2s}
109
109
  .xp[open] summary::before{transform:rotate(45deg)}
110
110
  .xp>div{padding:0 14px 4px 26px}
111
111
  .cb{border:1px solid var(--hair);border-radius:8px;overflow:hidden;margin:0 0 14px}
112
- .cbh{display:flex;align-items:center;padding:4px 12px;background:var(--well);font:500 var(--fs-1) var(--mono);color:var(--ink-3);user-select:none}
113
- .cb pre{margin:0;padding:12px 14px;font:400 var(--fs-2)/1.6 var(--mono);overflow-x:auto;outline:0}
114
- .cff{display:flex;gap:16px;align-items:center;flex-wrap:wrap;border-top:1px solid var(--hair);margin-top:24px;padding-top:12px;font-size:var(--fs-2);color:var(--ink-3)}
115
- .cff code{font:400 var(--fs-1) var(--mono);overflow-wrap:anywhere}
112
+ .cbh{display:flex;align-items:center;padding:4px 12px;background:var(--well);font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);color:var(--ink-3);user-select:none}
113
+ .cb pre{margin:0;padding:12px 14px;font:var(--fw-regular) var(--fs-meta)/1.6 var(--mono);overflow-x:auto;outline:0}
114
+ .cff{display:flex;gap:16px;align-items:center;flex-wrap:wrap;border-top:1px solid var(--hair);margin-top:24px;padding-top:12px;font-size:var(--fs-meta);color:var(--ink-3);line-height:var(--lh-meta);}
115
+ .cff code{font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);overflow-wrap:anywhere}
116
116
  /* the sign-off under a page the agent drafted (batch 17 item 4-A, AdH4): Adler's face and one line, quiet */
117
- .vwsign{display:flex;align-items:center;gap:10px;margin:12px 0 0;padding:10px 14px;border-radius:14px;background:var(--well);color:var(--ink-2);font-size:var(--fs-3)}
117
+ .vwsign{display:flex;align-items:center;gap:10px;margin:12px 0 0;padding:10px 14px;border-radius:14px;background:var(--well);color:var(--ink-2);font-size:var(--fs-body);line-height:var(--lh-body);}
118
118
  /* editing: a toolbar over the page, a / menu, and the save row */
119
119
  .vwetb{position:sticky;top:0;z-index:4;display:flex;align-items:center;gap:1px;overflow-x:auto;scrollbar-width:none;margin:0 0 12px;padding:4px;border-radius:8px;background:var(--card-solid);border:1px solid var(--hair);box-shadow:var(--card-shadow)}
120
120
  .vwetb::-webkit-scrollbar{display:none}
121
121
  .vwetb .sp{width:1px;height:18px;background:var(--hair);margin:0 4px;flex:none}
122
- .vwtb{height:32px;min-width:32px;padding:0 7px;border:0;border-radius:6px;background:transparent;display:inline-flex;align-items:center;justify-content:center;gap:5px;font:400 var(--fs-2) var(--sans);color:var(--ink-2);white-space:nowrap;flex:none;cursor:pointer}
122
+ .vwtb{height:32px;min-width:32px;padding:0 7px;border:0;border-radius:6px;background:transparent;display:inline-flex;align-items:center;justify-content:center;gap:5px;font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--sans);color:var(--ink-2);white-space:nowrap;flex:none;cursor:pointer}
123
123
  .vwtb[aria-pressed="true"]{background:var(--well);color:var(--ink)}
124
- .vwtb.fx{font-size:var(--fs-3)}
124
+ .vwtb.fx{font-size:var(--fs-body);line-height:var(--lh-body);}
125
125
  .vwtb.dd::after{content:"";width:5px;height:5px;border:solid currentColor;border-width:0 1.4px 1.4px 0;transform:rotate(45deg) translateY(-2px);margin-left:2px;opacity:.6}
126
126
  .vwtb .styL{min-width:84px;text-align:left}
127
127
  .vwpop{position:absolute;left:var(--rp-px,8px);top:var(--rp-py,0);z-index:20;min-width:220px;max-width:300px;max-height:320px;overflow:auto;padding:5px;border-radius:8px;background:var(--card-solid);border:1px solid var(--hair);box-shadow:var(--card-shadow)}
128
- .vwpop button{display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:8px;align-items:center;width:100%;min-height:34px;padding:3px 8px;border:0;border-radius:6px;background:transparent;color:var(--ink);font:400 var(--fs-2) var(--sans);text-align:left;cursor:pointer}
128
+ .vwpop button{display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:8px;align-items:center;width:100%;min-height:34px;padding:3px 8px;border:0;border-radius:6px;background:transparent;color:var(--ink);font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--sans);text-align:left;cursor:pointer}
129
129
  .vwpop button[aria-current="true"],.vwpop button:focus-visible{background:var(--well)}
130
- .vwpop .ki{width:24px;height:24px;border-radius:6px;display:grid;place-items:center;background:var(--well);color:var(--ink-2);font:500 var(--fs-1) var(--sans)}
131
- .vwpop kbd{font:400 var(--fs-1) var(--mono);color:var(--ink-3)}
130
+ .vwpop .ki{width:24px;height:24px;border-radius:6px;display:grid;place-items:center;background:var(--well);color:var(--ink-2);font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--sans)}
131
+ .vwpop kbd{font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);color:var(--ink-3)}
132
132
  .vwpop .vwmut{padding:8px}
133
133
  .vwsave{margin:12px 0 0;padding:12px;border:1px solid var(--hair);border-radius:8px;background:var(--card-solid)}
134
134
  .vwsave .vwin{width:100%;box-sizing:border-box}
135
- .vwerr{margin:6px 0 0;font-size:var(--fs-2);color:var(--ember-ink)}
135
+ .vwerr{margin:6px 0 0;font-size:var(--fs-meta);color:var(--ember-ink);line-height:var(--lh-meta);}
136
136
  .vwerr:empty{display:none}
137
- .vwmd{width:100%;box-sizing:border-box;min-height:420px;padding:16px 18px;border-radius:8px;border:1px solid var(--hair);background:var(--card-solid);color:var(--ink);font:400 var(--fs-2)/1.6 var(--mono);resize:vertical;outline:0}
137
+ .vwmd{width:100%;box-sizing:border-box;min-height:420px;padding:16px 18px;border-radius:8px;border:1px solid var(--hair);background:var(--card-solid);color:var(--ink);font:var(--fw-regular) var(--fs-meta)/1.6 var(--mono);resize:vertical;outline:0}
138
138
  @media (max-width:640px){
139
139
  .cf{padding:18px 16px 14px;border-radius:6px}
140
- .cft{font-size:var(--fs-5)}
140
+ .cft{font-size:var(--fs-panel);line-height:var(--lh-panel);}
141
141
  .cfpr th{width:110px}
142
142
  .vwchg{margin:0 -8px 6px;padding:2px 8px}
143
143
  .vwbtn,.vwseg,.vwtb,.vwcl,.vwpop button{min-height:44px}
@@ -149,35 +149,35 @@
149
149
  /* the opener's own buttons on the read bar (a report's Present, Print and Download) */
150
150
  .vwxm{position:relative;display:inline-flex}
151
151
  .vwxmn{top:calc(100% + 6px);right:0;min-width:260px}
152
- .vwxmn a{display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:8px;align-items:center;min-height:34px;padding:3px 8px;border-radius:6px;color:var(--ink);font:400 var(--fs-2) var(--sans);text-decoration:none}
152
+ .vwxmn a{display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:8px;align-items:center;min-height:34px;padding:3px 8px;border-radius:6px;color:var(--ink);font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--sans);text-decoration:none}
153
153
  .vwxmn a:focus-visible{background:var(--well)}
154
- .vwxmn small{display:block;color:var(--ink-3);font-size:var(--fs-1)}
154
+ .vwxmn small{display:block;color:var(--ink-3);font-size:var(--fs-meta);line-height:var(--lh-meta);}
155
155
  .vwxmn .vwmut{padding:6px 8px 4px}
156
156
  @media (max-width:640px){.vwxmn{right:auto;left:0;min-width:240px}.vwxmn a{min-height:44px}}
157
157
  /* Health, Links and Copies: three chips under the bar, each opening its panel */
158
158
  .vwmore{display:inline-flex;gap:2px;flex-wrap:wrap;margin:0}
159
- .vwchip{min-height:30px;padding:0 8px;border-radius:999px;border:0;background:transparent;color:var(--ink-2);font:500 var(--fs-2) var(--sans);display:inline-flex;align-items:center;gap:6px;cursor:pointer}
159
+ .vwchip{min-height:30px;padding:0 8px;border-radius:999px;border:0;background:transparent;color:var(--ink-2);font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--sans);display:inline-flex;align-items:center;gap:6px;cursor:pointer}
160
160
  .vwchip em{font-style:normal;font-family:var(--mono);color:var(--ink-3)}
161
161
  .vwchip.ok em{color:var(--ok)}.vwchip.warn em{color:var(--ember-ink)}
162
162
  .vwchip[aria-expanded="true"]{background:var(--well);color:var(--ink)}
163
163
  .vwmp{margin:0 0 14px;padding:12px 14px;border:1px solid var(--hair);border-radius:8px;background:var(--card-solid);display:grid;gap:8px}
164
164
  .vwck{display:grid;gap:4px}
165
- .vwckr{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:4px 10px;align-items:center;padding:6px 0;border-top:1px solid var(--hair);font-size:var(--fs-2)}
165
+ .vwckr{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:4px 10px;align-items:center;padding:6px 0;border-top:1px solid var(--hair);font-size:var(--fs-meta);line-height:var(--lh-meta);}
166
166
  .vwckr .ckdot{width:8px;height:8px;border-radius:50%;background:var(--ink-3)}
167
167
  .vwckr.ok i{background:var(--ok)}.vwckr.no i{background:var(--bad)}
168
- .vwckr b{font-weight:500;font-family:var(--mono);overflow-wrap:anywhere}
168
+ .vwckr b{font-weight:var(--fw-regular);font-family:var(--mono);overflow-wrap:anywhere}
169
169
  .vwckr span{color:var(--ink-3)}
170
- .vwckr small{grid-column:2/-1;color:var(--ink-3);font-size:var(--fs-1)}
170
+ .vwckr small{grid-column:2/-1;color:var(--ink-3);font-size:var(--fs-meta);line-height:var(--lh-meta);}
171
171
  .vwlinks{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px}
172
172
  .vwli{display:flex;align-items:center;gap:8px;justify-content:space-between}
173
- .vwli>button,.vwli>span:first-child{display:flex;align-items:center;gap:8px;min-width:0;min-height:36px;padding:2px 6px;border:0;border-radius:6px;background:transparent;color:var(--ink);font:400 var(--fs-2) var(--sans);text-align:left}
173
+ .vwli>button,.vwli>span:first-child{display:flex;align-items:center;gap:8px;min-width:0;min-height:36px;padding:2px 6px;border:0;border-radius:6px;background:transparent;color:var(--ink);font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--sans);text-align:left}
174
174
  .vwli>button{cursor:pointer}
175
- .vwli b{font-weight:500;display:block;overflow-wrap:anywhere}.vwli small{display:block;color:var(--ink-3);font-size:var(--fs-1)}
175
+ .vwli b{font-weight:var(--fw-regular);display:block;overflow-wrap:anywhere}.vwli small{display:block;color:var(--ink-3);font-size:var(--fs-meta);line-height:var(--lh-meta);}
176
176
  .vwli .i{width:15px;height:15px;flex:none;color:var(--ink-3)}
177
177
  .vwcp{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;align-items:center;padding:8px 0;border-top:1px solid var(--hair)}
178
- .vwcp b{font-weight:500;display:block}.vwcp small{display:block;color:var(--ink-3);font-size:var(--fs-1);overflow-wrap:anywhere}
178
+ .vwcp b{font-weight:var(--fw-regular);display:block}.vwcp small{display:block;color:var(--ink-3);font-size:var(--fs-meta);overflow-wrap:anywhere;line-height:var(--lh-meta);}
179
179
  .vwcp .vwmut,.vwcp a{grid-column:1/-1}
180
- .vwcp a{color:var(--vw-lnk);font-size:var(--fs-2)}
180
+ .vwcp a{color:var(--vw-lnk);font-size:var(--fs-meta);line-height:var(--lh-meta);}
181
181
  @media (max-width:640px){.vwchip,.vwli>button{min-height:44px}}
182
182
  @media (hover:hover){.vwbtn:hover{background:var(--well)}.cf a:hover{text-decoration:underline}.vwtb:hover{background:var(--well);color:var(--ink)}.vwpop button:hover{background:var(--well)}.vwxmn a:hover{background:var(--well)}.vwli>button:hover{background:var(--well)}}
183
183
  .cfb .vwcm{display:none}
@@ -195,32 +195,32 @@
195
195
  .vwib[aria-expanded="true"]{background:var(--well);color:var(--ink)}
196
196
  .vwib:focus-visible{outline:2px solid var(--ember);outline-offset:2px}
197
197
  .vwdlm{right:0;top:calc(100% + 4px);min-width:200px;width:max-content;max-width:min(300px,80vw)}
198
- .vwdlm button small{margin-left:auto;padding-left:12px;font:500 var(--fs-1) var(--mono);color:var(--ink-3)}
198
+ .vwdlm button small{margin-left:auto;padding-left:12px;font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);color:var(--ink-3)}
199
199
  iframe.vwprint{position:fixed;right:0;bottom:0;width:1px;height:1px;border:0;opacity:0;pointer-events:none}
200
200
  @media (hover:hover){.vwib:hover{background:var(--well);color:var(--ink)}}
201
201
  @media (max-width:640px){.vwib{width:44px;height:44px}.vwdlm button{min-height:44px}}
202
202
  /* the share popover (premium-viewer-share S1, S8, P1): under the icons on a desktop, a sheet at the bottom on a phone */
203
- .vwshp{position:absolute;right:0;top:calc(100% + 4px);z-index:6;width:340px;max-width:min(340px,calc(100vw - 32px));padding:8px;border-radius:8px;background:var(--card-solid);border:1px solid var(--hair);box-shadow:var(--card-shadow);display:grid;gap:4px;font-size:var(--fs-2);color:var(--ink)}
203
+ .vwshp{position:absolute;right:0;top:calc(100% + 4px);z-index:6;width:340px;max-width:min(340px,calc(100vw - 32px));padding:8px;border-radius:8px;background:var(--card-solid);border:1px solid var(--hair);box-shadow:var(--card-shadow);display:grid;gap:4px;font-size:var(--fs-meta);color:var(--ink);line-height:var(--lh-meta);}
204
204
  .vwshp .i{width:16px;height:16px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;color:var(--ink-3)}
205
- .vwsh{font:500 var(--fs-1) var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);padding:6px 8px 2px}
205
+ .vwsh{font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);padding:6px 8px 2px}
206
206
  .vwsm{display:flex;align-items:center;gap:10px;min-height:40px;padding:6px 8px;border:0;border-radius:6px;background:transparent;color:var(--ink);font:inherit;text-align:left;cursor:pointer}
207
- .vwsm small{margin-left:auto;font:500 var(--fs-1) var(--mono);color:var(--ink-3)}
207
+ .vwsm small{margin-left:auto;font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);color:var(--ink-3)}
208
208
  .vwsrow2{display:flex;align-items:center;gap:10px;min-height:40px;padding:2px 8px}.vwsrow2>span{flex:1}
209
209
  .vwsw{position:relative;width:40px;height:24px;flex:none;border-radius:6px;border:1px solid var(--hair);background:var(--well);cursor:pointer;padding:0}
210
210
  .vwsw::after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:6px;background:var(--ink-3);transition:left .15s}
211
211
  .vwsw[aria-checked="true"]{background:var(--ok);border-color:transparent}.vwsw[aria-checked="true"]::after{left:19px;background:var(--card-solid)}
212
- .vwspwi{display:flex;gap:6px;padding:0 8px}.vwspwi input{flex:1;min-width:0;min-height:34px;padding:0 10px;border-radius:8px;border:1px solid var(--hair);background:var(--well);color:var(--ink);font:500 var(--fs-2) var(--mono)}
213
- .vwsn{margin:2px 8px;color:var(--ink-3);font-size:var(--fs-1);line-height:1.45}
214
- .vwserr{margin:2px 8px;color:var(--bad);font-size:var(--fs-1);line-height:1.45}
212
+ .vwspwi{display:flex;gap:6px;padding:0 8px}.vwspwi input{flex:1;min-width:0;min-height:34px;padding:0 10px;border-radius:8px;border:1px solid var(--hair);background:var(--well);color:var(--ink);font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono)}
213
+ .vwsn{margin:2px 8px;color:var(--ink-3);font-size:var(--fs-meta);line-height:1.45}
214
+ .vwserr{margin:2px 8px;color:var(--bad);font-size:var(--fs-meta);line-height:1.45}
215
215
  .vwsgo{margin:4px 8px 4px;justify-content:center}
216
216
  .vwssep{height:1px;background:var(--hair);margin:4px 4px}
217
217
  .vwsrow{display:flex;align-items:center;gap:10px;padding:6px 8px}.vwsrow>span{flex:1;min-width:0}
218
- .vwsrow b{display:block;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vwsrow em{font-style:normal;color:var(--ink-3);font-size:var(--fs-1)}
219
- .vwsoff{flex:none;min-height:30px;padding:0 10px;border-radius:6px;border:1px solid var(--hair);background:transparent;color:var(--bad);font:500 var(--fs-1) var(--sans);cursor:pointer}
218
+ .vwsrow b{display:block;font-weight:var(--fw-regular);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vwsrow em{font-style:normal;color:var(--ink-3);font-size:var(--fs-meta);line-height:var(--lh-meta);}
219
+ .vwsoff{flex:none;min-height:30px;padding:0 10px;border-radius:6px;border:1px solid var(--hair);background:transparent;color:var(--bad);font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--sans);cursor:pointer}
220
220
  .vwslnk{margin:2px 8px 6px;padding:10px;border:1px solid var(--hair);border-radius:8px;display:grid;gap:8px}
221
- .vwslnk code{font:500 var(--fs-1) var(--mono);overflow-wrap:anywhere;user-select:all}
221
+ .vwslnk code{font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);overflow-wrap:anywhere;user-select:all}
222
222
  .vwspw{display:flex;align-items:center;gap:8px}
223
- .vwsr{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.vwsok{color:var(--ok);font-size:var(--fs-1)}
223
+ .vwsr{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.vwsok{color:var(--ok);font-size:var(--fs-meta);line-height:var(--lh-meta);}
224
224
  .vwslnk .vwsn{margin:0}
225
225
  .vwshp :focus-visible{outline:2px solid var(--ember);outline-offset:2px}
226
226
  @media (hover:hover){.vwsm:hover{background:var(--well)}}
@@ -245,21 +245,21 @@ iframe.vwprint{position:fixed;right:0;bottom:0;width:1px;height:1px;border:0;opa
245
245
  }
246
246
  /* the contents under the page's header */
247
247
  .vwtoc{margin:0 0 14px;padding:8px 12px;border-radius:10px;background:var(--well)}
248
- .vwtoc summary{cursor:pointer;font:600 var(--fs-2) var(--sans);color:var(--ink-2);list-style:none;min-height:28px;display:flex;align-items:center;gap:6px}
248
+ .vwtoc summary{cursor:pointer;font:var(--fw-strong) var(--fs-label)/var(--lh-label) var(--sans);color:var(--ink-2);list-style:none;min-height:28px;display:flex;align-items:center;gap:6px}
249
249
  .vwtoc summary::-webkit-details-marker{display:none}
250
- .vwtoc summary em{font-style:normal;color:var(--ink-3);font-weight:500}
250
+ .vwtoc summary em{font-style:normal;color:var(--ink-3);font-weight:var(--fw-regular)}
251
251
  .vwtoc ol{margin:4px 0 2px;padding:0;list-style:none;display:grid;gap:2px}
252
252
  .vwtoc li.sub{padding-left:14px}
253
- .vwtoc a{display:block;padding:4px 0;color:var(--ink);text-decoration:none;font:400 var(--fs-2) var(--sans)}
253
+ .vwtoc a{display:block;padding:4px 0;color:var(--ink);text-decoration:none;font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--sans)}
254
254
  .vwtoc a:hover{color:var(--blue-ink, var(--ink))}
255
255
  @media (max-width:640px){.vwtoc a{padding:8px 0}}
256
256
  /* a PDF takes the Viewer's whole width and height, with no card around it (Wawan, 2026-11-02, batch 22 item 15) */
257
257
  .vwdoc.vwpdf{max-width:none;padding:0 0 8px}
258
258
  .vwpdf .vwfile{display:flex;flex-direction:column;gap:6px}
259
259
  .vwpdf .vwpdff{height:calc(100dvh - 150px);min-height:420px}
260
- .vwpdf .cff{display:flex;gap:8px;font-size:var(--fs-1);color:var(--ink-3);padding:0 2px}
260
+ .vwpdf .cff{display:flex;gap:8px;font-size:var(--fs-meta);color:var(--ink-3);padding:0 2px;line-height:var(--lh-meta);}
261
261
  .vwpdfr{display:flex;flex-direction:column;gap:8px}
262
262
  .vwpdfp{display:flex;flex-direction:column;gap:8px}
263
263
  .vwpdfp canvas{display:block;border-radius:4px;box-shadow:0 0 0 1px var(--hair)}
264
- .vwpdfs{margin:0;font-size:var(--fs-1);color:var(--ink-3)}
264
+ .vwpdfs{margin:0;font-size:var(--fs-meta);color:var(--ink-3);line-height:var(--lh-meta);}
265
265
  .vwpdfs:empty{display:none}
@@ -1,10 +1,10 @@
1
- :root{--fs-1:11px;--fs-2:12px;--fs-3:14px;--fs-4:16px;--fs-5:20px;--fs-6:28px}
1
+ :root{--fw-regular:400;--fw-strong:600;--fs-field:16px;--fs-display:26px;--fs-page:26px;--fs-panel:18px;--fs-section:15px;--fs-row:15px;--fs-body:15px;--fs-meta:13px;--fs-label:13px;--fs-badge:13px;--lh-display:1.2;--lh-page:1.2;--lh-panel:1.3;--lh-section:1.35;--lh-row:1.4;--lh-body:1.6;--lh-meta:1.5;--lh-label:1.35;--lh-badge:1.2}
2
2
  /* pm/premium-vw-item.css — the work item view of the premium viewer (initiative premium-viewer, S7). Loaded by vwStyle('item'). Console type sizes only. */
3
3
  .vwi .vwi-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 8px}
4
- .vwi .vwi-head b{font-size:var(--fs-4);font-weight:600;color:var(--ink);overflow-wrap:anywhere}
5
- .vwi .vwi-desc,.vwi .vwi-p{font-size:var(--fs-3);color:var(--ink-2);margin:6px 0;line-height:1.5}
6
- .vwi .vwi-next{font-size:var(--fs-3);color:var(--ink);margin:4px 0}
7
- .vwi .vwi-wait{font-size:var(--fs-3);color:var(--ink-2);margin:0}
4
+ .vwi .vwi-head b{font-size:var(--fs-section);font-weight:var(--fw-strong);color:var(--ink);overflow-wrap:anywhere;line-height:var(--lh-section);}
5
+ .vwi .vwi-desc,.vwi .vwi-p{font-size:var(--fs-body);color:var(--ink-2);margin:6px 0;line-height:1.5}
6
+ .vwi .vwi-next{font-size:var(--fs-body);color:var(--ink);margin:4px 0;line-height:var(--lh-body);}
7
+ .vwi .vwi-wait{font-size:var(--fs-body);color:var(--ink-2);margin:0;line-height:var(--lh-body);}
8
8
  .vwi .vwi-s{margin:18px 0 0}
9
9
  .vwi .vwi-s>.label{margin:0 0 8px}
10
10
  .vwi .vwi-l{list-style:none;margin:0;padding:0;border:1px solid var(--hair);border-radius:8px;background:var(--card-solid);box-shadow:var(--card-shadow)}
@@ -15,17 +15,17 @@
15
15
  @media (hover:hover){.vwi .vwi-r:hover{background:var(--well)}}
16
16
  .vwi .vwi-r:focus-visible{outline:2px solid var(--ember);outline-offset:-2px}
17
17
  .vwi .vwi-t{display:flex;flex-direction:column;gap:2px;min-width:0}
18
- .vwi .vwi-t b{font-size:var(--fs-3);font-weight:500;color:var(--ink);overflow-wrap:anywhere}
19
- .vwi .vwi-t small{font-size:var(--fs-2);color:var(--ink-3);overflow-wrap:anywhere}
18
+ .vwi .vwi-t b{font-size:var(--fs-body);font-weight:var(--fw-regular);color:var(--ink);overflow-wrap:anywhere;line-height:var(--lh-body);}
19
+ .vwi .vwi-t small{font-size:var(--fs-meta);color:var(--ink-3);overflow-wrap:anywhere;line-height:var(--lh-meta);}
20
20
  .vwi .vwi-path{font-family:var(--mono)}
21
- .vwi .vwi-w{margin:0;padding-left:18px;font-size:var(--fs-3);color:var(--ink-2)}
22
- .vwi .vwi-foot{margin:18px 0 0;font-size:var(--fs-3)}
23
- .vwi .vwi-go,.vwi .vwi-p a{color:var(--ink);font-weight:500;text-decoration:underline;text-underline-offset:3px;display:inline-flex;align-items:center;min-height:44px}
21
+ .vwi .vwi-w{margin:0;padding-left:18px;font-size:var(--fs-body);color:var(--ink-2);line-height:var(--lh-body);}
22
+ .vwi .vwi-foot{margin:18px 0 0;font-size:var(--fs-body);line-height:var(--lh-body);}
23
+ .vwi .vwi-go,.vwi .vwi-p a{color:var(--ink);font-weight:var(--fw-regular);text-decoration:underline;text-underline-offset:3px;display:inline-flex;align-items:center;min-height:44px}
24
24
  .vwi-open{margin:14px 0 0}
25
25
  .vwi-open .dmcta{min-height:44px}
26
26
  /* in the cozy Viewer (Home), where premium.css is not loaded: the facts are a two-column list, and the card keeps its gutter (testing fixes) */
27
- .vwi .kv2{display:grid;grid-template-columns:minmax(96px,auto) minmax(0,1fr);gap:8px 18px;font-size:var(--fs-3);margin:6px 0}
27
+ .vwi .kv2{display:grid;grid-template-columns:minmax(96px,auto) minmax(0,1fr);gap:8px 18px;font-size:var(--fs-body);margin:6px 0;line-height:var(--lh-body);}
28
28
  .vwi .kv2 span:nth-child(odd){color:var(--ink-3)}
29
- .vwi .kv2 span:nth-child(even){color:var(--ink);font-weight:500;line-height:1.5;overflow-wrap:anywhere}
29
+ .vwi .kv2 span:nth-child(even){color:var(--ink);font-weight:var(--fw-regular);line-height:1.5;overflow-wrap:anywhere}
30
30
  .cz-vw-body>.vwi{padding:16px 20px 24px}
31
31
  .cz-vw-body>.vwi>.vwi-head{display:none} /* the Viewer header already names it */