create-pmos 0.512.0 → 0.514.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 (104) hide show
  1. package/package.json +27 -95
  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/guide/home.md +1 -1
  14. package/workspace/intel-report-ui-test.js +1 -1
  15. package/workspace/intelligence-gaps-ui-test.js +1 -1
  16. package/workspace/lib/premium-console-type.js +15 -12
  17. package/workspace/lib/routes-boards.js +18 -6
  18. package/workspace/metric-drafts-ui-test.js +2 -2
  19. package/workspace/package-lock.json +2 -2
  20. package/workspace/package.json +1 -1
  21. package/workspace/premium-menu-rows-test.js +1 -1
  22. package/workspace/premium-vw-doc-test.js +1 -1
  23. package/workspace/public/pm/bd-pin-card.css +4 -4
  24. package/workspace/public/pm/bd-publish.css +11 -11
  25. package/workspace/public/pm/bd-shared.css +17 -17
  26. package/workspace/public/pm/c3-capture.css +9 -9
  27. package/workspace/public/pm/c3-initiatives.css +23 -23
  28. package/workspace/public/pm/c3-listen.css +1 -1
  29. package/workspace/public/pm/components.css +572 -572
  30. package/workspace/public/pm/console3.css +374 -373
  31. package/workspace/public/pm/cozy-adler.css +4 -4
  32. package/workspace/public/pm/cozy-aud.css +1 -1
  33. package/workspace/public/pm/cozy-board.css +328 -328
  34. package/workspace/public/pm/cozy-ev.css +78 -78
  35. package/workspace/public/pm/cozy-home-rows.css +32 -32
  36. package/workspace/public/pm/cozy-home.css +240 -240
  37. package/workspace/public/pm/cozy-insights.css +200 -200
  38. package/workspace/public/pm/cozy-live-pill.css +5 -5
  39. package/workspace/public/pm/cozy-mtg-present.css +28 -28
  40. package/workspace/public/pm/cozy-onboard.css +15 -15
  41. package/workspace/public/pm/cozy-panel.css +39 -39
  42. package/workspace/public/pm/cozy-pick.css +5 -5
  43. package/workspace/public/pm/cozy-rec-now.css +23 -23
  44. package/workspace/public/pm/cozy-rec-present.css +11 -11
  45. package/workspace/public/pm/cozy-rec-tab.css +13 -13
  46. package/workspace/public/pm/cozy-steps.css +14 -14
  47. package/workspace/public/pm/cozy-today.css +95 -95
  48. package/workspace/public/pm/cozy-viewer.css +27 -27
  49. package/workspace/public/pm/cozy-vw-mtg.css +113 -113
  50. package/workspace/public/pm/cozy-vw-rp.css +79 -79
  51. package/workspace/public/pm/cozy-vw-shell.css +43 -43
  52. package/workspace/public/pm/cozy-vw.css +129 -129
  53. package/workspace/public/pm/cozy-xv.css +15 -15
  54. package/workspace/public/pm/cozy.css +53 -21
  55. package/workspace/public/pm/dash-view.css +27 -27
  56. package/workspace/public/pm/hi-pop.css +26 -26
  57. package/workspace/public/pm/home-impact.css +8 -8
  58. package/workspace/public/pm/home-ini.css +36 -36
  59. package/workspace/public/pm/home-line.css +7 -7
  60. package/workspace/public/pm/impact.css +9 -9
  61. package/workspace/public/pm/ini-view.css +243 -243
  62. package/workspace/public/pm/load-shapes.css +1 -1
  63. package/workspace/public/pm/loose-props.css +14 -14
  64. package/workspace/public/pm/metric-drafts.css +20 -20
  65. package/workspace/public/pm/ms-suggest.css +9 -9
  66. package/workspace/public/pm/ov-view.css +14 -14
  67. package/workspace/public/pm/premium-insights.js +3 -3
  68. package/workspace/public/pm/premium-report-frame.css +1 -1
  69. package/workspace/public/pm/premium-report-intel.css +17 -17
  70. package/workspace/public/pm/premium-report-print.css +1 -1
  71. package/workspace/public/pm/premium-vw-backlog.css +13 -13
  72. package/workspace/public/pm/premium-vw-cal.css +32 -32
  73. package/workspace/public/pm/premium-vw-copy.css +7 -7
  74. package/workspace/public/pm/premium-vw-doc.css +69 -69
  75. package/workspace/public/pm/premium-vw-item.css +12 -12
  76. package/workspace/public/pm/premium-vw-jira.css +39 -39
  77. package/workspace/public/pm/premium-vw-meet.css +28 -28
  78. package/workspace/public/pm/premium-vw-notepad.css +13 -13
  79. package/workspace/public/pm/premium-vw-notes.css +11 -11
  80. package/workspace/public/pm/premium-vw-rec.css +27 -27
  81. package/workspace/public/pm/premium-vw-report.css +21 -21
  82. package/workspace/public/pm/premium-vw-slides.css +28 -28
  83. package/workspace/public/pm/premium.css +618 -618
  84. package/workspace/public/pm/prog-order.css +6 -6
  85. package/workspace/public/pm/prog-page.css +17 -17
  86. package/workspace/public/pm/program-charter.css +33 -33
  87. package/workspace/public/pm/ready-lib.css +6 -6
  88. package/workspace/public/pm/sort-order.css +1 -1
  89. package/workspace/public/pm/split-merge.css +18 -18
  90. package/workspace/public/pm/task-card.css +24 -24
  91. package/workspace/public/pm/tk-tasks.css +42 -42
  92. package/workspace/public/pm/tk-view.css +6 -6
  93. package/workspace/public/pm/wf-page.css +31 -31
  94. package/workspace/public/premium-aud.html +1 -1
  95. package/workspace/public/premium-board.html +1 -1
  96. package/workspace/public/premium-intelligence.html +1 -1
  97. package/workspace/public/premium-rec.html +1 -1
  98. package/workspace/public/premium-viewer.html +1 -1
  99. package/workspace/public/premium-workflows.html +1 -1
  100. package/workspace/public/premium.html +1 -1
  101. package/workspace/public/vendor/plus-jakarta-sans-var.woff2 +0 -0
  102. package/workspace/server.js +1 -0
  103. package/workspace/third-party/README.md +2 -1
  104. package/workspace/third-party/plus-jakarta-sans-OFL.LICENSE +93 -0
@@ -2,26 +2,26 @@
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-meet.css — the meeting detail as the console's note sheet (initiative premium-viewer, S3; premium-vw-meet.js).
7
7
  * Loaded once by vmStyle(). Sizes are only var(--fs-1..6), weights 400/500/600 (premium-console-type.test.js). */
8
- .vm .vm-ln{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:8px 0 0;font-size:var(--fs-3);color:var(--ink-2)}
8
+ .vm .vm-ln{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:8px 0 0;font-size:var(--fs-body);color:var(--ink-2);line-height:var(--lh-body);}
9
9
  .vm .vm-ln .i{width:16px;height:16px;flex:none;color:var(--ink-3)}
10
- .vm .vm-ln b{color:var(--ink);font-weight:600}
10
+ .vm .vm-ln b{color:var(--ink);font-weight:var(--fw-strong)}
11
11
  .vm .mtg-link{margin:8px 0 4px}
12
12
  .vm .vm-about[hidden]{display:none}
13
- .vm .vm-ser{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:10px 0 0;font:500 var(--fs-2) var(--mono);color:var(--ink-2)}
13
+ .vm .vm-ser{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:10px 0 0;font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);color:var(--ink-2)}
14
14
  .vm .vm-ser>span{display:inline-flex;align-items:center;gap:6px}
15
15
  .vm .vm-ser .i{width:14px;height:14px}
16
16
  .vm .vm-ib{width:36px;height:36px;border-radius:6px;display:inline-grid;place-items:center;background:var(--well);color:var(--ink)}
17
17
  .vm .vm-ib:disabled{opacity:.4}
18
18
  .vm .vm-ib .i{width:16px;height:16px}
19
- .vm .vm-lk{min-height:36px;padding:0 8px;border-radius:6px;font-size:var(--fs-2);font-weight:500;color:var(--ink-3);text-decoration:underline;text-underline-offset:3px}
19
+ .vm .vm-lk{min-height:36px;padding:0 8px;border-radius:6px;font-size:var(--fs-meta);font-weight:var(--fw-regular);color:var(--ink-3);text-decoration:underline;text-underline-offset:3px;line-height:var(--lh-meta);}
20
20
  @media (hover:hover){.vm .vm-lk:hover{color:var(--ink)}}
21
21
  .vm .vm-sh:focus-visible,.vm .vm-menu>summary:focus-visible,.vm .vm-mn button:focus-visible,.vm .vm-ib:focus-visible,.vm .vm-lk:focus-visible{outline:2px solid var(--ember);outline-offset:2px}
22
22
  /* the parts as one scroll: each part a fold with a plain head (no Before, During and After switch) */
23
23
  .vm .vm-part{margin:14px 0 0;border-top:1px solid var(--hair)}
24
- .vm .vm-part>summary.vm-sh{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;cursor:pointer;font-size:var(--fs-3);font-weight:600;color:var(--ink);border-radius:6px}
24
+ .vm .vm-part>summary.vm-sh{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:48px;cursor:pointer;font-size:var(--fs-row);font-weight:var(--fw-strong);color:var(--ink);border-radius:6px;line-height:var(--lh-row);}
25
25
  .vm .vm-part>summary::-webkit-details-marker{display:none}
26
26
  .vm .vm-part>summary::after{content:"";flex:none;width:8px;height:8px;margin:0 6px 4px 0;border-right:1.6px solid var(--ink-3);border-bottom:1.6px solid var(--ink-3);transform:rotate(45deg);transition:transform .2s}
27
27
  .vm .vm-part[open]>summary::after{margin-bottom:-4px;transform:rotate(-135deg)}
@@ -37,65 +37,65 @@
37
37
  .vm .vm-menu>summary{list-style:none;cursor:pointer}
38
38
  .vm .vm-menu>summary::-webkit-details-marker{display:none}
39
39
  .vm .vm-mn{position:absolute;z-index:6;top:calc(100% + 6px);left:0;min-width:250px;display:flex;flex-direction:column;gap:2px;padding:6px;border-radius:8px;background:var(--card-solid,var(--card));box-shadow:inset 0 0 0 1px var(--hair),0 18px 40px -18px rgba(20,24,60,.45)}
40
- .vm .vm-mn button{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 12px;border-radius:6px;text-align:left;font-size:var(--fs-3);color:var(--ink)}
40
+ .vm .vm-mn button{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 12px;border-radius:6px;text-align:left;font-size:var(--fs-body);color:var(--ink);line-height:var(--lh-body);}
41
41
  .vm .vm-mn button .i{width:16px;height:16px;color:var(--ink-3)}
42
42
  @media (hover:hover){.vm .vm-mn button:hover{background:var(--well)}}
43
43
  .vm .acts2>.why{flex:1 1 100%}
44
44
  .vm .acts2>.why p{margin:0 0 6px}
45
45
  .vm .acts2>.why[hidden]{display:none}
46
- .vm .vm-bx{background:var(--card-solid,var(--card));border:1px solid var(--hair);border-radius:8px;box-shadow:var(--card-shadow);padding:14px 18px;margin:0 0 12px;font-size:var(--fs-3);line-height:1.5}
47
- .vm .vm-cap{display:flex;align-items:center;gap:8px;font:600 var(--fs-1) var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);padding:0 0 10px;margin:0 0 6px;border-bottom:1px solid var(--hair)}
46
+ .vm .vm-bx{background:var(--card-solid,var(--card));border:1px solid var(--hair);border-radius:8px;box-shadow:var(--card-shadow);padding:14px 18px;margin:0 0 12px;font-size:var(--fs-body);line-height:1.5}
47
+ .vm .vm-cap{display:flex;align-items:center;gap:8px;font:var(--fw-strong) var(--fs-badge)/var(--lh-badge) var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);padding:0 0 10px;margin:0 0 6px;border-bottom:1px solid var(--hair)}
48
48
  .vm .vm-cap .i{width:14px;height:14px}
49
49
  .vm .vm-bx p{margin:0 0 8px;color:var(--ink-2)}
50
- .vm h5{margin:16px 0 6px;font-size:var(--fs-3);font-weight:600;color:var(--ink)}
51
- .vm h5 small{font-weight:500;font-size:var(--fs-2);color:var(--ink-3);margin-left:6px}
50
+ .vm h5{margin:16px 0 6px;font-size:var(--fs-section);font-weight:var(--fw-strong);color:var(--ink);line-height:var(--lh-section);}
51
+ .vm h5 small{font-weight:var(--fw-regular);font-size:var(--fs-meta);color:var(--ink-3);margin-left:6px;line-height:var(--lh-meta);}
52
52
  .vm .vm-ul{margin:0;padding-left:20px;color:var(--ink-2)}
53
- .vm .vm-ul em{font-style:normal;font-size:var(--fs-2);color:var(--ink-3)}
53
+ .vm .vm-ul em{font-style:normal;font-size:var(--fs-meta);color:var(--ink-3);line-height:var(--lh-meta);}
54
54
  .vm .vm-agl>div{display:flex;align-items:center;gap:8px;padding:4px 0}
55
55
  .vm .vm-agl i{width:14px;height:14px;border-radius:6px;box-shadow:inset 0 0 0 1.5px var(--ink-3);flex:none;margin:0 1px}
56
56
  .vm .vm-agl .i{width:16px;height:16px;color:var(--ok);flex:none}
57
- .vm .vm-agl small{margin-left:auto;font-size:var(--fs-2);color:var(--ink-3)}
57
+ .vm .vm-agl small{margin-left:auto;font-size:var(--fs-meta);color:var(--ink-3);line-height:var(--lh-meta);}
58
58
  .vm .vm-row{display:flex;gap:8px;flex-wrap:wrap}
59
- .vm .vm-pill{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border-radius:6px;background:var(--well);font-size:var(--fs-2);font-weight:500;color:var(--ink)}
59
+ .vm .vm-pill{display:inline-flex;align-items:center;min-height:36px;padding:0 14px;border-radius:6px;background:var(--well);font-size:var(--fs-meta);font-weight:var(--fw-regular);color:var(--ink);line-height:var(--lh-meta);}
60
60
  @media (hover:hover){.vm a.vm-pill:hover{background:var(--b3,var(--well))}}
61
61
  .vm .vm-none{padding:12px 16px;border-radius:8px;background:var(--well)}
62
62
  .vm .vm-trn>div{display:grid;grid-template-columns:52px minmax(0,1fr);gap:8px;align-items:start;padding:5px 0}
63
63
  .vm .vm-trn p{margin:0;color:var(--ink-2)}
64
- .vm .vm-trn b{color:var(--ink);font-weight:600}
65
- .vm .vm-t{font:500 var(--fs-2) var(--mono);color:var(--ink-3);padding-top:1px}
64
+ .vm .vm-trn b{color:var(--ink);font-weight:var(--fw-strong)}
65
+ .vm .vm-t{font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);color:var(--ink-3);padding-top:1px}
66
66
  .vm .vm-sl{list-style:none;margin:0;padding:0}
67
67
  .vm .vm-si{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;align-items:start;padding:8px 0;border-top:1px solid var(--hair)}
68
68
  .vm .vm-si:first-child{border-top:0}
69
- .vm .vm-si b{display:block;font-weight:500;color:var(--ink)}
70
- .vm .vm-si small{display:flex;gap:8px;align-items:center;font-size:var(--fs-2);color:var(--ink-3);margin-top:2px}
69
+ .vm .vm-si b{display:block;font-weight:var(--fw-regular);color:var(--ink)}
70
+ .vm .vm-si small{display:flex;gap:8px;align-items:center;font-size:var(--fs-meta);color:var(--ink-3);margin-top:2px;line-height:var(--lh-meta);}
71
71
  .vm .vm-k{width:28px;height:28px;border-radius:6px;display:grid;place-items:center;background:var(--well);color:var(--ink-3)}
72
72
  .vm .vm-k .i{width:14px;height:14px}
73
73
  .vm .vm-k.ok{color:var(--ok)}
74
74
  .vm .vm-k.new{color:var(--ember-ink)}
75
- .vm .vm-st{font:600 var(--fs-1) var(--mono);letter-spacing:.06em;text-transform:uppercase}
75
+ .vm .vm-st{font:var(--fw-strong) var(--fs-badge)/var(--lh-badge) var(--mono);letter-spacing:.06em;text-transform:uppercase}
76
76
  .vm .vm-st.ok{color:var(--ok)}
77
77
  .vm .vm-st.warn,.vm .vm-st.new{color:var(--ember-ink)}
78
78
  .vm .vm-mrow{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin:6px 0}
79
- .vm .vm-mrow b{font-weight:600}
79
+ .vm .vm-mrow b{font-weight:var(--fw-strong)}
80
80
  .vm .vm-rp{display:flex;align-items:center;gap:10px;margin:10px 0 6px}
81
- .vm .vm-rp b{font-weight:600}
81
+ .vm .vm-rp b{font-weight:var(--fw-strong)}
82
82
  .vm .vm-aud{width:100%;max-width:100%;margin:2px 0 4px}
83
83
  .vm .vm-sum{margin:12px 0 8px;line-height:1.6;color:var(--ink)}
84
- .vm .vm-tb{width:100%;border-collapse:collapse;margin:10px 0 6px;font-size:var(--fs-3)}
85
- .vm .vm-tb th{text-align:left;font:500 var(--fs-1) var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);padding:6px 10px 6px 0;border-bottom:1px solid var(--hair)}
84
+ .vm .vm-tb{width:100%;border-collapse:collapse;margin:10px 0 6px;font-size:var(--fs-body);line-height:var(--lh-body);}
85
+ .vm .vm-tb th{text-align:left;font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);padding:6px 10px 6px 0;border-bottom:1px solid var(--hair)}
86
86
  .vm .vm-tb td{padding:8px 10px 8px 0;border-bottom:1px solid var(--hair);vertical-align:middle}
87
87
  .vm .vm-tb td.w{color:var(--ink-2)}
88
88
  .vm .vm-tb td.o{white-space:nowrap;color:var(--ink-2)}
89
- .vm .vm-tb .mut{font-size:var(--fs-2)}
89
+ .vm .vm-tb .mut{font-size:var(--fs-meta);line-height:var(--lh-meta);}
90
90
  .vm .vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
91
91
  .vm .vm-q{display:flex;gap:10px;align-items:baseline;padding:6px 0;color:var(--ink-2)}
92
- .vm .vm-tg{font:600 var(--fs-1) var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);flex:none}
92
+ .vm .vm-tg{font:var(--fw-strong) var(--fs-badge)/var(--lh-badge) var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3);flex:none}
93
93
  .vm .vm-shots{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
94
94
  .vm .vm-shots figure{margin:0}
95
95
  .vm .vm-shots img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:6px;border:1px solid var(--hair);background:var(--well)}
96
- .vm .vm-shots figcaption{font:500 var(--fs-1) var(--mono);color:var(--ink-3);margin-top:4px}
96
+ .vm .vm-shots figcaption{font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);color:var(--ink-3);margin-top:4px}
97
97
  .vm .vm-fold{margin-top:14px;border-top:1px solid var(--hair);padding-top:10px}
98
- .vm .vm-fold summary{cursor:pointer;min-height:36px;display:flex;align-items:center;font-size:var(--fs-2);font-weight:600;color:var(--ink-2)}
98
+ .vm .vm-fold summary{cursor:pointer;min-height:36px;display:flex;align-items:center;font-size:var(--fs-label);font-weight:var(--fw-strong);color:var(--ink-2);line-height:var(--lh-label);}
99
99
  @media (max-width:700px){
100
100
  .vm .vm-ib,.vm .vm-lk,.vm .vm-pill,.vm .vm-fold summary{min-height:44px}
101
101
  .vm .vm-ib{width:44px;height:44px}
@@ -107,5 +107,5 @@
107
107
  }
108
108
  .vm .vm-bl{list-style:none;margin:0 0 8px;padding:0;display:grid;gap:6px}
109
109
  .vm .vm-bi{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;color:var(--ink-2)}
110
- .vm .vm-bi small{font-size:var(--fs-2);color:var(--ink-3)}
110
+ .vm .vm-bi small{font-size:var(--fs-meta);color:var(--ink-3);line-height:var(--lh-meta);}
111
111
  .vm .vm-tg.warn{color:var(--ember-ink)}
@@ -1,41 +1,41 @@
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-notepad.css — Notes in the premium viewer (premium-notes.js; initiative premium-chat-attach N1-N7). Loaded once by vwStyle('notepad').
3
3
  * Sizes are the console's 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
  .p-out>.obody.vw:not([hidden]):has(>.ntpad){flex:1;min-height:0;display:flex!important;flex-direction:column} /* the notepad fills the pane: the note scrolls, its foot stays */
5
5
  .ntpad{flex:1;min-height:0;width:100%;display:flex;flex-direction:column;max-width:780px;margin:0 auto;position:relative}
6
6
  .nth{display:flex;align-items:center;gap:8px;padding:2px 0 10px;border-bottom:1px solid var(--hair)}
7
7
  .nth .gap{flex:1}
8
- .ntsw{display:inline-flex;align-items:center;gap:4px;min-width:0;max-width:60%;min-height:34px;padding:0 6px;margin-left:-6px;border:0;border-radius:6px;background:none;color:var(--ink);font:600 var(--fs-3) var(--sans);cursor:pointer}
9
- .ntsw b{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
8
+ .ntsw{display:inline-flex;align-items:center;gap:4px;min-width:0;max-width:60%;min-height:34px;padding:0 6px;margin-left:-6px;border:0;border-radius:6px;background:none;color:var(--ink);font:var(--fw-strong) var(--fs-row)/var(--lh-row) var(--sans);cursor:pointer}
9
+ .ntsw b{font-weight:var(--fw-strong);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
10
10
  .ntsw .i{width:15px;height:15px;flex:none}
11
- .ntn,.ntst{font-size:var(--fs-2);color:var(--ink-3);white-space:nowrap}
11
+ .ntn,.ntst{font-size:var(--fs-meta);color:var(--ink-3);white-space:nowrap;line-height:var(--lh-meta);}
12
12
  .ntic{flex:none;width:36px;height:36px;display:inline-grid;place-items:center;border-radius:6px;border:1px solid var(--hair);background:var(--card-solid);color:var(--ink);cursor:pointer}
13
13
  .ntic .i{width:17px;height:17px}
14
14
  .ntic.pri{background:var(--solid);border-color:var(--solid);color:var(--on-solid)}
15
15
  .ntmenu{position:absolute;top:42px;left:0;z-index:5;min-width:220px;max-width:min(340px,100%);max-height:320px;overflow:auto;padding:6px;border:1px solid var(--hair);border-radius:8px;background:var(--card-solid);box-shadow:var(--card-shadow);display:grid;gap:2px}
16
16
  .ntmenu[hidden]{display:none}
17
- .ntmenu button{display:flex;align-items:center;gap:8px;min-height:36px;padding:0 10px;border:0;border-radius:6px;background:none;color:var(--ink);font:400 var(--fs-3) var(--sans);text-align:left;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
18
- .ntmenu button[aria-current]{font-weight:600}
17
+ .ntmenu button{display:flex;align-items:center;gap:8px;min-height:36px;padding:0 10px;border:0;border-radius:6px;background:none;color:var(--ink);font:var(--fw-regular) var(--fs-body)/var(--lh-body) var(--sans);text-align:left;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
18
+ .ntmenu button[aria-current]{font-weight:var(--fw-strong)}
19
19
  .ntmenu .ntdel{color:var(--ink-2);border-top:1px solid var(--hair);border-radius:0;margin-top:4px}
20
20
  .ntmenu .ntdel .i{width:15px;height:15px}
21
- .ntd{flex:1;min-height:160px;overflow-y:auto;padding:16px 0;outline:0;font:400 var(--fs-4)/1.6 var(--sans);color:var(--ink);overflow-wrap:anywhere}
21
+ .ntd{flex:1;min-height:160px;overflow-y:auto;padding:16px 0;outline:0;font:var(--fw-regular) var(--fs-body)/1.6 var(--sans);color:var(--ink);overflow-wrap:anywhere}
22
22
  .ntd.ph::before{content:attr(data-ph);color:var(--ink-3);pointer-events:none;position:absolute}
23
23
  .ntd>*:first-child{margin-top:0}
24
24
  .ntd p{margin:0 0 8px}
25
- .ntd h1{font-size:var(--fs-5);font-weight:600;margin:4px 0 10px}
26
- .ntd h2{font-size:var(--fs-4);font-weight:600;margin:14px 0 6px}
27
- .ntd h3{font-size:var(--fs-3);font-weight:600;margin:12px 0 4px;color:var(--ink-2)}
25
+ .ntd h1{font-size:var(--fs-page);font-weight:var(--fw-strong);margin:4px 0 10px;line-height:var(--lh-page);}
26
+ .ntd h2{font-size:var(--fs-section);font-weight:var(--fw-strong);margin:14px 0 6px;line-height:var(--lh-section);}
27
+ .ntd h3{font-size:var(--fs-section);font-weight:var(--fw-strong);margin:12px 0 4px;color:var(--ink-2);line-height:var(--lh-section);}
28
28
  .ntd ul,.ntd ol{margin:0 0 8px;padding-left:22px}
29
29
  .ntd ul.tasks{list-style:none;padding-left:0}
30
30
  .ntd li{margin:2px 0}
31
31
  .ntd li.task{display:flex;align-items:baseline;gap:8px}
32
32
  .ntd li.task input{flex:none;width:16px;height:16px;margin:0;transform:translateY(2px);accent-color:var(--solid);cursor:pointer}
33
33
  .ntd li.task.done>span{text-decoration:line-through;color:var(--ink-3)}
34
- .ntd b,.ntd strong{font-weight:600}
35
- .ntd code{font:400 var(--fs-2) var(--mono);background:var(--well);padding:1px 4px;border-radius:6px}
34
+ .ntd b,.ntd strong{font-weight:var(--fw-strong)}
35
+ .ntd code{font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);background:var(--well);padding:1px 4px;border-radius:6px}
36
36
  .ntd blockquote{margin:0 0 8px;padding-left:12px;border-left:3px solid var(--hair);color:var(--ink-2)}
37
37
  .ntd a{color:var(--vw-lnk,inherit)}
38
38
  .ntf{flex:none;display:flex;align-items:center;gap:8px;padding:10px 0 4px;border-top:1px solid var(--hair)}
39
- .ntw{flex:1;min-width:0;font-size:var(--fs-2);color:var(--ink-3)}
39
+ .ntw{flex:1;min-width:0;font-size:var(--fs-meta);color:var(--ink-3);line-height:var(--lh-meta);}
40
40
  @media (hover:hover){.ntsw:hover,.ntmenu button:hover,.ntic:not(.pri):hover{background:var(--well)}}
41
41
  @media (max-width:999px),(pointer:coarse){.ntic{width:44px;height:44px}.ntsw{min-height:44px}.ntmenu button{min-height:44px}.ntw{display:none}.ntf{justify-content:flex-end}}
@@ -2,40 +2,40 @@
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-notes.css — the Notes list in the premium dialog (initiative premium-viewer, R9; premium-vw-notes.js).
7
7
  * Loaded once by vwStyle('notes'). Sizes are only var(--fs-1..6), weights 400/500/600 (premium-console-type.test.js). */
8
- .vn-open{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 12px;margin-left:auto;border-radius:6px;font-size:var(--fs-2);font-weight:600;color:var(--ink-2)}
8
+ .vn-open{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 12px;margin-left:auto;border-radius:6px;font-size:var(--fs-label);font-weight:var(--fw-strong);color:var(--ink-2);line-height:var(--lh-label);}
9
9
  .vn-open .i{width:16px;height:16px}
10
10
  .vn-open:focus-visible,.vn button:focus-visible,.vn input:focus-visible{outline:2px solid var(--ember);outline-offset:2px}
11
11
  .vn{max-width:860px;margin:0 auto;padding:4px 2px 24px}
12
12
  .vn-s{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 14px}
13
13
  .vn-q{flex:1;min-width:0;display:flex;align-items:center;gap:8px;min-height:44px;padding:0 12px;border:1px solid var(--hair);border-radius:8px;background:var(--card-solid,var(--card))}
14
14
  .vn-q .i{width:16px;height:16px;flex:none;color:var(--ink-3)}
15
- .vn-q input{flex:1;align-self:stretch;min-width:0;border:0;background:none;outline:0;font-size:var(--fs-3);color:var(--ink)}
16
- .vn-c{font:500 var(--fs-2) var(--mono);color:var(--ink-3)}
15
+ .vn-q input{flex:1;align-self:stretch;min-width:0;border:0;background:none;outline:0;font-size:var(--fs-body);color:var(--ink);line-height:var(--lh-body);}
16
+ .vn-c{font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);color:var(--ink-3)}
17
17
  .vn-g{margin:0 0 14px}
18
- .vn-g h4{display:flex;align-items:baseline;gap:8px;margin:0 0 6px;font:600 var(--fs-1) var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}
19
- .vn-g h4 small{font-size:var(--fs-1);font-weight:400}
18
+ .vn-g h4{display:flex;align-items:baseline;gap:8px;margin:0 0 6px;font:var(--fw-strong) var(--fs-badge)/var(--lh-badge) var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}
19
+ .vn-g h4 small{font-size:var(--fs-meta);font-weight:var(--fw-regular);line-height:var(--lh-meta);}
20
20
  .vn-l{list-style:none;margin:0;padding:0;border:1px solid var(--hair);border-radius:8px;background:var(--card-solid,var(--card));box-shadow:var(--card-shadow);overflow:hidden}
21
21
  .vn-r{display:flex;align-items:center}
22
22
  .vn-r+.vn-r{border-top:1px solid var(--hair)}
23
- .vn-o{flex:1;min-width:0;display:flex;align-items:center;gap:12px;min-height:52px;padding:8px 14px;text-align:left;font-size:var(--fs-3);color:var(--ink)}
23
+ .vn-o{flex:1;min-width:0;display:flex;align-items:center;gap:12px;min-height:52px;padding:8px 14px;text-align:left;font-size:var(--fs-body);color:var(--ink);line-height:var(--lh-body);}
24
24
  .vn-sub .vn-o{padding-left:42px}
25
25
  .vn-k{width:28px;height:28px;flex:none;display:grid;place-items:center;border-radius:6px;background:var(--well);color:var(--ink-3)}
26
26
  .vn-k.hot{color:var(--ember)}
27
27
  .vn-k .i{width:15px;height:15px}
28
28
  .vn-t{flex:1;min-width:0;display:grid;gap:2px}
29
- .vn-t b{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
30
- .vn-t small{font:400 var(--fs-2) var(--mono);color:var(--ink-3)}
29
+ .vn-t b{font-weight:var(--fw-strong);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
30
+ .vn-t small{font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);color:var(--ink-3)}
31
31
  .vn-tgs{display:flex;align-items:center;gap:6px;flex-wrap:wrap;justify-content:flex-end;max-width:45%}
32
- .vn-tg{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:6px;background:var(--well);font-size:var(--fs-1);font-weight:500;color:var(--ink-2);white-space:nowrap;max-width:220px;overflow:hidden;text-overflow:ellipsis}
32
+ .vn-tg{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:6px;background:var(--well);font-size:var(--fs-meta);font-weight:var(--fw-regular);color:var(--ink-2);white-space:nowrap;max-width:220px;overflow:hidden;text-overflow:ellipsis;line-height:var(--lh-meta);}
33
33
  .vn-tg .i{width:12px;height:12px}
34
34
  .vn-live{color:var(--ember)}
35
35
  .vn-warn{color:var(--warn,var(--ember))}
36
36
  .vn-x{width:44px;height:44px;flex:none;display:grid;place-items:center;margin-right:4px;border-radius:6px;color:var(--ink-3)}
37
37
  .vn-x .i{width:16px;height:16px}
38
- .vn-more span{display:block;padding:10px 14px 10px 42px;font-size:var(--fs-2);color:var(--ink-3)}
38
+ .vn-more span{display:block;padding:10px 14px 10px 42px;font-size:var(--fs-meta);color:var(--ink-3);line-height:var(--lh-meta);}
39
39
  .vn-none{margin:12px 2px;color:var(--ink-3)}
40
40
  .vm .vm-nabout{margin:8px 0 4px}
41
41
  @media (hover:hover){.vn-o:hover,.vn-x:hover,.vn-open:hover{background:var(--well)}}
@@ -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
  /* pm/premium-vw-rec.css — note recording in the premium viewer (premium-viewer S4): the Record control, the Live notes tab and the Focus tab. Loaded by vwStyle('rec'). */
3
3
  .recctl{position:relative;display:inline-flex;flex:none}
4
4
  .recctl[hidden]{display:none}
@@ -9,69 +9,69 @@
9
9
  .recm{position:absolute;right:0;top:calc(100% + 8px);z-index:40;width:min(320px,calc(100vw - 32px));padding:8px;border:1px solid var(--hair);border-radius:8px;background:var(--card-solid);box-shadow:var(--card-shadow);color:var(--ink)}
10
10
  .recm[hidden]{display:none}
11
11
  .recm .label{display:block;margin:4px 8px 6px}
12
- .recm [role="menuitem"]{display:flex;align-items:center;gap:8px;width:100%;min-height:44px;padding:6px 10px;border-radius:6px;text-align:left;font-size:var(--fs-2);font-weight:500}
13
- .recm [role="menuitem"] b{font-weight:600;flex:1 1 auto;min-width:0;overflow-wrap:anywhere}
14
- .recm [role="menuitem"] small{color:var(--ink-3);font-size:var(--fs-1);white-space:nowrap}
12
+ .recm [role="menuitem"]{display:flex;align-items:center;gap:8px;width:100%;min-height:44px;padding:6px 10px;border-radius:6px;text-align:left;font-size:var(--fs-meta);font-weight:var(--fw-regular);line-height:var(--lh-meta);}
13
+ .recm [role="menuitem"] b{font-weight:var(--fw-strong);flex:1 1 auto;min-width:0;overflow-wrap:anywhere}
14
+ .recm [role="menuitem"] small{color:var(--ink-3);font-size:var(--fs-meta);white-space:nowrap;line-height:var(--lh-meta);}
15
15
  .recm [role="menuitem"]:focus-visible{background:var(--well)}
16
16
  @media (hover:hover){.recm [role="menuitem"]:hover{background:var(--well)}}
17
17
  .recm [role="menuitem"][disabled]{opacity:.55}
18
18
  .recm [role="menuitem"] .i{width:16px;height:16px}
19
19
  .recm .note{margin:4px 8px 8px}
20
20
  .recask{padding:6px}
21
- .recask p{margin:0 0 8px;font-size:var(--fs-2)}
21
+ .recask p{margin:0 0 8px;font-size:var(--fs-meta);line-height:var(--lh-meta);}
22
22
  .recask div,.rvask div{display:flex;flex-wrap:wrap;gap:8px}
23
23
 
24
- .rvw .rvt{margin:0 0 10px;font-size:var(--fs-4);font-weight:600}
24
+ .rvw .rvt{margin:0 0 10px;font-size:var(--fs-row);font-weight:var(--fw-strong);line-height:var(--lh-row);}
25
25
  .rvh{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:10px 12px;border:1px solid var(--hair);border-radius:8px;background:var(--card-solid);box-shadow:var(--card-shadow)}
26
- .rvh b{font-size:var(--fs-3);font-weight:600}
26
+ .rvh b{font-size:var(--fs-row);font-weight:var(--fw-strong);line-height:var(--lh-row);}
27
27
  .rvsp{flex:1 1 auto}
28
- .rvclk{font-family:var(--mono);font-size:var(--fs-2);color:var(--ink-2)}
28
+ .rvclk{font-family:var(--mono);font-size:var(--fs-meta);color:var(--ink-2);line-height:var(--lh-meta);}
29
29
  .rvdot{width:9px;height:9px;border-radius:50%;background:var(--bad);animation:br 1.6s ease-in-out infinite}
30
30
  .rvdot.paused{background:var(--ember);animation:none}
31
- .rvb{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 13px;border-radius:6px;background:var(--well);font-size:var(--fs-2);font-weight:600;color:var(--ink)}
31
+ .rvb{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 13px;border-radius:6px;background:var(--well);font-size:var(--fs-label);font-weight:var(--fw-strong);color:var(--ink);line-height:var(--lh-label);}
32
32
  .rvb .i{width:15px;height:15px}
33
33
  .rvb.cta{background:var(--solid);color:var(--on-solid)}
34
34
  .rvb[aria-pressed="true"]{background:var(--solid);color:var(--on-solid)}
35
35
  .rvb:disabled{opacity:.55}
36
36
  .rvb:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
37
37
  .rvask{margin:10px 0 0;padding:12px 14px;border:1px solid var(--hair);border-radius:8px;background:var(--card-solid)}
38
- .rvask p{margin:0 0 10px;font-size:var(--fs-2)}
38
+ .rvask p{margin:0 0 10px;font-size:var(--fs-meta);line-height:var(--lh-meta);}
39
39
  .rvopts{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin:10px 0 0}
40
40
  .rvsec{margin:16px 0 0}
41
41
  .rvsec>.label{display:block;margin:0 0 6px}
42
- .rvta{width:100%;box-sizing:border-box;min-height:96px;padding:10px 12px;border:1px solid var(--hair);border-radius:6px;background:var(--card-solid);color:var(--ink);font:inherit;font-size:var(--fs-3);resize:vertical}
42
+ .rvta{width:100%;box-sizing:border-box;min-height:96px;padding:10px 12px;border:1px solid var(--hair);border-radius:6px;background:var(--card-solid);color:var(--ink);font:inherit;font-size:var(--fs-body);resize:vertical;line-height:var(--lh-body);}
43
43
  .rvta:focus-visible{outline:2px solid var(--ink);outline-offset:1px}
44
44
  .rvhl{list-style:none;margin:0;padding:0;display:grid;gap:6px}
45
- .rvhl li{display:flex;gap:10px;align-items:baseline;padding:8px 10px;border-radius:8px;background:var(--well);font-size:var(--fs-2)}
46
- .rvhl time,.rvtr time{font-family:var(--mono);font-size:var(--fs-1);color:var(--ink-3);flex:none}
47
- .rvhl em{margin-left:auto;font-style:normal;font-size:var(--fs-1);color:var(--ink-3)}
45
+ .rvhl li{display:flex;gap:10px;align-items:baseline;padding:8px 10px;border-radius:8px;background:var(--well);font-size:var(--fs-meta);line-height:var(--lh-meta);}
46
+ .rvhl time,.rvtr time{font-family:var(--mono);font-size:var(--fs-meta);color:var(--ink-3);flex:none;line-height:var(--lh-meta);}
47
+ .rvhl em{margin-left:auto;font-style:normal;font-size:var(--fs-meta);color:var(--ink-3);line-height:var(--lh-meta);}
48
48
  .rvtr{max-height:340px;overflow-y:auto;display:grid;gap:6px;padding:2px}
49
- .rvtr p{display:flex;gap:8px;align-items:baseline;margin:0;font-size:var(--fs-2);color:var(--ink-2)}
50
- .rvtr p b{font-weight:600;color:var(--ink);flex:none}
49
+ .rvtr p{display:flex;gap:8px;align-items:baseline;margin:0;font-size:var(--fs-meta);color:var(--ink-2);line-height:var(--lh-meta);}
50
+ .rvtr p b{font-weight:var(--fw-strong);color:var(--ink);flex:none}
51
51
  .rvtr p.cur{color:var(--ink)}
52
52
 
53
53
  .fvh{display:flex;align-items:baseline;flex-wrap:wrap;gap:10px;margin:0 0 12px}
54
- .fvh b{font-size:var(--fs-4);font-weight:600}
54
+ .fvh b{font-size:var(--fs-row);font-weight:var(--fw-strong);line-height:var(--lh-row);}
55
55
  .fvbar{display:flex;gap:3px;height:28px;margin:0 0 12px}
56
- .fvbar span{flex:var(--fc-flex,1);display:grid;place-items:center;min-width:18px;border-radius:6px;background:var(--well);font-size:var(--fs-1);font-weight:600;color:var(--ink-2)}
56
+ .fvbar span{flex:var(--fc-flex,1);display:grid;place-items:center;min-width:18px;border-radius:6px;background:var(--well);font-size:var(--fs-badge);font-weight:var(--fw-strong);color:var(--ink-2);line-height:var(--lh-badge);}
57
57
  .fvbar span.on{background:var(--solid);color:var(--on-solid)}
58
58
  .fvnow{padding:12px 14px;border:1px solid var(--hair);border-radius:8px;background:var(--card-solid);box-shadow:var(--card-shadow)}
59
- .fvnow b{display:block;font-size:var(--fs-4);font-weight:600}
60
- .fvnow p{margin:6px 0 0;font-size:var(--fs-3);color:var(--ink-2)}
59
+ .fvnow b{display:block;font-size:var(--fs-row);font-weight:var(--fw-strong);line-height:var(--lh-row);}
60
+ .fvnow p{margin:6px 0 0;font-size:var(--fs-body);color:var(--ink-2);line-height:var(--lh-body);}
61
61
  .fvg{display:grid;grid-template-columns:1fr 1fr;gap:16px}
62
- .fvtp{margin:0;padding-left:20px;display:grid;gap:4px;font-size:var(--fs-2)}
62
+ .fvtp{margin:0;padding-left:20px;display:grid;gap:4px;font-size:var(--fs-meta);line-height:var(--lh-meta);}
63
63
  .fvtp li{color:var(--ink-2)}
64
- .fvtp li.now{color:var(--ink);font-weight:600}
65
- .fvtp small{margin-left:6px;color:var(--ink-3);font-size:var(--fs-1)}
64
+ .fvtp li.now{color:var(--ink);font-weight:var(--fw-strong)}
65
+ .fvtp small{margin-left:6px;color:var(--ink-3);font-size:var(--fs-meta);line-height:var(--lh-meta);}
66
66
  .fvcap{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
67
67
  .fvcap div{padding:8px 10px;border-radius:8px;background:var(--well)}
68
- .fvcap b{display:block;font-size:var(--fs-4);font-weight:600}
69
- .fvcap span{font-size:var(--fs-1);color:var(--ink-3)}
68
+ .fvcap b{display:block;font-size:var(--fs-row);font-weight:var(--fw-strong);line-height:var(--lh-row);}
69
+ .fvcap span{font-size:var(--fs-meta);color:var(--ink-3);line-height:var(--lh-meta);}
70
70
  .fvst{list-style:none;margin:0;padding:0;display:grid;gap:8px}
71
71
  .fvst li{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:8px 10px;border:1px solid var(--hair);border-radius:8px}
72
72
  .fvst li>span{flex:1 1 12em;min-width:0}
73
- .fvst b{display:block;font-weight:600;font-size:var(--fs-2);overflow-wrap:anywhere}
74
- .fvst small{font-size:var(--fs-1);color:var(--ink-3)}
73
+ .fvst b{display:block;font-weight:var(--fw-strong);font-size:var(--fs-label);overflow-wrap:anywhere;line-height:var(--lh-label);}
74
+ .fvst small{font-size:var(--fs-meta);color:var(--ink-3);line-height:var(--lh-meta);}
75
75
  @media (max-width:700px){.fvg{grid-template-columns:1fr}.recb span{display:none}}
76
76
  /* a long highlight keeps its tag on one line (bug 2026-10-20: "decision" broke one letter per line) */
77
77
  .rvhl li>span{flex:1 1 auto;min-width:0}
@@ -2,50 +2,50 @@
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-report.css — the Report tab beside a chat (initiative premium-reports-from-chat, slice B; premium-report-tab.js).
7
7
  * Loaded once by vwStyle('report'). Sizes are only var(--fs-1..6), weights 400/500/600 (premium-console-type.test.js). */
8
8
  .rt{max-width:760px;margin:0 auto;padding:4px 2px 24px;display:flex;flex-direction:column;align-items:stretch;gap:12px;text-align:left}
9
9
  .rt>*{align-self:stretch}
10
- .rt .btn,.obody:has(>.rt)>.vcf .btn{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 16px;border:1px solid var(--solid);border-radius:6px;background:var(--solid);color:var(--on-solid);font-size:var(--fs-2);font-weight:600;white-space:nowrap}
10
+ .rt .btn,.obody:has(>.rt)>.vcf .btn{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 16px;border:1px solid var(--solid);border-radius:6px;background:var(--solid);color:var(--on-solid);font-size:var(--fs-label);font-weight:var(--fw-strong);white-space:nowrap;line-height:var(--lh-label);}
11
11
  .rt .btn.sec,.obody:has(>.rt)>.vcf .btn.sec{background:transparent;border-color:var(--hair);color:var(--ink)}
12
12
  .rt .btn:disabled{opacity:.5;cursor:default}
13
- .rt-eye{margin:0;font:500 var(--fs-1) var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}
14
- .rt-h{margin:0;font-size:var(--fs-5);font-weight:600;color:var(--ink);overflow-wrap:anywhere}
15
- .rt-sub{margin:0;font-size:var(--fs-3);color:var(--ink-2)}
16
- .rt-meta,.rt-note{margin:0;font-size:var(--fs-2);color:var(--ink-3)}
17
- .rt-label{margin:6px 0 0;font-size:var(--fs-2);font-weight:600;color:var(--ink-2)}
18
- .rt-msg{margin:0;padding:10px 12px;border-radius:8px;background:var(--well);font-size:var(--fs-3);color:var(--ink)}
13
+ .rt-eye{margin:0;font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}
14
+ .rt-h{margin:0;font-size:var(--fs-panel);font-weight:var(--fw-strong);color:var(--ink);overflow-wrap:anywhere;line-height:var(--lh-panel);}
15
+ .rt-sub{margin:0;font-size:var(--fs-body);color:var(--ink-2);line-height:var(--lh-body);}
16
+ .rt-meta,.rt-note{margin:0;font-size:var(--fs-meta);color:var(--ink-3);line-height:var(--lh-meta);}
17
+ .rt-label{margin:6px 0 0;font-size:var(--fs-label);font-weight:var(--fw-strong);color:var(--ink-2);line-height:var(--lh-label);}
18
+ .rt-msg{margin:0;padding:10px 12px;border-radius:8px;background:var(--well);font-size:var(--fs-body);color:var(--ink);line-height:var(--lh-body);}
19
19
  .rt-row{display:flex;flex-direction:column;gap:8px;align-items:flex-start}
20
20
  .rt-chip{align-self:flex-start;display:inline-flex;flex-direction:column;align-items:flex-start;gap:1px;min-height:44px;padding:6px 14px;border:1px solid var(--hair);border-radius:6px;background:var(--card-solid,var(--card));color:var(--ink);text-align:left;cursor:pointer}
21
- .rt-chip em{font-style:normal;font-size:var(--fs-1);color:var(--ink-3)}
22
- .rt-chip b{font-size:var(--fs-3);font-weight:600}
21
+ .rt-chip em{font-style:normal;font-size:var(--fs-meta);color:var(--ink-3);line-height:var(--lh-meta);}
22
+ .rt-chip b{font-size:var(--fs-row);font-weight:var(--fw-strong);line-height:var(--lh-row);}
23
23
  .rt-menu{display:flex;flex-direction:column;gap:2px;width:100%;max-width:360px;padding:6px;border:1px solid var(--hair);border-radius:8px;background:var(--card-solid,var(--card));box-shadow:var(--card-shadow)}
24
- .rt-menu>button{min-height:44px;padding:0 12px;border-radius:6px;text-align:left;font-size:var(--fs-3);color:var(--ink);background:none}
25
- .rt-menu>button[aria-checked="true"]{background:var(--well);font-weight:600}
24
+ .rt-menu>button{min-height:44px;padding:0 12px;border-radius:6px;text-align:left;font-size:var(--fs-body);color:var(--ink);background:none;line-height:var(--lh-body);}
25
+ .rt-menu>button[aria-checked="true"]{background:var(--well);font-weight:var(--fw-strong)}
26
26
  @media (hover:hover){.rt-menu>button:hover{background:var(--well)}}
27
27
  .rt-menu .rt-note{padding:6px 12px}
28
28
  .rt-days{display:flex;flex-wrap:wrap;gap:6px;padding:6px 6px 2px}
29
29
  .rt-days .btn{min-height:44px;min-width:52px;padding:0 10px}
30
30
  .rt-ask{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:8px;background:var(--well)}
31
- .rt-ask p{margin:0;font-size:var(--fs-3);color:var(--ink-2);flex:1 1 200px;min-width:0;overflow-wrap:anywhere}
32
- .rt-ask b{color:var(--ink);font-weight:600}
31
+ .rt-ask p{margin:0;font-size:var(--fs-body);color:var(--ink-2);flex:1 1 200px;min-width:0;overflow-wrap:anywhere;line-height:var(--lh-body);}
32
+ .rt-ask b{color:var(--ink);font-weight:var(--fw-strong)}
33
33
  .rt .rt-seg{display:inline-flex;gap:4px;padding:3px;border-radius:6px;background:var(--well);align-self:flex-start}
34
34
  .rt-seg .btn.sec{border-color:transparent}
35
35
  .rt-seg .btn{min-height:40px;border-radius:6px}
36
- .rt-ver{display:flex;align-items:center;gap:6px;font:500 var(--fs-2) var(--mono);color:var(--ink-2)}
37
- .rt-arrow{width:44px;height:44px;border:1px solid var(--hair);border-radius:6px;background:var(--card-solid,var(--card));color:var(--ink);font-size:var(--fs-4);cursor:pointer}
36
+ .rt-ver{display:flex;align-items:center;gap:6px;font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);color:var(--ink-2)}
37
+ .rt-arrow{width:44px;height:44px;border:1px solid var(--hair);border-radius:6px;background:var(--card-solid,var(--card));color:var(--ink);font-size:var(--fs-body);cursor:pointer;line-height:var(--lh-body);}
38
38
  .rt-arrow:disabled{opacity:.4;cursor:default}
39
39
  .rt-secs{margin:0;padding:0;list-style:none;border:1px solid var(--hair);border-radius:8px;background:var(--card-solid,var(--card))}
40
40
  .rt-secs li{display:flex;flex-direction:column;gap:2px;padding:10px 14px;border-top:1px solid var(--hair)}
41
41
  .rt-secs li:first-child{border-top:0}
42
- .rt-secs b{font-size:var(--fs-3);font-weight:600;color:var(--ink)}
43
- .rt-secs span{font-size:var(--fs-2);color:var(--ink-3)}
42
+ .rt-secs b{font-size:var(--fs-row);font-weight:var(--fw-strong);color:var(--ink);line-height:var(--lh-row);}
43
+ .rt-secs span{font-size:var(--fs-meta);color:var(--ink-3);line-height:var(--lh-meta);}
44
44
  .rt-frame{width:100%;aspect-ratio:16/10;border:1px solid var(--hair);border-radius:8px;background:var(--card-solid,var(--card))}
45
45
  .rt-cyc{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:6px}
46
46
  .rt-cyc li{position:relative;display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-height:44px;padding:4px 4px 4px 10px;border:1px solid var(--hair);border-radius:8px}
47
- .rt-slot{flex:1;min-width:0;font-size:var(--fs-3);color:var(--ink)}
48
- .rt-tag{padding:2px 8px;border-radius:6px;font:500 var(--fs-1) var(--mono);text-transform:uppercase}
47
+ .rt-slot{flex:1;min-width:0;font-size:var(--fs-body);color:var(--ink);line-height:var(--lh-body);}
48
+ .rt-tag{padding:2px 8px;border-radius:6px;font:var(--fw-regular) var(--fs-meta)/var(--lh-meta) var(--mono);text-transform:uppercase}
49
49
  .rt-tag.draft{background:var(--well);color:var(--ink-2)}
50
50
  .rt-tag.issued{background:color-mix(in srgb,var(--good) 16%,transparent);color:var(--ink)}
51
51
  .rt-foot{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}
@@ -57,4 +57,4 @@
57
57
  .rt .ct-tile{max-width:460px}
58
58
  .rt .ct-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin:0}
59
59
  .rt .ct-grid .nempty{align-self:start;padding:12px 14px;border-radius:8px;background:var(--well)}
60
- .rt .ct-grid .nempty p{margin:0;font-size:var(--fs-2);color:var(--ink-2)}
60
+ .rt .ct-grid .nempty p{margin:0;font-size:var(--fs-meta);color:var(--ink-2);line-height:var(--lh-meta);}
@@ -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
  /* pm/premium-vw-slides.css — the slide editor view (premium-viewer R-SL1), loaded by vwStyle('slides'). The editor's chrome uses the console's
3
3
  * type scale; the slide canvas is a fixed 960 x 540 board scaled to its box (--bd-k), so its own sizes are the --fs-sl-* steps below. Item
4
4
  * geometry comes from premium-vw-slides.js as --bd-x, --bd-y, --bd-w and --bd-h. */
@@ -7,18 +7,18 @@
7
7
  .sl-ctx{min-height:40px;padding:4px 6px;border-radius:8px;background:var(--well)}
8
8
  .sl-sep{width:1px;height:20px;background:var(--hair);margin:0 4px}
9
9
  .sl-gap{flex:1}
10
- .sl-b{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:34px;height:34px;padding:0 8px;border-radius:6px;color:var(--ink-2);font-size:var(--fs-2);font-weight:500;white-space:nowrap}
10
+ .sl-b{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:34px;height:34px;padding:0 8px;border-radius:6px;color:var(--ink-2);font-size:var(--fs-meta);font-weight:var(--fw-regular);white-space:nowrap;line-height:var(--lh-meta);}
11
11
  .sl-b .i{width:16px;height:16px}
12
12
  .sl-b:disabled{opacity:.4;cursor:default}
13
13
  .sl-b[aria-pressed="true"]{background:var(--card-solid);color:var(--ink);box-shadow:var(--card-shadow)}
14
14
  .sl-b:focus-visible,.sl-mini:focus-visible,.sl-sw:focus-visible,.sl-seg button:focus-visible,.sl-pop button:focus-visible,.sl-stage:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
15
15
  .sl-pri{background:var(--solid);color:var(--on-solid);padding:0 12px}
16
16
  .sl-pri.on{box-shadow:0 0 0 3px var(--spot)}
17
- .sl-hint{color:var(--ink-3);font-size:var(--fs-2);padding:0 6px}
18
- .sl-msg{margin:0;font-size:var(--fs-2);color:var(--ink-2);background:var(--spot);border-radius:8px;padding:8px 10px}
17
+ .sl-hint{color:var(--ink-3);font-size:var(--fs-meta);padding:0 6px;line-height:var(--lh-meta);}
18
+ .sl-msg{margin:0;font-size:var(--fs-meta);color:var(--ink-2);background:var(--spot);border-radius:8px;padding:8px 10px;line-height:var(--lh-meta);}
19
19
  .sl-seg{display:inline-flex;border:1px solid var(--hair);border-radius:8px;padding:2px}
20
- .sl-seg button{height:30px;padding:0 10px;border-radius:6px;font-size:var(--fs-2);color:var(--ink-3)}
21
- .sl-seg button[aria-pressed="true"]{background:var(--card-solid);color:var(--ink);font-weight:500}
20
+ .sl-seg button{height:30px;padding:0 10px;border-radius:6px;font-size:var(--fs-meta);color:var(--ink-3);line-height:var(--lh-meta);}
21
+ .sl-seg button[aria-pressed="true"]{background:var(--card-solid);color:var(--ink);font-weight:var(--fw-regular)}
22
22
  .sl-sw{width:26px;height:26px;border-radius:6px;border:1px solid var(--hair)}
23
23
  .sl-sw[aria-pressed="true"]{box-shadow:0 0 0 2px var(--ember)}
24
24
  .sl-sw.c-fg,.sl-sw.f-fg{background:var(--ink)}
@@ -30,7 +30,7 @@
30
30
  .sl-body{display:grid;grid-template-columns:112px minmax(0,1fr);gap:12px;min-width:0}
31
31
  .sl-rail{display:flex;flex-direction:column;gap:10px;max-height:560px;overflow-y:auto;padding:2px}
32
32
  .sl-th{position:relative;display:grid;grid-template-columns:14px minmax(0,1fr);gap:4px;align-items:start}
33
- .sl-num{font-style:normal;font-size:var(--fs-1);color:var(--ink-3);font-family:var(--mono)}
33
+ .sl-num{font-style:normal;font-size:var(--fs-meta);color:var(--ink-3);font-family:var(--mono);line-height:var(--lh-meta);}
34
34
  .sl-mini{position:relative;display:block;width:100%;aspect-ratio:16/9;border-radius:6px;overflow:hidden;box-shadow:0 0 0 1px var(--hair);padding:0}
35
35
  .sl-th[aria-current="true"] .sl-mini{box-shadow:0 0 0 2px var(--ember)}
36
36
  .sl-mini .sl-cv{pointer-events:none}
@@ -43,22 +43,22 @@
43
43
  .sl-add{border:1px dashed var(--hair);height:40px}
44
44
  .sl-main{display:grid;gap:10px;min-width:0;align-content:start}
45
45
  .sl-stage{position:relative;aspect-ratio:16/9;border-radius:8px;overflow:hidden;box-shadow:0 0 0 1px var(--hair),var(--card-shadow);touch-action:none;user-select:none}
46
- .sl-notes{display:grid;gap:4px;font-size:var(--fs-2);color:var(--ink-3)}
47
- .sl-notes textarea{font:inherit;font-size:var(--fs-3);color:var(--ink);background:var(--card-solid);border:1px solid var(--hair);border-radius:8px;padding:8px 10px;resize:vertical;min-height:64px}
46
+ .sl-notes{display:grid;gap:4px;font-size:var(--fs-meta);color:var(--ink-3);line-height:var(--lh-meta);}
47
+ .sl-notes textarea{font:inherit;font-size:var(--fs-body);color:var(--ink);background:var(--card-solid);border:1px solid var(--hair);border-radius:8px;padding:8px 10px;resize:vertical;min-height:64px;line-height:var(--lh-body);}
48
48
  .sl.ro .sl-stage{touch-action:auto}
49
49
 
50
50
  /* menus, the chart data grid, the image and save forms */
51
51
  .sl-pop{position:absolute;left:var(--bd-px,0);top:var(--bd-py,0);z-index:5;min-width:200px;max-width:min(340px,100%);padding:6px;border-radius:8px;background:var(--card-solid);box-shadow:var(--card-shadow),0 0 0 1px var(--hair)}
52
52
  .sl-pop [role="menu"]{display:grid}
53
- .sl-pop [role="menuitem"]{text-align:left;min-height:34px;padding:0 10px;border-radius:6px;font-size:var(--fs-3);color:var(--ink)}
54
- .sl-pop [role="menuitem"][aria-current="true"]{font-weight:600}
55
- .sl-ph2{margin:4px 6px 6px;font-size:var(--fs-2);font-weight:600;color:var(--ink-2)}
53
+ .sl-pop [role="menuitem"]{text-align:left;min-height:34px;padding:0 10px;border-radius:6px;font-size:var(--fs-body);color:var(--ink);line-height:var(--lh-body);}
54
+ .sl-pop [role="menuitem"][aria-current="true"]{font-weight:var(--fw-strong)}
55
+ .sl-ph2{margin:4px 6px 6px;font-size:var(--fs-label);font-weight:var(--fw-strong);color:var(--ink-2);line-height:var(--lh-label);}
56
56
  .sl-grid{display:grid;grid-template-columns:minmax(0,1fr) 76px 34px;gap:4px;padding:0 4px 6px;max-height:300px;overflow-y:auto}
57
- .sl-grid input,.sl-imgf input{min-width:0;height:32px;border:1px solid var(--hair);border-radius:6px;background:var(--card-solid);color:var(--ink);padding:0 8px;font:inherit;font-size:var(--fs-3)}
57
+ .sl-grid input,.sl-imgf input{min-width:0;height:32px;border:1px solid var(--hair);border-radius:6px;background:var(--card-solid);color:var(--ink);padding:0 8px;font:inherit;font-size:var(--fs-body);line-height:var(--lh-body);}
58
58
  .sl-imgf{display:grid;gap:8px;padding:4px}
59
- .sl-imgf label{display:grid;gap:4px;font-size:var(--fs-2);color:var(--ink-3)}
59
+ .sl-imgf label{display:grid;gap:4px;font-size:var(--fs-meta);color:var(--ink-3);line-height:var(--lh-meta);}
60
60
  .sl-row{display:flex;gap:6px;flex-wrap:wrap}
61
- .sl-err{margin:0;font-size:var(--fs-2);color:var(--bad)}
61
+ .sl-err{margin:0;font-size:var(--fs-meta);color:var(--bad);line-height:var(--lh-meta);}
62
62
 
63
63
  /* the slide canvas: 960 x 540, scaled */
64
64
  .sl-cv{--fs-sl-kicker:18px;--fs-sl-small:20px;--fs-sl-body:26px;--fs-sl-head:44px;--fs-sl-quote:42px;--fs-sl-title:64px;--fs-sl-big:150px;--fs-sl-cell:21px;--fs-sl-th:15px;--fs-sl-chart:18px;--fs-sl-axis:16px;
@@ -70,14 +70,14 @@
70
70
  .sl-tx{width:100%;height:100%;outline:0;overflow:hidden;font-size:var(--fs-sl-body);line-height:1.4}
71
71
  .sl-tx p,.sl-tx ul,.sl-tx ol,.sl-tx h3{margin:0 0 .4em}
72
72
  .sl-tx ul,.sl-tx ol{padding-left:1.1em}
73
- .sl-tx h3{font-size:1em;font-weight:600}
73
+ .sl-tx h3{font-size:1em;font-weight:var(--fw-strong)}
74
74
  .ed .sl-tx:empty::before{content:"Type here";opacity:.4}
75
- .r-title .sl-tx{font-size:var(--fs-sl-title);font-weight:600;line-height:1.08}
76
- .r-heading .sl-tx{font-size:var(--fs-sl-head);font-weight:600;line-height:1.12}
75
+ .r-title .sl-tx{font-size:var(--fs-sl-title);font-weight:var(--fw-strong);line-height:1.08}
76
+ .r-heading .sl-tx{font-size:var(--fs-sl-head);font-weight:var(--fw-strong);line-height:1.12}
77
77
  .r-small .sl-tx{font-size:var(--fs-sl-small);color:var(--smu)}
78
- .r-kicker .sl-tx{font-size:var(--fs-sl-kicker);font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--sac)}
79
- .r-big .sl-tx{font-size:var(--fs-sl-big);font-weight:600;line-height:1;color:var(--sac)}
80
- .r-quote .sl-tx{font-size:var(--fs-sl-quote);font-weight:500;line-height:1.2}
78
+ .r-kicker .sl-tx{font-size:var(--fs-sl-kicker);font-weight:var(--fw-strong);letter-spacing:.12em;text-transform:uppercase;color:var(--sac)}
79
+ .r-big .sl-tx{font-size:var(--fs-sl-big);font-weight:var(--fw-strong);line-height:1;color:var(--sac)}
80
+ .r-quote .sl-tx{font-size:var(--fs-sl-quote);font-weight:var(--fw-regular);line-height:1.2}
81
81
  .a-center{text-align:center}
82
82
  .a-right{text-align:right}
83
83
  .c-acc .sl-tx{color:var(--sac)}
@@ -91,14 +91,14 @@
91
91
  .sl-it img{width:100%;height:100%;object-fit:cover;display:block}
92
92
  .sl-it table{width:100%;border-collapse:collapse;font-size:var(--fs-sl-cell)}
93
93
  .sl-it th,.sl-it td{border-bottom:1.5px solid var(--sln);padding:11px 12px;text-align:left;outline:0}
94
- .sl-it th{color:var(--smu);font-weight:600;font-size:var(--fs-sl-th);text-transform:uppercase;letter-spacing:.06em}
94
+ .sl-it th{color:var(--smu);font-weight:var(--fw-strong);font-size:var(--fs-sl-th);text-transform:uppercase;letter-spacing:.06em}
95
95
  .sl-it svg{width:100%;height:100%;overflow:visible;display:block}
96
96
  .sl-ax{stroke:var(--sln);stroke-width:2}
97
97
  .sl-bar{fill:var(--sac);opacity:.5}
98
98
  .sl-bar.last{opacity:1}
99
99
  .sl-line{fill:none;stroke:var(--sac);stroke-width:5;stroke-linejoin:round;stroke-linecap:round}
100
100
  .sl-pt{fill:var(--sac)}
101
- .sl-lab{fill:currentColor;font-size:var(--fs-sl-chart);font-weight:600}
101
+ .sl-lab{fill:currentColor;font-size:var(--fs-sl-chart);font-weight:var(--fw-strong)}
102
102
  .sl-axl{fill:var(--smu);font-size:var(--fs-sl-axis)}
103
103
  .ed .sl-it{cursor:move}
104
104
  .ed .sl-it.sel{outline:calc(2px / var(--bd-k,.5)) solid var(--ember);outline-offset:calc(4px / var(--bd-k,.5))}
@@ -120,19 +120,19 @@
120
120
  .sl-pres .sl-b{color:rgb(220,222,230)}
121
121
  .sl-pres .sl-b:focus-visible{outline-color:rgb(233,234,240)}
122
122
  .sl-prb{display:flex;align-items:center;gap:8px;min-width:0;flex:none}
123
- .sl-prb b{font-size:var(--fs-3);font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
124
- .sl-pk{font-size:var(--fs-3);color:rgb(138,144,166);font-variant-numeric:tabular-nums}
123
+ .sl-prb b{font-size:var(--fs-row);font-weight:var(--fw-strong);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:var(--lh-row);}
124
+ .sl-pk{font-size:var(--fs-body);color:rgb(138,144,166);font-variant-numeric:tabular-nums;line-height:var(--lh-body);}
125
125
  .sl-prg{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px}
126
126
  .sl-prc{display:flex;flex-direction:column;gap:8px;min-height:0;min-width:0}
127
127
  .sl-pslot{position:relative;flex:1;min-height:200px;min-width:0;display:grid;place-items:center}
128
128
  .sl-pbox{position:relative;width:calc(960px * var(--bd-k,1));height:calc(540px * var(--bd-k,1));overflow:hidden;border-radius:6px}
129
129
  .sl-pslot .sl-pbox{cursor:pointer}
130
130
  .sl-prn{display:flex;align-items:center;justify-content:center;gap:12px;flex:none}
131
- .sl-pn{color:rgb(138,144,166);font-size:var(--fs-2);margin:0;text-align:center}
131
+ .sl-pn{color:rgb(138,144,166);font-size:var(--fs-meta);margin:0;text-align:center;line-height:var(--lh-meta);}
132
132
  .sl-pside{display:flex;flex-direction:column;gap:8px;min-width:0}
133
- .sl-lbl{margin:0;font-size:var(--fs-1);font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:rgb(138,144,166)}
133
+ .sl-lbl{margin:0;font-size:var(--fs-badge);font-weight:var(--fw-strong);letter-spacing:.08em;text-transform:uppercase;color:rgb(138,144,166);line-height:var(--lh-badge);}
134
134
  .sl-pnx{position:relative;width:100%;aspect-ratio:16 / 9}
135
- .sl-pside textarea{flex:1;min-height:140px;resize:none;border-radius:8px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);color:rgb(233,234,240);padding:10px;font:inherit;font-size:var(--fs-4);line-height:1.5}
135
+ .sl-pside textarea{flex:1;min-height:140px;resize:none;border-radius:8px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.05);color:rgb(233,234,240);padding:10px;font:inherit;font-size:var(--fs-body);line-height:1.5}
136
136
  .sl-pside textarea:focus-visible{outline:2px solid rgb(233,234,240);outline-offset:1px}
137
137
  .sl-pres .sl-hint{padding:0;color:rgb(138,144,166);margin:0}
138
138
  .sl-pres[data-k="win"]{padding:0;display:grid;place-items:center}