.seo-page .seo-article-grid{display:grid;grid-template-columns:minmax(0,1fr) 18rem;gap:2rem;align-items:start}
.seo-page .seo-toc{position:fixed;top:5rem;right:max(1.25rem,calc((100vw - 72rem)/2 + 1.25rem));z-index:20;width:18rem;box-sizing:border-box;max-height:calc(100vh - 6rem);padding:1rem;overflow-y:auto;overscroll-behavior:contain}
.seo-page .seo-toc-heading{display:flex;align-items:center;justify-content:space-between;gap:.75rem;color:#0f766e;font-size:.72rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase}
.seo-page .seo-mobile-toc-count{flex:0 0 auto;padding:.25rem .55rem;border-radius:999px;background:#ccfbf1;color:#0f766e;font-size:.65rem;font-weight:750;letter-spacing:0;text-transform:none}
.seo-page .seo-toc-scroll{margin-top:.9rem;padding-right:.25rem}
.seo-page .seo-toc-group+.seo-toc-group{margin-top:1rem;padding-top:1rem;border-top:1px solid #e2e8f0}
.seo-page .seo-toc-label{margin:0;color:#64748b;font-size:.62rem;font-weight:750;letter-spacing:.14em;text-transform:uppercase}
.seo-page .seo-toc-sections,.seo-page .seo-toc-patterns{display:grid;gap:.1rem;margin:.45rem 0 0;padding:0;list-style:none}
.seo-page .seo-toc-subsection{padding-left:.75rem}
.seo-page .seo-toc-sections a,.seo-page .seo-toc-patterns a{display:flex;align-items:flex-start;gap:.45rem;padding:.32rem .4rem;border-radius:.4rem;color:#64748b;font-size:.7rem;line-height:1.35;text-decoration:none}
.seo-page .seo-toc-sections a:hover,.seo-page .seo-toc-patterns a:hover{background:#f1f5f9;color:#0f766e}
.seo-page .seo-toc-number{flex:0 0 1.35rem;color:#0d9488;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.64rem;font-weight:750;text-align:right}
.seo-page .seo-mobile-toc{display:none}
@media(max-width:1023px){
  .seo-page .seo-article-grid{grid-template-columns:minmax(0,1fr);gap:0}
  .seo-page .seo-toc{display:none}
  .seo-page .seo-mobile-toc{display:block;margin:2rem 0;padding:0 1rem;border:1px solid #e2e8f0;border-radius:1rem;background:#fff}
  .seo-page .seo-mobile-toc summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 0;font-weight:750;cursor:pointer;list-style:none}
  .seo-page .seo-mobile-toc summary::-webkit-details-marker{display:none}
  .seo-page .seo-mobile-toc nav{max-height:65vh;padding:.25rem 0 1rem;overflow-y:auto;overscroll-behavior:contain}
}