/* Shared article layout and CMS preview typography. */
.learn-post{max-width:808px;padding-top:40px;padding-bottom:64px}
.article-breadcrumb{font-size:.88rem;margin-bottom:28px;color:var(--muted)}
.article-heading h1{font-size:clamp(2rem,4vw,3rem);line-height:1.3;letter-spacing:-.025em;overflow-wrap:anywhere;margin:0 0 20px}
.article-subtitle{font-size:1.12rem;line-height:1.8;color:var(--body);margin:0 0 22px}
.article-meta{display:flex;flex-wrap:wrap;gap:6px 20px;font-size:.84rem;color:var(--muted);margin:0 0 28px}
.article-cover{margin:0 0 32px}.article-cover img{display:block;width:100%;height:auto;border-radius:var(--radius-lg)}
.article-body{font-size:1.06rem;line-height:1.95;overflow-wrap:anywhere}
.article-body p{margin:0 0 1.2em}.article-body h2{font-size:1.65rem;margin:2em 0 .75em;scroll-margin-top:90px}
.article-body h3{font-size:1.25rem;margin:1.6em 0 .65em;scroll-margin-top:90px}
.article-body h4{margin-top:1.4em}.article-body img{display:block;max-width:100%;height:auto;border-radius:var(--radius);margin:24px auto}
.article-body a{text-decoration:underline;text-underline-offset:3px}.article-body li{margin-bottom:.4em}
.article-body blockquote{margin:24px 0;padding:12px 22px;border-left:3px solid var(--teal);background:var(--teal-bg)}
.article-body blockquote p:last-child{margin:0}.article-body pre{overflow:auto;max-width:100%;padding:18px;background:var(--teal-bg);border-radius:var(--radius)}
.article-table{overflow-x:auto;margin:24px 0;max-width:100%;border:1px solid var(--border);border-radius:var(--radius)}
.article-table:focus-visible{outline:2px solid var(--teal)}
.article-body table{width:100%;border-collapse:collapse;font-size:.94rem;line-height:1.6}
.article-body td,.article-body th{padding:12px 16px;border-bottom:1px solid var(--border);text-align:left;min-width:120px}
.article-body th{background:var(--teal-bg);color:var(--ink)}
.article-media{margin:28px 0}.article-media iframe{display:block;width:100%;aspect-ratio:16/9;border:0;border-radius:var(--radius)}
.article-media video{display:block;max-width:100%;max-height:80vh;margin:auto;border-radius:var(--radius)}
.article-references{margin-top:40px;padding-top:24px;border-top:1px solid var(--border);font-size:.9rem;overflow-wrap:anywhere}
.article-references h2{font-size:1.1rem}.article-references li{margin:8px 0}
.article-footer{margin-top:36px;padding-top:24px;border-top:1px solid var(--border)}
.article-draft{padding:12px 16px;border:1px dashed var(--teal);background:var(--teal-bg);margin:0 0 20px;border-radius:var(--radius)}
@media(max-width:600px){.learn-post{padding-top:24px}.article-body{font-size:1rem;line-height:1.9}.article-meta{gap:5px 14px}.article-body td,.article-body th{padding:10px 12px}}

/* Subscription links use ordinary two-column Markdown tables. */
.article-body .article-subscriptions{table-layout:fixed}
.article-body .article-subscriptions td,.article-body .article-subscriptions th{min-width:0;overflow-wrap:anywhere}
.article-body .article-subscriptions td:last-child,.article-body .article-subscriptions th:last-child{width:132px;text-align:center}
.article-copy-control{display:inline-flex;flex-direction:column;align-items:center;gap:4px;max-width:100%}
.article-copy{font:inherit;font-weight:600;line-height:1.35;min-height:44px;padding:9px 12px;border:1px solid var(--teal);border-radius:8px;background:var(--teal-bg);color:var(--teal);cursor:pointer}
.article-copy:hover{filter:brightness(.96)}
.article-copy:focus-visible{outline:2px solid var(--teal);outline-offset:3px}
.article-copy:disabled{cursor:wait;opacity:.7}
.article-copy-status{font-size:.78rem;line-height:1.4;color:var(--muted)}
.article-copy-status:empty{display:none}
@media(max-width:600px){.article-body .article-subscriptions td:last-child,.article-body .article-subscriptions th:last-child{width:110px}.article-copy{padding:9px 8px}.article-body .article-subscriptions{font-size:.85rem}}
