.heading-anchor{vertical-align:middle;color:#2563eb;opacity:0;border-radius:6px;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;margin-left:.4em;transition:opacity .15s,background-color .15s;display:inline-flex}.heading-anchor svg{width:1rem;height:1rem}.heading-anchor:hover{background:#eff6ff}@media (hover:none){.heading-anchor{opacity:.55}}h2:hover>.heading-anchor{opacity:1}.heading-anchor:focus-visible{opacity:1}.rich-text-ai .heading-anchor__tip{z-index:20;font-family:var(--font-inter);opacity:0;pointer-events:none;white-space:normal;text-align:left;text-wrap:pretty;background:#1f2937;border-radius:4px;width:-webkit-max-content;width:max-content;max-width:100%;padding:4px 8px;font-size:12px;font-weight:400;transition:opacity .15s;position:absolute;top:calc(100% + 4px);left:0;color:#fff!important;line-height:1.5!important}.heading-anchor:hover .heading-anchor__tip{opacity:1}.heading-anchor:focus-visible .heading-anchor__tip{opacity:1}.heading-anchor[data-copied=true]{opacity:1;color:#15803d}@media (prefers-reduced-motion:reduce){.heading-anchor,.heading-anchor__tip{transition:none}}
.blog-toc{color:#141518;background:#fff;max-height:calc(100vh - 140px);overflow-y:auto}.blog-toc__list{border-left:1px solid #e5e7eb}.blog-toc__link{color:#141518;border-left:2px solid #0000;margin-left:-1px;padding:6px 0 6px 14px;font-size:16px;font-weight:400;line-height:1.4;transition:color .15s,background-color .15s,border-color .15s;display:block}.blog-toc__link:hover{color:#2563eb}.blog-toc__link[aria-current]{color:#1d4ed8;background:#eff6ff;border-left-color:#2563eb;font-weight:600}@media (prefers-reduced-motion:reduce){.blog-toc__link{transition:none}}
