.nav[data-astro-cid-dmqpwcec]{position:sticky;top:1rem;z-index:50;display:flex;align-items:center;justify-content:space-between;border:1px solid transparent;border-radius:4px;margin-bottom:3rem;transition:padding .3s,transform .3s,margin-inline .3s,border-color .15s,background-color .15s,box-shadow .3s}.nav[data-astro-cid-dmqpwcec].stuck{border-color:var(--border);background-color:var(--nav-bg);padding-inline:.375rem;box-shadow:var(--shadow)}.nav[data-astro-cid-dmqpwcec][data-show=false]:not(.expanded){transform:translateY(-5rem)}@media(min-width:800px){.nav[data-astro-cid-dmqpwcec].stuck{margin-inline:0}}.brand[data-astro-cid-dmqpwcec]{z-index:30;font-family:var(--font-brand);font-size:1.3rem;line-height:1.2;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:inherit;text-decoration:none;white-space:nowrap;transition:margin-inline .3s}.brand[data-astro-cid-dmqpwcec]:hover{text-decoration:none;color:var(--accent)}.nav[data-astro-cid-dmqpwcec].stuck .brand[data-astro-cid-dmqpwcec]{margin-inline-start:.5rem}@media(min-width:640px){.nav[data-astro-cid-dmqpwcec].stuck .brand[data-astro-cid-dmqpwcec]{margin-inline-start:.75rem}}.nav-right[data-astro-cid-dmqpwcec]{display:flex;align-items:center;gap:.5rem}.expand[data-astro-cid-dmqpwcec]{display:grid;border:1px solid transparent;transition:padding .3s,opacity .3s,border-color .15s,grid-template-rows .3s}.nav[data-astro-cid-dmqpwcec].stuck .expand[data-astro-cid-dmqpwcec]{border-radius:4px}.expand-inner[data-astro-cid-dmqpwcec]{display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}@media(min-width:640px){.expand[data-astro-cid-dmqpwcec]{grid-template-rows:1fr}.expand-inner[data-astro-cid-dmqpwcec]{flex-direction:row}}.nav-link[data-astro-cid-dmqpwcec]{width:100%;flex:none;flex-grow:1;padding:.625rem 0;text-align:right;font-family:var(--font-ui);font-weight:500;font-size:1.05rem;line-height:1.5;text-transform:uppercase;letter-spacing:.06em;color:inherit;text-decoration:none;white-space:nowrap}.nav-link[data-astro-cid-dmqpwcec]:hover{color:var(--accent);text-decoration:none}@media(min-width:640px){.nav-link[data-astro-cid-dmqpwcec]{width:fit-content;padding:.625rem .75rem;flex-grow:0}}.actions[data-astro-cid-dmqpwcec]{z-index:30;display:flex;gap:1rem;transition:gap .3s}.nav[data-astro-cid-dmqpwcec].stuck .actions[data-astro-cid-dmqpwcec]{gap:.5rem}.icon-btn[data-astro-cid-dmqpwcec]{box-sizing:content-box;width:22px;height:22px;padding:6px;border:1px solid var(--border);border-radius:4px;background:none;color:inherit;cursor:pointer;display:block;transition:background-color .15s,color .15s}.icon-btn[data-astro-cid-dmqpwcec]:hover{background-color:var(--hairline);color:var(--accent)}.icon-btn[data-astro-cid-dmqpwcec] svg[data-astro-cid-dmqpwcec]{display:none;width:22px;height:22px}.theme-btn[data-astro-cid-dmqpwcec][data-mode=system] .ico-system[data-astro-cid-dmqpwcec],.theme-btn[data-astro-cid-dmqpwcec][data-mode=light] .ico-light[data-astro-cid-dmqpwcec],.theme-btn[data-astro-cid-dmqpwcec][data-mode=dark] .ico-dark[data-astro-cid-dmqpwcec]{display:block}.menu-btn[data-astro-cid-dmqpwcec] svg[data-astro-cid-dmqpwcec]{display:block}.menu-btn[data-astro-cid-dmqpwcec]{display:none}@media(max-width:640px){.nav[data-astro-cid-dmqpwcec]{padding-block:.25rem;z-index:30}.expand[data-astro-cid-dmqpwcec]{position:absolute;left:0;right:0;top:3rem;grid-template-rows:0fr;opacity:0}.nav[data-astro-cid-dmqpwcec].expanded .expand[data-astro-cid-dmqpwcec]{grid-template-rows:1fr;opacity:1}.nav[data-astro-cid-dmqpwcec].stuck .expand[data-astro-cid-dmqpwcec]{border-color:var(--border);background-color:var(--nav-bg)}.nav[data-astro-cid-dmqpwcec].expanded.stuck .expand[data-astro-cid-dmqpwcec]{padding:.5rem 1rem}.expand[data-astro-cid-dmqpwcec]:after{content:"";box-sizing:content-box;position:absolute;inset-inline:calc(-1rem - 1px);bottom:0;top:-5rem;z-index:-1;visibility:hidden;opacity:0;border-bottom:1px solid transparent;transition:.3s}.nav[data-astro-cid-dmqpwcec]:not(.stuck) .expand[data-astro-cid-dmqpwcec]:after{visibility:visible;bottom:-1rem;opacity:1;background-color:var(--nav-bg);border-bottom-color:var(--border)}.menu-btn[data-astro-cid-dmqpwcec]{display:block}}@media(prefers-reduced-motion:reduce){.nav[data-astro-cid-dmqpwcec],.brand[data-astro-cid-dmqpwcec],.expand[data-astro-cid-dmqpwcec],.actions[data-astro-cid-dmqpwcec],.icon-btn[data-astro-cid-dmqpwcec]{transition:none!important}.nav[data-astro-cid-dmqpwcec][data-show=false]:not(.expanded){transform:none}}.foot[data-astro-cid-sz7xmlte]{margin-top:4rem;margin-bottom:1.25rem}.rule[data-astro-cid-sz7xmlte]{position:relative;border-top:1px solid var(--hairline);padding-top:1.25rem}.rule[data-astro-cid-sz7xmlte]:before{content:"";position:absolute;top:-1px;left:0;width:2.5rem;height:1px;background:var(--accent-line)}.row[data-astro-cid-sz7xmlte]{display:flex;align-items:center;justify-content:space-between}.meta[data-astro-cid-sz7xmlte]{display:flex;align-items:center;gap:1rem;font-size:.85rem;color:var(--muted)}.meta[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{color:var(--fg);text-decoration:none}.meta[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:var(--accent)}@media(max-width:640px){.meta[data-astro-cid-sz7xmlte]{flex-direction:column;row-gap:.5rem}}.ring[data-astro-cid-2id6qcbw]{stroke:var(--bd-stroke)}.ticks[data-astro-cid-2id6qcbw]{stroke:var(--bd-stroke);stroke-opacity:.62}.dots[data-astro-cid-2id6qcbw]{stroke:var(--bd-stroke);stroke-opacity:.48}.arc[data-astro-cid-2id6qcbw]{stroke:var(--bd-arc)}.index[data-astro-cid-2id6qcbw]{stroke:var(--bd-arc);fill:var(--bd-arc)}.warm[data-astro-cid-2id6qcbw]{stroke:var(--bd-warm)}.cool[data-astro-cid-2id6qcbw]{stroke:var(--bd-cool)}.core[data-astro-cid-2id6qcbw]{stroke:var(--bd-core)}.backdrop[data-astro-cid-2id6qcbw]{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}.backdrop[data-astro-cid-2id6qcbw] svg[data-astro-cid-2id6qcbw]{position:absolute;top:0;right:0;width:clamp(200px,calc((100vw - 680px)*1.293),900px);height:clamp(200px,calc((100vw - 680px)*1.293),900px);transform:translate(47.778%,-44.444%)}@media(max-width:640px){.backdrop[data-astro-cid-2id6qcbw]{display:none}}.carto[data-astro-cid-rijylt4i]{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}.ln[data-astro-cid-rijylt4i]{position:absolute;background:var(--carto-line)}.v[data-astro-cid-rijylt4i]{top:0;bottom:0;width:1px}.h[data-astro-cid-rijylt4i]{left:0;right:0;height:1px}.dots[data-astro-cid-rijylt4i]{position:absolute;background-image:radial-gradient(circle,var(--carto-dot) 1.3px,transparent 1.45px);background-size:15px 15px}.d1[data-astro-cid-rijylt4i]{right:4.5%;bottom:8%;width:192px;height:128px;-webkit-mask-image:repeating-linear-gradient(90deg,#000 0 30px,rgba(0,0,0,.38) 30px 45px);mask-image:repeating-linear-gradient(90deg,#000 0 30px,#00000061 30px 45px)}.d2[data-astro-cid-rijylt4i]{left:8.5%;top:11.5%;width:88px;height:58px;background-size:18px 18px}@media(max-width:1100px){.v[data-astro-cid-rijylt4i]:nth-of-type(3),.v[data-astro-cid-rijylt4i]:nth-of-type(4){display:none}}@media(max-width:640px){.carto[data-astro-cid-rijylt4i]{display:none}}@font-face{font-family:Jost;src:url(/fonts/jost-latin-var.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;src:url(/fonts/plexsans-latin-var.woff2) format("woff2");font-weight:100 700;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;src:url(/fonts/plexmono-latin-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font-brand: "Jost", "HarmonyOS Sans SC", -apple-system, "PingFang SC", "Microsoft YaHei", sans-serif;--font-ui: "Jost", "HarmonyOS Sans SC", Helvetica, Arial, sans-serif;--font-text: "IBM Plex Sans", "HarmonyOS Sans SC", Helvetica, Arial, sans-serif;--font-mono: "IBM Plex Mono", "SF Mono", Consolas, monospace}:root{color-scheme:dark;--bg: #06090f;--bg-grad: linear-gradient(150deg, #131a29 0%, #101725 14%, #0d141f 30%, #0a1019 48%, #080c14 66%, #06090f 84%, #04060b 100%);--fg: #d8d8de;--muted: #8a8a94;--accent: #7aa2f7;--card: #1a2231;--border: rgba(255, 255, 255, .22);--nav-bg: #19212f;--hairline: rgba(255, 255, 255, .14);--shadow: 0 0 0 1px rgba(255, 255, 255, .05), 0 10px 15px -3px rgba(0, 0, 0, .5), 0 4px 6px -4px rgba(0, 0, 0, .45);--glow-blue: rgba(90, 150, 235, .05);--glow-right: rgba(110, 150, 220, .05);--glow-pink: rgba(255, 110, 180, .05);--glow-cyan: rgba(110, 215, 255, .045);--glow-violet: rgba(185, 130, 255, .04);--accent-line: #fffa00;--bd-stroke: rgba(155, 195, 245, .26);--bd-arc: rgba(200, 222, 255, .48);--bd-warm: rgba(255, 95, 175, .34);--bd-cool: rgba(95, 220, 255, .32);--bd-core: rgba(215, 232, 255, .2);--astro-code-background: var(--card);--astro-code-foreground: #c8d3f5;--astro-code-token-comment: #8891c0;--astro-code-token-keyword: #bb9af7;--astro-code-token-string: #9ece6a;--astro-code-token-string-expression: #89ddff;--astro-code-token-function: #7aa2f7;--astro-code-token-constant: #ff9e64;--astro-code-token-parameter: #e0af68;--astro-code-token-punctuation: #9aa5ce;--astro-code-token-link: #73daca;--carto-line: rgba(150, 210, 255, .065);--carto-cross: rgba(150, 210, 255, .13);--carto-dot: rgba(140, 205, 255, .3);--carto-lbl: rgba(150, 200, 255, .4);--carto-ghost: rgba(155, 195, 245, .032);--carto-axis: rgba(150, 210, 255, .2);--carto-chip-bg: rgba(10, 14, 22, .6);--carto-chip-fg: rgba(200, 222, 255, .85);--carto-chip-bd: rgba(200, 222, 255, .35);--carto-sky1: rgba(155, 195, 245, .04);--carto-sky2: rgba(155, 195, 245, .06);--toc-rail: rgba(155, 195, 245, .16);--toc-rail-read: rgba(155, 195, 245, .4);--toc-rail-now: var(--accent);--toc-item: var(--muted);--toc-item-hover: var(--fg);--toc-item-now: var(--accent);--toc-item-read: rgba(138, 138, 148, .55)}@media(prefers-color-scheme:light){html:not([data-theme]){color-scheme:light;--bg: #f7f9fc;--bg-grad: linear-gradient(145deg, #ffffff 0%, #f8fafd 38%, #eff3f9 70%, #e9eff7 100%);--fg: #24242a;--muted: #6f6f78;--accent: #3d5afe;--card: #ffffff;--border: rgba(0, 0, 0, .16);--nav-bg: #ffffff;--hairline: rgba(0, 0, 0, .12);--shadow: 0 0 0 1px rgba(24, 24, 27, .07), 0 10px 15px -3px rgba(24, 24, 27, .09), 0 4px 6px -4px rgba(24, 24, 27, .09);--glow-blue: rgba(90, 150, 235, .16);--glow-right: rgba(110, 150, 215, .14);--glow-pink: rgba(255, 110, 180, .07);--glow-cyan: rgba(110, 200, 255, .06);--glow-violet: rgba(185, 130, 255, .06);--accent-line: #c9a227;--bd-stroke: rgba(70, 110, 175, .2);--bd-arc: rgba(55, 95, 165, .34);--bd-warm: rgba(180, 80, 135, .09);--bd-cool: rgba(60, 140, 195, .09);--bd-core: rgba(60, 100, 170, .13);--astro-code-background: var(--card);--astro-code-foreground: #24242a;--astro-code-token-comment: #6f6f78;--astro-code-token-keyword: #a626a4;--astro-code-token-string: #2f7a2f;--astro-code-token-string-expression: #0b6e99;--astro-code-token-function: #3d5afe;--astro-code-token-constant: #b45309;--astro-code-token-parameter: #8a5a00;--astro-code-token-punctuation: #383a42;--astro-code-token-link: #0e7490;--carto-line: rgba(70, 110, 175, .09);--carto-cross: rgba(70, 110, 175, .17);--carto-dot: rgba(70, 110, 175, .3);--carto-lbl: rgba(70, 110, 175, .52);--carto-ghost: rgba(70, 110, 175, .05);--carto-axis: rgba(70, 110, 175, .28);--carto-chip-bg: #24242a;--carto-chip-fg: #f7f9fc;--carto-chip-bd: #24242a;--carto-sky1: rgba(70, 110, 175, .05);--carto-sky2: rgba(70, 110, 175, .085);--toc-rail: rgba(70, 110, 175, .18);--toc-rail-read: rgba(70, 110, 175, .48);--toc-rail-now: var(--accent);--toc-item: var(--muted);--toc-item-hover: var(--fg);--toc-item-now: var(--accent);--toc-item-read: rgba(111, 111, 120, .55)}}html[data-theme=light]{color-scheme:light;--bg: #f7f9fc;--bg-grad: linear-gradient(145deg, #ffffff 0%, #f8fafd 38%, #eff3f9 70%, #e9eff7 100%);--fg: #24242a;--muted: #6f6f78;--accent: #3d5afe;--card: #ffffff;--border: rgba(0, 0, 0, .16);--nav-bg: #ffffff;--hairline: rgba(0, 0, 0, .12);--shadow: 0 0 0 1px rgba(24, 24, 27, .07), 0 10px 15px -3px rgba(24, 24, 27, .09), 0 4px 6px -4px rgba(24, 24, 27, .09);--glow-blue: rgba(90, 150, 235, .16);--glow-right: rgba(110, 150, 215, .14);--glow-pink: rgba(255, 110, 180, .07);--glow-cyan: rgba(110, 200, 255, .06);--glow-violet: rgba(185, 130, 255, .06);--accent-line: #c9a227;--bd-stroke: rgba(70, 110, 175, .2);--bd-arc: rgba(55, 95, 165, .34);--bd-warm: rgba(180, 80, 135, .09);--bd-cool: rgba(60, 140, 195, .09);--bd-core: rgba(60, 100, 170, .13);--astro-code-background: var(--card);--astro-code-foreground: #24242a;--astro-code-token-comment: #6f6f78;--astro-code-token-keyword: #a626a4;--astro-code-token-string: #2f7a2f;--astro-code-token-string-expression: #0b6e99;--astro-code-token-function: #3d5afe;--astro-code-token-constant: #b45309;--astro-code-token-parameter: #8a5a00;--astro-code-token-punctuation: #383a42;--astro-code-token-link: #0e7490;--carto-line: rgba(70, 110, 175, .09);--carto-cross: rgba(70, 110, 175, .17);--carto-dot: rgba(70, 110, 175, .3);--carto-lbl: rgba(70, 110, 175, .52);--carto-ghost: rgba(70, 110, 175, .05);--carto-axis: rgba(70, 110, 175, .28);--carto-chip-bg: #24242a;--carto-chip-fg: #f7f9fc;--carto-chip-bd: #24242a;--carto-sky1: rgba(70, 110, 175, .05);--carto-sky2: rgba(70, 110, 175, .085);--toc-rail: rgba(70, 110, 175, .18);--toc-rail-read: rgba(70, 110, 175, .48);--toc-rail-now: var(--accent);--toc-item: var(--muted);--toc-item-hover: var(--fg);--toc-item-now: var(--accent);--toc-item-read: rgba(111, 111, 120, .55)}html[data-theme=dark]{color-scheme:dark;--bg: #06090f;--bg-grad: linear-gradient(150deg, #131a29 0%, #101725 14%, #0d141f 30%, #0a1019 48%, #080c14 66%, #06090f 84%, #04060b 100%);--fg: #d8d8de;--muted: #8a8a94;--accent: #7aa2f7;--card: #1a2231;--border: rgba(255, 255, 255, .22);--nav-bg: #19212f;--hairline: rgba(255, 255, 255, .14);--shadow: 0 0 0 1px rgba(255, 255, 255, .05), 0 10px 15px -3px rgba(0, 0, 0, .5), 0 4px 6px -4px rgba(0, 0, 0, .45);--glow-blue: rgba(90, 150, 235, .05);--glow-right: rgba(110, 150, 220, .05);--glow-pink: rgba(255, 110, 180, .05);--glow-cyan: rgba(110, 215, 255, .045);--glow-violet: rgba(185, 130, 255, .04);--accent-line: #fffa00;--bd-stroke: rgba(155, 195, 245, .26);--bd-arc: rgba(200, 222, 255, .48);--bd-warm: rgba(255, 95, 175, .34);--bd-cool: rgba(95, 220, 255, .32);--bd-core: rgba(215, 232, 255, .2);--astro-code-background: var(--card);--astro-code-foreground: #c8d3f5;--astro-code-token-comment: #8891c0;--astro-code-token-keyword: #bb9af7;--astro-code-token-string: #9ece6a;--astro-code-token-string-expression: #89ddff;--astro-code-token-function: #7aa2f7;--astro-code-token-constant: #ff9e64;--astro-code-token-parameter: #e0af68;--astro-code-token-punctuation: #9aa5ce;--astro-code-token-link: #73daca;--carto-line: rgba(150, 210, 255, .065);--carto-cross: rgba(150, 210, 255, .13);--carto-dot: rgba(140, 205, 255, .3);--carto-lbl: rgba(150, 200, 255, .4);--carto-ghost: rgba(155, 195, 245, .032);--carto-axis: rgba(150, 210, 255, .2);--carto-chip-bg: rgba(10, 14, 22, .6);--carto-chip-fg: rgba(200, 222, 255, .85);--carto-chip-bd: rgba(200, 222, 255, .35);--carto-sky1: rgba(155, 195, 245, .04);--carto-sky2: rgba(155, 195, 245, .06);--toc-rail: rgba(155, 195, 245, .16);--toc-rail-read: rgba(155, 195, 245, .4);--toc-rail-now: var(--accent);--toc-item: var(--muted);--toc-item-hover: var(--fg);--toc-item-now: var(--accent);--toc-item-read: rgba(138, 138, 148, .55)}body:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 46% 30% at 30% 4%,var(--glow-pink),transparent 66%),radial-gradient(ellipse 46% 30% at 52% 2%,var(--glow-cyan),transparent 66%),radial-gradient(ellipse 48% 32% at 76% 4%,var(--glow-violet),transparent 66%),radial-gradient(ellipse 72% 48% at 0% 0%,var(--glow-blue),transparent 62%),radial-gradient(ellipse 46% 54% at 100% 68%,var(--glow-right),transparent 62%),var(--bg-grad)}main{position:relative;z-index:1}*{box-sizing:border-box}body{margin:0;font-family:var(--font-ui);font-weight:500;background:var(--bg);color:var(--fg);line-height:1.75}article.post{font-family:var(--font-text)}article.post :is(h1,h2,h3,h4,h5,h6){font-family:var(--font-brand)}h1,h2,h3,h4,h5,h6{font-weight:700}h1,h2,h3{text-transform:uppercase;letter-spacing:.06em}main{max-width:760px;margin:0 auto;padding:48px 20px 2rem}@media(min-width:800px){main{padding-inline:0}}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.post-list{list-style:none;padding:0;margin:0}.post-list li{padding:14px 0;border-bottom:1px solid var(--hairline)}.post-list time{color:var(--muted);font-size:.85rem;margin-right:12px}article.post h1{font-size:1.6rem;line-height:1.4}article.post time{color:var(--muted);font-size:.9rem}article.post img{max-width:100%}article.post :is(h2,h3,h4,h5,h6){scroll-margin-top:6rem}pre,code{background:var(--card);border-radius:6px;font-family:var(--font-mono);font-size:.875rem}pre{padding:14px;overflow-x:auto}code{padding:2px 5px}pre code{padding:0;background:none}blockquote{border-left:3px solid var(--accent);margin-left:0;padding-left:16px;color:var(--muted)}
