/* Reading pages share the website's type, colours and controls. */
.theme-article .article-header,.theme-directory .blog-header{padding:var(--space-lg) 0 var(--space-xl);background:var(--hero-bg);border-bottom:1px solid var(--line)}
.theme-article .article-header h1,.theme-directory .blog-header h1{max-width:1050px;font-size:var(--fs-h2);line-height:var(--lh-heading);margin:0 0 var(--space-md)}
.theme-article .back-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;margin-bottom:var(--space-md);font-size:var(--fs-small);color:var(--muted)}
.theme-article .back-link svg{width:16px;height:16px}
.article-meta,.blog-card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-xs);color:var(--muted);font-size:var(--fs-small);line-height:1.5;margin-bottom:var(--space-md)}
.article-meta .dot,.blog-card-meta .dot{width:3px;height:3px;background:currentColor;border-radius:50%}
.theme-article .article-excerpt,.theme-directory .blog-header p{max-width:70ch;color:var(--muted);font-size:var(--fs-lead);line-height:1.6}
.theme-article .article-author{font-size:var(--fs-small);margin:var(--space-md) 0 var(--space-2xs);color:var(--muted)}
.theme-article .article-updated{font-size:var(--fs-label);color:var(--muted);margin:0}
.theme-article .article-body{width:min(75ch,calc(100% - 40px));margin-inline:auto;padding:var(--space-xl) 0;overflow-wrap:break-word}
.theme-article .article-body h2{font-size:var(--fs-subhead);line-height:var(--lh-title);margin:var(--space-xl) 0 var(--space-md)}
.theme-article .article-body h3{font-size:var(--fs-h3);line-height:var(--lh-title);margin:var(--space-lg) 0 var(--space-sm)}
.theme-article .article-body>h2:first-child,.theme-article .article-body>h3:first-child{margin-top:0}
.theme-article .article-body p,.theme-article .article-body li{font-size:var(--fs-body);line-height:1.7}
.theme-article .article-body p{margin-bottom:var(--space-md)}
.theme-article .article-body ul,.theme-article .article-body ol{padding-left:var(--space-md);margin:0 0 var(--space-md)}
.theme-article .article-body li{margin-bottom:var(--space-xs)}
.theme-article .article-body blockquote,.theme-article .key-takeaway{margin:var(--space-lg) 0;padding:var(--space-md);background:var(--tint);border:1px solid var(--line);border-radius:16px}
.theme-article .article-body blockquote p:last-child,.theme-article .key-takeaway p:last-child{margin-bottom:0}
.theme-article .article-body code{font-family:ui-monospace,monospace;font-size:.9em;background:var(--tint);color:var(--ink);padding:2px 5px;border-radius:4px}
.theme-article .article-body pre{overflow:auto;max-width:100%;padding:var(--space-md);margin:var(--space-lg) 0;border:1px solid var(--line);border-radius:12px;background:var(--tint)}
.theme-article .article-body pre code{padding:0;font-size:var(--fs-small);line-height:1.7}
.theme-article .article-body table{display:block;max-width:100%;width:max-content;overflow-x:auto;border-collapse:collapse;margin:var(--space-lg) 0;font-size:var(--fs-small);line-height:1.6}
.theme-article .article-body th,.theme-article .article-body td{text-align:left;vertical-align:top;min-width:130px;padding:var(--space-sm);border:1px solid var(--line)}
.theme-article .article-body th{background:var(--tint);font-weight:600}
.theme-article .article-body td{font-variant-numeric:tabular-nums}
.theme-article .article-body tr.table-total td{font-weight:600}
.theme-article .article-body hr{border:0;border-top:1px solid var(--line);margin:var(--space-lg) 0}
.theme-article .article-body figure{margin:var(--space-lg) 0}
.theme-article .article-body img{display:block;max-width:100%;height:auto;border-radius:12px}
.theme-article .article-body figcaption{margin-top:var(--space-xs);font-size:var(--fs-small);line-height:1.5;color:var(--muted)}
.theme-article .article-faq{margin-top:var(--space-xl);padding-top:var(--space-lg);border-top:1px solid var(--line)}
.theme-article .article-faq h2:first-child{margin-top:0}
.theme-article .flow-steps{list-style:decimal}
.theme-article .flow-steps li{padding:var(--space-sm);margin-bottom:var(--space-xs);background:var(--tint);border-radius:12px}
.theme-article .flow-steps li::marker{font-weight:600;color:var(--accent)}
.theme-article .related-reading{width:min(1160px,calc(100% - 40px));margin:0 auto;padding:var(--space-lg) 0 var(--space-xl);border-top:1px solid var(--line)}
.theme-article .related-reading h2{font-size:var(--fs-subhead);line-height:var(--lh-title)}
.theme-article .related-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-md)}
.theme-article .related-card,.theme-directory .blog-card{display:flex;flex-direction:column;align-items:flex-start;padding:var(--space-md);border:1px solid var(--line);border-radius:16px;background:var(--card);color:var(--ink);text-decoration:none}
.theme-article .related-card:hover .related-title,.theme-directory .blog-card:hover h2{text-decoration:underline;text-underline-offset:5px}
.theme-article .related-title{font-size:var(--fs-lead);font-weight:500;line-height:1.3;margin-bottom:var(--space-sm)}
.theme-article .related-excerpt{font-size:var(--fs-body);line-height:1.65;color:var(--muted)}
.theme-directory .blog-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md);padding:var(--space-xl) 0}
.theme-directory .blog-card h2{font-size:var(--fs-h3);line-height:var(--lh-title);margin:0 0 var(--space-sm)}
.theme-directory .blog-card p{color:var(--muted);margin:0;line-height:1.65}
.theme-directory .section-label{font-size:var(--fs-small);font-weight:600;color:var(--accent);margin-bottom:var(--space-sm)}
@media(max-width:700px){.theme-article .article-header,.theme-directory .blog-header{padding:var(--space-md) 0 var(--space-lg)}.theme-article .article-body{padding-block:var(--space-lg)}.theme-article .article-body h2{margin-top:var(--space-lg)}.theme-article .related-grid,.theme-directory .blog-grid{grid-template-columns:minmax(0,1fr)}.theme-directory .blog-grid{padding-block:var(--space-lg)}}
@media(max-width:520px){.theme-article .article-body,.theme-article .related-reading{width:calc(100% - 28px)}.theme-article .article-body th,.theme-article .article-body td{padding:var(--space-xs)}}

.theme-article .article-body table:focus-visible{outline:3px solid var(--accent);outline-offset:5px}

/* Article authorship disclosure. */
.theme-article .article-body .article-disclosure {
  font-size: 0.8125rem;
  line-height: 1.5;
  color: var(--muted);
  margin-top: 2rem;
}
.theme-article .article-body .article-disclosure small {
  font-size: inherit;
}
.theme-article .article-process{margin-top:var(--space-xl);padding-top:var(--space-md);border-top:1px solid var(--line);font-size:var(--fs-small);color:var(--muted)}
