.article-layout-module__HyRPPa__article{max-width:72ch;margin:0 auto}.article-layout-module__HyRPPa__head{margin-bottom:var(--space-12)}.article-layout-module__HyRPPa__title{font-family:var(--display);letter-spacing:-.02em;margin:var(--space-4) 0 0;color:var(--text);overflow-wrap:break-word;font-size:clamp(2rem,5vw,3rem);font-weight:800;line-height:1.1}.article-layout-module__HyRPPa__summary{margin-top:var(--space-4);font-size:var(--step-1);color:var(--text-muted);max-width:60ch}.article-layout-module__HyRPPa__project{margin-top:var(--space-6);font-family:var(--mono);font-size:var(--step--1);color:var(--text-muted)}.article-layout-module__HyRPPa__project a{color:var(--accent-ink);border-bottom:1px solid #0000;text-decoration:none;transition:border-color .2s}.article-layout-module__HyRPPa__project a:hover{border-color:var(--accent)}.article-layout-module__HyRPPa__prose{color:color-mix(in srgb, var(--text) 88%, var(--bg));font-size:var(--step-0);line-height:1.75}.article-layout-module__HyRPPa__prose>*+*{margin-top:var(--space-6)}.article-layout-module__HyRPPa__prose h1{font-family:var(--display);font-weight:800;font-size:var(--step-3);letter-spacing:-.01em;color:var(--text);margin-top:var(--space-12);scroll-margin-top:96px}.article-layout-module__HyRPPa__prose h2{font-family:var(--display);font-weight:700;font-size:var(--step-2);letter-spacing:-.01em;color:var(--text);margin-top:var(--space-12);scroll-margin-top:96px}.article-layout-module__HyRPPa__prose h3{font-family:var(--display);font-weight:600;font-size:var(--step-1);color:var(--text);margin-top:var(--space-8);scroll-margin-top:96px}.article-layout-module__HyRPPa__prose p{max-width:68ch}.article-layout-module__HyRPPa__prose strong{color:var(--text);font-weight:600}.article-layout-module__HyRPPa__prose a{color:var(--accent-ink);border-bottom:1px solid var(--border);text-decoration:none;transition:border-color .2s}.article-layout-module__HyRPPa__prose a:hover{border-color:var(--accent)}.article-layout-module__HyRPPa__prose ul,.article-layout-module__HyRPPa__prose ol{padding-left:var(--space-6);max-width:66ch}.article-layout-module__HyRPPa__prose li+li{margin-top:var(--space-2)}.article-layout-module__HyRPPa__prose li::marker{color:var(--accent-ink)}.article-layout-module__HyRPPa__prose img{width:auto;max-width:80%;height:auto;max-height:60vh;margin:var(--space-4) auto;border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow);display:block}.article-layout-module__HyRPPa__prose .img-row{gap:var(--space-4);margin:var(--space-4) auto;align-items:flex-start;display:flex}.article-layout-module__HyRPPa__prose .img-row img{flex:1 1 0;min-width:0;max-width:100%;margin:0}@media (max-width:600px){.article-layout-module__HyRPPa__prose .img-row{flex-direction:column;align-items:center}}.article-layout-module__HyRPPa__prose blockquote{border-left:2px solid var(--accent);padding-left:var(--space-4);color:var(--text-muted);font-style:italic}.article-layout-module__HyRPPa__prose code{font-family:var(--mono);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-sm);padding:.1em .35em;font-size:.875em}.article-layout-module__HyRPPa__prose pre{font-family:var(--mono);font-size:var(--step--1);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-4);line-height:1.6;overflow-x:auto}.article-layout-module__HyRPPa__prose pre code{font-size:inherit;background:0 0;border:none;padding:0}.article-layout-module__HyRPPa__foot{margin-top:var(--space-16);padding-top:var(--space-6);border-top:1px solid var(--border);font-family:var(--mono);font-size:var(--step--1)}.article-layout-module__HyRPPa__foot a{color:var(--accent-ink);border-bottom:1px solid #0000;text-decoration:none;transition:border-color .2s}.article-layout-module__HyRPPa__foot a:hover{border-color:var(--accent)}
