/* Editorial articles: deliberately scoped so existing pages keep their layout. */
.blog-articles{margin-block:44px 64px}
.blog-articles .post{display:flex;flex-direction:column;min-width:0}
.blog-articles .post__body{height:auto;flex:1}
.blog-articles .post__meta{display:flex;flex-wrap:wrap;gap:6px 16px}
.post__cover{display:block;background:var(--accent-soft);overflow:hidden}
.post__cover img{width:100%;height:auto;aspect-ratio:1200/630;object-fit:contain;transition:transform var(--dur) var(--ease)}
.post__cover:hover img{transform:scale(1.02)}
.article-language-note{color:var(--muted);font-size:var(--fs-small);line-height:1.6;max-width:75ch;margin-top:12px}
.topic-preview-title{font-size:var(--fs-h3)}
.article-section>.wrap{max-width:820px}
.article-breadcrumb{margin-bottom:28px;font-size:var(--fs-meta);color:var(--muted)}
.article-breadcrumb ol{display:flex;flex-wrap:wrap;gap:8px 12px;list-style:none;padding:0;margin:0}
.article-breadcrumb li{min-width:0;overflow-wrap:anywhere}
.article-breadcrumb li+li::before{content:"/";margin-right:12px;color:var(--hair-strong)}
.article-breadcrumb a,.article-body a,.article-toc a,.article-cover figcaption a,.article-actions>p a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;transition:color var(--dur) var(--ease)}
.article-breadcrumb a:hover,.article-body a:hover,.article-toc a:hover,.article-cover figcaption a:hover{color:var(--accent)}
.article-header h1{font-size:clamp(1.85rem,4.2vw,3.25rem);line-height:1.12;margin:16px 0 20px;overflow-wrap:break-word}
.article-category{color:var(--accent);font-family:var(--font-mono);font-size:var(--fs-meta);text-transform:uppercase;letter-spacing:.06em}
.article-deck{color:var(--ink-2);font-size:clamp(1.05rem,1.8vw,1.2rem);line-height:1.65}
.article-meta{display:flex;flex-wrap:wrap;gap:8px 24px;font-size:var(--fs-meta);color:var(--muted);margin-top:24px}
.article-meta strong{font-weight:600;color:var(--ink-2)}
.article-preview-note{font-size:var(--fs-meta);color:var(--accent);margin-top:12px}
.article-cover{margin:32px 0}
.article-cover__link{display:block;border:1px solid var(--hair);border-radius:var(--radius-m);overflow:hidden}
.article-cover img{width:100%;height:auto;aspect-ratio:1200/630;object-fit:contain;background:var(--surface)}
.article-cover figcaption{font-size:var(--fs-meta);line-height:1.65;color:var(--muted);margin-top:12px}
.article-cover figcaption a{display:inline-block;min-height:30px}
.article-toc{padding:24px 28px;background:var(--surface);border:1px solid var(--hair);border-radius:var(--radius-m);margin:32px 0}
.article-toc h2{font-family:var(--font-body);font-size:1rem;font-weight:600}
.article-toc ol{padding-left:20px;margin:12px 0 0}
.article-toc li{margin:8px 0;font-size:var(--fs-small)}
.article-body{font-size:1.0625rem;line-height:1.8;overflow-wrap:break-word}
.article-body>*+*{margin-top:22px}
.article-body h2{font-size:clamp(1.4rem,2.5vw,1.85rem);line-height:1.25;margin-top:48px;scroll-margin-top:100px}
.article-body h3{font-size:1.25rem;margin-top:30px;scroll-margin-top:100px}
.article-body ul,.article-body ol{padding-left:24px}
.article-body li+li{margin-top:10px}
.article-body .article-summary{padding:22px 24px;border-left:3px solid var(--accent);background:var(--accent-soft);border-radius:0 var(--radius-s) var(--radius-s) 0}
.article-body pre{padding:22px;background:var(--paper-2);border:1px solid var(--hair);border-radius:var(--radius-s);white-space:pre-wrap;overflow-wrap:anywhere;font-size:.9rem;line-height:1.8}
.article-body code{font-family:var(--font-mono)}
.article-table-wrap{max-width:100%;overflow-x:auto;overscroll-behavior-x:contain;border:1px solid var(--hair);border-radius:var(--radius-s);background:var(--surface)}
.article-table-wrap table{border-collapse:collapse;width:100%;min-width:640px;font-size:var(--fs-small);line-height:1.6}
.article-table-wrap th,.article-table-wrap td{padding:16px 18px;border-bottom:1px solid var(--hair);text-align:left;vertical-align:top}
.article-table-wrap th{background:var(--paper-2);font-weight:600}
.article-table-wrap tr:last-child td{border-bottom:0}
.article-sources{margin-top:48px;padding-top:12px;border-top:1px solid var(--hair)}
.article-sources p,.article-sources li{font-size:var(--fs-small);color:var(--ink-2)}
.article-actions{margin-top:56px;padding:28px;background:var(--surface);border:1px solid var(--hair);border-radius:var(--radius-m)}
.article-actions h2{font-size:var(--fs-h3);margin-bottom:16px}
.article-actions p{font-size:var(--fs-small);color:var(--muted);margin-top:18px}
.article-actions .finale__actions{margin-top:22px}
@media(max-width:600px){
  .article-section{padding-block:32px 48px}
  .article-toc,.article-actions{padding:20px}
  .article-body{font-size:1rem}
  .article-body .article-summary{padding:18px}
  .article-meta{gap:6px 16px}
  .article-toc a{display:inline-block;min-height:28px}
  .article-cover{margin-block:26px}
  .blog-articles{margin-block:32px 48px}
}
@media(prefers-reduced-motion:reduce){
  .post__cover img{transition:none}
  .post__cover:hover img{transform:none}
}
