.theme-toggle[data-v-3aeeb74d]{background:none;border:none;font-size:18px;cursor:pointer;padding:4px;line-height:1}.theme-toggle[data-v-3aeeb74d]:hover{opacity:.7}.back-to-top[data-v-3aeeb74d]{position:fixed;bottom:30px;right:30px;width:44px;height:44px;border-radius:50%;background:var(--accent);color:#fff;border:none;font-size:20px;cursor:pointer;box-shadow:0 2px 12px #00000026;display:flex;align-items:center;justify-content:center;transition:all .3s;z-index:999}.back-to-top[data-v-3aeeb74d]:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0003}.fade-enter-active[data-v-3aeeb74d],.fade-leave-active[data-v-3aeeb74d]{transition:opacity .3s}.fade-enter-from[data-v-3aeeb74d],.fade-leave-to[data-v-3aeeb74d]{opacity:0}:root{--bg: #FDF6EC;--bg-card: #FFFFFF;--text: #4E342E;--text-title: #3E2723;--text-light: #8D6E63;--accent: #C0392B;--accent-hover: #A93226;--border: #D7CCC8;--code-bg: #F5EDE3;--quote-bg: #FFF3E0;--quote-border: #C0392B;--tag-bg: #FFEBE0;--tag-text: #C0392B;--shadow: rgba(62, 39, 35, .08);--font-sans: -apple-system, "Noto Sans SC", "PingFang SC", "Microsoft YaHei", sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace}[data-theme=dark]{--bg: #1A1410;--bg-card: #2D2520;--text: #D7CCC8;--text-title: #EFEBE9;--text-light: #A1887F;--accent: #E57373;--accent-hover: #EF5350;--border: #4E342E;--code-bg: #3E2723;--quote-bg: #3E2723;--quote-border: #E57373;--tag-bg: #3E2723;--tag-text: #E57373;--shadow: rgba(0, 0, 0, .3)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-sans);background:var(--bg);color:var(--text);line-height:1.8;font-size:16px;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s}a:hover{border-bottom-color:var(--accent)}.container{max-width:720px;margin:0 auto;padding:0 24px}.navbar{background:var(--bg-card);border-bottom:1px solid var(--border);padding:16px 0;position:sticky;top:0;z-index:100}.navbar .container{display:flex;justify-content:space-between;align-items:center}.navbar-brand{font-size:22px;font-weight:700;color:var(--accent);letter-spacing:1px}.navbar-links{display:flex;gap:24px;list-style:none}.navbar-links a{color:var(--text);font-size:14px;opacity:.7;border:none}.navbar-links a:hover,.navbar-links a.router-link-active{opacity:1;color:var(--accent)}.post-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:28px;margin-bottom:20px;box-shadow:0 2px 8px var(--shadow);transition:transform .2s,box-shadow .2s}.post-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px var(--shadow)}.post-card-title{font-size:22px;color:var(--text-title);margin-bottom:8px}.post-card-meta{font-size:13px;color:var(--text-light);margin-bottom:12px}.post-card-summary{color:var(--text);font-size:15px;line-height:1.7}.tag{display:inline-block;background:var(--tag-bg);color:var(--tag-text);font-size:12px;padding:3px 12px;border-radius:20px;margin-right:6px}.post-detail{padding:50px 0}.post-detail h1{font-size:32px;color:var(--text-title);margin-bottom:8px;line-height:1.4}.post-detail h2{font-size:22px;color:var(--text-title);margin:36px 0 16px;padding-left:14px;border-left:3px solid var(--accent)}.post-detail h3{font-size:18px;color:var(--text-title);margin:28px 0 12px}.post-detail p{margin-bottom:20px}.post-detail code{background:var(--code-bg);padding:2px 8px;border-radius:4px;font-family:var(--font-mono);font-size:14px}.post-detail pre{background:var(--code-bg);padding:20px;border-radius:10px;margin:24px 0;overflow-x:auto;line-height:1.6}.post-detail pre code{background:none;padding:0}.post-detail blockquote{background:var(--quote-bg);border-left:4px solid var(--quote-border);padding:16px 20px;margin:24px 0;border-radius:0 8px 8px 0;font-style:italic;color:var(--text);opacity:.85}.post-detail img{max-width:100%;border-radius:8px;margin:16px 0}.pagination{display:flex;justify-content:center;gap:12px;padding:32px 0}.pagination button{background:var(--bg-card);border:1px solid var(--border);padding:8px 16px;border-radius:8px;color:var(--text);cursor:pointer;transition:all .2s}.pagination button:hover,.pagination button.active{background:var(--accent);color:#fff;border-color:var(--accent)}.footer{border-top:1px solid var(--border);padding:24px 0;text-align:center;font-size:12px;color:var(--text-light);margin-top:60px}@media (max-width: 768px){.container{padding:0 16px}.post-detail h1{font-size:24px}.post-card{padding:20px}}.code-group{margin:20px 0;border-radius:10px;overflow:hidden;border:1px solid var(--border)}.code-tabs{display:flex;background:var(--code-bg);border-bottom:1px solid var(--border)}.code-tab{padding:8px 16px;border:none;background:none;cursor:pointer;font-size:13px;color:var(--text-light);transition:all .2s}.code-tab.active{color:var(--accent);font-weight:600;border-bottom:2px solid var(--accent)}.code-tab:hover{color:var(--accent)}.code-group pre{margin:0;border-radius:0}details{margin:16px 0;border:1px solid var(--border);border-radius:8px;overflow:hidden}details summary{padding:12px 16px;cursor:pointer;font-weight:600;color:var(--text-title);background:var(--code-bg);-webkit-user-select:none;user-select:none}details summary:hover{background:var(--quote-bg)}details>div{padding:16px}.tabs{margin:20px 0;border:1px solid var(--border);border-radius:10px;overflow:hidden}.tab-bar{display:flex;background:var(--code-bg);border-bottom:1px solid var(--border)}.tab-btn{padding:10px 20px;border:none;background:none;cursor:pointer;font-size:14px;color:var(--text-light);transition:all .2s}.tab-btn.active{color:var(--accent);font-weight:600;border-bottom:2px solid var(--accent);background:var(--bg-card)}.tab-content{padding:20px}.toc{background:var(--bg-card);border:1px solid var(--border);border-radius:10px;padding:20px;margin:20px 0}.toc strong{display:block;margin-bottom:12px;color:var(--text-title)}.toc ul{list-style:none;padding-left:0}.toc li{padding:4px 0}.toc a{color:var(--text);font-size:14px;border:none}.toc a:hover{color:var(--accent)}.format-badge{display:inline-block;font-size:11px;padding:2px 8px;border-radius:4px;margin-right:6px;font-weight:600}.format-badge.markdown{background:#e8f5e9;color:#2e7d32}.format-badge.html{background:#e3f2fd;color:#1565c0}.format-badge.mdx{background:#fff3e0;color:#e65100}[data-theme=dark] .format-badge.markdown{background:#1b5e20;color:#a5d6a7}[data-theme=dark] .format-badge.html{background:#0d47a1;color:#90caf9}[data-theme=dark] .format-badge.mdx{background:#bf360c;color:#ffcc80}[data-theme=dark] .post-content pre{background:#1e1e1e}[data-theme=dark] .post-content code{background:#3e3e3e;color:#d4d4d4}[data-theme=dark] .hljs{background:#1e1e1e;color:#d4d4d4}@media (max-width: 900px){.post-page{flex-direction:column}.toc-sidebar{position:static;width:100%;border-right:none;border-bottom:1px solid var(--border);padding:16px 0;margin:0 0 20px;max-height:200px}}@media (max-width: 768px){.navbar .container{flex-wrap:wrap;gap:10px}.navbar-links{gap:12px;font-size:13px}.post-detail h1{font-size:22px}.post-card{padding:16px}.post-card-title{font-size:18px}.post-page{padding:20px 12px}}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}/*!
  Theme: GitHub
  Description: Light theme as seen on github.com
  Author: github.com
  Maintainer: @Hirse
  Updated: 2021-05-15

  Outdated base version: https://github.com/primer/github-syntax-light
  Current colors taken from GitHub's CSS
*/.hljs{color:#24292e;background:#fff}.hljs-doctag,.hljs-keyword,.hljs-meta .hljs-keyword,.hljs-template-tag,.hljs-template-variable,.hljs-type,.hljs-variable.language_{color:#d73a49}.hljs-title,.hljs-title.class_,.hljs-title.class_.inherited__,.hljs-title.function_{color:#6f42c1}.hljs-attr,.hljs-attribute,.hljs-literal,.hljs-meta,.hljs-number,.hljs-operator,.hljs-variable,.hljs-selector-attr,.hljs-selector-class,.hljs-selector-id{color:#005cc5}.hljs-regexp,.hljs-string,.hljs-meta .hljs-string{color:#032f62}.hljs-built_in,.hljs-symbol{color:#e36209}.hljs-comment,.hljs-code,.hljs-formula{color:#6a737d}.hljs-name,.hljs-quote,.hljs-selector-tag,.hljs-selector-pseudo{color:#22863a}.hljs-subst{color:#24292e}.hljs-section{color:#005cc5;font-weight:700}.hljs-bullet{color:#735c0f}.hljs-emphasis{color:#24292e;font-style:italic}.hljs-strong{color:#24292e;font-weight:700}.hljs-addition{color:#22863a;background-color:#f0fff4}.hljs-deletion{color:#b31d28;background-color:#ffeef0}
