@open330/kiwimu 0.3.3 → 0.4.1
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/package.json +1 -1
- package/src/build/static/graph.js +2 -2
- package/src/build/static/style.css +317 -209
- package/src/build/templates.ts +123 -0
- package/src/config.ts +48 -0
- package/src/expand/llm.ts +9 -4
- package/src/index.ts +58 -5
- package/src/pipeline/llm-chunker.ts +40 -8
|
@@ -2,31 +2,37 @@
|
|
|
2
2
|
|
|
3
3
|
:root {
|
|
4
4
|
--bg: #ffffff;
|
|
5
|
-
--bg-alt: #
|
|
6
|
-
--bg-hover: #
|
|
7
|
-
--text: #
|
|
8
|
-
--text-muted: #
|
|
9
|
-
--link: #0275d8;
|
|
10
|
-
--link-hover: #
|
|
11
|
-
--border: #
|
|
12
|
-
--accent: #
|
|
13
|
-
--accent-
|
|
14
|
-
--
|
|
15
|
-
--
|
|
16
|
-
--
|
|
5
|
+
--bg-alt: #f6f6f6;
|
|
6
|
+
--bg-hover: #eaeaea;
|
|
7
|
+
--text: #1a1a1a;
|
|
8
|
+
--text-muted: #6b6b6b;
|
|
9
|
+
--link: #0275d8; /* NamuWiki blue link */
|
|
10
|
+
--link-hover: #0050a0; /* Darker blue for hover */
|
|
11
|
+
--border: #dcdcdc;
|
|
12
|
+
--accent: #00a495; /* NamuWiki green */
|
|
13
|
+
--accent-dark: #008c7e;
|
|
14
|
+
--accent-light: #e0f5f3; /* Light green for backgrounds */
|
|
15
|
+
--namu-green: #00a495;
|
|
16
|
+
--namu-green-dark: #007a6e;
|
|
17
|
+
--namu-heading-bg: #00a495;
|
|
18
|
+
--sidebar-width: 250px;
|
|
19
|
+
--topbar-height: 44px;
|
|
20
|
+
/* --radius variable removed as all corners are sharp */
|
|
17
21
|
}
|
|
18
22
|
|
|
19
23
|
* {
|
|
20
24
|
margin: 0;
|
|
21
25
|
padding: 0;
|
|
22
26
|
box-sizing: border-box;
|
|
27
|
+
border-radius: 0; /* Enforce sharp flat edges everywhere */
|
|
28
|
+
box-shadow: none; /* Enforce no shadows */
|
|
23
29
|
}
|
|
24
30
|
|
|
25
31
|
body {
|
|
26
|
-
font-family: -apple-system, BlinkMacSystemFont, "
|
|
32
|
+
font-family: "Noto Sans KR", -apple-system, BlinkMacSystemFont, "Malgun Gothic", sans-serif;
|
|
27
33
|
color: var(--text);
|
|
28
34
|
background: var(--bg);
|
|
29
|
-
line-height: 1.
|
|
35
|
+
line-height: 1.65; /* Updated line-height */
|
|
30
36
|
font-size: 15px;
|
|
31
37
|
}
|
|
32
38
|
|
|
@@ -40,26 +46,26 @@ a:hover {
|
|
|
40
46
|
text-decoration: underline;
|
|
41
47
|
}
|
|
42
48
|
|
|
43
|
-
/* Topbar */
|
|
49
|
+
/* Topbar - namuwiki style */
|
|
44
50
|
.topbar {
|
|
45
51
|
position: fixed;
|
|
46
52
|
top: 0;
|
|
47
53
|
left: 0;
|
|
48
54
|
right: 0;
|
|
49
55
|
height: var(--topbar-height);
|
|
50
|
-
background: var(--
|
|
51
|
-
border-bottom: 1px solid var(--border);
|
|
56
|
+
background: var(--namu-green);
|
|
52
57
|
display: flex;
|
|
53
58
|
align-items: center;
|
|
54
|
-
padding: 0
|
|
59
|
+
padding: 0 16px;
|
|
55
60
|
z-index: 100;
|
|
56
|
-
gap:
|
|
61
|
+
gap: 12px;
|
|
62
|
+
/* box-shadow: none; -> Handled by global reset */
|
|
57
63
|
}
|
|
58
64
|
|
|
59
65
|
.topbar-brand {
|
|
60
66
|
font-weight: 700;
|
|
61
|
-
font-size:
|
|
62
|
-
color:
|
|
67
|
+
font-size: 16px;
|
|
68
|
+
color: #ffffff;
|
|
63
69
|
white-space: nowrap;
|
|
64
70
|
display: flex;
|
|
65
71
|
align-items: center;
|
|
@@ -68,34 +74,36 @@ a:hover {
|
|
|
68
74
|
|
|
69
75
|
.topbar-brand:hover {
|
|
70
76
|
text-decoration: none;
|
|
71
|
-
color:
|
|
77
|
+
color: #e0f5f3;
|
|
72
78
|
}
|
|
73
79
|
|
|
74
80
|
.topbar-logo {
|
|
75
|
-
width:
|
|
76
|
-
height:
|
|
81
|
+
width: 26px;
|
|
82
|
+
height: 26px;
|
|
77
83
|
object-fit: contain;
|
|
84
|
+
filter: brightness(10);
|
|
78
85
|
}
|
|
79
86
|
|
|
80
87
|
.topbar-search {
|
|
81
88
|
flex: 1;
|
|
82
|
-
max-width:
|
|
89
|
+
max-width: 360px;
|
|
83
90
|
position: relative;
|
|
84
91
|
}
|
|
85
92
|
|
|
86
93
|
.topbar-search input {
|
|
87
94
|
width: 100%;
|
|
88
|
-
padding:
|
|
89
|
-
border:
|
|
90
|
-
border-radius:
|
|
95
|
+
padding: 5px 12px;
|
|
96
|
+
border: none;
|
|
97
|
+
/* border-radius: 3px; -> Handled by global reset */
|
|
91
98
|
font-size: 14px;
|
|
92
99
|
outline: none;
|
|
93
|
-
|
|
100
|
+
background: rgba(255,255,255,0.9);
|
|
101
|
+
transition: background 0.2s;
|
|
94
102
|
}
|
|
95
103
|
|
|
96
104
|
.topbar-search input:focus {
|
|
97
|
-
|
|
98
|
-
box-shadow:
|
|
105
|
+
background: #ffffff;
|
|
106
|
+
/* box-shadow: none; -> Handled by global reset */
|
|
99
107
|
}
|
|
100
108
|
|
|
101
109
|
.search-dropdown {
|
|
@@ -106,8 +114,8 @@ a:hover {
|
|
|
106
114
|
right: 0;
|
|
107
115
|
background: var(--bg);
|
|
108
116
|
border: 1px solid var(--border);
|
|
109
|
-
border-radius: var(--radius);
|
|
110
|
-
box-shadow:
|
|
117
|
+
/* border-radius: var(--radius); -> Handled by global reset */
|
|
118
|
+
/* box-shadow: none; -> Handled by global reset */
|
|
111
119
|
max-height: 300px;
|
|
112
120
|
overflow-y: auto;
|
|
113
121
|
z-index: 200;
|
|
@@ -130,26 +138,30 @@ a:hover {
|
|
|
130
138
|
}
|
|
131
139
|
|
|
132
140
|
.search-dropdown .search-highlight {
|
|
133
|
-
color: var(--
|
|
141
|
+
color: var(--namu-green);
|
|
134
142
|
font-weight: 600;
|
|
135
143
|
}
|
|
136
144
|
|
|
137
145
|
.topbar-links {
|
|
138
146
|
margin-left: auto;
|
|
147
|
+
display: flex;
|
|
148
|
+
gap: 4px;
|
|
139
149
|
}
|
|
140
150
|
|
|
141
151
|
.btn-graph {
|
|
142
|
-
padding: 4px
|
|
143
|
-
border: 1px solid
|
|
144
|
-
border-radius:
|
|
152
|
+
padding: 4px 10px;
|
|
153
|
+
border: 1px solid rgba(255,255,255,0.3);
|
|
154
|
+
/* border-radius: 3px; -> Handled by global reset */
|
|
145
155
|
font-size: 13px;
|
|
146
|
-
color:
|
|
156
|
+
color: #ffffff;
|
|
147
157
|
white-space: nowrap;
|
|
158
|
+
transition: background 0.15s;
|
|
148
159
|
}
|
|
149
160
|
|
|
150
161
|
.btn-graph:hover {
|
|
151
|
-
background:
|
|
162
|
+
background: rgba(255,255,255,0.15);
|
|
152
163
|
text-decoration: none;
|
|
164
|
+
color: #ffffff;
|
|
153
165
|
}
|
|
154
166
|
|
|
155
167
|
/* Layout */
|
|
@@ -159,12 +171,12 @@ a:hover {
|
|
|
159
171
|
min-height: calc(100vh - var(--topbar-height));
|
|
160
172
|
}
|
|
161
173
|
|
|
162
|
-
/* Sidebar */
|
|
174
|
+
/* Sidebar - namuwiki style */
|
|
163
175
|
.sidebar {
|
|
164
176
|
width: var(--sidebar-width);
|
|
165
177
|
background: var(--bg-alt);
|
|
166
178
|
border-right: 1px solid var(--border);
|
|
167
|
-
padding:
|
|
179
|
+
padding: 0;
|
|
168
180
|
position: fixed;
|
|
169
181
|
top: var(--topbar-height);
|
|
170
182
|
bottom: 0;
|
|
@@ -173,13 +185,13 @@ a:hover {
|
|
|
173
185
|
|
|
174
186
|
.sidebar-header {
|
|
175
187
|
font-weight: 700;
|
|
176
|
-
font-size:
|
|
188
|
+
font-size: 12px;
|
|
177
189
|
text-transform: uppercase;
|
|
178
190
|
letter-spacing: 0.05em;
|
|
179
191
|
color: var(--text-muted);
|
|
180
|
-
padding: 0
|
|
192
|
+
padding: 0 14px 8px;
|
|
181
193
|
border-bottom: 1px solid var(--border);
|
|
182
|
-
margin-bottom:
|
|
194
|
+
margin-bottom: 0;
|
|
183
195
|
}
|
|
184
196
|
|
|
185
197
|
.page-list {
|
|
@@ -188,12 +200,13 @@ a:hover {
|
|
|
188
200
|
|
|
189
201
|
.page-list li a {
|
|
190
202
|
display: block;
|
|
191
|
-
padding:
|
|
203
|
+
padding: 5px 14px;
|
|
192
204
|
color: var(--text);
|
|
193
|
-
font-size:
|
|
205
|
+
font-size: 13px;
|
|
194
206
|
overflow: hidden;
|
|
195
207
|
text-overflow: ellipsis;
|
|
196
208
|
white-space: nowrap;
|
|
209
|
+
border-bottom: 1px solid #efefef;
|
|
197
210
|
}
|
|
198
211
|
|
|
199
212
|
.page-list li a:hover {
|
|
@@ -203,54 +216,63 @@ a:hover {
|
|
|
203
216
|
|
|
204
217
|
.page-list li a.active {
|
|
205
218
|
background: var(--accent-light);
|
|
206
|
-
color: var(--
|
|
219
|
+
color: var(--namu-green-dark);
|
|
207
220
|
font-weight: 600;
|
|
208
|
-
border-right: 3px solid var(--
|
|
221
|
+
border-right: 3px solid var(--namu-green);
|
|
209
222
|
}
|
|
210
223
|
|
|
211
224
|
/* Content */
|
|
212
225
|
.content {
|
|
213
226
|
flex: 1;
|
|
214
227
|
margin-left: var(--sidebar-width);
|
|
215
|
-
padding:
|
|
216
|
-
max-width:
|
|
228
|
+
padding: 24px 40px;
|
|
229
|
+
max-width: 860px;
|
|
217
230
|
}
|
|
218
231
|
|
|
219
|
-
/* Wiki page */
|
|
232
|
+
/* Wiki page - namuwiki style headings */
|
|
220
233
|
.page-header h1 {
|
|
221
|
-
font-size:
|
|
234
|
+
font-size: 26px;
|
|
222
235
|
font-weight: 700;
|
|
223
|
-
padding-bottom:
|
|
224
|
-
border-bottom:
|
|
225
|
-
margin-bottom:
|
|
236
|
+
padding-bottom: 10px;
|
|
237
|
+
border-bottom: 3px solid var(--namu-green);
|
|
238
|
+
margin-bottom: 20px;
|
|
239
|
+
color: var(--text);
|
|
226
240
|
}
|
|
227
241
|
|
|
228
242
|
.page-body {
|
|
229
|
-
line-height: 1.8;
|
|
243
|
+
/* line-height: 1.8; -> Removed to inherit from body's 1.65 */
|
|
230
244
|
}
|
|
231
245
|
|
|
232
246
|
.page-body h2 {
|
|
233
|
-
font-size:
|
|
247
|
+
font-size: 20px;
|
|
234
248
|
font-weight: 700;
|
|
235
|
-
margin:
|
|
236
|
-
padding
|
|
237
|
-
|
|
249
|
+
margin: 28px 0 10px;
|
|
250
|
+
padding: 4px 10px;
|
|
251
|
+
background: var(--namu-green);
|
|
252
|
+
color: #ffffff;
|
|
253
|
+
/* border-radius: 2px; -> Handled by global reset */
|
|
238
254
|
}
|
|
239
255
|
|
|
240
256
|
.page-body h3 {
|
|
241
|
-
font-size:
|
|
242
|
-
font-weight:
|
|
243
|
-
margin:
|
|
257
|
+
font-size: 17px;
|
|
258
|
+
font-weight: 700;
|
|
259
|
+
margin: 22px 0 8px;
|
|
260
|
+
padding: 3px 8px;
|
|
261
|
+
border-left: 4px solid var(--namu-green);
|
|
262
|
+
background: none; /* Removed background */
|
|
263
|
+
color: var(--text);
|
|
244
264
|
}
|
|
245
265
|
|
|
246
266
|
.page-body h4 {
|
|
247
|
-
font-size:
|
|
248
|
-
font-weight:
|
|
249
|
-
margin:
|
|
267
|
+
font-size: 15px;
|
|
268
|
+
font-weight: 700;
|
|
269
|
+
margin: 18px 0 6px;
|
|
270
|
+
padding-bottom: 4px;
|
|
271
|
+
border-bottom: 1px solid var(--border);
|
|
250
272
|
}
|
|
251
273
|
|
|
252
274
|
.page-body p {
|
|
253
|
-
margin-bottom:
|
|
275
|
+
margin-bottom: 10px;
|
|
254
276
|
}
|
|
255
277
|
|
|
256
278
|
.page-body ul, .page-body ol {
|
|
@@ -258,31 +280,40 @@ a:hover {
|
|
|
258
280
|
}
|
|
259
281
|
|
|
260
282
|
.page-body li {
|
|
261
|
-
margin-bottom:
|
|
283
|
+
margin-bottom: 3px;
|
|
284
|
+
}
|
|
285
|
+
|
|
286
|
+
/* Namuwiki-style strikethrough (humor) */
|
|
287
|
+
.page-body del {
|
|
288
|
+
color: var(--text-muted);
|
|
289
|
+
text-decoration: line-through;
|
|
290
|
+
font-size: 0.95em;
|
|
262
291
|
}
|
|
263
292
|
|
|
264
293
|
.page-body blockquote {
|
|
265
|
-
border-left:
|
|
266
|
-
padding: 8px
|
|
267
|
-
margin:
|
|
268
|
-
background:
|
|
269
|
-
border-radius: 0 var(--radius) var(--radius) 0;
|
|
294
|
+
border-left: 3px solid var(--namu-green);
|
|
295
|
+
padding: 8px 14px;
|
|
296
|
+
margin: 10px 0;
|
|
297
|
+
background: #f0faf9;
|
|
298
|
+
/* border-radius: 0 var(--radius) var(--radius) 0; -> Handled by global reset */
|
|
299
|
+
font-size: 14px;
|
|
270
300
|
}
|
|
271
301
|
|
|
272
302
|
.page-body code {
|
|
273
|
-
background:
|
|
274
|
-
padding: 2px
|
|
275
|
-
border-radius:
|
|
303
|
+
background: #f0f0f0;
|
|
304
|
+
padding: 2px 5px;
|
|
305
|
+
/* border-radius: 2px; -> Handled by global reset */
|
|
276
306
|
font-size: 13px;
|
|
307
|
+
font-family: "JetBrains Mono", "D2Coding", monospace;
|
|
277
308
|
}
|
|
278
309
|
|
|
279
310
|
.page-body pre {
|
|
280
|
-
background: #
|
|
281
|
-
color: #
|
|
282
|
-
padding:
|
|
283
|
-
border-radius: var(--radius);
|
|
311
|
+
background: #2b2b2b;
|
|
312
|
+
color: #e0e0e0;
|
|
313
|
+
padding: 14px;
|
|
314
|
+
/* border-radius: var(--radius); -> Handled by global reset */
|
|
284
315
|
overflow-x: auto;
|
|
285
|
-
margin:
|
|
316
|
+
margin: 10px 0;
|
|
286
317
|
}
|
|
287
318
|
|
|
288
319
|
.page-body pre code {
|
|
@@ -293,77 +324,137 @@ a:hover {
|
|
|
293
324
|
|
|
294
325
|
.page-body img {
|
|
295
326
|
max-width: 100%;
|
|
296
|
-
border-radius: var(--radius);
|
|
297
|
-
margin:
|
|
327
|
+
/* border-radius: var(--radius); -> Handled by global reset */
|
|
328
|
+
margin: 10px 0;
|
|
298
329
|
}
|
|
299
330
|
|
|
300
331
|
.page-body table {
|
|
301
332
|
width: 100%;
|
|
302
333
|
border-collapse: collapse;
|
|
303
|
-
margin:
|
|
334
|
+
margin: 10px 0;
|
|
335
|
+
font-size: 14px;
|
|
304
336
|
}
|
|
305
337
|
|
|
306
338
|
.page-body th, .page-body td {
|
|
307
|
-
padding:
|
|
339
|
+
padding: 6px 10px;
|
|
308
340
|
border: 1px solid var(--border);
|
|
309
341
|
text-align: left;
|
|
310
342
|
}
|
|
311
343
|
|
|
312
344
|
.page-body th {
|
|
313
|
-
background: var(--
|
|
345
|
+
background: var(--accent-light);
|
|
314
346
|
font-weight: 600;
|
|
347
|
+
color: var(--namu-green-dark);
|
|
348
|
+
}
|
|
349
|
+
|
|
350
|
+
/* Bold emphasis - namuwiki loves bold */
|
|
351
|
+
.page-body strong {
|
|
352
|
+
color: var(--text);
|
|
353
|
+
font-weight: 800;
|
|
315
354
|
}
|
|
316
355
|
|
|
317
|
-
/* TOC */
|
|
356
|
+
/* TOC - namuwiki style with counters */
|
|
318
357
|
.toc-box {
|
|
319
|
-
background:
|
|
358
|
+
background: #f5f5f5;
|
|
320
359
|
border: 1px solid var(--border);
|
|
321
|
-
border-radius: var(--radius);
|
|
322
|
-
padding:
|
|
323
|
-
margin-bottom:
|
|
360
|
+
/* border-radius: var(--radius); -> Handled by global reset */
|
|
361
|
+
padding: 10px 14px;
|
|
362
|
+
margin-bottom: 20px;
|
|
324
363
|
}
|
|
325
364
|
|
|
326
365
|
.toc-box summary {
|
|
327
366
|
font-weight: 700;
|
|
328
367
|
cursor: pointer;
|
|
329
368
|
font-size: 14px;
|
|
330
|
-
color: var(--
|
|
369
|
+
color: var(--namu-green-dark);
|
|
370
|
+
}
|
|
371
|
+
|
|
372
|
+
.toc-box .toc {
|
|
373
|
+
counter-reset: h2; /* Reset counter for top-level headings */
|
|
331
374
|
}
|
|
332
375
|
|
|
333
|
-
.toc-box .toc ul {
|
|
376
|
+
.toc-box .toc ul { /* Use ul as the base, then li for items */
|
|
334
377
|
list-style: none;
|
|
335
|
-
margin:
|
|
378
|
+
margin: 6px 0 0 0;
|
|
336
379
|
padding-left: 0;
|
|
337
380
|
}
|
|
338
381
|
|
|
339
|
-
.toc-box .toc ul ul {
|
|
340
|
-
padding-left:
|
|
382
|
+
.toc-box .toc ul ul { /* Nested lists */
|
|
383
|
+
padding-left: 18px; /* Indent for sub-levels */
|
|
341
384
|
}
|
|
342
385
|
|
|
343
386
|
.toc-box .toc li {
|
|
344
|
-
margin: 2px 0;
|
|
387
|
+
margin: 2px 0; /* Slightly more space */
|
|
388
|
+
position: relative; /* For counter positioning */
|
|
345
389
|
}
|
|
346
390
|
|
|
347
|
-
.toc-box .toc a {
|
|
348
|
-
font-size:
|
|
349
|
-
color: var(--
|
|
391
|
+
.toc-box .toc li a {
|
|
392
|
+
font-size: 13px;
|
|
393
|
+
color: var(--link);
|
|
394
|
+
display: block; /* Make link clickable over full line */
|
|
395
|
+
padding-left: 20px; /* Space for counter */
|
|
350
396
|
}
|
|
351
397
|
|
|
352
|
-
.toc-box .toc a:hover {
|
|
353
|
-
color: var(--link);
|
|
398
|
+
.toc-box .toc li a:hover {
|
|
399
|
+
color: var(--link-hover);
|
|
400
|
+
}
|
|
401
|
+
|
|
402
|
+
/* Counter for h2 equivalent */
|
|
403
|
+
.toc-box .toc > ul > li {
|
|
404
|
+
counter-increment: h2;
|
|
405
|
+
counter-reset: h3; /* Reset h3 counter for each new h2 */
|
|
406
|
+
}
|
|
407
|
+
.toc-box .toc > ul > li > a::before {
|
|
408
|
+
content: counter(h2) ". ";
|
|
409
|
+
position: absolute;
|
|
410
|
+
left: 0;
|
|
411
|
+
color: var(--text-muted);
|
|
412
|
+
font-weight: 400;
|
|
413
|
+
width: 20px; /* Fixed width for alignment */
|
|
414
|
+
text-align: right;
|
|
415
|
+
}
|
|
416
|
+
|
|
417
|
+
/* Counter for h3 equivalent */
|
|
418
|
+
.toc-box .toc > ul > li > ul > li {
|
|
419
|
+
counter-increment: h3;
|
|
420
|
+
counter-reset: h4; /* Reset h4 counter for each new h3 */
|
|
421
|
+
}
|
|
422
|
+
.toc-box .toc > ul > li > ul > li > a::before {
|
|
423
|
+
content: counter(h2) "." counter(h3) ". ";
|
|
424
|
+
position: absolute;
|
|
425
|
+
left: 0;
|
|
426
|
+
color: var(--text-muted);
|
|
427
|
+
font-weight: 400;
|
|
428
|
+
width: 20px;
|
|
429
|
+
text-align: right;
|
|
354
430
|
}
|
|
355
431
|
|
|
432
|
+
/* Counter for h4 equivalent */
|
|
433
|
+
.toc-box .toc > ul > li > ul > li > ul > li {
|
|
434
|
+
counter-increment: h4;
|
|
435
|
+
}
|
|
436
|
+
.toc-box .toc > ul > li > ul > li > ul > li > a::before {
|
|
437
|
+
content: counter(h2) "." counter(h3) "." counter(h4) ". ";
|
|
438
|
+
position: absolute;
|
|
439
|
+
left: 0;
|
|
440
|
+
color: var(--text-muted);
|
|
441
|
+
font-weight: 400;
|
|
442
|
+
width: 20px;
|
|
443
|
+
text-align: right;
|
|
444
|
+
}
|
|
445
|
+
|
|
446
|
+
|
|
356
447
|
/* Backlinks */
|
|
357
448
|
.backlinks {
|
|
358
|
-
margin-top:
|
|
359
|
-
padding-top:
|
|
360
|
-
border-top:
|
|
449
|
+
margin-top: 36px;
|
|
450
|
+
padding-top: 14px;
|
|
451
|
+
border-top: 2px solid var(--namu-green);
|
|
361
452
|
}
|
|
362
453
|
|
|
363
454
|
.backlinks h3 {
|
|
364
455
|
font-size: 14px;
|
|
365
|
-
color: var(--
|
|
366
|
-
font-weight:
|
|
456
|
+
color: var(--namu-green-dark);
|
|
457
|
+
font-weight: 700;
|
|
367
458
|
margin-bottom: 8px;
|
|
368
459
|
}
|
|
369
460
|
|
|
@@ -371,45 +462,48 @@ a:hover {
|
|
|
371
462
|
list-style: none;
|
|
372
463
|
display: flex;
|
|
373
464
|
flex-wrap: wrap;
|
|
374
|
-
gap:
|
|
465
|
+
gap: 6px;
|
|
375
466
|
}
|
|
376
467
|
|
|
377
468
|
.backlinks li a {
|
|
378
469
|
display: inline-block;
|
|
379
|
-
padding:
|
|
380
|
-
background: var(--
|
|
381
|
-
border: 1px solid var(--
|
|
382
|
-
border-radius:
|
|
470
|
+
padding: 3px 10px;
|
|
471
|
+
background: var(--accent-light);
|
|
472
|
+
border: 1px solid var(--namu-green);
|
|
473
|
+
/* border-radius: 3px; -> Handled by global reset */
|
|
383
474
|
font-size: 13px;
|
|
475
|
+
color: var(--namu-green-dark);
|
|
384
476
|
}
|
|
385
477
|
|
|
386
478
|
.backlinks li a:hover {
|
|
387
|
-
background: var(--
|
|
479
|
+
background: var(--namu-green);
|
|
480
|
+
color: #ffffff;
|
|
388
481
|
text-decoration: none;
|
|
389
482
|
}
|
|
390
483
|
|
|
391
484
|
/* Index page */
|
|
392
485
|
.hero {
|
|
393
486
|
text-align: center;
|
|
394
|
-
padding:
|
|
487
|
+
padding: 40px 0 28px;
|
|
395
488
|
}
|
|
396
489
|
|
|
397
490
|
.hero-logo {
|
|
398
|
-
width:
|
|
399
|
-
height:
|
|
491
|
+
width: 100px;
|
|
492
|
+
height: 100px;
|
|
400
493
|
object-fit: contain;
|
|
401
|
-
margin-bottom:
|
|
494
|
+
margin-bottom: 12px;
|
|
402
495
|
}
|
|
403
496
|
|
|
404
497
|
.hero h1 {
|
|
405
|
-
font-size:
|
|
498
|
+
font-size: 32px;
|
|
406
499
|
border: none;
|
|
500
|
+
color: var(--namu-green-dark);
|
|
407
501
|
}
|
|
408
502
|
|
|
409
503
|
.hero-sub {
|
|
410
504
|
color: var(--text-muted);
|
|
411
|
-
font-size:
|
|
412
|
-
margin-top:
|
|
505
|
+
font-size: 15px;
|
|
506
|
+
margin-top: 6px;
|
|
413
507
|
}
|
|
414
508
|
|
|
415
509
|
.index-grid {
|
|
@@ -418,59 +512,63 @@ a:hover {
|
|
|
418
512
|
}
|
|
419
513
|
|
|
420
514
|
.index-section h2 {
|
|
421
|
-
font-size:
|
|
422
|
-
margin-bottom:
|
|
423
|
-
padding
|
|
424
|
-
|
|
515
|
+
font-size: 17px;
|
|
516
|
+
margin-bottom: 12px;
|
|
517
|
+
padding: 4px 10px;
|
|
518
|
+
background: var(--namu-green);
|
|
519
|
+
color: #ffffff;
|
|
520
|
+
/* border-radius: 2px; -> Handled by global reset */
|
|
425
521
|
}
|
|
426
522
|
|
|
427
523
|
.page-cards {
|
|
428
524
|
display: grid;
|
|
429
|
-
grid-template-columns: repeat(auto-fill, minmax(
|
|
430
|
-
gap:
|
|
431
|
-
margin-bottom:
|
|
525
|
+
grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
|
|
526
|
+
gap: 8px;
|
|
527
|
+
margin-bottom: 28px;
|
|
432
528
|
}
|
|
433
529
|
|
|
434
530
|
.page-card {
|
|
435
531
|
display: block;
|
|
436
|
-
padding:
|
|
437
|
-
background: var(--bg
|
|
532
|
+
padding: 10px 14px;
|
|
533
|
+
background: var(--bg);
|
|
438
534
|
border: 1px solid var(--border);
|
|
439
|
-
border-radius: var(--radius);
|
|
535
|
+
/* border-radius: var(--radius); -> Handled by global reset */
|
|
440
536
|
color: var(--text);
|
|
441
537
|
transition: all 0.15s;
|
|
442
538
|
}
|
|
443
539
|
|
|
444
540
|
.page-card:hover {
|
|
445
541
|
background: var(--accent-light);
|
|
446
|
-
border-color: var(--
|
|
542
|
+
border-color: var(--namu-green);
|
|
447
543
|
text-decoration: none;
|
|
448
544
|
transform: translateY(-1px);
|
|
449
|
-
box-shadow:
|
|
545
|
+
/* box-shadow: none; -> Handled by global reset */
|
|
450
546
|
}
|
|
451
547
|
|
|
452
548
|
.card-title {
|
|
453
549
|
font-weight: 600;
|
|
454
|
-
font-size:
|
|
550
|
+
font-size: 13px;
|
|
455
551
|
}
|
|
456
552
|
|
|
457
553
|
.quick-links {
|
|
458
554
|
display: flex;
|
|
459
|
-
gap:
|
|
460
|
-
margin-bottom:
|
|
555
|
+
gap: 10px;
|
|
556
|
+
margin-bottom: 28px;
|
|
461
557
|
}
|
|
462
558
|
|
|
463
559
|
.quick-link {
|
|
464
|
-
padding:
|
|
465
|
-
background: var(--
|
|
466
|
-
border: 1px solid var(--
|
|
467
|
-
border-radius: var(--radius);
|
|
560
|
+
padding: 10px 18px;
|
|
561
|
+
background: var(--accent-light);
|
|
562
|
+
border: 1px solid var(--namu-green);
|
|
563
|
+
/* border-radius: var(--radius); -> Handled by global reset */
|
|
468
564
|
font-size: 14px;
|
|
469
|
-
color: var(--
|
|
565
|
+
color: var(--namu-green-dark);
|
|
566
|
+
font-weight: 600;
|
|
470
567
|
}
|
|
471
568
|
|
|
472
569
|
.quick-link:hover {
|
|
473
|
-
background: var(--
|
|
570
|
+
background: var(--namu-green);
|
|
571
|
+
color: #ffffff;
|
|
474
572
|
text-decoration: none;
|
|
475
573
|
}
|
|
476
574
|
|
|
@@ -482,20 +580,21 @@ a:hover {
|
|
|
482
580
|
.graph-page h1 {
|
|
483
581
|
border: none;
|
|
484
582
|
margin-bottom: 8px;
|
|
583
|
+
color: var(--namu-green-dark);
|
|
485
584
|
}
|
|
486
585
|
|
|
487
586
|
.graph-desc {
|
|
488
587
|
color: var(--text-muted);
|
|
489
588
|
font-size: 14px;
|
|
490
|
-
margin-bottom:
|
|
589
|
+
margin-bottom: 14px;
|
|
491
590
|
}
|
|
492
591
|
|
|
493
592
|
#graph-container {
|
|
494
593
|
width: 100%;
|
|
495
594
|
height: calc(100vh - 200px);
|
|
496
595
|
border: 1px solid var(--border);
|
|
497
|
-
border-radius: var(--radius);
|
|
498
|
-
background:
|
|
596
|
+
/* border-radius: var(--radius); -> Handled by global reset */
|
|
597
|
+
background: #fafafa;
|
|
499
598
|
}
|
|
500
599
|
|
|
501
600
|
#graph-container svg {
|
|
@@ -505,9 +604,9 @@ a:hover {
|
|
|
505
604
|
|
|
506
605
|
/* Permalink */
|
|
507
606
|
.headerlink {
|
|
508
|
-
color:
|
|
607
|
+
color: rgba(255,255,255,0.6);
|
|
509
608
|
font-size: 0.7em;
|
|
510
|
-
margin-left:
|
|
609
|
+
margin-left: 6px;
|
|
511
610
|
opacity: 0;
|
|
512
611
|
transition: opacity 0.2s;
|
|
513
612
|
}
|
|
@@ -518,14 +617,23 @@ h4:hover .headerlink {
|
|
|
518
617
|
opacity: 1;
|
|
519
618
|
}
|
|
520
619
|
|
|
521
|
-
|
|
620
|
+
h3 .headerlink {
|
|
621
|
+
color: var(--text-muted);
|
|
622
|
+
}
|
|
623
|
+
|
|
624
|
+
h4 .headerlink {
|
|
625
|
+
color: var(--text-muted);
|
|
626
|
+
}
|
|
627
|
+
|
|
628
|
+
/* Page type badge - namuwiki style */
|
|
522
629
|
.page-type-badge {
|
|
523
630
|
display: inline-block;
|
|
524
|
-
font-size:
|
|
525
|
-
font-weight:
|
|
526
|
-
padding: 2px
|
|
527
|
-
border-radius:
|
|
528
|
-
margin-bottom:
|
|
631
|
+
font-size: 11px;
|
|
632
|
+
font-weight: 700;
|
|
633
|
+
padding: 2px 8px;
|
|
634
|
+
/* border-radius: 2px; -> Handled by global reset */
|
|
635
|
+
margin-bottom: 6px;
|
|
636
|
+
letter-spacing: 0.03em;
|
|
529
637
|
}
|
|
530
638
|
|
|
531
639
|
.page-type-badge.source {
|
|
@@ -535,10 +643,10 @@ h4:hover .headerlink {
|
|
|
535
643
|
|
|
536
644
|
.page-type-badge.concept {
|
|
537
645
|
background: var(--accent-light);
|
|
538
|
-
color:
|
|
646
|
+
color: var(--namu-green-dark);
|
|
539
647
|
}
|
|
540
648
|
|
|
541
|
-
/* Sidebar tabs */
|
|
649
|
+
/* Sidebar tabs - namuwiki style */
|
|
542
650
|
.sidebar-tabs {
|
|
543
651
|
display: flex;
|
|
544
652
|
border-bottom: 1px solid var(--border);
|
|
@@ -551,11 +659,11 @@ h4:hover .headerlink {
|
|
|
551
659
|
|
|
552
660
|
.sidebar-tab {
|
|
553
661
|
flex: 1;
|
|
554
|
-
padding:
|
|
662
|
+
padding: 8px 6px;
|
|
555
663
|
border: none;
|
|
556
664
|
background: none;
|
|
557
|
-
font-size:
|
|
558
|
-
font-weight:
|
|
665
|
+
font-size: 12px;
|
|
666
|
+
font-weight: 700;
|
|
559
667
|
color: var(--text-muted);
|
|
560
668
|
cursor: pointer;
|
|
561
669
|
border-bottom: 2px solid transparent;
|
|
@@ -568,8 +676,8 @@ h4:hover .headerlink {
|
|
|
568
676
|
}
|
|
569
677
|
|
|
570
678
|
.sidebar-tab.active {
|
|
571
|
-
color: var(--
|
|
572
|
-
border-bottom-color: var(--
|
|
679
|
+
color: var(--namu-green);
|
|
680
|
+
border-bottom-color: var(--namu-green);
|
|
573
681
|
}
|
|
574
682
|
|
|
575
683
|
.sidebar-panel {
|
|
@@ -585,31 +693,31 @@ h4:hover .headerlink {
|
|
|
585
693
|
display: flex;
|
|
586
694
|
flex-wrap: wrap;
|
|
587
695
|
align-items: center;
|
|
588
|
-
gap:
|
|
589
|
-
margin-bottom:
|
|
696
|
+
gap: 5px;
|
|
697
|
+
margin-bottom: 6px;
|
|
590
698
|
}
|
|
591
699
|
|
|
592
700
|
.backlink-label {
|
|
593
701
|
font-size: 12px;
|
|
594
|
-
font-weight:
|
|
702
|
+
font-weight: 700;
|
|
595
703
|
color: var(--text-muted);
|
|
596
|
-
margin-right:
|
|
704
|
+
margin-right: 3px;
|
|
597
705
|
}
|
|
598
706
|
|
|
599
707
|
/* External refs */
|
|
600
708
|
.external-refs {
|
|
601
|
-
margin-top:
|
|
602
|
-
padding:
|
|
709
|
+
margin-top: 28px;
|
|
710
|
+
padding: 14px;
|
|
603
711
|
background: #f0f7ff;
|
|
604
712
|
border: 1px solid #bdd7ee;
|
|
605
|
-
border-radius: var(--radius);
|
|
713
|
+
/* border-radius: var(--radius); -> Handled by global reset */
|
|
606
714
|
}
|
|
607
715
|
|
|
608
716
|
.external-refs h3 {
|
|
609
717
|
font-size: 14px;
|
|
610
718
|
color: #1565c0;
|
|
611
|
-
font-weight:
|
|
612
|
-
margin-bottom:
|
|
719
|
+
font-weight: 700;
|
|
720
|
+
margin-bottom: 6px;
|
|
613
721
|
}
|
|
614
722
|
|
|
615
723
|
.external-refs ul {
|
|
@@ -619,12 +727,12 @@ h4:hover .headerlink {
|
|
|
619
727
|
}
|
|
620
728
|
|
|
621
729
|
.external-refs li {
|
|
622
|
-
margin-bottom:
|
|
730
|
+
margin-bottom: 3px;
|
|
623
731
|
}
|
|
624
732
|
|
|
625
733
|
.external-refs a {
|
|
626
734
|
font-size: 13px;
|
|
627
|
-
color: #1565c0;
|
|
735
|
+
color: #1565c0; /* Specific blue for external refs */
|
|
628
736
|
}
|
|
629
737
|
|
|
630
738
|
/* Backlink type indicators */
|
|
@@ -633,7 +741,7 @@ h4:hover .headerlink {
|
|
|
633
741
|
}
|
|
634
742
|
|
|
635
743
|
.backlink-item.concept {
|
|
636
|
-
border-left: 3px solid
|
|
744
|
+
border-left: 3px solid var(--namu-green);
|
|
637
745
|
}
|
|
638
746
|
|
|
639
747
|
/* Page card types */
|
|
@@ -642,35 +750,35 @@ h4:hover .headerlink {
|
|
|
642
750
|
}
|
|
643
751
|
|
|
644
752
|
.page-card.concept {
|
|
645
|
-
border-left: 3px solid
|
|
753
|
+
border-left: 3px solid var(--namu-green);
|
|
646
754
|
}
|
|
647
755
|
|
|
648
756
|
.card-badge {
|
|
649
757
|
font-size: 12px;
|
|
650
|
-
margin-right:
|
|
758
|
+
margin-right: 3px;
|
|
651
759
|
}
|
|
652
760
|
|
|
653
761
|
/* Add tabs */
|
|
654
762
|
.add-tabs {
|
|
655
763
|
display: flex;
|
|
656
764
|
gap: 4px;
|
|
657
|
-
margin-bottom:
|
|
765
|
+
margin-bottom: 10px;
|
|
658
766
|
}
|
|
659
767
|
|
|
660
768
|
.add-tab {
|
|
661
|
-
padding:
|
|
769
|
+
padding: 5px 14px;
|
|
662
770
|
border: 1px solid var(--border);
|
|
663
771
|
background: var(--bg-alt);
|
|
664
|
-
border-radius: var(--radius);
|
|
772
|
+
/* border-radius: var(--radius); -> Handled by global reset */
|
|
665
773
|
font-size: 13px;
|
|
666
774
|
cursor: pointer;
|
|
667
775
|
transition: all 0.15s;
|
|
668
776
|
}
|
|
669
777
|
|
|
670
778
|
.add-tab.active {
|
|
671
|
-
background: var(--
|
|
779
|
+
background: var(--namu-green);
|
|
672
780
|
color: white;
|
|
673
|
-
border-color: var(--
|
|
781
|
+
border-color: var(--namu-green);
|
|
674
782
|
}
|
|
675
783
|
|
|
676
784
|
.add-panel {
|
|
@@ -688,16 +796,16 @@ h4:hover .headerlink {
|
|
|
688
796
|
flex-direction: column;
|
|
689
797
|
align-items: center;
|
|
690
798
|
justify-content: center;
|
|
691
|
-
padding:
|
|
799
|
+
padding: 18px;
|
|
692
800
|
border: 2px dashed var(--border);
|
|
693
|
-
border-radius: var(--radius);
|
|
801
|
+
/* border-radius: var(--radius); -> Handled by global reset */
|
|
694
802
|
cursor: pointer;
|
|
695
803
|
transition: all 0.15s;
|
|
696
804
|
text-align: center;
|
|
697
805
|
}
|
|
698
806
|
|
|
699
807
|
.file-drop:hover, .file-drop.dragover {
|
|
700
|
-
border-color: var(--
|
|
808
|
+
border-color: var(--namu-green);
|
|
701
809
|
background: var(--accent-light);
|
|
702
810
|
}
|
|
703
811
|
|
|
@@ -717,30 +825,30 @@ h4:hover .headerlink {
|
|
|
717
825
|
.add-form {
|
|
718
826
|
display: flex;
|
|
719
827
|
gap: 8px;
|
|
720
|
-
margin-bottom:
|
|
828
|
+
margin-bottom: 10px;
|
|
721
829
|
}
|
|
722
830
|
|
|
723
831
|
.add-form input {
|
|
724
832
|
flex: 1;
|
|
725
|
-
padding:
|
|
833
|
+
padding: 8px 12px;
|
|
726
834
|
border: 1px solid var(--border);
|
|
727
|
-
border-radius: var(--radius);
|
|
835
|
+
/* border-radius: var(--radius); -> Handled by global reset */
|
|
728
836
|
font-size: 14px;
|
|
729
837
|
outline: none;
|
|
730
838
|
transition: border-color 0.2s;
|
|
731
839
|
}
|
|
732
840
|
|
|
733
841
|
.add-form input:focus {
|
|
734
|
-
border-color: var(--
|
|
735
|
-
box-shadow:
|
|
842
|
+
border-color: var(--namu-green);
|
|
843
|
+
/* box-shadow: none; -> Handled by global reset */
|
|
736
844
|
}
|
|
737
845
|
|
|
738
846
|
.add-form button {
|
|
739
|
-
padding:
|
|
740
|
-
background: var(--
|
|
847
|
+
padding: 8px 18px;
|
|
848
|
+
background: var(--namu-green);
|
|
741
849
|
color: white;
|
|
742
850
|
border: none;
|
|
743
|
-
border-radius: var(--radius);
|
|
851
|
+
/* border-radius: var(--radius); -> Handled by global reset */
|
|
744
852
|
font-size: 14px;
|
|
745
853
|
font-weight: 600;
|
|
746
854
|
cursor: pointer;
|
|
@@ -749,7 +857,7 @@ h4:hover .headerlink {
|
|
|
749
857
|
}
|
|
750
858
|
|
|
751
859
|
.add-form button:hover {
|
|
752
|
-
background:
|
|
860
|
+
background: var(--accent-dark);
|
|
753
861
|
}
|
|
754
862
|
|
|
755
863
|
.add-form button:disabled {
|
|
@@ -758,8 +866,8 @@ h4:hover .headerlink {
|
|
|
758
866
|
}
|
|
759
867
|
|
|
760
868
|
.add-status {
|
|
761
|
-
padding:
|
|
762
|
-
border-radius: var(--radius);
|
|
869
|
+
padding: 8px 12px;
|
|
870
|
+
/* border-radius: var(--radius); -> Handled by global reset */
|
|
763
871
|
font-size: 14px;
|
|
764
872
|
}
|
|
765
873
|
|
|
@@ -771,8 +879,8 @@ h4:hover .headerlink {
|
|
|
771
879
|
|
|
772
880
|
.add-status.success {
|
|
773
881
|
background: var(--accent-light);
|
|
774
|
-
color:
|
|
775
|
-
border: 1px solid
|
|
882
|
+
color: var(--namu-green-dark);
|
|
883
|
+
border: 1px solid var(--namu-green);
|
|
776
884
|
}
|
|
777
885
|
|
|
778
886
|
.add-status.error {
|
|
@@ -784,40 +892,40 @@ h4:hover .headerlink {
|
|
|
784
892
|
/* Usage stats */
|
|
785
893
|
.stats-grid {
|
|
786
894
|
display: flex;
|
|
787
|
-
gap:
|
|
895
|
+
gap: 8px;
|
|
788
896
|
flex-wrap: wrap;
|
|
789
|
-
margin-top:
|
|
897
|
+
margin-top: 10px;
|
|
790
898
|
}
|
|
791
899
|
|
|
792
900
|
.stat-card {
|
|
793
901
|
flex: 1;
|
|
794
|
-
min-width:
|
|
795
|
-
padding:
|
|
902
|
+
min-width: 90px;
|
|
903
|
+
padding: 10px 14px;
|
|
796
904
|
background: var(--bg-alt);
|
|
797
905
|
border: 1px solid var(--border);
|
|
798
|
-
border-radius: var(--radius);
|
|
906
|
+
/* border-radius: var(--radius); -> Handled by global reset */
|
|
799
907
|
text-align: center;
|
|
800
908
|
}
|
|
801
909
|
|
|
802
910
|
.stat-card.accent {
|
|
803
911
|
background: var(--accent-light);
|
|
804
|
-
border-color: var(--
|
|
912
|
+
border-color: var(--namu-green);
|
|
805
913
|
}
|
|
806
914
|
|
|
807
915
|
.stat-value {
|
|
808
|
-
font-size:
|
|
916
|
+
font-size: 18px;
|
|
809
917
|
font-weight: 700;
|
|
810
918
|
color: var(--text);
|
|
811
919
|
}
|
|
812
920
|
|
|
813
921
|
.stat-card.accent .stat-value {
|
|
814
|
-
color:
|
|
922
|
+
color: var(--namu-green-dark);
|
|
815
923
|
}
|
|
816
924
|
|
|
817
925
|
.stat-label {
|
|
818
|
-
font-size:
|
|
926
|
+
font-size: 11px;
|
|
819
927
|
color: var(--text-muted);
|
|
820
|
-
margin-top:
|
|
928
|
+
margin-top: 3px;
|
|
821
929
|
}
|
|
822
930
|
|
|
823
931
|
/* Graph legend */
|
|
@@ -825,7 +933,7 @@ h4:hover .headerlink {
|
|
|
825
933
|
display: inline-block;
|
|
826
934
|
width: 12px;
|
|
827
935
|
height: 12px;
|
|
828
|
-
border-radius: 50%;
|
|
936
|
+
border-radius: 50%; /* Keep for circular dot */
|
|
829
937
|
vertical-align: middle;
|
|
830
938
|
margin-right: 4px;
|
|
831
939
|
}
|
|
@@ -835,7 +943,7 @@ h4:hover .headerlink {
|
|
|
835
943
|
}
|
|
836
944
|
|
|
837
945
|
.legend-dot.concept {
|
|
838
|
-
background:
|
|
946
|
+
background: var(--namu-green);
|
|
839
947
|
}
|
|
840
948
|
|
|
841
949
|
/* Responsive */
|
|
@@ -845,9 +953,9 @@ h4:hover .headerlink {
|
|
|
845
953
|
}
|
|
846
954
|
.content {
|
|
847
955
|
margin-left: 0;
|
|
848
|
-
padding:
|
|
956
|
+
padding: 16px 14px;
|
|
849
957
|
}
|
|
850
958
|
.topbar-search {
|
|
851
|
-
max-width:
|
|
959
|
+
max-width: 180px;
|
|
852
960
|
}
|
|
853
|
-
}
|
|
961
|
+
}
|