.lm-article-hero { padding-bottom:56px; }
.lm-demo-note { margin:24px auto 0; max-width:740px; padding:16px 20px; border:1px solid var(--lm-line); border-radius:12px; background:var(--lm-soft); color:var(--lm-muted); font-size:14px; line-height:1.7; text-align:left; }
.lm-demo-note strong { color:var(--lm-ink); }
            .lm-article-back { display:inline-flex; align-items:center; gap:8px; color:var(--lm-muted); font-size:12px; font-weight:740; }
            .lm-article-back:hover { color:var(--lm-ink); }
            .lm-article-head { max-width:940px; margin:42px auto 0; text-align:center; }
            .lm-article-head h1 { margin:22px auto 0; font-size:clamp(44px,7vw,78px); font-weight:830; line-height:.99; letter-spacing:-.064em; }
            .lm-article-head p { max-width:760px; margin:23px auto 0; color:var(--lm-muted); font-size:17px; line-height:1.72; }
            .lm-article-meta { display:flex; flex-wrap:wrap; justify-content:center; gap:9px; }
            .lm-article-cover { position:relative; min-height:clamp(320px,54vw,620px); margin-top:48px; overflow:hidden; }
            .lm-article-cover img { position:absolute; z-index:2; inset:0; width:100%; height:100%; object-fit:cover; }
            .lm-article-cover-fallback { position:absolute; inset:0; display:grid; place-items:center; background:linear-gradient(145deg,color-mix(in srgb,var(--lm-accent) 8%,var(--lm-soft)),var(--lm-soft)); }
            .lm-article-cover-window { width:min(72%,520px); padding:28px; border:1px solid color-mix(in srgb,var(--lm-accent) 20%,var(--lm-line)); border-radius:20px; background:color-mix(in srgb,var(--lm-paper) 92%,transparent); }
            .lm-article-cover-window h2 { margin:26px 0 0; font-size:clamp(26px,4vw,42px); font-weight:810; letter-spacing:-.05em; }
            .lm-article-layout { display:grid; grid-template-columns:minmax(0,1fr) 280px; gap:42px; align-items:start; }
            .lm-article-content { padding:clamp(26px,5vw,52px); }
            .lm-article-aside { position:sticky; top:104px; display:grid; gap:12px; }
            .lm-article-aside-card { padding:22px; }
            .lm-article-aside-card h2 { margin:14px 0 0; font-size:22px; font-weight:800; line-height:1.1; letter-spacing:-.04em; }
            .lm-article-aside-card p { margin:12px 0 0; color:var(--lm-muted); font-size:12px; line-height:1.7; }
            .lm-article-links { display:grid; gap:7px; margin-top:16px; }
            .lm-article-link { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:43px; padding:0 12px; border-radius:10px; background:var(--lm-soft); color:var(--lm-muted); font-size:12px; font-weight:720; }
            .lm-article-link:hover { color:var(--lm-ink); }
            .lm-related-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
            .lm-related-card { padding:23px; }
            .lm-related-card h3 { margin:13px 0 0; font-size:20px; font-weight:790; line-height:1.2; letter-spacing:-.04em; }
            .lm-related-card p { margin:11px 0 0; color:var(--lm-muted); font-size:12px; line-height:1.7; }
            @media(max-width:900px){.lm-article-layout{grid-template-columns:1fr}.lm-article-aside{position:static;grid-template-columns:repeat(2,minmax(0,1fr))}.lm-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
            @media(max-width:650px){.lm-article-head{text-align:left}.lm-article-meta{justify-content:flex-start}.lm-article-head h1,.lm-article-head p{margin-inline:0}.lm-article-aside,.lm-related-grid{grid-template-columns:1fr}.lm-article-cover-window{width:86%}}

/* lm-article-typography */
.lm-article-content .lm-prose { max-width:680px; color:var(--lm-ink); font-size:17px; line-height:1.75; }
.lm-article-content .lm-prose > * + * { margin-top:1.15em; }
.lm-article-content .lm-prose > p:first-child { font-size:19px; line-height:1.65; color:var(--lm-ink); }
.lm-article-content .lm-prose p { color:color-mix(in srgb,var(--lm-ink) 82%,var(--lm-muted)); }
.lm-article-content .lm-prose h2 { margin-top:2.2em; margin-bottom:0; font-size:clamp(24px,3vw,30px); line-height:1.18; letter-spacing:-.035em; }
.lm-article-content .lm-prose h2 + * { margin-top:.75em; }
.lm-article-content .lm-prose h3 { margin-top:1.8em; font-size:20px; line-height:1.3; }
.lm-article-content .lm-prose :is(ul,ol) { padding-left:0; list-style:none; display:grid; gap:.7em; }
.lm-article-content .lm-prose li { position:relative; padding-left:34px; }
.lm-article-content .lm-prose ul > li::before { content:""; position:absolute; left:10px; top:.7em; width:8px; height:8px; border-radius:2px; background:var(--lm-accent); }
.lm-article-content .lm-prose ol { counter-reset:lm-step; }
.lm-article-content .lm-prose ol > li { counter-increment:lm-step; }
.lm-article-content .lm-prose ol > li::before { content:counter(lm-step); position:absolute; left:0; top:.15em; display:grid; place-items:center; width:24px; height:24px; border-radius:50%; background:var(--lm-ink); color:var(--lm-paper); font-size:12px; font-weight:800; line-height:1; }
.lm-article-content .lm-prose blockquote { margin-block:1.8em; padding:20px 24px; border:0; border-left:4px solid var(--lm-accent); border-radius:0 14px 14px 0; background:var(--lm-soft); color:var(--lm-ink); font-size:18px; font-weight:650; line-height:1.55; }
.lm-article-content .lm-prose strong { color:var(--lm-ink); font-weight:780; }
.lm-article-content .lm-prose p > strong:first-child { display:block; margin-bottom:.25em; }
@media(max-width:650px){.lm-article-content .lm-prose{font-size:16px}.lm-article-content .lm-prose > p:first-child{font-size:17px}}
