.post .post-head,.post .post-prose{width:720px;max-width:100%;margin-left:auto;margin-right:auto}.post .post-head{padding:48px 0 40px}.post .back{display:inline-block;margin-bottom:32px;font-family:var(--mono);font-size:12px;line-height:16px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:6px}.post .back:hover{color:var(--ink);text-decoration-color:var(--pen)}.post .post-meta{display:flex;flex-wrap:wrap;gap:6px 16px;margin:0 0 20px;font-family:var(--mono);font-size:12px;line-height:16px;letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted-foreground)}.post .post-tag{color:var(--pen)}.post .post-title{margin:0;font-size:clamp(34px,4.6vw,60px);line-height:1.02;letter-spacing:-.03em;font-weight:380;font-variation-settings:"opsz" 144;text-wrap:balance}.post .post-head .post-meta:last-child{margin:24px 0 0}.post .post-hero{width:960px;max-width:100%;margin:0 auto 56px}.post .post-hero img{display:block;width:100%;height:auto;border:2px solid var(--ink);border-radius:0;box-shadow:8px 8px 0 var(--pen)}.post .post-prose{padding-bottom:96px;font-size:20px;line-height:32px;font-variation-settings:"opsz" 20;color:var(--ink)}.post .post-prose p{margin:0 0 24px;text-wrap:pretty}.post .post-prose h2{margin:56px 0 20px;font-size:36px;line-height:1.1;font-variation-settings:"opsz" 72}.post .post-prose h3{margin:40px 0 16px;font-size:26px;line-height:1.15}.post .post-prose h4{margin:32px 0 12px;font-size:21px}.post .post-prose a{color:var(--pen);text-decoration:underline;text-decoration-thickness:1.5px;text-underline-offset:4px}.post .post-prose a:hover{color:var(--ink)}.post .post-prose ul,.post .post-prose ol{margin:0 0 24px;padding-left:28px}.post .post-prose li{margin-bottom:8px}.post .post-prose li::marker{color:var(--pen)}.post .post-prose blockquote{margin:32px 0;padding:0 0 0 24px;border-left:3px solid var(--pen);font-size:22px;line-height:34px;color:var(--ink)}.post .post-prose hr{margin:48px 0;border-top:1px solid var(--color-border)}.post .post-prose img{display:block;max-width:100%;height:auto;margin:32px auto;border:1px solid var(--color-border);border-radius:0}.post .post-prose code{padding:2px 5px;background:var(--color-secondary);border-radius:0;font-family:var(--mono);font-size:.82em}.post .post-prose pre{margin:32px 0;padding:20px;overflow-x:auto;border:2px solid var(--ink);border-radius:0;font-size:14px;line-height:22px}.post .post-prose pre>code{all:unset;font-family:var(--mono);font-size:14px;line-height:22px}.post .post-prose table{display:block;overflow-x:auto;margin:32px 0;font-size:16px}@media (max-width: 720px){.post .post-prose{font-size:18px;line-height:30px}.post .post-prose h2{font-size:30px}}.post .more{padding:96px 0}.post .more-grid{display:grid;gap:40px;margin:48px 0 0;padding:0;list-style:none}.post .more-card{display:grid;gap:10px;color:var(--ink);text-decoration:none}.post .more-meta{font-family:var(--mono);font-size:12px;line-height:16px;letter-spacing:.08em;text-transform:uppercase;color:var(--color-muted-foreground)}.post .more-title{font-family:var(--serif);font-size:24px;line-height:1.15;letter-spacing:-.02em;font-variation-settings:"opsz" 60}.post .more-title span{background-image:linear-gradient(var(--hl),var(--hl));background-repeat:no-repeat;background-position:0 92%;background-size:0% 38%;transition:background-size .45s var(--ease);-webkit-box-decoration-break:clone;box-decoration-break:clone}.post .more-card:hover .more-title span{background-size:100% 38%}@media (min-width: 900px){.post .more-grid{grid-template-columns:repeat(3,1fr);gap:48px}}.mermaid{margin:2em 0;overflow-x:auto;cursor:zoom-in}.mermaid-overlay{position:fixed;inset:0;background:#000c;display:none;align-items:center;justify-content:center;padding:2em;z-index:1000;cursor:zoom-out}.mermaid-overlay.is-open{display:flex}.mermaid-overlay-content{background:#fff;border-radius:12px;padding:2em;max-width:95vw;max-height:95vh;overflow:auto;cursor:auto}.mermaid-overlay-content svg{width:auto!important;max-width:none!important;height:auto!important;max-height:none!important}
