.article-main[data-v-7f34b390]{padding-top:120px;padding-bottom:100px}.article-container[data-v-7f34b390]{max-width:740px}.article-nav[data-v-7f34b390]{margin-bottom:2.5rem}.article-back[data-v-7f34b390]{font-family:var(--font-mono);letter-spacing:.06em;color:var(--text-muted);font-size:.76rem;transition:color .15s}.article-back[data-v-7f34b390]:hover{color:var(--text)}.article-header[data-v-7f34b390]{margin-bottom:2.5rem}.article-date[data-v-7f34b390]{font-family:var(--font-mono);color:var(--text-light);letter-spacing:.08em;margin-bottom:1rem;font-size:.72rem;display:block}.article-title[data-v-7f34b390]{font-family:var(--font-display);letter-spacing:-.03em;color:var(--text);margin-bottom:1rem;font-size:clamp(2rem,5vw,3rem);font-weight:800;line-height:1.1}.article-excerpt[data-v-7f34b390]{color:var(--text-muted);max-width:600px;font-size:1.1rem;font-weight:300;line-height:1.7}.article-cover[data-v-7f34b390]{border-radius:var(--radius);aspect-ratio:16/7;margin-bottom:3rem;overflow:hidden}.article-cover img[data-v-7f34b390]{-o-object-fit:cover;object-fit:cover;width:100%;height:100%}.prose{color:var(--text);font-size:1rem;font-weight:300;line-height:1.8}.prose h1,.prose h2,.prose h3,.prose h4{font-family:var(--font-display);letter-spacing:-.02em;color:var(--text);margin-top:2.5rem;margin-bottom:1rem;font-weight:700;line-height:1.2}.prose h1{font-size:2rem}.prose h2{font-size:1.5rem}.prose h3{font-size:1.2rem}.prose p{margin-bottom:1.4rem}.prose a{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.prose a:hover{opacity:.8}.prose strong{color:var(--text);font-weight:600}.prose em{font-style:italic}.prose code{font-family:var(--font-mono);background:var(--bg-alt);border:1px solid var(--border);border-radius:4px;padding:2px 6px;font-size:.85em}.prose pre{background:var(--bg-dark);border:1px solid var(--border-dark);border-radius:var(--radius-sm);margin-bottom:1.5rem;padding:20px 24px;overflow-x:auto}.prose pre code{color:#ffffffd9;background:0 0;border:none;padding:0;font-size:.82rem}.prose blockquote{border-left:3px solid var(--accent);color:var(--text-muted);margin-left:0;padding-left:20px;font-style:italic}.prose ul,.prose ol{margin-bottom:1.4rem;padding-left:1.5rem}.prose li{margin-bottom:.4rem}.prose hr{border:none;border-top:1px solid var(--border);margin:3rem 0}.prose img{border-radius:var(--radius-sm);max-width:100%;margin-block:1.5rem}
