.article-body{font-size:15.5px;line-height:2;color:var(--color-ink-soft)}.article-body h2,.article-body h3{scroll-margin-top:80px}.article-body h2{font-family:var(--font-display);font-weight:900;font-size:clamp(1.2rem,3vw,1.45rem);line-height:1.5;color:var(--color-ink);margin-top:3rem;margin-bottom:1.1rem;padding-left:.8rem;border-left:4px solid var(--color-accent)}.article-body h3{font-family:var(--font-display);font-weight:700;font-size:clamp(1.05rem,2.5vw,1.2rem);line-height:1.55;color:var(--color-ink);margin-top:2.2rem;margin-bottom:.8rem}.article-body p{margin-bottom:1.25rem}.article-body a{color:var(--color-accent-deep);text-decoration:underline;text-underline-offset:3px}.article-body a:hover{color:var(--color-accent)}.article-body ul,.article-body ol{margin:0 0 1.25rem;padding-left:1.5rem}.article-body ul{list-style:disc}.article-body ol{list-style:decimal}.article-body li{margin-bottom:.4rem}.article-body strong{font-weight:700;color:var(--color-ink)}.article-body .article-stress{font-family:var(--font-display);font-weight:700;font-size:1.3em;line-height:1.7;color:var(--color-ink)}.article-body .article-hook{font-family:var(--font-display);font-weight:900;font-size:clamp(1.35rem,3.5vw,1.7rem);line-height:1.6;color:var(--color-ink);margin-bottom:1.5rem}.article-body .article-voice{display:flex;gap:1rem;align-items:flex-start;margin:1.75rem 0;padding:1.25rem 1.4rem;background:var(--color-mist);border-radius:16px}.article-body .article-voice>img{width:56px;height:56px;margin:0;border-radius:9999px;border:2px solid #fff;flex-shrink:0}.article-body .article-voice-name{font-family:var(--font-display);font-weight:700;font-size:12.5px;color:var(--color-ink);margin-bottom:.4rem}.article-body .article-voice-body p:last-child{margin-bottom:0}.article-body .article-voice-body p:not(.article-voice-name){font-size:15px;line-height:1.95}.article-body .article-review-note{margin:1.75rem 0;padding:1.1rem 1.4rem;background:#fff8e1;border:2px dashed #f0b429;border-radius:12px;font-size:14px;line-height:1.8}.article-body .article-review-note p{margin-bottom:.4rem}.article-body .article-review-note-label{font-weight:700;color:#8a6d1a}.article-body .article-toc{margin:1.75rem 0;padding:1.25rem 1.5rem;background:#fff;border:1px solid var(--color-line);border-radius:16px}.article-body .article-toc-title{font-family:var(--font-display);font-weight:900;font-size:1rem;color:var(--color-ink);margin-bottom:.6rem}.article-body .article-toc-title:before{content:"";display:inline-block;width:.9rem;height:4px;background:var(--color-accent);vertical-align:middle;margin-right:.55rem}.article-body .article-toc ol{list-style:none;padding-left:0;margin:0;counter-reset:toc}.article-body .article-toc li{counter-increment:toc;margin-bottom:.45rem;font-size:14px;line-height:1.7}.article-body .article-toc li:before{content:counter(toc,decimal-leading-zero);font-family:var(--font-display);font-weight:700;color:var(--color-accent);margin-right:.7rem;font-size:12.5px}.article-body .article-toc a{color:var(--color-ink-soft);text-decoration:none}.article-body .article-toc a:hover{color:var(--color-accent-deep);text-decoration:underline;text-underline-offset:3px}.article-body img{display:block;width:100%;height:auto;margin:1.75rem 0;border:1px solid var(--color-line);border-radius:16px;background:#fff}.article-body blockquote{border-left:3px solid var(--color-line);padding-left:1.1rem;margin:1.5rem 0;color:color-mix(in srgb,var(--color-ink-soft) 75%,transparent)}.article-body table{width:100%;border-collapse:collapse;font-size:14px;margin:1.5rem 0;display:block;overflow-x:auto}.article-body th,.article-body td{border:1px solid var(--color-line);padding:.6rem .85rem;text-align:left;vertical-align:top}.article-body th{background:var(--color-mist);font-weight:700;white-space:nowrap}.article-body td:first-child{white-space:nowrap}.article-body hr{border:none;border-top:1px solid var(--color-line);margin:2.5rem 0}.article-body .table-cards{display:none}@media(max-width:640px){.article-body table{display:none}.article-body .table-cards{display:block;margin:1.5rem 0}.article-body .table-card{border:1px solid var(--color-line);border-radius:12px;background:#fff;padding:.85rem 1rem;margin-bottom:.7rem}.article-body .table-card-title{font-family:var(--font-display);font-weight:700;font-size:14.5px;color:var(--color-ink);margin-bottom:.45rem}.article-body .table-card-line{font-size:13.5px;line-height:1.8;margin-bottom:.3rem}.article-body .table-card-label{font-weight:700;font-size:12px;color:var(--color-accent-deep);margin-right:.5em}.article-body .table-card-line:last-child,.article-body .table-card:last-child{margin-bottom:0}}
