:root{color-scheme:light;--font-sans:"LXGW WenKai", "TsangerJinKai02", "STKaiti", "Kaiti SC", "KaiTi", "楷体", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;--font-mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--bg:#f5f4ed;--surface:#fff;--ink:#24292f;--ink-strong:#15141a;--ink-soft:#24292fe0;--ink-card:#24292fcc;--muted:#24292f85;--line:#e6e3d9;--line-strong:#d6d2c5;--underline:#24292f4d;--hover:#24292f0d;--code-bg:#fff;--code-border:#e2dfd4;--radius:8px;--width:900px;--ease:cubic-bezier(.22, .61, .36, 1);--header-h:61px}:root[data-theme=dark]{color-scheme:dark;--bg:#161613;--surface:#1e1e1b;--ink:#eae7df;--ink-strong:#fff;--ink-soft:#eae7dfdb;--ink-card:#eae7dfcc;--muted:#eae7df75;--line:#2d2c28;--line-strong:#413f39;--underline:#eae7df66;--hover:#ffffff0f;--code-bg:#171613;--code-border:#33312c}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:var(--header-h)}body{min-height:calc(100vh - var(--header-h));padding-top:var(--header-h);background:var(--bg);color:var(--ink-soft);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;margin:0;font-size:.9375rem;line-height:1.64;display:flex}h1,h2,h3,h4{color:var(--ink);letter-spacing:.02em;font-weight:700;line-height:1.35}p{text-wrap:pretty}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}button{font:inherit;color:inherit}::selection{background:var(--ink);color:var(--bg)}:focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:3px}hr{border:none;border-top:1px solid var(--line);margin:2.5rem 0}.container{width:100%;max-width:var(--width);margin-inline:auto;padding-inline:24px}.page{gap:1.75rem;padding-block:2.5rem 0;display:grid}.page-head{gap:.5rem;display:grid}.page-head h1{margin:0;font-size:clamp(1.5rem,1rem + 1.4vw,1.875rem);line-height:1.35}.page-head p{color:var(--ink-soft);margin:0}.post-list{gap:2rem;display:grid}@media (width<=640px){.post-list{gap:1.25rem}}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.prose{color:var(--ink-soft);font-size:1.0625rem;line-height:1.64}.prose>:first-child{margin-top:0}.prose h2,.prose h3,.prose h4{margin:2.2em 0 .75em;line-height:1.45}.prose h2{font-size:1.375rem}.prose h3{font-size:1.125rem}.prose h4{color:var(--ink);font-size:1rem}.prose p,.prose ul,.prose ol,.prose blockquote,.prose table,.prose pre,.prose figure{margin:0 0 1.3em}.prose ul,.prose ol{padding-left:1.35em}.prose li{margin:.35em 0}.prose strong{color:var(--ink);font-weight:600}.prose a{color:var(--ink);text-underline-offset:2px;text-decoration:underline 1px;text-decoration-color:var(--underline)}.prose a:hover{text-decoration-color:var(--ink)}.prose blockquote{border-left:2px solid var(--line-strong);color:var(--muted);margin-inline:0;padding:.1rem 0 .1rem 1.1rem}.prose blockquote>:last-child{margin-bottom:0}.prose code{font-family:var(--font-mono);background:var(--hover);color:var(--ink);border-radius:3px;padding:.12em .34em;font-size:.85em}.prose pre{border:1px solid var(--code-border);border-radius:var(--radius);padding:1.1rem 1.25rem;font-size:.875rem;line-height:1.7;position:relative;overflow-x:auto}.code-block{background:var(--code-surface,#0a0c10);border:1px solid #ffffff17;border-radius:10px;margin:0 0 1.3em;overflow:hidden}.code-block pre{background:0 0;border:none;border-radius:0;margin:0;padding:1rem 1.15rem}.code-bar{background:#ffffff0b;border-bottom:1px solid #ffffff12;align-items:center;height:38px;padding:0 .75rem 0 .85rem;display:flex;position:relative}.code-dots{gap:6px;display:flex}.code-dots i{border-radius:50%;width:10px;height:10px}.code-dots i:first-child{background:#e5615a}.code-dots i:nth-child(2){background:#dcae4a}.code-dots i:nth-child(3){background:#4f9f5c}.code-lang{max-width:50%;font-family:var(--font-mono);letter-spacing:.02em;color:#fff6;text-overflow:ellipsis;white-space:nowrap;pointer-events:none;font-size:.6875rem;position:absolute;left:50%;overflow:hidden;transform:translate(-50%)}.prose .copy-btn{color:#ffffff73;min-width:3.4rem;font-family:var(--font-mono);text-align:right;cursor:pointer;transition:color .16s var(--ease);background:0 0;border:none;margin-left:auto;padding:.15rem .2rem;font-size:.6875rem;line-height:1.6}.prose .copy-btn:hover,.prose .copy-btn:focus-visible{color:#fff}.prose h2,.prose h3,.prose h4{scroll-margin-top:calc(var(--header-h) + 1rem)}.prose .anchor{color:var(--muted);opacity:0;transition:opacity .15s var(--ease), color .2s var(--ease);margin-left:.35rem;font-weight:400;text-decoration:none}.prose .anchor:after{content:"#"}.prose h2:hover .anchor,.prose h3:hover .anchor,.prose h4:hover .anchor,.prose .anchor:focus-visible{opacity:1}.prose .anchor:hover{color:var(--ink-strong)}.prose pre code{font-size:inherit;background:0 0;padding:0}.prose pre.astro-code{color:var(--shiki-dark);background:#0a0c10}.prose pre.astro-code span{color:var(--shiki-dark)}.code-block pre.astro-code{background:0 0}.prose table{border-collapse:collapse;width:100%;font-size:.875rem}.prose th,.prose td{border-bottom:1px solid var(--line);text-align:left;padding:.5rem .7rem}.prose th{color:var(--ink);font-weight:600}.prose img{border-radius:var(--radius);cursor:zoom-in}.img-viewer{cursor:zoom-out;background:0 0;border:none;max-width:92vw;max-height:92vh;padding:0;overflow:visible}.img-viewer::backdrop{background:#0c0c0cd1}.img-viewer img{border-radius:4px;max-width:92vw;max-height:92vh;display:block}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.skip-link[data-astro-cid-ju4pidww]{z-index:100;background:var(--ink);color:var(--bg);padding:.5rem .9rem;font-size:.8125rem;position:absolute;top:-100%;left:1rem}.skip-link[data-astro-cid-ju4pidww]:focus-visible{top:.5rem}.site-header[data-astro-cid-ju4pidww]{height:var(--header-h);z-index:50;background:var(--surface);border-bottom:1px solid var(--line);position:fixed;inset:0 0 auto}.header-inner[data-astro-cid-ju4pidww]{justify-content:space-between;align-items:center;gap:1.5rem;height:60px;display:flex}.header-left[data-astro-cid-ju4pidww]{align-items:center;gap:1.75rem;min-width:0;display:flex}.brand[data-astro-cid-ju4pidww]{letter-spacing:.02em;white-space:nowrap;font-size:1.25rem;font-weight:700}.site-nav[data-astro-cid-ju4pidww]{align-items:center;gap:1.5rem;display:flex}.nav-link[data-astro-cid-ju4pidww]{color:var(--ink-soft);transition:color .2s var(--ease);font-size:.9375rem}.nav-link[data-astro-cid-ju4pidww]:hover{color:var(--ink)}.nav-link[data-astro-cid-ju4pidww].is-active{color:var(--ink-strong)}.theme-toggle[data-astro-cid-ju4pidww]{width:28px;height:28px;color:var(--ink-soft);cursor:pointer;transition:color .16s var(--ease);background:0 0;border:none;place-items:center;padding:0;display:grid}.theme-toggle[data-astro-cid-ju4pidww]:hover{color:var(--ink)}.theme-toggle[data-astro-cid-ju4pidww] .icon-sun[data-astro-cid-ju4pidww],.theme-toggle[data-astro-cid-ju4pidww] .icon-moon[data-astro-cid-ju4pidww]{grid-area:1/1}.theme-toggle[data-astro-cid-ju4pidww] .icon-moon[data-astro-cid-ju4pidww],:root[data-theme=dark] .theme-toggle[data-astro-cid-ju4pidww] .icon-sun[data-astro-cid-ju4pidww]{display:none}:root[data-theme=dark] .theme-toggle[data-astro-cid-ju4pidww] .icon-moon[data-astro-cid-ju4pidww]{display:block}.site-main[data-astro-cid-ju4pidww]{flex:1 0 auto;width:100%;padding-bottom:clamp(3rem,8vw,6rem)}.to-top[data-astro-cid-ju4pidww]{z-index:40;border:1px solid var(--line);background:var(--surface);width:38px;height:38px;color:var(--ink-soft);cursor:pointer;opacity:0;visibility:hidden;transition:opacity .2s var(--ease), transform .2s var(--ease), visibility .2s var(--ease), color .16s var(--ease), border-color .16s var(--ease);border-radius:50%;place-items:center;padding:0;display:grid;position:fixed;bottom:clamp(1rem,3vw,1.75rem);right:clamp(1rem,3vw,1.75rem);transform:translateY(6px)}.to-top[data-astro-cid-ju4pidww].is-visible{opacity:1;visibility:visible;transform:none}.to-top[data-astro-cid-ju4pidww]:hover{color:var(--ink);border-color:var(--line-strong)}@media (prefers-reduced-motion:reduce){.to-top[data-astro-cid-ju4pidww]{transition:none}}@media (width<=560px){.header-inner[data-astro-cid-ju4pidww]{gap:.75rem}.header-left[data-astro-cid-ju4pidww]{gap:1.1rem}.site-nav[data-astro-cid-ju4pidww]{gap:.9rem}.nav-link[data-astro-cid-ju4pidww]{font-size:.875rem}}
