privateboard 0.1.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.
- package/LICENSE +21 -0
- package/README.md +120 -0
- package/dist/cli.js +10502 -0
- package/dist/cli.js.map +1 -0
- package/package.json +63 -0
- package/public/adjourn-overlay.css +253 -0
- package/public/agent-overlay.css +444 -0
- package/public/agent-overlay.js +604 -0
- package/public/agent-profile.css +3230 -0
- package/public/agent-profile.js +3329 -0
- package/public/app.js +6629 -0
- package/public/auto-hide-scroll.js +90 -0
- package/public/avatar-skill.js +793 -0
- package/public/avatars/chair.svg +98 -0
- package/public/avatars/first-principles.svg +122 -0
- package/public/avatars/long-horizon.svg +147 -0
- package/public/avatars/open_ai.png +0 -0
- package/public/avatars/phenomenologist.svg +130 -0
- package/public/avatars/socrates.svg +187 -0
- package/public/avatars/user-empathy.svg +117 -0
- package/public/avatars/value-investor.svg +117 -0
- package/public/favicon.svg +10 -0
- package/public/fonts/agent-Italic.woff2 +0 -0
- package/public/fonts/human-sans.woff2 +0 -0
- package/public/icons.css +103 -0
- package/public/models-cache.js +57 -0
- package/public/new-agent.css +1359 -0
- package/public/new-agent.js +675 -0
- package/public/onboarding.css +628 -0
- package/public/onboarding.js +782 -0
- package/public/prototype-dashboard.html +7596 -0
- package/public/report/spines/a16z-thesis.css +1055 -0
- package/public/report/spines/anthropic-essay.css +556 -0
- package/public/report/spines/boardroom-dark.css +1082 -0
- package/public/report/spines/gartner-note.css +538 -0
- package/public/report/spines/mckinsey-deck.css +523 -0
- package/public/report/spines/openai-paper.css +516 -0
- package/public/report.html +1417 -0
- package/public/room-settings.css +895 -0
- package/public/room-settings.js +1039 -0
- package/public/themes.css +338 -0
- package/public/user-settings.css +1236 -0
- package/public/user-settings.js +1291 -0
|
@@ -0,0 +1,538 @@
|
|
|
1
|
+
/* Gartner Research Note · clinical white spine. Numbered chapters
|
|
2
|
+
(1.0 / 2.0), navy brand, pale-blue panels for callouts, dense
|
|
3
|
+
structure. Best for vendor / option-scoring / strategic-decision rooms. */
|
|
4
|
+
:root {
|
|
5
|
+
--bg: #FFFFFF;
|
|
6
|
+
--bg-soft: #F5F7FA;
|
|
7
|
+
--bg-hover: #EEF2F7;
|
|
8
|
+
--bg-emphasis: #FAFBFC;
|
|
9
|
+
--ink: #1A2332;
|
|
10
|
+
--ink-soft: #455364;
|
|
11
|
+
--ink-faint: #6B7785;
|
|
12
|
+
--ink-muted: #8E97A4;
|
|
13
|
+
--rule: #DDE2E8;
|
|
14
|
+
--rule-soft: #E8ECF1;
|
|
15
|
+
--rule-strong: #BFC8D3;
|
|
16
|
+
--brand: #0A4DA1;
|
|
17
|
+
--brand-soft: #1A65BD;
|
|
18
|
+
--brand-pale: #E8F1FB;
|
|
19
|
+
--brand-deep: #07396F;
|
|
20
|
+
--green: #2E7D32;
|
|
21
|
+
--green-pale: #E8F5E9;
|
|
22
|
+
--orange: #E65100;
|
|
23
|
+
--orange-pale: #FFF3E0;
|
|
24
|
+
--red: #C62828;
|
|
25
|
+
--sans: "Inter", "Helvetica Neue", "Arial", -apple-system, BlinkMacSystemFont,
|
|
26
|
+
"PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Source Han Sans CN",
|
|
27
|
+
"Noto Sans CJK SC", sans-serif;
|
|
28
|
+
--mono: "SF Mono", "JetBrains Mono", "Menlo",
|
|
29
|
+
"PingFang SC", "Source Han Sans CN", monospace;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
* { box-sizing: border-box; margin: 0; padding: 0; }
|
|
33
|
+
html, body {
|
|
34
|
+
background: var(--bg);
|
|
35
|
+
color: var(--ink);
|
|
36
|
+
font-family: var(--sans);
|
|
37
|
+
font-size: 15px;
|
|
38
|
+
line-height: 1.55;
|
|
39
|
+
-webkit-font-smoothing: antialiased;
|
|
40
|
+
min-height: 100vh;
|
|
41
|
+
}
|
|
42
|
+
::-webkit-scrollbar { width: 6px; }
|
|
43
|
+
::-webkit-scrollbar-track { background: var(--bg); }
|
|
44
|
+
::-webkit-scrollbar-thumb { background: var(--rule-strong); }
|
|
45
|
+
|
|
46
|
+
.doc { max-width: 920px; margin: 0 auto; padding: 0 0 96px; }
|
|
47
|
+
|
|
48
|
+
.top-rule {
|
|
49
|
+
background: var(--brand-deep);
|
|
50
|
+
color: rgba(255, 255, 255, 0.85);
|
|
51
|
+
padding: 12px 32px;
|
|
52
|
+
display: flex;
|
|
53
|
+
justify-content: space-between;
|
|
54
|
+
align-items: center;
|
|
55
|
+
font-family: var(--sans);
|
|
56
|
+
font-size: 11.5px;
|
|
57
|
+
letter-spacing: 0.14em;
|
|
58
|
+
text-transform: uppercase;
|
|
59
|
+
font-weight: 500;
|
|
60
|
+
}
|
|
61
|
+
.top-rule .crumb { color: #fff; font-weight: 600; }
|
|
62
|
+
.top-rule .crumb .accent { color: var(--brand-pale); }
|
|
63
|
+
.top-rule .back {
|
|
64
|
+
color: rgba(255, 255, 255, 0.85);
|
|
65
|
+
text-decoration: none;
|
|
66
|
+
border: 1px solid rgba(255, 255, 255, 0.3);
|
|
67
|
+
padding: 5px 12px;
|
|
68
|
+
letter-spacing: 0.1em;
|
|
69
|
+
}
|
|
70
|
+
.top-rule .back:hover { background: var(--brand); border-color: #fff; color: #fff; }
|
|
71
|
+
|
|
72
|
+
.cover {
|
|
73
|
+
padding: 56px 32px 40px;
|
|
74
|
+
background: var(--bg);
|
|
75
|
+
border-bottom: 4px solid var(--brand);
|
|
76
|
+
}
|
|
77
|
+
.cover-tag {
|
|
78
|
+
display: flex; align-items: center; gap: 14px;
|
|
79
|
+
font-family: var(--sans);
|
|
80
|
+
font-size: 11px;
|
|
81
|
+
letter-spacing: 0.18em;
|
|
82
|
+
text-transform: uppercase;
|
|
83
|
+
color: var(--brand);
|
|
84
|
+
font-weight: 700;
|
|
85
|
+
margin-bottom: 32px;
|
|
86
|
+
}
|
|
87
|
+
.cover-tag .pipe { width: 1px; height: 11px; background: var(--rule-strong); }
|
|
88
|
+
.cover-tag .secondary { color: var(--ink-faint); font-weight: 500; }
|
|
89
|
+
.cover-title {
|
|
90
|
+
font-family: var(--sans);
|
|
91
|
+
font-size: 38px;
|
|
92
|
+
font-weight: 700;
|
|
93
|
+
line-height: 1.18;
|
|
94
|
+
letter-spacing: -0.018em;
|
|
95
|
+
color: var(--ink);
|
|
96
|
+
margin-bottom: 14px;
|
|
97
|
+
max-width: 820px;
|
|
98
|
+
}
|
|
99
|
+
.cover-deck {
|
|
100
|
+
font-size: 17px;
|
|
101
|
+
font-weight: 400;
|
|
102
|
+
line-height: 1.5;
|
|
103
|
+
color: var(--ink-soft);
|
|
104
|
+
max-width: 760px;
|
|
105
|
+
margin-bottom: 32px;
|
|
106
|
+
}
|
|
107
|
+
.cover-deck strong { color: var(--ink); font-weight: 600; }
|
|
108
|
+
.cover-byline {
|
|
109
|
+
display: grid;
|
|
110
|
+
grid-template-columns: repeat(4, 1fr);
|
|
111
|
+
gap: 24px;
|
|
112
|
+
padding-top: 20px;
|
|
113
|
+
border-top: 1px solid var(--rule);
|
|
114
|
+
}
|
|
115
|
+
@media (max-width: 720px) { .cover-byline { grid-template-columns: repeat(2, 1fr); } }
|
|
116
|
+
.byline-block .label {
|
|
117
|
+
font-family: var(--sans);
|
|
118
|
+
font-size: 10px;
|
|
119
|
+
letter-spacing: 0.16em;
|
|
120
|
+
text-transform: uppercase;
|
|
121
|
+
color: var(--ink-faint);
|
|
122
|
+
font-weight: 700;
|
|
123
|
+
margin-bottom: 6px;
|
|
124
|
+
}
|
|
125
|
+
.byline-block .value { font-size: 13.5px; color: var(--ink); font-weight: 600; line-height: 1.45; }
|
|
126
|
+
.byline-block .signed-avatars { display: flex; margin-top: 4px; }
|
|
127
|
+
.byline-block .signed-avatars img {
|
|
128
|
+
width: 22px; height: 22px;
|
|
129
|
+
border: 1px solid var(--rule);
|
|
130
|
+
background: var(--bg-soft);
|
|
131
|
+
margin-left: -6px;
|
|
132
|
+
border-radius: 50%;
|
|
133
|
+
}
|
|
134
|
+
.byline-block .signed-avatars img:first-child { margin-left: 0; }
|
|
135
|
+
.cover-versions {
|
|
136
|
+
margin-top: 18px;
|
|
137
|
+
padding-top: 18px;
|
|
138
|
+
border-top: 1px solid var(--rule);
|
|
139
|
+
display: flex; gap: 8px; flex-wrap: wrap; align-items: center;
|
|
140
|
+
}
|
|
141
|
+
.cover-versions-label {
|
|
142
|
+
font-family: var(--sans);
|
|
143
|
+
font-size: 10px;
|
|
144
|
+
letter-spacing: 0.14em;
|
|
145
|
+
text-transform: uppercase;
|
|
146
|
+
color: var(--ink-faint);
|
|
147
|
+
font-weight: 700;
|
|
148
|
+
}
|
|
149
|
+
.cover-version {
|
|
150
|
+
border: 1px solid var(--rule);
|
|
151
|
+
padding: 4px 10px;
|
|
152
|
+
text-decoration: none;
|
|
153
|
+
color: var(--ink-faint);
|
|
154
|
+
font-family: var(--sans);
|
|
155
|
+
font-size: 11px;
|
|
156
|
+
letter-spacing: 0.05em;
|
|
157
|
+
text-transform: uppercase;
|
|
158
|
+
font-weight: 600;
|
|
159
|
+
}
|
|
160
|
+
.cover-version:hover { border-color: var(--brand); color: var(--brand); background: var(--brand-pale); }
|
|
161
|
+
.cover-version.active { border-color: var(--brand); color: var(--brand); background: var(--brand-pale); pointer-events: none; }
|
|
162
|
+
.cover-version .num { font-weight: 700; }
|
|
163
|
+
.cover-version .sep { opacity: 0.5; }
|
|
164
|
+
|
|
165
|
+
.body { padding: 0 32px; color: var(--ink); }
|
|
166
|
+
.body h1, .body h2, .body h3, .body h4 { font-family: var(--sans); color: var(--ink); font-weight: 700; line-height: 1.25; letter-spacing: -0.012em; }
|
|
167
|
+
.body h1 { display: none; }
|
|
168
|
+
.body .chapter-num {
|
|
169
|
+
display: block;
|
|
170
|
+
font-family: var(--sans);
|
|
171
|
+
font-size: 28px;
|
|
172
|
+
color: var(--brand);
|
|
173
|
+
font-weight: 700;
|
|
174
|
+
letter-spacing: -0.01em;
|
|
175
|
+
text-transform: none;
|
|
176
|
+
margin: 56px 0 4px;
|
|
177
|
+
}
|
|
178
|
+
.body .chapter-num::after { content: "."; }
|
|
179
|
+
.body .chapter-num + h2 { margin-top: 0; padding-top: 0; }
|
|
180
|
+
.body h2 { font-size: 26px; line-height: 1.2; margin: 0 0 16px; }
|
|
181
|
+
.body h3 { font-size: 18px; margin: 26px 0 10px; }
|
|
182
|
+
.body h4 { font-size: 13px; margin: 18px 0 8px; text-transform: uppercase; letter-spacing: 0.08em; color: var(--ink-soft); }
|
|
183
|
+
.body p { margin: 12px 0; line-height: 1.62; color: var(--ink-soft); font-size: 15px; }
|
|
184
|
+
.body ul, .body ol { margin: 12px 0 14px 22px; }
|
|
185
|
+
.body li { margin: 6px 0; line-height: 1.55; color: var(--ink-soft); font-size: 14.5px; }
|
|
186
|
+
.body strong { color: var(--ink); font-weight: 700; }
|
|
187
|
+
.body em { color: var(--ink); font-style: italic; }
|
|
188
|
+
.body code {
|
|
189
|
+
background: var(--bg-soft);
|
|
190
|
+
border: 1px solid var(--rule);
|
|
191
|
+
padding: 1px 7px;
|
|
192
|
+
font-family: var(--mono);
|
|
193
|
+
font-size: 12.5px;
|
|
194
|
+
color: var(--brand);
|
|
195
|
+
border-radius: 2px;
|
|
196
|
+
}
|
|
197
|
+
.body code.badge-confidence-high { color: var(--green); border-color: rgba(46, 125, 50, 0.3); background: var(--green-pale); }
|
|
198
|
+
.body code.badge-confidence-medium { color: var(--orange); border-color: rgba(230, 81, 0, 0.3); background: var(--orange-pale); }
|
|
199
|
+
.body code.badge-confidence-low { color: var(--red); border-color: rgba(198, 40, 40, 0.3); background: rgba(198, 40, 40, 0.06); }
|
|
200
|
+
.body code.badge-priority-p0 { background: var(--red); color: #fff; border-color: var(--red); font-weight: 700; }
|
|
201
|
+
.body code.badge-priority-p1 { background: var(--orange); color: #fff; border-color: var(--orange); font-weight: 700; }
|
|
202
|
+
.body code.badge-priority-p2 { background: var(--bg-soft); color: var(--ink-faint); }
|
|
203
|
+
.body blockquote {
|
|
204
|
+
padding: 14px 18px;
|
|
205
|
+
margin: 22px 0;
|
|
206
|
+
background: var(--bg-soft);
|
|
207
|
+
border-top: 2px solid var(--brand);
|
|
208
|
+
color: var(--ink-soft);
|
|
209
|
+
font-style: normal;
|
|
210
|
+
font-size: 15px;
|
|
211
|
+
}
|
|
212
|
+
.body blockquote::before { display: none; }
|
|
213
|
+
.body blockquote em { color: var(--ink); font-style: italic; }
|
|
214
|
+
.body blockquote strong { color: var(--ink); }
|
|
215
|
+
|
|
216
|
+
/* Bottom Line · Gartner trademark — tinted callout, navy header. */
|
|
217
|
+
.body section.section-bottom-line {
|
|
218
|
+
background: var(--brand-pale);
|
|
219
|
+
border: 1px solid rgba(10, 77, 161, 0.2);
|
|
220
|
+
border-top: 3px solid var(--brand);
|
|
221
|
+
margin: 0 0 56px;
|
|
222
|
+
padding: 24px 28px;
|
|
223
|
+
}
|
|
224
|
+
.body h2.section-bottom-line {
|
|
225
|
+
font-size: 12px;
|
|
226
|
+
color: var(--brand);
|
|
227
|
+
text-transform: uppercase;
|
|
228
|
+
letter-spacing: 0.16em;
|
|
229
|
+
margin: 0 0 14px;
|
|
230
|
+
font-weight: 700;
|
|
231
|
+
}
|
|
232
|
+
.body section.section-bottom-line p { font-size: 18px; line-height: 1.5; color: var(--ink); font-weight: 500; max-width: 800px; }
|
|
233
|
+
.body section.section-bottom-line p:not(:first-child) { font-size: 14px; line-height: 1.55; color: var(--ink-soft); margin-top: 14px; font-weight: 400; }
|
|
234
|
+
|
|
235
|
+
/* Thesis (rare in Gartner spine) */
|
|
236
|
+
.body section.section-thesis { margin: 0 0 48px; padding-bottom: 24px; border-bottom: 2px solid var(--rule); }
|
|
237
|
+
.body h2.section-thesis { font-size: 12px; color: var(--brand); text-transform: uppercase; letter-spacing: 0.16em; }
|
|
238
|
+
.body section.section-thesis p:first-child { font-size: 24px; color: var(--ink); font-weight: 600; line-height: 1.3; }
|
|
239
|
+
|
|
240
|
+
.body section.section-frame-shift p:first-child { font-size: 16.5px; color: var(--ink); }
|
|
241
|
+
|
|
242
|
+
/* Headline Findings · key-findings flat list (Gartner default presentation). */
|
|
243
|
+
.body section.section-headline-findings .pillars-grid { display: block; margin: 20px 0; }
|
|
244
|
+
.body section.section-headline-findings .pillar {
|
|
245
|
+
border-top: 1px solid var(--rule);
|
|
246
|
+
padding: 18px 0 18px 36px;
|
|
247
|
+
position: relative;
|
|
248
|
+
}
|
|
249
|
+
.body section.section-headline-findings .pillar:last-child { border-bottom: 1px solid var(--rule); }
|
|
250
|
+
.body section.section-headline-findings .pillar .pillar-num {
|
|
251
|
+
position: absolute;
|
|
252
|
+
top: 18px; left: 0;
|
|
253
|
+
font-family: var(--mono);
|
|
254
|
+
font-size: 12.5px;
|
|
255
|
+
color: var(--brand);
|
|
256
|
+
font-weight: 700;
|
|
257
|
+
letter-spacing: 0;
|
|
258
|
+
margin: 0;
|
|
259
|
+
text-transform: none;
|
|
260
|
+
}
|
|
261
|
+
.body section.section-headline-findings .pillar h3 { font-size: 17px; margin: 0 0 8px; }
|
|
262
|
+
.body section.section-headline-findings .pillar p { font-size: 14px; line-height: 1.55; }
|
|
263
|
+
|
|
264
|
+
/* Big Ideas */
|
|
265
|
+
.body section.section-big-ideas ol { counter-reset: bigidea; list-style: none; padding: 0; margin: 20px 0; }
|
|
266
|
+
.body section.section-big-ideas ol > li {
|
|
267
|
+
counter-increment: bigidea;
|
|
268
|
+
position: relative;
|
|
269
|
+
padding: 18px 0 18px 56px;
|
|
270
|
+
border-top: 1px solid var(--rule);
|
|
271
|
+
}
|
|
272
|
+
.body section.section-big-ideas ol > li:last-child { border-bottom: 1px solid var(--rule); }
|
|
273
|
+
.body section.section-big-ideas ol > li::before {
|
|
274
|
+
content: counter(bigidea, decimal-leading-zero);
|
|
275
|
+
position: absolute; top: 18px; left: 0;
|
|
276
|
+
font-family: var(--mono);
|
|
277
|
+
font-size: 22px;
|
|
278
|
+
color: var(--brand);
|
|
279
|
+
font-weight: 700;
|
|
280
|
+
}
|
|
281
|
+
.body section.section-big-ideas ol > li p:first-child strong { font-size: 16.5px; color: var(--ink); }
|
|
282
|
+
|
|
283
|
+
/* Why Now · Strategic Planning Assumption-style box. */
|
|
284
|
+
.body section.section-why-now {
|
|
285
|
+
background: var(--brand-pale);
|
|
286
|
+
border: 1px solid rgba(10, 77, 161, 0.2);
|
|
287
|
+
padding: 18px 22px;
|
|
288
|
+
margin: 22px 0 28px;
|
|
289
|
+
border-top: 2px solid var(--brand);
|
|
290
|
+
}
|
|
291
|
+
|
|
292
|
+
/* The Bet / Recommendations / Considerations */
|
|
293
|
+
.body section.section-recommendations ol,
|
|
294
|
+
.body section.section-the-bet ol,
|
|
295
|
+
.body section.section-considerations ol {
|
|
296
|
+
counter-reset: rec; list-style: none; padding: 0; margin: 20px 0 0;
|
|
297
|
+
}
|
|
298
|
+
.body section.section-recommendations ol > li,
|
|
299
|
+
.body section.section-the-bet ol > li,
|
|
300
|
+
.body section.section-considerations ol > li {
|
|
301
|
+
counter-increment: rec;
|
|
302
|
+
position: relative;
|
|
303
|
+
padding: 20px 0 20px 60px;
|
|
304
|
+
border-top: 1px solid var(--rule);
|
|
305
|
+
}
|
|
306
|
+
.body section.section-recommendations ol > li:last-child,
|
|
307
|
+
.body section.section-the-bet ol > li:last-child,
|
|
308
|
+
.body section.section-considerations ol > li:last-child { border-bottom: 1px solid var(--rule); }
|
|
309
|
+
.body section.section-recommendations ol > li::before,
|
|
310
|
+
.body section.section-the-bet ol > li::before,
|
|
311
|
+
.body section.section-considerations ol > li::before {
|
|
312
|
+
content: counter(rec);
|
|
313
|
+
position: absolute; top: 22px; left: 0;
|
|
314
|
+
width: 36px; height: 36px;
|
|
315
|
+
background: var(--brand);
|
|
316
|
+
color: #fff;
|
|
317
|
+
font-family: var(--sans);
|
|
318
|
+
font-weight: 700;
|
|
319
|
+
font-size: 14px;
|
|
320
|
+
display: flex; align-items: center; justify-content: center;
|
|
321
|
+
border-radius: 50%;
|
|
322
|
+
}
|
|
323
|
+
.body section.section-recommendations ol > li:has(code.badge-priority-p0)::before { background: var(--red); }
|
|
324
|
+
.body section.section-recommendations ol > li p,
|
|
325
|
+
.body section.section-the-bet ol > li p,
|
|
326
|
+
.body section.section-considerations ol > li p { font-size: 14.5px; }
|
|
327
|
+
.body section.section-recommendations ol > li p:first-child strong,
|
|
328
|
+
.body section.section-the-bet ol > li p:first-child strong,
|
|
329
|
+
.body section.section-considerations ol > li p:first-child strong { font-size: 16px; color: var(--ink); }
|
|
330
|
+
.body section.section-recommendations ol > li em,
|
|
331
|
+
.body section.section-the-bet ol > li em,
|
|
332
|
+
.body section.section-considerations ol > li em {
|
|
333
|
+
color: var(--ink-faint);
|
|
334
|
+
font-style: normal;
|
|
335
|
+
font-family: var(--sans);
|
|
336
|
+
font-size: 11px;
|
|
337
|
+
text-transform: uppercase;
|
|
338
|
+
letter-spacing: 0.1em;
|
|
339
|
+
font-weight: 600;
|
|
340
|
+
}
|
|
341
|
+
|
|
342
|
+
/* Strategic Planning Assumption · Gartner trademark callout. */
|
|
343
|
+
.body section.section-planning-assumption {
|
|
344
|
+
background: var(--bg-soft);
|
|
345
|
+
border: 1px solid var(--rule);
|
|
346
|
+
border-top: 3px solid var(--orange);
|
|
347
|
+
padding: 22px 26px;
|
|
348
|
+
margin: 22px 0 32px;
|
|
349
|
+
}
|
|
350
|
+
.body section.section-planning-assumption blockquote {
|
|
351
|
+
background: transparent; padding: 0; margin: 0; color: var(--ink); font-style: normal; font-size: 15px;
|
|
352
|
+
}
|
|
353
|
+
.body section.section-planning-assumption blockquote::before { display: none; }
|
|
354
|
+
.body section.section-planning-assumption blockquote strong:first-child {
|
|
355
|
+
display: block;
|
|
356
|
+
color: var(--orange);
|
|
357
|
+
text-transform: uppercase;
|
|
358
|
+
letter-spacing: 0.14em;
|
|
359
|
+
font-size: 11px;
|
|
360
|
+
margin-bottom: 12px;
|
|
361
|
+
font-weight: 700;
|
|
362
|
+
}
|
|
363
|
+
|
|
364
|
+
/* Pre-mortem / divergence · table-heavy. */
|
|
365
|
+
.body section.section-pre-mortem table.md-table,
|
|
366
|
+
.body section.section-divergence table.md-table { margin: 18px 0; }
|
|
367
|
+
|
|
368
|
+
.body section.section-new-questions ol { counter-reset: nq; list-style: none; padding: 0; margin: 20px 0 0; }
|
|
369
|
+
.body section.section-new-questions ol > li {
|
|
370
|
+
counter-increment: nq;
|
|
371
|
+
position: relative;
|
|
372
|
+
padding: 14px 0 14px 56px;
|
|
373
|
+
border-top: 1px dashed var(--rule);
|
|
374
|
+
font-size: 14.5px;
|
|
375
|
+
}
|
|
376
|
+
.body section.section-new-questions ol > li:last-child { border-bottom: 1px dashed var(--rule); }
|
|
377
|
+
.body section.section-new-questions ol > li::before {
|
|
378
|
+
content: "Q" counter(nq);
|
|
379
|
+
position: absolute; top: 14px; left: 0;
|
|
380
|
+
color: var(--brand);
|
|
381
|
+
font-family: var(--mono);
|
|
382
|
+
font-weight: 700;
|
|
383
|
+
font-size: 13px;
|
|
384
|
+
}
|
|
385
|
+
|
|
386
|
+
.body table.md-table {
|
|
387
|
+
width: 100%;
|
|
388
|
+
border-collapse: collapse;
|
|
389
|
+
margin: 18px 0 24px;
|
|
390
|
+
font-size: 13.5px;
|
|
391
|
+
border-top: 2px solid var(--brand);
|
|
392
|
+
}
|
|
393
|
+
.body table.md-table th, .body table.md-table td {
|
|
394
|
+
padding: 10px 14px;
|
|
395
|
+
border-bottom: 1px solid var(--rule);
|
|
396
|
+
text-align: left;
|
|
397
|
+
vertical-align: top;
|
|
398
|
+
}
|
|
399
|
+
.body table.md-table th {
|
|
400
|
+
background: var(--bg-soft);
|
|
401
|
+
color: var(--brand);
|
|
402
|
+
font-family: var(--sans);
|
|
403
|
+
font-weight: 700;
|
|
404
|
+
font-size: 11px;
|
|
405
|
+
letter-spacing: 0.12em;
|
|
406
|
+
text-transform: uppercase;
|
|
407
|
+
border-bottom: 2px solid var(--rule-strong);
|
|
408
|
+
}
|
|
409
|
+
.body table.md-table td:first-child { font-weight: 600; color: var(--ink); }
|
|
410
|
+
.body table.md-table tr:hover td { background: var(--bg-emphasis); }
|
|
411
|
+
|
|
412
|
+
.body h2.section-methodology {
|
|
413
|
+
margin-top: 80px;
|
|
414
|
+
padding-top: 20px;
|
|
415
|
+
font-size: 11.5px;
|
|
416
|
+
color: var(--ink-faint);
|
|
417
|
+
text-transform: uppercase;
|
|
418
|
+
letter-spacing: 0.14em;
|
|
419
|
+
font-weight: 700;
|
|
420
|
+
border-top: 1px solid var(--rule);
|
|
421
|
+
}
|
|
422
|
+
.body section.section-methodology { color: var(--ink-faint); font-size: 12.5px; line-height: 1.55; background: var(--bg-soft); padding: 14px 16px; margin-top: 8px; border: 1px solid var(--rule); }
|
|
423
|
+
.body section.section-methodology strong { color: var(--ink-soft); font-family: var(--mono); font-size: 12px; }
|
|
424
|
+
|
|
425
|
+
.body pre.codeblock { background: var(--bg-soft); border: 1px solid var(--rule); padding: 12px 14px; font-family: var(--mono); font-size: 12.5px; color: var(--ink-soft); }
|
|
426
|
+
.body pre.mermaid { background: var(--bg); border-top: 2px solid var(--brand); border-bottom: 1px solid var(--rule); padding: 28px 24px 24px; margin: 22px 0 28px; min-height: 380px; text-align: center; font-family: var(--mono); font-size: 11px; color: var(--ink-faint); }
|
|
427
|
+
.body pre.mermaid svg text { font-family: var(--sans) !important; }
|
|
428
|
+
|
|
429
|
+
.foot-rule {
|
|
430
|
+
margin: 80px 32px 0;
|
|
431
|
+
padding: 18px 0;
|
|
432
|
+
border-top: 2px solid var(--brand);
|
|
433
|
+
text-align: left;
|
|
434
|
+
font-family: var(--sans);
|
|
435
|
+
font-size: 11px;
|
|
436
|
+
color: var(--ink-faint);
|
|
437
|
+
text-transform: uppercase;
|
|
438
|
+
letter-spacing: 0.14em;
|
|
439
|
+
font-weight: 600;
|
|
440
|
+
}
|
|
441
|
+
|
|
442
|
+
.placeholder {
|
|
443
|
+
text-align: center;
|
|
444
|
+
padding: 120px 32px;
|
|
445
|
+
color: var(--ink-faint);
|
|
446
|
+
font-family: var(--sans);
|
|
447
|
+
text-transform: uppercase;
|
|
448
|
+
letter-spacing: 0.14em;
|
|
449
|
+
font-size: 11.5px;
|
|
450
|
+
font-weight: 600;
|
|
451
|
+
}
|
|
452
|
+
.placeholder.error { color: var(--red); }
|
|
453
|
+
|
|
454
|
+
|
|
455
|
+
/* ─── Recommendations / Considerations · editorial cards (clinical) ─── */
|
|
456
|
+
.body section.section-recommendations li.rec-item,
|
|
457
|
+
.body section.section-considerations li.rec-item {
|
|
458
|
+
padding: 0; margin: 44px 0 0; list-style: none; border: none;
|
|
459
|
+
}
|
|
460
|
+
.body section.section-recommendations li.rec-item:first-child,
|
|
461
|
+
.body section.section-considerations li.rec-item:first-child { margin-top: 24px; }
|
|
462
|
+
.body section.section-recommendations li.rec-item::before,
|
|
463
|
+
.body section.section-considerations li.rec-item::before { display: none; }
|
|
464
|
+
.rec-rule { display: flex; align-items: center; gap: 12px; margin-bottom: 20px; }
|
|
465
|
+
.rec-num {
|
|
466
|
+
font-family: var(--sans); font-size: 11px; font-weight: 700;
|
|
467
|
+
color: var(--ink-faint); letter-spacing: 0.18em; flex: 0 0 auto;
|
|
468
|
+
}
|
|
469
|
+
.rec-rule code { flex: 0 0 auto; }
|
|
470
|
+
.rec-rule-line { flex: 1 1 auto; height: 1px; background: var(--rule); display: block; }
|
|
471
|
+
.rec-priority-p0 .rec-rule-line { background: var(--red); height: 1.5px; }
|
|
472
|
+
.rec-priority-p1 .rec-rule-line { background: var(--brand); height: 1.5px; }
|
|
473
|
+
.rec-action {
|
|
474
|
+
font-family: var(--sans); font-size: 22px; line-height: 1.28;
|
|
475
|
+
color: var(--ink); font-weight: 700; letter-spacing: -0.018em;
|
|
476
|
+
margin: 0 0 16px; max-width: 70ch;
|
|
477
|
+
}
|
|
478
|
+
.rec-rationale { font-size: 15px; line-height: 1.7; color: var(--ink-soft); margin: 0 0 20px; max-width: 70ch; }
|
|
479
|
+
.rec-meta {
|
|
480
|
+
display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 14px;
|
|
481
|
+
margin: 0 0 14px; font-size: 13px; line-height: 1.6; color: var(--ink);
|
|
482
|
+
}
|
|
483
|
+
.rec-meta-pair { display: inline-flex; align-items: baseline; gap: 8px; min-width: 0; }
|
|
484
|
+
.rec-meta-label {
|
|
485
|
+
font-family: var(--sans); font-size: 10px; color: var(--brand);
|
|
486
|
+
letter-spacing: 0.14em; text-transform: uppercase; font-weight: 700;
|
|
487
|
+
}
|
|
488
|
+
.rec-meta-value { color: var(--ink); font-weight: 600; }
|
|
489
|
+
.rec-meta-sep { color: var(--ink-faint); }
|
|
490
|
+
.rec-risk {
|
|
491
|
+
display: flex; align-items: flex-start; gap: 8px;
|
|
492
|
+
font-size: 13.5px; line-height: 1.6; color: var(--ink-soft);
|
|
493
|
+
margin: 0; font-style: italic;
|
|
494
|
+
}
|
|
495
|
+
.rec-risk-icon { flex: 0 0 auto; color: var(--red); font-style: normal; }
|
|
496
|
+
.rec-risk-text { flex: 1 1 auto; }
|
|
497
|
+
.rec-risk-prefix {
|
|
498
|
+
font-family: var(--sans); font-style: normal; font-size: 10px;
|
|
499
|
+
color: var(--red); letter-spacing: 0.14em; text-transform: uppercase;
|
|
500
|
+
font-weight: 700; margin-right: 2px;
|
|
501
|
+
}
|
|
502
|
+
|
|
503
|
+
/* ─── New Questions · op-ed cards ─── */
|
|
504
|
+
.body section.section-new-questions li.nq-item {
|
|
505
|
+
padding: 0; margin: 44px 0 0; list-style: none; border: none;
|
|
506
|
+
}
|
|
507
|
+
.body section.section-new-questions li.nq-item:first-child { margin-top: 24px; }
|
|
508
|
+
.body section.section-new-questions li.nq-item::before { display: none; }
|
|
509
|
+
.nq-rule { display: flex; align-items: center; gap: 12px; margin-bottom: 20px; }
|
|
510
|
+
.nq-num {
|
|
511
|
+
font-family: var(--sans); font-size: 11px; font-weight: 700;
|
|
512
|
+
color: var(--brand); letter-spacing: 0.18em; flex: 0 0 auto;
|
|
513
|
+
}
|
|
514
|
+
.nq-rule-line { flex: 1 1 auto; height: 1px; background: var(--rule); display: block; }
|
|
515
|
+
.nq-attribution {
|
|
516
|
+
flex: 0 0 auto; display: inline-flex; align-items: baseline; gap: 6px;
|
|
517
|
+
font-family: var(--sans); font-size: 11px; letter-spacing: 0.14em;
|
|
518
|
+
text-transform: uppercase; color: var(--ink-faint); font-weight: 600;
|
|
519
|
+
}
|
|
520
|
+
.nq-attribution-prefix { color: var(--ink-faint); }
|
|
521
|
+
.nq-attribution-who { color: var(--brand); font-weight: 700; letter-spacing: 0.08em; }
|
|
522
|
+
.nq-question {
|
|
523
|
+
font-family: var(--sans); font-size: 22px; line-height: 1.32;
|
|
524
|
+
color: var(--ink); font-weight: 700; letter-spacing: -0.014em;
|
|
525
|
+
margin: 0 0 18px; padding: 0; border: none; background: transparent;
|
|
526
|
+
max-width: 60ch; position: relative;
|
|
527
|
+
}
|
|
528
|
+
.nq-question::before {
|
|
529
|
+
content: "\201C"; color: var(--brand); font-size: 32px;
|
|
530
|
+
font-style: normal; font-weight: 400; margin-right: 4px;
|
|
531
|
+
vertical-align: -10px; line-height: 1; font-family: Georgia, serif;
|
|
532
|
+
}
|
|
533
|
+
.nq-question::after {
|
|
534
|
+
content: "\201D"; color: var(--ink-muted); font-size: 26px;
|
|
535
|
+
font-style: normal; margin-left: 4px; vertical-align: -8px;
|
|
536
|
+
line-height: 1; font-family: Georgia, serif;
|
|
537
|
+
}
|
|
538
|
+
.nq-why { font-size: 14.5px; line-height: 1.65; color: var(--ink-soft); margin: 0; max-width: 60ch; }
|