.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.post h2{line-height:1.5;letter-spacing:-.025em}.post p+p{margin-top:8px}
.archive-article h1{line-height:1.3;letter-spacing:-.035em;overflow-wrap:anywhere;font-size:clamp(2rem,4.5vw,3.4rem)}
.archive-article h2{line-height:1.5;letter-spacing:-.025em;scroll-margin-top:24px}
.archive-article h3,.archive-article h4{line-height:1.6;scroll-margin-top:24px}
.archive-article h3{margin-top:32px;font-size:1.18rem}.archive-article h4{margin-top:26px;font-size:1.02rem}
.archive-article .page-head{padding-bottom:22px}.archive-article .tag{line-height:1.7;margin-top:25px}
.archive-article .back-link{color:var(--accent);font-size:.9rem;display:block}
.article-toc{margin:26px 0 38px;padding:18px 22px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.025)}
.article-toc summary{cursor:pointer;font-weight:650}.article-toc ol{padding-left:22px;margin-bottom:0}
.article-toc li{margin:7px 0;font-size:.94rem}.article-toc a{color:var(--muted)}
.archive-article a:hover,.article-toc a:hover{color:var(--accent)}.archive-article article p{line-height:1.95;overflow-wrap:anywhere}
.archive-article figure{margin:30px 0}.archive-article figure img{display:block;width:auto;max-width:100%;height:auto;margin:auto;border-radius:10px;background:#fff}
.archive-article figcaption{color:var(--muted);text-align:center;font-size:.84rem;line-height:1.7;margin-top:10px}
.article-end{padding-top:35px;margin-top:40px;border-top:1px solid var(--line)}
@media(max-width:700px){.archive-article .page-head{padding-top:35px}.article-toc{padding:16px}.side .small{width:100%}}
