.blog-page{color:#e8eee6;background-color:#0e1116;background-image:radial-gradient(circle at 12% 18%,#a8c99426 0,#0000 28%),radial-gradient(circle at 85% 5%,#1b312a 0,#0000 27%),radial-gradient(circle at 72% 76%,#d6e95c14 0,#0000 25%),none;background-position:0 0,0 0,0 0,0 0;background-repeat:repeat,repeat,repeat,repeat;background-size:auto,auto,auto,auto;background-attachment:fixed;background-origin:padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box;min-height:100vh;padding:0 max(28px,50% - 520px);font-family:Arial,PingFang SC,Microsoft YaHei,sans-serif}.blog-nav{border-bottom:1px solid #e6f5df26;justify-content:space-between;align-items:center;height:104px;font-size:14px;display:flex}.blog-nav a{color:#b7c7b4;text-decoration:none}.blog-nav .blog-logo{color:#d6e95c;letter-spacing:-.06em;font:700 25px Georgia,serif}.blog-intro{padding:104px 0 76px;position:relative}.blog-intro p,.post-card>span,.post-card p,.article header p,.article header span{color:#9dbd96;letter-spacing:.13em;font:11px monospace}.blog-intro h1,.article h1{letter-spacing:-.075em;margin:20px 0 32px;font:400 clamp(3.5rem,8vw,7.2rem)/.92 Georgia,Songti SC,serif}.blog-intro em{color:#d6e95c}.blog-intro>span{color:#9eaa9e;font-size:14px}.post-list{border-top:1px solid #e6f5df26;padding-bottom:100px}.post-card{border-bottom:1px solid #e6f5df26;grid-template-columns:52px 1fr auto;align-items:center;gap:22px;min-height:176px;padding:28px 0;display:grid}.post-card h2{letter-spacing:-.045em;margin:10px 0;font:400 clamp(1.65rem,3vw,2.55rem)/1.1 Georgia,Songti SC,serif}.post-card h2 a{color:#edf5e9;text-decoration:none}.post-card h2 a:hover{color:#d6e95c}.post-description{margin:0;letter-spacing:0!important;color:#aab6aa!important;font:15px/1.6 Arial,PingFang SC,sans-serif!important}.post-read{color:#d6e95c;white-space:nowrap;font-size:14px;text-decoration:none}.post-read b{margin-left:8px;font-size:19px}.article{max-width:760px;margin:0 auto;padding:90px 0 140px}.article header{border-bottom:1px solid #e6f5df26;padding-bottom:48px}.article h1{margin-bottom:29px;font-size:clamp(3rem,6.5vw,5.7rem)}.article-content{color:#c5d0c4;padding-top:50px;font-size:18px;line-height:1.85}.article-content h2{color:#edf5e9;letter-spacing:-.045em;margin:72px 0 22px;font:400 clamp(1.85rem,4vw,2.7rem)/1.1 Georgia,Songti SC,serif}.article-content p{margin:0 0 24px}.article-content blockquote{color:#e6f3e1;border-left:2px solid #d6e95c;margin:38px 0;padding:6px 0 6px 24px;font:400 1.35rem/1.55 Georgia,Songti SC,serif}.article-content ol{margin:0 0 24px;padding-left:24px}.article-content li{margin:10px 0;padding-left:7px}.article-content li::marker{color:#d6e95c}@media (max-width:640px){.blog-page{padding:0 20px}.blog-nav{height:76px}.blog-intro{padding:70px 0 55px}.post-card{grid-template-columns:26px 1fr;padding:25px 0}.post-read{grid-column:2}.article{padding:55px 0 90px}.article-content{padding-top:40px;font-size:17px}}.blog-nav .blog-logo{align-items:center;width:120px;display:inline-flex}.blog-nav .blog-logo img{filter:brightness()saturate(.8);width:100%;height:auto;display:block}.article-content img{border:1px solid #e6f5df26;border-radius:18px;width:100%;height:auto;margin:36px 0;display:block;box-shadow:0 20px 60px #0006}.article-content .notion-table-wrap{width:100%;margin:36px 0;overflow-x:auto}.article-content table{border-collapse:collapse;width:100%;min-width:max-content;margin:0;font-size:15px}.article-content th,.article-content td{text-align:left;border:1px solid #e6f5df26;min-width:120px;padding:12px 14px}.article-content th{color:#edf5e9;background:#d6e95c12}.article-content .notion-child-link{color:#e7f2d9;background:#d6e95c0d;border:1px solid #d6e95c55;border-radius:14px;justify-content:space-between;align-items:center;gap:18px;margin:30px 0;padding:18px 20px;font-size:16px;text-decoration:none;transition:background .2s,border-color .2s;display:flex}.article-content .notion-child-link:hover{background:#d6e95c20;border-color:#d6e95c}.article-content .notion-child-link span{color:#d6e95c;font-size:20px}.post-card .post-parent{margin:0 0 8px;color:#b9d69e!important;letter-spacing:0!important;font:12px/1.4 Arial,PingFang SC,sans-serif!important}.post-parent a{color:#d6e95c;text-decoration:none}.post-parent a:hover{text-decoration:underline}.blog-nav{z-index:20;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:linear-gradient(#0e1116f2 0%,#0e1116c7 72%,#0000 100%);position:sticky;top:0}.blog-nav:after{content:"";pointer-events:none;background:linear-gradient(#0e1116a8,#0000);height:50px;position:absolute;top:100%;left:0;right:0}.blog-nav{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-bottom:0}.blog-nav:before{content:"";z-index:0;pointer-events:none;background:linear-gradient(#0e1116f5 0%,#0e1116e6 24%,#0e1116b8 52%,#0e111650 76%,#0000 100%);width:100vw;position:absolute;top:0;bottom:-80px;left:50%;transform:translate(-50%)}.blog-nav:after{display:none}.blog-nav>*{z-index:1;position:relative}.blog-nav .blog-logo+a{margin-left:24px}.blog-page{isolation:isolate;background:#0e1116;position:relative;overflow:hidden}.blog-page:before,.blog-page:after{content:"";z-index:-1;pointer-events:none;filter:blur(12px);mix-blend-mode:screen;border-radius:50%;position:fixed}.blog-page:before{background:radial-gradient(circle,#7fc58b66 0%,#3b80614d 34%,#0000 72%);width:min(760px,80vw);height:min(760px,80vw);animation:16s ease-in-out infinite alternate blog-glow-drift;top:-280px;right:-180px}.blog-page:after{background:radial-gradient(circle,#d6e95c3d 0%,#6ea57b2e 38%,#0000 72%);width:min(620px,72vw);height:min(620px,72vw);animation:20s ease-in-out -5s infinite alternate-reverse blog-glow-drift;bottom:-220px;left:-240px}.blog-page>*{z-index:0;position:relative}@keyframes blog-glow-drift{0%{opacity:.7;transform:translate(-2%)scale(.96)}to{opacity:1;transform:translate(3%,4%)scale(1.06)}}.article-page .article-cover{filter:none;transform:none;-webkit-mask-image:linear-gradient(#000 62%,#000000b3 82%,#00000047 94%,#0000 100%);mask-image:linear-gradient(#000 62%,#000000b3 82%,#00000047 94%,#0000 100%)}.article-page .article header{isolation:isolate;position:relative}.article-page .article header:before{content:"";z-index:0;-webkit-backdrop-filter:blur(24px);pointer-events:none;background:linear-gradient(#0000 0%,#0e11162e 35%,#0e111680 72%,#0e1116d1 100%);width:100vw;height:150px;position:absolute;top:-92px;left:50%;transform:translate(-50%);-webkit-mask-image:linear-gradient(#0000 0%,#000 45% 100%);mask-image:linear-gradient(#0000 0%,#000 45% 100%)}.article-page .article header>*{z-index:1;position:relative}.site-footer{color:#6d796e;letter-spacing:.12em;border-top:1px solid #e6f5df26;grid-template-columns:1fr auto 1fr;align-items:center;max-width:1040px;margin:0 auto;padding:22px 0 28px;font:9px monospace;display:grid}.site-footer .techlinks{justify-self:center;align-items:center;gap:9px;display:inline-flex}.site-footer .techlinks a{color:#9cad9b;text-decoration:none}.site-footer .techlinks a:not(:last-child):after{content:"·";color:#667568;margin-left:9px}.site-footer a:hover{color:#d6e95c}.site-footer .site-footer-suffix{justify-self:end}.blog-page:not(.article-page) .post-icon{width:clamp(60px,7vw,120px);height:clamp(60px,7vw,120px);font-size:clamp(52px,6vw,104px)}.blog-page:not(.article-page) .post-card:has(.post-icon){grid-template-columns:clamp(72px,8vw,132px) minmax(0,1fr) auto}@media (max-width:640px){.site-footer{grid-template-columns:1fr;gap:14px;padding:24px 0 30px}.site-footer .techlinks,.site-footer .site-footer-suffix{justify-self:start}}.article-page .blog-nav{z-index:30;background:0 0;width:auto;height:104px;display:flex;top:0;left:max(28px,50% - 520px);right:max(28px,50% - 520px);position:fixed!important}.article-page .blog-nav:before{z-index:0;-webkit-backdrop-filter:blur(14px);background:linear-gradient(#0e1116f5 0%,#0e1116dc 24%,#0e11169c 48%,#0e11164d 70%,#0e111629 84%,#0000 100%);top:0;bottom:-88px;-webkit-mask-image:linear-gradient(#000 0% 38%,#000000d1 58%,#0000006b 78%,#0000 100%);mask-image:linear-gradient(#000 0% 38%,#000000d1 58%,#0000006b 78%,#0000 100%)}.article-page .blog-nav>*{z-index:1;position:relative}.article-page .article-icon{z-index:2;margin-top:-180px;margin-bottom:124px;position:relative}.post-icon,.article-icon{flex:none;place-items:center;display:inline-grid}.post-icon{width:56px;height:56px;font-size:46px}.post-icon+span{display:none}.post-card:has(.post-icon){grid-template-columns:68px 1fr auto}.post-icon img,.article-icon img{object-fit:cover;border-radius:12px;width:100%;height:100%}.article-cover{display:block}.article-page .article{max-width:760px;padding:0 0 140px}.article-page .article-cover{object-fit:cover;border:0;border-radius:0;width:100vw;max-width:none;height:min(52vw,520px);min-height:320px;margin:0 calc(50% - 50vw)}.article-page .article header{background:0 0;border-bottom:1px solid #e6f5df26;max-width:760px;margin:0 auto;padding:86px 0 48px}.article-page .article h1{max-width:760px;margin-top:18px}.article-page .article .article-content{max-width:760px;margin:0 auto}.article-page .article-icon{width:104px;height:104px;margin-bottom:16px;font-size:86px}.article-page .blog-nav{width:auto;position:absolute;top:0;left:max(28px,50% - 520px);right:max(28px,50% - 520px)}.article-page .blog-nav:before{background:linear-gradient(#0e1116f5 0%,#0e1116d8 38%,#0e111675 72%,#0000 100%);bottom:-40px}.article-page .article:not(:has(.article-cover)){padding-top:104px}@media (max-width:640px){.post-icon{width:48px;height:48px;font-size:40px}.post-card:has(.post-icon){grid-template-columns:56px 1fr}.article-page .article header{padding:58px 0 40px}.article-page .article-cover{height:340px;min-height:0}.article-page .article-icon{width:82px;height:82px;margin-top:-126px;margin-bottom:86px;font-size:68px}.article-page .blog-nav{height:76px;left:20px;right:20px}}.article-page .blog-nav:before{-webkit-backdrop-filter:blur(14px);-webkit-mask-image:linear-gradient(#000 0% 38%,#000000d1 58%,#0000006b 78%,#0000 100%);mask-image:linear-gradient(#000 0% 38%,#000000d1 58%,#0000006b 78%,#0000 100%);z-index:0!important;background:linear-gradient(#0e1116f5 0%,#0e1116dc 24%,#0e11169c 48%,#0e11164d 70%,#0e111629 84%,#0000 100%)!important;top:0!important;bottom:-88px!important}.article-page:not(:has(.article-cover)) .blog-nav:before{display:none!important}.article-page:not(:has(.article-cover)) .blog-nav{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0}.article-page .blog-nav:before,.article-page .article header:before{display:none!important}.article-page .blog-nav{-webkit-backdrop-filter:none!important;background:0 0!important}.article-page .article-cover{height:min(36vw,400px);min-height:260px;-webkit-mask-image:linear-gradient(#000 0% 78%,#000000b8 88%,#00000047 96%,#0000 100%);mask-image:linear-gradient(#000 0% 78%,#000000b8 88%,#00000047 96%,#0000 100%)}@media (max-width:640px){.article-page .article-cover{height:280px;min-height:0}}.article-page .blog-nav:before{-webkit-backdrop-filter:none;-webkit-mask-image:none;mask-image:none;background:linear-gradient(#0e1116f2 0%,#0e1116d0 42%,#0e11168f 72%,#0000 100%)!important;display:block!important;bottom:-40px!important}.article-page .article header:before{display:none!important}@media (max-width:640px) and (orientation:portrait){.blog-page{padding:0 18px;overflow-x:hidden}.blog-nav{height:72px}.blog-nav .blog-logo{width:88px}.blog-nav .blog-logo+a{margin-left:16px;font-size:12px}.blog-intro{padding:94px 0 48px}.blog-intro h1{margin:16px 0 24px;font-size:clamp(3.2rem,15vw,4.8rem);line-height:.9}.post-list{padding-bottom:64px}:is(.post-card,.post-card:has(.post-icon)){grid-template-columns:50px minmax(0,1fr);gap:12px;min-height:0;padding:22px 0}.post-icon{width:44px;height:44px;font-size:37px}.post-card h2{overflow-wrap:anywhere;margin:7px 0;font-size:clamp(1.45rem,7vw,2rem)}.post-description{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden;font-size:13px!important;line-height:1.55!important}.post-read{grid-column:2;margin-top:2px;font-size:12px}.article-page .blog-nav{height:72px;left:18px;right:18px}.article-page .article{width:100%;padding-bottom:86px}.article-page .article-cover{height:230px;min-height:0}.article-page .article header{padding:48px 0 34px}.article-page .article-icon{width:72px;height:72px;margin-top:-104px;margin-bottom:70px;font-size:58px}.article-page .article h1{overflow-wrap:anywhere;margin:14px 0 24px;font-size:clamp(2.55rem,13vw,4rem);line-height:.95}.article-content{padding-top:34px;font-size:16px;line-height:1.78}.article-content h2{margin:52px 0 18px;font-size:clamp(1.75rem,9vw,2.35rem)}.article-content blockquote{margin:28px 0;padding-left:18px;font-size:1.15rem}.article-content img{border-radius:12px;width:calc(100% + 20px);max-width:none;margin:30px -10px}.site-footer{font-size:8px;line-height:1.7}}.article-page .article{position:relative}.article-page .article:not(:has(.article-cover)) .article-icon{margin-top:0;margin-bottom:16px}.article-content img{object-fit:contain;width:auto;max-width:100%;max-height:min(75vh,760px)}.article-content pre{color:#e8eee6;tab-size:2;background:#0a1710;border:1px solid #e6f5df26;border-radius:14px;max-width:100%;margin:32px 0;padding:20px 22px;font:14px/1.7 ui-monospace,SFMono-Regular,Consolas,monospace;overflow-x:auto}.article-content :not(pre)>code{color:#e4efc1;background:#d6e95c1c;border-radius:5px;padding:.12em .36em;font-size:.88em}.article-content pre code{color:inherit;font:inherit;background:0 0;padding:0}.article-content a{color:#d6e95c;text-underline-offset:.2em;overflow-wrap:anywhere}.article-content ul{margin:0 0 24px;padding-left:24px}.article-content input[type=checkbox]{accent-color:#d6e95c;margin-right:.5em}.article-content>table{max-width:100%;margin:36px 0;display:block;overflow-x:auto}.article-content :is(h1,h2,h3,h4,h5,h6){scroll-margin-top:120px}.article-page .article-content h1{letter-spacing:-.04em;color:#edf5e9;margin:70px 0 24px;font:400 clamp(2.2rem,5vw,3.4rem)/1.12 Georgia,Songti SC,serif}.article-content h3{color:#e6f1d9;margin:48px 0 18px;font:400 clamp(1.45rem,3vw,2rem)/1.25 Georgia,Songti SC,serif}.article-content :is(h4,h5,h6){color:#e6f1d9;margin:36px 0 14px}.article-content hr{background:#e6f5df3a;border:0;height:1px;margin:48px 0}.article-content del{color:#9ba99a}@media (max-width:640px){.article-content img{width:auto;max-width:100%;margin:30px 0}.article-content pre{padding:16px;font-size:12px}}.article-content strong{color:#eef5eb;font-weight:700}.article-content em{color:#d9e7d5}.article-content mark{color:#f7fbe9;background:#d6e95c42;border-radius:.24em;padding:.08em .28em}.article-content u{text-underline-offset:.18em;text-decoration-color:#d6e95c;text-decoration-thickness:.08em}.article-content :is(sub,sup){font-size:.72em;line-height:0}.article-content abbr[title]{cursor:help;text-underline-offset:.2em;-webkit-text-decoration:underline dotted #9dbd96;text-decoration:underline dotted #9dbd96}.article-content kbd{color:#edf5e9;background:#17271c;border:1px solid #8fa88d66;border-bottom-width:2px;border-radius:5px;padding:.14em .45em;font:600 .82em ui-monospace,SFMono-Regular,Consolas,monospace}.article-content :is(ul,ol) :is(ul,ol){margin:8px 0 8px 10px}.article-content li>p{margin:8px 0}.article-content .contains-task-list{padding-left:6px;list-style:none}.article-content .task-list-item{padding-left:0}.article-content blockquote>p:last-child{margin-bottom:0}.article-content table{color:#cbd7ca}.article-content tbody tr:nth-child(2n){background:#d6e95c08}.article-content th{white-space:nowrap;font-weight:700}.article-content video{background:#09100b;border-radius:16px;width:100%;max-height:72vh;margin:36px 0;display:block;box-shadow:0 20px 60px #0006}.article-content audio{width:min(100%,520px);margin:30px 0;display:block}.article-content .katex-display{color:#edf5e9;background:#0a171080;border:1px solid #e6f5df20;border-radius:14px;max-width:100%;margin:34px 0;padding:22px 14px;overflow:auto hidden}.article-content .katex{font-size:1.08em}.article-content [data-footnote-ref]{font-size:.75em;text-decoration:none}.article-content [data-footnotes]{color:#9eaa9e;border-top:1px solid #e6f5df26;margin-top:64px;padding-top:24px;font-size:.9em}.article-content .notion-color-gray{color:#aab3aa}.article-content .notion-color-brown{color:#d4ad8b}.article-content .notion-color-orange{color:#f3ae72}.article-content .notion-color-yellow{color:#eedb72}.article-content .notion-color-green{color:#9ed19a}.article-content .notion-color-blue{color:#89bddd}.article-content .notion-color-purple{color:#c0a2dc}.article-content .notion-color-pink{color:#e4a8c2}.article-content .notion-color-red{color:#ec9a94}.article-content [class*=notion-color-][class*=-background]{color:inherit;border-radius:.25em;padding:.08em .28em}.article-content .notion-color-gray-background{background:#939b932e}.article-content .notion-color-brown-background{background:#9d633e3a}.article-content .notion-color-orange-background{background:#d979303d}.article-content .notion-color-yellow-background{background:#d8bd3b3a}.article-content .notion-color-green-background{background:#6ca9683b}.article-content .notion-color-blue-background{background:#568eaf3d}.article-content .notion-color-purple-background{background:#815da43f}.article-content .notion-color-pink-background{background:#b45d853d}.article-content .notion-color-red-background{background:#c0524a3f}@media (max-width:640px){.article-content .katex-display{margin:28px -8px;padding:18px 10px}.article-content video{border-radius:12px;margin:30px 0}}.article-content .markdown-diagram{color:#e9f1e5;background:linear-gradient(145deg,#0b1811e8,#17281de0);border:1px solid #d6e95c38;border-radius:18px;margin:36px 0;padding:26px;box-shadow:0 22px 60px #0003}.markdown-flow-track{justify-items:center;gap:0;display:grid}.markdown-flow-step{justify-items:center;display:grid}.markdown-flow-arrow{color:#d6e95c;height:32px;font-size:22px;line-height:32px}.markdown-flow-node{text-align:center;background:#213a29;border:1px solid #9fc7686b;border-radius:10px;min-width:min(100%,280px);max-width:100%;padding:13px 22px}.markdown-flow-node.is-start,.markdown-flow-node.is-end{background:#d6e95c1a;border-radius:999px}.markdown-flow-node.is-condition{background:#7c8f3b29;border-radius:3px;transform:rotate(0)}.markdown-flow figcaption{color:#aebcae;flex-wrap:wrap;justify-content:center;gap:8px 18px;margin-top:22px;font-size:13px;display:flex}.markdown-flow figcaption span{background:#ffffff08;border-radius:999px;padding:7px 10px}.markdown-sequence-people{justify-content:space-between;gap:12px;margin-bottom:22px;display:flex}.markdown-sequence-people span{color:#eff5dc;text-align:center;background:#d6e95c12;border:1px solid #d6e95c55;border-radius:999px;min-width:90px;padding:9px 14px;font-size:13px}.markdown-sequence-rows{gap:12px;display:grid}.markdown-sequence-row{color:#9eaa9e;grid-template-columns:minmax(50px,.8fr) minmax(70px,1fr) minmax(120px,2fr) minmax(50px,.8fr);align-items:center;gap:10px;font-size:12px;display:grid}.markdown-sequence-row i{color:#0000;background:#d6e95c99;height:1px;position:relative}.markdown-sequence-row i:after{content:"";border:4px solid #0000;border-left:7px solid #d6e95c;border-right-width:0;position:absolute;top:-4px;right:0}.markdown-sequence-row i.is-dashed{background:repeating-linear-gradient(90deg,#d6e95c99 0 7px,#0000 7px 12px)}.markdown-sequence-row strong{color:#dde8d9;font-weight:500}.markdown-sequence-row>span:last-child{text-align:right}.markdown-sequence-row.is-note{grid-template-columns:1fr}.markdown-sequence-row.is-note>:not(strong){display:none}.markdown-sequence-row.is-note strong{color:#cbd7c7;background:#d6e95c12;border-radius:8px;justify-self:center;padding:9px 13px}@media (max-width:640px){.article-content .markdown-diagram{margin:28px 0;padding:18px 14px}.markdown-sequence-row{grid-template-columns:46px 54px minmax(92px,1fr) 46px;gap:7px}.markdown-sequence-row strong{font-size:11px}.markdown-sequence-people span{min-width:70px;padding:8px;font-size:11px}}
