.blog-page h1{color:var(--text);letter-spacing:-.012em;margin:0 0 34px;font-size:20px;font-weight:400;line-height:1.45}.year-group{grid-template-columns:86px minmax(0,1fr)}.year-label{padding:15px 0}.writing-post{border-bottom-color:var(--border);gap:24px;min-height:50px;padding:15px 8px 15px 0;transition:color .16s,background-color .16s,transform .16s}.writing-post:hover{background:var(--surface-hover);transform:translate(2px)}.writing-post-title{text-underline-offset:4px;text-decoration-thickness:1px}.writing-post time{font-variant-numeric:tabular-nums;white-space:nowrap}.blog-footer{border-top:1px solid var(--border);margin-top:64px;padding-top:18px}.blog-footer a,.post-footer a{color:var(--muted);text-decoration:none;transition:color .16s}.blog-footer a:hover,.post-footer a:hover{color:var(--text)}.post{margin:0}.post-header{margin-bottom:48px}.post-header h1{max-width:680px;color:var(--text);letter-spacing:-.018em;text-wrap:balance;margin:0 0 11px;font-size:27px;font-weight:400;line-height:1.25}.post-header time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:13px;font-weight:400;line-height:1.4}.post-content{color:var(--text);letter-spacing:-.004em;font-size:15px;line-height:1.82}.post-content>p,.post-content>ul,.post-content>ol,.post-content>blockquote,.post-content>h2,.post-content>h3,.post-content>h4{max-width:680px}.post-content p{margin:0 0 28px}.post-content p:last-child{margin-bottom:0}.post-content h2{color:var(--text);letter-spacing:-.014em;text-wrap:balance;margin:58px 0 18px;font-size:19px;font-weight:400;line-height:1.4}.post-content h3{color:var(--text);letter-spacing:-.01em;text-wrap:balance;margin:44px 0 15px;font-size:17px;font-weight:400;line-height:1.45}.post-content h4{color:var(--text);margin:36px 0 13px;font-size:15px;font-weight:500;line-height:1.5}.post-content a{color:inherit;text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px;-webkit-text-decoration-color:color-mix(in srgb, var(--text) 45%, transparent);text-decoration-color:color-mix(in srgb, var(--text) 45%, transparent);transition:text-decoration-color .16s}.post-content a:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.post-content strong{font-weight:500}.post-content em{font-style:italic}.post-content img{border-radius:2px;width:100%;height:auto;margin:42px 0;display:block}.post-content figure{margin:42px 0}.post-content figure img{margin:0}.post-content figcaption{color:var(--muted);margin-top:10px;font-size:12px;line-height:1.5}.post-content blockquote{border-left:1px solid var(--border);color:var(--muted);margin:34px 0;padding:1px 0 1px 20px}.post-content blockquote p{margin-bottom:16px}.post-content blockquote p:last-child{margin-bottom:0}.post-content ul,.post-content ol{margin:0 0 30px;padding-left:28px}.post-content li{margin-bottom:8px;padding-left:3px}.post-content li:last-child{margin-bottom:0}.post-content hr{background:var(--border);border:0;height:1px;margin:54px 0}.post-content code{border:1px solid var(--border);background:var(--surface-hover);border-radius:3px;padding:.1em .3em;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.88em}.post-content pre{border:1px solid var(--border);background:var(--surface-hover);border-radius:3px;margin:34px 0;padding:18px;line-height:1.6;overflow-x:auto}.post-content pre code{background:0 0;border:0;padding:0;font-size:12px}.post-content table{border-collapse:collapse;width:100%;margin:34px 0;font-size:13px;line-height:1.5}.post-content th,.post-content td{text-align:left;vertical-align:top;border-bottom:1px solid var(--border);padding:10px 9px}.post-content th{color:var(--muted);font-size:11px;font-weight:500}.post-content tr:last-child td{border-bottom:0}.post-footer{border-top:1px solid var(--border);margin-top:72px;padding-top:20px}.post-navigation{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px;display:grid}.post-nav-link{min-width:0;color:var(--text);text-decoration:none;display:block}.post-nav-link.next{text-align:right}.post-nav-direction{color:var(--muted);letter-spacing:.02em;text-transform:uppercase;margin-bottom:7px;font-size:11px;line-height:1.4;display:block}.post-nav-title{text-underline-offset:4px;font-size:14px;line-height:1.5;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;text-decoration-thickness:1px;transition:text-decoration-color .16s;display:block}.post-nav-link:hover .post-nav-title{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.post-back{color:var(--muted);margin-top:32px;font-size:13px;text-decoration:none;display:block}.post-back:hover{color:var(--text)}@media (width<=600px){.blog-page h1{margin-bottom:30px}.year-group{grid-template-columns:58px minmax(0,1fr)}.writing-post{gap:14px;min-height:48px;padding:14px 4px 14px 0}.writing-post time{font-size:12px}.blog-footer{margin-top:54px}.post-header{margin-bottom:38px}.post-header h1{font-size:24px;line-height:1.3}.post-content{font-size:15px;line-height:1.8}.post-content h2{margin-top:50px;font-size:18px}.post-content h3{margin-top:38px;font-size:16px}.post-content img,.post-content figure{margin-top:34px;margin-bottom:34px}.post-content table{white-space:nowrap;display:block;overflow-x:auto}.post-footer{margin-top:58px}.post-navigation{gap:18px}.post-nav-title{font-size:13px}}@media (width<=380px){.year-group{grid-template-columns:50px minmax(0,1fr)}.writing-post{gap:10px}.post-navigation{gap:12px}}@media (prefers-reduced-motion:reduce){.writing-post,.blog-footer a,.post-footer a,.post-content a,.post-nav-title{transition:none}}
