.rain-canvas[data-v-f3cdf1b2]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;opacity:.35}.progress[data-v-f363d5b0]{position:fixed;top:0;left:0;height:1px;width:0;background:var(--accent);z-index:100;transition:width .1s linear}.site-header[data-v-f363d5b0]{position:sticky;top:0;z-index:50;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);background:color-mix(in srgb,var(--bg) 82%,transparent);border-bottom:1px solid var(--line);transition:transform .35s cubic-bezier(.2,.8,.3,1)}.site-header.hidden[data-v-f363d5b0]{transform:translateY(-100%)}.header-inner[data-v-f363d5b0]{max-width:1160px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;gap:32px}.logo[data-v-f363d5b0]{font-size:17px;font-weight:700;letter-spacing:4px;color:var(--accent);display:flex;align-items:baseline;gap:10px}.logo em[data-v-f363d5b0]{font-style:normal;font-size:10px;letter-spacing:2px;color:var(--text-faint);font-weight:400}.nav-links[data-v-f363d5b0]{display:flex;gap:8px}.nav-links a[data-v-f363d5b0]{color:var(--text-dim);font-size:13px;padding:6px 4px;letter-spacing:2px;position:relative;transition:color .25s}.nav-links a[data-v-f363d5b0]:after{content:"";position:absolute;left:4px;right:4px;bottom:0;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .3s cubic-bezier(.2,.8,.3,1)}.nav-links a[data-v-f363d5b0]:hover{color:var(--accent)}.nav-links a.router-link-active[data-v-f363d5b0]:after,.nav-links a[data-v-f363d5b0]:hover:after{transform:scaleX(1)}.nav-links a.router-link-active[data-v-f363d5b0]{color:var(--accent)}.nav-right[data-v-f363d5b0]{margin-left:auto;display:flex;align-items:center;gap:10px}.theme-toggle[data-v-f363d5b0]{background:none;border:1px solid var(--line-bright);border-radius:2px;width:36px;height:36px;cursor:pointer;font-size:14px;color:var(--text-dim);transition:all .25s;display:inline-flex;align-items:center;justify-content:center}.theme-toggle[data-v-f363d5b0]:hover{color:var(--accent);border-color:var(--accent);transform:rotate(15deg)}.welcome[data-v-f363d5b0]{color:var(--text-dim);font-size:13px;letter-spacing:1px}.welcome[data-v-f363d5b0]:hover{color:var(--accent)}.site-main[data-v-f363d5b0]{position:relative;z-index:1;max-width:1160px;margin:0 auto;padding:32px 24px 40px;min-height:calc(100vh - 160px)}.site-footer[data-v-f363d5b0]{position:relative;z-index:1;border-top:1px solid var(--line);padding:32px 0;text-align:center;color:var(--text-faint);font-size:11px;letter-spacing:3px}.site-footer b[data-v-f363d5b0]{color:var(--text-dim);font-weight:500}:root{--bg: #101012;--bg-soft: #17181a;--card: #141517;--line: #26272b;--line-bright: #3a3b40;--text: #f0f0ee;--text-dim: #9a9aa0;--text-faint: #6b6b71;--accent: #ffffff;--accent-contrast: #111112;--chip: rgba(255, 255, 255, .06);--danger: #d05a52}body.light{--bg: #f6f6f4;--bg-soft: #ffffff;--card: #fbfbfa;--line: #e4e4e0;--line-bright: #c9c9c3;--text: #26262a;--text-dim: #6d6d72;--text-faint: #9a9aa0;--accent: #16161a;--accent-contrast: #ffffff;--chip: rgba(22, 22, 26, .06);--danger: #b04a44}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:PingFang SC,Microsoft YaHei,Segoe UI,system-ui,sans-serif;line-height:1.75;transition:background .45s ease,color .45s ease}a{text-decoration:none;color:inherit}button{font-family:inherit}::selection{background:var(--accent);color:var(--accent-contrast)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--line-bright);border-radius:5px}::-webkit-scrollbar-track{background:var(--bg)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:8px 20px;font-size:13px;letter-spacing:2px;cursor:pointer;border-radius:2px;transition:all .25s;border:1px solid transparent}.btn-ghost{color:var(--text-dim);background:none;border-color:var(--line-bright)}.btn-ghost:hover{color:var(--accent);border-color:var(--accent)}.btn-primary{background:var(--accent);color:var(--accent-contrast);border-color:var(--accent);font-weight:600}.btn-primary:hover{background:transparent;color:var(--accent)}.btn-danger{background:none;border-color:var(--danger);color:var(--danger)}.btn-danger:hover{background:var(--danger);color:#fff}.chip{font-size:12px;padding:2px 10px;color:var(--text-dim);background:var(--chip);border-radius:2px;letter-spacing:1px}.input,select.input,textarea.input{width:100%;background:var(--bg-soft);border:1px solid var(--line-bright);border-radius:2px;color:var(--text);padding:10px 14px;font-size:14px;outline:none;transition:border-color .25s;font-family:inherit}.input:focus{border-color:var(--accent)}body.js-ready .reveal{opacity:0;transform:translateY(24px);transition:opacity .9s ease,transform .9s cubic-bezier(.2,.8,.3,1)}body.js-ready .reveal.left{transform:translate(-28px)}body.js-ready .reveal.on{opacity:1;transform:none}.markdown-body{line-height:1.9;font-size:15px;color:var(--text)}.markdown-body h1,.markdown-body h2,.markdown-body h3{margin:26px 0 12px;letter-spacing:1px}.markdown-body h1{font-size:22px;border-bottom:1px solid var(--line);padding-bottom:10px}.markdown-body h2{font-size:19px}.markdown-body h3{font-size:17px}.markdown-body p{margin:12px 0}.markdown-body pre{background:var(--bg-soft);border:1px solid var(--line);padding:14px;border-radius:2px;overflow-x:auto;font-size:13px;line-height:1.6}.markdown-body code{background:var(--chip);padding:2px 6px;border-radius:2px;font-size:13px}.markdown-body pre code{background:none;padding:0}.markdown-body blockquote{border-left:3px solid var(--line-bright);margin:12px 0;padding:4px 16px;color:var(--text-dim);background:var(--bg-soft)}.markdown-body img{max-width:100%;border-radius:2px}.markdown-body ul,.markdown-body ol{padding-left:24px;margin:10px 0}.markdown-body a{color:var(--accent);border-bottom:1px solid var(--line-bright)}.markdown-body table{border-collapse:collapse;margin:12px 0}.markdown-body th,.markdown-body td{border:1px solid var(--line);padding:6px 12px;font-size:14px}
