.blog-root{background:var(--bg);color:var(--ink);flex-direction:column;min-height:100dvh;font-size:17px;line-height:1.6;display:flex}.blog-root .nav{z-index:50;-webkit-backdrop-filter:saturate(180%)blur(12px);backdrop-filter:saturate(180%)blur(12px);border-bottom:1px solid var(--line);background:#f5f1ecd1;position:sticky;top:0}.blog-root .nav-in{justify-content:space-between;align-items:center;height:72px;display:flex}.blog-root .brand{letter-spacing:-.01em;color:var(--ink);align-items:center;gap:11px;font-size:18px;font-weight:500;display:flex}.blog-root .brand svg{display:block}.blog-root .nav-right{align-items:center;gap:22px;display:flex}.blog-root .btn{font-family:var(--sans);border:1px solid var(--ink);background:var(--ink);color:#fff;cursor:pointer;border-radius:10px;align-items:center;gap:9px;padding:10px 16px;font-size:14px;font-weight:500;line-height:1;transition:transform .15s,background .2s;display:inline-flex}.blog-root .btn:hover{background:#000;transform:translateY(-1px)}.blog-root .btn .arr{transition:transform .2s}.blog-root .btn:hover .arr{transform:translate(3px)}.blog-root main{flex:1}.blog-root .wrap{max-width:var(--maxw);margin:0 auto;padding:0 32px}.blog-root .wrap-narrow{max-width:760px;margin:0 auto;padding:0 32px}.blog-head{padding:80px 0 34px}.blog-head .mono{color:var(--ink-faint);margin-bottom:18px;display:inline-block}.blog-head h1{letter-spacing:-.03em;margin:0;font-size:46px;font-weight:500;line-height:1.04}.blog-head p{color:var(--ink-soft);max-width:52ch;margin:18px 0 0;font-size:19px;line-height:1.55}.post-list{border-top:1px solid var(--line);margin:20px 0 96px;padding:0;list-style:none}.post-item{border-bottom:1px solid var(--line)}.post-item a{grid-template-columns:1fr auto;align-items:baseline;gap:28px;padding:30px 0;transition:opacity .2s;display:grid}.post-item a:hover{opacity:.62}.post-item .pi-main h2{letter-spacing:-.02em;color:var(--ink);margin:0;font-size:25px;font-weight:500;line-height:1.2}.post-item .pi-main p{color:var(--ink-soft);max-width:62ch;margin:8px 0 0;font-size:16px;line-height:1.55}.post-item .pi-date{font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-faint);white-space:nowrap;padding-top:6px;font-size:12px}.blog-empty{color:var(--ink-soft);padding:60px 0 96px;font-size:17px}.article{padding:60px 0 40px}.article .back{font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-faint);align-items:center;gap:8px;margin-bottom:34px;font-size:12px;transition:color .2s;display:inline-flex}.article .back:hover{color:var(--ink)}.article .a-date{font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:8px;font-size:12px;display:block}.article h1{letter-spacing:-.03em;margin:0;font-size:44px;font-weight:500;line-height:1.06}.article .a-cover{border-radius:var(--radius);border:1px solid var(--line);margin:38px 0 0;line-height:0;overflow:hidden}.article .a-cover img{width:100%;height:auto;display:block}.prose{color:var(--ink);margin-top:40px;font-size:18px;line-height:1.7}.prose>:first-child{margin-top:0}.prose p{margin:0 0 22px}.prose h2{letter-spacing:-.02em;margin:44px 0 16px;font-size:28px;font-weight:500;line-height:1.2}.prose h3{letter-spacing:-.015em;margin:36px 0 14px;font-size:22px;font-weight:500;line-height:1.25}.prose h4{margin:30px 0 12px;font-size:18px;font-weight:500}.prose a{color:var(--accent-ink);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px}.prose strong{font-weight:600}.prose ul,.prose ol{margin:0 0 22px;padding-left:24px}.prose li{margin:6px 0}.prose li::marker{color:var(--ink-faint)}.prose blockquote{border-left:2px solid var(--accent);color:var(--ink-soft);margin:28px 0;padding:6px 0 6px 22px;font-size:19px;line-height:1.6}.prose blockquote p:last-child{margin-bottom:0}.prose img{border-radius:var(--radius);border:1px solid var(--line);max-width:100%;height:auto;margin:30px 0;display:block}.prose figure{margin:30px 0}.prose figure img{margin:0}.prose figcaption{color:var(--ink-faint);text-align:center;margin-top:10px;font-size:14px}.prose hr{border:none;border-top:1px solid var(--line);margin:44px 0}.prose code{font-family:var(--mono);background:var(--bg-soft);border-radius:5px;padding:2px 6px;font-size:.88em}.prose pre{background:var(--ink);color:#f5f1ec;border-radius:var(--radius);margin:26px 0;padding:20px 22px;line-height:1.5;overflow-x:auto}.prose pre code{background:0 0;padding:0;font-size:14px}.article-foot{border-top:1px solid var(--line);margin:56px 0 0;padding:34px 0 90px}.article-foot .cta{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.article-foot .cta p{color:var(--ink-soft);margin:0;font-size:16px}.blog-root footer{border-top:1px solid var(--line);padding:40px 0}.blog-root .foot-in{color:var(--ink-faint);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;font-size:14px;display:flex}.blog-root .foot-in a{color:var(--ink-faint);transition:color .2s}.blog-root .foot-in a:hover{color:var(--ink)}.blog-root .foot-in .brand{color:var(--ink);font-size:16px}@media (max-width:880px){.blog-root .wrap,.blog-root .wrap-narrow{padding:0 22px}.blog-head h1{font-size:34px}.article h1{font-size:32px}.prose{font-size:17px}.post-item a{grid-template-columns:1fr;gap:6px}.post-item .pi-date{padding-top:0}}@media (max-width:560px){.blog-root .foot-in{flex-direction:column;align-items:flex-start;gap:14px}}
