@xingwangzhe/stalux 1.36.0 → 1.37.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/README.md +4 -0
- package/package.json +1 -1
- package/src/components/stalux/layout/navs.astro +4 -1
- package/src/components/stalux/posts/WalineComment.astro +7 -1
- package/src/components/stalux/words/wordCard.astro +13 -2
- package/src/components/stalux/words/wordList.astro +1 -13
- package/src/i18n/en.json +3 -1
- package/src/i18n/zh-CN.json +3 -1
- package/src/internal/style-names.generated.ts +99 -95
- package/src/scripts/navigation.ts +20 -0
- package/src/scripts/waline-client.ts +17 -6
- package/src/scripts/waline.ts +18 -0
- package/src/styles/generated-article.css +1 -1
- package/src/styles/generated-waline.css +1 -1
- package/src/styles/generated-words.css +1 -1
- package/src/styles/generated.css +1 -1
- package/src/styles/integrations.css +28 -0
package/README.md
CHANGED
|
@@ -88,6 +88,10 @@ bun run dev
|
|
|
88
88
|
|
|
89
89
|
---
|
|
90
90
|
|
|
91
|
+
Desktop navigation sticks to the top of the viewport and gains a frosted glass background after scrolling past 24px, returning to transparent at the top. The mobile menu button gains the same glass surface while scrolling and stays hidden while its drawer is open. Quote dates provide permalink navigation while content and source links remain independently accessible.
|
|
92
|
+
|
|
93
|
+
Waline loads near the viewport, destroys its instance before Astro swaps the page, and mounts a fresh instance on the next page. A reload-page button recovers from comment resource loading failures, including cached module failures. Comments and inputs use system fonts, with system monospace for code, so user-generated text does not inherit the build-time LXGW WenKai page subset. No additional configuration is required.
|
|
94
|
+
|
|
91
95
|
## ✨ Features
|
|
92
96
|
|
|
93
97
|
- 🌙 **Dark mode** with elegant glassmorphism design
|
package/package.json
CHANGED
|
@@ -15,13 +15,15 @@ const { t } = createTranslator(siteConfig.lang || "zh-CN");
|
|
|
15
15
|
const navs = navsConfig?.items ?? [];
|
|
16
16
|
---
|
|
17
17
|
|
|
18
|
-
<nav aria-label={t("nav.main")}>
|
|
18
|
+
<nav class="stalux-site-nav" data-ref="stalux-site-nav" aria-label={t("nav.main")}>
|
|
19
19
|
<!-- 汉堡菜单按钮 (仅窄屏显示) -->
|
|
20
20
|
<button
|
|
21
21
|
type="button"
|
|
22
22
|
data-ref="stalux-nav-toggle"
|
|
23
23
|
class="stalux-nav-toggle"
|
|
24
24
|
aria-label={t("nav.menu")}
|
|
25
|
+
aria-expanded="false"
|
|
26
|
+
aria-controls="stalux-mobile-navigation"
|
|
25
27
|
>
|
|
26
28
|
{MenuIcon && <MenuIcon size={20} stroke-width={2} class="nav-icon" />}
|
|
27
29
|
</button>
|
|
@@ -44,6 +46,7 @@ const navs = navsConfig?.items ?? [];
|
|
|
44
46
|
</button>
|
|
45
47
|
|
|
46
48
|
<ul
|
|
49
|
+
id="stalux-mobile-navigation"
|
|
47
50
|
data-ref="stalux-nav-list"
|
|
48
51
|
class="stalux-nav-list stalux-u-flex stalux-u-items-center stalux-u-justify-center stalux-u-flex-wrap stalux-u-w-full stalux-u-min-w-0"
|
|
49
52
|
>
|
|
@@ -16,7 +16,7 @@ const { t } = createTranslator(siteConfig.lang || "zh-CN");
|
|
|
16
16
|
// 为客户端脚本准备配置对象:先给默认配置,再用实际传入的 props 覆盖。
|
|
17
17
|
// 这样避免把同一组字段在 Props 接口、解构默认值、init 调用里各写一遍。
|
|
18
18
|
const walineConfig = {
|
|
19
|
-
path:
|
|
19
|
+
path: Astro.url.pathname,
|
|
20
20
|
title: "",
|
|
21
21
|
serverURL: "",
|
|
22
22
|
lang: (siteConfig.lang as string) || "zh-CN",
|
|
@@ -57,6 +57,12 @@ const walineConfig = {
|
|
|
57
57
|
>
|
|
58
58
|
<h2 class="waline-comment-title">{t("comment.title")}</h2>
|
|
59
59
|
<div id="waline-comment" class="waline-comment" data-nosnippet />
|
|
60
|
+
<p data-waline-feedback role="status" hidden>
|
|
61
|
+
{t("comment.loadError")}
|
|
62
|
+
</p>
|
|
63
|
+
<button type="button" class="waline-retry" data-waline-retry hidden>
|
|
64
|
+
{t("comment.retry")}
|
|
65
|
+
</button>
|
|
60
66
|
<div class="comments-seo-notice" style="display:none">
|
|
61
67
|
{t("comment.disclaimer")}
|
|
62
68
|
</div>
|
|
@@ -4,6 +4,7 @@ import "../../../styles/generated-words.css";
|
|
|
4
4
|
import type { CollectionEntry } from "astro:content";
|
|
5
5
|
import { render } from "astro:content";
|
|
6
6
|
|
|
7
|
+
import { Quote } from "@lucide/astro";
|
|
7
8
|
import { toMachineDateTime } from "@utils/semantic-time";
|
|
8
9
|
|
|
9
10
|
interface Props {
|
|
@@ -19,12 +20,22 @@ const machineDate = date && timezone ? toMachineDateTime(date, timezone) : date;
|
|
|
19
20
|
---
|
|
20
21
|
|
|
21
22
|
<article class="stalux-word-card" id={abbrlink ? `word-${abbrlink}` : undefined}>
|
|
23
|
+
<Quote class="stalux-word-mark" size={28} stroke-width={1.4} aria-hidden="true" />
|
|
22
24
|
<div class="stalux-word-body stalux-prose" data-pagefind-body>
|
|
23
25
|
<Content />
|
|
24
26
|
</div>
|
|
25
|
-
{(date || source || sourceDate) && (
|
|
27
|
+
{(date || source || sourceDate || abbrlink) && (
|
|
26
28
|
<footer class="stalux-word-footer">
|
|
27
|
-
{
|
|
29
|
+
{abbrlink ? (
|
|
30
|
+
<a
|
|
31
|
+
href={`#word-${abbrlink}`}
|
|
32
|
+
class="stalux-word-permalink a-none"
|
|
33
|
+
data-word-hash={`#word-${abbrlink}`}
|
|
34
|
+
aria-label={`Jump to ${abbrlink}`}
|
|
35
|
+
>
|
|
36
|
+
{date ? <time datetime={machineDate}>{date}</time> : "#"}
|
|
37
|
+
</a>
|
|
38
|
+
) : date ? (
|
|
28
39
|
<time class="stalux-word-date" datetime={machineDate}>
|
|
29
40
|
{date}
|
|
30
41
|
</time>
|
|
@@ -21,21 +21,9 @@ const sorted = [...entries].sort((a, b) => {
|
|
|
21
21
|
|
|
22
22
|
<ul class="stalux-word-list-list">
|
|
23
23
|
{sorted.map((entry) => {
|
|
24
|
-
const hash = entry.data.abbrlink ? `#word-${entry.data.abbrlink}` : undefined;
|
|
25
24
|
return (
|
|
26
25
|
<li class="stalux-word-list-item">
|
|
27
|
-
{
|
|
28
|
-
<a
|
|
29
|
-
href={hash}
|
|
30
|
-
class="a-none"
|
|
31
|
-
data-word-hash={hash}
|
|
32
|
-
aria-label={`Jump to ${entry.data.abbrlink}`}
|
|
33
|
-
>
|
|
34
|
-
<WordCard entry={entry} timezone={timezone} />
|
|
35
|
-
</a>
|
|
36
|
-
) : (
|
|
37
|
-
<WordCard entry={entry} timezone={timezone} />
|
|
38
|
-
)}
|
|
26
|
+
<WordCard entry={entry} timezone={timezone} />
|
|
39
27
|
</li>
|
|
40
28
|
);
|
|
41
29
|
})}
|
package/src/i18n/en.json
CHANGED
|
@@ -81,7 +81,9 @@
|
|
|
81
81
|
},
|
|
82
82
|
"comment": {
|
|
83
83
|
"title": "Comments",
|
|
84
|
-
"disclaimer": "Comments are user-generated and do not reflect the views of this site."
|
|
84
|
+
"disclaimer": "Comments are user-generated and do not reflect the views of this site.",
|
|
85
|
+
"loadError": "Comment resources failed to load. Please try again.",
|
|
86
|
+
"retry": "Reload page"
|
|
85
87
|
},
|
|
86
88
|
"randomPost": {
|
|
87
89
|
"title": "Random Post",
|
package/src/i18n/zh-CN.json
CHANGED
|
@@ -167,59 +167,62 @@ export const styleNames: { classes: Record<string, string>; variables: Record<st
|
|
|
167
167
|
"stalux-sidebar": "s4j",
|
|
168
168
|
"stalux-sidebar-container": "s4k",
|
|
169
169
|
"stalux-sidebar-right": "s4l",
|
|
170
|
-
"stalux-
|
|
171
|
-
"stalux-social
|
|
172
|
-
"stalux-social-icon
|
|
173
|
-
"stalux-
|
|
174
|
-
"stalux-stats-site-
|
|
175
|
-
"stalux-stats-stats
|
|
176
|
-
"stalux-
|
|
177
|
-
"stalux-tag-
|
|
178
|
-
"stalux-tag-category-
|
|
179
|
-
"stalux-tag-
|
|
180
|
-
"stalux-tag-
|
|
181
|
-
"stalux-tag-page-
|
|
182
|
-
"stalux-
|
|
183
|
-
"stalux-
|
|
184
|
-
"stalux-toc-
|
|
185
|
-
"stalux-toc-depth-
|
|
186
|
-
"stalux-toc-depth-
|
|
187
|
-
"stalux-toc-depth-
|
|
188
|
-
"stalux-toc-depth-
|
|
189
|
-
"stalux-toc-depth-
|
|
190
|
-
"stalux-toc-
|
|
191
|
-
"stalux-toc-
|
|
192
|
-
"stalux-toc-
|
|
193
|
-
"stalux-toc-
|
|
194
|
-
"stalux-
|
|
195
|
-
"stalux-typewriter
|
|
196
|
-
"stalux-typewriter-
|
|
197
|
-
"stalux-typewriter-
|
|
198
|
-
"stalux-
|
|
199
|
-
"stalux-u-flex
|
|
200
|
-
"stalux-u-flex-
|
|
201
|
-
"stalux-u-
|
|
202
|
-
"stalux-u-
|
|
203
|
-
"stalux-u-
|
|
204
|
-
"stalux-u-
|
|
205
|
-
"stalux-u-
|
|
206
|
-
"stalux-
|
|
207
|
-
"stalux-weather
|
|
208
|
-
"stalux-weather-
|
|
209
|
-
"stalux-weather-
|
|
210
|
-
"stalux-weather-
|
|
211
|
-
"stalux-weather-
|
|
212
|
-
"stalux-weather-
|
|
213
|
-
"stalux-
|
|
214
|
-
"stalux-word-
|
|
215
|
-
"stalux-word-
|
|
216
|
-
"stalux-word-
|
|
217
|
-
"stalux-word-
|
|
218
|
-
"stalux-word-list-
|
|
219
|
-
"stalux-word-
|
|
220
|
-
"stalux-word-
|
|
221
|
-
"stalux-word-
|
|
222
|
-
"stalux-word-source-
|
|
170
|
+
"stalux-site-nav": "s4m",
|
|
171
|
+
"stalux-social": "s4n",
|
|
172
|
+
"stalux-social-custom-icon": "s4o",
|
|
173
|
+
"stalux-social-icon-container": "s4p",
|
|
174
|
+
"stalux-stats-site-build-time": "s4q",
|
|
175
|
+
"stalux-stats-site-stats": "s4r",
|
|
176
|
+
"stalux-stats-stats-separator": "s4s",
|
|
177
|
+
"stalux-tag-back-link": "s4t",
|
|
178
|
+
"stalux-tag-category-icon": "s4u",
|
|
179
|
+
"stalux-tag-category-name": "s4v",
|
|
180
|
+
"stalux-tag-header": "s4w",
|
|
181
|
+
"stalux-tag-page-description": "s4x",
|
|
182
|
+
"stalux-tag-page-title": "s4y",
|
|
183
|
+
"stalux-theme-info": "s4z",
|
|
184
|
+
"stalux-toc-active": "s50",
|
|
185
|
+
"stalux-toc-depth-1": "s51",
|
|
186
|
+
"stalux-toc-depth-2": "s52",
|
|
187
|
+
"stalux-toc-depth-3": "s53",
|
|
188
|
+
"stalux-toc-depth-4": "s54",
|
|
189
|
+
"stalux-toc-depth-5": "s55",
|
|
190
|
+
"stalux-toc-depth-6": "s56",
|
|
191
|
+
"stalux-toc-empty": "s57",
|
|
192
|
+
"stalux-toc-item": "s58",
|
|
193
|
+
"stalux-toc-list": "s59",
|
|
194
|
+
"stalux-toc-title": "s5a",
|
|
195
|
+
"stalux-typewriter": "s5b",
|
|
196
|
+
"stalux-typewriter-accessible": "s5c",
|
|
197
|
+
"stalux-typewriter-reserve": "s5d",
|
|
198
|
+
"stalux-typewriter-text": "s5e",
|
|
199
|
+
"stalux-u-flex": "s5f",
|
|
200
|
+
"stalux-u-flex-col": "s5g",
|
|
201
|
+
"stalux-u-flex-wrap": "s5h",
|
|
202
|
+
"stalux-u-items-center": "s5i",
|
|
203
|
+
"stalux-u-justify-center": "s5j",
|
|
204
|
+
"stalux-u-min-w-0": "s5k",
|
|
205
|
+
"stalux-u-text-center": "s5l",
|
|
206
|
+
"stalux-u-w-full": "s5m",
|
|
207
|
+
"stalux-weather": "s5n",
|
|
208
|
+
"stalux-weather-footer": "s5o",
|
|
209
|
+
"stalux-weather-heading": "s5p",
|
|
210
|
+
"stalux-weather-location": "s5q",
|
|
211
|
+
"stalux-weather-main": "s5r",
|
|
212
|
+
"stalux-weather-source": "s5s",
|
|
213
|
+
"stalux-weather-status": "s5t",
|
|
214
|
+
"stalux-word-body": "s5u",
|
|
215
|
+
"stalux-word-card": "s5v",
|
|
216
|
+
"stalux-word-date": "s5w",
|
|
217
|
+
"stalux-word-footer": "s5x",
|
|
218
|
+
"stalux-word-list-item": "s5y",
|
|
219
|
+
"stalux-word-list-list": "s5z",
|
|
220
|
+
"stalux-word-mark": "s60",
|
|
221
|
+
"stalux-word-permalink": "s61",
|
|
222
|
+
"stalux-word-source-date": "s62",
|
|
223
|
+
"stalux-word-source-link": "s63",
|
|
224
|
+
"stalux-word-source-meta": "s64",
|
|
225
|
+
"stalux-word-source-text": "s65"
|
|
223
226
|
},
|
|
224
227
|
"variables": {
|
|
225
228
|
"--accent-20p": "--s0",
|
|
@@ -283,48 +286,49 @@ export const styleNames: { classes: Record<string, string>; variables: Record<st
|
|
|
283
286
|
"--stalux-accent-rgb": "--s1m",
|
|
284
287
|
"--stalux-bg-color": "--s1n",
|
|
285
288
|
"--stalux-bg-filter": "--s1o",
|
|
286
|
-
"--stalux-
|
|
287
|
-
"--
|
|
288
|
-
"--surface-glass
|
|
289
|
-
"--
|
|
290
|
-
"--tag-bg
|
|
291
|
-
"--
|
|
292
|
-
"--tl-
|
|
293
|
-
"--
|
|
294
|
-
"--transition-
|
|
295
|
-
"--transition-
|
|
296
|
-
"--transition-
|
|
297
|
-
"--transition-
|
|
298
|
-
"--transition-
|
|
299
|
-
"--
|
|
300
|
-
"--un-rotate
|
|
301
|
-
"--un-rotate-
|
|
302
|
-
"--un-rotate-
|
|
303
|
-
"--un-
|
|
304
|
-
"--un-scale-
|
|
305
|
-
"--un-scale-
|
|
306
|
-
"--un-
|
|
307
|
-
"--un-skew-
|
|
308
|
-
"--un-
|
|
309
|
-
"--un-translate-
|
|
310
|
-
"--un-translate-
|
|
311
|
-
"--
|
|
312
|
-
"--updated-
|
|
313
|
-
"--
|
|
314
|
-
"--white-
|
|
315
|
-
"--white-
|
|
316
|
-
"--white-
|
|
317
|
-
"--white-
|
|
318
|
-
"--white-
|
|
319
|
-
"--white-
|
|
320
|
-
"--white-
|
|
321
|
-
"--white-
|
|
322
|
-
"--white-
|
|
323
|
-
"--white-
|
|
324
|
-
"--white-
|
|
325
|
-
"--white-
|
|
326
|
-
"--white-
|
|
327
|
-
"--white-
|
|
289
|
+
"--stalux-nav-offset": "--s1p",
|
|
290
|
+
"--stalux-text-shadow": "--s1q",
|
|
291
|
+
"--surface-glass": "--s1r",
|
|
292
|
+
"--surface-glass-shadow": "--s1s",
|
|
293
|
+
"--tag-bg": "--s1t",
|
|
294
|
+
"--tag-bg-hover": "--s1u",
|
|
295
|
+
"--tl-line": "--s1v",
|
|
296
|
+
"--tl-pad": "--s1w",
|
|
297
|
+
"--transition-fast": "--s1x",
|
|
298
|
+
"--transition-medium": "--s1y",
|
|
299
|
+
"--transition-normal": "--s1z",
|
|
300
|
+
"--transition-slow": "--s20",
|
|
301
|
+
"--transition-slower": "--s21",
|
|
302
|
+
"--transition-slowest": "--s22",
|
|
303
|
+
"--un-rotate": "--s23",
|
|
304
|
+
"--un-rotate-x": "--s24",
|
|
305
|
+
"--un-rotate-y": "--s25",
|
|
306
|
+
"--un-rotate-z": "--s26",
|
|
307
|
+
"--un-scale-x": "--s27",
|
|
308
|
+
"--un-scale-y": "--s28",
|
|
309
|
+
"--un-scale-z": "--s29",
|
|
310
|
+
"--un-skew-x": "--s2a",
|
|
311
|
+
"--un-skew-y": "--s2b",
|
|
312
|
+
"--un-translate-x": "--s2c",
|
|
313
|
+
"--un-translate-y": "--s2d",
|
|
314
|
+
"--un-translate-z": "--s2e",
|
|
315
|
+
"--updated-bg": "--s2f",
|
|
316
|
+
"--updated-border": "--s2g",
|
|
317
|
+
"--white-05p": "--s2h",
|
|
318
|
+
"--white-10p": "--s2i",
|
|
319
|
+
"--white-15p": "--s2j",
|
|
320
|
+
"--white-20p": "--s2k",
|
|
321
|
+
"--white-30p": "--s2l",
|
|
322
|
+
"--white-50p": "--s2m",
|
|
323
|
+
"--white-60p": "--s2n",
|
|
324
|
+
"--white-70p": "--s2o",
|
|
325
|
+
"--white-75p": "--s2p",
|
|
326
|
+
"--white-78p": "--s2q",
|
|
327
|
+
"--white-80p": "--s2r",
|
|
328
|
+
"--white-85p": "--s2s",
|
|
329
|
+
"--white-90p": "--s2t",
|
|
330
|
+
"--white-95p": "--s2u",
|
|
331
|
+
"--white-full": "--s2v"
|
|
328
332
|
},
|
|
329
333
|
"animations": {
|
|
330
334
|
"fadeInUpComment": "k0",
|
|
@@ -31,6 +31,7 @@ async function openSearchDialog(signal: AbortSignal): Promise<void> {
|
|
|
31
31
|
}
|
|
32
32
|
|
|
33
33
|
registerPageLifecycle("navigation", () => {
|
|
34
|
+
const siteNav = document.querySelector<HTMLElement>("[data-ref='stalux-site-nav']");
|
|
34
35
|
const navList = document.querySelector<HTMLElement>("[data-ref='stalux-nav-list']");
|
|
35
36
|
const navToggle = document.querySelector<HTMLElement>("[data-ref='stalux-nav-toggle']");
|
|
36
37
|
const navOverlay = document.querySelector<HTMLElement>("[data-ref='stalux-nav-overlay']");
|
|
@@ -45,13 +46,27 @@ registerPageLifecycle("navigation", () => {
|
|
|
45
46
|
let needsScale = true;
|
|
46
47
|
const mobileNav = window.matchMedia("(max-width: 600px)");
|
|
47
48
|
|
|
49
|
+
const updateNavSurface = () => {
|
|
50
|
+
siteNav?.toggleAttribute("data-scrolled", window.scrollY > 24);
|
|
51
|
+
navToggle?.toggleAttribute("data-scrolled", window.scrollY > 24);
|
|
52
|
+
};
|
|
53
|
+
window.addEventListener("scroll", updateNavSurface, {
|
|
54
|
+
passive: true,
|
|
55
|
+
signal: controller.signal,
|
|
56
|
+
});
|
|
57
|
+
updateNavSurface();
|
|
58
|
+
|
|
48
59
|
const closeNav = () => {
|
|
49
60
|
navList.removeAttribute("data-state");
|
|
61
|
+
navToggle?.removeAttribute("data-state");
|
|
62
|
+
navToggle?.setAttribute("aria-expanded", "false");
|
|
50
63
|
navOverlay?.removeAttribute("data-state");
|
|
51
64
|
document.body.style.overflow = "";
|
|
52
65
|
};
|
|
53
66
|
const openNav = () => {
|
|
54
67
|
navList.dataset.state = "open";
|
|
68
|
+
navToggle?.setAttribute("data-state", "open");
|
|
69
|
+
navToggle?.setAttribute("aria-expanded", "true");
|
|
55
70
|
navOverlay?.setAttribute("data-state", "show");
|
|
56
71
|
document.body.style.overflow = "hidden";
|
|
57
72
|
};
|
|
@@ -60,6 +75,8 @@ registerPageLifecycle("navigation", () => {
|
|
|
60
75
|
// Read layout before writing styles or attributes. Scrolling does not
|
|
61
76
|
// change item sizes, so only resize events need to recalculate scale.
|
|
62
77
|
const { clientWidth, scrollWidth, scrollLeft } = navList;
|
|
78
|
+
const navOffset = !mobileNav.matches && siteNav ? siteNav.offsetHeight + 16 : 0;
|
|
79
|
+
document.documentElement.style.setProperty("--stalux-nav-offset", `${navOffset}px`);
|
|
63
80
|
let nextScale = lastScale;
|
|
64
81
|
if (needsScale) {
|
|
65
82
|
needsScale = false;
|
|
@@ -97,6 +114,8 @@ registerPageLifecycle("navigation", () => {
|
|
|
97
114
|
if (!frameId) frameId = requestAnimationFrame(updateButtons);
|
|
98
115
|
};
|
|
99
116
|
const scheduleResize = () => {
|
|
117
|
+
if (!mobileNav.matches) closeNav();
|
|
118
|
+
updateNavSurface();
|
|
100
119
|
needsScale = true;
|
|
101
120
|
scheduleUpdate();
|
|
102
121
|
};
|
|
@@ -153,5 +172,6 @@ registerPageLifecycle("navigation", () => {
|
|
|
153
172
|
resizeObserver.disconnect();
|
|
154
173
|
if (frameId) cancelAnimationFrame(frameId);
|
|
155
174
|
closeNav();
|
|
175
|
+
document.documentElement.style.removeProperty("--stalux-nav-offset");
|
|
156
176
|
};
|
|
157
177
|
});
|
|
@@ -12,12 +12,23 @@ export function mountWaline(config: Record<string, unknown>, element: HTMLElemen
|
|
|
12
12
|
...config,
|
|
13
13
|
el: element,
|
|
14
14
|
serverURL: config.serverURL,
|
|
15
|
-
path:
|
|
15
|
+
path:
|
|
16
|
+
typeof config.path === "string" && config.path.trim()
|
|
17
|
+
? config.path
|
|
18
|
+
: window.location.pathname,
|
|
16
19
|
} as WalineInitOptions;
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
20
|
+
try {
|
|
21
|
+
const instance = init(options);
|
|
22
|
+
if (!instance || instance.el !== element) throw new Error("Waline mount failed");
|
|
23
|
+
return () => {
|
|
24
|
+
try {
|
|
25
|
+
instance.destroy();
|
|
26
|
+
} finally {
|
|
27
|
+
style.remove();
|
|
28
|
+
}
|
|
29
|
+
};
|
|
30
|
+
} catch (error) {
|
|
21
31
|
style.remove();
|
|
22
|
-
|
|
32
|
+
throw error;
|
|
33
|
+
}
|
|
23
34
|
}
|
package/src/scripts/waline.ts
CHANGED
|
@@ -29,11 +29,19 @@ registerPageLifecycle("waline", () => {
|
|
|
29
29
|
return;
|
|
30
30
|
}
|
|
31
31
|
|
|
32
|
+
const retry = container.querySelector<HTMLButtonElement>("[data-waline-retry]");
|
|
33
|
+
const feedback = container.querySelector<HTMLElement>("[data-waline-feedback]");
|
|
34
|
+
let loading = false;
|
|
32
35
|
let disposed = false;
|
|
33
36
|
let destroy: (() => void) | undefined;
|
|
34
37
|
let observer: IntersectionObserver | undefined;
|
|
35
38
|
|
|
36
39
|
const load = () => {
|
|
40
|
+
if (disposed || loading || destroy) return;
|
|
41
|
+
loading = true;
|
|
42
|
+
container.setAttribute("aria-busy", "true");
|
|
43
|
+
if (retry) retry.hidden = true;
|
|
44
|
+
if (feedback) feedback.hidden = true;
|
|
37
45
|
observer?.disconnect();
|
|
38
46
|
observer = undefined;
|
|
39
47
|
void import("./waline-client")
|
|
@@ -43,11 +51,20 @@ registerPageLifecycle("waline", () => {
|
|
|
43
51
|
logger.debug("comment widget initialized near viewport");
|
|
44
52
|
})
|
|
45
53
|
.catch((error) => {
|
|
54
|
+
if (disposed) return;
|
|
55
|
+
if (retry) retry.hidden = false;
|
|
56
|
+
if (feedback) feedback.hidden = false;
|
|
46
57
|
logger.warn(
|
|
47
58
|
`comment assets failed to load (${error instanceof Error ? error.name : "unknown error"})`,
|
|
48
59
|
);
|
|
60
|
+
})
|
|
61
|
+
.finally(() => {
|
|
62
|
+
loading = false;
|
|
63
|
+
if (!disposed) container.removeAttribute("aria-busy");
|
|
49
64
|
});
|
|
50
65
|
};
|
|
66
|
+
const reloadPage = () => window.location.reload();
|
|
67
|
+
retry?.addEventListener("click", reloadPage);
|
|
51
68
|
|
|
52
69
|
if ("IntersectionObserver" in window) {
|
|
53
70
|
observer = new IntersectionObserver(
|
|
@@ -64,6 +81,7 @@ registerPageLifecycle("waline", () => {
|
|
|
64
81
|
return () => {
|
|
65
82
|
disposed = true;
|
|
66
83
|
observer?.disconnect();
|
|
84
|
+
retry?.removeEventListener("click", reloadPage);
|
|
67
85
|
destroy?.();
|
|
68
86
|
};
|
|
69
87
|
});
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
@layer theme, base, components, utilities;
|
|
2
|
-
@layer components{.stalux-article{box-shadow:var(--surface-glass-shadow);box-sizing:border-box;background:var(--surface-glass);border-radius:18px;flex-direction:column;flex:1;width:100%;min-width:0;max-width:100%;min-height:100vh;padding:clamp(1rem,2vw,2rem);display:flex}.stalux-byline-author-bio{border-top:var(--border-thin) solid var(--white-10p);margin:var(--space-md) 0 0;width:100%;padding-top:var(--space-md);text-align:center;color:var(--white-70p);line-height:1.6;font-size:var(--font-size-small)}.stalux-byline-author-card{background:var(--black-05p);border-radius:var(--radius-lg);padding:var(--space-md);box-shadow:var(--card-box-shadow);flex-direction:column;display:flex}.stalux-license-box{border:var(--border-thin) solid var(--white-20p);margin:var(--space-lg) auto;border-radius:var(--radius-md);background-color:var(--black-10p);max-width:80%;padding:var(--space-lg);position:relative;overflow:hidden}.stalux-license-watermark{opacity:.15;transition:opacity var(--transition-normal);pointer-events:none;z-index:1;position:absolute;bottom:.5rem;right:.5rem}.stalux-pagination{border-top:var(--border-thin) solid var(--white-20p);border-bottom:var(--border-thin) solid var(--white-20p);margin:var(--space-lg) 0;width:100%;padding-top:var(--space-lg);padding-bottom:var(--space-lg)}.stalux-pagination-arrow{color:var(--white-70p);flex-shrink:0;justify-content:center;align-items:center;transition:translate .18s;display:flex}.stalux-pagination-label{margin-bottom:var(--space-xs);color:var(--accent-90p);font-weight:500;font-size:var(--font-size-small)}.stalux-pagination-link{background:var(--black-10p);outline:1px solid var(--white-10p);outline-offset:0;box-shadow:var(--shadow-sidebar);box-sizing:border-box;align-items:center;gap:var(--space-sm);border-radius:var(--radius-md);min-width:0;padding:var(--space-md);color:var(--white-90p);flex:1 1 0;text-decoration:none;transition:background-color .18s,outline-color .18s;display:flex;position:relative}.stalux-pagination-title{text-overflow:ellipsis;white-space:nowrap;max-width:100%;color:var(--white-90p);font-size:var(--font-size-base);overflow:hidden}.stalux-post-article-footer{border-top:1px solid var(--white-10p);margin-top:3rem;padding-top:2rem}.stalux-post-article-header{border-bottom:1px solid var(--white-10p);margin-bottom:3rem;padding-bottom:2rem}.stalux-post-body{box-sizing:border-box;flex:1;width:min(840px,100%);min-width:0;max-width:100%;margin:0 auto;padding:0 0 2rem}.stalux-post-layout{box-sizing:border-box;flex:1;grid-template-columns:280px minmax(0,1fr) 280px;gap:1.5rem;width:100%;min-width:0;max-width:1544px;margin:0 auto;padding:1.5rem 1rem;display:grid}.stalux-post-meta-item{transition:color var(--transition-fast);align-items:center;gap:.5rem;display:inline-flex}.stalux-post-meta-row{flex-basis:100%;justify-content:center;display:flex}.stalux-post-metadata{color:#ffffffb3;flex-wrap:wrap;justify-content:center;gap:1.5rem;font-size:.95rem;display:flex}.stalux-post-page-stats{border-top:1px solid var(--white-10p);color:#ffffffb3;justify-content:center;align-items:center;gap:1rem;margin-top:1rem;padding-top:.8rem;font-size:.9rem;display:flex}.stalux-post-reading-time{align-items:center;gap:.3rem;display:inline-flex}.stalux-post-source-link{background:var(--white-10p);border-top:1px solid var(--white-20p);border-right:1px solid var(--white-20p);border-left:1px solid var(--white-20p);transition:background var(--transition-fast), transform var(--transition-fast);border-radius:var(--radius-full,999px);color:var(--white-full);border-bottom:0;align-items:center;gap:.4rem;padding:.5rem 1.1rem;font-size:.85rem;font-weight:500;text-decoration:none;display:inline-flex}.stalux-post-taxonomy-item-column{background:var(--white-05p);border-left:var(--border-thick) solid var(--accent-60p);transition:color var(--transition-medium), transform var(--transition-medium);border-radius:0 var(--radius-sm) var(--radius-sm) 0;padding:var(--space-sm) var(--space-xs);color:var(--white-80p);font-size:var(--font-size-small);text-decoration:none;display:inline-flex;transform:translate(0)}.stalux-post-taxonomy-item-pill{background:var(--white-10p);transition:color var(--transition-medium), transform var(--transition-medium);white-space:nowrap;border-radius:var(--radius-full);color:var(--white-85p);font-size:var(--font-size-smaller);border:none;padding:.4rem .8rem;text-decoration:none;display:inline-block;transform:translateY(0)}.stalux-post-taxonomy-title{border-bottom:var(--border-thin) solid var(--white-20p);padding-bottom:var(--space-sm);color:var(--white-90p);font-weight:600;font-size:var(--font-size-base);margin:0}.stalux-post-title{overflow-wrap:anywhere;text-align:center;color:var(--white-full);text-shadow:var(--stalux-text-shadow);margin:0 0 1.5rem;font-size:2.5rem;font-weight:700;line-height:1.2}.stalux-random-container{transition:background-color .3s,border-color .3s}.stalux-random-header{border-bottom:2px solid #0000000d;justify-content:space-between;align-items:center;margin-bottom:1em;padding-bottom:.75em;display:flex}.stalux-random-list{flex-direction:column;gap:.75em;margin:0;padding:0;list-style-type:none;transition:opacity .3s;display:flex}.stalux-random-refresh{cursor:pointer;width:2em;height:2em;color:var(--foreground-60p,#333);background:0 0;border:none;border-radius:.375em;justify-content:center;align-items:center;padding:0;transition:color .2s;display:flex}.stalux-sidebar-container{box-shadow:var(--surface-glass-shadow);padding:var(--space-md);background:var(--surface-glass);border-radius:14px;flex-direction:column;transition:box-shadow .22s,background-color .22s;display:flex}.stalux-sidebar-right{scroll-padding-bottom:8rem}.stalux-toc-item{border-left:var(--border-thick) solid transparent;transition:color var(--transition-medium), background-color var(--transition-medium), border-left-color var(--transition-medium), transform var(--transition-medium);overflow-wrap:anywhere;border-radius:0 var(--radius-sm) var(--radius-sm) 0;padding:var(--space-sm) var(--space-xs);color:var(--white-70p);line-height:1.4;font-size:var(--font-size-small);text-decoration:none;display:block}.stalux-toc-title{border-bottom:var(--border-thin) solid var(--white-20p);margin:0 0 var(--space-xs);padding-bottom:var(--space-sm);color:var(--white-90p);font-weight:600;font-size:var(--font-size-base)}.stalux-license-content{z-index:2;position:relative}.stalux-random-title{color:var(--foreground-60p,#333);margin:0;font-size:1.1em;font-weight:600}.stalux-toc-list{gap:var(--space-sm);flex-direction:column;margin:0;padding:0;list-style-type:none;display:flex}.stalux-license-title{margin-top:0;margin-bottom:var(--space-sm);color:var(--white-90p);font-size:var(--font-size-subtitle)}.stalux-post-source-link-row{justify-content:center;margin-top:1.2rem;display:flex}.stalux-byline-author-section{width:100%}.stalux-license-icon{justify-content:center;align-items:center;width:120px;height:120px;display:flex}.stalux-pagination-content{flex-direction:column;min-width:0;display:flex;overflow:hidden}.stalux-post-page{flex-direction:column;width:100%;min-height:100vh;display:flex}.stalux-byline-sidebar-container,.stalux-post-footer-content{gap:var(--space-lg);flex-direction:column;display:flex}.stalux-pagination-inner{justify-content:space-between;gap:var(--space-md);display:flex}.stalux-post-taxonomy-container{gap:var(--space-xs);flex-direction:column;display:flex}.stalux-post-taxonomy-list-column{flex-direction:column}.stalux-post-taxonomy-list-wrap{flex-wrap:wrap}.stalux-post-taxonomy-empty{padding:var(--space-md) 0;text-align:center;color:var(--white-50p);font-size:var(--font-size-small)}.stalux-random-error{color:var(--accent-60p,#e74c3c)}.stalux-toc-empty{color:var(--white-60p);font-size:var(--font-size-small)}.stalux-sidebar .stalux-author-figure,.stalux-post-layout>:first-child,.stalux-post-layout>:nth-child(3){margin:0}.stalux-sidebar .stalux-author-figure figcaption{font-size:1.75rem}.stalux-sidebar-right #stalux-date-date-time #stalux-date-date{white-space:nowrap;font-size:1.5rem}.stalux-sidebar-right #stalux-date-date-time #stalux-date-time{white-space:nowrap;font-size:2.25rem}.stalux-random-refresh:active{opacity:.7}.stalux-random-refresh svg{width:1em;height:1em}.stalux-random-refresh.stalux-random-rotating svg{animation:.6s linear stalux-random-spin}.stalux-random-loading,.stalux-random-error,.stalux-random-no-more{text-align:center;color:var(--foreground-60p,#666);padding:1em;font-size:.95em}.stalux-random-list>li>a{color:var(--foreground-60p,#333);overflow-wrap:anywhere;background:0 0;border-radius:.375em;padding:.75em 1em;text-decoration:none;transition:color .2s,transform .2s;display:block}.stalux-random-list>li>a:active,.stalux-post-taxonomy-item-column:active,.stalux-post-taxonomy-item-pill:active{background:var(--white-05p)}.stalux-toc-item:active,.stalux-toc-item.stalux-toc-active{color:var(--accent-90p);background-color:var(--accent-20p);border-left-color:var(--accent-80p);font-weight:500}.stalux-toc-depth-1{padding-left:var(--space-xs)}.stalux-toc-depth-2{padding-left:var(--space-lg);font-size:var(--font-size-smaller)}.stalux-toc-depth-3{font-size:var(--font-size-tiny);padding-left:2.25rem}.stalux-toc-depth-4,.stalux-toc-depth-5,.stalux-toc-depth-6{padding-left:var(--space-2xl);color:var(--white-60p);font-size:.75rem}:is(.stalux-post-taxonomy-list,.stalux-post-taxonomy-list-column,.stalux-post-taxonomy-list-wrap){gap:var(--space-sm);display:flex}:is(.stalux-sidebar,.stalux-sidebar-right){box-sizing:border-box;gap:var(--space-lg);width:100%;min-width:0;height:fit-content;max-height:calc(100vh - 40px);padding:var(--space-lg) 0;scrollbar-width:none;-ms-overflow-style:none;flex-direction:column;display:flex;position:sticky;top:20px;overflow-y:auto}:is(.stalux-sidebar,.stalux-sidebar-right)::-webkit-scrollbar,.stalux-pagination-link:before,.stalux-pagination-link:after{display:none}a.stalux-pagination-link:focus-visible{background:var(--white-05p);outline-color:var(--accent-50p);outline:2px solid var(--stalux-accent-color);outline-offset:3px}a.stalux-pagination-prev-post:focus-visible .stalux-pagination-arrow{translate:-2px}a.stalux-pagination-next-post:focus-visible .stalux-pagination-arrow{translate:2px}.stalux-pagination-link.stalux-pagination-disabled{pointer-events:none;opacity:.5;cursor:not-allowed;background:var(--black-15p)}.stalux-pagination-link.stalux-pagination-prev-post{text-align:left;margin-left:var(--space-xs)}.stalux-pagination-link.stalux-pagination-next-post{text-align:right;margin-right:var(--space-xs);justify-content:flex-end}.stalux-post-layout>:nth-child(2){min-width:0;margin:0}.stalux-post-layout :focus-visible{outline:2px solid var(--accent-80p);outline-offset:2px}.stalux-post-page-stats span{align-items:center;gap:.3rem;display:inline-flex}#stalux-post-vercount_value_page_pv{color:#ffffffb3;font-weight:600}#stalux-post-vercount_container_page_pv{transition:opacity .3s}.stalux-post-source-link:focus,.stalux-post-source-link:active{background:var(--accent,#fff2);border-top-color:var(--accent,#fff4);border-right-color:var(--accent,#fff4);border-left-color:var(--accent,#fff4);text-decoration:none}.stalux-post-source-link:after{display:none!important}.stalux-license-author,.stalux-license-url,.stalux-license-license{margin:var(--space-sm) 0;line-height:1.6;font-size:var(--font-size-small);color:var(--white-80p)}.stalux-license-box a{color:var(--accent-90p);transition:color var(--transition-normal), border-bottom-color var(--transition-normal);border-bottom:1px dashed var(--accent-50p);padding-bottom:1px;text-decoration:none;position:relative}.stalux-license-box a:active{color:var(--accent-70p)}.stalux-license-icon svg{width:100%;height:100%;display:block}.stalux-license-icon path{color:var(--white-full);fill:currentColor}@media (hover:hover) and (pointer:fine){.stalux-random-refresh:hover{color:var(--accent-60p,#06c)}.stalux-random-list>li>a:hover,.stalux-toc-item:hover,.stalux-post-taxonomy-item-column:hover,.stalux-post-taxonomy-item-pill:hover{background:var(--white-05p)}a.stalux-pagination-link:hover{background:var(--white-05p);outline-color:var(--accent-50p)}a.stalux-pagination-prev-post:hover .stalux-pagination-arrow{translate:-2px}a.stalux-pagination-next-post:hover .stalux-pagination-arrow{translate:2px}.stalux-post-source-link:hover{background:var(--accent,#fff2);border-top-color:var(--accent,#fff4);border-right-color:var(--accent,#fff4);border-left-color:var(--accent,#fff4);text-decoration:none}.stalux-license-box a:hover{color:var(--stalux-accent-color);border-bottom-color:var(--accent-80p)}.stalux-license-box:hover .stalux-license-watermark{opacity:.25}}@media (prefers-color-scheme:dark){.stalux-random-header{border-bottom-color:#ffffff1a}.stalux-random-title,.stalux-random-refresh,.stalux-random-list>li>a{color:var(--foreground-60p,#e0e0e0)}.stalux-random-loading,.stalux-random-error,.stalux-random-no-more{color:var(--foreground-60p,#b0b0b0)}}@media (prefers-contrast:more){.stalux-post-layout{gap:2rem}}@media (width<=1599px){:is(.stalux-sidebar,.stalux-sidebar-right){display:none}.stalux-post-layout{grid-template-columns:minmax(0,1fr);max-width:936px}}@media (width<=1024px){.stalux-post-title{font-size:2rem}.stalux-post-metadata{gap:1rem}}@media (width<=768px){:is(.stalux-sidebar,.stalux-sidebar-right),.stalux-sidebar-right{display:none}.stalux-pagination{margin:var(--space-md) 0}.stalux-pagination-inner{gap:var(--space-sm)}.stalux-pagination-link{padding:var(--space-sm) var(--space-md);flex-direction:column;justify-content:center;align-items:flex-start;min-height:120px}.stalux-pagination-link.stalux-pagination-next-post{align-items:flex-end}.stalux-pagination-arrow{transform:scale(.85)}.stalux-pagination-label{margin-bottom:var(--space-xs);font-size:.75rem}.stalux-pagination-title{max-width:100%;font-size:var(--font-size-small);white-space:normal}.stalux-post-page{padding:0}.stalux-post-layout{flex-direction:column;gap:2rem;margin:0;padding:0;display:flex}.stalux-post-layout>:nth-child(2){order:1}.stalux-post-layout>:first-child{order:2}.stalux-post-layout>:nth-child(3){order:3}.stalux-article{box-sizing:border-box;width:100%;box-shadow:none;background:0 0;margin:0;padding:clamp(1rem,2vw,2rem)}.stalux-post-body{width:100%;margin:0;padding:0 0 2rem}.stalux-post-article-header{margin-bottom:2rem;padding:1rem 1rem 0}.stalux-post-title{font-size:1.75rem}.stalux-post-metadata{flex-direction:column;gap:.75rem;font-size:.85rem}.stalux-post-article-footer{margin-top:2rem;padding-top:1.5rem}.stalux-post-page-stats{min-block-size:calc(3lh + .8rem + 1px);margin-top:.8rem;padding-top:.6rem;font-size:.85rem}.stalux-license-box{max-width:95%;padding:var(--space-md);margin:var(--space-md) auto}.stalux-license-title{margin-bottom:var(--space-xs);font-size:var(--font-size-base)}.stalux-license-author,.stalux-license-url,.stalux-license-license{margin:var(--space-xs) 0;font-size:.85rem}.stalux-license-icon{width:80px;height:80px}}@media (width<=480px){.stalux-pagination{margin:var(--space-md) 0}.stalux-pagination-inner{gap:var(--space-sm);flex-direction:column}.stalux-pagination-link{width:100%;padding:var(--space-sm) var(--space-md);justify-content:flex-start;align-items:center;gap:var(--space-md);flex-direction:row;min-height:100px}.stalux-pagination-link.stalux-pagination-prev-post,.stalux-pagination-link.stalux-pagination-next-post{text-align:left;align-items:center;margin-left:0;margin-right:0}.stalux-pagination-link.stalux-pagination-next-post{justify-content:flex-start}.stalux-pagination-title{white-space:normal}.stalux-post-layout{gap:1.25rem;padding:0}.stalux-license-box{max-width:100%;padding:var(--space-sm);margin:var(--space-md) 0}.stalux-license-title{margin-bottom:var(--space-2xs);font-size:var(--font-size-small)}.stalux-license-author,.stalux-license-url,.stalux-license-license{margin:var(--space-2xs) 0;font-size:.8rem}.stalux-license-icon{width:60px;height:60px}}@media (prefers-reduced-motion:reduce){.stalux-post-page *{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{.stalux-post-layout{grid-template-columns:1fr;gap:2rem}.stalux-post-layout>:first-child,.stalux-post-layout>:nth-child(3){display:none}}}@layer utilities,theme,base;
|
|
2
|
+
@layer components{.stalux-article{box-shadow:var(--surface-glass-shadow);box-sizing:border-box;background:var(--surface-glass);border-radius:18px;flex-direction:column;flex:1;width:100%;min-width:0;max-width:100%;min-height:100vh;padding:clamp(1rem,2vw,2rem);display:flex}.stalux-byline-author-bio{border-top:var(--border-thin) solid var(--white-10p);margin:var(--space-md) 0 0;width:100%;padding-top:var(--space-md);text-align:center;color:var(--white-70p);line-height:1.6;font-size:var(--font-size-small)}.stalux-byline-author-card{background:var(--black-05p);border-radius:var(--radius-lg);padding:var(--space-md);box-shadow:var(--card-box-shadow);flex-direction:column;display:flex}.stalux-license-box{border:var(--border-thin) solid var(--white-20p);margin:var(--space-lg) auto;border-radius:var(--radius-md);background-color:var(--black-10p);max-width:80%;padding:var(--space-lg);position:relative;overflow:hidden}.stalux-license-watermark{opacity:.15;transition:opacity var(--transition-normal);pointer-events:none;z-index:1;position:absolute;bottom:.5rem;right:.5rem}.stalux-pagination{border-top:var(--border-thin) solid var(--white-20p);border-bottom:var(--border-thin) solid var(--white-20p);margin:var(--space-lg) 0;width:100%;padding-top:var(--space-lg);padding-bottom:var(--space-lg)}.stalux-pagination-arrow{color:var(--white-70p);flex-shrink:0;justify-content:center;align-items:center;transition:translate .18s;display:flex}.stalux-pagination-label{margin-bottom:var(--space-xs);color:var(--accent-90p);font-weight:500;font-size:var(--font-size-small)}.stalux-pagination-link{background:var(--black-10p);outline:1px solid var(--white-10p);outline-offset:0;box-shadow:var(--shadow-sidebar);box-sizing:border-box;align-items:center;gap:var(--space-sm);border-radius:var(--radius-md);min-width:0;padding:var(--space-md);color:var(--white-90p);flex:1 1 0;text-decoration:none;transition:background-color .18s,outline-color .18s;display:flex;position:relative}.stalux-pagination-title{text-overflow:ellipsis;white-space:nowrap;max-width:100%;color:var(--white-90p);font-size:var(--font-size-base);overflow:hidden}.stalux-post-article-footer{border-top:1px solid var(--white-10p);margin-top:3rem;padding-top:2rem}.stalux-post-article-header{border-bottom:1px solid var(--white-10p);margin-bottom:3rem;padding-bottom:2rem}.stalux-post-body{box-sizing:border-box;flex:1;width:min(840px,100%);min-width:0;max-width:100%;margin:0 auto;padding:0 0 2rem}.stalux-post-layout{box-sizing:border-box;flex:1;grid-template-columns:280px minmax(0,1fr) 280px;gap:1.5rem;width:100%;min-width:0;max-width:1544px;margin:0 auto;padding:1.5rem 1rem;display:grid}.stalux-post-meta-item{transition:color var(--transition-fast);align-items:center;gap:.5rem;display:inline-flex}.stalux-post-meta-row{flex-basis:100%;justify-content:center;display:flex}.stalux-post-metadata{color:#ffffffb3;flex-wrap:wrap;justify-content:center;gap:1.5rem;font-size:.95rem;display:flex}.stalux-post-page-stats{border-top:1px solid var(--white-10p);color:#ffffffb3;justify-content:center;align-items:center;gap:1rem;margin-top:1rem;padding-top:.8rem;font-size:.9rem;display:flex}.stalux-post-reading-time{align-items:center;gap:.3rem;display:inline-flex}.stalux-post-source-link{background:var(--white-10p);border-top:1px solid var(--white-20p);border-right:1px solid var(--white-20p);border-left:1px solid var(--white-20p);transition:background var(--transition-fast), transform var(--transition-fast);border-radius:var(--radius-full,999px);color:var(--white-full);border-bottom:0;align-items:center;gap:.4rem;padding:.5rem 1.1rem;font-size:.85rem;font-weight:500;text-decoration:none;display:inline-flex}.stalux-post-taxonomy-item-column{background:var(--white-05p);border-left:var(--border-thick) solid var(--accent-60p);transition:color var(--transition-medium), transform var(--transition-medium);border-radius:0 var(--radius-sm) var(--radius-sm) 0;padding:var(--space-sm) var(--space-xs);color:var(--white-80p);font-size:var(--font-size-small);text-decoration:none;display:inline-flex;transform:translate(0)}.stalux-post-taxonomy-item-pill{background:var(--white-10p);transition:color var(--transition-medium), transform var(--transition-medium);white-space:nowrap;border-radius:var(--radius-full);color:var(--white-85p);font-size:var(--font-size-smaller);border:none;padding:.4rem .8rem;text-decoration:none;display:inline-block;transform:translateY(0)}.stalux-post-taxonomy-title{border-bottom:var(--border-thin) solid var(--white-20p);padding-bottom:var(--space-sm);color:var(--white-90p);font-weight:600;font-size:var(--font-size-base);margin:0}.stalux-post-title{overflow-wrap:anywhere;text-align:center;color:var(--white-full);text-shadow:var(--stalux-text-shadow);margin:0 0 1.5rem;font-size:2.5rem;font-weight:700;line-height:1.2}.stalux-random-container{transition:background-color .3s,border-color .3s}.stalux-random-header{border-bottom:2px solid #0000000d;justify-content:space-between;align-items:center;margin-bottom:1em;padding-bottom:.75em;display:flex}.stalux-random-list{flex-direction:column;gap:.75em;margin:0;padding:0;list-style-type:none;transition:opacity .3s;display:flex}.stalux-random-refresh{cursor:pointer;width:2em;height:2em;color:var(--foreground-60p,#333);background:0 0;border:none;border-radius:.375em;justify-content:center;align-items:center;padding:0;transition:color .2s;display:flex}.stalux-sidebar-container{box-shadow:var(--surface-glass-shadow);padding:var(--space-md);background:var(--surface-glass);border-radius:14px;flex-direction:column;transition:box-shadow .22s,background-color .22s;display:flex}.stalux-sidebar-right{scroll-padding-bottom:8rem}.stalux-toc-item{border-left:var(--border-thick) solid transparent;transition:color var(--transition-medium), background-color var(--transition-medium), border-left-color var(--transition-medium), transform var(--transition-medium);overflow-wrap:anywhere;border-radius:0 var(--radius-sm) var(--radius-sm) 0;padding:var(--space-sm) var(--space-xs);color:var(--white-70p);line-height:1.4;font-size:var(--font-size-small);text-decoration:none;display:block}.stalux-toc-title{border-bottom:var(--border-thin) solid var(--white-20p);margin:0 0 var(--space-xs);padding-bottom:var(--space-sm);color:var(--white-90p);font-weight:600;font-size:var(--font-size-base)}.stalux-license-content{z-index:2;position:relative}.stalux-random-title{color:var(--foreground-60p,#333);margin:0;font-size:1.1em;font-weight:600}.stalux-toc-list{gap:var(--space-sm);flex-direction:column;margin:0;padding:0;list-style-type:none;display:flex}.stalux-license-title{margin-top:0;margin-bottom:var(--space-sm);color:var(--white-90p);font-size:var(--font-size-subtitle)}.stalux-post-source-link-row{justify-content:center;margin-top:1.2rem;display:flex}.stalux-byline-author-section{width:100%}.stalux-license-icon{justify-content:center;align-items:center;width:120px;height:120px;display:flex}.stalux-pagination-content{flex-direction:column;min-width:0;display:flex;overflow:hidden}.stalux-post-page{flex-direction:column;width:100%;min-height:100vh;display:flex}.stalux-byline-sidebar-container,.stalux-post-footer-content{gap:var(--space-lg);flex-direction:column;display:flex}.stalux-pagination-inner{justify-content:space-between;gap:var(--space-md);display:flex}.stalux-post-taxonomy-container{gap:var(--space-xs);flex-direction:column;display:flex}.stalux-post-taxonomy-list-column{flex-direction:column}.stalux-post-taxonomy-list-wrap{flex-wrap:wrap}.stalux-post-taxonomy-empty{padding:var(--space-md) 0;text-align:center;color:var(--white-50p);font-size:var(--font-size-small)}.stalux-random-error{color:var(--accent-60p,#e74c3c)}.stalux-toc-empty{color:var(--white-60p);font-size:var(--font-size-small)}.stalux-sidebar .stalux-author-figure,.stalux-post-layout>:first-child,.stalux-post-layout>:nth-child(3){margin:0}.stalux-sidebar .stalux-author-figure figcaption{font-size:1.75rem}.stalux-sidebar-right #stalux-date-date-time #stalux-date-date{white-space:nowrap;font-size:1.5rem}.stalux-sidebar-right #stalux-date-date-time #stalux-date-time{white-space:nowrap;font-size:2.25rem}.stalux-random-refresh:active{opacity:.7}.stalux-random-refresh svg{width:1em;height:1em}.stalux-random-refresh.stalux-random-rotating svg{animation:.6s linear stalux-random-spin}.stalux-random-loading,.stalux-random-error,.stalux-random-no-more{text-align:center;color:var(--foreground-60p,#666);padding:1em;font-size:.95em}.stalux-random-list>li>a{color:var(--foreground-60p,#333);overflow-wrap:anywhere;background:0 0;border-radius:.375em;padding:.75em 1em;text-decoration:none;transition:color .2s,transform .2s;display:block}.stalux-random-list>li>a:active,.stalux-post-taxonomy-item-column:active,.stalux-post-taxonomy-item-pill:active{background:var(--white-05p)}.stalux-toc-item:active,.stalux-toc-item.stalux-toc-active{color:var(--accent-90p);background-color:var(--accent-20p);border-left-color:var(--accent-80p);font-weight:500}.stalux-toc-depth-1{padding-left:var(--space-xs)}.stalux-toc-depth-2{padding-left:var(--space-lg);font-size:var(--font-size-smaller)}.stalux-toc-depth-3{font-size:var(--font-size-tiny);padding-left:2.25rem}.stalux-toc-depth-4,.stalux-toc-depth-5,.stalux-toc-depth-6{padding-left:var(--space-2xl);color:var(--white-60p);font-size:.75rem}:is(.stalux-post-taxonomy-list,.stalux-post-taxonomy-list-column,.stalux-post-taxonomy-list-wrap){gap:var(--space-sm);display:flex}:is(.stalux-sidebar,.stalux-sidebar-right){box-sizing:border-box;width:100%;min-width:0;height:fit-content;top:var(--stalux-nav-offset,20px);max-height:calc(100vh - var(--stalux-nav-offset,20px) - 20px);gap:var(--space-lg);padding:var(--space-lg) 0;scrollbar-width:none;-ms-overflow-style:none;flex-direction:column;display:flex;position:sticky;overflow-y:auto}:is(.stalux-sidebar,.stalux-sidebar-right)::-webkit-scrollbar,.stalux-pagination-link:before,.stalux-pagination-link:after{display:none}a.stalux-pagination-link:focus-visible{background:var(--white-05p);outline-color:var(--accent-50p);outline:2px solid var(--stalux-accent-color);outline-offset:3px}a.stalux-pagination-prev-post:focus-visible .stalux-pagination-arrow{translate:-2px}a.stalux-pagination-next-post:focus-visible .stalux-pagination-arrow{translate:2px}.stalux-pagination-link.stalux-pagination-disabled{pointer-events:none;opacity:.5;cursor:not-allowed;background:var(--black-15p)}.stalux-pagination-link.stalux-pagination-prev-post{text-align:left;margin-left:var(--space-xs)}.stalux-pagination-link.stalux-pagination-next-post{text-align:right;margin-right:var(--space-xs);justify-content:flex-end}.stalux-post-layout>:nth-child(2){min-width:0;margin:0}.stalux-post-layout :focus-visible{outline:2px solid var(--accent-80p);outline-offset:2px}.stalux-post-page-stats span{align-items:center;gap:.3rem;display:inline-flex}#stalux-post-vercount_value_page_pv{color:#ffffffb3;font-weight:600}#stalux-post-vercount_container_page_pv{transition:opacity .3s}.stalux-post-source-link:focus,.stalux-post-source-link:active{background:var(--accent,#fff2);border-top-color:var(--accent,#fff4);border-right-color:var(--accent,#fff4);border-left-color:var(--accent,#fff4);text-decoration:none}.stalux-post-source-link:after{display:none!important}.stalux-license-author,.stalux-license-url,.stalux-license-license{margin:var(--space-sm) 0;line-height:1.6;font-size:var(--font-size-small);color:var(--white-80p)}.stalux-license-box a{color:var(--accent-90p);transition:color var(--transition-normal), border-bottom-color var(--transition-normal);border-bottom:1px dashed var(--accent-50p);padding-bottom:1px;text-decoration:none;position:relative}.stalux-license-box a:active{color:var(--accent-70p)}.stalux-license-icon svg{width:100%;height:100%;display:block}.stalux-license-icon path{color:var(--white-full);fill:currentColor}@media (hover:hover) and (pointer:fine){.stalux-random-refresh:hover{color:var(--accent-60p,#06c)}.stalux-random-list>li>a:hover,.stalux-toc-item:hover,.stalux-post-taxonomy-item-column:hover,.stalux-post-taxonomy-item-pill:hover{background:var(--white-05p)}a.stalux-pagination-link:hover{background:var(--white-05p);outline-color:var(--accent-50p)}a.stalux-pagination-prev-post:hover .stalux-pagination-arrow{translate:-2px}a.stalux-pagination-next-post:hover .stalux-pagination-arrow{translate:2px}.stalux-post-source-link:hover{background:var(--accent,#fff2);border-top-color:var(--accent,#fff4);border-right-color:var(--accent,#fff4);border-left-color:var(--accent,#fff4);text-decoration:none}.stalux-license-box a:hover{color:var(--stalux-accent-color);border-bottom-color:var(--accent-80p)}.stalux-license-box:hover .stalux-license-watermark{opacity:.25}}@media (prefers-color-scheme:dark){.stalux-random-header{border-bottom-color:#ffffff1a}.stalux-random-title,.stalux-random-refresh,.stalux-random-list>li>a{color:var(--foreground-60p,#e0e0e0)}.stalux-random-loading,.stalux-random-error,.stalux-random-no-more{color:var(--foreground-60p,#b0b0b0)}}@media (prefers-contrast:more){.stalux-post-layout{gap:2rem}}@media (width<=1599px){:is(.stalux-sidebar,.stalux-sidebar-right){display:none}.stalux-post-layout{grid-template-columns:minmax(0,1fr);max-width:936px}}@media (width<=1024px){.stalux-post-title{font-size:2rem}.stalux-post-metadata{gap:1rem}}@media (width<=768px){:is(.stalux-sidebar,.stalux-sidebar-right),.stalux-sidebar-right{display:none}.stalux-pagination{margin:var(--space-md) 0}.stalux-pagination-inner{gap:var(--space-sm)}.stalux-pagination-link{padding:var(--space-sm) var(--space-md);flex-direction:column;justify-content:center;align-items:flex-start;min-height:120px}.stalux-pagination-link.stalux-pagination-next-post{align-items:flex-end}.stalux-pagination-arrow{transform:scale(.85)}.stalux-pagination-label{margin-bottom:var(--space-xs);font-size:.75rem}.stalux-pagination-title{max-width:100%;font-size:var(--font-size-small);white-space:normal}.stalux-post-page{padding:0}.stalux-post-layout{flex-direction:column;gap:2rem;margin:0;padding:0;display:flex}.stalux-post-layout>:nth-child(2){order:1}.stalux-post-layout>:first-child{order:2}.stalux-post-layout>:nth-child(3){order:3}.stalux-article{box-sizing:border-box;width:100%;box-shadow:none;background:0 0;margin:0;padding:clamp(1rem,2vw,2rem)}.stalux-post-body{width:100%;margin:0;padding:0 0 2rem}.stalux-post-article-header{margin-bottom:2rem;padding:1rem 1rem 0}.stalux-post-title{font-size:1.75rem}.stalux-post-metadata{flex-direction:column;gap:.75rem;font-size:.85rem}.stalux-post-article-footer{margin-top:2rem;padding-top:1.5rem}.stalux-post-page-stats{min-block-size:calc(3lh + .8rem + 1px);margin-top:.8rem;padding-top:.6rem;font-size:.85rem}.stalux-license-box{max-width:95%;padding:var(--space-md);margin:var(--space-md) auto}.stalux-license-title{margin-bottom:var(--space-xs);font-size:var(--font-size-base)}.stalux-license-author,.stalux-license-url,.stalux-license-license{margin:var(--space-xs) 0;font-size:.85rem}.stalux-license-icon{width:80px;height:80px}}@media (width<=480px){.stalux-pagination{margin:var(--space-md) 0}.stalux-pagination-inner{gap:var(--space-sm);flex-direction:column}.stalux-pagination-link{width:100%;padding:var(--space-sm) var(--space-md);justify-content:flex-start;align-items:center;gap:var(--space-md);flex-direction:row;min-height:100px}.stalux-pagination-link.stalux-pagination-prev-post,.stalux-pagination-link.stalux-pagination-next-post{text-align:left;align-items:center;margin-left:0;margin-right:0}.stalux-pagination-link.stalux-pagination-next-post{justify-content:flex-start}.stalux-pagination-title{white-space:normal}.stalux-post-layout{gap:1.25rem;padding:0}.stalux-license-box{max-width:100%;padding:var(--space-sm);margin:var(--space-md) 0}.stalux-license-title{margin-bottom:var(--space-2xs);font-size:var(--font-size-small)}.stalux-license-author,.stalux-license-url,.stalux-license-license{margin:var(--space-2xs) 0;font-size:.8rem}.stalux-license-icon{width:60px;height:60px}}@media (prefers-reduced-motion:reduce){.stalux-post-page *{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{.stalux-post-layout{grid-template-columns:1fr;gap:2rem}.stalux-post-layout>:first-child,.stalux-post-layout>:nth-child(3){display:none}}}@layer utilities,theme,base;
|
|
3
3
|
/*$vite$:1*/
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
:root{--waline-accent-rgb:var(--stalux-accent-rgb)}.waline-comment-container{border-radius:12px;margin-top:3rem;margin-bottom:1rem;padding:2rem;animation:.35s ease-out 80ms both fadeInUpComment}.waline-comment-title{text-align:center;background:linear-gradient(90deg, var(--white-90p), rgb(var(--waline-accent-rgb) / .9));color:#0000;background-clip:text;margin:0 0 1.5rem;font-size:2rem}.wl-panel{background-color:#1111114d;border:1px solid #ffffff1a;border-radius:12px;margin-bottom:1.5rem;padding:1rem}.wl-editor,.wl-input{border-radius:8px;transition:background-color .2s,border-color .2s,box-shadow .2s,color .2s;color:var(--white-90p)!important;background-color:#11111180!important;border:1px solid #6464644d!important}.wl-editor:focus,.wl-input:focus{outline:none;border-color:rgb(var(--waline-accent-rgb) / .5)!important;box-shadow:0 0 5px rgb(var(--waline-accent-rgb) / .3)!important}.wl-login-nick{height:var(--waline-avatar-size,52px);overflow:hidden;display:block!important}.wl-login-nick:after{display:none}.waline-comment-container img{margin:0!important}.wl-btn{cursor:pointer;border-radius:6px;padding:8px 15px;font-weight:500;transition:background-color .18s,border-color .18s,color .18s;background:rgb(var(--waline-accent-rgb) / .6)!important;color:var(--white-full)!important;border:none!important}@media (hover:hover) and (pointer:fine){.wl-btn:hover{transform:none;background:rgb(var(--waline-accent-rgb) / .7)!important;box-shadow:none!important}}.wl-btn.primary{background:rgb(var(--waline-accent-rgb) / .6)!important}@media (hover:hover) and (pointer:fine){.wl-btn.primary:hover{transform:none;background:rgb(var(--waline-accent-rgb) / .7)!important;box-shadow:none!important}}.wl-header label{color:var(--white-85p);font-weight:500}.wl-card{border-radius:12px;margin-top:1.2rem;padding:1.2rem;transition:background-color .2s,border-color .2s,box-shadow .2s,color .2s;background-color:#1111110d!important;border:1px solid #46464633!important}@media (hover:hover) and (pointer:fine){.wl-card:hover{transform:none;box-shadow:0 10px 24px #00000014;border-color:rgb(var(--waline-accent-rgb) / .3)!important}}.wl-nick{font-weight:600;transition:background-color .18s,border-color .18s,color .18s;color:rgb(var(--waline-accent-rgb) / .95)!important}@media (hover:hover) and (pointer:fine){.wl-nick:hover{color:rgb(var(--waline-accent-rgb) / 1)!important}}.wl-content{color:var(--white-90p);overflow-wrap:anywhere;margin:.8rem 0;line-height:1.7}.wl-reply{opacity:.8;transition:background-color .18s,border-color .18s,color .18s}@media (hover:hover) and (pointer:fine){.wl-reply:hover{opacity:1;text-decoration:none}}.wl-emoji-popup,.wl-gif-popup{backdrop-filter:blur(10px);border-radius:10px;box-shadow:0 8px 24px #0003;background-color:#191919f2!important;border:1px solid #4646464d!important}.wl-emoji-popup button{border-radius:6px;transition:background-color .18s,border-color .18s,color .18s}@media (hover:hover) and (pointer:fine){.wl-emoji-popup button:hover{background-color:rgb(var(--waline-accent-rgb) / .2);transform:scale(1.05)}}.wl-reaction{text-align:center;background-color:#1111114d;border:1px solid #46464633;border-radius:12px;margin-bottom:1.5rem;padding:1rem}.wl-reaction-title{color:var(--white-90p);margin-bottom:1rem;font-size:1.1rem}.wl-reaction-list{flex-wrap:wrap;justify-content:center;display:flex}.wl-reaction-item{cursor:pointer;border-radius:8px;margin:5px;transition:background-color .2s,border-color .2s,box-shadow .2s,color .2s;background-color:#1e1e1e80!important;border:1px solid #46464633!important}@media (hover:hover) and (pointer:fine){.wl-reaction-item:hover{transform:none;box-shadow:0 5px 10px #0003;border-color:rgb(var(--waline-accent-rgb) / .3)!important;background-color:#282828cc!important}}.wl-reaction-img{padding:6px}.wl-reaction-img img{transition:transform .3s}@media (hover:hover) and (pointer:fine){.wl-reaction-item:hover .wl-reaction-img img{transform:scale(1.05)}}.wl-reaction-votes{background-color:rgb(var(--waline-accent-rgb) / .7);color:var(--white-full);padding:5px 0;font-size:.8rem}.wl-meta-head{border-bottom:1px solid #4646464d;justify-content:space-between;align-items:center;margin-bottom:1.2rem;padding-bottom:.8rem;display:flex}.wl-count{color:var(--white-90p);font-size:1.1rem;font-weight:500}.wl-sort{gap:1rem;display:flex}.wl-sort li{cursor:pointer;color:var(--white-70p);transition:background-color .18s,border-color .18s,color .18s}@media (hover:hover) and (pointer:fine){.wl-sort li:hover{color:var(--white-90p)}}.wl-sort li.active{color:rgb(var(--waline-accent-rgb) / 1);font-weight:500}.wl-page{text-align:center;margin-top:1.2rem}.wl-page button{border-radius:6px;margin:0 5px;padding:5px 10px;transition:background-color .18s,border-color .18s,color .18s;color:var(--white-80p)!important;background:#1e1e1e80!important;border:1px solid #4646464d!important}@media (hover:hover) and (pointer:fine){.wl-page button:hover:not(:disabled){transform:none;background:rgb(var(--waline-accent-rgb) / .7)!important;color:var(--white-full)!important}}.wl-page button.active{background:rgb(var(--waline-accent-rgb) / .8)!important;color:var(--white-full)!important}.wl-power{text-align:center;opacity:.6;margin-top:2rem;font-size:.85rem}.wl-power a{color:rgb(var(--waline-accent-rgb) / .9);text-decoration:none;transition:background-color .18s,border-color .18s,color .18s}@media (hover:hover) and (pointer:fine){.wl-power a:hover{color:rgb(var(--waline-accent-rgb) / 1);text-decoration:underline}}.wl-empty{text-align:center;color:var(--white-60p);padding:2rem 0;font-size:1.1rem}.wl-text-number{color:var(--white-60p);font-size:.9rem}@keyframes fadeInUpComment{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.waline-comment-container ::selection{background:rgb(var(--waline-accent-rgb) / .25);color:inherit;border:none;outline:none}.waline-comment-container ::selection{background:rgb(var(--waline-accent-rgb) / .25);color:inherit;border:none;outline:none}@media (width<=768px){.waline-comment-container{margin-top:2rem;padding:1.5rem}.waline-comment-title{font-size:1.8rem}.wl-panel{padding:.8rem}.wl-header{flex-direction:column}.wl-header-item{width:100%;margin-bottom:.5rem}.wl-card{margin-left:0;padding:.8rem}.wl-children{margin-left:0;padding-left:0}.wl-children .wl-card{border-left:3px solid rgb(var(--waline-accent-rgb) / .4);margin-left:0;padding-left:.8rem}}@media (width<=480px){.waline-comment-container{margin-top:1.5rem;padding:1rem}.waline-comment-title{font-size:1.6rem}.wl-panel{padding:.8rem}.wl-reaction-list{gap:5px}.wl-card{box-sizing:border-box;width:100%;margin-left:0;padding:.75rem}.wl-children{box-sizing:border-box;width:100%;margin-left:0;padding-left:0}.wl-children .wl-card{border-left:3px solid rgb(var(--waline-accent-rgb) / .4);width:100%;margin-left:0;padding-left:.6rem}.wl-children .wl-children .wl-card{border-left:3px solid rgb(var(--waline-accent-rgb) / .3);padding-left:.6rem}.wl-meta-head{flex-direction:column;align-items:flex-start;gap:.5rem}}.waline-comment-container,.waline-comment-container *,.wl-panel,.wl-content{box-sizing:border-box;overflow-wrap:anywhere;min-width:0;max-width:100%}@media (hover:none){.wl-reaction-img img{transform:none}}@media (prefers-reduced-motion:reduce){.waline-comment-container *,.waline-comment-container :before,.waline-comment-container :after{transition:none!important;animation:none!important;transform:none!important}}
|
|
1
|
+
.waline-comment-container{--waline-font-family:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "Microsoft YaHei", "Noto Sans CJK SC", sans-serif;font-family:var(--waline-font-family)}.waline-comment-container :where(input,textarea,button,select){font-family:var(--waline-font-family)}.waline-comment-container :where(pre,code,kbd,samp){font-family:ui-monospace,Cascadia Code,Consolas,monospace}.waline-retry{border:1px solid var(--accent-50p);background:var(--white-05p);min-height:44px;color:inherit;cursor:pointer;border-radius:8px;padding:.6rem 1rem}.waline-retry:focus-visible{outline:2px solid var(--stalux-accent-color);outline-offset:3px}:root{--waline-accent-rgb:var(--stalux-accent-rgb)}.waline-comment-container{border-radius:12px;margin-top:3rem;margin-bottom:1rem;padding:2rem;animation:.35s ease-out 80ms both fadeInUpComment}.waline-comment-title{text-align:center;background:linear-gradient(90deg, var(--white-90p), rgb(var(--waline-accent-rgb) / .9));color:#0000;background-clip:text;margin:0 0 1.5rem;font-size:2rem}.wl-panel{background-color:#1111114d;border:1px solid #ffffff1a;border-radius:12px;margin-bottom:1.5rem;padding:1rem}.wl-editor,.wl-input{border-radius:8px;transition:background-color .2s,border-color .2s,box-shadow .2s,color .2s;color:var(--white-90p)!important;background-color:#11111180!important;border:1px solid #6464644d!important}.wl-editor:focus,.wl-input:focus{outline:none;border-color:rgb(var(--waline-accent-rgb) / .5)!important;box-shadow:0 0 5px rgb(var(--waline-accent-rgb) / .3)!important}.wl-login-nick{height:var(--waline-avatar-size,52px);overflow:hidden;display:block!important}.wl-login-nick:after{display:none}.waline-comment-container img{margin:0!important}.wl-btn{cursor:pointer;border-radius:6px;padding:8px 15px;font-weight:500;transition:background-color .18s,border-color .18s,color .18s;background:rgb(var(--waline-accent-rgb) / .6)!important;color:var(--white-full)!important;border:none!important}@media (hover:hover) and (pointer:fine){.wl-btn:hover{transform:none;background:rgb(var(--waline-accent-rgb) / .7)!important;box-shadow:none!important}}.wl-btn.primary{background:rgb(var(--waline-accent-rgb) / .6)!important}@media (hover:hover) and (pointer:fine){.wl-btn.primary:hover{transform:none;background:rgb(var(--waline-accent-rgb) / .7)!important;box-shadow:none!important}}.wl-header label{color:var(--white-85p);font-weight:500}.wl-card{border-radius:12px;margin-top:1.2rem;padding:1.2rem;transition:background-color .2s,border-color .2s,box-shadow .2s,color .2s;background-color:#1111110d!important;border:1px solid #46464633!important}@media (hover:hover) and (pointer:fine){.wl-card:hover{transform:none;box-shadow:0 10px 24px #00000014;border-color:rgb(var(--waline-accent-rgb) / .3)!important}}.wl-nick{font-weight:600;transition:background-color .18s,border-color .18s,color .18s;color:rgb(var(--waline-accent-rgb) / .95)!important}@media (hover:hover) and (pointer:fine){.wl-nick:hover{color:rgb(var(--waline-accent-rgb) / 1)!important}}.wl-content{color:var(--white-90p);overflow-wrap:anywhere;margin:.8rem 0;line-height:1.7}.wl-reply{opacity:.8;transition:background-color .18s,border-color .18s,color .18s}@media (hover:hover) and (pointer:fine){.wl-reply:hover{opacity:1;text-decoration:none}}.wl-emoji-popup,.wl-gif-popup{backdrop-filter:blur(10px);border-radius:10px;box-shadow:0 8px 24px #0003;background-color:#191919f2!important;border:1px solid #4646464d!important}.wl-emoji-popup button{border-radius:6px;transition:background-color .18s,border-color .18s,color .18s}@media (hover:hover) and (pointer:fine){.wl-emoji-popup button:hover{background-color:rgb(var(--waline-accent-rgb) / .2);transform:scale(1.05)}}.wl-reaction{text-align:center;background-color:#1111114d;border:1px solid #46464633;border-radius:12px;margin-bottom:1.5rem;padding:1rem}.wl-reaction-title{color:var(--white-90p);margin-bottom:1rem;font-size:1.1rem}.wl-reaction-list{flex-wrap:wrap;justify-content:center;display:flex}.wl-reaction-item{cursor:pointer;border-radius:8px;margin:5px;transition:background-color .2s,border-color .2s,box-shadow .2s,color .2s;background-color:#1e1e1e80!important;border:1px solid #46464633!important}@media (hover:hover) and (pointer:fine){.wl-reaction-item:hover{transform:none;box-shadow:0 5px 10px #0003;border-color:rgb(var(--waline-accent-rgb) / .3)!important;background-color:#282828cc!important}}.wl-reaction-img{padding:6px}.wl-reaction-img img{transition:transform .3s}@media (hover:hover) and (pointer:fine){.wl-reaction-item:hover .wl-reaction-img img{transform:scale(1.05)}}.wl-reaction-votes{background-color:rgb(var(--waline-accent-rgb) / .7);color:var(--white-full);padding:5px 0;font-size:.8rem}.wl-meta-head{border-bottom:1px solid #4646464d;justify-content:space-between;align-items:center;margin-bottom:1.2rem;padding-bottom:.8rem;display:flex}.wl-count{color:var(--white-90p);font-size:1.1rem;font-weight:500}.wl-sort{gap:1rem;display:flex}.wl-sort li{cursor:pointer;color:var(--white-70p);transition:background-color .18s,border-color .18s,color .18s}@media (hover:hover) and (pointer:fine){.wl-sort li:hover{color:var(--white-90p)}}.wl-sort li.active{color:rgb(var(--waline-accent-rgb) / 1);font-weight:500}.wl-page{text-align:center;margin-top:1.2rem}.wl-page button{border-radius:6px;margin:0 5px;padding:5px 10px;transition:background-color .18s,border-color .18s,color .18s;color:var(--white-80p)!important;background:#1e1e1e80!important;border:1px solid #4646464d!important}@media (hover:hover) and (pointer:fine){.wl-page button:hover:not(:disabled){transform:none;background:rgb(var(--waline-accent-rgb) / .7)!important;color:var(--white-full)!important}}.wl-page button.active{background:rgb(var(--waline-accent-rgb) / .8)!important;color:var(--white-full)!important}.wl-power{text-align:center;opacity:.6;margin-top:2rem;font-size:.85rem}.wl-power a{color:rgb(var(--waline-accent-rgb) / .9);text-decoration:none;transition:background-color .18s,border-color .18s,color .18s}@media (hover:hover) and (pointer:fine){.wl-power a:hover{color:rgb(var(--waline-accent-rgb) / 1);text-decoration:underline}}.wl-empty{text-align:center;color:var(--white-60p);padding:2rem 0;font-size:1.1rem}.wl-text-number{color:var(--white-60p);font-size:.9rem}@keyframes fadeInUpComment{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.waline-comment-container ::selection{background:rgb(var(--waline-accent-rgb) / .25);color:inherit;border:none;outline:none}.waline-comment-container ::selection{background:rgb(var(--waline-accent-rgb) / .25);color:inherit;border:none;outline:none}@media (width<=768px){.waline-comment-container{margin-top:2rem;padding:1.5rem}.waline-comment-title{font-size:1.8rem}.wl-panel{padding:.8rem}.wl-header{flex-direction:column}.wl-header-item{width:100%;margin-bottom:.5rem}.wl-card{margin-left:0;padding:.8rem}.wl-children{margin-left:0;padding-left:0}.wl-children .wl-card{border-left:3px solid rgb(var(--waline-accent-rgb) / .4);margin-left:0;padding-left:.8rem}}@media (width<=480px){.waline-comment-container{margin-top:1.5rem;padding:1rem}.waline-comment-title{font-size:1.6rem}.wl-panel{padding:.8rem}.wl-reaction-list{gap:5px}.wl-card{box-sizing:border-box;width:100%;margin-left:0;padding:.75rem}.wl-children{box-sizing:border-box;width:100%;margin-left:0;padding-left:0}.wl-children .wl-card{border-left:3px solid rgb(var(--waline-accent-rgb) / .4);width:100%;margin-left:0;padding-left:.6rem}.wl-children .wl-children .wl-card{border-left:3px solid rgb(var(--waline-accent-rgb) / .3);padding-left:.6rem}.wl-meta-head{flex-direction:column;align-items:flex-start;gap:.5rem}}.waline-comment-container,.waline-comment-container *,.wl-panel,.wl-content{box-sizing:border-box;overflow-wrap:anywhere;min-width:0;max-width:100%}@media (hover:none){.wl-reaction-img img{transform:none}}@media (prefers-reduced-motion:reduce){.waline-comment-container *,.waline-comment-container :before,.waline-comment-container :after{transition:none!important;animation:none!important;transform:none!important}}
|
|
2
2
|
/*$vite$:1*/
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
@layer theme, base, components, utilities;
|
|
2
|
-
@layer components{.stalux-word-card{transition:
|
|
2
|
+
@layer components{.stalux-word-card{transition:border-color var(--transition-normal), box-shadow var(--transition-normal);box-sizing:border-box;border-radius:var(--radius-lg,12px);background:var(--surface-glass);width:100%;min-width:0;box-shadow:var(--card-box-shadow);flex-direction:column;gap:1rem;padding:1.75rem 2rem;display:flex;position:relative}.stalux-word-date{font-variant-numeric:tabular-nums;color:var(--white-50p)}.stalux-word-footer{border-top:1px solid var(--white-10p);color:var(--white-70p);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;margin-top:auto;padding-top:1rem;font-size:.85rem;display:flex}.stalux-word-source-link{text-decoration-color:var(--accent-50p);text-underline-offset:.15em;transition:color var(--transition-fast);color:var(--accent-80p);font-style:italic;text-decoration-line:underline}.stalux-word-body{min-width:0;color:var(--white-90p);font-size:1.1rem;line-height:1.9;position:relative}.stalux-word-list-list{flex-direction:column;align-items:center;gap:1.5rem;margin:2rem auto;padding:0;list-style-type:none;display:flex}.stalux-word-list-item{width:100%;max-width:900px;display:flex}.stalux-word-source-meta{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.5rem;display:flex}.stalux-word-source-date{color:var(--white-50p);font-style:italic}.stalux-word-source-text{font-style:italic}.stalux-word-card{border-top:2px solid var(--accent-50p);overflow-wrap:anywhere;scroll-margin-top:6rem}.stalux-word-mark{color:var(--accent-80p);flex:none}.stalux-word-permalink{min-height:44px;color:var(--white-70p);font-variant-numeric:tabular-nums;align-items:center;display:inline-flex}.stalux-word-permalink:focus-visible,.stalux-word-source-link:focus-visible{outline:2px solid var(--stalux-accent-color);outline-offset:4px;border-radius:4px}.stalux-word-source-meta{min-width:0;margin-left:auto}.stalux-word-body>:first-child{margin-top:0}.stalux-word-body>:last-child{margin-bottom:0}.stalux-word-body .expressive-code{max-width:100%;overflow-x:auto}.stalux-word-card:target,.stalux-word-card[data-glow]{box-shadow:0 0 20px var(--accent-40p), 0 0 60px var(--accent-20p), var(--shadow-lg);animation:2s ease-out stalux-word-word-glow}.stalux-word-body h1,.stalux-word-body h2,.stalux-word-body h3,.stalux-word-body h4,.stalux-word-body h5,.stalux-word-body h6{margin:.5rem 0;font-size:1.1em}.stalux-word-body p{margin:.5rem 0}.stalux-word-body blockquote{border-left:3px solid var(--accent-60p);background:var(--white-05p);margin:.5rem 0;padding:.6rem 1rem}.stalux-word-body pre{white-space:pre-wrap;overflow-wrap:anywhere;overflow-x:visible}.stalux-word-body code{overflow-wrap:anywhere}@media (hover:hover) and (pointer:fine){.stalux-word-card:hover{border-color:var(--accent-80p);box-shadow:var(--card-box-shadow-hover)}.stalux-word-source-link:hover{color:var(--accent-90p)}}@media (width<=768px){.stalux-word-card{padding:1.25rem}.stalux-word-list-list{gap:1rem;margin:1.5rem auto}.stalux-word-list-item{max-width:100%}}}@layer utilities,theme,base;
|
|
3
3
|
/*$vite$:1*/
|
package/src/styles/generated.css
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
@layer theme, base, components, utilities;
|
|
2
|
-
@layer components{.stalux-404-home-btn{background:var(--black-20p);border:var(--border-thin) solid var(--white-20p);transition:background-color var(--transition-normal), transform var(--transition-normal), box-shadow var(--transition-normal);border-radius:var(--radius-md);padding:var(--space-md) var(--space-lg);color:var(--white-90p);font-size:var(--font-size-base);text-decoration:none;display:inline-block}.stalux-ai-prompt{clip-path:inset(50%);white-space:pre-wrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.stalux-badge-group{border:none}.stalux-badge-group-arrow{font-size:.65rem;transition:transform .2s;display:inline-block}.stalux-badge-group-summary{user-select:none;cursor:pointer;color:var(--white-70p);gap:.4rem;padding:.2rem 0;font-size:.85rem;list-style-type:none;transition:color .2s}.stalux-beian-public-security-beian{color:#ffffffb3;gap:5px;font-size:.9rem;text-decoration:none;transition:color .3s;display:inline-flex}.stalux-card-post-categories,.stalux-card-post-tags{gap:.4rem}.stalux-card-post-category{background:var(--category-bg);color:#fff;border-radius:6px;padding:.18rem .5rem;font-size:.84rem;line-height:1;display:inline-block}.stalux-card-post-description{overflow-wrap:anywhere;color:var(--white-70p);line-height:1.6}.stalux-card-post-meta{gap:.6rem}.stalux-card-post-tag{background:var(--tag-bg);color:#fff;border-radius:9999px;padding:.22rem .7rem;font-size:.85rem;line-height:1;display:inline-block}.stalux-card-post-title{overflow-wrap:anywhere;margin:0;line-height:1.35}.stalux-card-read-more{align-self:flex-start;margin-top:.6rem}.stalux-card-time{gap:.45rem;display:inline-flex}.stalux-copyright{color:var(--white-70p);gap:.3em;font-weight:500}.stalux-footer{backdrop-filter:blur(10px);color:var(--white-full);background-color:#0000001a;margin-top:auto;padding:1.5rem 0;font-size:.9rem}.stalux-footer-content{gap:.8rem;max-width:1200px;margin:0 auto;padding:0 1rem}.stalux-home-navs{order:-1;max-width:100%}.stalux-nav-list{transform:scale(var(--nav-scale,1));transform-origin:50%;box-sizing:border-box;gap:2rem;max-width:100%;transition:transform .22s cubic-bezier(.22,.72,.22,1);overflow:visible}.stalux-nav-overlay{pointer-events:none;z-index:999;opacity:0;background:#0009;height:100%;transition:opacity .3s;display:none;position:fixed;top:0;left:0}.stalux-nav-scroll-btn{background:var(--black-30p);backdrop-filter:blur(8px);box-shadow:var(--shadow-md);pointer-events:none;z-index:10;cursor:pointer;width:36px;height:36px;color:var(--white-full);opacity:0;border:none;border-radius:9999px;padding:0;transition:opacity .25s;display:none;position:absolute;top:50%;transform:translateY(-50%)}.stalux-nav-toggle{z-index:1001;cursor:pointer;min-width:48px;min-height:48px;color:inherit;background:0 0;border:none;padding:.75rem;display:none}.stalux-post-card{box-sizing:border-box;cursor:pointer;gap:var(--space-lg);border-radius:var(--radius-lg);background-color:var(--card-bg);height:100%;padding:var(--space-lg);box-shadow:var(--card-box-shadow);transition:transform .22s cubic-bezier(.22,.72,.22,1)}.stalux-stats-site-build-time{color:#fffc;margin-top:.5rem;font-size:.9rem}.stalux-stats-stats-separator{color:#ffffff80}.stalux-theme-info{color:var(--white-70p);gap:.3em;font-size:.85rem}.stalux-home-body{min-height:100vh;padding-bottom:var(--space-3xl);position:relative}.stalux-nav-container{box-sizing:border-box;max-width:100%;position:relative;overflow:hidden}.stalux-author{margin-top:4em}.stalux-card-post-cover{border-radius:var(--radius-md);flex-shrink:0;height:180px;margin-bottom:.5rem;overflow:hidden}.stalux-home-title{color:var(--white-full);text-shadow:var(--stalux-text-shadow);margin-top:1.5em;font-size:4em}.stalux-nav-item{text-shadow:var(--stalux-text-shadow);flex-shrink:0;margin-left:1em;margin-right:1em;font-size:1.3em}.stalux-page-description{color:var(--white-60p);margin-bottom:1.5em;font-size:1.2em}.stalux-page-title{text-shadow:var(--stalux-text-shadow);margin-top:1.5em;font-size:2.5em}.stalux-typewriter{min-height:2em;text-shadow:var(--stalux-text-shadow);margin-top:1.5em;font-size:2.5em}.stalux-404-error-container{min-height:60vh;padding:2rem}.stalux-badge,.stalux-badges-wrapper .stalux-badge{width:auto}.stalux-u-min-w-0{min-width:0}.stalux-u-w-full{width:100%}.stalux-u-flex{display:flex}.stalux-u-flex-col{flex-direction:column}.stalux-u-flex-wrap{flex-wrap:wrap}.stalux-u-items-center{align-items:center}.stalux-u-justify-center{justify-content:center}.stalux-badges,.stalux-badges-wrapper{gap:.5rem}.stalux-beian-beian-info{gap:1rem}.stalux-stats-site-stats{gap:.5rem;font-size:.9rem}.stalux-nav-text{white-space:nowrap;color:var(--white-full)}.stalux-badge-group-items{padding-top:.35rem}.stalux-u-text-center{text-align:center}.stalux-badge-group-hint{color:var(--white-70p);font-size:.7rem}.stalux-badge-group-title{color:var(--white-80p)}#stalux-home-show-post-list{cursor:pointer;text-shadow:var(--stalux-text-shadow);margin-top:3em;font-size:1.5em}.stalux-post-list-container{width:100%;height:auto;margin:5px 0}.stalux-post-list-container ul{flex-wrap:wrap;gap:2rem;margin:3em;padding:0;list-style-type:none;display:flex}.stalux-post-list-container ul>li{flex:min(22rem,100%);min-width:0;margin:0}.stalux-card-post-title a{color:inherit;text-decoration:none}.stalux-post-card>a:first-child{width:100%;min-width:0;display:block}.stalux-card-post-cover img{object-fit:cover;width:100%;max-width:100%;height:100%;transition:transform var(--transition-fast)}.stalux-card-post-date,.stalux-card-post-updated{color:#e8f2ff;border-radius:10px;align-items:center;gap:.35rem;width:fit-content;padding:.28rem .6rem;font-size:.9rem;line-height:1.1;display:inline-flex}.stalux-card-post-date{background:var(--date-bg);border:1px solid var(--date-border);color:#e8f2ff}.stalux-card-post-updated{background:var(--updated-bg);border:1px solid var(--updated-border);color:#fff7de}.stalux-card-post-tags a,.stalux-card-post-categories a{text-decoration:none}.stalux-card-post-tags a:focus-visible .stalux-card-post-tag{background:var(--tag-bg-hover)}.stalux-card-post-categories a:focus-visible .stalux-card-post-category{background:var(--category-bg-hover)}.stalux-social{margin-top:3em}.stalux-social ul{flex-wrap:wrap;justify-content:center;gap:1em;margin:0;padding:0;display:flex}.stalux-social ul li{box-sizing:border-box;text-align:center;background-color:var(--white-15p);border-radius:9999px;justify-content:center;align-items:center;width:2.5em;height:2.5em;font-size:large;display:inline-flex;overflow:hidden}.stalux-social ul a,.stalux-social ul .stalux-social-icon-container,.stalux-social ul .stalux-social-custom-icon{justify-content:center;align-items:center;width:100%;height:100%;line-height:1;display:inline-flex}.stalux-social[data-stalux-social-animate=true] li{animation:.28s cubic-bezier(.2,.8,.2,1) both stalux-social-stalux-social-arrive}.stalux-social[data-stalux-social-animate=true] li:nth-child(2){animation-delay:30ms}.stalux-social[data-stalux-social-animate=true] li:nth-child(3){animation-delay:60ms}.stalux-social[data-stalux-social-animate=true] li:nth-child(4){animation-delay:90ms}.stalux-social[data-stalux-social-animate=true] li:nth-child(5){animation-delay:.12s}.stalux-social[data-stalux-social-animate=true] li:nth-child(6){animation-delay:.15s}.stalux-social[data-stalux-social-animate=true] li:nth-child(n+7){animation-delay:.18s}nav{width:100%;min-width:0;max-width:100%}.stalux-nav-scroll-btn[data-visible]{pointer-events:auto;opacity:1}.stalux-nav-scroll-btn[data-side=left]{left:4px}.stalux-nav-scroll-btn[data-side=right]{right:4px}.stalux-nav-scroll-btn svg{stroke:currentColor;stroke-width:2px;fill:none;width:20px;height:20px}.stalux-nav-link,.stalux-nav-link:visited{cursor:pointer;width:100%;color:inherit;min-height:44px;font:inherit;background:0 0;border:none;align-items:center;gap:.5rem;padding:.5rem .75rem;text-decoration:none;display:flex}.stalux-nav-link .nav-icon{stroke:var(--white-full)}.stalux-nav-toggle svg{width:32px;height:32px}.stalux-nav-overlay[data-state=show]{pointer-events:auto;opacity:1;display:block}#stalux-to-archive-archs{margin-top:2em}#stalux-date-date-time{text-shadow:var(--stalux-text-shadow);color:var(--white-full);flex-direction:column;align-items:center;margin-top:2em;display:flex}#stalux-date-date-time #stalux-date-date{min-height:1.25em;margin-bottom:.5em;font-size:2em;line-height:1.25}#stalux-date-date-time #stalux-date-time{font-variant-numeric:tabular-nums;min-height:1.25em;font-size:3em;line-height:1.25}.stalux-author-figure{justify-content:center;align-items:center;display:flex}.stalux-author-figure img{box-shadow:0 0 10px var(--stalux-accent-color);border-radius:9999px;transition:transform .65s ease-in-out}.stalux-author-figure figcaption{text-shadow:var(--stalux-text-shadow);color:var(--white-full);margin-left:1em;font-size:2.5em;font-weight:700}.stalux-author-figure-column figcaption{text-align:center;margin-top:.5em;margin-left:0}.agent-home-summary{clip-path:inset(50%);white-space:normal;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.stalux-404-error-content h1{color:var(--white-90p);margin:0;font-size:6rem;font-weight:700}.stalux-404-error-content p{color:var(--white-70p);margin:1rem 0 2rem;font-size:1.5rem}.stalux-404-countdown-text{color:var(--white-50p)!important;margin:-.5rem 0 1.5rem!important;font-size:.95rem!important}.agent-recovery{max-width:42rem;line-height:1.7;margin:0 auto 1.5rem!important;font-size:1rem!important}.agent-recovery a{color:inherit;text-decoration-line:underline}.stalux-theme-info span,.stalux-copyright span{margin:0}.stalux-theme-info a{color:#fffc;margin:0 .2em;text-decoration:none;transition:color .3s}.stalux-beian-beian-info a{color:#ffffffb3;font-size:.9rem;text-decoration:none;transition:color .3s}.stalux-beian-public-security-beian img{width:15px;height:15px;display:inline-block}.stalux-badge-group-summary::-webkit-details-marker,.stalux-badge-group[open] .stalux-badge-group-hint[data-hint=collapsed],.stalux-badge-group:not([open]) .stalux-badge-group-hint[data-hint=expanded]{display:none}.stalux-badge-group[open] .stalux-badge-group-arrow{transform:rotate(90deg)}@media (hover:hover) and (pointer:fine){.stalux-card-post-tags a:hover .stalux-card-post-tag{background:var(--tag-bg-hover)}.stalux-card-post-categories a:hover .stalux-card-post-category{background:var(--category-bg-hover)}.stalux-post-card-shell:hover .stalux-post-card .stalux-card-post-cover img{transform:scale(1.025)}.stalux-post-card-shell:hover .stalux-post-card{box-shadow:var(--card-box-shadow-hover)}.stalux-nav-scroll-btn:hover{background:0 0}.stalux-nav-container:hover .stalux-nav-scroll-btn[data-visible]{opacity:1}.stalux-nav-link:hover .nav-icon,.stalux-nav-link:hover .stalux-nav-text{stroke:var(--stalux-accent-color);color:var(--stalux-accent-color)}.stalux-author-figure>a:hover img{animation:.65s ease-in-out stalux-link-avatar-spin}.stalux-404-home-btn:hover{background:var(--accent-20p);box-shadow:0 4px 12px var(--shadow-dark)}.stalux-theme-info a:hover{color:#fff;text-decoration:none}.stalux-beian-beian-info a:hover,.stalux-beian-public-security-beian:hover{color:#ffffffe6;text-decoration:none}.stalux-badge-group-summary:hover{color:var(--white-70p)}}@media (width<=1100px){.stalux-nav-list{gap:1rem}.stalux-nav-item{margin-left:.6em;margin-right:.6em;font-size:1em}}@media (width<=900px){.stalux-nav-item{margin-left:.25em;margin-right:.25em;font-size:.95em}.stalux-nav-list{gap:.5rem}}@media (width<=768px){.stalux-home-body{box-sizing:border-box;width:100%;max-width:95vw;height:auto;padding:2rem .5rem 1.5rem}.stalux-home-title{word-break:break-all;margin-top:1em;font-size:2em}.stalux-home-navs{flex-direction:column;align-items:center;gap:.5em}.stalux-home-navs nav{width:100%}#stalux-home-show-post-list{margin-top:2em;font-size:1.1em}.stalux-post-list-container ul{margin:1rem}.stalux-footer{padding:1.2rem 0;font-size:.8rem}.stalux-footer-content{gap:.6rem;padding:0 .8rem}.stalux-author{box-sizing:border-box;width:100%;max-width:95vw;margin-top:2em;padding:1em .5em}.stalux-author-figure{gap:.5em;flex-direction:column!important}.stalux-author-figure img{max-width:20vw;max-height:20vw;width:64px!important;height:64px!important}.stalux-author-figure figcaption{text-align:center;word-break:break-all;overflow-wrap:break-word;white-space:normal;max-width:90vw;margin-top:.5em;margin-left:0;font-size:1.5em}.stalux-404-error-content h1{font-size:4rem}.stalux-404-error-content p{font-size:1.2rem}.stalux-badges{gap:.3rem}.stalux-badge{width:auto}}@media (width<=600px){.stalux-nav-toggle{display:block;position:fixed;top:.75rem;left:.75rem}.stalux-nav-container{overflow:visible}nav{width:auto}.stalux-nav-list{pointer-events:none;z-index:1000;background:var(--black-20p);backdrop-filter:blur(20px);flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:0;width:min(220px,100vw - 1rem);height:100vh;padding:.5rem 1rem 2rem;position:fixed;top:0;left:0;right:auto;overflow-y:auto;transform:translate(-100%)}.stalux-nav-list[data-state=open]{pointer-events:auto;transform:translate(0)}.stalux-nav-item{border-bottom:1px solid var(--white-10p);flex-shrink:0;width:100%;margin:0;font-size:.9em}.stalux-nav-text{display:inline}.stalux-nav-link{width:100%;min-height:44px;font-size:inherit;padding:.45rem .75rem}.stalux-nav-link .nav-icon{width:18px;height:18px}}@media (width<=480px){.stalux-footer{padding:1rem 0;font-size:.8rem}.stalux-footer-content{gap:.6rem;padding:0 .8rem}}@media (prefers-reduced-motion:reduce){.stalux-social[data-stalux-social-animate=true] li{animation:none}}.stalux-main,.stalux-post-page,.stalux-post-layout>*,.stalux-link-card-content,.stalux-word-list-item,.stalux-word-card{box-sizing:border-box;min-width:0;max-width:100%}.stalux-main{overflow-wrap:anywhere}.stalux-link-shell{min-width:0;max-width:100%;display:block}.stalux-link-card{box-sizing:border-box;width:100%;max-width:100%}.stalux-category-shell{width:100%;min-width:0}.stalux-author-figure>a{flex-shrink:0;display:inline-block}.stalux-author-figure img{display:block}.stalux-post-card-shell,.stalux-category-shell,.stalux-link-shell{position:relative}.stalux-post-card,.stalux-category-card,.stalux-link-card,.stalux-word-card{transition:transform .2s,background-color .2s,border-color .2s,box-shadow .2s}:is(.stalux-post-card-shell,.stalux-category-shell):focus-within>*,.stalux-link-shell:focus-visible>*{box-shadow:var(--card-box-shadow-hover)}:is(button,summary,[role=button]):focus-visible{outline:2px solid var(--stalux-accent-color);outline-offset:3px}@media (prefers-reduced-motion:reduce){.stalux-main *,.stalux-main :before,.stalux-main :after{transition-duration:0s!important;animation:none!important}.stalux-post-card,.stalux-category-card,.stalux-link-card,.stalux-link-card-content,.stalux-card-post-cover img,.stalux-category-icon,.stalux-author-figure img,.stalux-link-card-avatar img{transform:none!important}}@keyframes stalux-social-stalux-social-arrive{0%{opacity:0;transform:translateY(.75rem)rotate(-12deg)}to{opacity:1;transform:translateY(0)rotate(0)}}@keyframes stalux-random-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes stalux-link-avatar-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes stalux-word-word-glow{0%{box-shadow:0 0 30px var(--accent-50p), 0 0 80px var(--accent-30p), var(--shadow-lg);transform:scale(1.02)}to{box-shadow:0 0 20px var(--accent-40p), 0 0 60px var(--accent-20p), var(--shadow-lg);transform:scale(1)}}}@layer utilities{.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.visible{visibility:visible}.absolute{position:absolute}.static{position:static}.grid{display:grid}.block{display:block}.inline-block{display:inline-block}.hidden{display:none}.h-full{height:100%}.flex{display:flex}.flex-shrink{flex-shrink:1}.flex-wrap{flex-wrap:wrap}.transform{transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.b,.border{border-width:1px}.text-inherit{color:inherit}.no-underline{text-decoration:none}.outline{outline-style:solid}}@layer theme;@layer base{html,body{color:#fff;width:100%;height:100%;margin:0;& main{flex:1}scrollbar-color:#4a4a4a #2a2a2a;font-family:var(--font-body), "Noto Sans SC", "Noto Sans CJK SC", system-ui, -apple-system, sans-serif;text-rendering:optimizelegibility;line-height:1.25;display:block}html{scrollbar-gutter:stable;background-color:var(--stalux-bg-color,#202020)}html[data-clarity-id]{opacity:1!important}a{color:inherit;cursor:pointer;text-decoration-skip-ink:auto;background-color:#0000;text-decoration:none;transition:color .2s,text-shadow .2s;position:relative}.a-none{cursor:pointer;text-decoration-skip-ink:auto;background-color:#0000;color:inherit!important;text-decoration:none!important}.a-none:after{display:none!important}a:not(.a-none):not([data-stalux-card]):not(.stalux-nav-link):after{content:"";background:linear-gradient(90deg, var(--stalux-accent-color), var(--accent-50p));transform-origin:0;pointer-events:none;width:100%;height:1px;transition:transform .25s cubic-bezier(.25,.9,.2,1);position:absolute;bottom:-2px;left:0;transform:scaleX(0)}a:not(.a-none):not([data-stalux-card]):not(.stalux-nav-link):focus-visible:after,a:not(.a-none):not([data-stalux-card]):not(.stalux-nav-link):active:after{transform:scaleX(1)}@media (hover:hover) and (pointer:fine){a:not(.a-none):not([data-stalux-card]):not(.stalux-nav-link):hover:after{transform:scaleX(1)}}a:active,a:focus-visible{text-decoration:none}@media (hover:hover) and (pointer:fine){a:hover{text-decoration:none}}a:focus{outline:none}a:focus-visible{outline:2px solid var(--stalux-accent-color);outline-offset:2px}ul{margin:0;padding:0;list-style:none}.none{display:none}.stalux-root{color:#fff;min-height:100vh}.stalux-main{min-height:100vh}:root{--stalux-bg-color:#202020;--stalux-bg-filter:none;--stalux-text-shadow:var(--stalux-accent-color) .08rem .08rem .18rem;--stalux-accent-color:#eab308;--stalux-accent-rgb:234 179 8;--surface-glass:var(--black-05p);--surface-glass-shadow:var(--shadow-sidebar);--card-bg:var(--surface-glass);--card-border:#ffffff1a;--card-box-shadow:0 10px 24px #00000014;--card-box-shadow-hover:0 14px 28px #0000001f;--tag-bg:#ffffff1f;--tag-bg-hover:#ffffff2e;--category-bg:#ffffff14;--category-bg-hover:#ffffff24;--date-bg:#42a0ff2e;--date-border:#42a0ff40;--updated-bg:#ffc94733;--updated-border:#ffc9474d;--white-full:#fff;--white-95p:#fffffff2;--white-90p:#ffffffe6;--white-85p:#ffffffd9;--white-80p:#ffffffe6;--white-78p:#ffffffc7;--white-75p:#ffffffbf;--white-70p:#ffffffdb;--white-60p:#fff9;--white-50p:#ffffff80;--white-30p:#ffffff4d;--white-20p:#fff3;--white-15p:#ffffff26;--white-10p:#ffffff1a;--white-05p:#ffffff0d;--black-30p:#0000004d;--black-20p:#0003;--black-15p:#00000026;--black-10p:#0000001a;--black-05p:#0000000d;--accent-90p:rgb(var(--stalux-accent-rgb) / .9);--accent-85p:rgb(var(--stalux-accent-rgb) / .85);--accent-80p:rgb(var(--stalux-accent-rgb) / .8);--accent-70p:rgb(var(--stalux-accent-rgb) / .7);--accent-60p:rgb(var(--stalux-accent-rgb) / .6);--accent-50p:rgb(var(--stalux-accent-rgb) / .5);--accent-40p:rgb(var(--stalux-accent-rgb) / .4);--accent-30p:rgb(var(--stalux-accent-rgb) / .3);--accent-20p:rgb(var(--stalux-accent-rgb) / .2);--transition-fast:.18s ease;--transition-medium:.2s ease;--transition-normal:.25s ease;--transition-slow:.3s ease;--transition-slower:.5s ease;--transition-slowest:.6s ease;--easing-bounce:cubic-bezier(.175, .885, .32, 1.275);--space-2xs:.25rem;--space-xs:.75rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-full:9999px;--shadow-sm:0 2px 5px #0000001a;--shadow-md:0 6px 16px #0003;--shadow-lg:0 8px 20px #0000004d;--shadow-xl:0 12px 26px #00000047;--shadow-sidebar:0 16px 20px -12px #000000d6, 10px 4px 16px -12px #00000094, -10px 4px 16px -12px #00000094;--shadow-raised-hover:0 20px 24px -13px #000000e6, 12px 5px 18px -13px #000000ad, -12px 5px 18px -13px #000000ad;--shadow-dark:#000000c0;--muted-text:#bbb;--font-body:"Noto Sans SC", "Noto Sans CJK SC", system-ui, sans-serif;--font-size-subtitle:1.35rem;--font-size-base:1.1rem;--font-size-small:.95rem;--font-size-smaller:.9rem;--font-size-tiny:.85rem;--border-thin:1px;--border-medium:2px;--border-thick:3px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#2a2a2a;border-radius:4px}::-webkit-scrollbar-thumb{background:#4a4a4a;border-radius:4px;transition:background .3s ease-out}@media (hover:hover) and (pointer:fine){::-webkit-scrollbar-thumb:hover{background:#5a5a5a}}::-webkit-scrollbar-corner{background:#2a2a2a}.bg-layer{z-index:-10;background-position:50%;background-repeat:repeat;background-size:auto;background-color:var(--stalux-bg-color,transparent);filter:var(--stalux-bg-filter,none);pointer-events:none;opacity:0;forced-color-adjust:none;color-scheme:light only;transition:opacity .65s ease-in-out;position:fixed;inset:0}@media (prefers-reduced-motion:reduce){.bg-layer{transition-duration:0s}}footer{padding:var(--space-lg) var(--space-md);text-align:center;color:var(--muted-text);border-top:1px solid var(--white-10p);backdrop-filter:blur(16px);background:linear-gradient(#0c0e122e,#0c0e12b8)}}@media print{[data-stalux-offscreen-code],[data-stalux-offscreen-svg]{content-visibility:visible!important;contain-intrinsic-block-size:none!important}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.stagger-children>:first-child{animation-delay:.1s}.stagger-children>:nth-child(2){animation-delay:.15s}.stagger-children>:nth-child(3){animation-delay:.2s}.stagger-children>:nth-child(4){animation-delay:.25s}.stagger-children>:nth-child(5){animation-delay:.3s}.stagger-children>:nth-child(n+6){animation-delay:.35s}@keyframes stalux-page-exit{to{opacity:0}}@keyframes stalux-page-enter{0%{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}@keyframes stalux-page-enter-back{0%{opacity:0;transform:translateY(-9px)}to{opacity:1;transform:translateY(0)}}@keyframes stalux-taxonomy-enter{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}@keyframes stalux-taxonomy-enter-back{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes stalux-article-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes stalux-article-enter-back{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes stalux-sidebar-left-in{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:translate(0)}}@keyframes stalux-sidebar-left-out{to{opacity:0;transform:translate(-10px)}}@keyframes stalux-sidebar-left-back-in{0%{opacity:0;transform:translate(14px)}to{opacity:1;transform:translate(0)}}@keyframes stalux-sidebar-left-back-out{to{opacity:0;transform:translate(10px)}}@keyframes stalux-sidebar-right-in{0%{opacity:0;transform:translate(14px)}to{opacity:1;transform:translate(0)}}@keyframes stalux-sidebar-right-out{to{opacity:0;transform:translate(10px)}}@keyframes stalux-sidebar-right-back-in{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:translate(0)}}@keyframes stalux-sidebar-right-back-out{to{opacity:0;transform:translate(-10px)}}::view-transition-group(stalux-page){z-index:1}::view-transition-old(stalux-page),::view-transition-new(stalux-page){transform-origin:top}::view-transition-group(*){animation-duration:.24s;animation-timing-function:cubic-bezier(.22,.72,.22,1)}@media (prefers-reduced-motion:reduce){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation-duration:1ms!important;animation-delay:0s!important}.stalux-main,.stalux-main *,.postLayout *{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}
|
|
2
|
+
@layer components{.stalux-404-home-btn{background:var(--black-20p);border:var(--border-thin) solid var(--white-20p);transition:background-color var(--transition-normal), transform var(--transition-normal), box-shadow var(--transition-normal);border-radius:var(--radius-md);padding:var(--space-md) var(--space-lg);color:var(--white-90p);font-size:var(--font-size-base);text-decoration:none;display:inline-block}.stalux-ai-prompt{clip-path:inset(50%);white-space:pre-wrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.stalux-badge-group{border:none}.stalux-badge-group-arrow{font-size:.65rem;transition:transform .2s;display:inline-block}.stalux-badge-group-summary{user-select:none;cursor:pointer;color:var(--white-70p);gap:.4rem;padding:.2rem 0;font-size:.85rem;list-style-type:none;transition:color .2s}.stalux-beian-public-security-beian{color:#ffffffb3;gap:5px;font-size:.9rem;text-decoration:none;transition:color .3s;display:inline-flex}.stalux-card-post-categories,.stalux-card-post-tags{gap:.4rem}.stalux-card-post-category{background:var(--category-bg);color:#fff;border-radius:6px;padding:.18rem .5rem;font-size:.84rem;line-height:1;display:inline-block}.stalux-card-post-description{overflow-wrap:anywhere;color:var(--white-70p);line-height:1.6}.stalux-card-post-meta{gap:.6rem}.stalux-card-post-tag{background:var(--tag-bg);color:#fff;border-radius:9999px;padding:.22rem .7rem;font-size:.85rem;line-height:1;display:inline-block}.stalux-card-post-title{overflow-wrap:anywhere;margin:0;line-height:1.35}.stalux-card-read-more{align-self:flex-start;margin-top:.6rem}.stalux-card-time{gap:.45rem;display:inline-flex}.stalux-copyright{color:var(--white-70p);gap:.3em;font-weight:500}.stalux-footer{backdrop-filter:blur(10px);color:var(--white-full);background-color:#0000001a;margin-top:auto;padding:1.5rem 0;font-size:.9rem}.stalux-footer-content{gap:.8rem;max-width:1200px;margin:0 auto;padding:0 1rem}.stalux-home-navs{order:-1;max-width:100%}.stalux-nav-list{transform:scale(var(--nav-scale,1));transform-origin:50%;box-sizing:border-box;gap:2rem;max-width:100%;transition:transform .22s cubic-bezier(.22,.72,.22,1);overflow:visible}.stalux-nav-overlay{pointer-events:none;z-index:999;opacity:0;background:#0009;height:100%;transition:opacity .3s;display:none;position:fixed;top:0;left:0}.stalux-nav-scroll-btn{background:var(--black-30p);backdrop-filter:blur(8px);box-shadow:var(--shadow-md);pointer-events:none;z-index:10;cursor:pointer;width:36px;height:36px;color:var(--white-full);opacity:0;border:none;border-radius:9999px;padding:0;transition:opacity .25s;display:none;position:absolute;top:50%;transform:translateY(-50%)}.stalux-nav-toggle{z-index:998;cursor:pointer;min-width:48px;min-height:48px;color:inherit;background:0 0;border:none;padding:.75rem;display:none}.stalux-post-card{box-sizing:border-box;cursor:pointer;gap:var(--space-lg);border-radius:var(--radius-lg);background-color:var(--card-bg);height:100%;padding:var(--space-lg);box-shadow:var(--card-box-shadow);transition:transform .22s cubic-bezier(.22,.72,.22,1)}.stalux-stats-site-build-time{color:#fffc;margin-top:.5rem;font-size:.9rem}.stalux-stats-stats-separator{color:#ffffff80}.stalux-theme-info{color:var(--white-70p);gap:.3em;font-size:.85rem}.stalux-home-body{min-height:100vh;padding-bottom:var(--space-3xl);position:relative}.stalux-nav-container{box-sizing:border-box;max-width:100%;position:relative;overflow:hidden}.stalux-author{margin-top:4em}.stalux-card-post-cover{border-radius:var(--radius-md);flex-shrink:0;height:180px;margin-bottom:.5rem;overflow:hidden}.stalux-home-title{color:var(--white-full);text-shadow:var(--stalux-text-shadow);margin-top:1.5em;font-size:4em}.stalux-nav-item{text-shadow:var(--stalux-text-shadow);flex-shrink:0;margin-left:1em;margin-right:1em;font-size:1.3em}.stalux-page-description{color:var(--white-60p);margin-bottom:1.5em;font-size:1.2em}.stalux-page-title{text-shadow:var(--stalux-text-shadow);margin-top:1.5em;font-size:2.5em}.stalux-typewriter{min-height:2em;text-shadow:var(--stalux-text-shadow);margin-top:1.5em;font-size:2.5em}.stalux-404-error-container{min-height:60vh;padding:2rem}.stalux-badge,.stalux-badges-wrapper .stalux-badge{width:auto}.stalux-u-min-w-0{min-width:0}.stalux-u-w-full{width:100%}.stalux-u-flex{display:flex}.stalux-u-flex-col{flex-direction:column}.stalux-u-flex-wrap{flex-wrap:wrap}.stalux-u-items-center{align-items:center}.stalux-u-justify-center{justify-content:center}.stalux-badges,.stalux-badges-wrapper{gap:.5rem}.stalux-beian-beian-info{gap:1rem}.stalux-stats-site-stats{gap:.5rem;font-size:.9rem}.stalux-nav-text{white-space:nowrap;color:var(--white-full)}.stalux-badge-group-items{padding-top:.35rem}.stalux-u-text-center{text-align:center}.stalux-badge-group-hint{color:var(--white-70p);font-size:.7rem}.stalux-badge-group-title{color:var(--white-80p)}#stalux-home-show-post-list{cursor:pointer;text-shadow:var(--stalux-text-shadow);margin-top:3em;font-size:1.5em}.stalux-post-list-container{width:100%;height:auto;margin:5px 0}.stalux-post-list-container ul{flex-wrap:wrap;gap:2rem;margin:3em;padding:0;list-style-type:none;display:flex}.stalux-post-list-container ul>li{flex:min(22rem,100%);min-width:0;margin:0}.stalux-card-post-title a{color:inherit;text-decoration:none}.stalux-post-card>a:first-child{width:100%;min-width:0;display:block}.stalux-card-post-cover img{object-fit:cover;width:100%;max-width:100%;height:100%;transition:transform var(--transition-fast)}.stalux-card-post-date,.stalux-card-post-updated{color:#e8f2ff;border-radius:10px;align-items:center;gap:.35rem;width:fit-content;padding:.28rem .6rem;font-size:.9rem;line-height:1.1;display:inline-flex}.stalux-card-post-date{background:var(--date-bg);border:1px solid var(--date-border);color:#e8f2ff}.stalux-card-post-updated{background:var(--updated-bg);border:1px solid var(--updated-border);color:#fff7de}.stalux-card-post-tags a,.stalux-card-post-categories a{text-decoration:none}.stalux-card-post-tags a:focus-visible .stalux-card-post-tag{background:var(--tag-bg-hover)}.stalux-card-post-categories a:focus-visible .stalux-card-post-category{background:var(--category-bg-hover)}.stalux-social{margin-top:3em}.stalux-social ul{flex-wrap:wrap;justify-content:center;gap:1em;margin:0;padding:0;display:flex}.stalux-social ul li{box-sizing:border-box;text-align:center;background-color:var(--white-15p);border-radius:9999px;justify-content:center;align-items:center;width:2.5em;height:2.5em;font-size:large;display:inline-flex;overflow:hidden}.stalux-social ul a,.stalux-social ul .stalux-social-icon-container,.stalux-social ul .stalux-social-custom-icon{justify-content:center;align-items:center;width:100%;height:100%;line-height:1;display:inline-flex}.stalux-social[data-stalux-social-animate=true] li{animation:.28s cubic-bezier(.2,.8,.2,1) both stalux-social-stalux-social-arrive}.stalux-social[data-stalux-social-animate=true] li:nth-child(2){animation-delay:30ms}.stalux-social[data-stalux-social-animate=true] li:nth-child(3){animation-delay:60ms}.stalux-social[data-stalux-social-animate=true] li:nth-child(4){animation-delay:90ms}.stalux-social[data-stalux-social-animate=true] li:nth-child(5){animation-delay:.12s}.stalux-social[data-stalux-social-animate=true] li:nth-child(6){animation-delay:.15s}.stalux-social[data-stalux-social-animate=true] li:nth-child(n+7){animation-delay:.18s}nav{width:100%;min-width:0;max-width:100%}.stalux-nav-scroll-btn[data-visible]{pointer-events:auto;opacity:1}.stalux-nav-scroll-btn[data-side=left]{left:4px}.stalux-nav-scroll-btn[data-side=right]{right:4px}.stalux-nav-scroll-btn svg{stroke:currentColor;stroke-width:2px;fill:none;width:20px;height:20px}.stalux-nav-link,.stalux-nav-link:visited{cursor:pointer;width:100%;color:inherit;min-height:44px;font:inherit;background:0 0;border:none;align-items:center;gap:.5rem;padding:.5rem .75rem;text-decoration:none;display:flex}.stalux-nav-link .nav-icon{stroke:var(--white-full)}.stalux-nav-toggle svg{width:32px;height:32px}.stalux-nav-overlay[data-state=show]{pointer-events:auto;opacity:1;display:block}#stalux-to-archive-archs{margin-top:2em}#stalux-date-date-time{text-shadow:var(--stalux-text-shadow);color:var(--white-full);flex-direction:column;align-items:center;margin-top:2em;display:flex}#stalux-date-date-time #stalux-date-date{min-height:1.25em;margin-bottom:.5em;font-size:2em;line-height:1.25}#stalux-date-date-time #stalux-date-time{font-variant-numeric:tabular-nums;min-height:1.25em;font-size:3em;line-height:1.25}.stalux-author-figure{justify-content:center;align-items:center;display:flex}.stalux-author-figure img{box-shadow:0 0 10px var(--stalux-accent-color);border-radius:9999px;transition:transform .65s ease-in-out}.stalux-author-figure figcaption{text-shadow:var(--stalux-text-shadow);color:var(--white-full);margin-left:1em;font-size:2.5em;font-weight:700}.stalux-author-figure-column figcaption{text-align:center;margin-top:.5em;margin-left:0}.agent-home-summary{clip-path:inset(50%);white-space:normal;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.stalux-404-error-content h1{color:var(--white-90p);margin:0;font-size:6rem;font-weight:700}.stalux-404-error-content p{color:var(--white-70p);margin:1rem 0 2rem;font-size:1.5rem}.stalux-404-countdown-text{color:var(--white-50p)!important;margin:-.5rem 0 1.5rem!important;font-size:.95rem!important}.agent-recovery{max-width:42rem;line-height:1.7;margin:0 auto 1.5rem!important;font-size:1rem!important}.agent-recovery a{color:inherit;text-decoration-line:underline}.stalux-theme-info span,.stalux-copyright span{margin:0}.stalux-theme-info a{color:#fffc;margin:0 .2em;text-decoration:none;transition:color .3s}.stalux-beian-beian-info a{color:#ffffffb3;font-size:.9rem;text-decoration:none;transition:color .3s}.stalux-beian-public-security-beian img{width:15px;height:15px;display:inline-block}.stalux-badge-group-summary::-webkit-details-marker,.stalux-badge-group[open] .stalux-badge-group-hint[data-hint=collapsed],.stalux-badge-group:not([open]) .stalux-badge-group-hint[data-hint=expanded]{display:none}.stalux-badge-group[open] .stalux-badge-group-arrow{transform:rotate(90deg)}@media (hover:hover) and (pointer:fine){.stalux-card-post-tags a:hover .stalux-card-post-tag{background:var(--tag-bg-hover)}.stalux-card-post-categories a:hover .stalux-card-post-category{background:var(--category-bg-hover)}.stalux-post-card-shell:hover .stalux-post-card .stalux-card-post-cover img{transform:scale(1.025)}.stalux-post-card-shell:hover .stalux-post-card{box-shadow:var(--card-box-shadow-hover)}.stalux-nav-scroll-btn:hover{background:0 0}.stalux-nav-container:hover .stalux-nav-scroll-btn[data-visible]{opacity:1}.stalux-nav-link:hover .nav-icon,.stalux-nav-link:hover .stalux-nav-text{stroke:var(--stalux-accent-color);color:var(--stalux-accent-color)}.stalux-author-figure>a:hover img{animation:.65s ease-in-out stalux-link-avatar-spin}.stalux-404-home-btn:hover{background:var(--accent-20p);box-shadow:0 4px 12px var(--shadow-dark)}.stalux-theme-info a:hover{color:#fff;text-decoration:none}.stalux-beian-beian-info a:hover,.stalux-beian-public-security-beian:hover{color:#ffffffe6;text-decoration:none}.stalux-badge-group-summary:hover{color:var(--white-70p)}}@media (width>=601px){html{scroll-padding-top:var(--stalux-nav-offset,12rem)}.stalux-site-nav,.stalux-home-navs{z-index:990;position:sticky;top:0}.stalux-site-nav{isolation:isolate;border-radius:0 0 16px 16px;transition:background-color .18s,box-shadow .18s}.stalux-site-nav[data-scrolled]{backdrop-filter:blur(20px)saturate(140%);box-shadow:0 1px 0 var(--white-10p), 0 8px 24px #0000001f;background:#181818c7}}@media (width<=1100px){.stalux-nav-list{gap:1rem}.stalux-nav-item{margin-left:.6em;margin-right:.6em;font-size:1em}}@media (width<=900px){.stalux-nav-item{margin-left:.25em;margin-right:.25em;font-size:.95em}.stalux-nav-list{gap:.5rem}}@media (width<=768px){.stalux-home-body{box-sizing:border-box;width:100%;max-width:95vw;height:auto;padding:2rem .5rem 1.5rem}.stalux-home-title{word-break:break-all;margin-top:1em;font-size:2em}.stalux-home-navs{flex-direction:column;align-items:center;gap:.5em}.stalux-home-navs nav{width:100%}#stalux-home-show-post-list{margin-top:2em;font-size:1.1em}.stalux-post-list-container ul{margin:1rem}.stalux-footer{padding:1.2rem 0;font-size:.8rem}.stalux-footer-content{gap:.6rem;padding:0 .8rem}.stalux-author{box-sizing:border-box;width:100%;max-width:95vw;margin-top:2em;padding:1em .5em}.stalux-author-figure{gap:.5em;flex-direction:column!important}.stalux-author-figure img{max-width:20vw;max-height:20vw;width:64px!important;height:64px!important}.stalux-author-figure figcaption{text-align:center;word-break:break-all;overflow-wrap:break-word;white-space:normal;max-width:90vw;margin-top:.5em;margin-left:0;font-size:1.5em}.stalux-404-error-content h1{font-size:4rem}.stalux-404-error-content p{font-size:1.2rem}.stalux-badges{gap:.3rem}.stalux-badge{width:auto}}@media (width<=600px){.stalux-nav-toggle[data-state=open]{visibility:hidden;pointer-events:none}.stalux-nav-toggle[data-scrolled]{backdrop-filter:blur(20px)saturate(140%);box-shadow:0 1px 0 var(--white-10p), 0 8px 24px #0000001f;background:#181818c7;border-radius:12px}.stalux-nav-toggle{display:block;position:fixed;top:.75rem;left:.75rem}.stalux-nav-container{overflow:visible}nav{width:auto}.stalux-nav-list{pointer-events:none;z-index:1000;background:var(--black-20p);backdrop-filter:blur(20px);flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:0;width:min(220px,100vw - 1rem);height:100vh;padding:.5rem 1rem 2rem;position:fixed;top:0;left:0;right:auto;overflow-y:auto;transform:translate(-100%)}.stalux-nav-list[data-state=open]{pointer-events:auto;transform:translate(0)}.stalux-nav-item{border-bottom:1px solid var(--white-10p);flex-shrink:0;width:100%;margin:0;font-size:.9em}.stalux-nav-text{display:inline}.stalux-nav-link{width:100%;min-height:44px;font-size:inherit;padding:.45rem .75rem}.stalux-nav-link .nav-icon{width:18px;height:18px}}@media (width<=480px){.stalux-footer{padding:1rem 0;font-size:.8rem}.stalux-footer-content{gap:.6rem;padding:0 .8rem}}@media (prefers-reduced-motion:reduce){.stalux-social[data-stalux-social-animate=true] li{animation:none}}.stalux-main,.stalux-post-page,.stalux-post-layout>*,.stalux-link-card-content,.stalux-word-list-item,.stalux-word-card{box-sizing:border-box;min-width:0;max-width:100%}.stalux-main{overflow-wrap:anywhere}.stalux-link-shell{min-width:0;max-width:100%;display:block}.stalux-link-card{box-sizing:border-box;width:100%;max-width:100%}.stalux-category-shell{width:100%;min-width:0}.stalux-author-figure>a{flex-shrink:0;display:inline-block}.stalux-author-figure img{display:block}.stalux-post-card-shell,.stalux-category-shell,.stalux-link-shell{position:relative}.stalux-post-card,.stalux-category-card,.stalux-link-card,.stalux-word-card{transition:transform .2s,background-color .2s,border-color .2s,box-shadow .2s}:is(.stalux-post-card-shell,.stalux-category-shell):focus-within>*,.stalux-link-shell:focus-visible>*{box-shadow:var(--card-box-shadow-hover)}:is(button,summary,[role=button]):focus-visible{outline:2px solid var(--stalux-accent-color);outline-offset:3px}@media (prefers-reduced-motion:reduce){.stalux-main *,.stalux-main :before,.stalux-main :after{transition-duration:0s!important;animation:none!important}.stalux-post-card,.stalux-category-card,.stalux-link-card,.stalux-link-card-content,.stalux-card-post-cover img,.stalux-category-icon,.stalux-author-figure img,.stalux-link-card-avatar img{transform:none!important}}@keyframes stalux-social-stalux-social-arrive{0%{opacity:0;transform:translateY(.75rem)rotate(-12deg)}to{opacity:1;transform:translateY(0)rotate(0)}}@keyframes stalux-random-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes stalux-link-avatar-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes stalux-word-word-glow{0%{box-shadow:0 0 30px var(--accent-50p), 0 0 80px var(--accent-30p), var(--shadow-lg);transform:scale(1.02)}to{box-shadow:0 0 20px var(--accent-40p), 0 0 60px var(--accent-20p), var(--shadow-lg);transform:scale(1)}}}@layer utilities{.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.visible{visibility:visible}.absolute{position:absolute}.static{position:static}.grid{display:grid}.block{display:block}.inline-block{display:inline-block}.hidden{display:none}.h-full{height:100%}.flex{display:flex}.flex-shrink{flex-shrink:1}.flex-wrap{flex-wrap:wrap}.transform{transform:translateX(var(--un-translate-x)) translateY(var(--un-translate-y)) translateZ(var(--un-translate-z)) rotate(var(--un-rotate)) rotateX(var(--un-rotate-x)) rotateY(var(--un-rotate-y)) rotateZ(var(--un-rotate-z)) skewX(var(--un-skew-x)) skewY(var(--un-skew-y)) scaleX(var(--un-scale-x)) scaleY(var(--un-scale-y)) scaleZ(var(--un-scale-z))}.b,.border{border-width:1px}.text-inherit{color:inherit}.no-underline{text-decoration:none}.outline{outline-style:solid}}@layer theme;@layer base{html,body{color:#fff;width:100%;height:100%;margin:0;& main{flex:1}scrollbar-color:#4a4a4a #2a2a2a;font-family:var(--font-body), "Noto Sans SC", "Noto Sans CJK SC", system-ui, -apple-system, sans-serif;text-rendering:optimizelegibility;line-height:1.25;display:block}html{scrollbar-gutter:stable;background-color:var(--stalux-bg-color,#202020)}html[data-clarity-id]{opacity:1!important}a{color:inherit;cursor:pointer;text-decoration-skip-ink:auto;background-color:#0000;text-decoration:none;transition:color .2s,text-shadow .2s;position:relative}.a-none{cursor:pointer;text-decoration-skip-ink:auto;background-color:#0000;color:inherit!important;text-decoration:none!important}.a-none:after{display:none!important}a:not(.a-none):not([data-stalux-card]):not(.stalux-nav-link):after{content:"";background:linear-gradient(90deg, var(--stalux-accent-color), var(--accent-50p));transform-origin:0;pointer-events:none;width:100%;height:1px;transition:transform .25s cubic-bezier(.25,.9,.2,1);position:absolute;bottom:-2px;left:0;transform:scaleX(0)}a:not(.a-none):not([data-stalux-card]):not(.stalux-nav-link):focus-visible:after,a:not(.a-none):not([data-stalux-card]):not(.stalux-nav-link):active:after{transform:scaleX(1)}@media (hover:hover) and (pointer:fine){a:not(.a-none):not([data-stalux-card]):not(.stalux-nav-link):hover:after{transform:scaleX(1)}}a:active,a:focus-visible{text-decoration:none}@media (hover:hover) and (pointer:fine){a:hover{text-decoration:none}}a:focus{outline:none}a:focus-visible{outline:2px solid var(--stalux-accent-color);outline-offset:2px}ul{margin:0;padding:0;list-style:none}.none{display:none}.stalux-root{color:#fff;min-height:100vh}.stalux-main{min-height:100vh}:root{--stalux-bg-color:#202020;--stalux-bg-filter:none;--stalux-text-shadow:var(--stalux-accent-color) .08rem .08rem .18rem;--stalux-accent-color:#eab308;--stalux-accent-rgb:234 179 8;--surface-glass:var(--black-05p);--surface-glass-shadow:var(--shadow-sidebar);--card-bg:var(--surface-glass);--card-border:#ffffff1a;--card-box-shadow:0 10px 24px #00000014;--card-box-shadow-hover:0 14px 28px #0000001f;--tag-bg:#ffffff1f;--tag-bg-hover:#ffffff2e;--category-bg:#ffffff14;--category-bg-hover:#ffffff24;--date-bg:#42a0ff2e;--date-border:#42a0ff40;--updated-bg:#ffc94733;--updated-border:#ffc9474d;--white-full:#fff;--white-95p:#fffffff2;--white-90p:#ffffffe6;--white-85p:#ffffffd9;--white-80p:#ffffffe6;--white-78p:#ffffffc7;--white-75p:#ffffffbf;--white-70p:#ffffffdb;--white-60p:#fff9;--white-50p:#ffffff80;--white-30p:#ffffff4d;--white-20p:#fff3;--white-15p:#ffffff26;--white-10p:#ffffff1a;--white-05p:#ffffff0d;--black-30p:#0000004d;--black-20p:#0003;--black-15p:#00000026;--black-10p:#0000001a;--black-05p:#0000000d;--accent-90p:rgb(var(--stalux-accent-rgb) / .9);--accent-85p:rgb(var(--stalux-accent-rgb) / .85);--accent-80p:rgb(var(--stalux-accent-rgb) / .8);--accent-70p:rgb(var(--stalux-accent-rgb) / .7);--accent-60p:rgb(var(--stalux-accent-rgb) / .6);--accent-50p:rgb(var(--stalux-accent-rgb) / .5);--accent-40p:rgb(var(--stalux-accent-rgb) / .4);--accent-30p:rgb(var(--stalux-accent-rgb) / .3);--accent-20p:rgb(var(--stalux-accent-rgb) / .2);--transition-fast:.18s ease;--transition-medium:.2s ease;--transition-normal:.25s ease;--transition-slow:.3s ease;--transition-slower:.5s ease;--transition-slowest:.6s ease;--easing-bounce:cubic-bezier(.175, .885, .32, 1.275);--space-2xs:.25rem;--space-xs:.75rem;--space-sm:.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-full:9999px;--shadow-sm:0 2px 5px #0000001a;--shadow-md:0 6px 16px #0003;--shadow-lg:0 8px 20px #0000004d;--shadow-xl:0 12px 26px #00000047;--shadow-sidebar:0 16px 20px -12px #000000d6, 10px 4px 16px -12px #00000094, -10px 4px 16px -12px #00000094;--shadow-raised-hover:0 20px 24px -13px #000000e6, 12px 5px 18px -13px #000000ad, -12px 5px 18px -13px #000000ad;--shadow-dark:#000000c0;--muted-text:#bbb;--font-body:"Noto Sans SC", "Noto Sans CJK SC", system-ui, sans-serif;--font-size-subtitle:1.35rem;--font-size-base:1.1rem;--font-size-small:.95rem;--font-size-smaller:.9rem;--font-size-tiny:.85rem;--border-thin:1px;--border-medium:2px;--border-thick:3px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#2a2a2a;border-radius:4px}::-webkit-scrollbar-thumb{background:#4a4a4a;border-radius:4px;transition:background .3s ease-out}@media (hover:hover) and (pointer:fine){::-webkit-scrollbar-thumb:hover{background:#5a5a5a}}::-webkit-scrollbar-corner{background:#2a2a2a}.bg-layer{z-index:-10;background-position:50%;background-repeat:repeat;background-size:auto;background-color:var(--stalux-bg-color,transparent);filter:var(--stalux-bg-filter,none);pointer-events:none;opacity:0;forced-color-adjust:none;color-scheme:light only;transition:opacity .65s ease-in-out;position:fixed;inset:0}@media (prefers-reduced-motion:reduce){.bg-layer{transition-duration:0s}}footer{padding:var(--space-lg) var(--space-md);text-align:center;color:var(--muted-text);border-top:1px solid var(--white-10p);backdrop-filter:blur(16px);background:linear-gradient(#0c0e122e,#0c0e12b8)}}@media print{[data-stalux-offscreen-code],[data-stalux-offscreen-svg]{content-visibility:visible!important;contain-intrinsic-block-size:none!important}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.stagger-children>:first-child{animation-delay:.1s}.stagger-children>:nth-child(2){animation-delay:.15s}.stagger-children>:nth-child(3){animation-delay:.2s}.stagger-children>:nth-child(4){animation-delay:.25s}.stagger-children>:nth-child(5){animation-delay:.3s}.stagger-children>:nth-child(n+6){animation-delay:.35s}@keyframes stalux-page-exit{to{opacity:0}}@keyframes stalux-page-enter{0%{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}@keyframes stalux-page-enter-back{0%{opacity:0;transform:translateY(-9px)}to{opacity:1;transform:translateY(0)}}@keyframes stalux-taxonomy-enter{0%{opacity:0;transform:translate(12px)}to{opacity:1;transform:translate(0)}}@keyframes stalux-taxonomy-enter-back{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}@keyframes stalux-article-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes stalux-article-enter-back{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes stalux-sidebar-left-in{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:translate(0)}}@keyframes stalux-sidebar-left-out{to{opacity:0;transform:translate(-10px)}}@keyframes stalux-sidebar-left-back-in{0%{opacity:0;transform:translate(14px)}to{opacity:1;transform:translate(0)}}@keyframes stalux-sidebar-left-back-out{to{opacity:0;transform:translate(10px)}}@keyframes stalux-sidebar-right-in{0%{opacity:0;transform:translate(14px)}to{opacity:1;transform:translate(0)}}@keyframes stalux-sidebar-right-out{to{opacity:0;transform:translate(10px)}}@keyframes stalux-sidebar-right-back-in{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:translate(0)}}@keyframes stalux-sidebar-right-back-out{to{opacity:0;transform:translate(-10px)}}::view-transition-group(stalux-page){z-index:1}::view-transition-old(stalux-page),::view-transition-new(stalux-page){transform-origin:top}::view-transition-group(*){animation-duration:.24s;animation-timing-function:cubic-bezier(.22,.72,.22,1)}@media (prefers-reduced-motion:reduce){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation-duration:1ms!important;animation-delay:0s!important}.stalux-main,.stalux-main *,.postLayout *{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}
|
|
3
3
|
/*$vite$:1*/
|
|
@@ -1,3 +1,31 @@
|
|
|
1
|
+
/* User-generated text cannot use the build-time page subset. Keep this boundary
|
|
2
|
+
independent of --font-body and its per-page FontFace replacement. */
|
|
3
|
+
.waline-comment-container {
|
|
4
|
+
--waline-font-family:
|
|
5
|
+
system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "Microsoft YaHei",
|
|
6
|
+
"Noto Sans CJK SC", sans-serif;
|
|
7
|
+
font-family: var(--waline-font-family);
|
|
8
|
+
}
|
|
9
|
+
.waline-comment-container :where(input, textarea, button, select) {
|
|
10
|
+
font-family: var(--waline-font-family);
|
|
11
|
+
}
|
|
12
|
+
.waline-comment-container :where(pre, code, kbd, samp) {
|
|
13
|
+
font-family: ui-monospace, "Cascadia Code", Consolas, monospace;
|
|
14
|
+
}
|
|
15
|
+
.waline-retry {
|
|
16
|
+
min-height: 44px;
|
|
17
|
+
padding: 0.6rem 1rem;
|
|
18
|
+
border: 1px solid var(--accent-50p);
|
|
19
|
+
border-radius: 8px;
|
|
20
|
+
background: var(--white-05p);
|
|
21
|
+
color: inherit;
|
|
22
|
+
cursor: pointer;
|
|
23
|
+
}
|
|
24
|
+
.waline-retry:focus-visible {
|
|
25
|
+
outline: 2px solid var(--stalux-accent-color);
|
|
26
|
+
outline-offset: 3px;
|
|
27
|
+
}
|
|
28
|
+
|
|
1
29
|
:root {
|
|
2
30
|
--waline-accent-rgb: var(--stalux-accent-rgb);
|
|
3
31
|
}
|