.toc{overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:color-mix(in srgb, var(--ink) 25%, transparent) transparent;max-height:calc(100vh - 3rem);font-size:var(--step-small);align-self:start;position:sticky;top:1.5rem;overflow-y:auto}.toc-k{color:var(--muted)}.toc ul,.toc-m ul{margin:0;padding:0;list-style:none}.toc ul{gap:.15rem;margin-top:.75rem;display:grid}.toc a,.toc-m a{color:var(--ink);padding:.4rem 0 .4rem .75rem;text-decoration:none;display:block;position:relative}.toc a:before,.toc-m a:before{content:"";background:var(--ink);width:2px;transition:transform .2s var(--ease-out);border-radius:1px;position:absolute;top:.4rem;bottom:.4rem;left:0;transform:scaleY(0)}.toc a[aria-current],.toc-m a[aria-current]{font-weight:500}.toc a[aria-current]:before,.toc-m a[aria-current]:before{transform:scaleY(1)}@media (hover:hover) and (pointer:fine){.toc a:hover,.toc-m a:hover{text-underline-offset:.2em;text-decoration:underline;text-decoration-thickness:1px}}.toc-m{display:none}@media (max-width:900px){.toc{display:none}.toc-m{z-index:20;margin:0 calc(-1 * var(--margin)) 2.5rem;background:var(--bg);border-bottom:1px solid var(--surface-2);display:block;position:sticky;top:0}.toc-m summary{min-height:48px;padding:0 var(--margin);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color .16s var(--ease-out);justify-content:space-between;align-items:center;gap:1rem;font-weight:500;list-style:none;display:flex}.toc-m summary::-webkit-details-marker{display:none}.toc-m summary:after{content:"";block-size:.5rem;inline-size:.5rem;transition:transform .2s var(--ease-out);border-bottom:1.5px solid;border-right:1.5px solid;transform:translateY(-25%)rotate(45deg)}.toc-m[open] summary:after{transform:translateY(25%)rotate(-135deg)}.toc-m summary:active{background:color-mix(in srgb, var(--ink) 6%, var(--bg))}.toc-m summary:focus-visible{outline:2px solid var(--ink);outline-offset:-2px}.toc-m nav{overscroll-behavior:contain;max-height:min(70vh,32rem);padding:.25rem var(--margin) .75rem;background:var(--bg);border-bottom:1px solid var(--surface-2);box-shadow:0 18px 24px -18px color-mix(in srgb, var(--ink) 35%, transparent);position:absolute;top:100%;left:0;right:0;overflow-y:auto}.toc-m[open] nav{animation:toc-in .18s var(--ease-out)}.toc-m a{align-items:center;min-height:44px;padding-block:.25rem;display:flex}.toc-m a:before{top:.6rem;bottom:.6rem}}@keyframes toc-in{0%{opacity:0;transform:translateY(-6px)}}@media (prefers-reduced-motion:reduce){.toc a:before,.toc-m a:before,.toc-m summary,.toc-m summary:after{transition:none}.toc-m[open] nav{animation:none}}
