thurview 0.3.0 → 0.4.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/dist/theme.js +23 -34
- package/dist/theme.js.map +1 -1
- package/dist/ui/app.css +191 -289
- package/package.json +1 -1
- package/skills/thurview/references/theme.md +6 -7
- package/dist/ui/assets/fonts/press-start-2p-400.woff2 +0 -0
package/dist/theme.js
CHANGED
|
@@ -110,19 +110,20 @@ export function parseTheme(yaml) {
|
|
|
110
110
|
return { theme: r.data, diagnostics };
|
|
111
111
|
}
|
|
112
112
|
const DEFAULT_CODE = {
|
|
113
|
-
fg: "#
|
|
114
|
-
keyword: "#
|
|
115
|
-
string: "#
|
|
116
|
-
function: "#
|
|
117
|
-
type: "#
|
|
118
|
-
variable: "#
|
|
119
|
-
number: "#
|
|
120
|
-
comment: "#
|
|
121
|
-
punctuation: "#
|
|
122
|
-
operator: "#
|
|
123
|
-
tag: "#
|
|
113
|
+
fg: "#e6e8eb",
|
|
114
|
+
keyword: "#ff7b72",
|
|
115
|
+
string: "#a5d6ff",
|
|
116
|
+
function: "#d2a8ff",
|
|
117
|
+
type: "#ffa657",
|
|
118
|
+
variable: "#79c0ff",
|
|
119
|
+
number: "#79c0ff",
|
|
120
|
+
comment: "#8b949e",
|
|
121
|
+
punctuation: "#8b949e",
|
|
122
|
+
operator: "#ff7b72",
|
|
123
|
+
tag: "#7ee787",
|
|
124
124
|
};
|
|
125
|
-
|
|
125
|
+
const DEFAULT_CODE_BG = "#0b0d10";
|
|
126
|
+
export function shikiTheme(name, code, mode, bg = DEFAULT_CODE_BG) {
|
|
126
127
|
const c = { ...DEFAULT_CODE, ...code };
|
|
127
128
|
return {
|
|
128
129
|
name,
|
|
@@ -232,25 +233,16 @@ export function compileTheme(theme, blobUrl) {
|
|
|
232
233
|
"--bg2": c.bg2,
|
|
233
234
|
"--bg3": c.bg3,
|
|
234
235
|
"--bg-code": c.code,
|
|
235
|
-
"--hud-bg": c.bg2,
|
|
236
|
-
"--hud-deep": c.bg,
|
|
237
236
|
"--fg": c.fg,
|
|
238
237
|
"--fg2": c.fg2,
|
|
239
238
|
"--muted": c.muted,
|
|
240
239
|
"--line": c.line,
|
|
241
240
|
"--line2": c.line,
|
|
242
|
-
"--hud-edge": c.line,
|
|
243
241
|
"--accent": c.accent,
|
|
244
|
-
"--
|
|
245
|
-
"--doom-bright": c.accent,
|
|
246
|
-
"--ember": c.accent,
|
|
247
|
-
"--red": c.del ?? c.accent,
|
|
248
|
-
"--green": c.link ?? c.ok,
|
|
242
|
+
"--link": c.link,
|
|
249
243
|
"--ok": c.ok,
|
|
250
|
-
"--yellow": c.warn,
|
|
251
244
|
"--warn": c.warn,
|
|
252
245
|
"--del": c.del,
|
|
253
|
-
"--blue": c.link,
|
|
254
246
|
"--font-display": theme.fonts.display,
|
|
255
247
|
"--font-body": theme.fonts.body,
|
|
256
248
|
"--font-mono": theme.fonts.mono,
|
|
@@ -269,13 +261,12 @@ export function compileTheme(theme, blobUrl) {
|
|
|
269
261
|
if (c.accent)
|
|
270
262
|
v.push(`--accent-bg: color-mix(in srgb, ${c.accent} 16%, transparent);`);
|
|
271
263
|
if (theme.mode === "light")
|
|
272
|
-
v.push("color-scheme: light;");
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
v.push("--bevel: none; --bevel-glow-red: 0 0 0 1px var(--accent);");
|
|
264
|
+
v.push("color-scheme: light; --shadow: 0 1px 2px rgb(0 0 0 / 0.08); --shadow-lg: 0 12px 32px rgb(0 0 0 / 0.14);");
|
|
265
|
+
// retro options, each off in the default skin
|
|
266
|
+
if (theme.shape.glow)
|
|
267
|
+
v.push("--glow: 0 0 5px color-mix(in srgb, var(--accent) 70%, transparent), 0 0 12px color-mix(in srgb, var(--accent) 40%, transparent);");
|
|
268
|
+
if (theme.shape.bevel)
|
|
269
|
+
v.push("--shadow: 0 0 0 1px rgb(0 0 0 / 0.6), inset 1px 1px 0 0 rgb(255 255 255 / 0.14), inset -1px -1px 0 0 rgb(0 0 0 / 0.6);");
|
|
279
270
|
const out = [];
|
|
280
271
|
for (const s of theme.fonts.stylesheets)
|
|
281
272
|
out.push(`@import url("${s}");`);
|
|
@@ -285,17 +276,15 @@ export function compileTheme(theme, blobUrl) {
|
|
|
285
276
|
out.push(`@font-face { font-family: "${f.family}"; src: url("${blobUrl(f.path)}") format("${fmt}"); font-weight: ${f.weight ?? "400"}; font-style: ${f.style ?? "normal"}; font-display: swap; }`);
|
|
286
277
|
}
|
|
287
278
|
out.push(`:root { ${v.join(" ")} }`);
|
|
288
|
-
if (theme.shape.scanlines
|
|
289
|
-
out.push("body::after {
|
|
290
|
-
if (theme.mode === "light")
|
|
291
|
-
out.push("body { background-image: none; } .code span[style] { filter: none; }");
|
|
279
|
+
if (theme.shape.scanlines)
|
|
280
|
+
out.push("body::after { content: ''; position: fixed; inset: 0; z-index: 9999; pointer-events: none; background: repeating-linear-gradient(to bottom, transparent 0, transparent 2px, rgb(0 0 0 / 0.1) 2px, rgb(0 0 0 / 0.1) 3px); mix-blend-mode: multiply; }");
|
|
292
281
|
if (theme.css)
|
|
293
282
|
out.push(theme.css);
|
|
294
283
|
return {
|
|
295
284
|
name: theme.name,
|
|
296
285
|
...(theme.source ? { source: theme.source } : {}),
|
|
297
286
|
css: out.join("\n"),
|
|
298
|
-
shiki: shikiTheme(name, theme.code, theme.mode, c.code ?? (theme.mode === "light" ? "#ffffff" :
|
|
287
|
+
shiki: shikiTheme(name, theme.code, theme.mode, c.code ?? (theme.mode === "light" ? "#ffffff" : DEFAULT_CODE_BG)),
|
|
299
288
|
};
|
|
300
289
|
}
|
|
301
290
|
//# sourceMappingURL=theme.js.map
|
package/dist/theme.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme.js","sourceRoot":"","sources":["../src/theme.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"theme.js","sourceRoot":"","sources":["../src/theme.ts"],"names":[],"mappings":"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"}
|
package/dist/ui/app.css
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
/* thurview
|
|
2
|
-
|
|
1
|
+
/* thurview default skin: neutral dark, one calm blue accent, quiet chrome.
|
|
2
|
+
Bars, buttons and panels stay out of the way; body copy and code carry the page. */
|
|
3
3
|
|
|
4
4
|
@font-face {
|
|
5
5
|
font-family: Inter;
|
|
@@ -15,62 +15,37 @@
|
|
|
15
15
|
font-display: swap;
|
|
16
16
|
src: url("/assets/fonts/jetbrains-mono-400.woff2") format("woff2");
|
|
17
17
|
}
|
|
18
|
-
@font-face {
|
|
19
|
-
font-family: "Press Start 2P";
|
|
20
|
-
font-style: normal;
|
|
21
|
-
font-weight: 400;
|
|
22
|
-
font-display: swap;
|
|
23
|
-
src: url("/assets/fonts/press-start-2p-400.woff2") format("woff2");
|
|
24
|
-
}
|
|
25
18
|
|
|
26
19
|
:root {
|
|
27
20
|
color-scheme: dark;
|
|
28
|
-
--bg: #
|
|
29
|
-
--bg2: #
|
|
30
|
-
--bg3: #
|
|
31
|
-
--bg-code: #
|
|
32
|
-
--
|
|
33
|
-
--
|
|
34
|
-
--
|
|
35
|
-
--
|
|
36
|
-
--
|
|
37
|
-
--
|
|
38
|
-
--
|
|
39
|
-
--
|
|
40
|
-
--
|
|
41
|
-
--
|
|
42
|
-
--
|
|
43
|
-
--
|
|
44
|
-
--
|
|
45
|
-
--
|
|
46
|
-
--
|
|
47
|
-
--
|
|
48
|
-
|
|
49
|
-
--
|
|
50
|
-
--
|
|
51
|
-
--del: var(--red);
|
|
52
|
-
--glow-red: 0 0 5px rgb(255 92 84 / 0.7), 0 0 12px rgb(255 59 48 / 0.4);
|
|
53
|
-
--glow-green: 0 0 5px rgb(110 255 110 / 0.7), 0 0 12px rgb(110 255 110 / 0.4);
|
|
54
|
-
--bevel-light: rgb(255 255 255 / 0.14);
|
|
55
|
-
--bevel-dark: rgb(0 0 0 / 0.62);
|
|
56
|
-
--bevel-frame: #07060a;
|
|
57
|
-
--bevel:
|
|
58
|
-
0 0 0 2px var(--bevel-frame), inset 2px 2px 0 0 var(--bevel-light),
|
|
59
|
-
inset -2px -2px 0 0 var(--bevel-dark);
|
|
60
|
-
--bevel-glow-red:
|
|
61
|
-
0 0 0 2px #07060a, 0 0 12px rgb(232 24 11 / 0.5), inset 2px 2px 0 0 var(--bevel-light),
|
|
62
|
-
inset -2px -2px 0 0 var(--bevel-dark);
|
|
63
|
-
--scanline: rgb(0 0 0 / 0.1);
|
|
64
|
-
--add-bg: rgb(110 255 110 / 0.09);
|
|
65
|
-
--del-bg: rgb(255 59 48 / 0.12);
|
|
66
|
-
--sel: rgb(255 182 39 / 0.14);
|
|
67
|
-
--accent-bg: rgb(255 92 84 / 0.14);
|
|
68
|
-
--font-display: "Press Start 2P", "JetBrains Mono", monospace;
|
|
21
|
+
--bg: #0f1114;
|
|
22
|
+
--bg2: #161920;
|
|
23
|
+
--bg3: #1e222a;
|
|
24
|
+
--bg-code: #0b0d10;
|
|
25
|
+
--fg: #e6e8eb;
|
|
26
|
+
--fg2: #a9afb8;
|
|
27
|
+
--muted: #737a85;
|
|
28
|
+
--line: #272c35;
|
|
29
|
+
--line2: #1e232b;
|
|
30
|
+
--accent: #6ea8fe;
|
|
31
|
+
--link: var(--accent);
|
|
32
|
+
--ok: #4cc38a;
|
|
33
|
+
--warn: #e5b454;
|
|
34
|
+
--del: #f06a6a;
|
|
35
|
+
--add-bg: rgb(76 195 138 / 0.1);
|
|
36
|
+
--del-bg: rgb(240 106 106 / 0.12);
|
|
37
|
+
--sel: rgb(229 180 84 / 0.14);
|
|
38
|
+
--accent-bg: rgb(110 168 254 / 0.14);
|
|
39
|
+
--shadow: 0 1px 2px rgb(0 0 0 / 0.3);
|
|
40
|
+
--shadow-lg: 0 12px 32px rgb(0 0 0 / 0.45);
|
|
41
|
+
/* text glow on the brand, headings and the active tab; none unless a theme opts in */
|
|
42
|
+
--glow: none;
|
|
43
|
+
--font-display: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
|
|
69
44
|
--font-mono: "JetBrains Mono", "Fira Code", "Cascadia Code", monospace;
|
|
70
45
|
--font-body: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
|
|
71
|
-
--transition:
|
|
72
|
-
--radius:
|
|
73
|
-
--heading-transform:
|
|
46
|
+
--transition: 150ms ease;
|
|
47
|
+
--radius: 6px;
|
|
48
|
+
--heading-transform: none;
|
|
74
49
|
}
|
|
75
50
|
* {
|
|
76
51
|
box-sizing: border-box;
|
|
@@ -81,99 +56,74 @@ body {
|
|
|
81
56
|
height: 100%;
|
|
82
57
|
}
|
|
83
58
|
body {
|
|
84
|
-
background: var(--bg)
|
|
85
|
-
fixed;
|
|
59
|
+
background: var(--bg);
|
|
86
60
|
color: var(--fg);
|
|
87
61
|
font: 14px/1.55 var(--font-body);
|
|
88
62
|
-webkit-font-smoothing: antialiased;
|
|
89
63
|
overflow: hidden;
|
|
90
64
|
}
|
|
91
|
-
/* CRT scanlines, click-through, subtle enough for code */
|
|
92
|
-
body::after {
|
|
93
|
-
content: "";
|
|
94
|
-
position: fixed;
|
|
95
|
-
inset: 0;
|
|
96
|
-
z-index: 9999;
|
|
97
|
-
pointer-events: none;
|
|
98
|
-
background: repeating-linear-gradient(
|
|
99
|
-
to bottom,
|
|
100
|
-
transparent 0,
|
|
101
|
-
transparent 2px,
|
|
102
|
-
var(--scanline) 2px,
|
|
103
|
-
var(--scanline) 3px
|
|
104
|
-
);
|
|
105
|
-
mix-blend-mode: multiply;
|
|
106
|
-
}
|
|
107
65
|
a {
|
|
108
|
-
color: var(--
|
|
66
|
+
color: var(--link);
|
|
109
67
|
text-decoration: none;
|
|
110
|
-
transition:
|
|
111
|
-
color var(--transition),
|
|
112
|
-
text-shadow var(--transition);
|
|
68
|
+
transition: color var(--transition);
|
|
113
69
|
}
|
|
114
70
|
a:hover {
|
|
115
|
-
text-
|
|
71
|
+
text-decoration: underline;
|
|
116
72
|
}
|
|
117
73
|
::selection {
|
|
118
|
-
background: rgb(
|
|
74
|
+
background: rgb(110 168 254 / 0.3);
|
|
119
75
|
}
|
|
120
76
|
|
|
121
77
|
button {
|
|
122
78
|
white-space: nowrap;
|
|
123
79
|
font-family: var(--font-display);
|
|
124
|
-
font-size:
|
|
125
|
-
|
|
126
|
-
letter-spacing: 0.04em;
|
|
80
|
+
font-size: 12.5px;
|
|
81
|
+
font-weight: 500;
|
|
127
82
|
line-height: 1;
|
|
128
|
-
color: var(--
|
|
129
|
-
background: var(--
|
|
130
|
-
border:
|
|
83
|
+
color: var(--fg);
|
|
84
|
+
background: var(--bg3);
|
|
85
|
+
border: 1px solid var(--line);
|
|
131
86
|
border-radius: var(--radius);
|
|
132
|
-
padding:
|
|
87
|
+
padding: 7px 12px;
|
|
133
88
|
cursor: pointer;
|
|
134
|
-
box-shadow: var(--
|
|
135
|
-
transition:
|
|
89
|
+
box-shadow: var(--shadow);
|
|
90
|
+
transition:
|
|
91
|
+
background var(--transition),
|
|
92
|
+
border-color var(--transition),
|
|
93
|
+
color var(--transition);
|
|
136
94
|
}
|
|
137
95
|
button:hover {
|
|
138
|
-
color: var(--
|
|
139
|
-
border-color: var(--fg2);
|
|
140
|
-
text-shadow: var(--glow-red);
|
|
141
|
-
transform: translateY(-1px);
|
|
96
|
+
border-color: var(--muted);
|
|
142
97
|
}
|
|
143
98
|
button.primary {
|
|
144
|
-
background: var(--
|
|
145
|
-
color: #
|
|
146
|
-
border-color: var(--
|
|
147
|
-
box-shadow: var(--bevel-glow-red);
|
|
99
|
+
background: var(--accent);
|
|
100
|
+
color: #0b1220;
|
|
101
|
+
border-color: var(--accent);
|
|
148
102
|
}
|
|
149
103
|
button.primary:hover {
|
|
150
|
-
|
|
104
|
+
filter: brightness(1.08);
|
|
151
105
|
}
|
|
152
106
|
button.ok {
|
|
153
|
-
background: var(--
|
|
154
|
-
color: #
|
|
155
|
-
border-color: var(--
|
|
156
|
-
box-shadow:
|
|
157
|
-
var(--bevel),
|
|
158
|
-
0 0 10px rgb(110 255 110 / 0.5);
|
|
159
|
-
text-shadow: none;
|
|
107
|
+
background: var(--ok);
|
|
108
|
+
color: #06140d;
|
|
109
|
+
border-color: var(--ok);
|
|
160
110
|
}
|
|
161
111
|
button.ok:hover {
|
|
162
|
-
|
|
163
|
-
color: #0a2e0a;
|
|
112
|
+
filter: brightness(1.08);
|
|
164
113
|
}
|
|
165
114
|
button.ghost {
|
|
166
115
|
background: transparent;
|
|
167
116
|
border-color: transparent;
|
|
168
117
|
box-shadow: none;
|
|
118
|
+
color: var(--fg2);
|
|
169
119
|
}
|
|
170
120
|
button.ghost:hover {
|
|
171
121
|
background: var(--bg3);
|
|
172
|
-
|
|
122
|
+
color: var(--fg);
|
|
173
123
|
}
|
|
174
124
|
button.small {
|
|
175
125
|
padding: 5px 8px;
|
|
176
|
-
font-size:
|
|
126
|
+
font-size: 12px;
|
|
177
127
|
}
|
|
178
128
|
textarea,
|
|
179
129
|
input[type="text"],
|
|
@@ -181,21 +131,20 @@ select {
|
|
|
181
131
|
font: 13px/1.5 var(--font-mono);
|
|
182
132
|
color: var(--fg);
|
|
183
133
|
background: var(--bg-code);
|
|
184
|
-
border: 1px solid var(--
|
|
134
|
+
border: 1px solid var(--line);
|
|
185
135
|
border-radius: var(--radius);
|
|
186
136
|
padding: 6px 8px;
|
|
187
137
|
width: 100%;
|
|
188
|
-
box-shadow: var(--bevel);
|
|
189
138
|
}
|
|
190
139
|
textarea:focus,
|
|
191
140
|
input:focus {
|
|
192
141
|
outline: none;
|
|
193
142
|
border-color: var(--accent);
|
|
143
|
+
box-shadow: 0 0 0 3px var(--accent-bg);
|
|
194
144
|
}
|
|
195
145
|
select {
|
|
196
146
|
width: auto;
|
|
197
147
|
padding: 3px 6px;
|
|
198
|
-
box-shadow: none;
|
|
199
148
|
}
|
|
200
149
|
code,
|
|
201
150
|
pre,
|
|
@@ -205,8 +154,9 @@ pre,
|
|
|
205
154
|
font-size: 12.5px;
|
|
206
155
|
}
|
|
207
156
|
code {
|
|
208
|
-
background: var(--
|
|
209
|
-
color: var(--
|
|
157
|
+
background: var(--bg3);
|
|
158
|
+
color: var(--fg);
|
|
159
|
+
border-radius: 4px;
|
|
210
160
|
padding: 0.1em 0.4em;
|
|
211
161
|
}
|
|
212
162
|
pre code {
|
|
@@ -216,8 +166,8 @@ pre code {
|
|
|
216
166
|
}
|
|
217
167
|
pre {
|
|
218
168
|
background: var(--bg-code);
|
|
219
|
-
border: 1px solid var(--
|
|
220
|
-
|
|
169
|
+
border: 1px solid var(--line);
|
|
170
|
+
border-radius: var(--radius);
|
|
221
171
|
padding: 10px 12px;
|
|
222
172
|
overflow-x: auto;
|
|
223
173
|
}
|
|
@@ -235,16 +185,16 @@ pre {
|
|
|
235
185
|
white-space: nowrap;
|
|
236
186
|
}
|
|
237
187
|
.badge.ok {
|
|
238
|
-
color: var(--
|
|
239
|
-
border-color: var(--
|
|
188
|
+
color: var(--ok);
|
|
189
|
+
border-color: var(--ok);
|
|
240
190
|
}
|
|
241
191
|
.badge.warn {
|
|
242
|
-
color: var(--
|
|
243
|
-
border-color: var(--
|
|
192
|
+
color: var(--warn);
|
|
193
|
+
border-color: var(--warn);
|
|
244
194
|
}
|
|
245
195
|
.badge.del {
|
|
246
|
-
color: var(--
|
|
247
|
-
border-color: var(--
|
|
196
|
+
color: var(--del);
|
|
197
|
+
border-color: var(--del);
|
|
248
198
|
}
|
|
249
199
|
.badge.accent {
|
|
250
200
|
color: var(--accent);
|
|
@@ -257,6 +207,7 @@ kbd {
|
|
|
257
207
|
font-family: var(--font-mono);
|
|
258
208
|
font-size: 11px;
|
|
259
209
|
border: 1px solid var(--line);
|
|
210
|
+
border-radius: 4px;
|
|
260
211
|
padding: 0 4px;
|
|
261
212
|
background: var(--bg2);
|
|
262
213
|
}
|
|
@@ -267,13 +218,12 @@ kbd {
|
|
|
267
218
|
flex-direction: column;
|
|
268
219
|
height: 100dvh;
|
|
269
220
|
}
|
|
270
|
-
/*
|
|
221
|
+
/* Top bar: an identity row that truncates over an actions row that never does. */
|
|
271
222
|
.topbar {
|
|
272
223
|
display: flex;
|
|
273
224
|
flex-direction: column;
|
|
274
|
-
background: var(--
|
|
275
|
-
border-bottom:
|
|
276
|
-
box-shadow: inset 0 -1px 0 0 rgb(232 24 11 / 0.45);
|
|
225
|
+
background: var(--bg2);
|
|
226
|
+
border-bottom: 1px solid var(--line);
|
|
277
227
|
}
|
|
278
228
|
.bar-row {
|
|
279
229
|
display: flex;
|
|
@@ -303,18 +253,17 @@ kbd {
|
|
|
303
253
|
}
|
|
304
254
|
.topbar .brand {
|
|
305
255
|
font-family: var(--font-display);
|
|
306
|
-
font-size:
|
|
256
|
+
font-size: 15px;
|
|
257
|
+
font-weight: 600;
|
|
307
258
|
text-transform: var(--heading-transform);
|
|
308
259
|
color: var(--accent);
|
|
309
|
-
text-shadow: var(--glow
|
|
310
|
-
letter-spacing: 0.
|
|
260
|
+
text-shadow: var(--glow);
|
|
261
|
+
letter-spacing: -0.01em;
|
|
311
262
|
white-space: nowrap;
|
|
312
263
|
flex: none;
|
|
313
264
|
}
|
|
314
265
|
.topbar .brand:hover {
|
|
315
|
-
text-
|
|
316
|
-
var(--glow-red),
|
|
317
|
-
0 0 20px rgb(255 59 48 / 0.6);
|
|
266
|
+
text-decoration: none;
|
|
318
267
|
}
|
|
319
268
|
/* Grows into the space it has, truncating only when it must; full text in the tooltip. */
|
|
320
269
|
.topbar .title {
|
|
@@ -337,37 +286,16 @@ kbd {
|
|
|
337
286
|
box-shadow: none;
|
|
338
287
|
padding: 8px 10px;
|
|
339
288
|
color: var(--fg2);
|
|
340
|
-
font-size:
|
|
341
|
-
}
|
|
342
|
-
.tabs button::before {
|
|
343
|
-
content: "\25B6";
|
|
344
|
-
display: inline-block;
|
|
345
|
-
width: 0;
|
|
346
|
-
margin-right: 0;
|
|
347
|
-
overflow: hidden;
|
|
348
|
-
opacity: 0;
|
|
349
|
-
color: var(--doom-bright);
|
|
350
|
-
font-size: 0.7em;
|
|
351
|
-
transition:
|
|
352
|
-
width var(--transition),
|
|
353
|
-
margin-right var(--transition),
|
|
354
|
-
opacity var(--transition);
|
|
289
|
+
font-size: 13px;
|
|
355
290
|
}
|
|
356
|
-
.tabs button:hover
|
|
357
|
-
.tabs button.active {
|
|
291
|
+
.tabs button:hover {
|
|
358
292
|
color: var(--fg);
|
|
359
|
-
|
|
293
|
+
background: var(--bg3);
|
|
360
294
|
}
|
|
361
295
|
.tabs button.active {
|
|
362
296
|
color: var(--accent);
|
|
363
|
-
|
|
364
|
-
|
|
365
|
-
.tabs button:hover::before,
|
|
366
|
-
.tabs button.active::before {
|
|
367
|
-
width: 0.9em;
|
|
368
|
-
margin-right: 0.4em;
|
|
369
|
-
opacity: 1;
|
|
370
|
-
text-shadow: var(--glow-red);
|
|
297
|
+
background: var(--accent-bg);
|
|
298
|
+
text-shadow: var(--glow);
|
|
371
299
|
}
|
|
372
300
|
.topbar .spacer {
|
|
373
301
|
flex: 1;
|
|
@@ -386,12 +314,11 @@ kbd {
|
|
|
386
314
|
width: var(--side-w, 520px);
|
|
387
315
|
min-width: 320px;
|
|
388
316
|
max-width: 70vw;
|
|
389
|
-
border-left:
|
|
317
|
+
border-left: 1px solid var(--line);
|
|
390
318
|
background: var(--bg2);
|
|
391
319
|
display: flex;
|
|
392
320
|
flex-direction: column;
|
|
393
321
|
min-height: 0;
|
|
394
|
-
box-shadow: inset 2px 0 0 0 var(--bevel-light);
|
|
395
322
|
}
|
|
396
323
|
.side.hidden {
|
|
397
324
|
display: none;
|
|
@@ -403,15 +330,14 @@ kbd {
|
|
|
403
330
|
}
|
|
404
331
|
.resizer:hover {
|
|
405
332
|
background: var(--accent);
|
|
406
|
-
box-shadow: var(--glow-red);
|
|
407
333
|
}
|
|
408
334
|
.side-head {
|
|
409
335
|
display: flex;
|
|
410
336
|
align-items: center;
|
|
411
337
|
gap: 8px;
|
|
412
338
|
padding: 8px 12px;
|
|
413
|
-
border-bottom: 1px solid var(--
|
|
414
|
-
background: var(--
|
|
339
|
+
border-bottom: 1px solid var(--line);
|
|
340
|
+
background: var(--bg2);
|
|
415
341
|
}
|
|
416
342
|
.side-head .path {
|
|
417
343
|
font-family: var(--font-mono);
|
|
@@ -425,7 +351,7 @@ kbd {
|
|
|
425
351
|
cursor: pointer;
|
|
426
352
|
}
|
|
427
353
|
.side-head .path:hover {
|
|
428
|
-
color: var(--
|
|
354
|
+
color: var(--link);
|
|
429
355
|
}
|
|
430
356
|
.side-body {
|
|
431
357
|
flex: 1;
|
|
@@ -463,38 +389,38 @@ kbd {
|
|
|
463
389
|
color: var(--fg);
|
|
464
390
|
border-left-color: var(--accent);
|
|
465
391
|
background: var(--bg2);
|
|
466
|
-
text-
|
|
392
|
+
text-decoration: none;
|
|
467
393
|
}
|
|
468
394
|
.doc {
|
|
469
395
|
max-width: 780px;
|
|
470
396
|
}
|
|
471
397
|
.doc h1 {
|
|
472
398
|
font-family: var(--font-display);
|
|
473
|
-
font-weight:
|
|
399
|
+
font-weight: 600;
|
|
474
400
|
text-transform: var(--heading-transform);
|
|
475
|
-
letter-spacing: 0.02em;
|
|
476
|
-
color: var(--
|
|
477
|
-
text-shadow: var(--glow
|
|
478
|
-
font-size: clamp(
|
|
479
|
-
line-height: 1.
|
|
401
|
+
letter-spacing: -0.02em;
|
|
402
|
+
color: var(--fg);
|
|
403
|
+
text-shadow: var(--glow);
|
|
404
|
+
font-size: clamp(1.4rem, 2.4vw, 1.8rem);
|
|
405
|
+
line-height: 1.3;
|
|
480
406
|
margin: 0 0 14px;
|
|
481
407
|
}
|
|
482
408
|
.doc h2 {
|
|
483
409
|
font-family: var(--font-display);
|
|
484
|
-
font-weight:
|
|
410
|
+
font-weight: 600;
|
|
485
411
|
text-transform: var(--heading-transform);
|
|
486
|
-
letter-spacing: 0.
|
|
487
|
-
color: var(--
|
|
488
|
-
text-shadow: var(--glow
|
|
489
|
-
font-size:
|
|
490
|
-
line-height: 1.
|
|
412
|
+
letter-spacing: -0.01em;
|
|
413
|
+
color: var(--fg);
|
|
414
|
+
text-shadow: var(--glow);
|
|
415
|
+
font-size: 1.2rem;
|
|
416
|
+
line-height: 1.4;
|
|
491
417
|
margin: 36px 0 10px;
|
|
492
418
|
padding-top: 16px;
|
|
493
419
|
border-top: 1px solid var(--line);
|
|
494
420
|
}
|
|
495
421
|
.doc h3 {
|
|
496
|
-
font-family: var(--font-
|
|
497
|
-
font-weight:
|
|
422
|
+
font-family: var(--font-display);
|
|
423
|
+
font-weight: 600;
|
|
498
424
|
font-size: 15px;
|
|
499
425
|
margin: 22px 0 6px;
|
|
500
426
|
color: var(--fg);
|
|
@@ -547,12 +473,11 @@ kbd {
|
|
|
547
473
|
padding: 0;
|
|
548
474
|
font-family: var(--font-mono);
|
|
549
475
|
font-size: 13px;
|
|
550
|
-
box-shadow: var(--bevel);
|
|
551
476
|
}
|
|
552
477
|
.block-actions button.count {
|
|
553
|
-
background: var(--
|
|
554
|
-
color: #
|
|
555
|
-
border-color: var(--
|
|
478
|
+
background: var(--accent);
|
|
479
|
+
color: #0b1220;
|
|
480
|
+
border-color: var(--accent);
|
|
556
481
|
font-size: 11px;
|
|
557
482
|
}
|
|
558
483
|
.section-collapsed > .block:not(.heading) {
|
|
@@ -565,21 +490,18 @@ kbd {
|
|
|
565
490
|
color: var(--muted);
|
|
566
491
|
cursor: pointer;
|
|
567
492
|
user-select: none;
|
|
568
|
-
text-shadow: none;
|
|
569
|
-
text-transform: none;
|
|
570
|
-
letter-spacing: 0;
|
|
571
493
|
}
|
|
572
494
|
.heading-toggle:hover {
|
|
573
|
-
color: var(--
|
|
495
|
+
color: var(--link);
|
|
574
496
|
}
|
|
575
497
|
.anchor-link {
|
|
576
|
-
color: var(--
|
|
577
|
-
border-bottom: 1px dashed var(--
|
|
498
|
+
color: var(--link);
|
|
499
|
+
border-bottom: 1px dashed var(--link);
|
|
578
500
|
}
|
|
579
501
|
.anchor-link:hover,
|
|
580
502
|
.anchor-link.active {
|
|
581
|
-
background:
|
|
582
|
-
text-
|
|
503
|
+
background: var(--accent-bg);
|
|
504
|
+
text-decoration: none;
|
|
583
505
|
}
|
|
584
506
|
.thread-pins {
|
|
585
507
|
margin: 6px 0 14px;
|
|
@@ -591,8 +513,7 @@ kbd {
|
|
|
591
513
|
border-radius: var(--radius);
|
|
592
514
|
font-size: 12.5px;
|
|
593
515
|
background: var(--bg2);
|
|
594
|
-
border: 1px solid var(--
|
|
595
|
-
box-shadow: var(--bevel);
|
|
516
|
+
border: 1px solid var(--line);
|
|
596
517
|
padding: 6px 10px;
|
|
597
518
|
cursor: pointer;
|
|
598
519
|
display: flex;
|
|
@@ -600,13 +521,12 @@ kbd {
|
|
|
600
521
|
align-items: baseline;
|
|
601
522
|
}
|
|
602
523
|
.thread-pin:hover {
|
|
603
|
-
border-color: var(--
|
|
604
|
-
box-shadow: var(--bevel-glow-red);
|
|
524
|
+
border-color: var(--accent);
|
|
605
525
|
}
|
|
606
526
|
.thread-pin .who {
|
|
607
527
|
font-family: var(--font-mono);
|
|
608
528
|
font-weight: 700;
|
|
609
|
-
color: var(--
|
|
529
|
+
color: var(--fg);
|
|
610
530
|
}
|
|
611
531
|
.thread-pin.resolved {
|
|
612
532
|
opacity: 0.55;
|
|
@@ -616,10 +536,8 @@ kbd {
|
|
|
616
536
|
position: absolute;
|
|
617
537
|
z-index: 20;
|
|
618
538
|
background: var(--bg2);
|
|
619
|
-
border: 1px solid var(--
|
|
620
|
-
box-shadow:
|
|
621
|
-
var(--bevel),
|
|
622
|
-
0 8px 30px rgb(0 0 0 / 0.6);
|
|
539
|
+
border: 1px solid var(--line);
|
|
540
|
+
box-shadow: var(--shadow-lg);
|
|
623
541
|
width: 400px;
|
|
624
542
|
padding: 10px;
|
|
625
543
|
}
|
|
@@ -651,10 +569,8 @@ kbd {
|
|
|
651
569
|
/* code surfaces */
|
|
652
570
|
.code-frame {
|
|
653
571
|
border-radius: var(--radius);
|
|
654
|
-
border: 1px solid var(--
|
|
655
|
-
box-shadow:
|
|
656
|
-
var(--bevel),
|
|
657
|
-
0 8px 30px rgb(0 0 0 / 0.4);
|
|
572
|
+
border: 1px solid var(--line);
|
|
573
|
+
box-shadow: var(--shadow-lg);
|
|
658
574
|
margin: 14px 0;
|
|
659
575
|
overflow: hidden;
|
|
660
576
|
background: var(--bg-code);
|
|
@@ -679,7 +595,7 @@ kbd {
|
|
|
679
595
|
cursor: pointer;
|
|
680
596
|
}
|
|
681
597
|
.code-frame .frame-head .path:hover {
|
|
682
|
-
color: var(--
|
|
598
|
+
color: var(--link);
|
|
683
599
|
}
|
|
684
600
|
.code-frame .frame-head .title {
|
|
685
601
|
font-family: var(--font-mono);
|
|
@@ -712,7 +628,7 @@ kbd {
|
|
|
712
628
|
border-right: 1px solid var(--line2);
|
|
713
629
|
}
|
|
714
630
|
.code td.ln:hover {
|
|
715
|
-
color: var(--
|
|
631
|
+
color: var(--link);
|
|
716
632
|
}
|
|
717
633
|
.code tr:hover td.ln::after,
|
|
718
634
|
.code tr.range-sel td.ln::after {
|
|
@@ -726,13 +642,13 @@ kbd {
|
|
|
726
642
|
text-align: center;
|
|
727
643
|
font-size: 12px;
|
|
728
644
|
font-weight: 700;
|
|
729
|
-
color: #
|
|
730
|
-
background: var(--
|
|
731
|
-
|
|
645
|
+
color: #0b1220;
|
|
646
|
+
background: var(--accent);
|
|
647
|
+
border-radius: 3px;
|
|
732
648
|
}
|
|
733
649
|
.code tr.range-sel {
|
|
734
650
|
background: var(--sel);
|
|
735
|
-
box-shadow: inset 3px 0 0 0 var(--
|
|
651
|
+
box-shadow: inset 3px 0 0 0 var(--accent);
|
|
736
652
|
}
|
|
737
653
|
.file-head .hint {
|
|
738
654
|
font-size: 11px;
|
|
@@ -740,7 +656,7 @@ kbd {
|
|
|
740
656
|
}
|
|
741
657
|
.code tr.hl {
|
|
742
658
|
background: var(--sel);
|
|
743
|
-
box-shadow: inset 3px 0 0 0 var(--
|
|
659
|
+
box-shadow: inset 3px 0 0 0 var(--warn);
|
|
744
660
|
}
|
|
745
661
|
.code tr.add {
|
|
746
662
|
background: var(--add-bg);
|
|
@@ -751,7 +667,6 @@ kbd {
|
|
|
751
667
|
.code tr.commented td.ln {
|
|
752
668
|
color: var(--accent);
|
|
753
669
|
font-weight: 700;
|
|
754
|
-
text-shadow: var(--glow-red);
|
|
755
670
|
}
|
|
756
671
|
.code tr.gap td {
|
|
757
672
|
background: var(--bg2);
|
|
@@ -762,7 +677,7 @@ kbd {
|
|
|
762
677
|
font-family: var(--font-mono);
|
|
763
678
|
}
|
|
764
679
|
.code tr.gap td:hover {
|
|
765
|
-
color: var(--
|
|
680
|
+
color: var(--link);
|
|
766
681
|
}
|
|
767
682
|
.code tr.thread-row td {
|
|
768
683
|
white-space: normal;
|
|
@@ -785,10 +700,8 @@ kbd {
|
|
|
785
700
|
position: absolute;
|
|
786
701
|
z-index: 30;
|
|
787
702
|
background: var(--bg2);
|
|
788
|
-
border: 1px solid var(--
|
|
789
|
-
box-shadow:
|
|
790
|
-
var(--bevel),
|
|
791
|
-
0 8px 30px rgb(0 0 0 / 0.6);
|
|
703
|
+
border: 1px solid var(--line);
|
|
704
|
+
box-shadow: var(--shadow-lg);
|
|
792
705
|
min-width: 260px;
|
|
793
706
|
max-width: 480px;
|
|
794
707
|
font-size: 12.5px;
|
|
@@ -807,7 +720,7 @@ kbd {
|
|
|
807
720
|
}
|
|
808
721
|
.def-popover .item:hover {
|
|
809
722
|
background: var(--bg3);
|
|
810
|
-
color: var(--
|
|
723
|
+
color: var(--link);
|
|
811
724
|
}
|
|
812
725
|
.def-popover .kind {
|
|
813
726
|
color: var(--muted);
|
|
@@ -826,7 +739,7 @@ kbd {
|
|
|
826
739
|
.file-list {
|
|
827
740
|
width: 300px;
|
|
828
741
|
min-width: 200px;
|
|
829
|
-
border-right: 1px solid var(--
|
|
742
|
+
border-right: 1px solid var(--line);
|
|
830
743
|
overflow: auto;
|
|
831
744
|
background: var(--bg2);
|
|
832
745
|
font-size: 12.5px;
|
|
@@ -862,10 +775,10 @@ kbd {
|
|
|
862
775
|
white-space: nowrap;
|
|
863
776
|
}
|
|
864
777
|
.stat .a {
|
|
865
|
-
color: var(--
|
|
778
|
+
color: var(--ok);
|
|
866
779
|
}
|
|
867
780
|
.stat .d {
|
|
868
|
-
color: var(--
|
|
781
|
+
color: var(--del);
|
|
869
782
|
}
|
|
870
783
|
.file-view {
|
|
871
784
|
flex: 1;
|
|
@@ -880,8 +793,8 @@ kbd {
|
|
|
880
793
|
align-items: center;
|
|
881
794
|
gap: 12px;
|
|
882
795
|
padding: 8px 14px;
|
|
883
|
-
background: var(--
|
|
884
|
-
border-bottom: 1px solid var(--
|
|
796
|
+
background: var(--bg2);
|
|
797
|
+
border-bottom: 1px solid var(--line);
|
|
885
798
|
font-size: 12px;
|
|
886
799
|
}
|
|
887
800
|
.file-view .file-head .path {
|
|
@@ -894,7 +807,7 @@ kbd {
|
|
|
894
807
|
grid-template-columns: 1fr 1fr;
|
|
895
808
|
}
|
|
896
809
|
.split .code {
|
|
897
|
-
border-right: 1px solid var(--
|
|
810
|
+
border-right: 1px solid var(--line);
|
|
898
811
|
}
|
|
899
812
|
.code td.empty {
|
|
900
813
|
background: var(--bg2);
|
|
@@ -908,8 +821,7 @@ kbd {
|
|
|
908
821
|
}
|
|
909
822
|
.commit {
|
|
910
823
|
border-radius: var(--radius);
|
|
911
|
-
border: 1px solid var(--
|
|
912
|
-
box-shadow: var(--bevel);
|
|
824
|
+
border: 1px solid var(--line);
|
|
913
825
|
background: var(--bg2);
|
|
914
826
|
padding: 12px 16px;
|
|
915
827
|
margin-bottom: 12px;
|
|
@@ -925,14 +837,13 @@ kbd {
|
|
|
925
837
|
}
|
|
926
838
|
.commit .files span {
|
|
927
839
|
cursor: pointer;
|
|
928
|
-
color: var(--
|
|
840
|
+
color: var(--link);
|
|
929
841
|
margin-right: 12px;
|
|
930
842
|
}
|
|
931
843
|
.commit pre {
|
|
932
844
|
white-space: pre-wrap;
|
|
933
845
|
margin: 8px 0 0;
|
|
934
846
|
font-size: 12.5px;
|
|
935
|
-
box-shadow: none;
|
|
936
847
|
}
|
|
937
848
|
|
|
938
849
|
/* Map */
|
|
@@ -948,7 +859,7 @@ kbd {
|
|
|
948
859
|
}
|
|
949
860
|
.map-side {
|
|
950
861
|
width: 340px;
|
|
951
|
-
border-left: 1px solid var(--
|
|
862
|
+
border-left: 1px solid var(--line);
|
|
952
863
|
background: var(--bg2);
|
|
953
864
|
overflow: auto;
|
|
954
865
|
padding: 14px 16px;
|
|
@@ -964,7 +875,7 @@ kbd {
|
|
|
964
875
|
}
|
|
965
876
|
.crumbs span {
|
|
966
877
|
cursor: pointer;
|
|
967
|
-
color: var(--
|
|
878
|
+
color: var(--link);
|
|
968
879
|
}
|
|
969
880
|
.crumbs span:last-child {
|
|
970
881
|
color: var(--fg);
|
|
@@ -978,8 +889,7 @@ kbd {
|
|
|
978
889
|
}
|
|
979
890
|
.map-node {
|
|
980
891
|
border-radius: var(--radius);
|
|
981
|
-
border: 1px solid var(--
|
|
982
|
-
box-shadow: var(--bevel);
|
|
892
|
+
border: 1px solid var(--line);
|
|
983
893
|
padding: 12px 14px;
|
|
984
894
|
background: var(--bg2);
|
|
985
895
|
cursor: pointer;
|
|
@@ -989,10 +899,8 @@ kbd {
|
|
|
989
899
|
box-shadow var(--transition);
|
|
990
900
|
}
|
|
991
901
|
.map-node:hover {
|
|
992
|
-
border-color: var(--
|
|
993
|
-
box-shadow:
|
|
994
|
-
var(--bevel-glow-red),
|
|
995
|
-
0 4px 14px rgb(0 0 0 / 0.5);
|
|
902
|
+
border-color: var(--accent);
|
|
903
|
+
box-shadow: 0 4px 14px rgb(0 0 0 / 0.3);
|
|
996
904
|
}
|
|
997
905
|
.map-node.selected {
|
|
998
906
|
outline: 2px solid var(--accent);
|
|
@@ -1020,14 +928,14 @@ kbd {
|
|
|
1020
928
|
margin-top: 8px;
|
|
1021
929
|
}
|
|
1022
930
|
.map-node.added {
|
|
1023
|
-
border-color: var(--
|
|
931
|
+
border-color: var(--ok);
|
|
1024
932
|
}
|
|
1025
933
|
.map-node.removed {
|
|
1026
|
-
border-color: var(--
|
|
934
|
+
border-color: var(--del);
|
|
1027
935
|
opacity: 0.7;
|
|
1028
936
|
}
|
|
1029
937
|
.map-node.changed {
|
|
1030
|
-
border-color: var(--
|
|
938
|
+
border-color: var(--warn);
|
|
1031
939
|
}
|
|
1032
940
|
.map-node .status {
|
|
1033
941
|
position: absolute;
|
|
@@ -1048,21 +956,20 @@ kbd {
|
|
|
1048
956
|
}
|
|
1049
957
|
.map-edges .edge b {
|
|
1050
958
|
cursor: pointer;
|
|
1051
|
-
color: var(--
|
|
959
|
+
color: var(--link);
|
|
1052
960
|
}
|
|
1053
961
|
.map-side .file {
|
|
1054
962
|
font-family: var(--font-mono);
|
|
1055
963
|
font-size: 12px;
|
|
1056
964
|
cursor: pointer;
|
|
1057
|
-
color: var(--
|
|
965
|
+
color: var(--link);
|
|
1058
966
|
display: block;
|
|
1059
967
|
}
|
|
1060
968
|
|
|
1061
969
|
/* Diagrams */
|
|
1062
970
|
.diagram {
|
|
1063
971
|
border-radius: var(--radius);
|
|
1064
|
-
border: 1px solid var(--
|
|
1065
|
-
box-shadow: var(--bevel);
|
|
972
|
+
border: 1px solid var(--line);
|
|
1066
973
|
margin: 16px 0;
|
|
1067
974
|
background: var(--bg2);
|
|
1068
975
|
}
|
|
@@ -1085,7 +992,7 @@ kbd {
|
|
|
1085
992
|
}
|
|
1086
993
|
.seq .actor rect {
|
|
1087
994
|
fill: var(--bg-code);
|
|
1088
|
-
stroke: var(--
|
|
995
|
+
stroke: var(--line);
|
|
1089
996
|
}
|
|
1090
997
|
.seq .life {
|
|
1091
998
|
stroke: var(--line);
|
|
@@ -1096,7 +1003,7 @@ kbd {
|
|
|
1096
1003
|
marker-end: url(#arr);
|
|
1097
1004
|
}
|
|
1098
1005
|
.seq .msg text {
|
|
1099
|
-
fill: var(--
|
|
1006
|
+
fill: var(--link);
|
|
1100
1007
|
cursor: pointer;
|
|
1101
1008
|
}
|
|
1102
1009
|
.seq .msg text:hover {
|
|
@@ -1126,10 +1033,10 @@ kbd {
|
|
|
1126
1033
|
color: var(--muted);
|
|
1127
1034
|
}
|
|
1128
1035
|
.callstack .row.add .sign {
|
|
1129
|
-
color: var(--
|
|
1036
|
+
color: var(--ok);
|
|
1130
1037
|
}
|
|
1131
1038
|
.callstack .row.del .sign {
|
|
1132
|
-
color: var(--
|
|
1039
|
+
color: var(--del);
|
|
1133
1040
|
}
|
|
1134
1041
|
.callstack .calls {
|
|
1135
1042
|
color: var(--muted);
|
|
@@ -1145,7 +1052,7 @@ kbd {
|
|
|
1145
1052
|
.dblens .uc-tabs button.active {
|
|
1146
1053
|
color: var(--accent);
|
|
1147
1054
|
border-color: var(--accent);
|
|
1148
|
-
|
|
1055
|
+
background: var(--accent-bg);
|
|
1149
1056
|
}
|
|
1150
1057
|
.dblens .body {
|
|
1151
1058
|
display: grid;
|
|
@@ -1160,8 +1067,7 @@ kbd {
|
|
|
1160
1067
|
}
|
|
1161
1068
|
.dblens .actor {
|
|
1162
1069
|
border-radius: var(--radius);
|
|
1163
|
-
border: 1px solid var(--
|
|
1164
|
-
box-shadow: var(--bevel);
|
|
1070
|
+
border: 1px solid var(--line);
|
|
1165
1071
|
padding: 7px 10px;
|
|
1166
1072
|
background: var(--bg-code);
|
|
1167
1073
|
text-align: center;
|
|
@@ -1171,7 +1077,7 @@ kbd {
|
|
|
1171
1077
|
}
|
|
1172
1078
|
.dblens .store {
|
|
1173
1079
|
border-radius: var(--radius);
|
|
1174
|
-
border: 1px solid var(--
|
|
1080
|
+
border: 1px solid var(--line);
|
|
1175
1081
|
background: var(--bg-code);
|
|
1176
1082
|
margin-bottom: 10px;
|
|
1177
1083
|
}
|
|
@@ -1193,7 +1099,7 @@ kbd {
|
|
|
1193
1099
|
font-family: var(--font-mono);
|
|
1194
1100
|
font-size: 12.5px;
|
|
1195
1101
|
font-weight: 700;
|
|
1196
|
-
color: var(--
|
|
1102
|
+
color: var(--fg);
|
|
1197
1103
|
}
|
|
1198
1104
|
.dblens .table .cols {
|
|
1199
1105
|
font-family: var(--font-mono);
|
|
@@ -1230,10 +1136,10 @@ kbd {
|
|
|
1230
1136
|
color: var(--muted);
|
|
1231
1137
|
}
|
|
1232
1138
|
.dblens .op.read .dir {
|
|
1233
|
-
color: var(--
|
|
1139
|
+
color: var(--link);
|
|
1234
1140
|
}
|
|
1235
1141
|
.dblens .op.write .dir {
|
|
1236
|
-
color: var(--
|
|
1142
|
+
color: var(--warn);
|
|
1237
1143
|
}
|
|
1238
1144
|
|
|
1239
1145
|
/* threads panel */
|
|
@@ -1245,13 +1151,12 @@ kbd {
|
|
|
1245
1151
|
}
|
|
1246
1152
|
.thread {
|
|
1247
1153
|
border-radius: var(--radius);
|
|
1248
|
-
border: 1px solid var(--
|
|
1249
|
-
box-shadow: var(--bevel);
|
|
1154
|
+
border: 1px solid var(--line);
|
|
1250
1155
|
background: var(--bg);
|
|
1251
1156
|
}
|
|
1252
1157
|
.thread.active {
|
|
1253
|
-
border-color: var(--
|
|
1254
|
-
box-shadow: var(--
|
|
1158
|
+
border-color: var(--accent);
|
|
1159
|
+
box-shadow: 0 0 0 3px var(--accent-bg);
|
|
1255
1160
|
}
|
|
1256
1161
|
.thread .thead {
|
|
1257
1162
|
display: flex;
|
|
@@ -1264,7 +1169,7 @@ kbd {
|
|
|
1264
1169
|
}
|
|
1265
1170
|
.thread .target {
|
|
1266
1171
|
font-family: var(--font-mono);
|
|
1267
|
-
color: var(--
|
|
1172
|
+
color: var(--link);
|
|
1268
1173
|
cursor: pointer;
|
|
1269
1174
|
flex: 1;
|
|
1270
1175
|
min-width: 0;
|
|
@@ -1284,7 +1189,7 @@ kbd {
|
|
|
1284
1189
|
font-weight: 700;
|
|
1285
1190
|
font-size: 12px;
|
|
1286
1191
|
margin-right: 6px;
|
|
1287
|
-
color: var(--
|
|
1192
|
+
color: var(--fg);
|
|
1288
1193
|
}
|
|
1289
1194
|
.thread .msg.agent {
|
|
1290
1195
|
background: var(--bg2);
|
|
@@ -1324,10 +1229,8 @@ kbd {
|
|
|
1324
1229
|
.dialog {
|
|
1325
1230
|
border-radius: var(--radius);
|
|
1326
1231
|
background: var(--bg2);
|
|
1327
|
-
border: 1px solid var(--
|
|
1328
|
-
box-shadow:
|
|
1329
|
-
var(--bevel),
|
|
1330
|
-
0 12px 40px rgb(0 0 0 / 0.7);
|
|
1232
|
+
border: 1px solid var(--line);
|
|
1233
|
+
box-shadow: var(--shadow-lg);
|
|
1331
1234
|
width: 540px;
|
|
1332
1235
|
max-width: 92vw;
|
|
1333
1236
|
padding: 18px 20px;
|
|
@@ -1335,11 +1238,10 @@ kbd {
|
|
|
1335
1238
|
.dialog h3 {
|
|
1336
1239
|
margin: 0 0 10px;
|
|
1337
1240
|
font-family: var(--font-display);
|
|
1338
|
-
font-weight:
|
|
1339
|
-
font-size:
|
|
1241
|
+
font-weight: 600;
|
|
1242
|
+
font-size: 1.05rem;
|
|
1340
1243
|
text-transform: var(--heading-transform);
|
|
1341
|
-
color: var(--
|
|
1342
|
-
text-shadow: var(--glow-red);
|
|
1244
|
+
color: var(--fg);
|
|
1343
1245
|
}
|
|
1344
1246
|
.dialog .row {
|
|
1345
1247
|
display: flex;
|
|
@@ -1351,7 +1253,7 @@ kbd {
|
|
|
1351
1253
|
display: none;
|
|
1352
1254
|
}
|
|
1353
1255
|
.banner {
|
|
1354
|
-
background: var(--
|
|
1256
|
+
background: var(--bg3);
|
|
1355
1257
|
color: var(--fg);
|
|
1356
1258
|
padding: 6px 16px;
|
|
1357
1259
|
font-family: var(--font-mono);
|
|
@@ -1359,14 +1261,14 @@ kbd {
|
|
|
1359
1261
|
display: flex;
|
|
1360
1262
|
gap: 12px;
|
|
1361
1263
|
align-items: center;
|
|
1362
|
-
border-bottom: 1px solid var(--
|
|
1264
|
+
border-bottom: 1px solid var(--line);
|
|
1363
1265
|
}
|
|
1364
1266
|
.banner::before {
|
|
1365
1267
|
content: "";
|
|
1366
1268
|
width: 8px;
|
|
1367
1269
|
height: 8px;
|
|
1368
|
-
|
|
1369
|
-
|
|
1270
|
+
border-radius: 50%;
|
|
1271
|
+
background: var(--ok);
|
|
1370
1272
|
animation: blink 1.6s ease-in-out infinite;
|
|
1371
1273
|
flex: none;
|
|
1372
1274
|
}
|
|
@@ -1384,25 +1286,27 @@ kbd {
|
|
|
1384
1286
|
margin: 0 auto;
|
|
1385
1287
|
padding: 32px 24px;
|
|
1386
1288
|
}
|
|
1387
|
-
.home h2
|
|
1388
|
-
.home h3 {
|
|
1289
|
+
.home h2 {
|
|
1389
1290
|
font-family: var(--font-display);
|
|
1390
|
-
font-weight:
|
|
1391
|
-
font-size:
|
|
1291
|
+
font-weight: 600;
|
|
1292
|
+
font-size: 1.35rem;
|
|
1293
|
+
letter-spacing: -0.02em;
|
|
1392
1294
|
text-transform: var(--heading-transform);
|
|
1393
|
-
color: var(--
|
|
1394
|
-
text-shadow: var(--glow
|
|
1295
|
+
color: var(--fg);
|
|
1296
|
+
text-shadow: var(--glow);
|
|
1395
1297
|
}
|
|
1396
1298
|
.home h3 {
|
|
1397
|
-
font-
|
|
1299
|
+
font-family: var(--font-display);
|
|
1300
|
+
font-weight: 600;
|
|
1301
|
+
font-size: 12px;
|
|
1302
|
+
text-transform: uppercase;
|
|
1303
|
+
letter-spacing: 0.06em;
|
|
1398
1304
|
color: var(--muted);
|
|
1399
|
-
text-shadow: none;
|
|
1400
1305
|
margin-top: 28px;
|
|
1401
1306
|
}
|
|
1402
1307
|
.home .item {
|
|
1403
1308
|
border-radius: var(--radius);
|
|
1404
|
-
border: 1px solid var(--
|
|
1405
|
-
box-shadow: var(--bevel);
|
|
1309
|
+
border: 1px solid var(--line);
|
|
1406
1310
|
background: var(--bg2);
|
|
1407
1311
|
padding: 12px 16px;
|
|
1408
1312
|
margin-bottom: 10px;
|
|
@@ -1415,8 +1319,7 @@ kbd {
|
|
|
1415
1319
|
box-shadow var(--transition);
|
|
1416
1320
|
}
|
|
1417
1321
|
.home .item:hover {
|
|
1418
|
-
border-color: var(--
|
|
1419
|
-
box-shadow: var(--bevel-glow-red);
|
|
1322
|
+
border-color: var(--accent);
|
|
1420
1323
|
}
|
|
1421
1324
|
.home .item .t {
|
|
1422
1325
|
font-family: var(--font-mono);
|
|
@@ -1481,11 +1384,10 @@ kbd {
|
|
|
1481
1384
|
display: none;
|
|
1482
1385
|
}
|
|
1483
1386
|
.doc h1 {
|
|
1484
|
-
font-size: clamp(
|
|
1485
|
-
line-height: 1.7;
|
|
1387
|
+
font-size: clamp(1.15rem, 4.5vw, 1.4rem);
|
|
1486
1388
|
}
|
|
1487
1389
|
.doc h2 {
|
|
1488
|
-
font-size:
|
|
1390
|
+
font-size: 1.05rem;
|
|
1489
1391
|
margin-top: 28px;
|
|
1490
1392
|
}
|
|
1491
1393
|
/* Right-aligned control strip: a left gutter would sit off-screen, and a
|
|
@@ -1501,7 +1403,7 @@ kbd {
|
|
|
1501
1403
|
width: auto;
|
|
1502
1404
|
height: 22px;
|
|
1503
1405
|
padding: 0 8px;
|
|
1504
|
-
font-size:
|
|
1406
|
+
font-size: 11px;
|
|
1505
1407
|
}
|
|
1506
1408
|
|
|
1507
1409
|
/* A peek or a thread takes the screen; both already carry a close button. */
|
|
@@ -1523,7 +1425,7 @@ kbd {
|
|
|
1523
1425
|
}
|
|
1524
1426
|
.side-head button.ghost {
|
|
1525
1427
|
min-width: 40px;
|
|
1526
|
-
font-size:
|
|
1428
|
+
font-size: 14px;
|
|
1527
1429
|
}
|
|
1528
1430
|
|
|
1529
1431
|
/* Files: the list becomes a strip above the diff. */
|
|
@@ -1535,7 +1437,7 @@ kbd {
|
|
|
1535
1437
|
min-width: 0;
|
|
1536
1438
|
max-height: 30vh;
|
|
1537
1439
|
border-right: none;
|
|
1538
|
-
border-bottom: 1px solid var(--
|
|
1440
|
+
border-bottom: 1px solid var(--line);
|
|
1539
1441
|
}
|
|
1540
1442
|
.file-view .file-head {
|
|
1541
1443
|
flex-wrap: wrap;
|
|
@@ -1556,7 +1458,7 @@ kbd {
|
|
|
1556
1458
|
.map-side {
|
|
1557
1459
|
width: 100%;
|
|
1558
1460
|
border-left: none;
|
|
1559
|
-
border-top: 1px solid var(--
|
|
1461
|
+
border-top: 1px solid var(--line);
|
|
1560
1462
|
}
|
|
1561
1463
|
.map-grid {
|
|
1562
1464
|
grid-template-columns: minmax(0, 1fr);
|
|
@@ -1605,7 +1507,7 @@ kbd {
|
|
|
1605
1507
|
}
|
|
1606
1508
|
/* Give the title the space the brand and the status chip do not need. */
|
|
1607
1509
|
.topbar .brand {
|
|
1608
|
-
font-size:
|
|
1510
|
+
font-size: 14px;
|
|
1609
1511
|
}
|
|
1610
1512
|
.bar-identity .badge {
|
|
1611
1513
|
font-size: 10px;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "thurview",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"description": "Guided, evidence-anchored reviews of agent-written code. A coding agent authors the review; you read, ask, comment and decide in the browser.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -53,11 +53,11 @@ fonts:
|
|
|
53
53
|
- { family: Acme Sans, path: web/public/fonts/acme-sans.woff2, weight: "400 700" }
|
|
54
54
|
|
|
55
55
|
shape:
|
|
56
|
-
radius: 8px #
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
56
|
+
radius: 8px # 6px in the default skin
|
|
57
|
+
headingTransform: none # none in the default skin
|
|
58
|
+
bevel: true # retro extras, all off unless set: pixel
|
|
59
|
+
glow: true # bevels on panels, neon glow on headings
|
|
60
|
+
scanlines: true # and tabs, a CRT overlay
|
|
61
61
|
|
|
62
62
|
code: # syntax palette; any key optional
|
|
63
63
|
keyword: "#7c3aed"
|
|
@@ -80,8 +80,7 @@ Rules:
|
|
|
80
80
|
|
|
81
81
|
- Keep contrast readable: body text against `bg`, code against `code`.
|
|
82
82
|
- A light project gets `mode: light` and light backgrounds; the default skin
|
|
83
|
-
is dark and
|
|
84
|
-
set them so.
|
|
83
|
+
is dark and neutral, with one blue accent.
|
|
85
84
|
- `fonts.files` paths must exist at the pinned head commit; `publish`
|
|
86
85
|
rejects a missing one. Font stylesheets are fetched by the reader's
|
|
87
86
|
browser.
|
|
Binary file
|