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,523 @@
|
|
|
1
|
+
/* McKinsey Deck · execution / operational spine. White deck, navy
|
|
2
|
+
text + signature blue accent, three-pillar grids, exhibit numbering.
|
|
3
|
+
Best for "how do we do X" rooms. */
|
|
4
|
+
:root {
|
|
5
|
+
--bg: #FFFFFF;
|
|
6
|
+
--soft: #F4F7FA;
|
|
7
|
+
--softer: #FBFCFD;
|
|
8
|
+
--hover: #ECF1F6;
|
|
9
|
+
--navy: #051C2C;
|
|
10
|
+
--navy-soft: #1A3950;
|
|
11
|
+
--navy-mid: #2C4A66;
|
|
12
|
+
--ink: #051C2C;
|
|
13
|
+
--ink-soft: #4A5870;
|
|
14
|
+
--ink-faint: #758296;
|
|
15
|
+
--ink-muted: #A4ADBD;
|
|
16
|
+
--rule: #D5DCE4;
|
|
17
|
+
--rule-soft: #E5EAF1;
|
|
18
|
+
--rule-strong: #B8C2D0;
|
|
19
|
+
--blue: #2251FF;
|
|
20
|
+
--blue-deep: #1A3FBD;
|
|
21
|
+
--blue-pale: #E5EDFA;
|
|
22
|
+
--blue-mid: #6285FF;
|
|
23
|
+
--green: #1F7A4D;
|
|
24
|
+
--green-pale: #E2F0E9;
|
|
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: 15.5px;
|
|
38
|
+
line-height: 1.6;
|
|
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: 940px; margin: 0 auto; padding: 0 0 96px; }
|
|
47
|
+
|
|
48
|
+
.top-rule {
|
|
49
|
+
background: var(--navy);
|
|
50
|
+
color: rgba(255, 255, 255, 0.85);
|
|
51
|
+
padding: 14px 32px;
|
|
52
|
+
display: flex;
|
|
53
|
+
justify-content: space-between;
|
|
54
|
+
align-items: center;
|
|
55
|
+
font-family: var(--sans);
|
|
56
|
+
font-size: 11px;
|
|
57
|
+
letter-spacing: 0.16em;
|
|
58
|
+
text-transform: uppercase;
|
|
59
|
+
}
|
|
60
|
+
.top-rule .crumb { color: #fff; font-weight: 600; }
|
|
61
|
+
.top-rule .crumb .accent { color: var(--blue-mid); }
|
|
62
|
+
.top-rule .back {
|
|
63
|
+
color: rgba(255, 255, 255, 0.85);
|
|
64
|
+
text-decoration: none;
|
|
65
|
+
border: 1px solid rgba(255, 255, 255, 0.25);
|
|
66
|
+
padding: 5px 12px;
|
|
67
|
+
letter-spacing: 0.1em;
|
|
68
|
+
}
|
|
69
|
+
.top-rule .back:hover { background: var(--blue); border-color: var(--blue); }
|
|
70
|
+
|
|
71
|
+
.cover {
|
|
72
|
+
padding: 64px 32px 48px;
|
|
73
|
+
background: var(--bg);
|
|
74
|
+
border-bottom: 4px solid var(--navy);
|
|
75
|
+
}
|
|
76
|
+
.cover-tag {
|
|
77
|
+
display: flex; align-items: center; gap: 14px;
|
|
78
|
+
font-family: var(--sans);
|
|
79
|
+
font-size: 11px;
|
|
80
|
+
letter-spacing: 0.18em;
|
|
81
|
+
text-transform: uppercase;
|
|
82
|
+
color: var(--blue);
|
|
83
|
+
font-weight: 700;
|
|
84
|
+
margin-bottom: 32px;
|
|
85
|
+
}
|
|
86
|
+
.cover-tag .pipe { width: 1px; height: 11px; background: var(--rule); }
|
|
87
|
+
.cover-tag .secondary { color: var(--ink-faint); font-weight: 500; }
|
|
88
|
+
.cover-title {
|
|
89
|
+
font-family: var(--sans);
|
|
90
|
+
font-size: 42px;
|
|
91
|
+
font-weight: 700;
|
|
92
|
+
line-height: 1.15;
|
|
93
|
+
letter-spacing: -0.022em;
|
|
94
|
+
color: var(--navy);
|
|
95
|
+
margin-bottom: 18px;
|
|
96
|
+
max-width: 820px;
|
|
97
|
+
}
|
|
98
|
+
.cover-deck {
|
|
99
|
+
font-size: 18px;
|
|
100
|
+
font-weight: 400;
|
|
101
|
+
line-height: 1.5;
|
|
102
|
+
color: var(--ink-soft);
|
|
103
|
+
max-width: 760px;
|
|
104
|
+
margin-bottom: 40px;
|
|
105
|
+
}
|
|
106
|
+
.cover-deck strong { color: var(--ink); font-weight: 600; }
|
|
107
|
+
.cover-byline {
|
|
108
|
+
display: grid;
|
|
109
|
+
grid-template-columns: repeat(4, 1fr);
|
|
110
|
+
gap: 28px;
|
|
111
|
+
padding-top: 22px;
|
|
112
|
+
border-top: 1px solid var(--rule);
|
|
113
|
+
}
|
|
114
|
+
@media (max-width: 720px) { .cover-byline { grid-template-columns: repeat(2, 1fr); } }
|
|
115
|
+
.byline-block .label {
|
|
116
|
+
font-family: var(--sans);
|
|
117
|
+
font-size: 10px;
|
|
118
|
+
letter-spacing: 0.16em;
|
|
119
|
+
text-transform: uppercase;
|
|
120
|
+
color: var(--ink-faint);
|
|
121
|
+
font-weight: 700;
|
|
122
|
+
margin-bottom: 6px;
|
|
123
|
+
}
|
|
124
|
+
.byline-block .value { font-size: 13.5px; color: var(--ink); font-weight: 600; }
|
|
125
|
+
.byline-block .signed-avatars { display: flex; margin-top: 4px; }
|
|
126
|
+
.byline-block .signed-avatars img {
|
|
127
|
+
width: 24px; height: 24px;
|
|
128
|
+
border: 1px solid var(--rule);
|
|
129
|
+
background: var(--soft);
|
|
130
|
+
margin-left: -6px;
|
|
131
|
+
border-radius: 50%;
|
|
132
|
+
}
|
|
133
|
+
.byline-block .signed-avatars img:first-child { margin-left: 0; }
|
|
134
|
+
.cover-versions {
|
|
135
|
+
margin-top: 18px;
|
|
136
|
+
padding-top: 18px;
|
|
137
|
+
border-top: 1px solid var(--rule);
|
|
138
|
+
display: flex; gap: 8px; flex-wrap: wrap; align-items: center;
|
|
139
|
+
}
|
|
140
|
+
.cover-versions-label {
|
|
141
|
+
font-family: var(--sans);
|
|
142
|
+
font-size: 10px;
|
|
143
|
+
letter-spacing: 0.14em;
|
|
144
|
+
text-transform: uppercase;
|
|
145
|
+
color: var(--ink-faint);
|
|
146
|
+
font-weight: 700;
|
|
147
|
+
}
|
|
148
|
+
.cover-version {
|
|
149
|
+
border: 1px solid var(--rule);
|
|
150
|
+
padding: 4px 10px;
|
|
151
|
+
text-decoration: none;
|
|
152
|
+
color: var(--ink-faint);
|
|
153
|
+
font-family: var(--sans);
|
|
154
|
+
font-size: 11px;
|
|
155
|
+
letter-spacing: 0.05em;
|
|
156
|
+
text-transform: uppercase;
|
|
157
|
+
font-weight: 600;
|
|
158
|
+
}
|
|
159
|
+
.cover-version:hover { border-color: var(--blue); color: var(--blue); }
|
|
160
|
+
.cover-version.active { border-color: var(--blue); color: var(--blue); background: var(--blue-pale); pointer-events: none; }
|
|
161
|
+
|
|
162
|
+
.body { padding: 0 32px; color: var(--ink); }
|
|
163
|
+
.body h1, .body h2, .body h3, .body h4 { font-family: var(--sans); color: var(--navy); font-weight: 700; line-height: 1.22; letter-spacing: -0.014em; }
|
|
164
|
+
.body h1 { display: none; }
|
|
165
|
+
.body .chapter-num {
|
|
166
|
+
display: block;
|
|
167
|
+
font-family: var(--sans);
|
|
168
|
+
font-size: 11px;
|
|
169
|
+
color: var(--blue);
|
|
170
|
+
font-weight: 700;
|
|
171
|
+
letter-spacing: 0.18em;
|
|
172
|
+
text-transform: uppercase;
|
|
173
|
+
margin: 56px 0 8px;
|
|
174
|
+
}
|
|
175
|
+
.body h2 { font-size: 28px; line-height: 1.2; margin: 0 0 16px; padding-bottom: 12px; border-bottom: 2px solid var(--navy); max-width: 820px; }
|
|
176
|
+
.body h3 { font-size: 19px; margin: 28px 0 10px; }
|
|
177
|
+
.body h4 { font-size: 13px; margin: 18px 0 8px; text-transform: uppercase; letter-spacing: 0.1em; color: var(--ink-soft); }
|
|
178
|
+
.body p { margin: 12px 0; line-height: 1.65; color: var(--ink-soft); font-size: 15px; }
|
|
179
|
+
.body ul, .body ol { margin: 12px 0 16px 22px; }
|
|
180
|
+
.body li { margin: 6px 0; line-height: 1.55; color: var(--ink-soft); }
|
|
181
|
+
.body strong { color: var(--ink); font-weight: 700; }
|
|
182
|
+
.body em { color: var(--ink); font-style: italic; }
|
|
183
|
+
.body code {
|
|
184
|
+
background: var(--soft);
|
|
185
|
+
border: 1px solid var(--rule);
|
|
186
|
+
padding: 1px 7px;
|
|
187
|
+
font-family: var(--mono);
|
|
188
|
+
font-size: 12.5px;
|
|
189
|
+
color: var(--blue);
|
|
190
|
+
border-radius: 2px;
|
|
191
|
+
}
|
|
192
|
+
.body code.badge-confidence-high { color: var(--green); border-color: rgba(31, 122, 77, 0.3); background: var(--green-pale); }
|
|
193
|
+
.body code.badge-confidence-medium { color: #B8721A; border-color: rgba(184, 114, 26, 0.3); background: rgba(184, 114, 26, 0.06); }
|
|
194
|
+
.body code.badge-confidence-low { color: #C62828; border-color: rgba(198, 40, 40, 0.3); background: rgba(198, 40, 40, 0.06); }
|
|
195
|
+
.body code.badge-priority-p0 { background: var(--blue); color: #fff; border-color: var(--blue); font-weight: 700; }
|
|
196
|
+
.body code.badge-priority-p1 { background: var(--navy); color: #fff; border-color: var(--navy); font-weight: 700; }
|
|
197
|
+
.body code.badge-priority-p2 { background: var(--soft); color: var(--ink-faint); }
|
|
198
|
+
.body blockquote {
|
|
199
|
+
padding: 14px 18px;
|
|
200
|
+
margin: 22px 0;
|
|
201
|
+
background: var(--soft);
|
|
202
|
+
border-top: 2px solid var(--blue);
|
|
203
|
+
color: var(--ink-soft);
|
|
204
|
+
font-style: normal;
|
|
205
|
+
font-size: 15px;
|
|
206
|
+
}
|
|
207
|
+
.body blockquote::before { display: none; }
|
|
208
|
+
.body blockquote em { color: var(--ink); font-style: italic; }
|
|
209
|
+
|
|
210
|
+
/* Bottom Line · navy slab. McKinsey signature. */
|
|
211
|
+
.body section.section-bottom-line {
|
|
212
|
+
background: var(--navy);
|
|
213
|
+
color: #fff;
|
|
214
|
+
margin: 0 -32px 56px;
|
|
215
|
+
padding: 40px 32px 36px;
|
|
216
|
+
}
|
|
217
|
+
.body h2.section-bottom-line {
|
|
218
|
+
font-size: 11px;
|
|
219
|
+
color: var(--blue-mid);
|
|
220
|
+
text-transform: uppercase;
|
|
221
|
+
letter-spacing: 0.16em;
|
|
222
|
+
margin: 0 0 14px;
|
|
223
|
+
font-weight: 700;
|
|
224
|
+
border: none;
|
|
225
|
+
padding: 0;
|
|
226
|
+
}
|
|
227
|
+
.body section.section-bottom-line p { font-size: 22px; line-height: 1.4; color: #fff; font-weight: 500; max-width: 800px; }
|
|
228
|
+
.body section.section-bottom-line p:not(:first-child) { font-size: 14.5px; line-height: 1.55; color: rgba(255, 255, 255, 0.78); margin-top: 18px; font-weight: 400; }
|
|
229
|
+
.body section.section-bottom-line p strong { color: #fff; }
|
|
230
|
+
.body section.section-bottom-line p em { color: var(--blue-mid); font-style: italic; }
|
|
231
|
+
|
|
232
|
+
/* Thesis (rare in McKinsey spine) */
|
|
233
|
+
.body section.section-thesis { margin: 0 0 48px; padding-bottom: 24px; border-bottom: 4px solid var(--navy); }
|
|
234
|
+
.body h2.section-thesis { font-size: 12px; color: var(--blue); text-transform: uppercase; letter-spacing: 0.16em; border: none; padding: 0; }
|
|
235
|
+
.body section.section-thesis p:first-child { font-size: 28px; color: var(--navy); font-weight: 600; line-height: 1.25; margin-top: 14px; }
|
|
236
|
+
|
|
237
|
+
/* Headline Findings · 3 pillars (the McKinsey signature). */
|
|
238
|
+
.body section.section-headline-findings .pillars-grid {
|
|
239
|
+
display: grid;
|
|
240
|
+
grid-template-columns: repeat(3, 1fr);
|
|
241
|
+
gap: 32px;
|
|
242
|
+
margin: 28px 0 16px;
|
|
243
|
+
}
|
|
244
|
+
@media (max-width: 760px) { .body section.section-headline-findings .pillars-grid { grid-template-columns: 1fr; } }
|
|
245
|
+
.body section.section-headline-findings .pillar {
|
|
246
|
+
border-top: 4px solid var(--blue);
|
|
247
|
+
padding-top: 18px;
|
|
248
|
+
}
|
|
249
|
+
.body section.section-headline-findings .pillar .pillar-num {
|
|
250
|
+
font-family: var(--sans);
|
|
251
|
+
font-size: 32px;
|
|
252
|
+
color: var(--navy);
|
|
253
|
+
font-weight: 700;
|
|
254
|
+
letter-spacing: -0.02em;
|
|
255
|
+
margin-bottom: 6px;
|
|
256
|
+
text-transform: none;
|
|
257
|
+
}
|
|
258
|
+
.body section.section-headline-findings .pillar h3 { font-size: 18px; line-height: 1.3; margin: 0 0 10px; color: var(--navy); }
|
|
259
|
+
.body section.section-headline-findings .pillar p { font-size: 14px; color: var(--ink-soft); line-height: 1.6; }
|
|
260
|
+
|
|
261
|
+
/* Big Ideas */
|
|
262
|
+
.body section.section-big-ideas ol { counter-reset: bigidea; list-style: none; padding: 0; margin: 24px 0 0; }
|
|
263
|
+
.body section.section-big-ideas ol > li {
|
|
264
|
+
counter-increment: bigidea;
|
|
265
|
+
position: relative;
|
|
266
|
+
padding: 22px 0 22px 80px;
|
|
267
|
+
border-top: 1px solid var(--rule);
|
|
268
|
+
}
|
|
269
|
+
.body section.section-big-ideas ol > li:last-child { border-bottom: 1px solid var(--rule); }
|
|
270
|
+
.body section.section-big-ideas ol > li::before {
|
|
271
|
+
content: counter(bigidea, decimal-leading-zero);
|
|
272
|
+
position: absolute; top: 22px; left: 0;
|
|
273
|
+
color: var(--blue);
|
|
274
|
+
font-family: var(--sans);
|
|
275
|
+
font-weight: 700;
|
|
276
|
+
font-size: 36px;
|
|
277
|
+
line-height: 1;
|
|
278
|
+
letter-spacing: -0.02em;
|
|
279
|
+
}
|
|
280
|
+
.body section.section-big-ideas ol > li p:first-child strong { font-size: 17px; color: var(--navy); }
|
|
281
|
+
|
|
282
|
+
/* Why Now / Implications · pale-blue callout. */
|
|
283
|
+
.body section.section-why-now {
|
|
284
|
+
background: var(--blue-pale);
|
|
285
|
+
border-top: 2px solid var(--blue);
|
|
286
|
+
padding: 22px 26px;
|
|
287
|
+
margin: 22px 0 28px;
|
|
288
|
+
}
|
|
289
|
+
.body section.section-why-now p { font-size: 14.5px; line-height: 1.6; }
|
|
290
|
+
|
|
291
|
+
/* Recommendations · numbered cards with priority dot. */
|
|
292
|
+
.body section.section-recommendations ol,
|
|
293
|
+
.body section.section-the-bet ol,
|
|
294
|
+
.body section.section-considerations ol {
|
|
295
|
+
counter-reset: rec; list-style: none; padding: 0; margin: 24px 0 0;
|
|
296
|
+
}
|
|
297
|
+
.body section.section-recommendations ol > li,
|
|
298
|
+
.body section.section-the-bet ol > li,
|
|
299
|
+
.body section.section-considerations ol > li {
|
|
300
|
+
counter-increment: rec;
|
|
301
|
+
position: relative;
|
|
302
|
+
padding: 22px 0 22px 64px;
|
|
303
|
+
border-top: 1px solid var(--rule);
|
|
304
|
+
}
|
|
305
|
+
.body section.section-recommendations ol > li:last-child,
|
|
306
|
+
.body section.section-the-bet ol > li:last-child,
|
|
307
|
+
.body section.section-considerations ol > li:last-child { border-bottom: 1px solid var(--rule); }
|
|
308
|
+
.body section.section-recommendations ol > li::before,
|
|
309
|
+
.body section.section-the-bet ol > li::before,
|
|
310
|
+
.body section.section-considerations ol > li::before {
|
|
311
|
+
content: counter(rec, decimal-leading-zero);
|
|
312
|
+
position: absolute; top: 24px; left: 0;
|
|
313
|
+
color: var(--ink-faint);
|
|
314
|
+
font-family: var(--mono);
|
|
315
|
+
font-weight: 700;
|
|
316
|
+
font-size: 22px;
|
|
317
|
+
}
|
|
318
|
+
.body section.section-recommendations ol > li:has(code.badge-priority-p0)::before { color: var(--blue); }
|
|
319
|
+
.body section.section-recommendations ol > li p:first-child strong,
|
|
320
|
+
.body section.section-the-bet ol > li p:first-child strong,
|
|
321
|
+
.body section.section-considerations ol > li p:first-child strong { font-size: 16px; color: var(--navy); }
|
|
322
|
+
.body section.section-recommendations ol > li em,
|
|
323
|
+
.body section.section-the-bet ol > li em,
|
|
324
|
+
.body section.section-considerations ol > li em {
|
|
325
|
+
color: var(--ink-faint);
|
|
326
|
+
font-style: normal;
|
|
327
|
+
font-family: var(--mono);
|
|
328
|
+
font-size: 11px;
|
|
329
|
+
text-transform: uppercase;
|
|
330
|
+
letter-spacing: 0.1em;
|
|
331
|
+
}
|
|
332
|
+
|
|
333
|
+
.body section.section-planning-assumption {
|
|
334
|
+
background: var(--soft);
|
|
335
|
+
border: 1px solid var(--rule);
|
|
336
|
+
border-top: 2px solid var(--blue);
|
|
337
|
+
padding: 22px 26px;
|
|
338
|
+
margin: 22px 0 32px;
|
|
339
|
+
}
|
|
340
|
+
.body section.section-planning-assumption blockquote {
|
|
341
|
+
background: transparent; padding: 0; margin: 0; color: var(--ink); font-style: normal; font-size: 15px;
|
|
342
|
+
}
|
|
343
|
+
.body section.section-planning-assumption blockquote::before { display: none; }
|
|
344
|
+
.body section.section-planning-assumption blockquote strong:first-child {
|
|
345
|
+
display: block;
|
|
346
|
+
color: var(--blue);
|
|
347
|
+
text-transform: uppercase;
|
|
348
|
+
letter-spacing: 0.14em;
|
|
349
|
+
font-size: 11px;
|
|
350
|
+
margin-bottom: 12px;
|
|
351
|
+
font-weight: 700;
|
|
352
|
+
}
|
|
353
|
+
|
|
354
|
+
.body section.section-new-questions ol { counter-reset: nq; list-style: none; padding: 0; margin: 22px 0 0; }
|
|
355
|
+
.body section.section-new-questions ol > li {
|
|
356
|
+
counter-increment: nq;
|
|
357
|
+
position: relative;
|
|
358
|
+
padding: 14px 0 14px 56px;
|
|
359
|
+
border-top: 1px dashed var(--rule);
|
|
360
|
+
font-size: 14.5px;
|
|
361
|
+
}
|
|
362
|
+
.body section.section-new-questions ol > li:last-child { border-bottom: 1px dashed var(--rule); }
|
|
363
|
+
.body section.section-new-questions ol > li::before {
|
|
364
|
+
content: "Q" counter(nq);
|
|
365
|
+
position: absolute; top: 14px; left: 0;
|
|
366
|
+
color: var(--blue);
|
|
367
|
+
font-family: var(--mono);
|
|
368
|
+
font-weight: 700;
|
|
369
|
+
font-size: 13px;
|
|
370
|
+
}
|
|
371
|
+
|
|
372
|
+
.body table.md-table {
|
|
373
|
+
width: 100%;
|
|
374
|
+
border-collapse: collapse;
|
|
375
|
+
margin: 22px 0 24px;
|
|
376
|
+
font-size: 13.5px;
|
|
377
|
+
border-top: 2px solid var(--navy);
|
|
378
|
+
}
|
|
379
|
+
.body table.md-table th, .body table.md-table td {
|
|
380
|
+
padding: 12px 14px;
|
|
381
|
+
border-bottom: 1px solid var(--rule);
|
|
382
|
+
text-align: left;
|
|
383
|
+
vertical-align: top;
|
|
384
|
+
}
|
|
385
|
+
.body table.md-table th {
|
|
386
|
+
background: var(--soft);
|
|
387
|
+
color: var(--navy);
|
|
388
|
+
font-family: var(--sans);
|
|
389
|
+
font-weight: 700;
|
|
390
|
+
font-size: 11px;
|
|
391
|
+
letter-spacing: 0.12em;
|
|
392
|
+
text-transform: uppercase;
|
|
393
|
+
}
|
|
394
|
+
.body table.md-table td:first-child { font-weight: 600; color: var(--navy); }
|
|
395
|
+
.body table.md-table tr:hover td { background: var(--hover); }
|
|
396
|
+
|
|
397
|
+
.body h2.section-methodology {
|
|
398
|
+
margin-top: 80px;
|
|
399
|
+
padding-top: 22px;
|
|
400
|
+
font-size: 11px;
|
|
401
|
+
color: var(--ink-faint);
|
|
402
|
+
text-transform: uppercase;
|
|
403
|
+
letter-spacing: 0.16em;
|
|
404
|
+
font-weight: 700;
|
|
405
|
+
border-top: 1px solid var(--rule);
|
|
406
|
+
border-bottom: none;
|
|
407
|
+
}
|
|
408
|
+
.body section.section-methodology { color: var(--ink-faint); font-size: 13px; line-height: 1.6; }
|
|
409
|
+
.body section.section-methodology strong { color: var(--ink-soft); font-family: var(--mono); font-size: 12px; }
|
|
410
|
+
|
|
411
|
+
.body pre.codeblock { background: var(--soft); border: 1px solid var(--rule); padding: 14px; font-family: var(--mono); font-size: 12.5px; color: var(--ink-soft); }
|
|
412
|
+
.body pre.mermaid { background: var(--bg); border-top: 2px solid var(--navy); 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); }
|
|
413
|
+
.body pre.mermaid svg text { font-family: var(--sans) !important; }
|
|
414
|
+
|
|
415
|
+
.foot-rule {
|
|
416
|
+
margin: 80px 32px 0;
|
|
417
|
+
padding: 18px 0;
|
|
418
|
+
border-top: 4px solid var(--navy);
|
|
419
|
+
text-align: left;
|
|
420
|
+
font-family: var(--sans);
|
|
421
|
+
font-size: 11px;
|
|
422
|
+
color: var(--ink-faint);
|
|
423
|
+
text-transform: uppercase;
|
|
424
|
+
letter-spacing: 0.16em;
|
|
425
|
+
font-weight: 600;
|
|
426
|
+
}
|
|
427
|
+
|
|
428
|
+
.placeholder {
|
|
429
|
+
text-align: center;
|
|
430
|
+
padding: 120px 32px;
|
|
431
|
+
color: var(--ink-faint);
|
|
432
|
+
font-family: var(--sans);
|
|
433
|
+
text-transform: uppercase;
|
|
434
|
+
letter-spacing: 0.14em;
|
|
435
|
+
font-size: 11px;
|
|
436
|
+
font-weight: 600;
|
|
437
|
+
}
|
|
438
|
+
.placeholder.error { color: #C62828; }
|
|
439
|
+
|
|
440
|
+
|
|
441
|
+
/* ─── Recommendations / Considerations · editorial cards (deck-style) ─── */
|
|
442
|
+
.body section.section-recommendations li.rec-item,
|
|
443
|
+
.body section.section-considerations li.rec-item {
|
|
444
|
+
padding: 0; margin: 48px 0 0; list-style: none; border: none;
|
|
445
|
+
}
|
|
446
|
+
.body section.section-recommendations li.rec-item:first-child,
|
|
447
|
+
.body section.section-considerations li.rec-item:first-child { margin-top: 24px; }
|
|
448
|
+
.body section.section-recommendations li.rec-item::before,
|
|
449
|
+
.body section.section-considerations li.rec-item::before { display: none; }
|
|
450
|
+
.rec-rule { display: flex; align-items: center; gap: 12px; margin-bottom: 20px; }
|
|
451
|
+
.rec-num {
|
|
452
|
+
font-family: var(--sans); font-size: 11px; font-weight: 700;
|
|
453
|
+
color: var(--ink-faint); letter-spacing: 0.18em; flex: 0 0 auto;
|
|
454
|
+
}
|
|
455
|
+
.rec-rule code { flex: 0 0 auto; }
|
|
456
|
+
.rec-rule-line { flex: 1 1 auto; height: 1px; background: var(--rule); display: block; }
|
|
457
|
+
.rec-priority-p0 .rec-rule-line { background: var(--blue); height: 2px; }
|
|
458
|
+
.rec-action {
|
|
459
|
+
font-family: var(--sans); font-size: 24px; line-height: 1.25;
|
|
460
|
+
color: var(--navy); font-weight: 700; letter-spacing: -0.02em;
|
|
461
|
+
margin: 0 0 18px; max-width: 70ch;
|
|
462
|
+
}
|
|
463
|
+
.rec-rationale { font-size: 15px; line-height: 1.7; color: var(--ink-soft); margin: 0 0 22px; max-width: 70ch; }
|
|
464
|
+
.rec-meta {
|
|
465
|
+
display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 14px;
|
|
466
|
+
margin: 0 0 14px; font-size: 13px; line-height: 1.6; color: var(--navy);
|
|
467
|
+
}
|
|
468
|
+
.rec-meta-pair { display: inline-flex; align-items: baseline; gap: 8px; min-width: 0; }
|
|
469
|
+
.rec-meta-label {
|
|
470
|
+
font-family: var(--sans); font-size: 10px; color: var(--blue);
|
|
471
|
+
letter-spacing: 0.16em; text-transform: uppercase; font-weight: 700;
|
|
472
|
+
}
|
|
473
|
+
.rec-meta-value { color: var(--navy); font-weight: 600; }
|
|
474
|
+
.rec-meta-sep { color: var(--ink-faint); }
|
|
475
|
+
.rec-risk {
|
|
476
|
+
display: flex; align-items: flex-start; gap: 8px;
|
|
477
|
+
font-size: 13.5px; line-height: 1.6; color: var(--ink-soft);
|
|
478
|
+
margin: 0; font-style: italic;
|
|
479
|
+
}
|
|
480
|
+
.rec-risk-icon { flex: 0 0 auto; color: #C62828; font-style: normal; }
|
|
481
|
+
.rec-risk-text { flex: 1 1 auto; }
|
|
482
|
+
.rec-risk-prefix {
|
|
483
|
+
font-family: var(--sans); font-style: normal; font-size: 10px;
|
|
484
|
+
color: #C62828; letter-spacing: 0.14em; text-transform: uppercase;
|
|
485
|
+
font-weight: 700; margin-right: 2px;
|
|
486
|
+
}
|
|
487
|
+
|
|
488
|
+
/* ─── New Questions · op-ed cards ─── */
|
|
489
|
+
.body section.section-new-questions li.nq-item {
|
|
490
|
+
padding: 0; margin: 48px 0 0; list-style: none; border: none;
|
|
491
|
+
}
|
|
492
|
+
.body section.section-new-questions li.nq-item:first-child { margin-top: 24px; }
|
|
493
|
+
.body section.section-new-questions li.nq-item::before { display: none; }
|
|
494
|
+
.nq-rule { display: flex; align-items: center; gap: 12px; margin-bottom: 20px; }
|
|
495
|
+
.nq-num {
|
|
496
|
+
font-family: var(--sans); font-size: 11px; font-weight: 700;
|
|
497
|
+
color: var(--blue); letter-spacing: 0.18em; flex: 0 0 auto;
|
|
498
|
+
}
|
|
499
|
+
.nq-rule-line { flex: 1 1 auto; height: 1px; background: var(--rule); display: block; }
|
|
500
|
+
.nq-attribution {
|
|
501
|
+
flex: 0 0 auto; display: inline-flex; align-items: baseline; gap: 6px;
|
|
502
|
+
font-family: var(--sans); font-size: 11px; letter-spacing: 0.14em;
|
|
503
|
+
text-transform: uppercase; color: var(--ink-faint); font-weight: 700;
|
|
504
|
+
}
|
|
505
|
+
.nq-attribution-prefix { color: var(--ink-faint); }
|
|
506
|
+
.nq-attribution-who { color: var(--blue); font-weight: 700; letter-spacing: 0.08em; }
|
|
507
|
+
.nq-question {
|
|
508
|
+
font-family: var(--sans); font-size: 24px; line-height: 1.3;
|
|
509
|
+
color: var(--navy); font-weight: 700; letter-spacing: -0.018em;
|
|
510
|
+
margin: 0 0 20px; padding: 0; border: none; background: transparent;
|
|
511
|
+
max-width: 60ch; position: relative;
|
|
512
|
+
}
|
|
513
|
+
.nq-question::before {
|
|
514
|
+
content: "\201C"; color: var(--blue); font-size: 36px;
|
|
515
|
+
font-style: normal; font-weight: 400; margin-right: 4px;
|
|
516
|
+
vertical-align: -12px; line-height: 1; font-family: Georgia, serif;
|
|
517
|
+
}
|
|
518
|
+
.nq-question::after {
|
|
519
|
+
content: "\201D"; color: var(--ink-muted); font-size: 28px;
|
|
520
|
+
font-style: normal; margin-left: 4px; vertical-align: -8px;
|
|
521
|
+
line-height: 1; font-family: Georgia, serif;
|
|
522
|
+
}
|
|
523
|
+
.nq-why { font-size: 15px; line-height: 1.7; color: var(--ink-soft); margin: 0; max-width: 60ch; }
|